364 assert(l < mg->get_nzone()) ;
365 assert(
etat == ETATQCQ) ;
382 assert(l < mg->get_nzone()) ;
383 assert(
etat == ETATQCQ) ;
401 double&
set(
int l,
int k,
int j,
int i) {
402 assert(l < mg->get_nzone()) ;
403 assert(
etat == ETATQCQ) ;
411 return c->
set(l, k, j, i) ;
422 assert(
etat != ETATNONDEF) ;
423 assert(l < mg->get_nzone()) ;
424 if (
etat == ETATZERO) {
432 return (*
c)(l, k, j, i) ;
445 double val_point(
int l,
double x,
double theta,
double phi)
const ;
458 double val_point_jk(
int l,
double x,
int j,
int k)
const ;
530 void filtre_tp(
int nn,
int nz1,
int nz2) ;
615 void sauve(FILE *)
const ;
625 void display_coef(
double threshold = 1.e-7,
int precision = 4,
626 ostream& ostr = cout)
const ;
637 void affiche_seuil(ostream& ostr,
int type = 0,
int precision = 4,
638 double threshold = 1.e-7)
const ;
719 void annule(
int l_min,
int l_max) ;
775 void equipot(
double uu0,
int nz_search,
double precis,
int nitermax,
776 int& niter,
Itbl& l_iso,
Tbl& xi_iso)
const ;
812 int nitermax,
int& niter,
Itbl& l_iso,
830ostream& operator<<(ostream& ,
const Valeur& ) ;
Bases of the spectral expansions.
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
Active physical coordinates and mapping derivatives.
Basic integer array class.
Coefficients storage for the multi-domain spectral method.
Tbl & set(int l)
Read/write of the Tbl in a given domain.
Tensor field of valence 0 (or component of a tensorial field).
Values and coefficients of a (real-value) function.
void filtre_tp(int nn, int nz1, int nz2)
Sets the n lasts coefficients in to 0 in the domain nz1 to nz2 when expressed in spherical harmonics...
void operator-=(const Valeur &)
-= Valeur
void del_t()
Logical destructor.
const Valeur & sx2() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR )
void set_etat_cf_qcq()
Sets the logical state to ETATQCQ (ordinary state) for values in the configuration space (Mtbl_cf c_c...
void equipot(double uu0, int nz_search, double precis, int nitermax, int &niter, Itbl &l_iso, Tbl &xi_iso) const
Determines an equipotential surface of the field represented by *this (inward search).
double val_point(int l, double x, double theta, double phi) const
Computes the value of the field represented by *this at an arbitrary point, by means of the spectral ...
const Tbl & operator()(int l) const
Read-only of the value in a given domain (configuration space).
const Valeur & mult_ct() const
Returns applied to *this.
void val_propre_1d_i()
Inverse transformation of val_propre_1d.
friend void rotate_propre_impair(Valeur &, bool)
Friend fonction.
void equipot_outward(double uu0, int nz_search, double precis, int nitermax, int &niter, Itbl &l_iso, Tbl &xi_iso) const
Determines an equipotential surface of the field represented by *this (outward search).
void set_etat_c_qcq()
Sets the logical state to ETATQCQ (ordinary state) for values in the configuration space (Mtbl c ).
double val_point_jk(int l, double x, int j, int k) const
Computes the value of the field represented by *this at an arbitrary point in , but collocation point...
Valeur * p_dsdp
Pointer on .
const Valeur & dsdp() const
Returns of *this.
void sxm1_zec()
Applies the following operator to *this : \ Id (r sampling = RARE, FIN ) \ (r -sampling = UNSURR )
const Valeur & sx() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR )
void mult_xm1_zec()
Applies the following operator to *this : \ Id (r sampling = RARE, FIN ) \ (r -sampling = UNSURR )
const Base_val & get_base() const
Return the bases for spectral expansions (member base )
Valeur * p_mult_sp
Pointer on .
Valeur * p_mult_x
Pointer on .
const Valeur & d2sdt2() const
Returns of *this.
Valeur * p_scost
Pointer on
const Valeur & stdsdp() const
Returns of *this.
int get_etat() const
Returns the logical state.
Valeur * p_sx2
Pointer on .
void operator+=(const Valeur &)
+= Valeur
Valeur * p_d2sdx2
Pointer on .
void set_etat_zero()
Sets the logical state to ETATZERO (zero).
void set_base(const Base_val &)
Sets the bases for spectral expansions (member base )
Valeur * p_dsdx
Pointer on .
void nouveau()
Memory allocation.
void ylm()
Computes the coefficients of *this.
Valeur * p_d2sdt2
Pointer on .
Mtbl * c
Values of the function at the points of the multi-grid
Valeur * p_mult_cp
Pointer on .
void display_coef(double threshold=1.e-7, int precision=4, ostream &ostr=cout) const
Displays the spectral coefficients and the associated basis functions.
const Valeur & dsdt() const
Returns of *this.
void annule(int l)
Sets the Valeur to zero in a given domain.
double operator()(int l, int k, int j, int i) const
Read-only of a particular element (configuration space).
const Mg3d * mg
Multi-grid Mgd3 on which this is defined.
Tbl & set(int l)
Read/write of the value in a given domain (configuration space).
const Valeur & dsdx() const
Returns of *this.
friend void rotate_propre_pair(Valeur &, bool)
Friend fonction.
const Valeur & mult_x() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR )
void operator=(const Valeur &a)
Assignement to another Valeur.
void std_base_scal_odd()
Sets the bases for spectral expansions (member base ) to the standard odd ones for a scalar.
void va_x()
Returns (r -sampling = RARE ) \ (r sampling = FIN ) \ (r -sampling = UNSURR )
Valeur * p_sx
Pointer on .
const Valeur & ssint() const
Returns of *this.
void coef_i() const
Computes the physical value of *this.
void affiche_seuil(ostream &ostr, int type=0, int precision=4, double threshold=1.e-7) const
Prints only the values greater than a given threshold.
Mtbl_cf * c_cf
Coefficients of the spectral expansion of the function.
void coef() const
Computes the coeffcients of *this.
void operator*=(const Valeur &)
*= Valeur
const Valeur & mult_st() const
Returns applied to *this.
Valeur * p_ssint
Pointer on .
void set_der_0x0()
Sets the pointers for derivatives to 0x0.
const Valeur & scost() const
Returns of *this.
const Valeur & d2sdp2() const
Returns of *this.
Valeur * p_stdsdp
Pointer on .
const Mg3d * get_mg() const
Returns the Mg3d on which the this is defined.
double & set(int l, int k, int j, int i)
Read/write of a particular element (configuration space).
void set_base_r(int l, int base_r)
Sets the expansion basis for r ( ) functions in a given domain.
Valeur * p_dsdt
Pointer on .
friend ostream & operator<<(ostream &, const Valeur &)
Display.
void ylm_i()
Inverse of ylm()
const Valeur & d2sdx2() const
Returns of *this.
Valeur * p_lapang
Pointer on the angular Laplacian.
Base_val base
Bases on which the spectral expansion is performed.
void std_base_scal()
Sets the bases for spectral expansions (member base ) to the standard ones for a scalar.
void annule_hard()
Sets the Valeur to zero in a hard way.
Valeur * p_mult_ct
Pointer on .
int etat
Logical state (ETATNONDEF , ETATQCQ or ETATZERO ).
void set_base_t(int base_t)
Sets the expansion basis for functions in all domains.
const Valeur & lapang() const
Returns the angular Laplacian of *this.
void smooth(int nzet, Valeur &uuva) const
Changes the function *this as a smooth one when there exists a discontinuity between the nucleus and ...
void set_base_p(int base_p)
Sets the expansion basis for functions in all domains.
void set_etat_nondef()
Sets the logical state to ETATNONDEF (undefined).
void mult2_xm1_zec()
Applies the following operator to *this : \ Id (r sampling = RARE, FIN ) \ (r -sampling = UNSURR )
void val_propre_1d()
Set the basis to the eigenvalues of .
Valeur * p_d2sdp2
Pointer on .
const Valeur & mult_cp() const
Returns applied to *this.
Valeur * p_mult_st
Pointer on .
const Valeur & mult_sp() const
Returns applied to *this.
void del_deriv()
Logical destructor of the derivatives.
void sauve(FILE *) const
Save in a file.
Base_val operator*(const Base_val &, const Base_val &)
This operator is used when calling multiplication or division of Valeur .
Cmp operator-(const Cmp &)
- Cmp
Cmp atan(const Cmp &)
Arctangent.
Cmp sqrt(const Cmp &)
Square root.
Cmp log10(const Cmp &)
Basis 10 logarithm.
Cmp operator/(const Cmp &, const Cmp &)
Cmp / Cmp.
Cmp operator%(const Cmp &, const Cmp &)
Cmp * Cmp with desaliasing.
Cmp exp(const Cmp &)
Exponential.
Cmp sin(const Cmp &)
Sine.
Tbl diffrel(const Cmp &a, const Cmp &b)
Relative difference between two Cmp (norme version).
Tbl norme(const Cmp &)
Sums of the absolute values of all the values of the Cmp in each domain.
Cmp acos(const Cmp &)
Arccosine.
Cmp asin(const Cmp &)
Arcsine.
Cmp racine_cubique(const Cmp &)
Cube root.
Tbl min(const Cmp &)
Minimum values of a Cmp in each domain.
Tbl max(const Cmp &)
Maximum values of a Cmp in each domain.
Cmp pow(const Cmp &, int)
Power .
Cmp cos(const Cmp &)
Cosine.
Cmp abs(const Cmp &)
Absolute value.
Tbl diffrelmax(const Cmp &a, const Cmp &b)
Relative difference between two Cmp (max version).
Cmp operator+(const Cmp &)
Cmp tan(const Cmp &)
Tangent.
Cmp log(const Cmp &)
Neperian logarithm.
Mtbl Heaviside(const Mtbl &)
Heaviside function.
double totalmin(const Mtbl &)
Minimum value of the Mtbl elements in all domain.
double totalmax(const Mtbl &)
Maximum value of the Mtbl elements in all domains.
Scalar operator|(const Scalar &, const Scalar &)
Scalar * Scalar with desaliasing only in r.