Radial mapping of rather general form. More...
#include <map.h>
Public Member Functions | |
Map_et (const Mg3d &mgrille, const double *r_limits) | |
Standard Constructor. | |
Map_et (const Mg3d &mgrille, const double *r_limits, const Tbl &tab) | |
Constructor using the equation of the surface of the star. | |
Map_et (const Map_et &) | |
Copy constructor. | |
Map_et (const Mg3d &, FILE *) | |
Constructor from a file (see sauve(FILE*) ). | |
virtual | ~Map_et () |
Destructor. | |
virtual void | operator= (const Map_et &mp) |
Assignment to another Map_et . | |
virtual void | operator= (const Map_af &mpa) |
Assignment to an affine mapping. | |
void | set_ff (const Valeur &) |
Assigns a given value to the function . | |
void | set_gg (const Valeur &) |
Assigns a given value to the function . | |
virtual const Map_af & | mp_angu (int) const |
Returns the "angular" mapping for the outside of domain l_zone . | |
const double * | get_alpha () const |
Returns a pointer on the array alpha (values of in each domain). | |
const double * | get_beta () const |
Returns a pointer on the array beta (values of in each domain). | |
const Valeur & | get_ff () const |
Returns a (constant) reference to the function . | |
const Valeur & | get_gg () const |
Returns a (constant) reference to the function . | |
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 coordinates . | |
virtual void | val_lx (double rr, double theta, double pphi, const Param &par, int &l, double &xi) const |
Computes the domain index l and the value of corresponding to a point given by its physical coordinates . | |
virtual bool | operator== (const Map &) const |
Comparison operator (egality). | |
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 given 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 values of . | |
virtual void | sauve (FILE *) const |
Save in a file. | |
virtual void | homothetie (double lambda) |
Sets a new radial scale. | |
virtual void | resize (int l, double lambda) |
Rescales the outer boundary of one domain. | |
void | resize_extr (double lambda) |
Rescales the outer boundary of the outermost domain in the case of non-compactified external domain. | |
void | set_alpha (double alpha0, int l) |
Modifies the value of in domain no. l. | |
void | set_beta (double beta0, int l) |
Modifies the value of in domain no. l. | |
virtual void | adapt (const Cmp &ent, const Param &par, int nbr_filtre=0) |
Adaptation of the mapping to a given scalar field. | |
virtual void | dsdxi (const Cmp &ci, Cmp &resu) const |
Computes of a Cmp . | |
virtual void | dsdr (const Cmp &ci, Cmp &resu) const |
Computes of a Cmp . | |
virtual void | srdsdt (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 | dsdxi (const Scalar &uu, Scalar &resu) const |
Computes of a Scalar . | |
virtual void | dsdr (const Scalar &uu, Scalar &resu) const |
Computes of a Scalar . | |
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 | srdsdt (const Scalar &uu, Scalar &resu) const |
Computes of a Scalar . | |
virtual void | srstdsdp (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 | stdsdp (const Scalar &uu, Scalar &resu) const |
Computes of a Scalar . | |
virtual void | laplacien (const Scalar &uu, int zec_mult_r, Scalar &lap) const |
Computes the Laplacian of a scalar field. | |
virtual void | laplacien (const Cmp &uu, int zec_mult_r, Cmp &lap) const |
Computes the Laplacian of a scalar field (Cmp version). | |
virtual void | lapang (const Scalar &uu, Scalar &lap) const |
Computes the angular Laplacian of a scalar field. | |
virtual void | primr (const Scalar &uu, Scalar &resu, bool null_infty) const |
Computes the radial primitive which vanishes for . | |
virtual Tbl * | integrale (const Cmp &) const |
Computes the integral over all space of a Cmp . | |
virtual void | poisson (const Cmp &source, Param &par, Cmp &uu) const |
Computes the solution of a scalar Poisson equation. | |
virtual void | poisson_tau (const Cmp &source, Param &par, Cmp &uu) const |
Computes the solution of a scalar Poisson equation with a Tau method. | |
virtual void | poisson_falloff (const Cmp &source, Param &par, Cmp &uu, int k_falloff) const |
virtual void | poisson_ylm (const Cmp &source, Param &par, Cmp &uu, int nylm, double *intvec) const |
virtual void | poisson_regular (const Cmp &source, int k_div, int nzet, double unsgam1, Param &par, Cmp &uu, Cmp &uu_regu, Cmp &uu_div, Tenseur &duu_div, Cmp &source_regu, Cmp &source_div) const |
Computes the solution of a scalar Poisson equation. | |
virtual void | poisson_angu (const Scalar &source, Param &par, Scalar &uu, double lambda=0) const |
Computes the solution of the generalized angular Poisson equation. | |
virtual Param * | donne_para_poisson_vect (Param ¶, int i) const |
Internal function intended to be used by Map::poisson_vect and Map::poisson_vect_oohara . | |
virtual void | poisson_frontiere (const Cmp &, const Valeur &, int, int, Cmp &, double=0., double=0.) const |
Not yet implemented. | |
virtual void | poisson_frontiere_double (const Cmp &source, const Valeur &lim_func, const Valeur &lim_der, int num_zone, Cmp &pot) const |
virtual void | poisson_interne (const Cmp &source, const Valeur &limite, Param &par, Cmp &pot) const |
Computes the solution of a Poisson equation in the shell . | |
virtual void | poisson2d (const Cmp &source_mat, const Cmp &source_quad, Param &par, Cmp &uu) const |
Computes the solution of a 2-D Poisson equation. | |
virtual void | dalembert (Param &par, Scalar &fJp1, const Scalar &fJ, const Scalar &fJm1, const Scalar &source) const |
Not yet implemented. | |
virtual bool | operator== (const Map &) const =0 |
Comparison operator (egality). | |
virtual void | reevaluate (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 | reevaluate (const Map *mp_prev, int nzet, Scalar &uu) const |
Recomputes the values of a Scalar at the collocation points after a change in the mapping. | |
virtual void | reevaluate (const Map *mp_prev, int nzet, Cmp &uu) const =0 |
Recomputes the values of a Cmp at the collocation points after a change in the mapping. | |
virtual void | reevaluate (const Map *mp_prev, int nzet, Scalar &uu) const =0 |
Recomputes the values of a Scalar at the collocation points after a change in the mapping. | |
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 | reevaluate_symy (const Map *mp_prev, int nzet, Scalar &uu) const |
Recomputes the values of a Scalar at the collocation points after a change in the mapping. | |
virtual void | reevaluate_symy (const Map *mp_prev, int nzet, Cmp &uu) const =0 |
Recomputes the values of a Cmp at the collocation points after a change in the mapping. | |
virtual void | reevaluate_symy (const Map *mp_prev, int nzet, Scalar &uu) const =0 |
Recomputes the values of a Scalar at the collocation points after a change in the mapping. | |
virtual void | mult_r (Scalar &uu) const |
Multiplication by r of a Scalar , the dzpuis of uu is not changed. | |
virtual void | mult_r (Cmp &ci) const |
Multiplication by r of a Cmp . | |
virtual void | mult_r_zec (Scalar &) const |
Multiplication by r (in the compactified external domain only) of a Scalar . | |
virtual void | mult_rsint (Scalar &) const |
Multiplication by of a Scalar . | |
virtual void | div_rsint (Scalar &) const |
Division by of a Scalar . | |
virtual void | div_r (Scalar &) const |
Division by r of a Scalar . | |
virtual void | div_r_zec (Scalar &) const |
Division by r (in the compactified external domain only) of a Scalar . | |
virtual void | mult_cost (Scalar &) const |
Multiplication by of a Scalar . | |
virtual void | div_cost (Scalar &) const |
Division by of a Scalar . | |
virtual void | mult_sint (Scalar &) const |
Multiplication by of a Scalar . | |
virtual void | div_sint (Scalar &) const |
Division by of a Scalar . | |
virtual void | div_tant (Scalar &) const |
Division by of a Scalar . | |
virtual void | comp_x_from_spherical (const Scalar &v_r, const Scalar &v_theta, const Scalar &v_phi, Scalar &v_x) const |
Computes the Cartesian x component (with respect to bvect_cart ) of a vector given by its spherical components with respect to bvect_spher . | |
virtual void | comp_x_from_spherical (const Cmp &v_r, const Cmp &v_theta, const Cmp &v_phi, Cmp &v_x) const |
Cmp version | |
virtual void | comp_y_from_spherical (const Scalar &v_r, const Scalar &v_theta, const Scalar &v_phi, Scalar &v_y) const |
Computes the Cartesian y component (with respect to bvect_cart ) of a vector given by its spherical components with respect to bvect_spher . | |
virtual void | comp_y_from_spherical (const Cmp &v_r, const Cmp &v_theta, const Cmp &v_phi, Cmp &v_y) const |
Cmp version | |
virtual void | comp_z_from_spherical (const Scalar &v_r, const Scalar &v_theta, Scalar &v_z) const |
Computes the Cartesian z component (with respect to bvect_cart ) of a vector given by its spherical components with respect to bvect_spher . | |
virtual void | comp_z_from_spherical (const Cmp &v_r, const Cmp &v_theta, Cmp &v_z) const |
Cmp version | |
virtual void | comp_r_from_cartesian (const Scalar &v_x, const Scalar &v_y, const Scalar &v_z, Scalar &v_r) const |
Computes the Spherical r component (with respect to bvect_spher ) of a vector given by its cartesian components with respect to bvect_cart . | |
virtual void | comp_r_from_cartesian (const Cmp &v_x, const Cmp &v_y, const Cmp &v_z, Cmp &v_r) const |
Cmp version | |
virtual void | comp_t_from_cartesian (const Scalar &v_x, const Scalar &v_y, const Scalar &v_z, Scalar &v_t) const |
Computes the Spherical component (with respect to bvect_spher ) of a vector given by its cartesian components with respect to bvect_cart . | |
virtual void | comp_t_from_cartesian (const Cmp &v_x, const Cmp &v_y, const Cmp &v_z, Cmp &v_t) const |
Cmp version | |
virtual void | comp_p_from_cartesian (const Scalar &v_x, const Scalar &v_y, Scalar &v_p) const |
Computes the Spherical component (with respect to bvect_spher ) of a vector given by its cartesian components with respect to bvect_cart . | |
virtual void | comp_p_from_cartesian (const Cmp &v_x, const Cmp &v_y, Cmp &v_p) const |
Cmp version | |
virtual void | dec_dzpuis (Scalar &) const |
Decreases by 1 the value of dzpuis of a Scalar and changes accordingly its values in the compactified external domain (CED). | |
virtual void | dec2_dzpuis (Scalar &) const |
Decreases by 2 the value of dzpuis of a Scalar and changes accordingly its values in the compactified external domain (CED). | |
virtual void | inc_dzpuis (Scalar &) const |
Increases by 1 the value of dzpuis of a Scalar and changes accordingly its values in the compactified external domain (CED). | |
virtual void | inc2_dzpuis (Scalar &) const |
Increases by 2 the value of dzpuis of a Scalar and changes accordingly its values in the compactified external domain (CED). | |
virtual void | poisson_compact (const Cmp &source, const Cmp &aa, const Tenseur &bb, const Param &par, Cmp &psi) const |
Resolution of the elliptic equation in the case where the stellar interior is covered by a single domain. | |
virtual void | poisson_compact (int nzet, const Cmp &source, const Cmp &aa, const Tenseur &bb, const Param &par, Cmp &psi) const |
Resolution of the elliptic equation in the case of a multidomain stellar interior. | |
const Mg3d * | get_mg () const |
Gives the Mg3d on which the mapping is defined. | |
double | get_ori_x () const |
Returns the x coordinate of the origin. | |
double | get_ori_y () const |
Returns the y coordinate of the origin. | |
double | get_ori_z () const |
Returns the z coordinate of the origin. | |
double | get_rot_phi () const |
Returns the angle between the x --axis and X --axis. | |
const Base_vect_spher & | get_bvect_spher () const |
Returns the orthonormal vectorial basis associated with the coordinates of the mapping. | |
const Base_vect_cart & | get_bvect_cart () const |
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e. | |
const Metric_flat & | flat_met_spher () const |
Returns the flat metric associated with the spherical coordinates and with components expressed in the triad bvect_spher . | |
const Metric_flat & | flat_met_cart () const |
Returns the flat metric associated with the Cartesian coordinates and with components expressed in the triad bvect_cart . | |
const Cmp & | cmp_zero () const |
Returns the null Cmp defined on *this . | |
void | convert_absolute (double xx, double yy, double zz, double &rr, double &theta, double &pphi) const |
Determines the coordinates corresponding to given absolute Cartesian coordinates (X,Y,Z). | |
void | set_ori (double xa0, double ya0, double za0) |
Sets a new origin. | |
void | set_rot_phi (double phi0) |
Sets a new rotation angle. | |
Public Attributes | |
Coord | rsxdxdr |
in the nucleus; \ in the shells; \ in the outermost compactified domain. | |
Coord | rsx2drdx |
in the nucleus and the shells; \ in the outermost compactified 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 | drdt |
in the nucleus and in the non-compactified shells; \ in the compactified external domain (CED). | |
Coord | stdrdp |
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 | srstdrdp |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | sr2drdt |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | sr2stdrdp |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | d2rdx2 |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | lapr_tp |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | d2rdtdx |
in the nucleus and in the non-compactified shells; \ in the compactified outer domain. | |
Coord | sstd2rdpdx |
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. | |
Coord | r |
r coordinate centered on the grid | |
Coord | tet |
coordinate centered on the grid | |
Coord | phi |
coordinate centered on the grid | |
Coord | sint |
| |
Coord | cost |
| |
Coord | sinp |
| |
Coord | cosp |
| |
Coord | x |
x coordinate centered on the grid | |
Coord | y |
y coordinate centered on the grid | |
Coord | z |
z coordinate centered on the grid | |
Coord | xa |
Absolute x coordinate. | |
Coord | ya |
Absolute y coordinate. | |
Coord | za |
Absolute z coordinate. | |
Protected Member Functions | |
virtual void | reset_coord () |
Resets all the member Coords . | |
Protected Attributes | |
const Mg3d * | mg |
Pointer on the multi-grid Mgd3 on which this is defined. | |
double | ori_x |
Absolute coordinate x of the origin. | |
double | ori_y |
Absolute coordinate y of the origin. | |
double | ori_z |
Absolute coordinate z of the origin. | |
double | rot_phi |
Angle between the x --axis and X --axis. | |
Base_vect_spher | bvect_spher |
Orthonormal vectorial basis associated with the coordinates of the mapping. | |
Base_vect_cart | bvect_cart |
Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e. | |
Metric_flat * | p_flat_met_spher |
Pointer onto the flat metric associated with the spherical coordinates and with components expressed in the triad bvect_spher . | |
Metric_flat * | p_flat_met_cart |
Pointer onto the flat metric associated with the Cartesian coordinates and with components expressed in the triad bvect_cart . | |
Cmp * | p_cmp_zero |
The null Cmp. | |
Map_af * | p_mp_angu |
Pointer on the "angular" mapping. | |
Private Member Functions | |
void | set_coord () |
Assignement of the building functions to the member Coords . | |
void | fait_poly () |
Construction of the polynomials and . | |
virtual ostream & | operator>> (ostream &) const |
Operator >>. | |
Private Attributes | |
double * | alpha |
Array (size: mg->nzone ) of the values of in each domain. | |
double * | beta |
Array (size: mg->nzone ) of the values of in each domain. | |
Tbl ** | aa |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl ** | daa |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl ** | ddaa |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl | aasx |
Values at the nr collocation points of in the nucleus. | |
Tbl | aasx2 |
Values at the nr collocation points of in the nucleus. | |
Tbl | zaasx |
Values at the nr collocation points of in the outermost compactified domain. | |
Tbl | zaasx2 |
Values at the nr collocation points of in the outermost compactified domain. | |
Tbl ** | bb |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl ** | dbb |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl ** | ddbb |
Array (size: mg->nzone ) of Tbl which stores the values of in each domain. | |
Tbl | bbsx |
Values at the nr collocation points of in the nucleus. | |
Tbl | bbsx2 |
Values at the nr collocation points of in the nucleus. | |
Valeur | ff |
Values of the function at the nt*np angular collocation points in each domain. | |
Valeur | gg |
Values of the function at the nt*np angular collocation points in each domain. | |
Friends | |
Mtbl * | map_et_fait_r (const Map *) |
Mtbl * | map_et_fait_tet (const Map *) |
Mtbl * | map_et_fait_phi (const Map *) |
Mtbl * | map_et_fait_sint (const Map *) |
Mtbl * | map_et_fait_cost (const Map *) |
Mtbl * | map_et_fait_sinp (const Map *) |
Mtbl * | map_et_fait_cosp (const Map *) |
Mtbl * | map_et_fait_x (const Map *) |
Mtbl * | map_et_fait_y (const Map *) |
Mtbl * | map_et_fait_z (const Map *) |
Mtbl * | map_et_fait_xa (const Map *) |
Mtbl * | map_et_fait_ya (const Map *) |
Mtbl * | map_et_fait_za (const Map *) |
Mtbl * | map_et_fait_xsr (const Map *) |
Mtbl * | map_et_fait_dxdr (const Map *) |
Mtbl * | map_et_fait_drdt (const Map *) |
Mtbl * | map_et_fait_stdrdp (const Map *) |
Mtbl * | map_et_fait_srdrdt (const Map *) |
Mtbl * | map_et_fait_srstdrdp (const Map *) |
Mtbl * | map_et_fait_sr2drdt (const Map *) |
Mtbl * | map_et_fait_sr2stdrdp (const Map *) |
Mtbl * | map_et_fait_d2rdx2 (const Map *) |
Mtbl * | map_et_fait_lapr_tp (const Map *) |
Mtbl * | map_et_fait_d2rdtdx (const Map *) |
Mtbl * | map_et_fait_sstd2rdpdx (const Map *) |
Mtbl * | map_et_fait_sr2d2rdt2 (const Map *) |
Mtbl * | map_et_fait_rsxdxdr (const Map *) |
Mtbl * | map_et_fait_rsx2drdx (const Map *) |
ostream & | operator<< (ostream &, const Map &) |
Operator <<. |
Radial mapping of rather general form.
()
This mapping relates the grid coordinates and the physical coordinates in the following manner [see Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998) for details]: , and
Definition at line 2748 of file map.h.
Map_et::Map_et | ( | const Mg3d & | mgrille, | |
const double * | r_limits | |||
) |
Standard Constructor.
mgrille | [input] Multi-domain grid on which the mapping is defined | |
r_limits | [input] Array (size: number of domains + 1) of the value of r at the boundaries of the various domains :
|
Definition at line 145 of file map_et.C.
References alpha, beta, fait_poly(), ff, Mg3d::get_nzone(), Mg3d::get_type_r(), gg, Map::mg, set_coord(), Valeur::set_etat_zero(), and Valeur::std_base_scal().
Constructor using the equation of the surface of the star.
mgrille | [input] Multi-domain grid on which the mapping is defined It must contains at least one shell. | |
r_limits | [input] Array (size: number of domains + 1) of the value of r at the boundaries of the various domains :
| |
tab | [input] equation of the surface between the nucleus and the first shell in the form : , where and are the values of the angular colocation points. |
Definition at line 219 of file map_et.C.
References alpha, Valeur::annule(), Valeur::annule_hard(), beta, fait_poly(), ff, Base_val::get_base_p(), Tbl::get_dim(), Tbl::get_ndim(), Mg3d::get_np(), Mg3d::get_nt(), Mg3d::get_nzone(), gg, max(), min(), P_COSSIN, Valeur::set(), Tbl::set(), set_coord(), Valeur::set_etat_c_qcq(), Tbl::set_etat_qcq(), Valeur::std_base_scal(), and Mg3d::std_base_scal().
Map_et::Map_et | ( | const Map_et & | mpi | ) |
Copy constructor.
Definition at line 384 of file map_et.C.
References alpha, beta, fait_poly(), Mg3d::get_nzone(), Map::mg, and set_coord().
Map_et::Map_et | ( | const Mg3d & | mgi, | |
FILE * | fich | |||
) |
Constructor from a file (see sauve(FILE*)
).
Definition at line 445 of file map_et.C.
References alpha, beta, fait_poly(), fread_be(), Mg3d::get_nzone(), Map::mg, and set_coord().
Map_et::~Map_et | ( | ) | [virtual] |
Adaptation of the mapping to a given scalar field.
Computes the functions and as well as the factors and , so that the boundaries of some domains coincide with isosurfaces of the scalar field ent
.
ent | [input] scalar field, the isosurfaces of which are used to determine the mapping | |
par | [input/output] parameters of the computation: \ par.get_int(0) : maximum number of iterations to locate zeros by the secant method \ par.get_int(1) : number of domains where the adjustment to the isosurfaces of ent is to be performed \ par.get_int(2) : number of domains nz_search where the isosurfaces will be searched : the routine scans the nz_search innermost domains, starting from the domain of index nz_search-1 . NB: the field ent must be continuous over these domains \ par.get_int(3) : 1 = performs the full computation, 0 = performs only the rescaling by the factor par.get_double_mod(0) \ par.get_int(4) : theta index of the collocation point [using the notations of Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998)] defining an isosurface of ent \ par.get_int(5) : phi index of the collocation point [using the notations of Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998)] defining an isosurface of ent \ par.get_int_mod(0) [output] : number of iterations actually used in the secant method \ par.get_double(0) : required absolute precision in the determination of zeros by the secant method \ par.get_double(1) : factor by which the values of and [using the notations of Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998)] will be multiplied : 1 = regular mapping, 0 = contracting mapping \ par.get_double(2) : factor by which all the radial distances will be multiplied \ par.get_tbl(0) : array of values of the field ent to define the isosurfaces. | |
nbr\_filtre | [input] Number of the last coefficients in set to zero. |
Implements Map.
Definition at line 104 of file map_et_adapt.C.
References alpha, beta, Valeur::c, Valeur::c_cf, Valeur::coef(), ff, Param::get_double(), Mtbl::get_etat(), Valeur::get_etat(), Itbl::get_etat(), Tbl::get_etat(), Param::get_int(), Param::get_int_mod(), Valeur::get_mg(), Cmp::get_mp(), Tbl::get_ndim(), Mg3d::get_np(), Mg3d::get_nt(), Mg3d::get_nzone(), Tbl::get_taille(), Param::get_tbl(), Mg3d::get_type_r(), gg, homothetie(), max(), Map::mg, min(), MSQ_P, P_COSSIN, P_COSSIN_P, reset_coord(), Mtbl_cf::set(), Valeur::set_etat_cf_qcq(), Tbl::set_etat_qcq(), Tbl::set_etat_zero(), Valeur::std_base_scal(), Mtbl_cf::t, Mtbl::t, Itbl::t, Tbl::t, Cmp::va, and val_r_jk().
const Cmp& Map::cmp_zero | ( | ) | const [inline, inherited] |
void Map_radial::comp_p_from_cartesian | ( | const Cmp & | v_x, | |
const Cmp & | v_y, | |||
Cmp & | v_p | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 172 of file map_radial_comp_rtp.C.
References Map_radial::comp_p_from_cartesian().
void Map_radial::comp_p_from_cartesian | ( | const Scalar & | v_x, | |
const Scalar & | v_y, | |||
Scalar & | v_p | |||
) | const [virtual, inherited] |
Computes the Spherical component (with respect to bvect_spher
) of a vector given by its cartesian components with respect to bvect_cart
.
v_x | [input] x-component of the vector | |
v_y | [input] y-component of the vector | |
v_p | [output] -component of the vector |
Implements Map.
Definition at line 179 of file map_radial_comp_rtp.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_cp(), and Scalar::set_dzpuis().
void Map_radial::comp_r_from_cartesian | ( | const Cmp & | v_x, | |
const Cmp & | v_y, | |||
const Cmp & | v_z, | |||
Cmp & | v_r | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 61 of file map_radial_comp_rtp.C.
References Map_radial::comp_r_from_cartesian().
void Map_radial::comp_r_from_cartesian | ( | const Scalar & | v_x, | |
const Scalar & | v_y, | |||
const Scalar & | v_z, | |||
Scalar & | v_r | |||
) | const [virtual, inherited] |
Computes the Spherical r component (with respect to bvect_spher
) of a vector given by its cartesian components with respect to bvect_cart
.
v_x | [input] x-component of the vector | |
v_y | [input] y-component of the vector | |
v_z | [input] z-component of the vector | |
v_r | [output] r -component of the vector |
Implements Map.
Definition at line 68 of file map_radial_comp_rtp.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_cp(), Valeur::mult_ct(), Valeur::mult_sp(), Valeur::mult_st(), and Scalar::set_dzpuis().
void Map_radial::comp_t_from_cartesian | ( | const Cmp & | v_x, | |
const Cmp & | v_y, | |||
const Cmp & | v_z, | |||
Cmp & | v_t | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 117 of file map_radial_comp_rtp.C.
References Map_radial::comp_t_from_cartesian().
void Map_radial::comp_t_from_cartesian | ( | const Scalar & | v_x, | |
const Scalar & | v_y, | |||
const Scalar & | v_z, | |||
Scalar & | v_t | |||
) | const [virtual, inherited] |
Computes the Spherical component (with respect to bvect_spher
) of a vector given by its cartesian components with respect to bvect_cart
.
v_x | [input] x-component of the vector | |
v_y | [input] y-component of the vector | |
v_z | [input] z-component of the vector | |
v_t | [output] -component of the vector |
Implements Map.
Definition at line 124 of file map_radial_comp_rtp.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_cp(), Valeur::mult_ct(), Valeur::mult_sp(), Valeur::mult_st(), and Scalar::set_dzpuis().
void Map_radial::comp_x_from_spherical | ( | const Cmp & | v_r, | |
const Cmp & | v_theta, | |||
const Cmp & | v_phi, | |||
Cmp & | v_x | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 64 of file map_radial_comp_xyz.C.
References Map_radial::comp_x_from_spherical().
void Map_radial::comp_x_from_spherical | ( | const Scalar & | v_r, | |
const Scalar & | v_theta, | |||
const Scalar & | v_phi, | |||
Scalar & | v_x | |||
) | const [virtual, inherited] |
Computes the Cartesian x component (with respect to bvect_cart
) of a vector given by its spherical components with respect to bvect_spher
.
v_r | [input] r -component of the vector | |
v_theta | [input] -component of the vector | |
v_phi | [input] -component of the vector | |
v_x | [output] x-component of the vector |
Implements Map.
Definition at line 72 of file map_radial_comp_xyz.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_cp(), Valeur::mult_ct(), Valeur::mult_sp(), Valeur::mult_st(), and Scalar::set_dzpuis().
void Map_radial::comp_y_from_spherical | ( | const Cmp & | v_r, | |
const Cmp & | v_theta, | |||
const Cmp & | v_phi, | |||
Cmp & | v_y | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 122 of file map_radial_comp_xyz.C.
References Map_radial::comp_y_from_spherical().
void Map_radial::comp_y_from_spherical | ( | const Scalar & | v_r, | |
const Scalar & | v_theta, | |||
const Scalar & | v_phi, | |||
Scalar & | v_y | |||
) | const [virtual, inherited] |
Computes the Cartesian y component (with respect to bvect_cart
) of a vector given by its spherical components with respect to bvect_spher
.
v_r | [input] r -component of the vector | |
v_theta | [input] -component of the vector | |
v_phi | [input] -component of the vector | |
v_y | [output] y-component of the vector |
Implements Map.
Definition at line 131 of file map_radial_comp_xyz.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_cp(), Valeur::mult_ct(), Valeur::mult_sp(), Valeur::mult_st(), and Scalar::set_dzpuis().
void Map_radial::comp_z_from_spherical | ( | const Cmp & | v_r, | |
const Cmp & | v_theta, | |||
Cmp & | v_z | |||
) | const [virtual, inherited] |
Cmp
version
Implements Map.
Definition at line 180 of file map_radial_comp_xyz.C.
References Map_radial::comp_z_from_spherical().
void Map_radial::comp_z_from_spherical | ( | const Scalar & | v_r, | |
const Scalar & | v_theta, | |||
Scalar & | v_z | |||
) | const [virtual, inherited] |
Computes the Cartesian z component (with respect to bvect_cart
) of a vector given by its spherical components with respect to bvect_spher
.
v_r | [input] r -component of the vector | |
v_theta | [input] -component of the vector | |
v_z | [output] z-component of the vector |
Implements Map.
Definition at line 188 of file map_radial_comp_xyz.C.
References Scalar::check_dzpuis(), Scalar::dz_nonzero(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Scalar::get_spectral_va(), Valeur::mult_st(), and Scalar::set_dzpuis().
void Map::convert_absolute | ( | double | xx, | |
double | yy, | |||
double | zz, | |||
double & | rr, | |||
double & | theta, | |||
double & | pphi | |||
) | const [inherited] |
Determines the coordinates corresponding to given absolute Cartesian coordinates (X,Y,Z).
xx | [input] value of the coordinate x (absolute frame) | |
yy | [input] value of the coordinate y (absolute frame) | |
zz | [input] value of the coordinate z (absolute frame) | |
rr | [output] value of r | |
theta | [output] value of | |
pphi | [output] value of |
Definition at line 298 of file map.C.
References Map::ori_x, Map::ori_y, Map::ori_z, Map::rot_phi, and sqrt().
void Map_et::dalembert | ( | Param & | par, | |
Scalar & | fJp1, | |||
const Scalar & | fJ, | |||
const Scalar & | fJm1, | |||
const Scalar & | source | |||
) | const [virtual] |
Not yet implemented.
Implements Map.
Definition at line 65 of file map_et_dalembert.C.
References Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), and Map::mg.
void Map_radial::dec2_dzpuis | ( | Scalar & | ci | ) | const [virtual, inherited] |
Decreases by 2 the value of dzpuis
of a Scalar
and changes accordingly its values in the compactified external domain (CED).
Implements Map.
Definition at line 744 of file map_radial_r_manip.C.
References Valeur::annule(), Scalar::get_dzpuis(), Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Scalar::set_dzpuis(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Map_radial::xsr.
void Map_radial::dec_dzpuis | ( | Scalar & | ci | ) | const [virtual, inherited] |
Decreases by 1 the value of dzpuis
of a Scalar
and changes accordingly its values in the compactified external domain (CED).
Implements Map.
Definition at line 639 of file map_radial_r_manip.C.
References Valeur::annule(), Scalar::get_dzpuis(), Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Scalar::set_dzpuis(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Map_radial::xsr.
void Map_radial::div_cost | ( | Scalar & | ci | ) | const [virtual, inherited] |
Division by of a Scalar
.
Implements Map.
Definition at line 81 of file map_radial_th_manip.C.
References Scalar::get_etat(), Valeur::get_mg(), Map::mg, Valeur::scost(), Scalar::set_etat_qcq(), and Scalar::set_spectral_va().
void Map_radial::div_r | ( | Scalar & | ci | ) | const [virtual, inherited] |
Division by r of a Scalar
.
Implements Map.
Definition at line 510 of file map_radial_r_manip.C.
References Scalar::annule(), Tensor::annule_domain(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), Valeur::sx(), and Map_radial::xsr.
void Map_radial::div_r_zec | ( | Scalar & | uu | ) | const [virtual, inherited] |
Division by r (in the compactified external domain only) of a Scalar
.
Implements Map.
Definition at line 581 of file map_radial_r_manip.C.
References Valeur::annule(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Valeur::mult_xm1_zec(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Map_radial::xsr.
void Map_radial::div_rsint | ( | Scalar & | ci | ) | const [virtual, inherited] |
Division by of a Scalar
.
Implements Map.
Definition at line 430 of file map_radial_r_manip.C.
References Scalar::annule(), Tensor::annule_domain(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), Valeur::ssint(), Valeur::sx(), and Map_radial::xsr.
void Map_radial::div_sint | ( | Scalar & | ci | ) | const [virtual, inherited] |
Division by of a Scalar
.
Implements Map.
Definition at line 129 of file map_radial_th_manip.C.
References Scalar::get_etat(), Valeur::get_mg(), Map::mg, Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Valeur::ssint().
void Map_radial::div_tant | ( | Scalar & | ci | ) | const [virtual, inherited] |
Division by of a Scalar
.
Implements Map.
Definition at line 154 of file map_radial_th_manip.C.
References Scalar::get_etat(), Valeur::get_mg(), Map::mg, Valeur::mult_ct(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Valeur::ssint().
Internal function intended to be used by Map::poisson_vect
and Map::poisson_vect_oohara
.
It constructs the sets of parameters used for each scalar Poisson equation from the one for the vectorial one.
para | [input] : the Param used for the resolution of the vectorial Poisson equation : \ para.int() maximum number of iteration.\ para.double(0) relaxation parameter.\ para.double(1) required precision. \ para.tenseur_mod() source of the vectorial part at the previous step.\ para.cmp_mod() source of the scalar part at the previous step. | |
i | [input] number of the scalar Poisson equation that is being solved (values from 0 to 2 for the componants of the vectorial part and 3 for the scalar one). |
Implements Map.
Definition at line 71 of file map_poisson_vect.C.
References Param::add_cmp_mod(), Param::add_double(), Param::add_int(), Param::add_int_mod(), Param::get_cmp_mod(), Param::get_double(), Param::get_int(), Param::get_int_mod(), Param::get_tenseur_mod(), and Tenseur::set().
Computes of a Scalar
.
Note that in the compactified external domain (CED), the dzpuis
flag of the output is 2 if the input has dzpuis
= 0, and is increased by 1 in other cases.
uu | [input] field to consider | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 211 of file map_et_deriv.C.
References Tensor::annule_domain(), Valeur::coef(), Scalar::dsdx(), Map_radial::dxdr, Valeur::get_base(), Scalar::get_dzpuis(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Coord::set(), Scalar::set_dzpuis(), Scalar::set_etat_zero(), Scalar::set_spectral_base(), Scalar::set_spectral_va(), and Map_radial::xsr.
Computes of a Cmp
.
Note that in the compactified external domain (CED), it computes .
ci | [input] field to consider | |
resu | [output] derivative of ci |
Implements Map.
Definition at line 183 of file map_et_deriv.C.
References Cmp::check_dzpuis(), Map_radial::dxdr, Cmp::get_etat(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Cmp::set_dzpuis(), Cmp::set_etat_zero(), and Cmp::va.
Computes of a Scalar
if the description is affine and if it is logarithmic.
Note that in the compactified external domain (CED), the dzpuis
flag of the output is 2 if the input has dzpuis
= 0, and is increased by 1 in other cases.
uu | [input] field to consider | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 270 of file map_et_deriv.C.
References Tensor::annule_domain(), Valeur::coef(), Scalar::dsdx(), Map_radial::dxdr, Valeur::get_base(), Scalar::get_dzpuis(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Coord::set(), Scalar::set_dzpuis(), Scalar::set_etat_zero(), Scalar::set_spectral_base(), Scalar::set_spectral_va(), and Map_radial::xsr.
Computes of a Scalar
.
uu | [input] scalar field | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 625 of file map_et_deriv.C.
References Map_radial::drdt, Valeur::dsdt(), Valeur::dsdx(), Map_radial::dxdr, Valeur::get_base(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Scalar::get_spectral_va(), Map::mg, Valeur::set_base(), and Scalar::set_etat_zero().
Computes of a Scalar
.
Note that in the compactified external domain (CED), the dzpuis
flag of the output is 2 if the input has dzpuis
= 0, and is increased by 1 in other cases.
uu | [input] field to consider | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 119 of file map_et_deriv.C.
References Tensor::annule_domain(), Valeur::coef(), Scalar::dsdx(), Valeur::get_base(), Scalar::get_dzpuis(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Coord::set(), Valeur::set_base(), Scalar::set_dzpuis(), Scalar::set_etat_zero(), Scalar::set_spectral_base(), Scalar::set_spectral_va(), and Map_radial::xsr.
Computes of a Cmp
.
Note that in the compactified external domain (CED), it computes .
ci | [input] field to consider | |
resu | [output] derivative of ci |
Implements Map.
Definition at line 91 of file map_et_deriv.C.
References Cmp::check_dzpuis(), Cmp::dsdx(), Cmp::get_etat(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Cmp::set_dzpuis(), Cmp::set_etat_zero(), and Cmp::va.
void Map_et::fait_poly | ( | ) | [private] |
Construction of the polynomials and .
Definition at line 641 of file map_et.C.
References aa, aasx, aasx2, bb, bbsx, bbsx2, daa, dbb, ddaa, ddbb, Mg3d::get_grille3d(), Mg3d::get_nr(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Tbl::set(), Tbl::set_etat_qcq(), Tbl::set_etat_zero(), Map::x, zaasx, and zaasx2.
const Metric_flat & Map::flat_met_cart | ( | ) | const [inherited] |
Returns the flat metric associated with the Cartesian coordinates and with components expressed in the triad bvect_cart
.
Definition at line 327 of file map.C.
References Map::bvect_cart, and Map::p_flat_met_cart.
const Metric_flat & Map::flat_met_spher | ( | ) | const [inherited] |
Returns the flat metric associated with the spherical coordinates and with components expressed in the triad bvect_spher
.
Definition at line 317 of file map.C.
References Map::bvect_spher, and Map::p_flat_met_spher.
const double * Map_et::get_alpha | ( | ) | const |
const double * Map_et::get_beta | ( | ) | const |
const Base_vect_cart& Map::get_bvect_cart | ( | ) | const [inline, inherited] |
Returns the Cartesian basis associated with the coordinates (x,y,z) of the mapping, i.e.
the Cartesian coordinates related to by means of usual formulae.
Definition at line 787 of file map.h.
References Map::bvect_cart.
const Base_vect_spher& Map::get_bvect_spher | ( | ) | const [inline, inherited] |
Returns the orthonormal vectorial basis associated with the coordinates of the mapping.
Definition at line 779 of file map.h.
References Map::bvect_spher.
const Valeur & Map_et::get_ff | ( | ) | const |
const Valeur & Map_et::get_gg | ( | ) | const |
const Mg3d* Map::get_mg | ( | ) | const [inline, inherited] |
double Map::get_ori_x | ( | ) | const [inline, inherited] |
Returns the x coordinate of the origin.
Definition at line 764 of file map.h.
References Map::ori_x.
double Map::get_ori_y | ( | ) | const [inline, inherited] |
Returns the y coordinate of the origin.
Definition at line 766 of file map.h.
References Map::ori_y.
double Map::get_ori_z | ( | ) | const [inline, inherited] |
Returns the z coordinate of the origin.
Definition at line 768 of file map.h.
References Map::ori_z.
double Map::get_rot_phi | ( | ) | const [inline, inherited] |
Returns the angle between the x --axis and X --axis.
Definition at line 771 of file map.h.
References Map::rot_phi.
void Map_et::homothetie | ( | double | lambda | ) | [virtual] |
Sets a new radial scale.
lambda | [input] factor by which the value of r is to be multiplied |
Implements Map.
Definition at line 901 of file map_et.C.
References alpha, beta, Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, and reset_coord().
void Map_radial::inc2_dzpuis | ( | Scalar & | ci | ) | const [virtual, inherited] |
Increases by 2 the value of dzpuis
of a Scalar
and changes accordingly its values in the compactified external domain (CED).
Implements Map.
Definition at line 795 of file map_radial_r_manip.C.
References Valeur::annule(), Scalar::get_dzpuis(), Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Scalar::set_dzpuis(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Map_radial::xsr.
void Map_radial::inc_dzpuis | ( | Scalar & | ci | ) | const [virtual, inherited] |
Increases by 1 the value of dzpuis
of a Scalar
and changes accordingly its values in the compactified external domain (CED).
Implements Map.
Definition at line 692 of file map_radial_r_manip.C.
References Valeur::annule(), Scalar::get_dzpuis(), Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Scalar::set_dzpuis(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), and Map_radial::xsr.
Computes the integral over all space of a Cmp
.
The computed quantity is . The routine allocates a Tbl
(size: mg->nzone
) to store the result (partial integral) in each domain and returns a pointer to it.
Implements Map.
Definition at line 70 of file map_et_integ.C.
References Tbl::annule_hard(), Cmp::get_dzpuis(), Cmp::get_etat(), Mg3d::get_nzone(), Map::mg, rsx2drdx, Cmp::set_dzpuis(), and Cmp::va.
Computes the Laplacian of a scalar field (Cmp
version).
Implements Map.
Definition at line 176 of file map_et_lap.C.
References Valeur::annule(), Valeur::base, Cmp::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Valeur::dsdt(), Map_radial::dxdr, Cmp::get_etat(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Valeur::lapang(), Map_radial::lapr_tp, Map::mg, Valeur::set_base(), Cmp::set_dzpuis(), Cmp::set_etat_qcq(), Cmp::set_etat_zero(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Cmp::va, Map_radial::xsr, and Valeur::ylm().
Computes the Laplacian of a scalar field.
uu | [input] Scalar field u (represented as a Scalar ) the Laplacian of which is to be computed | |
zec_mult_r | [input] Determines the quantity computed in the compactified external domain (CED) : \ zec_mult_r = 0 : \ zec_mult_r = 2 : \ zec_mult_r = 4 (default) : | |
lap | [output] Laplacian of u |
Implements Map.
Definition at line 71 of file map_et_lap.C.
References Valeur::annule(), Valeur::base, Scalar::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Valeur::d2sdx2(), Valeur::dsdt(), Valeur::dsdx(), Map_radial::dxdr, Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Valeur::lapang(), Map_radial::lapr_tp, Map::mg, Valeur::set_base(), Scalar::set_dzpuis(), Scalar::set_etat_qcq(), Scalar::set_etat_zero(), Scalar::set_spectral_va(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Map_radial::xsr, and Valeur::ylm().
const Map_af & Map_et::mp_angu | ( | int | ) | const [virtual] |
Returns the "angular" mapping for the outside of domain l_zone
.
Valid only for the class Map_af
.
Implements Map.
Definition at line 1041 of file map_et.C.
References c_est_pas_fait(), and Map::p_mp_angu.
void Map_radial::mult_cost | ( | Scalar & | ci | ) | const [virtual, inherited] |
Multiplication by of a Scalar
.
Implements Map.
Definition at line 57 of file map_radial_th_manip.C.
References Scalar::get_etat(), Valeur::get_mg(), Map::mg, Valeur::mult_ct(), Scalar::set_etat_qcq(), and Scalar::set_spectral_va().
void Map_radial::mult_r | ( | Cmp & | ci | ) | const [virtual, inherited] |
Multiplication by r of a Cmp
.
In the CED, there is only a decrement of dzpuis
Implements Map.
Definition at line 215 of file map_radial_r_manip.C.
References Cmp::annule(), Valeur::base, Cmp::get_dzpuis(), Cmp::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Cmp::set_dzpuis(), Cmp::va, and Map_radial::xsr.
void Map_radial::mult_r | ( | Scalar & | uu | ) | const [virtual, inherited] |
Multiplication by r of a Scalar
, the dzpuis
of uu
is not changed.
Implements Map.
Definition at line 140 of file map_radial_r_manip.C.
References Scalar::annule(), Tensor::annule_domain(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), Valeur::sxm1_zec(), and Map_radial::xsr.
void Map_radial::mult_r_zec | ( | Scalar & | ci | ) | const [virtual, inherited] |
Multiplication by r (in the compactified external domain only) of a Scalar
.
Implements Map.
Definition at line 292 of file map_radial_r_manip.C.
References Valeur::annule(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Scalar::set_etat_qcq(), Scalar::set_spectral_va(), Valeur::sxm1_zec(), and Map_radial::xsr.
void Map_radial::mult_rsint | ( | Scalar & | ci | ) | const [virtual, inherited] |
Multiplication by of a Scalar
.
Implements Map.
Definition at line 351 of file map_radial_r_manip.C.
References Scalar::annule(), Tensor::annule_domain(), Valeur::base, Scalar::get_etat(), Valeur::get_mg(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Valeur::mult_st(), Valeur::mult_x(), Scalar::set_etat_qcq(), Scalar::set_spectral_va(), Valeur::sxm1_zec(), and Map_radial::xsr.
void Map_radial::mult_sint | ( | Scalar & | ci | ) | const [virtual, inherited] |
Multiplication by of a Scalar
.
Implements Map.
Definition at line 105 of file map_radial_th_manip.C.
References Scalar::get_etat(), Valeur::get_mg(), Map::mg, Valeur::mult_st(), Scalar::set_etat_qcq(), and Scalar::set_spectral_va().
void Map_et::operator= | ( | const Map_af & | mpa | ) | [virtual] |
Assignment to an affine mapping.
Implements Map_radial.
Definition at line 535 of file map_et.C.
References alpha, beta, ff, Map_af::get_alpha(), Map_af::get_beta(), Map::get_mg(), Mg3d::get_nzone(), Map::get_ori_x(), Map::get_ori_y(), Map::get_ori_z(), Map::get_rot_phi(), gg, Map::mg, reset_coord(), Map::set_ori(), and Map::set_rot_phi().
void Map_et::operator= | ( | const Map_et & | mp | ) | [virtual] |
Assignment to another Map_et
.
Definition at line 509 of file map_et.C.
References alpha, beta, ff, get_alpha(), get_beta(), Map::get_mg(), Mg3d::get_nzone(), Map::get_ori_x(), Map::get_ori_y(), Map::get_ori_z(), Map::get_rot_phi(), gg, Map::mg, reset_coord(), Map::set_ori(), and Map::set_rot_phi().
virtual bool Map::operator== | ( | const Map & | ) | const [pure virtual, inherited] |
Comparison operator (egality).
bool Map_et::operator== | ( | const Map & | mpi | ) | const [virtual] |
Comparison operator (egality).
Implements Map_radial.
Definition at line 980 of file map_et.C.
References alpha, beta, Map::bvect_cart, Map::bvect_spher, diffrelmax(), ff, Map::get_bvect_cart(), Map::get_bvect_spher(), Map::get_mg(), Mg3d::get_nzone(), Map::get_ori_x(), Map::get_ori_y(), Map::get_ori_z(), gg, max(), Map::mg, Map::ori_x, Map::ori_y, and Map::ori_z.
ostream & Map_et::operator>> | ( | ostream & | ost | ) | const [private, virtual] |
Operator >>.
Implements Map.
Definition at line 794 of file map_et.C.
References Valeur::affiche_seuil(), alpha, beta, ff, Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Mg3d::get_type_p(), Mg3d::get_type_t(), gg, Map::mg, Map::r, and val_r().
Computes the solution of a scalar Poisson equation.
Following the method explained in Sect. III.C of Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998), the Poisson equation is re-written as , where is the Laplacian in an affine mapping and R(u) contains the terms generated by the deviation of the mapping *this
from spherical symmetry. This equation is solved by iterations. At each step J the equation effectively solved is where
with in domain no. l and is a relaxation parameter.
source | [input] source of the Poisson equation | |
par | [input/output] parameters for the iterative method: \ par.get_int(0) : [input] maximum number of iterations \ par.get_double(0) : [input] relaxation parameter \ par.get_double(1) : [input] required precision: the iterative method is stopped as soon as the relative difference between and is greater than par.get_double(1) \ par.get_cmp_mod(0) : [input/output] input : Cmp containing (cf. the above equation) to start the iteration (if nothing is known a priori, this Cmp must be set to zero); output: value of , to used in a next call to the routine \ par.get_int_mod(0) : [output] number of iterations actually used to get the solution. | |
uu | [input/output] input : previously computed value of u to start the iteration (term R(u) ) (if nothing is known a priori, uu must be set to zero); output: solution u with the boundary condition u =0 at spatial infinity. |
Implements Map.
Definition at line 97 of file map_et_poisson.C.
References alpha, Valeur::annule(), Valeur::base, Cmp::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Cmp::dec2_dzpuis(), Cmp::dec_dzpuis(), diffrel(), Valeur::dsdt(), Map_radial::dxdr, Param::get_cmp_mod(), Param::get_double(), Cmp::get_dzpuis(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Valeur::lapang(), Map_radial::lapr_tp, max(), Map::mg, Map_af::poisson(), rsxdxdr, Valeur::set_base(), Cmp::set_dzpuis(), Cmp::set_etat_qcq(), Mtbl::set_etat_qcq(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Mtbl::t, Cmp::va, Map_radial::xsr, and Valeur::ylm().
void Map_et::poisson2d | ( | const Cmp & | source_mat, | |
const Cmp & | source_quad, | |||
Param & | par, | |||
Cmp & | uu | |||
) | const [virtual] |
Computes the solution of a 2-D Poisson equation.
The 2-D Poisson equation writes
source_mat | [input] Compactly supported part of the source of the 2-D Poisson equation (typically matter terms) | |
source_quad | [input] Non-compactly supported part of the source of the 2-D Poisson equation (typically quadratic terms) | |
par | [input/output] Parameters to control the resolution : \ par.get_double_mod(0) : [output] constant lambda such that the source of the equation effectively solved is source_mat + lambda * source_quad , in order to fulfill the virial identity GRV2. \ If the theta basis is T_SIN_I , the following arguments are required: \ par.get_int(0) : [input] maximum number of iterations \ par.get_double(0) : [input] relaxation parameter \ par.get_double(1) : [input] required precision: the iterative method is stopped as soon as the relative difference between and is greater than par.get_double(1) \ par.get_cmp_mod(0) : [input/output] input : Cmp containing to start the iteration (if nothing is known a priori, this Cmp must be set to zero); output: value of , to used in a next call to the routine \ par.get_int_mod(0) : [output] number of iterations actually used to get the solution. | |
uu | [input/output] solution u with the boundary condition u =0 at spatial infinity. |
Implements Map.
Definition at line 75 of file map_et_poisson2d.C.
References alpha, Mtbl::annule(), Valeur::base, Cmp::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Valeur::d2sdt2(), diffrel(), Valeur::dsdt(), Map_radial::dxdr, Param::get_cmp_mod(), Param::get_double(), Param::get_double_mod(), Cmp::get_dzpuis(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Cmp::import(), max(), Map::mg, Map_af::poisson2d(), rsxdxdr, Map_af::set_alpha(), Valeur::set_base(), Map_af::set_beta(), Cmp::set_dzpuis(), Cmp::set_etat_qcq(), Mtbl::set_etat_qcq(), Map_radial::sr2d2rdt2, Map_radial::sr2drdt, Map_radial::srdrdt, Valeur::sx(), Mtbl::t, T_COS_P, T_SIN_I, Cmp::va, val_r(), and Map_radial::xsr.
void Map_et::poisson_angu | ( | const Scalar & | source, | |
Param & | par, | |||
Scalar & | uu, | |||
double | lambda = 0 | |||
) | const [virtual] |
Computes the solution of the generalized angular Poisson equation.
The generalized angular Poisson equation is , where .
source | [input] source of the equation . | |
par | [input/output] possible parameters to control the resolution of the Poisson equation. See the actual implementation in the derived class of Map for documentation. | |
uu | [input/output] solution u | |
lambda | [input] coefficient in the above equation (default value = 0) |
Implements Map.
Definition at line 588 of file map_et_poisson.C.
References Valeur::base, Map_radial::d2rdtdx, Map_radial::d2rdx2, diffrel(), Valeur::dsdt(), Valeur::dsdx(), Map_radial::dxdr, Scalar::filtre_r(), Param::get_cmp_mod(), Param::get_double(), Scalar::get_dzpuis(), Scalar::get_etat(), Param::get_int(), Param::get_int_mod(), Tensor::get_mp(), Mg3d::get_nr(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Map_radial::lapr_tp, max(), Map::mg, Scalar::mult_r(), Map_af::poisson_angu(), Valeur::set_base(), Scalar::set_dzpuis(), Scalar::set_spectral_va(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, and Valeur::stdsdp().
void Map_radial::poisson_compact | ( | int | nzet, | |
const Cmp & | source, | |||
const Cmp & | aa, | |||
const Tenseur & | bb, | |||
const Param & | par, | |||
Cmp & | psi | |||
) | const [virtual, inherited] |
Resolution of the elliptic equation in the case of a multidomain stellar interior.
nzet | [input] number of domains covering the stellar interior | |
source | [input] source of the above equation | |
aa | [input] factor a in the above equation | |
bb | [input] vector b in the above equation | |
par | [input/output] possible parameters to control the resolution of the equation. See the actual implementation in the derived class of Map for documentation. | |
psi | [input/output] solution which satisfies . |
Implements Map.
Definition at line 449 of file map_radial_poisson_cpt.C.
References Cmp::annule(), Mtbl::annule_hard(), Tbl::annule_hard(), Map::bvect_spher, Valeur::c_cf, Valeur::coef(), diffrel(), Map_af::dsdr(), Cmp::dsdr(), Param::get_double(), Tenseur::get_etat(), Cmp::get_etat(), Mg3d::get_grille3d(), Param::get_int(), Param::get_int_mod(), Tenseur::get_mp(), Cmp::get_mp(), Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Tenseur::get_triad(), Cmp::laplacien(), Map_af::laplacien(), max(), Map::mg, min(), Map_radial::poisson_compact(), Mtbl::set(), Tbl::set(), Cmp::set_etat_qcq(), Cmp::set_etat_zero(), Cmp::srdsdt(), Cmp::srstdsdp(), Valeur::std_base_scal(), Tbl::t, Cmp::va, Grille3d::x, Valeur::ylm(), and Valeur::ylm_i().
void Map_radial::poisson_compact | ( | const Cmp & | source, | |
const Cmp & | aa, | |||
const Tenseur & | bb, | |||
const Param & | par, | |||
Cmp & | psi | |||
) | const [virtual, inherited] |
Resolution of the elliptic equation in the case where the stellar interior is covered by a single domain.
source | [input] source of the above equation | |
aa | [input] factor a in the above equation | |
bb | [input] vector b in the above equation | |
par | [input/output] parameters of the iterative method of resolution : \ par.get_int(0) : [input] maximum number of iterations \ par.get_double(0) : [input] required precision: the iterative method is stopped as soon as the relative difference between and is greater than par.get_double(0) \ par.get_double(1) : [input] relaxation parameter \ par.get_int_mod(0) : [output] number of iterations actually used to get the solution. | |
psi | [input/output]: input : previously computed value of to start the iteration (if nothing is known a priori, psi must be set to zero); output: solution which satisfies . |
Implements Map.
Definition at line 151 of file map_radial_poisson_cpt.C.
References Cmp::annule(), Map::bvect_spher, Valeur::c_cf, Valeur::coef(), Valeur::d2sdx2(), diffrel(), Cmp::dsdr(), Valeur::dsdx(), Map_radial::dxdr, Param::get_double(), Tenseur::get_etat(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Tenseur::get_mp(), Cmp::get_mp(), Mg3d::get_nr(), Mg3d::get_nzone(), Tenseur::get_triad(), Valeur::lapang(), Cmp::laplacien(), max(), Map::mg, min(), Valeur::mult_x(), Cmp::set_etat_qcq(), Cmp::set_etat_zero(), Cmp::srdsdt(), Cmp::srstdsdp(), Valeur::std_base_scal(), Valeur::sx(), Cmp::va, Valeur::ylm(), and Valeur::ylm_i().
void Map_et::poisson_interne | ( | const Cmp & | source, | |
const Valeur & | limite, | |||
Param & | par, | |||
Cmp & | pot | |||
) | const [virtual] |
Computes the solution of a Poisson equation in the shell .
imposing a boundary condition at the surface of the star
source | [input] : source of the equation. | |
limite | [input] : limite [num_front] contains the angular function being the boudary condition. | |
par | [input] : parameters of the computation. | |
pot | [output] : result. |
Implements Map.
Definition at line 270 of file cmp_pde_frontiere.C.
References alpha, Valeur::base, Map_radial::d2rdtdx, Map_radial::d2rdx2, diffrel(), Valeur::dsdt(), Map_radial::dxdr, Param::get_cmp_mod(), Param::get_double(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Cmp::get_mp(), Mg3d::get_nzone(), Valeur::lapang(), Map_radial::lapr_tp, max(), Map::mg, Map_af::poisson_interne(), rsxdxdr, Valeur::set_base(), Cmp::set_etat_qcq(), Mtbl::set_etat_qcq(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Mtbl::t, Cmp::va, Map_radial::xsr, and Valeur::ylm().
void Map_et::poisson_regular | ( | const Cmp & | source, | |
int | k_div, | |||
int | nzet, | |||
double | unsgam1, | |||
Param & | par, | |||
Cmp & | uu, | |||
Cmp & | uu_regu, | |||
Cmp & | uu_div, | |||
Tenseur & | duu_div, | |||
Cmp & | source_regu, | |||
Cmp & | source_div | |||
) | const [virtual] |
Computes the solution of a scalar Poisson equation.
The regularized source
source | [input] source of the Poisson equation . | |
k_div | [input] regularization degree of the procedure | |
nzet | [input] number of domains covering the star | |
unsgam1 | [input] parameter where denotes the adiabatic index. | |
par | [input/output] parameters for the iterative method: \ par.get_int(0) : [input] maximum number of iterations \ par.get_double(0) : [input] relaxation parameter \ par.get_double(1) : [input] required precision: the iterative method is stopped as soon as the relative difference between and is greater than par.get_double(1) \ par.get_cmp_mod(0) : [input/output] input : Cmp containing (cf. the above equation) to start the iteration (if nothing is known a priori, this Cmp must be set to zero); output: value of , to used in a next call to the routine \ par.get_int_mod(0) : [output] number of iterations actually used to get the solution. | |
uu | [input/output] input : previously computed value of u to start the iteration (term R(u) ) (if nothing is known a priori, uu must be set to zero); output: solution u with the boundary condition u =0 at spatial infinity. | |
uu_regu | [output] solution of the regular part of the source. | |
uu_div | [output] solution of the diverging part of the source. | |
duu_div | [output] derivative of the diverging potential | |
source_regu | [output] regularized source | |
source_div | [output] diverging part of the source |
Implements Map.
Definition at line 80 of file map_et_poisson_regu.C.
References alpha, Valeur::annule(), Valeur::base, Cmp::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Cmp::dec2_dzpuis(), Cmp::dec_dzpuis(), diffrel(), Valeur::dsdt(), Map_radial::dxdr, Map::get_bvect_spher(), Param::get_cmp_mod(), Param::get_double(), Cmp::get_dzpuis(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Valeur::lapang(), Map_radial::lapr_tp, max(), Map::mg, Map_af::poisson_regular(), rsxdxdr, Tenseur::set(), Valeur::set_base(), Cmp::set_dzpuis(), Cmp::set_etat_qcq(), Mtbl::set_etat_qcq(), Tenseur::set_triad(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Mtbl::t, Cmp::va, Map_radial::xsr, and Valeur::ylm().
Computes the solution of a scalar Poisson equation with a Tau method.
Following the method explained in Sect. III.C of Bonazzola, Gourgoulhon & Marck, Phys. Rev. D 58 , 104020 (1998), the Poisson equation is re-written as , where is the Laplacian in an affine mapping and R(u) contains the terms generated by the deviation of the mapping *this
from spherical symmetry. This equation is solved by iterations. At each step J the equation effectively solved is where
with in domain no. l and is a relaxation parameter.
source | [input] source of the Poisson equation | |
par | [input/output] parameters for the iterative method: \ par.get_int(0) : [input] maximum number of iterations \ par.get_double(0) : [input] relaxation parameter \ par.get_double(1) : [input] required precision: the iterative method is stopped as soon as the relative difference between and is greater than par.get_double(1) \ par.get_cmp_mod(0) : [input/output] input : Cmp containing (cf. the above equation) to start the iteration (if nothing is known a priori, this Cmp must be set to zero); output: value of , to used in a next call to the routine \ par.get_int_mod(0) : [output] number of iterations actually used to get the solution. | |
uu | [input/output] input : previously computed value of u to start the iteration (term R(u) ) (if nothing is known a priori, uu must be set to zero); output: solution u with the boundary condition u =0 at spatial infinity. |
Implements Map.
Definition at line 346 of file map_et_poisson.C.
References alpha, Valeur::annule(), Valeur::base, Cmp::check_dzpuis(), Map_radial::d2rdtdx, Map_radial::d2rdx2, Cmp::dec2_dzpuis(), Cmp::dec_dzpuis(), diffrel(), Valeur::dsdt(), Map_radial::dxdr, Param::get_cmp_mod(), Param::get_double(), Cmp::get_dzpuis(), Cmp::get_etat(), Param::get_int(), Param::get_int_mod(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Valeur::lapang(), Map_radial::lapr_tp, max(), Map::mg, Map_af::poisson_tau(), rsxdxdr, Valeur::set_base(), Cmp::set_dzpuis(), Cmp::set_etat_qcq(), Mtbl::set_etat_qcq(), Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Valeur::stdsdp(), Valeur::sx(), Mtbl::t, Cmp::va, Map_radial::xsr, and Valeur::ylm().
Computes the radial primitive which vanishes for .
i.e. the function
uu | [input] function f (must have a dzpuis = 2) | |
resu | [input] function F | |
null_infty | if true (default), the primitive is null at infinity (or on the grid boundary). F is null at the center otherwise |
Implements Map.
Definition at line 106 of file map_et_integ.C.
virtual void Map::reevaluate | ( | const Map * | mp_prev, | |
int | nzet, | |||
Scalar & | uu | |||
) | const [pure virtual, inherited] |
Recomputes the values of a Scalar
at the collocation points after a change in the mapping.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Scalar previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Scalae at the grid points defined by *this . |
virtual void Map::reevaluate | ( | const Map * | mp_prev, | |
int | nzet, | |||
Cmp & | uu | |||
) | const [pure virtual, inherited] |
Recomputes the values of a Cmp
at the collocation points after a change in the mapping.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Cmp previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Cmp at the grid points defined by *this . |
void Map_radial::reevaluate | ( | const Map * | mp_prev, | |
int | nzet, | |||
Scalar & | uu | |||
) | const [virtual, inherited] |
Recomputes the values of a Scalar
at the collocation points after a change in the mapping.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Scalar previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Scalar at the grid points defined by *this . |
Definition at line 169 of file map_radial_reevaluate.C.
References Param::add_double(), Param::add_int(), Param::add_int_mod(), Scalar::annule(), Coord::c, Valeur::c, Valeur::c_cf, Valeur::coef(), Coord::fait(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Map::mg, Map::r, Valeur::set_etat_c_qcq(), Tbl::set_etat_qcq(), Mtbl::set_etat_qcq(), Scalar::set_spectral_va(), Mtbl::t, Map_radial::val_lx_jk(), and Mtbl_cf::val_point_jk().
Recomputes the values of a Cmp
at the collocation points after a change in the mapping.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Cmp previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Cmp at the grid points defined by *this . |
Definition at line 54 of file map_radial_reevaluate.C.
References Param::add_double(), Param::add_int(), Param::add_int_mod(), Cmp::annule(), Coord::c, Coord::fait(), Cmp::get_dzpuis(), Cmp::get_etat(), Cmp::get_mp(), Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Map::mg, Map::r, Tbl::set_etat_qcq(), Mtbl::set_etat_qcq(), Mtbl::t, Cmp::va, Map_radial::val_lx_jk(), and Mtbl_cf::val_point_jk().
virtual void Map::reevaluate_symy | ( | const Map * | mp_prev, | |
int | nzet, | |||
Scalar & | uu | |||
) | const [pure virtual, inherited] |
Recomputes the values of a Scalar
at the collocation points after a change in the mapping.
Case where the Scalar
is symmetric with respect the plane y=0.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Scalar previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Scalar at the grid points defined by *this . |
virtual void Map::reevaluate_symy | ( | const Map * | mp_prev, | |
int | nzet, | |||
Cmp & | uu | |||
) | const [pure virtual, inherited] |
Recomputes the values of a Cmp
at the collocation points after a change in the mapping.
Case where the Cmp
is symmetric with respect the plane y=0.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Cmp previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Cmp at the grid points defined by *this . |
void Map_radial::reevaluate_symy | ( | const Map * | mp_prev, | |
int | nzet, | |||
Scalar & | uu | |||
) | const [virtual, inherited] |
Recomputes the values of a Scalar
at the collocation points after a change in the mapping.
Case where the Scalar
is symmetric with respect to the plane y=0.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Scalar previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Scalar at the grid points defined by *this . |
Definition at line 189 of file map_radial_reeval_symy.C.
References Param::add_double(), Param::add_int(), Param::add_int_mod(), Scalar::annule(), Coord::c, Valeur::c, Valeur::c_cf, Valeur::coef(), Coord::fait(), Scalar::get_dzpuis(), Scalar::get_etat(), Tensor::get_mp(), Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Mg3d::get_type_p(), Map::mg, Map::r, Valeur::set_etat_c_qcq(), Tbl::set_etat_qcq(), Mtbl::set_etat_qcq(), Scalar::set_spectral_va(), Mtbl::t, Map_radial::val_lx_jk(), and Mtbl_cf::val_point_jk_symy().
void Map_radial::reevaluate_symy | ( | const Map * | mp_prev, | |
int | nzet, | |||
Cmp & | uu | |||
) | const [virtual, inherited] |
Recomputes the values of a Cmp
at the collocation points after a change in the mapping.
Case where the Cmp
is symmetric with respect to the plane y=0.
mp_prev | [input] Previous value of the mapping. | |
nzet | [input] Number of domains where the computation must be done: the computation is performed for the domains of index ; uu is set to zero in the other domains. | |
uu | [input/output] input : Cmp previously computed on the mapping *mp_prev ; ouput : values of (logically) the same Cmp at the grid points defined by *this . |
Definition at line 55 of file map_radial_reeval_symy.C.
References Param::add_double(), Param::add_int(), Param::add_int_mod(), Cmp::annule(), Coord::c, Coord::fait(), Cmp::get_dzpuis(), Cmp::get_etat(), Cmp::get_mp(), Mg3d::get_np(), Mg3d::get_nr(), Mg3d::get_nt(), Mg3d::get_nzone(), Mg3d::get_type_p(), Map::mg, Map::r, Tbl::set_etat_qcq(), Mtbl::set_etat_qcq(), Mtbl::t, Cmp::va, Map_radial::val_lx_jk(), and Mtbl_cf::val_point_jk_symy().
void Map_et::reset_coord | ( | ) | [protected, virtual] |
Resets all the member Coords
.
Reimplemented from Map_radial.
Definition at line 624 of file map_et.C.
References Coord::del_t(), rsx2drdx, and rsxdxdr.
void Map_et::resize | ( | int | l, | |
double | lambda | |||
) | [virtual] |
Rescales the outer boundary of one domain.
The inner boundary is unchanged. The inner boundary of the next domain is changed to match the new outer boundary.
l | [input] index of the domain | |
lambda | [input] factor by which the value of defining the outer boundary of the domain is to be multiplied. |
Implements Map.
Definition at line 924 of file map_et.C.
References alpha, beta, ff, Mg3d::get_type_r(), gg, Map::mg, reset_coord(), and Valeur::set().
void Map_et::resize_extr | ( | double | lambda | ) |
Rescales the outer boundary of the outermost domain in the case of non-compactified external domain.
The inner boundary is unchanged.
lambda | [input] factor by which the value of the radius of the outermost domain is to be multiplied. |
Definition at line 51 of file map_et_resize_extr.C.
References alpha, beta, Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, and reset_coord().
void Map_et::sauve | ( | FILE * | fich | ) | const [virtual] |
Save in a file.
Reimplemented from Map_radial.
Definition at line 775 of file map_et.C.
References alpha, beta, ff, fwrite_be(), Mg3d::get_nzone(), gg, Map::mg, and Valeur::sauve().
void Map_et::set_alpha | ( | double | alpha0, | |
int | l | |||
) |
Modifies the value of in domain no. l.
Definition at line 420 of file map_et.C.
References alpha, and reset_coord().
void Map_et::set_beta | ( | double | beta0, | |
int | l | |||
) |
Modifies the value of in domain no. l.
Definition at line 431 of file map_et.C.
References beta, and reset_coord().
void Map_et::set_coord | ( | ) | [private] |
Assignement of the building functions to the member Coords
.
Definition at line 580 of file map_et.C.
References Map::cosp, Map::cost, Map_radial::d2rdtdx, Map_radial::d2rdx2, Map_radial::drdt, Map_radial::dxdr, Map_radial::lapr_tp, Map::phi, Map::r, rsx2drdx, rsxdxdr, Coord::set(), Map::sinp, Map::sint, Map_radial::sr2d2rdt2, Map_radial::sr2drdt, Map_radial::sr2stdrdp, Map_radial::srdrdt, Map_radial::srstdrdp, Map_radial::sstd2rdpdx, Map_radial::stdrdp, Map::tet, Map::x, Map::xa, Map_radial::xsr, Map::y, Map::ya, Map::z, and Map::za.
void Map_et::set_ff | ( | const Valeur & | ffi | ) |
Assigns a given value to the function .
Definition at line 558 of file map_et.C.
References ff, and reset_coord().
void Map_et::set_gg | ( | const Valeur & | ggi | ) |
Assigns a given value to the function .
Definition at line 566 of file map_et.C.
References gg, and reset_coord().
void Map::set_ori | ( | double | xa0, | |
double | ya0, | |||
double | za0 | |||
) | [inherited] |
Sets a new origin.
Definition at line 249 of file map.C.
References Map::bvect_spher, Map::ori_x, Map::ori_y, Map::ori_z, Map::reset_coord(), and Base_vect_spher::set_ori().
void Map::set_rot_phi | ( | double | phi0 | ) | [inherited] |
Sets a new rotation angle.
Definition at line 259 of file map.C.
References Map::bvect_cart, Map::bvect_spher, Map::reset_coord(), Map::rot_phi, Base_vect_cart::set_rot_phi(), and Base_vect_spher::set_rot_phi().
Computes of a Scalar
.
Note that in the compactified external domain (CED), the dzpuis
flag of the output is 2 if the input has dzpuis
= 0, and is increased by 1 in other cases.
uu | [input] field to consider | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 387 of file map_et_deriv.C.
References Valeur::annule(), Valeur::base, Valeur::coef(), Valeur::dsdt(), Valeur::dsdx(), Map_radial::dxdr, Scalar::get_dzpuis(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Scalar::set_dzpuis(), Scalar::set_etat_zero(), Map_radial::srdrdt, Valeur::sx(), and Map_radial::xsr.
Computes of a Cmp
.
Note that in the compactified external domain (CED), it computes .
ci | [input] field to consider | |
resu | [output] derivative of ci |
Implements Map.
Definition at line 333 of file map_et_deriv.C.
References Valeur::base, Cmp::check_dzpuis(), Valeur::dsdt(), Valeur::dsdx(), Map_radial::dxdr, Cmp::get_etat(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Cmp::set_dzpuis(), Cmp::set_etat_zero(), Map_radial::srdrdt, Valeur::sx(), Cmp::va, and Map_radial::xsr.
Computes of a Scalar
.
Note that in the compactified external domain (CED), the dzpuis
flag of the output is 2 if the input has dzpuis
= 0, and is increased by 1 in other cases.
uu | [input] field to consider | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 536 of file map_et_deriv.C.
References Valeur::annule(), Valeur::base, Valeur::coef(), Valeur::dsdp(), Valeur::dsdx(), Map_radial::dxdr, Scalar::get_dzpuis(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Mg3d::get_nzone(), Scalar::get_spectral_va(), Mg3d::get_type_r(), Map::mg, Valeur::mult_x(), Scalar::set_dzpuis(), Scalar::set_etat_zero(), Map_radial::srstdrdp, Valeur::ssint(), Valeur::sx(), and Map_radial::xsr.
Computes of a Cmp
.
Note that in the compactified external domain (CED), it computes .
ci | [input] field to consider | |
resu | [output] derivative of ci |
Implements Map.
Definition at line 481 of file map_et_deriv.C.
References Valeur::base, Cmp::check_dzpuis(), Valeur::dsdp(), Valeur::dsdx(), Map_radial::dxdr, Cmp::get_etat(), Map::get_mg(), Cmp::get_mp(), Mg3d::get_nzone(), Mg3d::get_type_r(), Map::mg, Cmp::set_dzpuis(), Cmp::set_etat_zero(), Map_radial::srstdrdp, Valeur::ssint(), Valeur::sx(), Cmp::va, and Map_radial::xsr.
Computes of a Scalar
.
uu | [input] scalar field | |
resu | [output] derivative of uu |
Implements Map.
Definition at line 670 of file map_et_deriv.C.
References Valeur::dsdx(), Map_radial::dxdr, Valeur::get_base(), Scalar::get_etat(), Map::get_mg(), Tensor::get_mp(), Scalar::get_spectral_va(), Map::mg, Valeur::set_base(), Scalar::set_etat_zero(), Map_radial::stdrdp, and Valeur::stdsdp().
void Map_et::val_lx | ( | double | rr, | |
double | theta, | |||
double | pphi, | |||
const Param & | par, | |||
int & | l, | |||
double & | xi | |||
) | const [virtual] |
Computes the domain index l and the value of corresponding to a point given by its physical coordinates .
This version enables to pass some parameters to control the accuracy of the computation.
rr | [input] value of r | |
theta | [input] value of | |
pphi | [input] value of | |
par | [input/output] parameters to control the accuracy of the computation: \ par.get_int(0) : [input] maximum number of iterations in the secant method to locate \ par.get_int_mod(0) : [output] effective number of iterations used \ par.get_double(0) : [input] absolute precision in the secant method to locate | |
l | [output] value of the domain index | |
xi | [output] value of |
Implements Map.
Definition at line 165 of file map_et_radius.C.
References Param::add_double(), alpha, beta, Valeur::c, ff, Param::get_double(), Tbl::get_etat(), Valeur::get_etat(), Param::get_int(), Param::get_int_mod(), Mg3d::get_nzone(), Mg3d::get_type_r(), gg, Map::mg, Mtbl::t, Valeur::val_point(), and zerosec().
void Map_et::val_lx | ( | double | rr, | |
double | theta, | |||
double | pphi, | |||
int & | l, | |||
double & | xi | |||
) | const [virtual] |
Computes the domain index l and the value of corresponding to a point given by its physical coordinates .
rr | [input] value of r | |
theta | [input] value of | |
pphi | [input] value of | |
l | [output] value of the domain index | |
xi | [output] value of |
Implements Map.
Definition at line 142 of file map_et_radius.C.
References Param::add_double(), Param::add_int(), and Param::add_int_mod().
void Map_et::val_lx_jk | ( | double | rr, | |
int | j, | |||
int | k, | |||
const Param & | par, | |||
int & | l, | |||
double & | xi | |||
) | const [virtual] |
Computes the domain index l and the value of corresponding to a point of arbitrary r but collocation values of .
rr | [input] value of r | |
j | [input] index of the collocation point in | |
k | [input] index of the collocation point in | |
par | [input/output] parameters to control the accuracy of the computation: \ par.get_int(0) : [input] maximum number of iterations in the secant method to locate \ par.get_int_mod(0) : [output] effective number of iterations used \ par.get_double(0) : [input] absolute precision in the secant method to locate | |
l | [output] value of the domain index | |
xi | [output] value of |
Implements Map_radial.
Definition at line 414 of file map_et_radius.C.
References Param::add_double(), alpha, beta, Valeur::c, ff, Param::get_double(), Tbl::get_etat(), Valeur::get_etat(), Param::get_int(), Param::get_int_mod(), Mg3d::get_nzone(), Mg3d::get_type_r(), gg, Map::mg, Mtbl::t, and zerosec().
double Map_et::val_r | ( | int | l, | |
double | xi, | |||
double | theta, | |||
double | pphi | |||
) | const [virtual] |
Returns the value of the radial coordinate r for a given in a given domain.
l | [input] index of the domain | |
xi | [input] value of | |
theta | [input] value of | |
pphi | [input] value of |
Implements Map.
Definition at line 88 of file map_et_radius.C.
References alpha, beta, ff, Mg3d::get_type_r(), gg, Map::mg, and Valeur::val_point().
double Map_et::val_r_jk | ( | int | l, | |
double | xi, | |||
int | j, | |||
int | k | |||
) | const [virtual] |
Returns the value of the radial coordinate r for a given and a given collocation point in in a given domain.
l | [input] index of the domain | |
xi | [input] value of | |
j | [input] index of the collocation point in | |
k | [input] index of the collocation point in |
Implements Map_radial.
Definition at line 363 of file map_et_radius.C.
References alpha, beta, ff, Mg3d::get_type_r(), gg, and Map::mg.
ostream& operator<< | ( | ostream & | , | |
const Map & | ||||
) | [friend, inherited] |
Operator <<.
Tbl** Map_et::aa [private] |
Tbl Map_et::aasx [private] |
Tbl Map_et::aasx2 [private] |
double* Map_et::alpha [private] |
Tbl** Map_et::bb [private] |
Tbl Map_et::bbsx [private] |
Tbl Map_et::bbsx2 [private] |
double* Map_et::beta [private] |
Base_vect_cart Map::bvect_cart [protected, inherited] |
Base_vect_spher Map::bvect_spher [protected, inherited] |
Coord Map_radial::d2rdtdx [inherited] |
Coord Map_radial::d2rdx2 [inherited] |
Tbl** Map_et::daa [private] |
Tbl** Map_et::dbb [private] |
Tbl** Map_et::ddaa [private] |
Tbl** Map_et::ddbb [private] |
Coord Map_radial::drdt [inherited] |
Coord Map_radial::dxdr [inherited] |
Valeur Map_et::ff [private] |
Valeur Map_et::gg [private] |
Coord Map_radial::lapr_tp [inherited] |
double Map::ori_x [protected, inherited] |
double Map::ori_y [protected, inherited] |
double Map::ori_z [protected, inherited] |
Cmp* Map::p_cmp_zero [protected, inherited] |
Metric_flat* Map::p_flat_met_cart [mutable, protected, inherited] |
Metric_flat* Map::p_flat_met_spher [mutable, protected, inherited] |
Map_af* Map::p_mp_angu [mutable, protected, inherited] |
double Map::rot_phi [protected, inherited] |
Coord Map_radial::sr2d2rdt2 [inherited] |
Coord Map_radial::sr2drdt [inherited] |
Coord Map_radial::sr2stdrdp [inherited] |
Coord Map_radial::srdrdt [inherited] |
Coord Map_radial::srstdrdp [inherited] |
Coord Map_radial::sstd2rdpdx [inherited] |
Coord Map_radial::stdrdp [inherited] |
Coord Map_radial::xsr [inherited] |
Tbl Map_et::zaasx [private] |
Tbl Map_et::zaasx2 [private] |