23char map_radial_reeval_symy_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Map/map_radial_reeval_symy.C,v 1.4 2014/10/13 08:53:06 j_novak Exp $" ;
65 "Map_radial::reevaluate_symy : the mapping mp_prev does not belong"
67 cout <<
" to the class Map_radial !" << endl ;
75 assert(uu.
get_mp() ==
this) ;
77 assert(uu.
get_etat() != ETATNONDEF) ;
78 assert(mp_prev->
mg ==
mg) ;
97 (uu.
va).set_etat_c_qcq() ;
101 Mtbl& va_c = *((uu.
va).c) ;
117 double precis = 1.e-15 ;
126 for (
int l=0; l<nzet; l++) {
134 double* ptx = (va_c.
t[l])->t ;
136 double* pr = (rc.
t[l])->t ;
142 for (
int k=0 ; k<np/2+1 ; k++) {
143 for (
int j=0; j<nt; j++) {
144 for (
int i=0; i<nr; i++) {
151 mp_prev->
val_lx_jk(*pr, j, k, par, l0, xi0) ;
167 for (
int k=np/2+1 ; k<np ; k++) {
171 double* ptx_symy = (va_c.
t[l])->t + (np-k)*nt*nr ;
174 for (
int j=0 ; j<nt ; j++) {
175 for (
int i=0 ; i<nr ; i++) {
197 if (mp_prev == 0x0) {
199 "Map_radial::reevaluate_symy : the mapping mp_prev does not belong"
201 cout <<
" to the class Map_radial !" << endl ;
209 assert(uu.
get_mp() == *
this) ;
211 assert(uu.
get_etat() != ETATNONDEF) ;
212 assert(mp_prev->
mg ==
mg) ;
251 double precis = 1.e-15 ;
260 for (
int l=0; l<nzet; l++) {
268 double* ptx = (va_c.
t[l])->t ;
270 double* pr = (rc.
t[l])->t ;
276 for (
int k=0 ; k<np/2+1 ; k++) {
277 for (
int j=0; j<nt; j++) {
278 for (
int i=0; i<nr; i++) {
285 mp_prev->
val_lx_jk(*pr, j, k, par, l0, xi0) ;
301 for (
int k=np/2+1 ; k<np ; k++) {
305 double* ptx_symy = (va_c.
t[l])->t + (np-k)*nt*nr ;
308 for (
int j=0 ; j<nt ; j++) {
309 for (
int i=0 ; i<nr ; i++) {
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 annule(int l)
Sets the Cmp to zero in a given domain.
int get_dzpuis() const
Returns dzpuis.
const Map * get_mp() const
Returns the mapping.
void fait() const
Computes, at each point of the grid, the value of the coordinate or mapping derivative represented by...
Mtbl * c
The coordinate values at each grid point.
Base class for pure radial mappings.
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.
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...
Base class for coordinate mappings.
Coord r
r coordinate centered on the grid
const Mg3d * mg
Pointer on the multi-grid Mgd3 on which this is defined
int get_np(int l) const
Returns the number of points in the azimuthal direction ( ) in domain no. l.
int get_type_p() const
Returns the type of sampling in the direction: SYM : : symmetry with respect to the transformatio...
int get_nt(int l) const
Returns the number of points in the co-latitude direction ( ) in domain no. l.
int get_nzone() const
Returns the number of domains.
int get_nr(int l) const
Returns the number of points in the radial direction ( ) in domain no. l.
Coefficients storage for the multi-domain spectral method.
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...
Tbl ** t
Array (size nzone ) of pointers on the Tbl 's.
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
void add_double(const double &x, int position=0)
Adds the the address of a new double to the list.
void add_int_mod(int &n, int position=0)
Adds the address of a new modifiable int to the list.
void add_int(const int &n, int position=0)
Adds the address of a new int to the list.
Tensor field of valence 0 (or component of a tensorial field).
int get_dzpuis() const
Returns dzpuis.
virtual void annule(int l_min, int l_max)
Sets the Scalar to zero in several domains.
Valeur & set_spectral_va()
Returns va (read/write version)
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).
void set_etat_c_qcq()
Sets the logical state to ETATQCQ (ordinary state) for values in the configuration space (Mtbl c ).
Mtbl * c
Values of the function at the points of the multi-grid
Mtbl_cf * c_cf
Coefficients of the spectral expansion of the function.
void coef() const
Computes the coeffcients of *this.
const Map & get_mp() const
Returns the mapping.