ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Base class for observables. More...
#include <Observable.hpp>
Public Member Functions | |
Observable ()=default | |
virtual | ~Observable ()=default |
virtual std::vector< double > | operator() (boost::mpi::communicator const &comm) const =0 |
Calculate the set of values measured by the observable. | |
std::size_t | n_values () const |
Size of the flat array returned by the observable. | |
virtual std::vector< std::size_t > | shape () const =0 |
Dimensions needed to reshape the flat array returned by the observable. | |
Base class for observables.
An observable extracts raw data from a system or compute a statistic based on the state of a system, and returns an array of doubles.
Observables typically don't have setters or getters to access and modify their member variables, and usually only have a default constructor with no argument. Each observable class has a corresponding interface in ScriptInterface::Observables, where setters and getters are defined.
Definition at line 42 of file core/observables/Observable.hpp.
|
default |
|
virtualdefault |
|
inline |
Size of the flat array returned by the observable.
Definition at line 51 of file core/observables/Observable.hpp.
References shape().
Referenced by Observables::BondAngles::evaluate(), Observables::BondDihedrals::evaluate(), Observables::CosPersistenceAngles::evaluate(), and Observables::ParticleDistances::evaluate().
|
pure virtual |
Calculate the set of values measured by the observable.
Implemented in Observables::Energy, Observables::Pressure, Observables::PressureTensor, Observables::PidObservable, Observables::RDF, Observables::CylindricalLBVelocityProfile, Observables::DPDStress, Observables::LBFluidPressureTensor, and Observables::LBVelocityProfile.
|
pure virtual |
Dimensions needed to reshape the flat array returned by the observable.
Implemented in Observables::BondAngles, Observables::BondDihedrals, Observables::CosPersistenceAngles, Observables::CylindricalFluxDensityProfile, Observables::CylindricalLBFluxDensityProfileAtParticlePositions, Observables::CylindricalLBVelocityProfile, Observables::CylindricalLBVelocityProfileAtParticlePositions, Observables::CylindricalVelocityProfile, Observables::DPDStress, Observables::Energy, Observables::FluxDensityProfile, Observables::ForceDensityProfile, Observables::LBFluidPressureTensor, Observables::LBVelocityProfile, Observables::ParticleDistances, Observables::ParticleObservable< ObsType >, Observables::ParticleObservable< ParticleObservables::DipoleFields >, Observables::Pressure, Observables::PressureTensor, Observables::ProfileObservable, Observables::RDF, and Observables::TotalForce.
Referenced by n_values().