1 #ifndef MYCLEX1_CLEXULATOR_HH
2 #define MYCLEX1_CLEXULATOR_HH
28 int m_site_N, m_nlist_N;
31 const int *m_nlist_ptr;
36 const double[3] m_occfunc_0_0, m_occfunc_0_1;
37 const double[2] m_occfunc_1_0;
38 const double[2] m_occfunc_2_0;
44 const double *m_xdisp_ptr;
45 const double *m_ydisp_ptr;
46 const double *m_zdisp_ptr;
50 const double *m_c_var_ptr;
53 int nlist_size()
const {
return m_nlist_N; };
54 int supercell_size()
const {
return m_site_N; };
55 void set_supercell_size(
int _site_N){m_site_N = _site_N};
58 void set_nlist(
const int *_nlist_ptr)
const;
60 void calc_point_corr(
double *corr_out);
62 void set_occ(
const int *_occ_ptr)
const;
63 void set_xdisp(
const double *_occ_ptr)
const;
64 void set_ydisp(
const double *_occ_ptr)
const;
65 void set_zdisp(
const double *_occ_ptr)
const;
66 void set_cvar(
const int *_occ_ptr)
const;
68 double eval_0_bfunc_2_4_0_0();
69 double eval_0_bfunc_2_4_0_1();
70 double eval_0_bfunc_2_4_0_2();
71 double eval_0_bfunc_2_4_0_3();
73 double eval_0_docc_func_0_0_bfunc_2_4_0_3();
74 double eval_0_docc_func_0_1_bfunc_2_4_0_3();
77 const double ClexClust::sitefunc_0_0 = {-1.0, 0.0, 1.0};
78 const double ClexClust::sitefunc_0_1 = {1.0, 0.0, 1.0};
79 const double ClexClust::sitefunc_1_0 = {-1.0, 1.0};
80 const double ClexClust::sitefunc_2_0 = {-1.0, 1.0};
95 class ClexClust_3_5_0 :
public ClexClust {
102 void preprocess(Configuration &
config,
int site_ind);
103 double eval(Configuration &
config,
int site_ind);
104 double dp1_1_eval(Configuration &
config,
int site_ind);
105 double dp1_1_eval(Configuration &
config,
int site_ind);
106 double dp1_1_eval(Configuration &
config,
int site_ind);
ConfigIO::GenericConfigFormatter< jsonParser > config()