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

Abstract base class for time integration. More...

#include <TimeIntegrator.h>

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

Public Types

typedef std::shared_ptr< AMP::TimeIntegrator::TimeIntegratorshared_ptr
 Convience typedef.
 

Public Member Functions

virtual int advanceSolution (const double dt, const bool first_step, std::shared_ptr< AMP::LinearAlgebra::Vector > in, std::shared_ptr< AMP::LinearAlgebra::Vector > out)=0
 Integrate through the specified time increment.
 
virtual void appendRhsVector (AMP::LinearAlgebra::Vector::shared_ptr vec)
 Append the vectors of interest to the rhs vector.
 
virtual void appendSolutionVector (AMP::LinearAlgebra::Vector::shared_ptr vec)
 Append the vectors of interest to the solution vector.
 
virtual bool checkNewSolution (void)=0
 
virtual double getCurrentDt () const
 Return current timestep.
 
virtual double getCurrentTime () const
 Return final integration time.
 
virtual double getFinalTime () const
 Return final integration time.
 
virtual double getGamma (void)
 
uint64_t getID () const
 Get a unique id hash for the vector.
 
virtual double getInitialDt ()
 
virtual double getInitialTime () const
 Return initial integration time.
 
virtual int getIntegratorStep () const
 Return current integration step number.
 
virtual int getMaxIntegratorSteps () const
 Return maximum number of integration steps.
 
virtual double getNextDt (const bool good_solution)
 Return time increment for next solution advance.
 
std::shared_ptr< AMP::Operator::OperatorgetOperator (void)
 
virtual std::shared_ptr< AMP::LinearAlgebra::VectorgetSolution (void)
 
virtual AMP::LinearAlgebra::Vector::shared_ptr getSourceTerm (void)
 
virtual std::vector< doublegetTimeHistoryScalings (void)
 Scaling factors for previous time history vectors.
 
virtual int getTotalRejectedSteps () const
 
virtual void initialize (std::shared_ptr< TimeIntegratorParameters > parameters)
 Initialize state of time integrator.
 
void printClassData (std::ostream &os) const
 
virtual void printStatistics (std::ostream &os=AMP::pout)
 
void putToDatabase (std::shared_ptr< AMP::Database > db)
 
virtual void registerChildObjects (AMP::IO::RestartManager *manager) const
 Register any child objects.
 
virtual void registerOperator (std::shared_ptr< AMP::Operator::Operator > op)
 
virtual void registerWriter (std::shared_ptr< AMP::IO::Writer > writer)
 Registers a writer with the solver.
 
virtual void reset (std::shared_ptr< const TimeIntegratorParameters > parameters)=0
 Resets the internal state of the time integrator.
 
virtual void setCurrentDt (const double dt)
 
virtual void setCurrentTime (const double t)
 
virtual void setFinalTime (const double t)
 
virtual void setInitialDt (const double dt)
 
virtual void setInitialTime (const double t)
 
virtual void setSourceTerm (AMP::LinearAlgebra::Vector::shared_ptr src)
 
virtual size_t sizeOfTimeHistory () const
 
virtual bool stepsRemaining () const
 Have the number of integration steps reached the maximum.
 
 TimeIntegrator (int64_t fid, AMP::IO::RestartManager *manager)
 Read restart data to file.
 
 TimeIntegrator (std::shared_ptr< TimeIntegratorParameters > parameters)
 
virtual std::string type () const
 Return the name of the TimeIntegrator.
 
virtual void updateSolution (void)=0
 Update solution after time advance.
 
virtual void writeRestart (int64_t fid) const
 Write restart data to file.
 
virtual ~TimeIntegrator ()
 

Protected Member Functions

void getFromInput (std::shared_ptr< const AMP::Database > db)
 
void getFromRestart ()
 
 TimeIntegrator ()=default
 

Protected Attributes

double d_current_dt = std::numeric_limits<double>::signaling_NaN()
 
double d_current_time = std::numeric_limits<double>::signaling_NaN()
 
double d_final_time = std::numeric_limits<double>::signaling_NaN()
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_ic_vector = nullptr
 
int d_iDebugPrintInfoLevel = 0
 
double d_initial_dt = std::numeric_limits<double>::signaling_NaN()
 initial time increment
 
double d_initial_time = std::numeric_limits<double>::signaling_NaN()
 
bool d_initialized = false
 
int d_integrator_step = 0
 
double d_max_dt = std::numeric_limits<double>::max()
 maximum allowable timestep (user defined)
 
int d_max_integrator_steps = 0
 
double d_min_dt = std::numeric_limits<double>::signaling_NaN()
 
std::string d_object_name
 
double d_old_dt = std::numeric_limits<double>::signaling_NaN()
 
std::shared_ptr< AMP::Operator::Operatord_operator
 
std::shared_ptr< AMP::Operator::Operatord_pMassOperator
 
std::shared_ptr< TimeIntegratorParametersd_pParameters
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_pSourceTerm
 
std::shared_ptr< AMP::LinearAlgebra::Vectord_solution_vector
 
int d_total_steprejects = 0
 
std::shared_ptr< AMP::IO::Writerd_writer
 keeps track of total number of step rejections
 

Private Member Functions

void operator= (const TimeIntegrator &)=delete
 
 TimeIntegrator (const TimeIntegrator &)=delete
 

Detailed Description

Abstract base class for time integration.

Class TimeIntegrator is an abstract base class for managing time integration

Initialization of an TimeIntegrator object is performed through a TimeIntegratorParameters object

Definition at line 33 of file TimeIntegrator.h.

Member Typedef Documentation

◆ shared_ptr

Convience typedef.

Definition at line 37 of file TimeIntegrator.h.

Constructor & Destructor Documentation

◆ TimeIntegrator() [1/4]

AMP::TimeIntegrator::TimeIntegrator::TimeIntegrator ( std::shared_ptr< TimeIntegratorParameters parameters)
explicit

The constructor for TimeIntegrator initializes the default state of the integrator. Data members are initialized from the input and restart databases.

Note that no vectors are created in the constructor. Vectors are created and initialized in the initialize() member function.

◆ ~TimeIntegrator()

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

Empty destructor for TimeIntegrator

◆ TimeIntegrator() [2/4]

AMP::TimeIntegrator::TimeIntegrator::TimeIntegrator ( )
protecteddefault

◆ TimeIntegrator() [3/4]

AMP::TimeIntegrator::TimeIntegrator::TimeIntegrator ( int64_t  fid,
AMP::IO::RestartManager manager 
)

Read restart data to file.

This function will create a variable from the restart file

Parameters
fidFile identifier to write
managerRestart manager

◆ TimeIntegrator() [4/4]

AMP::TimeIntegrator::TimeIntegrator::TimeIntegrator ( const TimeIntegrator )
explicitprivatedelete

Member Function Documentation

◆ advanceSolution()

virtual int AMP::TimeIntegrator::TimeIntegrator::advanceSolution ( const double  dt,
const bool  first_step,
std::shared_ptr< AMP::LinearAlgebra::Vector in,
std::shared_ptr< AMP::LinearAlgebra::Vector out 
)
pure virtual

Integrate through the specified time increment.

Integrate through the specified time increment.

The boolean first_step argument is true when this is the very first call to the advance function. Otherwise it is false. Note that, when the argument is true, the use of extrapolation to construct the initial guess for the advanced solution may not be possible.

This function may, or may not, copy the new solution into the solution vector at the previous time step (updateSolution). If it is copied, this can reduce the memory requirements, but restricts the implementation to those functions that will not be called multiple times within a time step. If it is not copied, the update solution function must be called after each time step. The concrete implementation needs to make this clear.

Parameters
dtTime step size
first_stepWhether this is the first step
inInput vector
outOutput vector
Returns
value is the return code generated by the particular solver package in use

Implemented in AMP::TimeIntegrator::ExplicitEuler, AMP::TimeIntegrator::ImplicitIntegrator, AMP::TimeIntegrator::OxideTimeIntegrator, AMP::TimeIntegrator::RK12TimeIntegrator, AMP::TimeIntegrator::RK23TimeIntegrator, AMP::TimeIntegrator::RK2TimeIntegrator, AMP::TimeIntegrator::RK34TimeIntegrator, AMP::TimeIntegrator::RK45TimeIntegrator, AMP::TimeIntegrator::RK4TimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ appendRhsVector()

virtual void AMP::TimeIntegrator::TimeIntegrator::appendRhsVector ( AMP::LinearAlgebra::Vector::shared_ptr  vec)
inlinevirtual

Append the vectors of interest to the rhs vector.

This function will append the necessary vectors that this solver owns to the global vector provided. Note that each solver may own any number of vectors, but no vector may be owned by multiple solvers.

Parameters
vecThe vector to append

Definition at line 219 of file TimeIntegrator.h.

◆ appendSolutionVector()

virtual void AMP::TimeIntegrator::TimeIntegrator::appendSolutionVector ( AMP::LinearAlgebra::Vector::shared_ptr  vec)
inlinevirtual

Append the vectors of interest to the solution vector.

This function will append the necessary vectors that this solver owns to the global vector provided. Note that each solver may own any number of vectors, but no vector may be owned by multiple solvers.

Parameters
vecThe vector to append

Definition at line 208 of file TimeIntegrator.h.

◆ checkNewSolution()

virtual bool AMP::TimeIntegrator::TimeIntegrator::checkNewSolution ( void  )
pure virtual

Check time advanced solution to determine whether it is acceptable. Return true if the solution is acceptable; return false otherwise. The meaning of this value must be intepreted properly by the user-supplied solution checking routine.

Implemented in AMP::TimeIntegrator::ExplicitEuler, AMP::TimeIntegrator::ImplicitIntegrator, AMP::TimeIntegrator::OxideTimeIntegrator, AMP::TimeIntegrator::RK12TimeIntegrator, AMP::TimeIntegrator::RK23TimeIntegrator, AMP::TimeIntegrator::RK2TimeIntegrator, AMP::TimeIntegrator::RK34TimeIntegrator, AMP::TimeIntegrator::RK45TimeIntegrator, AMP::TimeIntegrator::RK4TimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ getCurrentDt()

virtual double AMP::TimeIntegrator::TimeIntegrator::getCurrentDt ( ) const
virtual

Return current timestep.

Return current timestep.

◆ getCurrentTime()

virtual double AMP::TimeIntegrator::TimeIntegrator::getCurrentTime ( ) const
virtual

Return final integration time.

Return current integration time.

◆ getFinalTime()

virtual double AMP::TimeIntegrator::TimeIntegrator::getFinalTime ( ) const
virtual

Return final integration time.

Return final integration time.

◆ getFromInput()

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

◆ getFromRestart()

void AMP::TimeIntegrator::TimeIntegrator::getFromRestart ( )
protected

◆ getGamma()

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

Reimplemented in AMP::TimeIntegrator::BDFIntegrator.

Definition at line 268 of file TimeIntegrator.h.

References d_current_dt.

◆ getID()

uint64_t AMP::TimeIntegrator::TimeIntegrator::getID ( ) const

Get a unique id hash for the vector.

◆ getInitialDt()

virtual double AMP::TimeIntegrator::TimeIntegrator::getInitialDt ( )
inlinevirtual

get initial time step.

Definition at line 179 of file TimeIntegrator.h.

References d_initial_dt.

◆ getInitialTime()

virtual double AMP::TimeIntegrator::TimeIntegrator::getInitialTime ( ) const
virtual

Return initial integration time.

Return initial integration time.

◆ getIntegratorStep()

virtual int AMP::TimeIntegrator::TimeIntegrator::getIntegratorStep ( ) const
virtual

Return current integration step number.

Return current integration step number.

◆ getMaxIntegratorSteps()

virtual int AMP::TimeIntegrator::TimeIntegrator::getMaxIntegratorSteps ( ) const
virtual

Return maximum number of integration steps.

Return maximum number of integration steps.

◆ getNextDt()

virtual double AMP::TimeIntegrator::TimeIntegrator::getNextDt ( const bool  good_solution)
virtual

Return time increment for next solution advance.

Return time increment for next solution advance. Timestep selection is generally based on whether the solution meets some user-defined criteria. This routine assumes that, before it is called, the routine checkNewSolution() was called. The boolean argument is the return value from that call.

Reimplemented in AMP::TimeIntegrator::ImplicitIntegrator, AMP::TimeIntegrator::OxideTimeIntegrator, AMP::TimeIntegrator::RK12TimeIntegrator, AMP::TimeIntegrator::RK23TimeIntegrator, AMP::TimeIntegrator::RK34TimeIntegrator, AMP::TimeIntegrator::RK45TimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ getOperator()

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

Definition at line 246 of file TimeIntegrator.h.

References d_operator.

◆ getSolution()

virtual std::shared_ptr< AMP::LinearAlgebra::Vector > AMP::TimeIntegrator::TimeIntegrator::getSolution ( void  )
inlinevirtual

Retrieve the current solution.

Definition at line 137 of file TimeIntegrator.h.

References d_solution_vector.

◆ getSourceTerm()

virtual AMP::LinearAlgebra::Vector::shared_ptr AMP::TimeIntegrator::TimeIntegrator::getSourceTerm ( void  )
inlinevirtual

Reimplemented in AMP::TimeIntegrator::IDATimeIntegrator.

Definition at line 266 of file TimeIntegrator.h.

References d_pSourceTerm.

◆ getTimeHistoryScalings()

virtual std::vector< double > AMP::TimeIntegrator::TimeIntegrator::getTimeHistoryScalings ( void  )
inlinevirtual

Scaling factors for previous time history vectors.

For RK methods the previous time vector is always scaled by 1. For multistep methods this vector can consist of multiple scalings with the first entry being the scaling for $y^{n-1}$, the next being for $y^{n-2}$ etc

Reimplemented in AMP::TimeIntegrator::BDFIntegrator.

Definition at line 276 of file TimeIntegrator.h.

◆ getTotalRejectedSteps()

virtual int AMP::TimeIntegrator::TimeIntegrator::getTotalRejectedSteps ( ) const
inlinevirtual

Definition at line 248 of file TimeIntegrator.h.

References d_total_steprejects.

◆ initialize()

virtual void AMP::TimeIntegrator::TimeIntegrator::initialize ( std::shared_ptr< TimeIntegratorParameters parameters)
virtual

Initialize state of time integrator.

Initialize state of time integrator. This includes creating solution vector and initializing solver components.

Reimplemented in AMP::TimeIntegrator::ImplicitIntegrator, AMP::TimeIntegrator::OxideTimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ operator=()

◆ printClassData()

void AMP::TimeIntegrator::TimeIntegrator::printClassData ( std::ostream &  os) const

Print out all members of integrator instance to given output stream.

◆ printStatistics()

virtual void AMP::TimeIntegrator::TimeIntegrator::printStatistics ( std::ostream &  os = AMP::pout)
virtual

◆ putToDatabase()

void AMP::TimeIntegrator::TimeIntegrator::putToDatabase ( std::shared_ptr< AMP::Database db)

Write out state of object to given database.

When assertion checking is active, the database pointer must be non-null.

◆ registerChildObjects()

virtual void AMP::TimeIntegrator::TimeIntegrator::registerChildObjects ( AMP::IO::RestartManager manager) const
virtual

◆ registerOperator()

virtual void AMP::TimeIntegrator::TimeIntegrator::registerOperator ( std::shared_ptr< AMP::Operator::Operator op)
inlinevirtual

Reimplemented in AMP::TimeIntegrator::ImplicitIntegrator.

Definition at line 241 of file TimeIntegrator.h.

References d_operator.

◆ registerWriter()

virtual void AMP::TimeIntegrator::TimeIntegrator::registerWriter ( std::shared_ptr< AMP::IO::Writer writer)
inlinevirtual

Registers a writer with the solver.

This function will register a writer with the solver. The solver may then register any vector components it "owns" with the writer.

Parameters
writerThe writer to register

Definition at line 227 of file TimeIntegrator.h.

References d_writer.

◆ reset()

virtual void AMP::TimeIntegrator::TimeIntegrator::reset ( std::shared_ptr< const TimeIntegratorParameters parameters)
pure virtual

Resets the internal state of the time integrator.

Resets the internal state of the time integrator as needed. A parameter argument is passed to allow for general flexibility in determining what needs to be reset.

Implemented in AMP::TimeIntegrator::OxideTimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ setCurrentDt()

virtual void AMP::TimeIntegrator::TimeIntegrator::setCurrentDt ( const double  dt)
inlinevirtual

Definition at line 250 of file TimeIntegrator.h.

References d_current_dt.

◆ setCurrentTime()

virtual void AMP::TimeIntegrator::TimeIntegrator::setCurrentTime ( const double  t)
inlinevirtual

Definition at line 254 of file TimeIntegrator.h.

References d_current_time.

◆ setFinalTime()

virtual void AMP::TimeIntegrator::TimeIntegrator::setFinalTime ( const double  t)
inlinevirtual

Definition at line 258 of file TimeIntegrator.h.

References d_final_time.

◆ setInitialDt()

virtual void AMP::TimeIntegrator::TimeIntegrator::setInitialDt ( const double  dt)
inlinevirtual

Definition at line 252 of file TimeIntegrator.h.

References d_initial_dt.

◆ setInitialTime()

virtual void AMP::TimeIntegrator::TimeIntegrator::setInitialTime ( const double  t)
inlinevirtual

Definition at line 256 of file TimeIntegrator.h.

References d_initial_time.

◆ setSourceTerm()

virtual void AMP::TimeIntegrator::TimeIntegrator::setSourceTerm ( AMP::LinearAlgebra::Vector::shared_ptr  src)
inlinevirtual

Definition at line 262 of file TimeIntegrator.h.

References d_pSourceTerm.

◆ sizeOfTimeHistory()

virtual size_t AMP::TimeIntegrator::TimeIntegrator::sizeOfTimeHistory ( ) const
inlinevirtual

Reimplemented in AMP::TimeIntegrator::BDFIntegrator.

Definition at line 284 of file TimeIntegrator.h.

◆ stepsRemaining()

virtual bool AMP::TimeIntegrator::TimeIntegrator::stepsRemaining ( ) const
virtual

Have the number of integration steps reached the maximum.

Return true if the number of integration steps performed by the integrator has not reached the specified maximum; return false otherwise.

Reimplemented in AMP::TimeIntegrator::ImplicitIntegrator.

◆ type()

virtual std::string AMP::TimeIntegrator::TimeIntegrator::type ( ) const
virtual

◆ updateSolution()

virtual void AMP::TimeIntegrator::TimeIntegrator::updateSolution ( void  )
pure virtual

Update solution after time advance.

Update solution (e.g., reset pointers for solution data, update dependent variables, etc.) after time advance. It is assumed that when this routine is invoked, an acceptable new solution has been computed. The double return value is the simulation time corresponding to the advanced solution.

In particular, this is designed to copy the solution vector advanced during the time integration process to the solution vector at the previous time and assumes that the new solution has already been checked with the checkNewSolution function.

Implemented in AMP::TimeIntegrator::ExplicitEuler, AMP::TimeIntegrator::ImplicitIntegrator, AMP::TimeIntegrator::OxideTimeIntegrator, AMP::TimeIntegrator::RK12TimeIntegrator, AMP::TimeIntegrator::RK23TimeIntegrator, AMP::TimeIntegrator::RK2TimeIntegrator, AMP::TimeIntegrator::RK34TimeIntegrator, AMP::TimeIntegrator::RK45TimeIntegrator, AMP::TimeIntegrator::RK4TimeIntegrator, and AMP::TimeIntegrator::IDATimeIntegrator.

◆ writeRestart()

virtual void AMP::TimeIntegrator::TimeIntegrator::writeRestart ( int64_t  fid) const
virtual

Member Data Documentation

◆ d_current_dt

double AMP::TimeIntegrator::TimeIntegrator::d_current_dt = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 350 of file TimeIntegrator.h.

Referenced by getGamma(), and setCurrentDt().

◆ d_current_time

double AMP::TimeIntegrator::TimeIntegrator::d_current_time = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 346 of file TimeIntegrator.h.

Referenced by setCurrentTime().

◆ d_final_time

double AMP::TimeIntegrator::TimeIntegrator::d_final_time = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 345 of file TimeIntegrator.h.

Referenced by setFinalTime().

◆ d_ic_vector

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeIntegrator::d_ic_vector = nullptr
protected

Definition at line 315 of file TimeIntegrator.h.

◆ d_iDebugPrintInfoLevel

int AMP::TimeIntegrator::TimeIntegrator::d_iDebugPrintInfoLevel = 0
protected

Definition at line 357 of file TimeIntegrator.h.

◆ d_initial_dt

double AMP::TimeIntegrator::TimeIntegrator::d_initial_dt = std::numeric_limits<double>::signaling_NaN()
protected

initial time increment

Definition at line 349 of file TimeIntegrator.h.

Referenced by getInitialDt(), and setInitialDt().

◆ d_initial_time

double AMP::TimeIntegrator::TimeIntegrator::d_initial_time = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 344 of file TimeIntegrator.h.

Referenced by setInitialTime().

◆ d_initialized

bool AMP::TimeIntegrator::TimeIntegrator::d_initialized = false
protected

Set to true after initialization in constructors. Needed in getFromInput to avoid reseting some parameters in subsequent reset operations.

Definition at line 370 of file TimeIntegrator.h.

◆ d_integrator_step

int AMP::TimeIntegrator::TimeIntegrator::d_integrator_step = 0
protected

◆ d_max_dt

double AMP::TimeIntegrator::TimeIntegrator::d_max_dt = std::numeric_limits<double>::max()
protected

maximum allowable timestep (user defined)

Definition at line 355 of file TimeIntegrator.h.

◆ d_max_integrator_steps

int AMP::TimeIntegrator::TimeIntegrator::d_max_integrator_steps = 0
protected

◆ d_min_dt

double AMP::TimeIntegrator::TimeIntegrator::d_min_dt = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 352 of file TimeIntegrator.h.

◆ d_object_name

std::string AMP::TimeIntegrator::TimeIntegrator::d_object_name
protected

◆ d_old_dt

double AMP::TimeIntegrator::TimeIntegrator::d_old_dt = std::numeric_limits<double>::signaling_NaN()
protected

Definition at line 351 of file TimeIntegrator.h.

◆ d_operator

std::shared_ptr<AMP::Operator::Operator> AMP::TimeIntegrator::TimeIntegrator::d_operator
protected

The operator is the right hand side operator for an explicit integrator when the time integration problem is : u_t = f(u) but in the case of implicit time integrators the operator represents u_t-f(u)

Definition at line 328 of file TimeIntegrator.h.

Referenced by getOperator(), and registerOperator().

◆ d_pMassOperator

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

The operator is the left hand side mass operator (for FEM formulations)

Definition at line 333 of file TimeIntegrator.h.

◆ d_pParameters

std::shared_ptr<TimeIntegratorParameters> AMP::TimeIntegrator::TimeIntegrator::d_pParameters
protected

pointer to parameters

Definition at line 310 of file TimeIntegrator.h.

◆ d_pSourceTerm

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

Definition at line 338 of file TimeIntegrator.h.

Referenced by getSourceTerm(), and setSourceTerm().

◆ d_solution_vector

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::TimeIntegrator::TimeIntegrator::d_solution_vector
protected

Definition at line 320 of file TimeIntegrator.h.

Referenced by getSolution().

◆ d_total_steprejects

int AMP::TimeIntegrator::TimeIntegrator::d_total_steprejects = 0
protected

◆ d_writer

std::shared_ptr<AMP::IO::Writer> AMP::TimeIntegrator::TimeIntegrator::d_writer
protected

keeps track of total number of step rejections

Definition at line 364 of file TimeIntegrator.h.

Referenced by registerWriter().


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