141 explicit Mtbl(
const Mg3d* p_mgrid) ;
211 void annule(
int l_min,
int l_max) ;
223 assert(
etat == ETATQCQ) ;
234 assert(
etat == ETATQCQ) ;
245 double&
set(
int l,
int k,
int j,
int i) {
247 assert(
etat == ETATQCQ) ;
248 return (
t[l])->set(k, j, i) ;
260 assert(
etat != ETATNONDEF) ;
262 if (
etat == ETATZERO) {
266 else return (*
t[l])(k, j, i) ;
286 void sauve(FILE *)
const ;
295 double threshold = 1.e-7)
const ;
320 ostream& operator<<(ostream& ,
const Mtbl & ) ;
333 Mtbl
operator+(
const Mtbl&,
const Mtbl& ) ;
343 Mtbl
operator-(
const Mtbl&,
const Mtbl& ) ;
353 Mtbl
operator*(
const Mtbl&,
const Mtbl& ) ;
363 Mtbl
operator/(
const Mtbl&,
const Mtbl& ) ;
374 Mtbl
sin(
const Mtbl& ) ;
376 Mtbl
cos(
const Mtbl& ) ;
378 Mtbl
tan(
const Mtbl& ) ;
380 Mtbl
asin(
const Mtbl& ) ;
382 Mtbl
acos(
const Mtbl& ) ;
384 Mtbl
atan(
const Mtbl& ) ;
386 Mtbl
exp(
const Mtbl& ) ;
390 Mtbl
log(
const Mtbl& ) ;
392 Mtbl
log(
const Mtbl& ) ;
394 Mtbl
log10(
const Mtbl& ) ;
396 Mtbl
sqrt(
const Mtbl& ) ;
400 Mtbl
pow(
const Mtbl& ,
int ) ;
402 Mtbl
pow(
const Mtbl& ,
double ) ;
404 Mtbl
abs(
const Mtbl& ) ;
423 Tbl
max(
const Mtbl& ) ;
430 Tbl
min(
const Mtbl& ) ;
437 Tbl
norme(
const Mtbl& ) ;
447 Tbl
diffrel(
const Mtbl& a,
const Mtbl& b) ;
457 Tbl
diffrelmax(
const Mtbl& a,
const Mtbl& b) ;
friend ostream & operator<<(ostream &, const Mtbl &)
Display.
Cmp racine_cubique(const Cmp &)
Cube root.
const Mg3d * mg
Pointer on the multi-grid Mgd3 on which this is defined.
void del_t()
Logical destructor: dellocates the memory occupied by the Tbl array t .
double totalmin(const Mtbl &)
Minimum value of the Mtbl elements in all domain.
Cmp log(const Cmp &)
Neperian logarithm.
Mtbl Heaviside(const Mtbl &)
Heaviside function.
Cmp exp(const Cmp &)
Exponential.
Tbl diffrel(const Cmp &a, const Cmp &b)
Relative difference between two Cmp (norme version).
Base_val operator*(const Base_val &, const Base_val &)
This operator is used when calling multiplication or division of Valeur .
void annule(int l_min, int l_max)
Sets the Mtbl to zero in some domains.
const Mg3d * get_mg() const
Gives the Mg3d on which the Mtbl is defined.
Tbl diffrelmax(const Cmp &a, const Cmp &b)
Relative difference between two Cmp (max version).
Tbl norme(const Cmp &)
Sums of the absolute values of all the values of the Cmp in each domain.
Tbl max(const Cmp &)
Maximum values of a Cmp in each domain.
double & set(int l, int k, int j, int i)
Read/write of a particular element.
Cmp abs(const Cmp &)
Absolute value.
Cmp atan(const Cmp &)
Arctangent.
void set_etat_zero()
Sets the logical state to ETATZERO (zero).
Cmp pow(const Cmp &, int)
Power .
void sauve(FILE *) const
Save in a file.
Active physical coordinates and mapping derivatives.
void operator*=(const Mtbl &)
*= Mtbl
Cmp asin(const Cmp &)
Arcsine.
Cmp operator/(const Cmp &, const Cmp &)
Cmp / Cmp.
void affiche_seuil(ostream &ostr, int precision=4, double threshold=1.e-7) const
Prints only the values greater than a given threshold.
void operator/=(const Mtbl &)
/= Mtbl
Cmp operator-(const Cmp &)
- Cmp
int get_etat() const
Gives the logical state.
Tbl min(const Cmp &)
Minimum values of a Cmp in each domain.
Cmp log10(const Cmp &)
Basis 10 logarithm.
Cmp acos(const Cmp &)
Arccosine.
Cmp sqrt(const Cmp &)
Square root.
int get_nzone() const
Gives the number of zones (domains)
int nzone
Number of domains (zones)
double totalmax(const Mtbl &)
Maximum value of the Mtbl elements in all domains.
void set_etat_nondef()
Sets the logical state to ETATNONDEF (undefined).
Tbl & set(int l)
Read/write of the Tbl in a given domain.
Cmp cos(const Cmp &)
Cosine.
double operator()(int l, int k, int j, int i) const
Read-only of a particular element.
Tbl ** t
Array (size nzone ) of pointers on the Tbl 's.
Cmp operator+(const Cmp &)
void annule_hard()
Sets the Mtbl to zero in a hard way.
Mtbl(const Mg3d &mgrid)
Constructor.
const Tbl & operator()(int l) const
Read-only of the Tbl in a given domain.
void operator+=(const Mtbl &)
+= Mtbl
int etat
Logical state (ETATNONDEF , ETATQCQ or ETATZERO ).
Cmp tan(const Cmp &)
Tangent.
void operator=(const Mtbl &)
Assignement to another Mtbl.
void operator-=(const Mtbl &)
-= Mtbl
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
Cmp sin(const Cmp &)
Sine.