-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathpySpin.h
45 lines (42 loc) · 1006 Bytes
/
pySpin.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
#ifndef __PYSWAPMC_H__
#define __PYSWAPMC_H__
#define MAXZEROONEMODEL 9 // There are 10 of these
#define MAXPLUSMINUSMODEL 19 // There are 10 more of these
struct SimData{
//lattice stuff
int nsites;
int nactive;
int nneighbors_per_site;
int nneighbors_update_per_site;
int *activelist;
int *isactivelist;
int *neighbors;
int *neighbors_update;
//simulation stuff
int model_number;
long current_step;
int n_possible_events;
int seed;
double temp;
double betaexp;
double total_energy;
double time;
int *configuration;
// int *prev_configuration;
int *dual_configuration;
int move_site;
// rate stuff
double total_rate;
int n_event_types;
int *events;
int *event_types;
int *events_by_type;
int *events_per_type;
int *event_refs;
double *event_rates;
// float *event_ref_rates;
double *cumulative_rates;
// calculation stuff
int *persistence_array;
};
#endif