ESScript  Revision_
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
paso::TransportProblemAdapter Class Reference

#include <TransportProblemAdapter.h>

Public Member Functions

 TransportProblemAdapter ()
 Wrapper for Paso_TransportProblem.
 TransportProblemAdapter (Paso_TransportProblem *transport_problem, const int block_size, const escript::FunctionSpace &functionspace)
 ~TransportProblemAdapter ()
 Destructor for TransportProblemAdapter. As specified in the constructor this deallocates the pointer given to the constructor.
Paso_TransportProblemgetPaso_TransportProblem () const
 Returns the pointer to the transport problem.
const
escript::AbstractTransportProblem & 
asAbstractTransportProblem () const
 Returns the transport problem as a const AbstractTransportProblem&.
virtual void resetTransport () const
 resets the transport operator typically as they have been updated.
virtual double getSafeTimeStepSize () const
 returns a save time step size.
virtual double getUnlimitedTimeStepSize () const
 returns the value for unlimited time step size.

Static Public Member Functions

static const
TransportProblemAdapter
asTransportProblemAdapter (const AbstractTransportProblem &transportproblem)
 Returns a transport problem as a const TransportProblemAdapter&.
static int getTransportTypeId (const int solver, const int preconditioner, const int package, const bool symmetry, Esys_MPIInfo *mpiInfo)
 returns the identifier of the transport problem type to be used when a particular solver, preconditioner and package is used

Private Member Functions

virtual void setToSolution (escript::Data &out, escript::Data &u0, escript::Data &source, const double dt, boost::python::object &options) const
 sets solution out by time step dt.
virtual void copyConstraint (escript::Data &source, escript::Data &q, escript::Data &r) const
 copy constraint u_{,t}=r where q>0 into the problem it is assumed that q and r are not empty and has appropriate shape and function space.

Private Attributes

boost::shared_ptr
< Paso_TransportProblem
m_transport_problem

Constructor & Destructor Documentation

paso::TransportProblemAdapter::TransportProblemAdapter ( )

Wrapper for Paso_TransportProblem.

Description: Wrapper for Paso_TransportProblem. /brief Default Constructor for TransportProblemAdapter. NB: Only throws an exception.

paso::TransportProblemAdapter::TransportProblemAdapter ( Paso_TransportProblem transport_problem,
const int  block_size,
const escript::FunctionSpace &  functionspace 
)

/brief Constructor for TransportProblemAdapter.

References m_transport_problem.

paso::TransportProblemAdapter::~TransportProblemAdapter ( )

Destructor for TransportProblemAdapter. As specified in the constructor this deallocates the pointer given to the constructor.

References m_transport_problem, and Paso_TransportProblem_free().

Member Function Documentation

const escript::AbstractTransportProblem& paso::TransportProblemAdapter::asAbstractTransportProblem ( ) const
inline

Returns the transport problem as a const AbstractTransportProblem&.

static const TransportProblemAdapter& paso::TransportProblemAdapter::asTransportProblemAdapter ( const AbstractTransportProblem &  transportproblem)
inlinestatic

Returns a transport problem as a const TransportProblemAdapter&.

void paso::TransportProblemAdapter::copyConstraint ( escript::Data &  source,
escript::Data &  q,
escript::Data &  r 
) const
privatevirtual
Paso_TransportProblem * paso::TransportProblemAdapter::getPaso_TransportProblem ( ) const
double paso::TransportProblemAdapter::getSafeTimeStepSize ( ) const
virtual
int paso::TransportProblemAdapter::getTransportTypeId ( const int  solver,
const int  preconditioner,
const int  package,
const bool  symmetry,
Esys_MPIInfo mpiInfo 
)
static

returns the identifier of the transport problem type to be used when a particular solver, preconditioner and package is used

References paso::checkPasoError(), paso::SystemMatrixAdapter::mapOptionToPaso(), and Paso_TransportProblem_getTypeId().

double paso::TransportProblemAdapter::getUnlimitedTimeStepSize ( ) const
virtual

returns the value for unlimited time step size.

References LARGE_POSITIVE_FLOAT.

Referenced by BOOST_PYTHON_MODULE().

void paso::TransportProblemAdapter::resetTransport ( ) const
virtual

resets the transport operator typically as they have been updated.

References paso::checkPasoError(), getPaso_TransportProblem(), and Paso_TransportProblem_reset().

Referenced by BOOST_PYTHON_MODULE().

void paso::TransportProblemAdapter::setToSolution ( escript::Data &  out,
escript::Data &  u0,
escript::Data &  source,
const double  dt,
boost::python::object &  options 
) const
privatevirtual

Member Data Documentation

boost::shared_ptr<Paso_TransportProblem> paso::TransportProblemAdapter::m_transport_problem
private

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