The Entities.
[The Libecs library]

Collaboration diagram for The Entities.:
Entities. More...

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.

Detailed Description

Entities.


Function Documentation

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.

See also:
getFixed()
Returns:
current velocity value in (number of molecules)/(step)
A wrapper to set Fixed property by a bool value.

Returns:
true if the Variable is fixed or false if not.
Returns the molar concentration of this Variable.

Returns:
Concentration in M [mol/L].
Set the molar concentration of this Variable.

Parameters:
value Concentration in M [mol/L].
Load the molar concentration of this Variable.

This method uses loadNumberConc() instead of setNumberConc().

See also:
setNumberConc()
Returns the number concentration of this Variable.

Unlike getMolarConc, this method just returns value / size.

Returns:
Concentration in [number/L].
Set the number concentration of this Variable.

Parameters:
value concentration in [number/L].
Load the number concentration of this Variable.

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.

See also:
loadMolarConc()

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.

Returns:
A pointer to a Stepper object that this System belongs or NULL pointer if it is not set.
Set a StepperID.

This provides a default Stepper to Processes holded by this System.

Parameters:
anID Stepper ID.
Get the default StepperID in this System.

Returns:
an ID of the Stepper as a String.
Get the size of this System in [L] (liter).

Returns:
Size of this System.
Find a Process with given id in this System.

This method throws NotFound exception if it is not found.

Returns:
a borrowed pointer to a Process object in this System named id.
Find a Variable with given id in this System.

This method throws NotFound exception if it is not found.

Returns:
a borrowed pointer to a Variable object in this System named id.
Find a System pointed by the given SystemPath relative to this System.

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.

Parameters:
aSystemPath A SystemPath object.
Returns:
a borrowed pointer to a System object pointed by aSystemPath.
Find a System with a given id in this System.

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.

Parameters:
anID An ID string of a System.
Returns:
a borrowed pointer to a System object in this System whose ID is anID.
Register a Process object in this 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.

Returns:
true if this is a Root System, false otherwise.
See also:
Entity::getSystePath()
Get a Model object to which this System belongs.

Returns:
a borrowed pointer to the Model.

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].

Parameters:
anActivity An activity value to be set.
See also:
getActivity()
Get activity value.

See also:
setActivity()
Returns:
the activity value of this Process.
Set a priority value of this Process.

The priority is an Integer value which is used to determine the order of call to Process::fire() method in Stepper.

Parameters:
aValue the priority value as an Integer.
See also:
Stepper

setPriority()

Register the Stepper of this Process by an ID.

Parameters:
anID Stepper ID.
Get an ID of the Stepper of this Process.

Returns:
StepperID as a String.
Create a new VariableReference.

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).

Parameters:
aValue a PolymorphVector specifying a VariableReference.
Register a new VariableReference to theVariableReferenceVector.

VariableReferences are sorted by coefficients, preserving the relative order by the names.

Parameters:
aName name of the VariableReference.
aVariable a Pointer to the Variable.
aCoefficient an Integer value of the coefficient.
Get VariableReference by a tag name.

Parameters:
aVariableReferenceName 
Returns:
a VariableReference
See also:
VariableReference
Returns:
a const reference to the VariableReferenceVector
Returns a pointer to a Stepper object that this Process belongs.

Returns:
A pointer to a Stepper object that this Process, or NULLPTR if it is not set yet.
Add a value to each of VariableReferences.

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.

Parameters:
aValue aReal value to be added.
Set velocity of each VariableReference according to stoichiometry.

VariableReferences with zero coefficients are skipped for optimization.

This is a convenient method for use in subclasses.

Parameters:
aVelocity a base velocity to be added.
Unset all the product species' isAccessor() bit.

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.


Generated on Tue Mar 11 03:57:08 2008 for E-CELL C++ libraries (libecs and libemc) 3.1.105 by  doxygen 1.5.5