OGS
TimeLoop.cpp File Reference

Detailed Description

Definition in file TimeLoop.cpp.

#include "TimeLoop.h"
#include <range/v3/algorithm/any_of.hpp>
#include <range/v3/algorithm/contains.hpp>
#include "BaseLib/Error.h"
#include "BaseLib/RunTime.h"
#include "MathLib/LinAlg/LinAlg.h"
#include "NumLib/ODESolver/ConvergenceCriterionPerComponent.h"
#include "NumLib/ODESolver/PETScNonlinearSolver.h"
#include "NumLib/ODESolver/TimeDiscretizedODESystem.h"
#include "NumLib/StaggeredCoupling/StaggeredCoupling.h"
#include "NumLib/TimeStepping/Time.h"
#include "ProcessData.h"
Include dependency graph for TimeLoop.cpp:

Go to the source code of this file.

Namespaces

namespace  anonymous_namespace{TimeLoop.cpp}
namespace  ProcessLib

Functions

void anonymous_namespace{TimeLoop.cpp}::updateDeactivatedSubdomains (std::vector< std::unique_ptr< ProcessLib::ProcessData > > const &per_process_data, double const t)
bool anonymous_namespace{TimeLoop.cpp}::isOutputStep (std::vector< ProcessLib::Output > const &outputs, const int timestep, const NumLib::Time &t, const NumLib::Time &end_time)
void anonymous_namespace{TimeLoop.cpp}::preOutputForAllProcesses (int const timestep, NumLib::Time const &t, double const dt, const NumLib::Time &end_time, std::vector< std::unique_ptr< ProcessLib::ProcessData > > const &per_process_data, std::vector< GlobalVector * > const &process_solutions, std::vector< GlobalVector * > const &process_solutions_prev, std::vector< ProcessLib::Output > const &outputs)
void ProcessLib::preTimestepForAllProcesses (NumLib::Time const &t, double const dt, std::vector< std::unique_ptr< ProcessData > > const &per_process_data, std::vector< GlobalVector * > const &_process_solutions)
void ProcessLib::postTimestepForAllProcesses (NumLib::Time const &t, double const dt, std::vector< std::unique_ptr< ProcessData > > const &per_process_data, std::vector< GlobalVector * > const &process_solutions, std::vector< GlobalVector * > const &process_solutions_prev)
template<NumLib::ODESystemTag ODETag>
void ProcessLib::setTimeDiscretizedODESystem (ProcessData &process_data, NumLib::ODESystem< ODETag, NumLib::NonlinearSolverTag::Picard > &ode_sys)
void ProcessLib::setTimeDiscretizedODESystem (ProcessData &process_data)
std::pair< std::vector< GlobalVector * >, std::vector< GlobalVector * > > ProcessLib::setInitialConditions (NumLib::Time const &t0, std::vector< std::unique_ptr< ProcessData > > const &per_process_data)
void ProcessLib::calculateNonEquilibriumInitialResiduum (std::vector< std::unique_ptr< ProcessData > > const &per_process_data, std::vector< GlobalVector * > const &process_solutions, std::vector< GlobalVector * > const &process_solutions_prev)
NumLib::NonlinearSolverStatus ProcessLib::solveOneTimeStepOneProcess (std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, std::size_t const timestep, double const t, double const delta_t, ProcessData const &process_data, std::vector< Output > const &outputs)
bool ProcessLib::computationOfChangeNeeded (NumLib::TimeStepAlgorithm const &timestep_algorithm, NumLib::Time const &time)
static NumLib::NonlinearSolverStatus ProcessLib::solveMonolithicProcess (const NumLib::Time &t, const double dt, const std::size_t timestep_id, ProcessData const &process_data, std::vector< GlobalVector * > &x, std::vector< GlobalVector * > const &x_prev, std::vector< Output > const &outputs)

Variables

static constexpr std::string_view ProcessLib::timestepper_cannot_reduce_dt