diff options
Diffstat (limited to 'lib/initial_finite.h')
-rw-r--r-- | lib/initial_finite.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/lib/initial_finite.h b/lib/initial_finite.h new file mode 100644 index 0000000..542f923 --- /dev/null +++ b/lib/initial_finite.h @@ -0,0 +1,27 @@ + +#pragma once + +#include <stdbool.h> + +#include "types.h" +#include "dihedral.h" +#include "cluster_finite.h" + +static char *finite_model_t_strings[] = {"ISING", "POTTS", "CLOCK", "DGM"}; + +typedef enum { + ISING, + POTTS, + CLOCK, + DGM +} finite_model_t; + +state_finite_t *initial_finite_prepare_ising(D_t D, L_t L, double T, double *H); +state_finite_t *initial_finite_prepare_potts(D_t D, L_t L, q_t q, double T, double *H); +state_finite_t *initial_finite_prepare_clock(D_t D, L_t L, q_t q, double T, double *H); +state_finite_t *initial_finite_prepare_dgm(D_t D, L_t L, q_t q, double T, double *H); + +void state_finite_free(state_finite_t *s); + +double state_finite_energy(state_finite_t *s); + |