16#ifndef Schema_Implicite_Multi_TimeStep_base_included
17#define Schema_Implicite_Multi_TimeStep_base_included
25#include <Schema_Implicite_base.h>
class Equation_base The role of an equation is the calculation of one or more fields....
Matrice_Base class - Base class of the matrix hierarchy.
Helper class to factorize the readOn method of Objet_U classes.
Probleme_Couple This is the historical coupling class of TRUST.
class Probleme_base It is a Probleme_U that is not a coupling.
bool initTimeStep(double dt) override
int nb_valeurs_temporelles_effectives() const
virtual int faire_un_pas_de_temps_pb_couple(Probleme_Couple &, int &ok)
int reprendre(Entree &) override
Restores an Objet_U from an input stream. Virtual method to override.
virtual void compute_coefficients(double time_step, const DoubleTab ×) const =0
void completer() override
int nb_valeurs_futures() const override
Returns the number of future temporal values.
void set_param(Param &) const override
double temps_defaut() const override
Returns the time that fields must return when valeurs() is called.
bool iterateTimeStep(bool &converged) override
Calculate the U(n+1) unknown for each equation (if solved) of the problem with the selected time sche...
virtual const DoubleTab & coefficients() const =0
void modifier_second_membre(const Equation_base &eqn, DoubleTab &secmem) override
void ajouter_inertie(Matrice_Base &mat_morse, DoubleTab &secmem, const Equation_base &eqn) const override
int mettre_a_jour() override
Updates the current time (t+=dt) and the number of time steps performed (nb_pas_dt_++).
virtual void update_time_derivative(Equation_base &eqn, const DoubleTab &data)=0
virtual DoubleTab & coefficients()=0
double temps_futur(int i) const override
Returns the time at the i-th future value.
int faire_un_pas_de_temps_eqn_base(Equation_base &) override
virtual void modifier_second_membre_full_impl(const Equation_base &eqn, DoubleTab &secmem)
virtual int nb_pas_dt_seuil() const =0
virtual void add_multi_timestep_data(const Equation_base &eqn, Matrice_Base &mat_morse, DoubleTab &secmem) const =0
void test_stationnaire(Probleme_base &)
virtual void mettre_a_jour_equation(Equation_base &eqn, const double temps)=0
virtual int nb_valeurs_passees() const =0
virtual void store_equation_parameters(Equation_base &eqn, DoubleTab &stored_parameters)=0
virtual void modify_equation_parameters(Equation_base &eqn, DoubleTab &stored_parameters)=0
virtual double changer_temps(Equation_base &eqn, const double temps)=0
const double & residu_old() const
void Initialiser_Champs(Probleme_base &)
int Iterer_Pb(Probleme_base &, int ite)
void authorized_equation(const Equation_base &eqn)
class Schema_Implicite_base Base class for all implicit time schemes.
virtual int nb_valeurs_temporelles() const =0