Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members  

ODE_PROBLEM Class Reference

Specification of the IVP. More...

#include <odeprobl.h>

Inheritance diagram for ODE_PROBLEM:

NAME ODE_NUMERIC List of all members.

Public Methods

 ODE_PROBLEM ( int n, FCN fcn, const string & name )
 Constructor. More...

int GetSize () const
 Returns the problem size.

void SetT0 ( double t0 )
 Sets the initial time, .

void SetInitCond ( const INTERVAL_VECTOR & Y )
 Sets an initial condition given by an interval vector. More...

void SetInitCond ( const PtrSolution IC )
 Sets a pointer to an initial condition object. More...

double GetT0 () const
 Returns the initial time. More...

const INTERVAL_VECTOR& GetInitCond () const
 Returns the interval vector enclosing the initial condition.

const PtrSolution GetPtrInitCond () const
 Returns a pointer to the initial condition object.

void ConstCoeff ( bool cc )
 Indicates if the problem is constant coefficient. More...

bool ExactSol () const
 Does the problem have an exact solution. More...

bool PointInitCond () const
 Is the initial condition a point vector. More...

bool ScalarProblem () const
 Is the problem scalar. More...

bool ConstCoeff () const
 Is the problem constant coefficient. More...

void CompRightSide ( INTERVAL_VECTOR & YP, const INTERVAL_VECTOR & Y ) const
 Function for computing the right side. More...

void SetCompExactSol ( EXACT_SOL f )
 Sets a function for computing an exact solution. More...

void CompExactSol ( INTERVAL_VECTOR & Y, const INTERVAL & t )
 A function for computing an exact solution. More...

virtual ~ODE_PROBLEM ()
 Destructor.


Detailed Description

Specification of the IVP.

This class specifies the initial condition and the function for computing the right side.

Author(s):
Ned Nedialkov
Date:
27 April 2001


Constructor & Destructor Documentation

ODE_PROBLEM::ODE_PROBLEM ( int n,
FCN fcn,
const string & name )
 

Constructor.

Parameters:
n   size of the problem
fcn   pointer to a function for computing the right side
name   name for the ODE problem

Precondition:
n > 0 && NotNull(fcn) && !name.empty()

ODE_PROBLEM::~ODE_PROBLEM ( ) [inline, virtual]
 

Destructor.


Member Function Documentation

int ODE_PROBLEM::GetSize ( ) const [inline]
 

Returns the problem size.

void ODE_PROBLEM::SetT0 ( double t0 ) [inline]
 

Sets the initial time, .

void ODE_PROBLEM::SetInitCond ( const INTERVAL_VECTOR & Y )
 

Sets an initial condition given by an interval vector.

This function sets at . If the initial condition is a point vector, it has to be stored in an interval vector with each component being a point interval.

Precondition:
GetSize() == Dimension(Y)

void ODE_PROBLEM::SetInitCond ( const PtrSolution IC ) [inline]
 

Sets a pointer to an initial condition object.

This object can be of type SOLUTION, or of type derived from solution, e.g. PARALL.

Parameters:
IC   pointer to an object for representing the initial condition.
Precondition:
NotNull(IC) && GetSize() == IC->GetDim()

double ODE_PROBLEM::GetT0 ( ) const [inline]
 

Returns the initial time.

This function returns the value for that is set in the most recent call to SetT0(), or 0, if SetT0() has not been called.

const INTERVAL_VECTOR & ODE_PROBLEM::GetInitCond ( ) const [inline]
 

Returns the interval vector enclosing the initial condition.

const PtrSolution ODE_PROBLEM::GetPtrInitCond ( ) const [inline]
 

Returns a pointer to the initial condition object.

void ODE_PROBLEM::ConstCoeff ( bool cc ) [inline]
 

Indicates if the problem is constant coefficient.

Parameters:
cc   true for a constant coefficient problem and false otherwise.

bool ODE_PROBLEM::ExactSol ( ) const [inline]
 

Does the problem have an exact solution.

Returns:
true if a function for computing an exact solution is set and false otherwise

bool ODE_PROBLEM::PointInitCond ( ) const [inline]
 

Is the initial condition a point vector.

Returns:
true if a point initial condition is specified and false otherwise

bool ODE_PROBLEM::ScalarProblem ( ) const [inline]
 

Is the problem scalar.

Returns:
true if the problem is scalar and false otherwise

bool ODE_PROBLEM::ConstCoeff ( ) const [inline]
 

Is the problem constant coefficient.

Returns:
true if the problem is constant coefficient and false otherwise

void ODE_PROBLEM::CompRightSide ( INTERVAL_VECTOR & YP,
const INTERVAL_VECTOR & Y ) const [inline]
 

Function for computing the right side.

This function computes the right side of by calling the function specified in the constructor.

Parameters:
Y   the argument in .
YP   the result

void ODE_PROBLEM::SetCompExactSol ( EXACT_SOL f ) [inline]
 

Sets a function for computing an exact solution.

Parameters:
f   pointer to a function for computing an exact solution
Precondition:
NotNull(f)

void ODE_PROBLEM::CompExactSol ( INTERVAL_VECTOR & Y,
const INTERVAL & t ) [inline]
 

A function for computing an exact solution.

This function computes an enclosure on the true solution by calling the function that is set in SetCompExactSol().

Parameters:
t   interval (normally a point interval) where an exact solution is desired
Y   enclosure of the exact solution.


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 12:45:41 2001 for VNODE by doxygen1.2.0 written by Dimitri van Heesch, © 1997-2000