Namespace simulation¶
-
namespace
simulation
¶ Functions
-
std::vector<struct results>
full_dynamics
(const std::vector<double> thermal_field_strengths, const std::vector<double> reduced_anisotropy_constants, const std::vector<double> reduced_particle_volumes, const std::vector<d3> anisotropy_unit_axes, const std::vector<d3> initial_magnetisations, const std::vector<std::vector<d3>> interparticle_unit_distances, const std::vector<std::vector<double>> interparticle_reduced_distance_magnitudes, const std::function<double(const double)> applied_field, const double average_anisotropy, const double average_volume, const double damping_constant, const double saturation_magnetisation, const double time_step, const double end_time, Rng &rng, const bool renorm, const bool interactions, const bool use_implicit, const double eps, const int max_samples, )¶
-
std::vector<results>
full_dynamics
(const std::vector<double> radius, const std::vector<double> anisotropy, const std::vector<d3> anisotropy_axes, const std::vector<d3> magnetisation_direction, const std::vector<d3> location, const double magnetisation, const double damping, const double temperature, const bool renorm, const bool interactions, const bool use_implicit, const double eps, const double time_step, const double end_time, const size_t max_samples, const long seed, const field::options field_option = field::CONSTANT, const double field_amplitude = 0.0, const double field_frequency = 0.0)¶
-
struct results
dom_ensemble_dynamics
(const double volume, const double anisotropy, const double temperature, const double magnetisation, const double alpha, const std::function<double(double)> applied_field, const std::array<double, 2> initial_mags, const double time_step, const double end_time, const int max_samples, )¶
-
void
save_results
(const std::string fname, const struct results &res)¶ Save results to disk.
Saves the contents of a results struct to disk. Given a file name ‘foo’ the following files are written to disk ‘foo.mx’, ‘foo.my’, ‘foo.mz’, ‘foo.field’, ‘foo.time’, ‘foo.energy’.
- Parameters
fname
: /path/to/filename prefix for filesres
: results struct to save
-
void
zero_results
(struct results &res)¶ Initialise results memory to zero.
- Parameters
res
: results struct to zero
-
void
reduce_to_system_magnetisation
(double *mag, const double *particle_mags, const size_t N_particles)¶
-
std::vector<struct results>