Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members | File Members | Related Pages | Examples

SPARK::TComponent Class Reference

Class that solves the set of DAE equations generated by setupcpp. More...

#include <component.h>

Collaboration diagram for SPARK::TComponent:

Collaboration graph
[legend]
List of all members.

Public Types

enum  ComponentTypes {
  ComponentType_WEAK = 0,
  ComponentType_STRONG = 1
}
 Type to indicate whether a component consists of a set of weakly- or strongly-connected equations. More...


Public Member Functions

 TComponent (unsigned handle, unsigned numNormalUnknowns, SPARK::TUnknown normalUnknowns[], unsigned numBreakUnknowns, SPARK::TUnknown breakUnknowns[], unsigned numObjects, SPARK::TObject *objects[]) throw (SPARK::XMemory)
 Constructor.

 ~TComponent () throw ()
 Destructor.

void Evaluate ()
 Solves the set of differential-algebraic equations.

const char * GetName () const
 Returns the name of the component as const char*.

unsigned GetHandle () const
 Returns the unique handle assigne to this component as an unsigned int.

unsigned GetType () const
 Returns the component type as unsigned (see enum TComponent::TType).

unsigned GetNumObjects () const
 Returns the number of objects comprising this component.

SPARK::TObjectGetObject (unsigned i)
 Returns a pointer to the TObject object evaluated in position i.

const SPARK::TObjectGetObject (unsigned i) const
 Returns a const pointer to the TObject object evaluated in position i.

bool IsStronglyConnected () const
 Returns true if this component is a strongly-connected component.


Detailed Description

Class that solves the set of DAE equations generated by setupcpp.

A problem consists of a series of TComponent objects that are solved in a fixed order, from the first component (with index 0) to the last component. The order in which the components need to be solved reflects the topological dependencies derived by setupcpp.


Member Enumeration Documentation

enum SPARK::TComponent::ComponentTypes
 

Type to indicate whether a component consists of a set of weakly- or strongly-connected equations.

Enumeration values:
ComponentType_WEAK  Indicates a weakly-connected component that is solved using forward substitution.
ComponentType_STRONG  Indicates a strongly-connected component that requires iterative solution.


Constructor & Destructor Documentation

SPARK::TComponent::TComponent unsigned  handle,
unsigned  numNormalUnknowns,
SPARK::TUnknown  normalUnknowns[],
unsigned  numBreakUnknowns,
SPARK::TUnknown  breakUnknowns[],
unsigned  numObjects,
SPARK::TObject objects[]
throw (SPARK::XMemory)
 

Constructor.

SPARK::TComponent::~TComponent  )  throw ()
 

Destructor.


Member Function Documentation

void SPARK::TComponent::Evaluate  ) 
 

Solves the set of differential-algebraic equations.

Exceptions:
SPARK::XNoConvergence Thrown if convergence cannot be obtained.
SPARK::XBadNumerics Thrown if bad numerics detected.

const char* SPARK::TComponent::GetName  )  const [inline]
 

Returns the name of the component as const char*.

unsigned SPARK::TComponent::GetHandle  )  const [inline]
 

Returns the unique handle assigne to this component as an unsigned int.

unsigned SPARK::TComponent::GetType  )  const [inline]
 

Returns the component type as unsigned (see enum TComponent::TType).

unsigned SPARK::TComponent::GetNumObjects  )  const [inline]
 

Returns the number of objects comprising this component.

SPARK::TObject* SPARK::TComponent::GetObject unsigned  i  )  [inline]
 

Returns a pointer to the TObject object evaluated in position i.

Note:
The first object evaluated in this component is stored in position 0.

const SPARK::TObject* SPARK::TComponent::GetObject unsigned  i  )  const [inline]
 

Returns a const pointer to the TObject object evaluated in position i.

Note:
The first object evaluated in this component is stored in position 0.

bool SPARK::TComponent::IsStronglyConnected  )  const [inline]
 

Returns true if this component is a strongly-connected component.


The documentation for this class was generated from the following file:

Generated on 5 Nov 2003 for VisualSPARK 2.01