summaryrefslogtreecommitdiff
path: root/lib/wolff.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/wolff.h')
-rw-r--r--lib/wolff.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/wolff.h b/lib/wolff.h
index 84b3d22..cf24427 100644
--- a/lib/wolff.h
+++ b/lib/wolff.h
@@ -50,7 +50,16 @@ typedef struct {
double dc;
} meas_t;
-int32_t sign(double x);
+typedef struct {
+ uint64_t n;
+ uint64_t W;
+ double *OO;
+ double *Op;
+ double O;
+ double O2;
+} autocorr_t;
+
+int8_t sign(double x);
cluster_t *flip_cluster(const graph_t *g, const double *ps, bool *x, bool stop_on_ghost,
gsl_rng *r);
@@ -62,5 +71,9 @@ uint32_t wolff_step(double T, double H, ising_state_t *s, sim_t sim, gsl_rng *r,
void update_meas(meas_t *m, double x);
+void update_autocorr(autocorr_t *OO, double O);
+
double add_to_avg(double mx, double x, uint64_t n);
+double rho(autocorr_t *o, uint64_t i);
+