ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
#include <thermostat.hpp>
Public Types | |
using | CoreThermostat = CoreClass |
Public Member Functions | |
Interface () | |
virtual std::optional< double > | extract_kT (VariantMap const ¶ms) const |
auto | release_lock () |
auto | is_activated () const |
virtual bool | is_seed_required () const |
auto | get_rng_seed () const |
auto | get_rng_counter () const |
void | set_rng_seed (Variant const &value) |
void | set_rng_counter (Variant const &value) |
void | do_construct (VariantMap const ¶ms) override |
void | update_and_bind (VariantMap const ¶ms, bool was_active, std::shared_ptr<::System::System > system) |
virtual ::ThermostatFlags | get_thermo_flag () const =0 |
Public Member Functions inherited from ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf > | |
std::span< const boost::string_ref > | valid_parameters () const final |
Variant | get_parameter (const std::string &name) const final |
void | do_set_parameter (const std::string &name, const Variant &value) final |
std::vector< std::pair< std::string, Variant > > | serialize_parameters () const final |
Public Member Functions inherited from ScriptInterface::System::Leaf | |
void | bind_system (std::shared_ptr<::System::System > const &system) |
void | detach_system () |
Public Member Functions inherited from ScriptInterface::ObjectHandle | |
ObjectHandle ()=default | |
ObjectHandle (ObjectHandle const &)=delete | |
ObjectHandle & | operator= (ObjectHandle const &)=delete |
virtual | ~ObjectHandle ()=default |
boost::string_ref | name () const |
Context * | context () const |
Responsible context. | |
void | construct (VariantMap const ¶ms) |
Construct the handled object. | |
VariantMap | get_parameters () const |
Get current parameters. | |
auto | get_valid_parameters () const |
void | set_parameter (const std::string &name, const Variant &value) |
Set single parameter. | |
Variant | call_method (const std::string &name, const VariantMap ¶ms) |
Call a method on the object. | |
std::string | serialize () const |
Protected Member Functions | |
void | check_lock () |
void | on_bind_system (::System::System &system) override |
void | on_detach_system (::System::System &system) override |
void | sanity_checks_positive (double value, std::string const &name) const |
void | sanity_checks_positive (Utils::Vector3d const &value, std::string const &name) const |
virtual bool | invalid_rng_state (VariantMap const ¶ms) const |
template<typename T > | |
auto | make_autoparameter (T CoreThermostat::*member, char const *name) |
template<typename T > | |
auto | make_autogamma (T CoreThermostat::*member, char const *name) |
virtual VariantMap | extend_parameters (VariantMap const ¶meters) const |
Variant | do_call_method (std::string const &name, VariantMap const ¶ms) override |
Protected Member Functions inherited from ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf > | |
AutoParameters ()=default | |
AutoParameters (std::vector< AutoParameter > &¶ms) | |
void | add_parameters (std::vector< AutoParameter > &¶ms) |
auto const & | get_parameter_insertion_order () const |
Protected Member Functions inherited from ScriptInterface::System::Leaf | |
auto const & | get_system () const |
auto & | get_system () |
Protected Attributes | |
bool | is_active = false |
std::shared_ptr< CoreThermostat > | m_handle |
std::weak_ptr< bool > | m_edit_lock |
Basic lock mechanism that follows RAII. | |
Protected Attributes inherited from ScriptInterface::System::Leaf | |
std::weak_ptr<::System::System > | m_system |
Private Member Functions | |
virtual std::shared_ptr< CoreThermostat > & | get_member_handle (::Thermostat::Thermostat &thermostat)=0 |
virtual std::span< std::string_view const > | get_required_parameters () const =0 |
Additional Inherited Members | |
Static Public Member Functions inherited from ScriptInterface::ObjectHandle | |
static ObjectRef | deserialize (const std::string &state, Context &ctx) |
Make object from serialized state. | |
Definition at line 44 of file script_interface/thermostat/thermostat.hpp.
using ScriptInterface::Thermostat::Interface< CoreClass >::CoreThermostat = CoreClass |
Definition at line 48 of file script_interface/thermostat/thermostat.hpp.
|
inline |
Definition at line 204 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf >::add_parameters(), ScriptInterface::Thermostat::Interface< CoreClass >::check_lock(), ScriptInterface::ObjectHandle::context(), ScriptInterface::Thermostat::Interface< CoreClass >::get_rng_counter(), ScriptInterface::Thermostat::Interface< CoreClass >::get_rng_seed(), ScriptInterface::Thermostat::Interface< CoreClass >::is_active, ScriptInterface::is_none(), ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, ScriptInterface::Context::parallel_try_catch(), ScriptInterface::AutoParameter::read_only, ScriptInterface::Thermostat::Interface< CoreClass >::set_rng_counter(), and ScriptInterface::Thermostat::Interface< CoreClass >::set_rng_seed().
|
inlineprotected |
Definition at line 64 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_edit_lock.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::Interface(), ScriptInterface::Thermostat::Interface< CoreClass >::make_autogamma(), and ScriptInterface::Thermostat::Interface< CoreClass >::make_autoparameter().
|
inlineoverrideprotectedvirtual |
Reimplemented from ScriptInterface::ObjectHandle.
Definition at line 193 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::ObjectHandle::name(), params, and ScriptInterface::Thermostat::Interface< CoreClass >::set_rng_counter().
|
inlineoverridevirtual |
Reimplemented from ScriptInterface::ObjectHandle.
Definition at line 280 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, params, and ScriptInterface::Thermostat::Interface< CoreClass >::release_lock().
|
inlineprotectedvirtual |
Reimplemented in ScriptInterface::Thermostat::Langevin, and ScriptInterface::Thermostat::Brownian.
Definition at line 181 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf >::get_parameter(), ScriptInterface::Thermostat::Interface< CoreClass >::is_seed_required(), and params.
Referenced by ScriptInterface::Thermostat::Langevin::extend_parameters(), ScriptInterface::Thermostat::Brownian::extend_parameters(), and ScriptInterface::Thermostat::Interface< CoreClass >::update_and_bind().
|
inlinevirtual |
Reimplemented in ScriptInterface::Thermostat::LBThermostat.
Definition at line 231 of file script_interface/thermostat/thermostat.hpp.
References params, and ScriptInterface::Thermostat::Interface< CoreClass >::sanity_checks_positive().
|
privatepure virtual |
Implemented in ScriptInterface::Thermostat::Langevin, ScriptInterface::Thermostat::Brownian, ScriptInterface::Thermostat::IsotropicNpt, ScriptInterface::Thermostat::LBThermostat, ScriptInterface::Thermostat::DPDThermostat, ScriptInterface::Thermostat::Stokesian, and ScriptInterface::Thermostat::ThermalizedBond.
References ScriptInterface::ObjectHandle::context(), ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf >::do_set_parameter(), ScriptInterface::AutoParameters< Interface< CoreClass >, System::Leaf >::get_parameter_insertion_order(), ScriptInterface::Thermostat::Interface< CoreClass >::invalid_rng_state(), ScriptInterface::Thermostat::Interface< CoreClass >::is_active, ScriptInterface::Context::parallel_try_catch(), and params.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::on_bind_system(), and ScriptInterface::Thermostat::Interface< CoreClass >::on_detach_system().
|
privatepure virtual |
Implemented in ScriptInterface::Thermostat::Langevin, ScriptInterface::Thermostat::Brownian, ScriptInterface::Thermostat::IsotropicNpt, ScriptInterface::Thermostat::LBThermostat, ScriptInterface::Thermostat::DPDThermostat, ScriptInterface::Thermostat::Stokesian, and ScriptInterface::Thermostat::ThermalizedBond.
References ScriptInterface::Thermostat::Interface< CoreClass >::get_required_parameters(), ScriptInterface::ObjectHandle::name(), and params.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::get_required_parameters().
|
inline |
Definition at line 256 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::Interface().
|
inline |
Definition at line 250 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::Interface().
|
pure virtual |
Implemented in ScriptInterface::Thermostat::Langevin, ScriptInterface::Thermostat::Brownian, ScriptInterface::Thermostat::IsotropicNpt, ScriptInterface::Thermostat::LBThermostat, ScriptInterface::Thermostat::DPDThermostat, ScriptInterface::Thermostat::Stokesian, and ScriptInterface::Thermostat::ThermalizedBond.
|
inlineprotectedvirtual |
Reimplemented in ScriptInterface::Thermostat::LBThermostat.
Definition at line 95 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::is_none(), ScriptInterface::Thermostat::Interface< CoreClass >::is_seed_required(), and params.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::get_member_handle().
|
inline |
Definition at line 246 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::is_active.
|
inlinevirtual |
Definition at line 248 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::extend_parameters(), and ScriptInterface::Thermostat::Interface< CoreClass >::invalid_rng_state().
|
inlineprotected |
Definition at line 151 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::check_lock(), ScriptInterface::ObjectHandle::context(), Thermostat::gamma_null, ScriptInterface::is_none(), ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, ScriptInterface::ObjectHandle::name(), ScriptInterface::Context::parallel_try_catch(), and ScriptInterface::Thermostat::Interface< CoreClass >::sanity_checks_positive().
|
inlineprotected |
Definition at line 137 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::check_lock(), ScriptInterface::ObjectHandle::context(), ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, ScriptInterface::ObjectHandle::name(), ScriptInterface::Context::parallel_try_catch(), and ScriptInterface::Thermostat::Interface< CoreClass >::sanity_checks_positive().
|
inlineoverrideprotectedvirtual |
Reimplemented from ScriptInterface::System::Leaf.
Definition at line 70 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::get_member_handle(), ScriptInterface::Thermostat::Interface< CoreClass >::is_active, ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, System::System::on_thermostat_param_change(), and System::System::thermostat.
|
inlineoverrideprotectedvirtual |
Reimplemented from ScriptInterface::System::Leaf.
Definition at line 76 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::get_member_handle(), ScriptInterface::Thermostat::Interface< CoreClass >::is_active, System::System::on_thermostat_param_change(), and System::System::thermostat.
|
inline |
Definition at line 240 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_edit_lock.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::do_construct().
|
inlineprotected |
Definition at line 82 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::ObjectHandle::name().
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::extract_kT(), ScriptInterface::Thermostat::Interface< CoreClass >::make_autogamma(), and ScriptInterface::Thermostat::Interface< CoreClass >::make_autoparameter().
|
inlineprotected |
Definition at line 88 of file script_interface/thermostat/thermostat.hpp.
References Utils::Vector< T, N >::broadcast(), and ScriptInterface::ObjectHandle::name().
|
inline |
Definition at line 272 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::do_call_method(), and ScriptInterface::Thermostat::Interface< CoreClass >::Interface().
|
inline |
Definition at line 262 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::Thermostat::Interface< CoreClass >::m_handle.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::Interface().
|
inline |
Definition at line 288 of file script_interface/thermostat/thermostat.hpp.
References ScriptInterface::System::Leaf::bind_system(), ScriptInterface::Thermostat::Interface< CoreClass >::extend_parameters(), ScriptInterface::Thermostat::Interface< CoreClass >::is_active, ScriptInterface::Thermostat::Interface< CoreClass >::m_handle, and params.
|
protected |
Definition at line 59 of file script_interface/thermostat/thermostat.hpp.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::get_member_handle(), ScriptInterface::Thermostat::Interface< CoreClass >::Interface(), ScriptInterface::Thermostat::Interface< CoreClass >::is_activated(), ScriptInterface::Thermostat::Interface< CoreClass >::on_bind_system(), ScriptInterface::Thermostat::Interface< CoreClass >::on_detach_system(), and ScriptInterface::Thermostat::Interface< CoreClass >::update_and_bind().
|
protected |
Basic lock mechanism that follows RAII.
Definition at line 62 of file script_interface/thermostat/thermostat.hpp.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::check_lock(), and ScriptInterface::Thermostat::Interface< CoreClass >::release_lock().
|
protected |
Definition at line 60 of file script_interface/thermostat/thermostat.hpp.
Referenced by ScriptInterface::Thermostat::Interface< CoreClass >::do_construct(), ScriptInterface::Thermostat::Interface< CoreClass >::get_rng_counter(), ScriptInterface::Thermostat::Interface< CoreClass >::get_rng_seed(), ScriptInterface::Thermostat::Interface< CoreClass >::Interface(), ScriptInterface::Thermostat::Interface< CoreClass >::is_seed_required(), ScriptInterface::Thermostat::Interface< CoreClass >::make_autogamma(), ScriptInterface::Thermostat::Interface< CoreClass >::make_autoparameter(), ScriptInterface::Thermostat::Interface< CoreClass >::on_bind_system(), ScriptInterface::Thermostat::Interface< CoreClass >::set_rng_counter(), ScriptInterface::Thermostat::Interface< CoreClass >::set_rng_seed(), and ScriptInterface::Thermostat::Interface< CoreClass >::update_and_bind().