141 assert (ci.
get_etat() != ETATNONDEF) ;
142 assert (ci.
get_mp()->get_mg() == mg) ;
149 assert( ci.
get_etat() == ETATQCQ ) ;
154 int nz = mg->get_nzone() ;
160 resu = (ci.
va).dsdx() ;
162 if (mg->get_type_r(nzm1) == UNSURR) {
170 assert(mg->get_type_r(nzm1) == UNSURR) ;
179 tmp_ced.
set(nzm1) -= 2. * ci.
va(nzm1) ;
182 resu = tmp + tmp_ced ;
189 assert(mg->get_type_r(nzm1) == UNSURR) ;
193 tmp2.
base = (ci.
va).dsdx().base ;
198 tmp2.
set(nzm1) -= 4*ci.
va(nzm1) ;
202 resu = tmp + tmp2 /
xsr ;
208 cerr <<
"Map_af::dsdxi: unexpected value of input dzpuis !\n"
209 <<
" ci.get_dzpuis() = " << ci.
get_dzpuis() << endl ;
217 (resu.
va).set_base( (ci.
va).dsdx().get_base() ) ;
225 assert (uu.
get_etat() != ETATNONDEF) ;
226 assert (uu.
get_mp().get_mg() == mg) ;
234 assert( uu.
get_etat() == ETATQCQ ) ;
240 int nz = mg->get_nzone() ;
244 resu = uuva.
dsdx() * unity ;
246 if (mg->get_type_r(nzm1) == UNSURR) {
255 if (mg->get_type_r(nzm1) == UNSURR) {
262 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
284 assert (ci.
get_etat() != ETATNONDEF) ;
285 assert (ci.
get_mp()->get_mg() == mg) ;
292 assert( ci.
get_etat() == ETATQCQ ) ;
297 int nz = mg->get_nzone() ;
303 resu = (ci.
va).dsdx() *
dxdr ;
305 if (mg->get_type_r(nzm1) == UNSURR) {
313 assert(mg->get_type_r(nzm1) == UNSURR) ;
322 tmp_ced.
set(nzm1) -= 2. * ci.
va(nzm1) ;
325 resu = tmp + tmp_ced ;
332 assert(mg->get_type_r(nzm1) == UNSURR) ;
336 tmp2.
base = (ci.
va).dsdx().base ;
341 tmp2.
set(nzm1) -= 4*ci.
va(nzm1) ;
345 resu = tmp + tmp2 /
xsr ;
351 cerr <<
"Map_af::dsdr: unexpected value of input dzpuis !\n"
352 <<
" ci.get_dzpuis() = " << ci.
get_dzpuis() << endl ;
360 (resu.
va).set_base( (ci.
va).dsdx().get_base() ) ;
368 assert (uu.
get_etat() != ETATNONDEF) ;
369 assert (uu.
get_mp().get_mg() == mg) ;
376 assert( uu.
get_etat() == ETATQCQ ) ;
382 int nz = mg->get_nzone() ;
388 if (mg->get_type_r(nzm1) == UNSURR) {
397 if (mg->get_type_r(nzm1) == UNSURR) {
404 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
422 assert (uu.
get_etat() != ETATNONDEF) ;
423 assert (uu.
get_mp().get_mg() == mg) ;
430 assert( uu.
get_etat() == ETATQCQ ) ;
436 int nz = mg->get_nzone() ;
442 if (mg->get_type_r(nzm1) == UNSURR) {
448 assert(mg->get_type_r(nzm1) == UNSURR) ;
459 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
480 assert (ci.
get_etat() != ETATNONDEF) ;
481 assert (ci.
get_mp()->get_mg() == mg) ;
488 assert( ci.
get_etat() == ETATQCQ ) ;
496 int nz = mg->get_nzone() ;
511 if (mg->get_type_r(nz-1) == UNSURR) {
519 assert(mg->get_type_r(nzm1) == UNSURR) ;
532 resu = tmp + tmp_ced ;
539 assert(mg->get_type_r(nzm1) == UNSURR) ;
552 resu = tmp + tmp_ced /
xsr ;
560 cerr <<
"Map_af::srdsdt: unexpected value of input dzpuis !\n"
561 <<
" ci.get_dzpuis() = " << ci.
get_dzpuis() << endl ;
573 assert (uu.
get_etat() != ETATNONDEF) ;
574 assert (uu.
get_mp().get_mg() == mg) ;
581 assert( uu.
get_etat() == ETATQCQ ) ;
588 int nz = mg->get_nzone() ;
601 if (mg->get_type_r(nz-1) == UNSURR) {
608 assert(mg->get_type_r(nzm1) == UNSURR) ;
622 resu = tmp + tmp_ced ;
638 assert (ci.
get_etat() != ETATNONDEF) ;
639 assert (ci.
get_mp()->get_mg() == mg) ;
646 assert( ci.
get_etat() == ETATQCQ ) ;
655 int nz = mg->get_nzone() ;
670 if (mg->get_type_r(nz-1) == UNSURR) {
678 assert(mg->get_type_r(nzm1) == UNSURR) ;
691 resu = tmp + tmp_ced ;
698 assert(mg->get_type_r(nzm1) == UNSURR) ;
711 resu = tmp + tmp_ced /
xsr ;
719 cerr <<
"Map_af::srstdsdp: unexpected value of input dzpuis !\n"
720 <<
" ci.get_dzpuis() = " << ci.
get_dzpuis() << endl ;
734 assert (uu.
get_etat() != ETATNONDEF) ;
735 assert (uu.
get_mp().get_mg() == mg) ;
742 assert( uu.
get_etat() == ETATQCQ ) ;
751 int nz = mg->get_nzone() ;
765 if (mg->get_type_r(nz-1) == UNSURR) {
772 assert(mg->get_type_r(nzm1) == UNSURR) ;
787 resu = tmp + tmp_ced ;
802 assert (ci.
get_etat() != ETATNONDEF) ;
803 assert (ci.
get_mp().get_mg() == mg) ;
810 assert( ci.
get_etat() == ETATQCQ ) ;
828 assert (ci.
get_etat() != ETATNONDEF) ;
829 assert (ci.
get_mp().get_mg() == mg) ;
836 assert( ci.
get_etat() == ETATQCQ ) ;
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.
int get_dzpuis() const
Returns dzpuis.
void set_etat_zero()
Sets the logical state to ETATZERO (zero).
void set_dzpuis(int)
Set a value to dzpuis.
const Map * get_mp() const
Returns the mapping.
virtual void srstdsdp(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
virtual void dsdradial(const Scalar &, Scalar &) const
Computes of a Scalar.
virtual void dsdr(const Cmp &ci, Cmp &resu) const
Computes of a Cmp.
virtual void dsdt(const Scalar &uu, Scalar &resu) const
Computes of a Scalar.
virtual void stdsdp(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 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.
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 ).
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 ).
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 & 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.
Coord r
r coordinate centered on the grid