152 assert (
etat != ETATNONDEF) ;
156 if (
etat != ETATZERO) {
158 assert((
etat == ETATQCQ) || (
etat == ETATUN)) ;
162 int nzm1 =
mp->get_mg()->get_nzone() - 1 ;
163 bool ced =
mp->get_mg()->get_type_r(nzm1) == UNSURR ;
184 int diff_dzpuis = ced_mult_r -
dzpuis ;
201 mp->div_r_zec(*
this) ;
226 assert (
etat != ETATNONDEF) ;
230 if (
etat != ETATZERO) {
232 assert((
etat == ETATQCQ) || (
etat == ETATUN)) ;
236 int nzm1 =
mp->get_mg()->get_nzone() - 1 ;
237 bool ced =
mp->get_mg()->get_type_r(nzm1) == UNSURR ;
257 int diff_dzpuis = ced_mult_r -
dzpuis ;
274 mp->mult_r_zec(*
this) ;
286 mp->mult_rsint(*
this) ;
299 assert (
etat != ETATNONDEF) ;
302 int nzm1 =
mp->get_mg()->get_nzone() - 1 ;
303 bool ced =
mp->get_mg()->get_type_r(nzm1) == UNSURR ;
305 if (
etat != ETATZERO) {
307 assert((
etat == ETATQCQ) || (
etat == ETATUN)) ;
317 int dzpuis_ext =
dzpuis - 1 ;
319 int diff_dzpuis = ced_mult_r - dzpuis_ext ;
320 (diff_dzpuis >= 0) ? uu_ext.
inc_dzpuis(diff_dzpuis)
337 if (ced)
dzpuis = ced_mult_r ;
353 mp->div_rsint(*
this) ;
367 assert (
etat != ETATNONDEF) ;
370 int nzm1 =
mp->get_mg()->get_nzone() - 1 ;
371 bool ced =
mp->get_mg()->get_type_r(nzm1) == UNSURR ;
373 if (
etat != ETATZERO) {
375 assert((
etat == ETATQCQ) || (
etat == ETATUN)) ;
385 int dzpuis_ext =
dzpuis + 1 ;
387 int diff_dzpuis = ced_mult_r - dzpuis_ext ;
388 (diff_dzpuis >= 0) ? uu_ext.
inc_dzpuis(diff_dzpuis)
423 if (decrem == 0) return ;
425 if (
etat == ETATZERO) {
437 mp->dec_dzpuis(*
this) ;
442 mp->dec2_dzpuis(*
this) ;
447 mp->dec2_dzpuis(*
this) ;
448 mp->dec_dzpuis(*
this) ;
453 mp->dec2_dzpuis(*
this) ;
454 mp->dec2_dzpuis(*
this) ;
459 cout <<
"Scalar::dec_dzpuis : unexpected value of decrem !"
460 << endl <<
" decrem = " << decrem << endl ;
475 if (inc == 0) return ;
477 if (
etat == ETATZERO) {
489 mp->inc_dzpuis(*
this) ;
494 mp->inc2_dzpuis(*
this) ;
499 mp->inc_dzpuis(*
this) ;
500 mp->inc2_dzpuis(*
this) ;
505 mp->inc2_dzpuis(*
this) ;
506 mp->inc2_dzpuis(*
this) ;
511 cout <<
"Scalar::inc_dzpuis : unexpected value of inc !"
512 << endl <<
" inc = " << inc << endl ;
Bases of the spectral expansions.
void mult_x()
The basis is transformed as with a multiplication by .
void sx()
The basis is transformed as with a multiplication.
void mult_sint()
The basis is transformed as with a multiplication.
void ssint()
The basis is transformed as with a multiplication.
Base class for pure radial mappings.
virtual void del_deriv() const
Logical destructor of the derivatives.
void div_rsint_dzpuis(int ced_mult_r)
Division by but with the output flag dzpuis set to ced_mult_r .
void div_r_dzpuis(int ced_mult_r)
Division by r everywhere but with the output flag dzpuis set to ced_mult_r .
void div_sint()
Division by .
virtual void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
virtual void inc_dzpuis(int inc=1)
Increases by inc units the value of dzpuis and changes accordingly the values of the Scalar in the co...
void div_r()
Division by r everywhere; dzpuis is not changed.
Tbl & set_domain(int l)
Read/write of the value in a given domain.
virtual void annule(int l_min, int l_max)
Sets the Scalar to zero in several domains.
Scalar(const Map &mpi)
Constructor from mapping.
void mult_sint()
Multiplication by .
void mult_r_ced()
Multiplication by r in the compactified external domain (CED), the dzpuis flag is not changed.
int etat
The logical state ETATNONDEF (undefined), ETATZERO (null), ETATUN (one), or ETATQCQ (ordinary).
virtual void allocate_all()
Sets the logical state to ETATQCQ (ordinary state) and performs the memory allocation of all the elem...
void mult_rsint()
Multiplication by everywhere; dzpuis is not changed.
void set_dzpuis(int)
Modifies the dzpuis flag.
void div_rsint()
Division by everywhere; dzpuis is not changed.
void mult_rsint_dzpuis(int ced_mult_r)
Multiplication by but with the output flag dzpuis set to ced_mult_r .
const Tbl & domain(int l) const
Read-only of the value in a given domain.
void mult_r_dzpuis(int ced_mult_r)
Multiplication by r everywhere but with the output flag dzpuis set to ced_mult_r .
Valeur va
The numerical value of the Scalar.
virtual void dec_dzpuis(int dec=1)
Decreases by dec units the value of dzpuis and changes accordingly the values of the Scalar in the co...
void mult_r()
Multiplication by r everywhere; dzpuis is not changed.
void div_r_ced()
Division by r in the compactified external domain (CED), the dzpuis flag is not changed.
void set_spectral_base(const Base_val &)
Sets the spectral bases of the Valeur va.
int dzpuis
Power of r by which the quantity represented by this must be divided in the compactified external d...
const Map *const mp
Mapping on which the numerical values at the grid points are defined.