diff options
author | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2018-03-20 19:06:50 -0400 |
---|---|---|
committer | Jaron Kent-Dobias <jaron@kent-dobias.com> | 2018-03-20 19:06:50 -0400 |
commit | 2928df0a4b4be30cde2b11bdcf2698875d5b9536 (patch) | |
tree | 38116f528ff090610ec9463064fd1296af7967b6 /lib/cluster.h | |
parent | af50f36935953b096fba19113ae5b0a602278796 (diff) | |
download | c++-2928df0a4b4be30cde2b11bdcf2698875d5b9536.tar.gz c++-2928df0a4b4be30cde2b11bdcf2698875d5b9536.tar.bz2 c++-2928df0a4b4be30cde2b11bdcf2698875d5b9536.zip |
new system
Diffstat (limited to 'lib/cluster.h')
-rw-r--r-- | lib/cluster.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/lib/cluster.h b/lib/cluster.h index 095ed61..2de17e5 100644 --- a/lib/cluster.h +++ b/lib/cluster.h @@ -21,6 +21,7 @@ #include "measurement.h" #include "orthogonal.h" #include "dihedral.h" +#include "dihinf.h" typedef struct { graph_t *g; @@ -38,6 +39,18 @@ typedef struct { typedef struct { graph_t *g; + h_t *spins; + double T; + double (*J)(h_t); + double (*H)(double *, h_t); + double *H_info; + dihinf_t *R; + double E; + h_t M; +} dgm_state_t; + +typedef struct { + graph_t *g; double *spins; double T; double (*J)(double); @@ -53,5 +66,7 @@ v_t flip_cluster(ising_state_t *s, v_t v0, q_t s1, gsl_rng *r); v_t flip_cluster_vector(vector_state_t *s, v_t v0, double *rot, gsl_rng *r); +v_t flip_cluster_dgm(dgm_state_t *s, v_t v0, h_t rot, gsl_rng *r); + graph_t *graph_add_ext(const graph_t *g); |