![]() |
Files | |
file | Entity.hpp |
file | Process.hpp |
file | System.hpp |
file | Variable.hpp |
file | VariableReference.hpp |
Classes | |
class | libecs::VariableReference |
Functions | |
libecs::DECLARE_VECTOR (EntityPtr, EntityVector) | |
libecs::DECLARE_ASSOCVECTOR (String, VariableReference, std::less< const String >, VariableReferenceMap) | |
libecs::DECLARE_VECTOR (VariableReference, VariableReferenceVector) | |
libecs::LIBECS_DM_CLASS (Process, Entity) | |
Process class is used to represent chemical and other phenonema which may or may not result in change in value of one or more Variables. | |
libecs::DECLARE_MAP (const String, VariablePtr, std::less< const String >, VariableMap) | |
libecs::DECLARE_MAP (const String, ProcessPtr, std::less< const String >, ProcessMap) | |
libecs::DECLARE_MAP (const String, SystemPtr, std::less< const String >, SystemMap) | |
libecs::LIBECS_DM_CLASS (System, Entity) | |
libecs::LIBECS_DM_CLASS (Variable, Entity) | |
Variable class represents state variables in the simulation model, such as amounts of molecular species in a compartment. |
libecs::LIBECS_DM_CLASS | ( | Variable | , | |
Entity | ||||
) |
Variable class represents state variables in the simulation model, such as amounts of molecular species in a compartment.
Initializes this variable.
Clear theVelocity by zero.
Integrate.
This method is used internally by DifferentialStepper.
For internal use only.
This simply sets the value of this Variable if getFixed() is false.
value | Concentration in M [mol/L]. |
This method uses loadNumberConc() instead of setNumberConc().
Unlike getMolarConc, this method just returns value / size.
value | concentration in [number/L]. |
This method can be called before the SIZE Variable of the supersystem of this Variable is configured in Model::initialize().
Thus this method gets the value of the SIZE Variable without relying on the System::getSizeVariable() method of the supersystem.
System::getSizeVariable()
System::configureSizeVariable()
System::findSizeVariable()
References FOR_ALL.
libecs::LIBECS_DM_CLASS | ( | System | , | |
Entity | ||||
) |
Get a pointer to a Stepper object that this System belongs.
This provides a default Stepper to Processes holded by this System.
anID | Stepper ID. |
This method throws NotFound exception if it is not found.
This method throws NotFound exception if it is not found.
If aSystemPath is empty, this method returns this System.
If aSystemPath is absolute ( starts with '/' ), this method calls getSystem() of the Model object, and returns the result.
This method throws NotFound exception if it is not found.
aSystemPath | A SystemPath object. |
This method throws NotFound exception if it is not found.
Unlike getSystem( SystemPath ) method, this method searches only within this System. In the other words this method doesn't conduct a recursive search.
anID | An ID string of a System. |
This method steals ownership of the given pointer, and deletes it if there is an error.
Register a Variable object in this System.
This method steals ownership of the given pointer, and deletes it if there is an error.
Register a System object in this System.
This method steals ownership of the given pointer, and deletes it if there is an error.
Check if this is a root System.
libecs::LIBECS_DM_CLASS | ( | Process | , | |
Entity | ||||
) |
Process class is used to represent chemical and other phenonema which may or may not result in change in value of one or more Variables.
Sort Processes in reversed order of 'Priority' values. (Largest one first, smallest one last)
This method returns true if this Process is compatible with continuous Steppers.
Set activity value.
Semantics of this property can be defined in each subclass of Process. Usually it is a turnover number if the Process represents a chemical reaction.
If the value has time in its dimension, the unit should be [per second], not [per step].
anActivity | An activity value to be set. |
The priority is an Integer value which is used to determine the order of call to Process::fire() method in Stepper.
aValue | the priority value as an Integer. |
setPriority()
anID | Stepper ID. |
This method gets a Polymorph which contains ( name, [ fullid, [ [ coefficient ] , accessor_flag ] ] ).
If only the name is given, the VariableReference with the name is removed from this Process.
Default values of coefficient and accessor_flag are 0 and true (1).
aValue | a PolymorphVector specifying a VariableReference. |
VariableReferences are sorted by coefficients, preserving the relative order by the names.
aName | name of the VariableReference. | |
aVariable | a Pointer to the Variable. | |
aCoefficient | an Integer value of the coefficient. |
aVariableReferenceName |
For each VariableReference, the new value is: old_value + ( aValue * theCoeffiencnt ).
VariableReferences with zero coefficients are skipped for optimization.
This is a convenient method for use in subclasses.
aValue | aReal value to be added. |
VariableReferences with zero coefficients are skipped for optimization.
This is a convenient method for use in subclasses.
aVelocity | a base velocity to be added. |
Product species here means VariableReferences those have positive non-zero coefficients.
As a result these becomes write-only VariableReferences.
This method is typically called in initialize() of subclasses. This method should be called before getVariableReference().
This is a convenient method.
Check if this Process can affect on a given Process.