21#include <Schema_Adams_Moulton_order_3.h>
22#include <Equation_base.h>
23#include <Probleme_base.h>
24#include <Probleme_Couple.h>
25#include <Milieu_base.h>
27#include <communications.h>
28#include <Matrice_Morse.h>
67static double integrate_lagrangian_basis(
double a,
double b,
double c,
double borne_inf,
double borne_sup)
70 double scaling = (c-a)*(c-b);
71 double dt = borne_sup-borne_inf;
74 double sum = -0.5*(a+b);
76 double tmp_sup = borne_sup*(prod+borne_sup*(borne_sup/3.+sum));
77 double tmp_inf = borne_inf*(prod+borne_inf*(borne_inf/3.+sum));
79 result = tmp_sup-tmp_inf;
112 Cerr <<
"********************* Warning (printed only on the first 100 time steps) ************************"<< finl;
113 Cerr <<
"The Adams Moulton order 3 scheme is recommended with a facsec and facsec_max set to 1.0 or lower."<< finl;
114 Cerr <<
"*************************************************************************************************"<< finl;
124 double past_time = times[0];
125 double present_time = times[1];
126 double future_time = times[2];
Class defining operators and methods for all reading operation in an input flow (file,...
virtual Entree & readOn(Entree &)
Reads an Objet_U from an input stream. Virtual method to override.
virtual Sortie & printOn(Sortie &) const
Writes the object to an output stream. Virtual method to override.
DoubleTab adams_moulton_coefficients_
int nb_pas_dt_seuil() const override
int nb_valeurs_passees() const override
void compute_adams_moulton_coefficients(double time_step, const DoubleTab ×) const override
int nb_valeurs_temporelles() const override
Returns the number of temporal values to keep.
int limpr() const
Returns 1 if there is a need to perform a print (cf dt_impr) Returns 0 otherwise.
int nb_pas_dt() const
Returns the number of time steps performed.
double facteur_securite_pas() const
Returns the safety factor or multiplier of delta_t.
Base class for output streams.
_SIZE_ size_array() const