|
|
| MonteCarlo (int num_threads) |
| |
| double | exec (double temp, Vector3< double > field, int *flips, long double *tests, double *DUav, Vector3< double > *Mav) |
| |
|
void | randomize () |
| | randomize spins
|
| |
|
Vector3< double > | magnetization () |
| | [mu_B/A site]
|
| |
|
Quartet | siteMagnetization () |
| |
|
double | internalEnergy () |
| | internal energy U [J/A site]
|
| |
|
void | read (std::istream &) |
| | read snapshot.
|
| |
|
void | read (const char *spins, double temp, Vector3< double > field) |
| |
|
void | write (std::ostream &) |
| | write snapshot.
|
| |
|
void | write (char *spins, double *fields=0, double *probabilities=0) |
| |
|
void | write_bsite (Vector3< double > *fields) |
| |
|
void | write_8asite (Vector3< double > *fields) |
| |
|
void | write_48fsite (Vector3< double > *fields) |
| |
|
void | write_flips (std::deque< FlipHistory > &buf) |
| |
|
|
void | execute () |
| |
| long double | accelFlipping () |
| |
| void | doTests (int *flips, long double tests) |
| |
|
void | flipSpin (int site, int lidx, double du, long double tests_after_check) |
| |
|
double | flippingProbability (int site, int lidx, double field, double *du) |
| |
|
struct MonteCarlo::PackedSpin | __attribute__ ((__aligned__(16))) |
| |
|
Spin | readSpin (int site, int sidx) |
| |
|
void | writeSpin (Spin v, int site, int sidx) |
| |
|
void | makeReciprocalImage () |
| |
| void | modifyReciprocalImage (Spin diff, int site, int i, int j, int k) |
| |
|
double | hinteraction (int site, int lidx) |
| | internal field from surrounding spins along ising axis [T].
|
| |
|
double | hinteraction_miscache (int sec_cache_miss_cnt, int site, int lidx) |
| |
|
double | iterate_interactions (int site1, int lidx, int site2) |
| |
|
Vector3< double > | iterate_real_generic (const FieldRealArray[16][3], int i, int j, int k) |
| |
|
double | iterate_real_redirected (int cnt, const FieldRealArray &, int i, int j, int k, int site2) |
| |
|
double | iterate_real (int site1, int i, int j, int k, int site2) |
| |
|
Vector3< double > | iterate_rec_generic (Vector3< double > pos1, int i, int j, int k) |
| |
|
Vector3< double > | iterate_rec_generic (Vector3< double > pos1, int i, int j, int k, int site2) |
| |
|
double | iterate_rec_redirected (int cutoff, int site1, int i, int j, int k, int site2) |
| |
|
double | iterate_rec (int site1, int i, int j, int k, int site2) |
| |
|
void | takeThermalAverage (long double tests_after_check) |
| |
|
|
static VectorInt | distance (int site1, int site2, int di, int dj, int dk) |
| | unit is 1/4 lattice const.
|
| |
| static int | dipoleFieldReal (const Vector3< double > &dist_times_4, int site2, Vector3< double > *ret) |
| |
|
static int | dipoleFieldRec (const Vector3< double > &k, int site2, Vector3< double > *ret) |
| |
|
static int | lattice_index (int i, int j, int k) |
| |
|
static void | addFieldsReal (MonteCarlo::Spin v, FieldRealArray &array, int di, int dj, int dk) |
| |
|
static int | reciprocal_index (int kx, int ky, int kz) |
| |
|
static int | spins_real_index (int i, int j, int k) |
| |
|
static int | spins_real_index (int lidx) |
| |
|
static void * | xthread_start_routine (void *) |
| |
|
|
static int | s_cutoff_real |
| | max interaction distance for real space.
|
| |
|
static double | s_cutoff_real_radius |
| |
|
static int | s_cutoff_rec |
| | For reciprocal space. i.e. Ewald term.
|
| |
|
static double | s_cutoff_rec_radius |
| |
|
static double | s_alpha |
| | Ewald convergence factor [1/m].
|
| |
|
static double | s_dfactor |
| | Demagnetization D factor.
|
| |
|
static FieldRealArray | s_fields_real [16][16] |
| |
|
static FieldRealArray | s_fields_real_B [16][16][3] |
| |
|
static FieldRealArray | s_fields_real_8a [8][16][3] |
| |
|
static FieldRealArray | s_fields_real_48f [48][16][3] |
| |
|
static std::vector< Spin > | s_fields_rec [16][16] |
| | For reciprocal space. i.e. Ewald term.
|
| |
static std::vector< Vector3
< Spin > > | s_fields_rec_generic [16] |
| |
|
static double | s_fields_rec_sum |
| | For self-energy caclulation.
|
| |
static std::vector
< std::complex
< MonteCarlo::Spin > > | s_exp_ph [16] |
| |
|
static int | s_L |
| | size of lattices
|
| |
|
static int | s_num_spins |
| | of spins
|
| |
|
static std::vector< int > | s_4r2_neighbor |
| | 4*r^2 to nth neighbor.
|
| |
|
static Vector3< double > | s_ASiteIsingVector [16] |
| |
Definition at line 62 of file montecarlo.h.
| int MonteCarlo::setupField |
( |
int |
size, |
|
|
double |
dfactor, |
|
|
double |
cutoff_real, |
|
|
double |
cutoff_rec, |
|
|
double |
alpha |
|
) |
| |
|
static |
prepare interactions.
- Parameters
-
| size | # of lattices for one direction. |
| dfactor | Bulk demagnetization factor D (0 < D < 1). |
| cutoff_real | [L.U.]. |
| cutoff_rec | [2pi/L]. |
| alpha | Ewald convergence factor [1/L]. |
- Returns
- # of interactions.
Definition at line 99 of file interaction.cpp.
References dipoleFieldReal(), distance(), s_4r2_neighbor, s_alpha, s_bAborting, s_cutoff_real, s_cutoff_rec, s_dfactor, s_fields_rec, s_fields_rec_sum, s_L, and s_num_spins.
Referenced by XMonteCarloDriver::start().