diff options
author | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2018-02-28 21:30:33 -0500 |
---|---|---|
committer | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2018-02-28 21:30:33 -0500 |
commit | 4e643b30203b9d8af792c109498ecd70f873d584 (patch) | |
tree | 5b4c6de6a1240e10d426e48356f62afb04b2dc95 /lib | |
parent | 1fbcb4dd4e52daeb53becba33827f8e48c5606b2 (diff) | |
download | c++-4e643b30203b9d8af792c109498ecd70f873d584.tar.gz c++-4e643b30203b9d8af792c109498ecd70f873d584.tar.bz2 c++-4e643b30203b9d8af792c109498ecd70f873d584.zip |
changes to how field arguments are passed to the vector method
Diffstat (limited to 'lib')
-rw-r--r-- | lib/wolff.h | 3 | ||||
-rw-r--r-- | lib/wolff_tools.c | 2 |
2 files changed, 3 insertions, 2 deletions
diff --git a/lib/wolff.h b/lib/wolff.h index 29286ba..18ae6dd 100644 --- a/lib/wolff.h +++ b/lib/wolff.h @@ -42,7 +42,8 @@ typedef struct { double *spins; double T; double (*J)(double); - double (*H)(double *); + double (*H)(q_t, double *, double *); + double *H_info; double *R; double E; double *M; diff --git a/lib/wolff_tools.c b/lib/wolff_tools.c index e63623c..7a52546 100644 --- a/lib/wolff_tools.c +++ b/lib/wolff_tools.c @@ -131,7 +131,7 @@ v_t flip_cluster_vector(vector_state_t *s, v_t v0, double *rot, gsl_rng *r) { rs_old = vector_rotate_inverse(s->n, s->R, sn); rs_new = vector_rotate_inverse(s->n, R_tmp, sn); } - double dE = s->H(rs_old) - s->H(rs_new); + double dE = s->H(s->n, s->H_info, rs_old) - s->H(s->n, s->H_info, rs_new); prob = 1.0 - exp(-dE / s->T); vector_subtract(s->n, s->M, rs_old); vector_add(s->n, s->M, rs_new); |