71 "Map_radial::reevaluate_symy : the mapping mp_prev does not belong" 73 cout <<
" to the class Map_radial !" << endl ;
81 assert(uu.
get_mp() ==
this) ;
83 assert(uu.
get_etat() != ETATNONDEF) ;
84 assert(mp_prev->
mg ==
mg) ;
103 (uu.
va).set_etat_c_qcq() ;
107 Mtbl& va_c = *((uu.
va).c) ;
123 double precis = 1.e-15 ;
132 for (
int l=0; l<nzet; l++) {
140 double* ptx = (va_c.
t[l])->t ;
142 double* pr = (rc.
t[l])->t ;
148 for (
int k=0 ; k<np/2+1 ; k++) {
149 for (
int j=0; j<nt; j++) {
150 for (
int i=0; i<nr; i++) {
157 mp_prev->
val_lx_jk(*pr, j, k, par, l0, xi0) ;
173 for (
int k=np/2+1 ; k<np ; k++) {
177 double* ptx_symy = (va_c.
t[l])->t + (np-k)*nt*nr ;
180 for (
int j=0 ; j<nt ; j++) {
181 for (
int i=0 ; i<nr ; i++) {
203 if (mp_prev == 0x0) {
205 "Map_radial::reevaluate_symy : the mapping mp_prev does not belong" 207 cout <<
" to the class Map_radial !" << endl ;
215 assert(uu.
get_mp() == *
this) ;
217 assert(uu.
get_etat() != ETATNONDEF) ;
218 assert(mp_prev->
mg ==
mg) ;
257 double precis = 1.e-15 ;
266 for (
int l=0; l<nzet; l++) {
274 double* ptx = (va_c.
t[l])->t ;
276 double* pr = (rc.
t[l])->t ;
282 for (
int k=0 ; k<np/2+1 ; k++) {
283 for (
int j=0; j<nt; j++) {
284 for (
int i=0; i<nr; i++) {
291 mp_prev->
val_lx_jk(*pr, j, k, par, l0, xi0) ;
307 for (
int k=np/2+1 ; k<np ; k++) {
311 double* ptx_symy = (va_c.
t[l])->t + (np-k)*nt*nr ;
314 for (
int j=0 ; j<nt ; j++) {
315 for (
int i=0 ; i<nr ; i++) {
int get_type_p() const
Returns the type of sampling in the direction: SYM : : symmetry with respect to the transformatio...
const Map * get_mp() const
Returns the mapping.
Mtbl_cf * c_cf
Coefficients of the spectral expansion of the function.
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
void add_int(const int &n, int position=0)
Adds the address of a new int to the list.
int get_np(int l) const
Returns the number of points in the azimuthal direction ( ) in domain no. l.
void coef() const
Computes the coeffcients of *this.
void annule(int l)
Sets the Cmp to zero in a given domain.
virtual void annule(int l_min, int l_max)
Sets the Scalar to zero in several domains.
int get_etat() const
Returns the logical state.
Tensor field of valence 0 (or component of a tensorial field).
Base class for coordinate mappings.
Mtbl * c
The coordinate values at each grid point.
int get_etat() const
Returns the logical state ETATNONDEF (undefined), ETATZERO (null) or ETATQCQ (ordinary).
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
int get_dzpuis() const
Returns dzpuis.
Mtbl * c
Values of the function at the points of the multi-grid.
Base class for pure radial mappings.
int get_nzone() const
Returns the number of domains.
virtual void reevaluate_symy(const Map *mp_prev, int nzet, Cmp &uu) const
Recomputes the values of a Cmp at the collocation points after a change in the mapping.
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
void fait() const
Computes, at each point of the grid, the value of the coordinate or mapping derivative represented by...
virtual void val_lx_jk(double rr, int j, int k, const Param &par, int &l, double &xi) const =0
Computes the domain index l and the value of corresponding to a point of arbitrary r but collocation...
int get_nr(int l) const
Returns the number of points in the radial direction ( ) in domain no. l.
const Mg3d * mg
Pointer on the multi-grid Mgd3 on which this is defined.
int get_dzpuis() const
Returns dzpuis.
void add_double(const double &x, int position=0)
Adds the the address of a new double to the list.
Coefficients storage for the multi-domain spectral method.
void set_etat_c_qcq()
Sets the logical state to ETATQCQ (ordinary state) for values in the configuration space (Mtbl c )...
int get_nt(int l) const
Returns the number of points in the co-latitude direction ( ) in domain no. l.
Valeur & set_spectral_va()
Returns va (read/write version)
Tbl ** t
Array (size nzone ) of pointers on the Tbl 's.
const Map & get_mp() const
Returns the mapping.
double val_point_jk_symy(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 va
The numerical value of the Cmp.
void add_int_mod(int &n, int position=0)
Adds the address of a new modifiable int to the list.
Coord r
r coordinate centered on the grid