Class TransientSolver

Inheritance Relationships

Base Type

Class Documentation

class TransientSolver : public opensn::DiscreteOrdinatesSolver

Public Functions

explicit TransientSolver(const InputParameters &params)
~TransientSolver() override = default
void SetTimeStep(double dt)
void SetTheta(double theta)
void StepPrecursors()
void SetPreAdvanceCallback(std::function<void()> callback)
void SetPreAdvanceCallback(std::nullptr_t)
void SetPostAdvanceCallback(std::function<void()> callback)
void SetPostAdvanceCallback(std::nullptr_t)
inline double GetCurrentTime() const
inline unsigned int GetStep() const
BalanceTable ComputeBalanceTable() const

Public Static Functions

static InputParameters GetInputParameters()
static std::shared_ptr<TransientSolver> Create(const ParameterBlock &params)

Protected Functions

virtual void CheckRequirements(std::vector<std::string> &errors) const override

Requires time-dependent mode, except while the problem’s steady-state initial condition (read_initial_condition_path) is still pending: Initialize() loads it once and switches the mode itself.

Later initializations, by this or another solver, use the current state.

virtual void InitializeSolver() override

Performs derived-class initialization after ValidateState() succeeds.

virtual void ExecuteSolver() override

Performs derived-class execution after initialization and validation succeed.

virtual void AdvanceSolver() override

Performs one derived-class step. The default logs that Advance() is unsupported.