71 Map_radial(mgrille), alpha (mgrille.get_nzone()), beta (mgrille.get_nzone()),
81 for (
int l=0 ; l<nzone ; l++) {
86 alpha.
set(l) = bornes(l+1) - bornes(l) ;
92 alpha.
set(l) = (bornes(l+1) - bornes(l)) * .5 ;
93 beta.
set(l) = (bornes(l+1) + bornes(l)) * .5 ;
98 double umax = 1./bornes(l) ;
99 double umin = 1./bornes(l+1) ;
101 beta.
set(l) = (umin + umax) * .5 ;
106 cout <<
"Map_log::Map_log: unkown type_r ! " << endl ;
123 cout <<
"Map_log::Map_log: unkown type_r ! " << endl ;
132 cout <<
"Map_log::Map_log: unkown type_r ! " << endl ;
143 type_var(so.type_var) {
149 alpha (mgrille.get_nzone()),
150 beta (mgrille.get_nzone()),
151 type_var (mgrille.get_nzone()) {
178 double precis = 1e-10 ;
209 ost <<
"Log mapping (class Map_log)" << endl ;
211 for (
int l=0; l<nz; l++) {
212 ost <<
" Domain #" << l <<
" ; Variable type " ;
217 ost <<
"alpha_l = " <<
alpha(l)
218 <<
" , beta_l = " <<
beta(l) << endl ;
222 ost <<
" Coord r : " ;
223 for (
int l=0; l<nz; l++) {
225 ost <<
" " << (+
r)(l, 0, 0, nrm1) ;
260 void Map_log::set_coord(){
264 tet.
set(
this, map_log_fait_tet) ;
265 phi.
set(
this, map_log_fait_phi) ;
266 sint.
set(
this, map_log_fait_sint) ;
267 cost.
set(
this, map_log_fait_cost) ;
268 sinp.
set(
this, map_log_fait_sinp) ;
269 cosp.
set(
this, map_log_fait_cosp) ;
271 x.
set(
this, map_log_fait_x) ;
272 y.
set(
this, map_log_fait_y) ;
273 z.
set(
this, map_log_fait_z) ;
275 xa.
set(
this, map_log_fait_xa) ;
276 ya.
set(
this, map_log_fait_ya) ;
277 za.
set(
this, map_log_fait_za) ;
280 xsr.
set(
this, map_log_fait_xsr) ;
281 dxdr.
set(
this, map_log_fait_dxdr) ;
282 drdt.
set(
this, map_log_fait_drdt) ;
Coord xa
Absolute x coordinate.
Tbl beta
Array (size: mg->nzone ) of the values of in each domain.
virtual bool operator==(const Map &) const
Comparison operator (egality)
Coord d2rdx2
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord sr2d2rdt2
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Cmp log(const Cmp &)
Neperian logarithm.
Coord sr2stdrdp
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
const double * get_alpha() const
Returns the pointer on the array alpha.
void set_rot_phi(double phi0)
Sets a new rotation angle.
double get_ori_y() const
Returns the y coordinate of the origin.
const Base_vect_spher & get_bvect_spher() const
Returns the orthonormal vectorial basis associated with the coordinates of the mapping.
const Mg3d * get_mg() const
Gives the Mg3d on which the mapping is defined.
double & set(int i)
Read/write of a particular element (index i) (1D case)
Coord sr2drdt
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Base class for coordinate mappings.
double get_ori_x() const
Returns the x coordinate of the origin.
Basic integer array class.
virtual ostream & operator>>(ostream &) const
Operator >>
double get_rot_phi() const
Returns the angle between the x –axis and X –axis.
void set(const Map *mp, Mtbl *(*construct)(const Map *))
Semi-constructor from a mapping and a method.
Itbl type_var
Array (size: mg->nzone ) of the type of variable in each domain.
Coord srstdrdp
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord tet
coordinate centered on the grid
void set_ori(double xa0, double ya0, double za0)
Sets a new origin.
Coord phi
coordinate centered on the grid
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
Coord dxdlnr
Same as dxdr if the domains where the description is affine and where it is logarithmic.
Coord stdrdp
in the nucleus and in the non-compactified shells; \ in the compactified external domain (CED)...
virtual void operator=(const Map_af &mpa)
Assignment to an affine mapping.
Coord dxdr
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Logarithmic radial mapping.
double ori_y
Absolute coordinate y of the origin.
const double * get_beta() const
Returns the pointer on the array beta.
void sauve(FILE *) const
Save in a file.
double ori_z
Absolute coordinate z of the origin.
Tbl alpha
Array (size: mg->nzone ) of the values of in each domain.
Base class for pure radial mappings.
int get_nzone() const
Returns the number of domains.
Coord sstd2rdpdx
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
virtual void sauve(FILE *) const
Save in a file.
Coord xsr
in the nucleus; \ 1/R 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)...
Map_log(const Mg3d &mgrille, const Tbl &r_limits, const Itbl &typevar)
Standard Constructor.
friend Mtbl * map_log_fait_r(const Map *)
< Not implemented
int get_nr(int l) const
Returns the number of points in the radial direction ( ) in domain no. l.
Coord ya
Absolute y coordinate.
const Mg3d * mg
Pointer on the multi-grid Mgd3 on which this is defined.
double ori_x
Absolute coordinate x of the origin.
const Base_vect_cart & get_bvect_cart() const
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e.
Coord y
y coordinate centered on the grid
Coord za
Absolute z coordinate.
Coord lapr_tp
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
Coord x
x coordinate centered on the grid
Base_vect_spher bvect_spher
Orthonormal vectorial basis associated with the coordinates of the mapping.
double get_ori_z() const
Returns the z coordinate of the origin.
void sauve(FILE *) const
Save in a file.
virtual void reset_coord()
Resets all the member Coords.
int get_type_r(int l) const
Returns the type of sampling in the radial direction in domain no.
Coord srdrdt
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.
virtual ~Map_log()
Destructor.
virtual void sauve(FILE *) const
Save in a file.
Coord z
z coordinate centered on the grid
Tbl diffrelmax(const Cmp &a, const Cmp &b)
Relative difference between two Cmp (max version).
Base_vect_cart bvect_cart
Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e.
Coord r
r coordinate centered on the grid
Coord d2rdtdx
in the nucleus and in the non-compactified shells; \ in the compactified outer domain.