46 assert( l<mg->get_nzone() ) ;
50 switch( mg->get_type_r(l) ) {
58 resu =
alpha.
val_point(l, xi, theta, pphi)*xi + beta.val_point(l, xi, theta, pphi) ;
64 cout <<
"Map_star::val_r : Compactified domain not allowed !" << endl;
70 cout <<
"Map_star::val_r: unknown type_r ! " << endl ;
82void Map_star::val_lx(
double rr,
double theta,
double pphi,
int& lz,
double& xi)
const {
86 int nz = mg->get_nzone() ;
89 for (
int l=0; l<nz; l++) {
92 if (mg->get_type_r(l) == RARE){
96 if (mg->get_type_r(l) == FIN) {
98 rmin = beta.val_point(l,1.,theta,pphi) -
alpha.
val_point(l,1,theta,pphi) ;
99 rmax = beta.val_point(l,1.,theta,pphi) +
alpha.
val_point(l,1,theta,pphi) ;
105 if ((rr - rmin >= -1.e-14*fabs(rmin)) && ( rr <= rmax )) {
113 cout.setf(ios::showpoint);
114 cout <<
"Map_star::val_lx: the domain containing r = " << rr <<
115 " has not been found ! "
132 switch( mg->get_type_r(lz) ) {
140 xi = (rr-beta.val_point(lz,1.,theta,pphi))/
alpha.
val_point(lz,1.,theta,pphi) ;
146 cout <<
"Map_star::val_lx : Compactified domain not allowed !" << endl;
152 cout <<
"Map_star::val_lx: unknown type_r ! " << endl ;
161 int& lz,
double& xi)
const {
175 return val_r(l, xi, (+
tet)(l,k,j,0), (+
phi)(l,k,j,0)) ;
184 int& l,
double& xi)
const {
186 val_lx(rr, (+
tet)(l,k,j,0), (+
phi)(l,k,j,0), l, xi) ;
virtual double val_r(int l, double xi, double theta, double pphi) const
Returns the value of the radial coordinate r for a given in a given domain.
virtual void val_lx(double rr, double theta, double pphi, int &l, double &xi) const
Computes the domain index l and the value of corresponding to a point given by its physical coordina...
virtual double val_r_jk(int l, double xi, int j, int k) const
Returns the value of the radial coordinate r for a given and a given collocation point in in a give...
Valeur alpha
Array (size: mg->nzone*Nt*Np ) of the values of in each domain.
virtual void val_lx_jk(double rr, int j, int k, const Param &par, int &l, double &xi) const
Computes the domain index l and the value of corresponding to a point of arbitrary r but collocation...
double val_point(int l, double x, double theta, double phi) const
Computes the value of the field represented by *this at an arbitrary point, by means of the spectral ...
Coord phi
coordinate centered on the grid
Coord tet
coordinate centered on the grid