CDT++ 1.0.0
Causal Dynamical Triangulations in C++
Loading...
Searching...
No Matches
cdt::runtime_config::Simulation Class Reference

#include <Runtime_config.hpp>

Collaboration diagram for cdt::runtime_config::Simulation:

Public Member Functions

 Simulation (Simulation &&other) noexcept=default
 Simulation (Simulation const &other)=default
auto alpha () const noexcept -> long double
auto checkpoint () const noexcept -> Int_precision
auto k () const noexcept -> long double
auto lambda () const noexcept -> long double
auto operator= (Simulation &&other) noexcept -> Simulation &=default
auto operator= (Simulation const &other) -> Simulation &=default
auto passes () const noexcept -> Int_precision
auto triangulation () const noexcept -> Triangulation const &
auto write_files () const noexcept -> bool

Friends

auto make_simulation (Triangulation const &triangulation, long double alpha, long double k, long double lambda, long long passes, long long checkpoint, bool write_files) -> Simulation
 Validate the complete simulation configuration.

Detailed Description

Complete validated configuration for the Metropolis simulation.

Instances can only be created by make_simulation(), and retain a validated Triangulation value rather than raw triangulation options.

Definition at line 110 of file Runtime_config.hpp.

Constructor & Destructor Documentation

◆ Simulation() [1/2]

cdt::runtime_config::Simulation::Simulation ( Simulation const & other)
default
Parameters
otherValidated simulation configuration to copy.

◆ Simulation() [2/2]

cdt::runtime_config::Simulation::Simulation ( Simulation && other)
defaultnoexcept
Parameters
otherValidated simulation configuration to move.

Member Function Documentation

◆ alpha()

auto cdt::runtime_config::Simulation::alpha ( ) const -> long double
inlinenodiscardnoexcept
Returns
Wick-rotation parameter, greater than 1/2.

Definition at line 158 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ checkpoint()

auto cdt::runtime_config::Simulation::checkpoint ( ) const -> Int_precision
inlinenodiscardnoexcept
Returns
Positive checkpoint interval in move passes.

Definition at line 172 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ k()

auto cdt::runtime_config::Simulation::k ( ) const -> long double
inlinenodiscardnoexcept
Returns
Finite inverse Newton coupling.

Definition at line 161 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ lambda()

auto cdt::runtime_config::Simulation::lambda ( ) const -> long double
inlinenodiscardnoexcept
Returns
Finite cosmological coupling.

Definition at line 164 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ operator=() [1/2]

auto cdt::runtime_config::Simulation::operator= ( Simulation && other) -> Simulation &=default
defaultnoexcept
Parameters
otherValidated simulation configuration to move.
Returns
This configuration after assignment.

◆ operator=() [2/2]

auto cdt::runtime_config::Simulation::operator= ( Simulation const & other) -> Simulation &=default
default
Parameters
otherValidated simulation configuration to copy.
Returns
This configuration after assignment.

◆ passes()

auto cdt::runtime_config::Simulation::passes ( ) const -> Int_precision
inlinenodiscardnoexcept
Returns
Positive number of configured move passes.

Definition at line 168 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ triangulation()

auto cdt::runtime_config::Simulation::triangulation ( ) const -> Triangulation const &
inlinenodiscardnoexcept
Returns
Validated triangulation configuration retained by this run.

Definition at line 154 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ write_files()

auto cdt::runtime_config::Simulation::write_files ( ) const -> bool
inlinenodiscardnoexcept
Returns
Whether the simulation should publish persistence artifacts.

Definition at line 176 of file Runtime_config.hpp.

Referenced by make_simulation.

◆ make_simulation

auto make_simulation ( Triangulation const & triangulation,
long double alpha,
long double k,
long double lambda,
long long passes,
long long checkpoint,
bool write_files ) -> Simulation
friend

Validate the complete simulation configuration.

Parameters
triangulationPreviously validated triangulation configuration.
alphaFinite Wick-rotation parameter greater than 1/2.
kFinite inverse Newton coupling.
lambdaFinite cosmological coupling.
passesPositive number of move passes.
checkpointPositive checkpoint interval in move passes.
write_filesWhether the run should publish persistence artifacts.
Returns
A complete validated simulation configuration.
Exceptions
std::invalid_argumentfor non-finite couplings or non-positive cadence values.
std::domain_errorif alpha is not greater than 1/2.
std::out_of_rangewhen a cadence value exceeds Int_precision.

Definition at line 369 of file Runtime_config.hpp.

References alpha(), checkpoint(), k(), lambda(), make_simulation, passes(), triangulation(), and write_files().

Referenced by make_simulation.


The documentation for this class was generated from the following file: