100 assert (ci.
get_etat() != ETATNONDEF) ;
101 assert (ci.
get_mp()->get_mg() == mg) ;
107 assert( ci.
get_etat() == ETATQCQ ) ;
112 resu = (ci.
va).dsdx() ;
114 (resu.
va).base = (ci.
va).
dsdx().base ;
116 int nz = mg->get_nzone() ;
117 if (mg->get_type_r(nz-1) == UNSURR) {
128 assert (uu.
get_etat() != ETATNONDEF) ;
129 assert (uu.
get_mp().get_mg() == mg) ;
135 assert( uu.
get_etat() == ETATQCQ ) ;
141 int nz = mg->get_nzone() ;
147 if (mg->get_type_r(nzm1) == UNSURR) {
153 assert(mg->get_type_r(nzm1) == UNSURR) ;
166 tmp_ced = tmp_ced.
mult_x() ;
167 tmp_ced = tmp_ced /
xsr ;
170 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
192 assert (ci.
get_etat() != ETATNONDEF) ;
193 assert (ci.
get_mp()->get_mg() == mg) ;
199 assert( ci.
get_etat() == ETATQCQ ) ;
204 resu = (ci.
va).dsdx() *
dxdr ;
206 (resu.
va).base = (ci.
va).dsdx().base ;
208 int nz = mg->get_nzone() ;
209 if (mg->get_type_r(nz-1) == UNSURR) {
220 assert (uu.
get_etat() != ETATNONDEF) ;
221 assert (uu.
get_mp().get_mg() == mg) ;
227 assert( uu.
get_etat() == ETATQCQ ) ;
233 int nz = mg->get_nzone() ;
239 if (mg->get_type_r(nzm1) == UNSURR) {
245 assert(mg->get_type_r(nzm1) == UNSURR) ;
255 tmp_ced = tmp_ced *
dxdr ;
258 tmp_ced = tmp_ced.
mult_x() ;
259 tmp_ced = tmp_ced /
xsr ;
262 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
279 assert (uu.
get_etat() != ETATNONDEF) ;
280 assert (uu.
get_mp().get_mg() == mg) ;
286 assert( uu.
get_etat() == ETATQCQ ) ;
292 int nz = mg->get_nzone() ;
298 if (mg->get_type_r(nzm1) == UNSURR) {
304 assert(mg->get_type_r(nzm1) == UNSURR) ;
314 tmp_ced = tmp_ced *
dxdr ;
317 tmp_ced = tmp_ced.
mult_x() ;
318 tmp_ced = tmp_ced /
xsr ;
321 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
342 assert (ci.
get_etat() != ETATNONDEF) ;
343 assert (ci.
get_mp()->get_mg() == mg) ;
350 assert( ci.
get_etat() == ETATQCQ ) ;
359 srdfdt = srdfdt.
dsdt() ;
360 srdfdt = srdfdt.
sx() ;
364 srdfdt = srdfdt *
xsr ;
366 srdfdt.
base = sauve_base ;
373 adfdx = adfdx.
dsdx() ;
375 sauve_base = adfdx.
base ;
377 adfdx.
base = sauve_base ;
382 resu = srdfdt - adfdx ;
384 int nz = mg->get_nzone() ;
385 if (mg->get_type_r(nz-1) == UNSURR) {
396 assert (uu.
get_etat() != ETATNONDEF) ;
397 assert (uu.
get_mp().get_mg() == mg) ;
404 assert( uu.
get_etat() == ETATQCQ ) ;
409 int nz = mg->get_nzone() ;
416 srdfdt = srdfdt.
dsdt() ;
418 srdfdt = srdfdt.
sx() ;
422 srdfdt = srdfdt *
xsr ;
424 srdfdt.
base = sauve_base ;
430 adfdx = adfdx.
dsdx() ;
432 sauve_base = adfdx.
base ;
434 adfdx.
base = sauve_base ;
441 resu = srdfdt - adfdx ;
444 if (mg->get_type_r(nz-1) == UNSURR) {
452 assert(mg->get_type_r(nzm1) == UNSURR) ;
456 Valeur tmp = srdfdt - adfdx ;
462 Valeur tmp_ced = - adfdx ;
466 tmp_ced = tmp_ced.
mult_x() ;
468 tmp_ced = tmp_ced /
xsr ;
470 tmp_ced = tmp_ced + uuva.
dsdt() ;
474 resu = tmp + tmp_ced ;
490 assert (ci.
get_etat() != ETATNONDEF) ;
491 assert (ci.
get_mp()->get_mg() == mg) ;
508 srstdfdp = srstdfdp.
dsdp() ;
509 srstdfdp = srstdfdp.
ssint() ;
510 srstdfdp = srstdfdp.
sx() ;
514 srstdfdp = srstdfdp *
xsr ;
516 srstdfdp.
base = sauve_base ;
522 bdfdx = bdfdx.
dsdx() ;
524 sauve_base = bdfdx.
base ;
526 bdfdx.
base = sauve_base ;
531 resu = srstdfdp - bdfdx ;
533 int nz = mg->get_nzone() ;
534 if (mg->get_type_r(nz-1) == UNSURR) {
545 assert (uu.
get_etat() != ETATNONDEF) ;
546 assert (uu.
get_mp().get_mg() == mg) ;
553 assert( uu.
get_etat() == ETATQCQ ) ;
558 int nz = mg->get_nzone() ;
566 srstdfdp = srstdfdp.
dsdp() ;
567 srstdfdp = srstdfdp.
ssint() ;
568 srstdfdp = srstdfdp.
sx() ;
572 srstdfdp = srstdfdp *
xsr ;
574 srstdfdp.
base = sauve_base ;
580 bdfdx = bdfdx.
dsdx() ;
582 sauve_base = bdfdx.
base ;
584 bdfdx.
base = sauve_base ;
591 resu = srstdfdp - bdfdx ;
594 if (mg->get_type_r(nz-1) == UNSURR) {
601 assert(mg->get_type_r(nzm1) == UNSURR) ;
605 Valeur tmp = srstdfdp - bdfdx ;
610 Valeur tmp_ced = - bdfdx ;
613 tmp_ced = tmp_ced.
mult_x() ;
615 tmp_ced = tmp_ced /
xsr ;
617 tmp_ced = tmp_ced + uuva.
dsdp().
ssint() ;
621 resu = tmp + tmp_ced ;
634 assert (ci.
get_etat() != ETATNONDEF) ;
635 assert (ci.
get_mp().get_mg() == mg) ;
644 assert( ci.
get_etat() == ETATQCQ ) ;
667 resu = dfdt - adfdx ;
679 assert (ci.
get_etat() != ETATNONDEF) ;
680 assert (ci.
get_mp().get_mg() == mg) ;
687 assert( ci.
get_etat() == ETATQCQ ) ;
711 resu = stdfdp - adfdx ;
Bases of the spectral expansions.
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
int get_etat() const
Returns the logical state.
Valeur va
The numerical value of the Cmp.
void set_etat_zero()
Sets the logical state to ETATZERO (zero).
void set_dzpuis(int)
Set a value to dzpuis.
bool check_dzpuis(int dzi) const
Returns false if the last domain is compactified and *this is not zero in this domain and dzpuis is n...
const Map * get_mp() const
Returns the mapping.
const Cmp & dsdx() const
Returns of *this , where .
virtual void dsdr(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
virtual void srstdsdp(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
virtual void dsdradial(const Scalar &uu, Scalar &resu) const
Computes of a Scalar if the description is affine and if it is logarithmic.
virtual void stdsdp(const Scalar &uu, Scalar &resu) const
Computes of a Scalar.
virtual void dsdt(const Scalar &uu, Scalar &resu) const
Computes of a Scalar.
virtual void srdsdt(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
virtual void dsdxi(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
Coord srstdrdp
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord drdt
in the nucleus and in the non-compactified shells; \ in the compactified external domain (CED).
Coord srdrdt
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord xsr
in the nucleus; \ 1/R in the non-compactified shells; \ in the compactified outer domain.
Coord dxdr
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord stdrdp
in the nucleus and in the non-compactified shells; \ in the compactified external domain (CED).
Tensor field of valence 0 (or component of a tensorial field).
int get_dzpuis() const
Returns dzpuis.
virtual void set_etat_zero()
Sets the logical state to ETATZERO (zero).
Valeur & set_spectral_va()
Returns va (read/write version).
const Valeur & get_spectral_va() const
Returns va (read only version).
int get_etat() const
Returns the logical state ETATNONDEF (undefined), ETATZERO (null) or ETATQCQ (ordinary).
void set_dzpuis(int)
Modifies the dzpuis flag.
void set_spectral_base(const Base_val &)
Sets the spectral bases of the Valeur va.
Values and coefficients of a (real-value) function.
const Valeur & dsdp() const
Returns of *this.
const Valeur & sx() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR ).
const Base_val & get_base() const
Return the bases for spectral expansions (member base ).
const Valeur & stdsdp() const
Returns of *this.
void set_base(const Base_val &)
Sets the bases for spectral expansions (member base ).
const Valeur & dsdt() const
Returns of *this.
void annule(int l)
Sets the Valeur to zero in a given domain.
Tbl & set(int l)
Read/write of the value in a given domain (configuration space).
const Valeur & dsdx() const
Returns of *this.
const Valeur & mult_x() const
Returns (r -sampling = RARE ) \ Id (r sampling = FIN ) \ (r -sampling = UNSURR ).
const Valeur & ssint() const
Returns of *this.
void coef() const
Computes the coeffcients of *this.
Base_val base
Bases on which the spectral expansion is performed.
const Map & get_mp() const
Returns the mapping.
void annule_domain(int l)
Sets the Tensor to zero in a given domain.