Advanced Multi-Physics (AMP)
On-Line Documentation
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
AMP::TimeIntegrator::TimeOperator Class Referenceabstract

base class for operator class associated with ImplicitTimeIntegrator More...

#include <TimeOperator.h>

Inheritance diagram for AMP::TimeIntegrator::TimeOperator:
Inheritance graph
[legend]

Public Types

typedef std::shared_ptr< AMP::Operator::Operatorshared_ptr
 

Public Member Functions

void apply (AMP::LinearAlgebra::Vector::const_shared_ptr u, AMP::LinearAlgebra::Vector::shared_ptr r) override
 
virtual void apply (std::shared_ptr< const AMP::LinearAlgebra::Vector > u, std::shared_ptr< AMP::LinearAlgebra::Vector > f)=0
 
virtual void applyRhs (std::shared_ptr< const AMP::LinearAlgebra::Vector > x, std::shared_ptr< AMP::LinearAlgebra::Vector > f)
 
virtual std::shared_ptr< AMP::LinearAlgebra::VectorcreateInputVector () const
 Get a input vector ( For \(\mathbf{A(x)}\), \(\mathbf{x}\) is a input vector )
 
virtual std::shared_ptr< AMP::LinearAlgebra::VectorcreateOutputVector () const
 Get a left vector ( For \(\mathbf{y=A(x)}\), \(\mathbf{y}\) is an output vector )
 
virtual double getGamma (void) const
 
virtual std::shared_ptr< AMP::LinearAlgebra::VariablegetInputVariable () const
 Return the input variable.
 
std::shared_ptr< AMP::Operator::OperatorgetMassOperator (void)
 
AMP::Utilities::MemoryType getMemoryLocation () const
 
std::shared_ptr< AMP::Mesh::MeshgetMesh ()
 Return the mesh.
 
std::shared_ptr< const AMP::Mesh::MeshgetMesh () const
 Return the mesh.
 
std::shared_ptr< AMP::LinearAlgebra::VariablegetOutputVariable () const override
 
std::shared_ptr< AMP::Operator::OperatorParametersgetParameters (const std::string &type, AMP::LinearAlgebra::Vector::const_shared_ptr u, std::shared_ptr< AMP::Operator::OperatorParameters > params=nullptr) override
 
virtual std::shared_ptr< OperatorParameters > getParameters (const std::string &type, std::shared_ptr< const AMP::LinearAlgebra::Vector > u, std::shared_ptr< OperatorParameters > params=nullptr)
 
std::shared_ptr< AMP::Operator::OperatorgetRhsOperator (void)
 
bool isValidVector (std::shared_ptr< const AMP::LinearAlgebra::Vector > u) override
 given a vector return whether it is valid or not
 
void makeConsistent (std::shared_ptr< AMP::LinearAlgebra::Vector > vec) override
 
void registerAlgebraicVariable (std::shared_ptr< AMP::LinearAlgebra::Variable > var)
 
void registerMassOperator (std::shared_ptr< AMP::Operator::Operator > op)
 
void registerRhsOperator (std::shared_ptr< AMP::Operator::Operator > op)
 
void reInitializeVector (std::shared_ptr< AMP::LinearAlgebra::Vector > v) override
 
void reset (std::shared_ptr< const AMP::Operator::OperatorParameters > params) override
 
void residual (std::shared_ptr< const AMP::LinearAlgebra::Vector > f, std::shared_ptr< const AMP::LinearAlgebra::Vector > u, std::shared_ptr< AMP::LinearAlgebra::Vector > r) override
 
virtual std::shared_ptr< AMP::LinearAlgebra::VectorSelectorselectInputVector () const
 Return the selector for input vectors.
 
virtual std::shared_ptr< AMP::LinearAlgebra::VectorSelectorselectOutputVector () const
 Return the selector for output vectors.
 
void setComponentScalings (std::shared_ptr< AMP::LinearAlgebra::Vector > s, std::shared_ptr< AMP::LinearAlgebra::Vector > f)
 for multiphysics problems it may be necessary to scale the solution
 
virtual void setDebugPrintInfoLevel (int level)
 
void setDt (double dt)
 
virtual void setTimeOperatorScaling (const double gamma)
 
std::shared_ptr< AMP::LinearAlgebra::VectorsubsetInputVector (std::shared_ptr< AMP::LinearAlgebra::Vector > vec) const
 Subset input vector.
 
std::shared_ptr< const AMP::LinearAlgebra::VectorsubsetInputVector (std::shared_ptr< const AMP::LinearAlgebra::Vector > vec) const
 Subset input vector.
 
std::shared_ptr< AMP::LinearAlgebra::VectorsubsetOutputVector (std::shared_ptr< AMP::LinearAlgebra::Vector > vec) const
 Subset output vector.
 
std::shared_ptr< const AMP::LinearAlgebra::VectorsubsetOutputVector (std::shared_ptr< const AMP::LinearAlgebra::Vector > vec) const
 Subset output vector.
 
 TimeOperator (std::shared_ptr< const AMP::Operator::OperatorParameters > params)
 
std::string type () const override
 Return the name of the operator.
 
virtual ~TimeOperator ()
 

Protected Member Functions

void getBackendFromInput (std::shared_ptr< AMP::Database > db)
 
void getFromInput (std::shared_ptr< AMP::Database > db)
 
virtual std::shared_ptr< OperatorParameters > getJacobianParameters (std::shared_ptr< const AMP::LinearAlgebra::Vector >)
 
void setMemoryAndBackendParameters (std::shared_ptr< AMP::Database > db)
 
 TimeOperator ()
 

Protected Attributes

AMP::Utilities::Backend d_backend = AMP::Utilities::Backend::Serial
 
bool d_bAlgebraicComponent
 
bool d_bLinearMassOperator
 
bool d_bLinearRhsOperator
 
double d_dCurrentDt
 
double d_dGamma = 0.0
 
int d_iDebugPrintInfoLevel = 0
 
int d_iObject_id
 
AMP::Utilities::MemoryType d_memory_location = AMP::Utilities::MemoryType::none
 
std::shared_ptr< AMP::Mesh::Meshd_Mesh
 
std::shared_ptr< AMP::LinearAlgebra::Variabled_pAlgebraicVariable
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pFunctionScaling
 
std::shared_ptr< AMP::Operator::Operatord_pMassOperator
 
std::shared_ptr< AMP::Operator::Operatord_pRhsOperator
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pScratchSolVector
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pScratchVector
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pSolutionScaling
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pSourceTerm
 

Static Protected Attributes

static int d_iInstance_id
 

Detailed Description

base class for operator class associated with ImplicitTimeIntegrator

Class ImplicitTimeOperator is a base class derived from Operator. It is the operator class associated with a ImplicitTimeIntegrator. The solver associated with the ImplicitTimeIntegrator will register this object. For implicit time integrators solving a problem M(u_t) = f(u), at each time step a nonlinear or linear problem, F(u) = 0, where F(u) = M(u_t)-f(u) discretized, needs to be solved. The TimeOperator class is meant to represent this operator. Internally, two operators are used to represent F, a mass operator and a rhs operator. M corresponds to the mass operator and f() corresponds to the rhs operator. The mass operator is NULL in the case of FVM, FD discretizations.

See also
ImplicitTimeIntegrator
Operator
SolverStrategy
TimeOperatorParameters

Definition at line 32 of file TimeOperator.h.

Member Typedef Documentation

◆ shared_ptr

Definition at line 29 of file Operator.h.

Constructor & Destructor Documentation

◆ TimeOperator() [1/2]

AMP::TimeIntegrator::TimeOperator::TimeOperator ( std::shared_ptr< const AMP::Operator::OperatorParameters params)
explicit

Main constructor meant for use by users.

Parameters
[in]params: parameter object that must be of type TimeOperatorParameters. The database object contained in the parameter object contains the following fields:
  1. name: bLinearMassOperator description: boolean to indicate whether the mass operator is a linear operator, currently either both mass and rhs operators have to be linear or both have to be nonlinear type: bool default value: FALSE valid values: (TRUE, FALSE) optional field: yes
  2. name: bLinearRhsOperator description: boolean to indicate whether the rhs operator is a linear operator, currently either both mass and rhs operators have to be linear or both have to be nonlinear type: bool default value: FALSE valid values: (TRUE, FALSE) optional field: yes
  3. name: bAlgebraicComponent description: for a DAE system this TimeOperator would be one of several components. This field indicates if this component is an algebraic component, ie, having no time derivative type: bool default value: FALSE valid values: (TRUE, FALSE) optional field: yes
  4. name: CurrentDt description: current time step value type: double default value: none valid values: (positve real values) optional field: no

◆ ~TimeOperator()

virtual AMP::TimeIntegrator::TimeOperator::~TimeOperator ( )
virtual

virtual destructor

◆ TimeOperator() [2/2]

AMP::TimeIntegrator::TimeOperator::TimeOperator ( )
protected

Member Function Documentation

◆ apply() [1/2]

void AMP::TimeIntegrator::TimeOperator::apply ( AMP::LinearAlgebra::Vector::const_shared_ptr  u,
AMP::LinearAlgebra::Vector::shared_ptr  r 
)
override

Note this form is not correct for IDA and has to be overriden

◆ apply() [2/2]

virtual void AMP::Operator::Operator::apply ( std::shared_ptr< const AMP::LinearAlgebra::Vector u,
std::shared_ptr< AMP::LinearAlgebra::Vector f 
)
pure virtualinherited

This base class can not give a meaningful definition of apply. See the derived classes for how they define apply. Each operator is free to define apply in a way that is appropriate for that operator.

Parameters
ushared pointer to const input vector u
fshared pointer to output vector storing result of applying this operator

Implemented in AMP::Operator::RadDifOp, AMP::Operator::RadDifOpPJac, AMP::Operator::FunctionOperator, AMP::Operator::MemorySpaceMigrationLinearOperator, and AMP::Operator::MemorySpaceMigrationOperator.

◆ applyRhs()

virtual void AMP::TimeIntegrator::TimeOperator::applyRhs ( std::shared_ptr< const AMP::LinearAlgebra::Vector x,
std::shared_ptr< AMP::LinearAlgebra::Vector f 
)
virtual

◆ createInputVector()

virtual std::shared_ptr< AMP::LinearAlgebra::Vector > AMP::Operator::Operator::createInputVector ( ) const
virtualinherited

◆ createOutputVector()

virtual std::shared_ptr< AMP::LinearAlgebra::Vector > AMP::Operator::Operator::createOutputVector ( ) const
virtualinherited

Get a left vector ( For \(\mathbf{y=A(x)}\), \(\mathbf{y}\) is an output vector )

Returns
A newly created output vector

Reimplemented in AMP::Operator::IdentityOperator, AMP::Operator::LinearOperator, AMP::Operator::MemorySpaceMigrationLinearOperator, and AMP::Operator::MemorySpaceMigrationOperator.

◆ getBackendFromInput()

void AMP::Operator::Operator::getBackendFromInput ( std::shared_ptr< AMP::Database db)
protectedinherited

◆ getFromInput()

void AMP::TimeIntegrator::TimeOperator::getFromInput ( std::shared_ptr< AMP::Database db)
protected

◆ getGamma()

virtual double AMP::TimeIntegrator::TimeOperator::getGamma ( void  ) const
inlinevirtual

Get the scaling for implicit operators (at present not consistent with IDA interface)

Definition at line 160 of file TimeOperator.h.

References d_dGamma.

◆ getInputVariable()

virtual std::shared_ptr< AMP::LinearAlgebra::Variable > AMP::Operator::Operator::getInputVariable ( ) const
inlinevirtualinherited

◆ getJacobianParameters()

virtual std::shared_ptr< OperatorParameters > AMP::Operator::Operator::getJacobianParameters ( std::shared_ptr< const AMP::LinearAlgebra::Vector )
inlineprotectedvirtualinherited

This function returns a OperatorParameters object constructed by the operator which contains parameters from which new Jacobian operators can be created. Returning a parameter object instead of an Operator itself is meant to give users more flexibility.

Definition at line 180 of file Operator.h.

◆ getMassOperator()

std::shared_ptr< AMP::Operator::Operator > AMP::TimeIntegrator::TimeOperator::getMassOperator ( void  )
inline

return a shared pointer to the mass operator

Definition at line 122 of file TimeOperator.h.

References d_pMassOperator.

◆ getMemoryLocation()

AMP::Utilities::MemoryType AMP::Operator::Operator::getMemoryLocation ( ) const
inlineinherited

Definition at line 89 of file Operator.h.

References AMP::Operator::Operator::d_memory_location.

◆ getMesh() [1/2]

std::shared_ptr< AMP::Mesh::Mesh > AMP::Operator::Operator::getMesh ( )
inlineinherited

Return the mesh.

Definition at line 149 of file Operator.h.

References AMP::Operator::Operator::d_Mesh.

◆ getMesh() [2/2]

std::shared_ptr< const AMP::Mesh::Mesh > AMP::Operator::Operator::getMesh ( ) const
inlineinherited

Return the mesh.

Definition at line 152 of file Operator.h.

References AMP::Operator::Operator::d_Mesh.

◆ getOutputVariable()

std::shared_ptr< AMP::LinearAlgebra::Variable > AMP::TimeIntegrator::TimeOperator::getOutputVariable ( ) const
inlineoverridevirtual

returns a Variable object corresponding to the output variable for the TimeOperator. Currently this is the output variable associated with the rhs operator.

Reimplemented from AMP::Operator::Operator.

Definition at line 135 of file TimeOperator.h.

References d_pRhsOperator.

◆ getParameters() [1/2]

std::shared_ptr< AMP::Operator::OperatorParameters > AMP::TimeIntegrator::TimeOperator::getParameters ( const std::string &  type,
AMP::LinearAlgebra::Vector::const_shared_ptr  u,
std::shared_ptr< AMP::Operator::OperatorParameters params = nullptr 
)
override

◆ getParameters() [2/2]

virtual std::shared_ptr< OperatorParameters > AMP::Operator::Operator::getParameters ( const std::string &  type,
std::shared_ptr< const AMP::LinearAlgebra::Vector u,
std::shared_ptr< OperatorParameters params = nullptr 
)
virtualinherited

This function returns a OperatorParameters object constructed by the operator which contains parameters from which new operators can be created. Returning a parameter object instead of an Operator itself is meant to give users more flexibility. Examples of how this functionality might be used would be the construction of Jacobian, frozen Jacobian, preconditioner approximations to the Jacobian, adjoint operators etc

Parameters
typestd:string specifying type of return operator parameters being requested. Currently the valid option is Jacobian
uconst pointer to current solution vector
paramspointer to additional parameters that might be required to construct the return parameters

Reimplemented in AMP::Operator::IdentityOperator, AMP::Operator::MemorySpaceMigrationLinearOperator, and AMP::Operator::MemorySpaceMigrationOperator.

◆ getRhsOperator()

std::shared_ptr< AMP::Operator::Operator > AMP::TimeIntegrator::TimeOperator::getRhsOperator ( void  )
inline

return a shared pointer to the rhs operator

Definition at line 117 of file TimeOperator.h.

References d_pRhsOperator.

◆ isValidVector()

bool AMP::TimeIntegrator::TimeOperator::isValidVector ( std::shared_ptr< const AMP::LinearAlgebra::Vector u)
inlineoverridevirtual

given a vector return whether it is valid or not

Reimplemented from AMP::Operator::Operator.

Definition at line 190 of file TimeOperator.h.

References AMP_ASSERT, and d_pRhsOperator.

◆ makeConsistent()

void AMP::TimeIntegrator::TimeOperator::makeConsistent ( std::shared_ptr< AMP::LinearAlgebra::Vector vec)
inlineoverridevirtual

virtual interface used to make a vector consistent in an operator defined way. An example of where an operator is required to make a vector consistent is in the context of AMR where ghost values on coarse-fine interfaces are filled in an operator dependent way. The default implementation is to simply call the vector makeConsistent(SET)

Reimplemented from AMP::Operator::Operator.

Definition at line 177 of file TimeOperator.h.

References AMP_ASSERT, and d_pRhsOperator.

◆ registerAlgebraicVariable()

void AMP::TimeIntegrator::TimeOperator::registerAlgebraicVariable ( std::shared_ptr< AMP::LinearAlgebra::Variable var)
inline

register a variable as being an algebraic component. Deprecated.

Definition at line 109 of file TimeOperator.h.

References d_pAlgebraicVariable.

◆ registerMassOperator()

void AMP::TimeIntegrator::TimeOperator::registerMassOperator ( std::shared_ptr< AMP::Operator::Operator op)
inline

This function registers a mass operator with the TimeOperator class. Not necessary for FD or FVM discretizations

Parameters
[in]op: shared pointer to Operator, cannot be another TimeOperator

Definition at line 101 of file TimeOperator.h.

References d_pMassOperator.

◆ registerRhsOperator()

void AMP::TimeIntegrator::TimeOperator::registerRhsOperator ( std::shared_ptr< AMP::Operator::Operator op)
inline

This function registers a rhs operator with the TimeOperator class

Parameters
[in]op: shared pointer to Operator, cannot be another TimeOperator

Definition at line 94 of file TimeOperator.h.

References d_pRhsOperator.

◆ reInitializeVector()

void AMP::TimeIntegrator::TimeOperator::reInitializeVector ( std::shared_ptr< AMP::LinearAlgebra::Vector )
inlineoverridevirtual

re-initialize a vector, e.g. after a regrid operation has happened. This is useful for example when numerical overshoots or undershoots have happened due to interpolation for example The default is a null op

Reimplemented from AMP::Operator::Operator.

Definition at line 183 of file TimeOperator.h.

References AMP_ASSERT, and d_pRhsOperator.

◆ reset()

void AMP::TimeIntegrator::TimeOperator::reset ( std::shared_ptr< const AMP::Operator::OperatorParameters params)
overridevirtual

This function is useful for re-initializing an operator

Parameters
paramsparameter object containing parameters to change

Reimplemented from AMP::Operator::Operator.

◆ residual()

void AMP::TimeIntegrator::TimeOperator::residual ( std::shared_ptr< const AMP::LinearAlgebra::Vector f,
std::shared_ptr< const AMP::LinearAlgebra::Vector u,
std::shared_ptr< AMP::LinearAlgebra::Vector r 
)
overridevirtual

Default base class implementation of the residual: f-L(u)

Parameters
fshared pointer to const vector rhs
ushared pointer to const vector u
rshared pointer to vector residual

Reimplemented from AMP::Operator::Operator.

◆ selectInputVector()

virtual std::shared_ptr< AMP::LinearAlgebra::VectorSelector > AMP::Operator::Operator::selectInputVector ( ) const
virtualinherited

◆ selectOutputVector()

virtual std::shared_ptr< AMP::LinearAlgebra::VectorSelector > AMP::Operator::Operator::selectOutputVector ( ) const
virtualinherited

◆ setComponentScalings()

void AMP::TimeIntegrator::TimeOperator::setComponentScalings ( std::shared_ptr< AMP::LinearAlgebra::Vector s,
std::shared_ptr< AMP::LinearAlgebra::Vector f 
)
inline

for multiphysics problems it may be necessary to scale the solution

Definition at line 170 of file TimeOperator.h.

References d_pFunctionScaling, and d_pSolutionScaling.

◆ setDebugPrintInfoLevel()

virtual void AMP::Operator::Operator::setDebugPrintInfoLevel ( int  level)
inlinevirtualinherited

Specify level of diagnostic information printed during iterations.

Parameters
levelzero prints none or minimal information, higher numbers provide increasingly verbose debugging information.

Reimplemented in AMP::Operator::MemorySpaceMigrationLinearOperator, and AMP::Operator::MemorySpaceMigrationOperator.

Definition at line 97 of file Operator.h.

References AMP::Operator::Operator::d_iDebugPrintInfoLevel.

◆ setDt()

void AMP::TimeIntegrator::TimeOperator::setDt ( double  dt)
inline

set the value of the current time step

Parameters
[in]dt: value of current timestep

Definition at line 128 of file TimeOperator.h.

References d_dCurrentDt.

◆ setMemoryAndBackendParameters()

void AMP::Operator::Operator::setMemoryAndBackendParameters ( std::shared_ptr< AMP::Database db)
protectedinherited

◆ setTimeOperatorScaling()

virtual void AMP::TimeIntegrator::TimeOperator::setTimeOperatorScaling ( const double  gamma)
inlinevirtual

Set the scaling for implicit operators (at present not consistent with IDA interface)

Definition at line 156 of file TimeOperator.h.

References d_dGamma.

◆ subsetInputVector() [1/2]

std::shared_ptr< AMP::LinearAlgebra::Vector > AMP::Operator::Operator::subsetInputVector ( std::shared_ptr< AMP::LinearAlgebra::Vector vec) const
inherited

Subset input vector.

◆ subsetInputVector() [2/2]

std::shared_ptr< const AMP::LinearAlgebra::Vector > AMP::Operator::Operator::subsetInputVector ( std::shared_ptr< const AMP::LinearAlgebra::Vector vec) const
inherited

Subset input vector.

◆ subsetOutputVector() [1/2]

std::shared_ptr< AMP::LinearAlgebra::Vector > AMP::Operator::Operator::subsetOutputVector ( std::shared_ptr< AMP::LinearAlgebra::Vector vec) const
inherited

Subset output vector.

◆ subsetOutputVector() [2/2]

std::shared_ptr< const AMP::LinearAlgebra::Vector > AMP::Operator::Operator::subsetOutputVector ( std::shared_ptr< const AMP::LinearAlgebra::Vector vec) const
inherited

Subset output vector.

◆ type()

std::string AMP::TimeIntegrator::TimeOperator::type ( ) const
inlineoverridevirtual

Return the name of the operator.

Implements AMP::Operator::Operator.

Definition at line 81 of file TimeOperator.h.

Member Data Documentation

◆ d_backend

AMP::Utilities::Backend AMP::Operator::Operator::d_backend = AMP::Utilities::Backend::Serial
protectedinherited

Definition at line 197 of file Operator.h.

◆ d_bAlgebraicComponent

bool AMP::TimeIntegrator::TimeOperator::d_bAlgebraicComponent
protected

set to true if this operator corresponds to an algebraic component

Definition at line 208 of file TimeOperator.h.

◆ d_bLinearMassOperator

bool AMP::TimeIntegrator::TimeOperator::d_bLinearMassOperator
protected

Definition at line 201 of file TimeOperator.h.

◆ d_bLinearRhsOperator

bool AMP::TimeIntegrator::TimeOperator::d_bLinearRhsOperator
protected

Definition at line 203 of file TimeOperator.h.

◆ d_dCurrentDt

double AMP::TimeIntegrator::TimeOperator::d_dCurrentDt
protected

Definition at line 210 of file TimeOperator.h.

Referenced by setDt().

◆ d_dGamma

double AMP::TimeIntegrator::TimeOperator::d_dGamma = 0.0
protected

Definition at line 245 of file TimeOperator.h.

Referenced by getGamma(), and setTimeOperatorScaling().

◆ d_iDebugPrintInfoLevel

int AMP::Operator::Operator::d_iDebugPrintInfoLevel = 0
protectedinherited

Definition at line 187 of file Operator.h.

Referenced by AMP::Operator::Operator::setDebugPrintInfoLevel().

◆ d_iInstance_id

int AMP::Operator::Operator::d_iInstance_id
staticprotectedinherited

Definition at line 191 of file Operator.h.

◆ d_iObject_id

int AMP::Operator::Operator::d_iObject_id
protectedinherited

Definition at line 189 of file Operator.h.

◆ d_memory_location

AMP::Utilities::MemoryType AMP::Operator::Operator::d_memory_location = AMP::Utilities::MemoryType::none
protectedinherited

Definition at line 195 of file Operator.h.

Referenced by AMP::Operator::Operator::getMemoryLocation().

◆ d_Mesh

std::shared_ptr<AMP::Mesh::Mesh> AMP::Operator::Operator::d_Mesh
protectedinherited

◆ d_pAlgebraicVariable

std::shared_ptr<AMP::LinearAlgebra::Variable> AMP::TimeIntegrator::TimeOperator::d_pAlgebraicVariable
protected

algebraic variable

Definition at line 225 of file TimeOperator.h.

Referenced by registerAlgebraicVariable().

◆ d_pFunctionScaling

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeOperator::d_pFunctionScaling
protected

Definition at line 243 of file TimeOperator.h.

Referenced by setComponentScalings().

◆ d_pMassOperator

std::shared_ptr<AMP::Operator::Operator> AMP::TimeIntegrator::TimeOperator::d_pMassOperator
protected

pointer to mass operator

Definition at line 220 of file TimeOperator.h.

Referenced by getMassOperator(), and registerMassOperator().

◆ d_pRhsOperator

std::shared_ptr<AMP::Operator::Operator> AMP::TimeIntegrator::TimeOperator::d_pRhsOperator
protected

pointer to rhs operator

Definition at line 215 of file TimeOperator.h.

Referenced by getOutputVariable(), getRhsOperator(), isValidVector(), makeConsistent(), registerRhsOperator(), and reInitializeVector().

◆ d_pScratchSolVector

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeOperator::d_pScratchSolVector
protected

scratch vector for internal use

Definition at line 230 of file TimeOperator.h.

◆ d_pScratchVector

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeOperator::d_pScratchVector
protected

scratch vector for internal use

Definition at line 235 of file TimeOperator.h.

◆ d_pSolutionScaling

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeOperator::d_pSolutionScaling
protected

Definition at line 242 of file TimeOperator.h.

Referenced by setComponentScalings().

◆ d_pSourceTerm

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeOperator::d_pSourceTerm
protected

vector containing time independent source terms if any (for now)

Definition at line 240 of file TimeOperator.h.

Referenced by AMP::TimeIntegrator::IDATimeOperator::registerSourceTerm().


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



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:45.
Comments on this page