23 struct InternalQuantityData {
Object holding a single values of various types.
DynamicId
Enum representing a value type stored in a Value object.
Key-value associative container implemented as a sorted array.
uint32_t Size
Integral type used to index arrays (by default).
#define INLINE
Macros for conditional compilation based on selected compiler.
#define NAMESPACE_SPH_END
QuantityId
Unique IDs of basic quantities of SPH particles.
Helper class used to allow calling a function only from within T.
Convenient object for storing a single value of different types.
bool operator!=(const ParamIterator &other) const
Inequality operator.
ParamIterator & operator++()
Advances the iterator to next quantity.
ParamData operator*() const
Returns all data associated with currently referenced parameter.
ParamIterator(const ActIterator iterator, Badge< Particle >)
Constructs the iterator from internal type.
Helper for enumerating all stored parameters.
ParamIterator begin() const
Returns iterator pointing to the first parameter.
ParamSequence(const Particle &particle)
Creates a sequence of all material parameters of given particle.
ParamIterator end() const
Returns iterator pointing to the one-past-last parameter.
Iterator used to enumerate all stored quantities.
QuantityData operator*() const
Returns all data associated with currently referenced quantity.
bool operator!=(const QuantityIterator &other) const
Inequality operator.
QuantityIterator(const ActIterator iterator, Badge< Particle >)
Constructs the iterator from internal type.
QuantityIterator & operator++()
Advances the iterator to next quantity.
Helper for enumerating all stored quantities.
QuantityIterator end() const
Returns iterator pointing to the one-past-last quantity.
QuantityIterator begin() const
Returns iterator pointing to the first quantity.
QuantitySequence(const Particle &particle)
Creates a sequence of all quantities of given particle.
Object holding information about single particle.
QuantitySequence getQuantities() const
Returns a range for enumerating all stored quantities.
Dynamic getDt(const QuantityId id) const
Retrieves a quantity derivative of the particle.
INLINE Size getIndex() const
Returns the index of particle in the parent storage.
Particle()=default
Default constructor, defined only for convenient usage in containers, etc.
Dynamic getValue(const QuantityId id) const
Retrieves a quantity value of the particle.
Particle & operator=(const Particle &other)
Particle(const Size idx)
Constructs object given its index in parent storage, containing no particle data.
Particle & addD2t(const QuantityId id, const Dynamic &value)
Adds another quantity 2nd derivative or updates the 2nd derivative of quantity previously stored.
Dynamic getParameter(const BodySettingsId id) const
Retrieves a material parameter of the particle.
Particle & addParameter(const BodySettingsId id, const Dynamic &value)
Adds another material parameter or updates the one stored previously.
Dynamic getD2t(const QuantityId id) const
Retrieves a quantity 2nd derivative of the particle.
Particle & addValue(const QuantityId id, const Dynamic &value)
Adds another quantity value or updates the value of quantity previously stored.
ParamSequence getParameters() const
Returns a range for enumerating all stored parameters.
Particle & addDt(const QuantityId id, const Dynamic &value)
Adds another quantity derivative or updates the derivative of quantity previously stored.
Container storing all quantities used within the simulations.
Generic storage and input/output routines of settings.
BodySettingsId
Settings of a single body / gas phase / ...
Stored info about a material parameter.
BodySettingsId id
Material parameter ID.
Dynamic value
Parameter value.
Stored info about a quantity.
Dynamic dt
First derivative of the quantity.
QuantityId id
Quantity ID.
Dynamic value
Quantity value.
DynamicId type
Value type of the quantity.
Dynamic d2t
Second derivative of the quantity.