X-Git-Url: http://git.treefish.org/~alex/phys/heatbath.git/blobdiff_plain/529d936f699ce3260e09903837fbeab9159eb05f..4b4dcf9a4b5a913c1574a9cc1aa479f1aa35a003:/sim-nor.hpp?ds=sidebyside diff --git a/sim-nor.hpp b/sim-nor.hpp index 9c1d166..b67f8a7 100644 --- a/sim-nor.hpp +++ b/sim-nor.hpp @@ -17,14 +17,15 @@ public: sim(o815 *_O815); siteconf* conf; unsigned int LSIZE2; + double M; + double m; + neigh *nb; private: void _makeSweep(); void _newParas(); gsl_rng* rangsl; - neigh *nb; int updatePhi (const int& x); - double M; double SofPhi(const int& x, const complex& phix); double rhoPhi(const int& x, const complex& phixCandidate); }; @@ -45,14 +46,19 @@ sim::sim(o815 *_O815) : o815::sim( _O815, } void sim::_makeSweep() { - for (int ix = 0; ix < LSIZE2; ix++) - updatePhi(ix); + for (int ichecker=0; ichecker<2; ichecker++) + for (int it=0; itcomargs.lsize[0]; it++) + for (int iy=(it+ichecker)%2; iycomargs.lsize[1]; iy+=2) + updatePhi( it*O815->comargs.lsize[1] + iy ); } void sim::_newParas() { + m = (*O815->paraQ)["mass"]; M = pow( (*O815->paraQ)["mass"], 2 ) + 4; *log << "SIM: Resetting fields." << endl << flush; - memset(conf, 0, sizeof(siteconf)*LSIZE2); + + for (int ix=0; ix