escript
Revision_
|
#include <TransportProblemAdapter.h>
Public Member Functions | |
TransportProblemAdapter () | |
Wrapper for paso::TransportProblem. More... | |
TransportProblemAdapter (TransportProblem_ptr transport_problem, int block_size, const escript::FunctionSpace &functionspace) | |
~TransportProblemAdapter () | |
Empty destructor for TransportProblemAdapter. More... | |
TransportProblem_ptr | getPaso_TransportProblem () const |
Returns the pointer to the transport problem. More... | |
virtual void | resetTransport () const |
resets the transport operator typically as they have been updated. More... | |
virtual double | getSafeTimeStepSize () const |
returns a save time step size. More... | |
virtual double | getUnlimitedTimeStepSize () const |
returns the value for unlimited time step size. More... | |
![]() | |
AbstractTransportProblem () | |
Default constructor for AbstractTransportProblem. More... | |
AbstractTransportProblem (const int blocksize, const FunctionSpace &functionspace) | |
virtual | ~AbstractTransportProblem () |
Destructor. More... | |
int | isEmpty () const |
FunctionSpace | getFunctionSpace () const |
returns the column function space More... | |
int | getBlockSize () const |
returns the block size More... | |
Data | solve (Data &u0, Data &source, const double dt, boost::python::object &options) const |
returns the solution u for a time step dt>0 with initial value u0 at time t=0 More... | |
void | insertConstraint (Data &source, Data &q, Data &r) const |
inserts constraint u_{,t}=r where q>0 into the problem More... | |
Static Public Member Functions | |
static int | getTransportTypeId (const int solver, const int preconditioner, const int package, const bool symmetry, const esysUtils::JMPI &mpiInfo) |
returns the identifier of the transport problem type to be used when a particular solver, preconditioner and package is used More... | |
Private Member Functions | |
virtual void | setToSolution (escript::Data &out, escript::Data &u0, escript::Data &source, double dt, boost::python::object &options) const |
sets solution out by time step dt. More... | |
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. More... | |
Private Attributes | |
TransportProblem_ptr | m_transport_problem |
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 | ( | TransportProblem_ptr | transport_problem, |
int | block_size, | ||
const escript::FunctionSpace & | functionspace | ||
) |
/brief Constructor for TransportProblemAdapter.
|
inline |
Empty destructor for TransportProblemAdapter.
References copyConstraint(), getPaso_TransportProblem(), getSafeTimeStepSize(), getTransportTypeId(), getUnlimitedTimeStepSize(), resetTransport(), and setToSolution().
|
privatevirtual |
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.
Reimplemented from escript::AbstractTransportProblem.
References paso::checkPasoError(), escript::Data::copyWithMask(), escript::Data::expand(), escript::AbstractTransportProblem::getBlockSize(), escript::Data::getDataPointShape(), escript::Data::getDataPointSize(), escript::AbstractTransportProblem::getFunctionSpace(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRW(), m_transport_problem, escript::Data::requireWrite(), and paso::SystemMatrix_MatrixVector().
Referenced by ~TransportProblemAdapter().
TransportProblem_ptr paso::TransportProblemAdapter::getPaso_TransportProblem | ( | ) | const |
Returns the pointer to the transport problem.
References m_transport_problem.
Referenced by finley::MeshAdapter::addPDEToTransportProblem(), ripley::RipleyDomain::addPDEToTransportProblem(), dudley::MeshAdapter::addPDEToTransportProblem(), and ~TransportProblemAdapter().
|
virtual |
returns a save time step size.
Reimplemented from escript::AbstractTransportProblem.
References paso::checkPasoError(), and m_transport_problem.
Referenced by BOOST_PYTHON_MODULE(), and ~TransportProblemAdapter().
|
static |
returns the identifier of the transport problem type to be used when a particular solver, preconditioner and package is used
References paso::TransportProblem::getTypeId(), and paso::SystemMatrixAdapter::mapOptionToPaso().
Referenced by ~TransportProblemAdapter().
|
virtual |
returns the value for unlimited time step size.
Reimplemented from escript::AbstractTransportProblem.
References LARGE_POSITIVE_FLOAT.
Referenced by BOOST_PYTHON_MODULE(), and ~TransportProblemAdapter().
|
virtual |
resets the transport operator typically as they have been updated.
Reimplemented from escript::AbstractTransportProblem.
References paso::checkPasoError(), and m_transport_problem.
Referenced by BOOST_PYTHON_MODULE(), and ~TransportProblemAdapter().
|
privatevirtual |
sets solution out by time step dt.
Reimplemented from escript::AbstractTransportProblem.
References paso::checkPasoError(), paso::SystemMatrixAdapter::escriptToPasoOptions(), escript::Data::expand(), escript::AbstractTransportProblem::getBlockSize(), escript::Data::getDataPointSize(), escript::AbstractTransportProblem::getFunctionSpace(), escript::Data::getFunctionSpace(), escript::Data::getSampleDataRW(), m_transport_problem, paso::SystemMatrixAdapter::pasoToEscriptOptions(), and escript::Data::requireWrite().
Referenced by ~TransportProblemAdapter().
|
private |
Referenced by copyConstraint(), getPaso_TransportProblem(), getSafeTimeStepSize(), resetTransport(), and setToSolution().