27char map_et_deriv_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Map/map_et_deriv.C,v 1.10 2014/10/13 08:53:03 j_novak Exp $" ;
97 assert (ci.
get_etat() != ETATNONDEF) ;
98 assert (ci.
get_mp()->get_mg() == mg) ;
104 assert( ci.
get_etat() == ETATQCQ ) ;
109 resu = (ci.
va).dsdx() ;
111 (resu.
va).base = (ci.
va).
dsdx().base ;
113 int nz = mg->get_nzone() ;
114 if (mg->get_type_r(nz-1) == UNSURR) {
125 assert (uu.
get_etat() != ETATNONDEF) ;
126 assert (uu.
get_mp().get_mg() == mg) ;
132 assert( uu.
get_etat() == ETATQCQ ) ;
138 int nz = mg->get_nzone() ;
144 if (mg->get_type_r(nzm1) == UNSURR) {
150 assert(mg->get_type_r(nzm1) == UNSURR) ;
163 tmp_ced = tmp_ced.
mult_x() ;
164 tmp_ced = tmp_ced /
xsr ;
167 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
189 assert (ci.
get_etat() != ETATNONDEF) ;
190 assert (ci.
get_mp()->get_mg() == mg) ;
196 assert( ci.
get_etat() == ETATQCQ ) ;
201 resu = (ci.
va).dsdx() *
dxdr ;
203 (resu.
va).base = (ci.
va).dsdx().base ;
205 int nz = mg->get_nzone() ;
206 if (mg->get_type_r(nz-1) == UNSURR) {
217 assert (uu.
get_etat() != ETATNONDEF) ;
218 assert (uu.
get_mp().get_mg() == mg) ;
224 assert( uu.
get_etat() == ETATQCQ ) ;
230 int nz = mg->get_nzone() ;
236 if (mg->get_type_r(nzm1) == UNSURR) {
242 assert(mg->get_type_r(nzm1) == UNSURR) ;
252 tmp_ced = tmp_ced *
dxdr ;
255 tmp_ced = tmp_ced.
mult_x() ;
256 tmp_ced = tmp_ced /
xsr ;
259 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
276 assert (uu.
get_etat() != ETATNONDEF) ;
277 assert (uu.
get_mp().get_mg() == mg) ;
283 assert( uu.
get_etat() == ETATQCQ ) ;
289 int nz = mg->get_nzone() ;
295 if (mg->get_type_r(nzm1) == UNSURR) {
301 assert(mg->get_type_r(nzm1) == UNSURR) ;
311 tmp_ced = tmp_ced *
dxdr ;
314 tmp_ced = tmp_ced.
mult_x() ;
315 tmp_ced = tmp_ced /
xsr ;
318 tmp_ced.
set(nzm1) -= dzp * uuva(nzm1) ;
339 assert (ci.
get_etat() != ETATNONDEF) ;
340 assert (ci.
get_mp()->get_mg() == mg) ;
347 assert( ci.
get_etat() == ETATQCQ ) ;
356 srdfdt = srdfdt.
dsdt() ;
357 srdfdt = srdfdt.
sx() ;
361 srdfdt = srdfdt *
xsr ;
363 srdfdt.
base = sauve_base ;
370 adfdx = adfdx.
dsdx() ;
372 sauve_base = adfdx.
base ;
374 adfdx.
base = sauve_base ;
379 resu = srdfdt - adfdx ;
381 int nz = mg->get_nzone() ;
382 if (mg->get_type_r(nz-1) == UNSURR) {
393 assert (uu.
get_etat() != ETATNONDEF) ;
394 assert (uu.
get_mp().get_mg() == mg) ;
401 assert( uu.
get_etat() == ETATQCQ ) ;
406 int nz = mg->get_nzone() ;
413 srdfdt = srdfdt.
dsdt() ;
415 srdfdt = srdfdt.
sx() ;
419 srdfdt = srdfdt *
xsr ;
421 srdfdt.
base = sauve_base ;
427 adfdx = adfdx.
dsdx() ;
429 sauve_base = adfdx.
base ;
431 adfdx.
base = sauve_base ;
438 resu = srdfdt - adfdx ;
441 if (mg->get_type_r(nz-1) == UNSURR) {
449 assert(mg->get_type_r(nzm1) == UNSURR) ;
453 Valeur tmp = srdfdt - adfdx ;
459 Valeur tmp_ced = - adfdx ;
463 tmp_ced = tmp_ced.
mult_x() ;
465 tmp_ced = tmp_ced /
xsr ;
467 tmp_ced = tmp_ced + uuva.
dsdt() ;
471 resu = tmp + tmp_ced ;
487 assert (ci.
get_etat() != ETATNONDEF) ;
488 assert (ci.
get_mp()->get_mg() == mg) ;
505 srstdfdp = srstdfdp.
dsdp() ;
506 srstdfdp = srstdfdp.
ssint() ;
507 srstdfdp = srstdfdp.
sx() ;
511 srstdfdp = srstdfdp *
xsr ;
513 srstdfdp.
base = sauve_base ;
519 bdfdx = bdfdx.
dsdx() ;
521 sauve_base = bdfdx.
base ;
523 bdfdx.
base = sauve_base ;
528 resu = srstdfdp - bdfdx ;
530 int nz = mg->get_nzone() ;
531 if (mg->get_type_r(nz-1) == UNSURR) {
542 assert (uu.
get_etat() != ETATNONDEF) ;
543 assert (uu.
get_mp().get_mg() == mg) ;
550 assert( uu.
get_etat() == ETATQCQ ) ;
555 int nz = mg->get_nzone() ;
563 srstdfdp = srstdfdp.
dsdp() ;
564 srstdfdp = srstdfdp.
ssint() ;
565 srstdfdp = srstdfdp.
sx() ;
569 srstdfdp = srstdfdp *
xsr ;
571 srstdfdp.
base = sauve_base ;
577 bdfdx = bdfdx.
dsdx() ;
579 sauve_base = bdfdx.
base ;
581 bdfdx.
base = sauve_base ;
588 resu = srstdfdp - bdfdx ;
591 if (mg->get_type_r(nz-1) == UNSURR) {
598 assert(mg->get_type_r(nzm1) == UNSURR) ;
602 Valeur tmp = srstdfdp - bdfdx ;
607 Valeur tmp_ced = - bdfdx ;
610 tmp_ced = tmp_ced.
mult_x() ;
612 tmp_ced = tmp_ced /
xsr ;
614 tmp_ced = tmp_ced + uuva.
dsdp().
ssint() ;
618 resu = tmp + tmp_ced ;
631 assert (ci.
get_etat() != ETATNONDEF) ;
632 assert (ci.
get_mp().get_mg() == mg) ;
641 assert( ci.
get_etat() == ETATQCQ ) ;
664 resu = dfdt - adfdx ;
676 assert (ci.
get_etat() != ETATNONDEF) ;
677 assert (ci.
get_mp().get_mg() == mg) ;
684 assert( ci.
get_etat() == ETATQCQ ) ;
708 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.