Lorene::Mtbl_cf Class Reference
Spectral representation.

Coefficients storage for the multi-domain spectral method. More...

`#include <mtbl_cf.h>`

## Public Member Functions

| Mtbl_cf (const Mg3d &mgrid, const Base_val &basis)
| Constructor.
| Mtbl_cf (const Mg3d *p_mgrid, const Base_val &basis)
| Constructor.
| Mtbl_cf (const Mg3d &, FILE *)
| Constructor from a file (see `sauve(FILE*)` ).
| Mtbl_cf (const Mtbl_cf &)
| Copy constructor.
| ~Mtbl_cf ()
| Destructor.
void | operator= (const Mtbl_cf &)
| Assignement to another `Mtbl_cf`.
void | operator= (double)
| Assignement to a `double`.
void | operator= (int)
| Assignement to a `int`.
void | set_etat_nondef ()
| Sets the logical state to `ETATNONDEF` (undefined).
void | set_etat_zero ()
| Sets the logical state to `ETATZERO` (zero).
void | set_etat_qcq ()
| Sets the logical state to `ETATQCQ` (ordinary state).
void | annule_hard ()
| Sets the `Mtbl_cf` to zero in a hard way.
void | annule (int l_min, int l_max)
| Sets the `Mtbl_cf` to zero in some domains.
Tbl & | set (int l)
| Read/write of the `Tbl` containing the coefficients in a given domain.
const Tbl & | operator() (int l) const
| Read-only of the `Tbl` containing the coefficients in a given domain.
double & | set (int l, int k, int j, int i)
| Read/write of a particular element.
double | operator() (int l, int k, int j, int i) const
| Read-only of a particular element.
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 expansion.
double | val_point_symy (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 expansion.
double | val_point_asymy (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 expansion.
double | val_point_jk (int l, double x, int j, int k) const
| Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.
double | val_point_jk_symy (int l, double x, int j, int k) const
| Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.
double | val_point_jk_asymy (int l, double x, int j, int k) const
| Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.
double | val_out_bound_jk (int l, int j, int k) const
| Computes the angular coefficient of index `j`,k of the field represented by `*this` at by means of the spectral expansion.
double | val_in_bound_jk (int l, int j, int k) const
| Computes the angular coefficient of index `j`,k of the field represented by `*this` at by means of the spectral expansion.
const Mg3d * | get_mg () const
| Returns the `Mg3d` on which the `Mtbl_cf` is defined.
int | get_etat () const
| Returns the logical state.
int | get_nzone () const
| Returns the number of zones (domains).
void | sauve (FILE *) const
| Save in a file.
void | display (double threshold=1.e-7, int precision=4, ostream &ostr=cout) const
| Prints the coefficients whose values are greater than a given threshold, as well as the corresponding basis.
void | affiche_seuil (ostream &ostr, int precision=4, double threshold=1.e-7) const
| Prints only the values greater than a given threshold.
void | operator+= (const Mtbl_cf &)
| += Mtbl_cf
void | operator-= (const Mtbl_cf &)
| -= Mtbl_cf
void | operator*= (double)
| *= double
void | operator/= (double)
| /= double
void | dsdx ()
void | d2sdx2 ()
void | sx ()
| (r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )
void | sx2 ()
| (r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )
void | mult_x ()
| (r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )
void | sxm1_zec ()
| Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).
void | mult_xm1_zec ()
| Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).
void | mult2_xm1_zec ()
| Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).
void | dsdt ()
void | d2sdt2 ()
void | ssint ()
void | scost ()
void | mult_ct ()
void | mult_st ()
void | dsdp ()
void | d2sdp2 ()
void | mult_cp ()
void | mult_sp ()
void | lapang ()
| Angular Laplacian.
void | poisson_angu (double lambda=0)
| Resolution of the generalized angular Poisson equation.

## Public Attributes

Base_val | base
| Bases of the spectral expansions.
Tbl ** | t
| Array (size `nzone` ) of pointers on the `Tbl` 's which contain the spectral coefficients in each domain.

## Private Member Functions

void | del_t ()
| Logical destructor: dellocates the memory occupied by the `Tbl` array `t` .

## Private Attributes

const Mg3d * | mg
| Pointer on the multi-grid `Mgd3` on which `this` is defined.
int | nzone
| Number of domains (zones).
int | etat
| Logical state (`ETATNONDEF` , `ETATQCQ` or `ETATZERO` ).

## Friends

ostream & | operator<< (ostream &o, const Mtbl_cf &mt)
| Display.

## Detailed Description

Coefficients storage for the multi-domain spectral method.

This class is essentially an array (on the various physical domains) of `Tbl` specially designed for storage of the coefficients of the spectral expansions in each domain.
It is intended to be used in conjunction with the class `Mtbl` (see class `Valeur` ). A difference between a `Mtbl` and a `Mtbl_cf` , both defined one the same grid `Mg3d` , is that each `Tbl` of the `Mtbl_cf` has 2 more elements in the -dimension (Dim_tbl::dim[2]) than the corresponding `Tbl` of the `Mtbl` . A `Mbl_cf` is initialy created with a logical state `ETATZERO` . Arithmetic operations are provided with the usual meaning (see below).

()

Definition at line 186 of file mtbl_cf.h.

## Constructor & Destructor Documentation

## Mtbl_cf() [1/4]

Lorene::Mtbl_cf::Mtbl_cf | ( | const Mg3d & | mgrid,
|  | const Base_val & | basis )

Constructor.

Definition at line 124 of file mtbl_cf.C.

References base, etat, Lorene::Mg3d::get_nzone(), mg, nzone, and t.

## Mtbl_cf() [2/4]

Lorene::Mtbl_cf::Mtbl_cf | ( | const Mg3d * | p_mgrid,
|  | const Base_val & | basis )

Constructor.

Definition at line 132 of file mtbl_cf.C.

References base, etat, Lorene::Mg3d::get_nzone(), mg, nzone, and t.

## Mtbl_cf() [3/4]

Lorene::Mtbl_cf::Mtbl_cf | ( | const Mg3d & | g,
|  | FILE * | fd )

Constructor from a file (see `sauve(FILE*)` ).

Definition at line 173 of file mtbl_cf.C.

References base, etat, Lorene::fread_be(), mg, nzone, and t.

## Mtbl_cf() [4/4]

Lorene::Mtbl_cf::Mtbl_cf | ( | const Mtbl_cf & | mtc | ) |

Copy constructor.

Definition at line 150 of file mtbl_cf.C.

References base, etat, get_etat(), mg, Mtbl_cf(), nzone, set_etat_qcq(), and t.

## ~Mtbl_cf()

Lorene::Mtbl_cf::~Mtbl_cf | ( |  | ) |

Destructor.

Definition at line 143 of file mtbl_cf.C.

References del_t().

## Member Function Documentation

## affiche_seuil()

void Lorene::Mtbl_cf::affiche_seuil | ( | ostream & | ostr,
|  | int | precision = 4,
|  | double | threshold = 1.e-7 ) const

Prints only the values greater than a given threshold.

Parameters

  ostr | [input] Output stream used for the printing
  precision | [input] Number of printed digits (default: 4)
  threshold | [input] Value above which an array element is printed (default: 1.e-7)

Definition at line 397 of file mtbl_cf.C.

References base, etat, nzone, and t.

## annule()

void Lorene::Mtbl_cf::annule | ( | int | l_min,
|  | int | l_max )

Sets the `Mtbl_cf` to zero in some domains.

Parameters

  l_min | [input] The `Mtbl_cf` will be set (logically) to zero in the domains whose indices are in the range ``[l_min, l_max] .
  l_max | [input] see the comments for `l_min` .

Note that `annule`(0, nzone-1) is equivalent to `set_etat_zero()` .

Definition at line 332 of file mtbl_cf.C.

References etat, nzone, set_etat_zero(), and t.

## annule_hard()

void Lorene::Mtbl_cf::annule_hard | ( |  | ) |

Sets the `Mtbl_cf` to zero in a hard way.

1/ Sets the logical state to `ETATQCQ` , i.e. to an ordinary state. 2/ Allocates the memory of the `Tbl` array `t` , and fills it with zeros. NB: this function must be used for debugging purposes only. For other operations, the functions `set_etat_zero()` or `annule(int, int)` must be perferred.

Definition at line 312 of file mtbl_cf.C.

References etat, mg, nzone, and t.

## d2sdp2()

void Lorene::Mtbl_cf::d2sdp2 | ( |  | ) |

Definition at line 132 of file valeur_d2sdp2.C.

References base, etat, MAX_BASE, MSQ_P, nzone, P_COSSIN, t, and TRA_P.

## d2sdt2()

void Lorene::Mtbl_cf::d2sdt2 | ( |  | ) |

Definition at line 148 of file valeur_d2sdt2.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## d2sdx2()

void Lorene::Mtbl_cf::d2sdx2 | ( |  | ) |

Definition at line 155 of file valeur_d2sdx2.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, R_LEG, R_LEGI, R_LEGP, t, and TRA_R.

## del_t()

void Lorene::Mtbl_cf::del_t | ( |  | ) |

private

Logical destructor: dellocates the memory occupied by the `Tbl` array `t` .

Definition at line 276 of file mtbl_cf.C.

References etat, nzone, and t.

## display()

void Lorene::Mtbl_cf::display | ( | double | threshold = 1.e-7,
|  | int | precision = 4,
|  | ostream & | ostr = cout ) const

Prints the coefficients whose values are greater than a given threshold, as well as the corresponding basis.

Parameters

  threshold | [input] Value above which a coefficient is printed (default: 1.e-7)
  precision | [input] Number of printed digits (default: 4)
  ostr | [input] Output stream used for the printing (default: cout)

Definition at line 56 of file mtbl_cf_display.C.

References base, etat, Lorene::Tbl::get_etat(), mg, nzone, and t.

## dsdp()

void Lorene::Mtbl_cf::dsdp | ( |  | ) |

Definition at line 139 of file valeur_dsdp.C.

References base, etat, MAX_BASE_2, MSQ_P, nzone, P_COSSIN, P_COSSIN_I, P_COSSIN_P, t, and TRA_P.

## dsdt()

void Lorene::Mtbl_cf::dsdt | ( |  | ) |

Definition at line 152 of file valeur_dsdt.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## dsdx()

void Lorene::Mtbl_cf::dsdx | ( |  | ) |

Definition at line 153 of file valeur_dsdx.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, R_LEG, R_LEGI, R_LEGP, t, and TRA_R.

## get_etat()

int Lorene::Mtbl_cf::get_etat | ( |  | ) | const

inline

Returns the logical state.

Definition at line 456 of file mtbl_cf.h.

References etat.

## get_mg()

const Mg3d * Lorene::Mtbl_cf::get_mg | ( |  | ) | const

inline

Returns the `Mg3d` on which the `Mtbl_cf` is defined.

Definition at line 453 of file mtbl_cf.h.

References mg.

## get_nzone()

int Lorene::Mtbl_cf::get_nzone | ( |  | ) | const

inline

Returns the number of zones (domains).

Definition at line 459 of file mtbl_cf.h.

References nzone.

## lapang()

void Lorene::Mtbl_cf::lapang | ( |  | ) |

Angular Laplacian.

Definition at line 93 of file mtbl_cf_lapang.C.

References base, get_mg(), Lorene::Mg3d::get_nzone(), MAX_BASE, MSQ_T, Mtbl_cf(), T_LEG, T_LEG_I, T_LEG_II, T_LEG_IP, T_LEG_MI, T_LEG_MP, T_LEG_P, T_LEG_PI, T_LEG_PP, and TRA_T.

## mult2_xm1_zec()

void Lorene::Mtbl_cf::mult2_xm1_zec | ( |  | ) |

Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).

Definition at line 103 of file valeur_mult2_xm1.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEBU, t, and TRA_R.

## mult_cp()

void Lorene::Mtbl_cf::mult_cp | ( |  | ) |

Definition at line 120 of file valeur_mult_cp.C.

References base, etat, MAX_BASE_2, MSQ_P, nzone, P_COSSIN, P_COSSIN_I, P_COSSIN_P, t, and TRA_P.

## mult_ct()

void Lorene::Mtbl_cf::mult_ct | ( |  | ) |

Definition at line 141 of file valeur_mult_ct.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## mult_sp()

void Lorene::Mtbl_cf::mult_sp | ( |  | ) |

Definition at line 120 of file valeur_mult_sp.C.

References base, etat, MAX_BASE_2, MSQ_P, nzone, P_COSSIN, P_COSSIN_I, P_COSSIN_P, t, and TRA_P.

## mult_st()

void Lorene::Mtbl_cf::mult_st | ( |  | ) |

Definition at line 140 of file valeur_mult_st.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## mult_x()

void Lorene::Mtbl_cf::mult_x | ( |  | ) |

(r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )

Definition at line 144 of file valeur_mult_x.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, R_LEG, R_LEGI, R_LEGP, t, and TRA_R.

## mult_xm1_zec()

void Lorene::Mtbl_cf::mult_xm1_zec | ( |  | ) |

Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).

Definition at line 103 of file valeur_mult_xm1.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEBU, t, and TRA_R.

## operator()() [1/2]

const Tbl & Lorene::Mtbl_cf::operator() | ( | int | l | ) | const

inline

Read-only of the `Tbl` containing the coefficients in a given domain.

Parameters

  l | [input] domain index

Definition at line 306 of file mtbl_cf.h.

References etat, nzone, and t.

## operator()() [2/2]

double Lorene::Mtbl_cf::operator() | ( | int | l,
|  | int | k,
|  | int | j,
|  | int | i ) const

inline

Read-only of a particular element.

Parameters

  l | [input] domain index
  k | [input] index
  j | [input] index
  i | [input] r ( ) index

Definition at line 332 of file mtbl_cf.h.

References etat, nzone, and t.

## operator*=()

void Lorene::Mtbl_cf::operator*= | ( | double |  | ) |

*= double

Definition at line 429 of file mtbl_cf.C.

References Lorene::c_est_pas_fait().

## operator+=()

void Lorene::Mtbl_cf::operator+= | ( | const Mtbl_cf & | mi | ) |

+= Mtbl_cf

Definition at line 302 of file mtbl_cf_arithm.C.

References annule_hard(), base, etat, get_etat(), get_mg(), mg, Mtbl_cf(), nzone, and t.

## operator-=()

void Lorene::Mtbl_cf::operator-= | ( | const Mtbl_cf & | mi | ) |

-= Mtbl_cf

Definition at line 325 of file mtbl_cf_arithm.C.

References annule_hard(), base, etat, get_etat(), get_mg(), mg, Mtbl_cf(), nzone, and t.

## operator/=()

void Lorene::Mtbl_cf::operator/= | ( | double |  | ) |

/= double

Definition at line 434 of file mtbl_cf.C.

References Lorene::c_est_pas_fait().

## operator=() [1/3]

void Lorene::Mtbl_cf::operator= | ( | const Mtbl_cf & | mtc | ) |

Assignement to another `Mtbl_cf`.

Definition at line 220 of file mtbl_cf.C.

References base, get_etat(), mg, Mtbl_cf(), nzone, set_etat_qcq(), set_etat_zero(), and t.

## operator=() [2/3]

void Lorene::Mtbl_cf::operator= | ( | double | x | ) |

Assignement to a `double`.

Definition at line 242 of file mtbl_cf.C.

References nzone, set_etat_qcq(), set_etat_zero(), t, and Lorene::x.

## operator=() [3/3]

void Lorene::Mtbl_cf::operator= | ( | int | m | ) |

Assignement to a `int`.

Definition at line 256 of file mtbl_cf.C.

References nzone, set_etat_qcq(), set_etat_zero(), and t.

## poisson_angu()

void Lorene::Mtbl_cf::poisson_angu | ( | double | lambda = 0 | ) |

Resolution of the generalized angular Poisson equation.

The generalized angular Poisson equation is , where .

Before the call to `poisson_angu()` , `*this` contains the coefficients of the source ; after the call, it contains the coefficients of the solution .

       @param lambda [input] coefficient \f$\lambda\f$ in the above equation
         (default value = 0)

Definition at line 83 of file mtbl_cf_pde.C.

References base, get_mg(), Lorene::Mg3d::get_nzone(), MAX_BASE, MSQ_T, Mtbl_cf(), T_LEG, T_LEG_I, T_LEG_IP, T_LEG_MI, T_LEG_MP, T_LEG_P, T_LEG_PI, T_LEG_PP, and TRA_T.

## sauve()

void Lorene::Mtbl_cf::sauve | ( | FILE * | fd | ) | const

Save in a file.

Definition at line 204 of file mtbl_cf.C.

References base, etat, Lorene::fwrite_be(), mg, nzone, and t.

## scost()

void Lorene::Mtbl_cf::scost | ( |  | ) |

Definition at line 142 of file valeur_scost.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## set() [1/2]

Tbl & Lorene::Mtbl_cf::set | ( | int | l | ) |

inline

Read/write of the `Tbl` containing the coefficients in a given domain.

Parameters

  l | [input] domain index

Definition at line 294 of file mtbl_cf.h.

References etat, nzone, and t.

## set() [2/2]

double & Lorene::Mtbl_cf::set | ( | int | l,
|  | int | k,
|  | int | j,
|  | int | i )

inline

Read/write of a particular element.

Parameters

  l | [input] domain index
  k | [input] index
  j | [input] index
  i | [input] r ( ) index

Definition at line 319 of file mtbl_cf.h.

References etat, nzone, and t.

## set_etat_nondef()

void Lorene::Mtbl_cf::set_etat_nondef | ( |  | ) |

Sets the logical state to `ETATNONDEF` (undefined).

Deallocates the memory occupied by the `Tbl` array `t` .

Definition at line 294 of file mtbl_cf.C.

References del_t(), and etat.

## set_etat_qcq()

void Lorene::Mtbl_cf::set_etat_qcq | ( |  | ) |

Sets the logical state to `ETATQCQ` (ordinary state).

If the state (member `etat` ) is already `ETATQCQ` , this function does nothing. Otherwise, it performs the memory allocation for the `Tbl` array `t` .

Definition at line 300 of file mtbl_cf.C.

References etat, mg, nzone, and t.

## set_etat_zero()

void Lorene::Mtbl_cf::set_etat_zero | ( |  | ) |

Sets the logical state to `ETATZERO` (zero).

Deallocates the memory occupied by the `Tbl` array `t` .

Definition at line 288 of file mtbl_cf.C.

References del_t(), and etat.

## ssint()

void Lorene::Mtbl_cf::ssint | ( |  | ) |

Definition at line 154 of file valeur_ssint.C.

References base, etat, MAX_BASE, MSQ_T, nzone, t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, and TRA_T.

## sx()

void Lorene::Mtbl_cf::sx | ( |  | ) |

(r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )

Definition at line 153 of file valeur_sx.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, R_LEG, R_LEGI, R_LEGP, t, and TRA_R.

## sx2()

void Lorene::Mtbl_cf::sx2 | ( |  | ) |

(r -sampling = `RARE` ) \ Id (r sampling = `FIN` ) \ (r -sampling = `UNSURR` )

Definition at line 157 of file valeur_sx2.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_LEG, R_LEGI, R_LEGP, t, and TRA_R.

## sxm1_zec()

void Lorene::Mtbl_cf::sxm1_zec | ( |  | ) |

Id (r sampling = `RARE`, FIN ) \ (r -sampling = `UNSURR` ).

Definition at line 112 of file valeur_sxm1_zec.C.

References base, etat, MAX_BASE, MSQ_R, nzone, R_CHEBU, t, and TRA_R.

## val_in_bound_jk()

double Lorene::Mtbl_cf::val_in_bound_jk | ( | int | l,
|  | int | j,
|  | int | k ) const

Computes the angular coefficient of index `j`,k of the field represented by `*this` at by means of the spectral expansion.

Not defined in the nucleus.

Parameters

  l | [input] index of the domain
  j | [input] index in -direction
  k | [input] index in -direction

Returns
  coefficient at the boundary in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 452 of file mtbl_cf_val_point.C.

References base, mg, MSQ_R, operator()(), R_CHEB, R_CHEBU, and TRA_R.

## val_out_bound_jk()

double Lorene::Mtbl_cf::val_out_bound_jk | ( | int | l,
|  | int | j,
|  | int | k ) const

Computes the angular coefficient of index `j`,k of the field represented by `*this` at by means of the spectral expansion.

Parameters

  l | [input] index of the domain
  j | [input] index in -direction
  k | [input] index in -direction

Returns
  coefficient at the boundary in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 428 of file mtbl_cf_val_point.C.

References base, mg, MSQ_R, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, and TRA_R.

## val_point()

double Lorene::Mtbl_cf::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 expansion.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  theta | [input] value of the coordinate
  phi | [input] value of the coordinate

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 115 of file mtbl_cf_val_point.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, MAX_BASE_2, mg, MSQ_P, MSQ_R, MSQ_T, P_COSSIN, P_COSSIN_I, P_COSSIN_P, Lorene::phi, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, R_LEG, R_LEGI, R_LEGP, t, Lorene::Tbl::t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, TRA_P, TRA_R, TRA_T, and Lorene::x.

## val_point_asymy()

double Lorene::Mtbl_cf::val_point_asymy | ( | 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 expansion.

Case where the field is antisymmetric with respect to the y=0 plane.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  theta | [input] value of the coordinate
  phi | [input] value of the coordinate

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 71 of file mtbl_cf_vp_asymy.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, MAX_BASE_2, mg, MSQ_P, MSQ_R, MSQ_T, P_COSSIN, P_COSSIN_I, P_COSSIN_P, Lorene::phi, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, Lorene::som_r_cheb_asymy(), Lorene::som_r_chebpim_i_asymy(), Lorene::som_r_chebpim_p_asymy(), Lorene::som_r_chebu_asymy(), Lorene::som_tet_cossin_ci_asymy(), Lorene::som_tet_cossin_cp_asymy(), t, Lorene::Tbl::t, T_COS, T_COS_P, T_COSSIN_CI, T_COSSIN_CP, T_SIN, T_SIN_P, TRA_P, TRA_R, TRA_T, and Lorene::x.

## val_point_jk()

double Lorene::Mtbl_cf::val_point_jk | ( | int | l,
|  | double | x,
|  | int | j,
|  | int | k ) const

Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  j | [input] index of the collocation point in
  k | [input] index of the collocation point in

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 258 of file mtbl_cf_val_point.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, mg, MSQ_R, MSQ_T, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPI_I, R_CHEBPI_P, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, R_JACO02, t, Lorene::Tbl::t, T_COS, T_COS_I, T_COS_P, T_COSSIN_C, T_COSSIN_CI, T_COSSIN_CP, T_COSSIN_S, T_COSSIN_SI, T_COSSIN_SP, T_SIN, T_SIN_I, T_SIN_P, TRA_R, and Lorene::x.

## val_point_jk_asymy()

double Lorene::Mtbl_cf::val_point_jk_asymy | ( | int | l,
|  | double | x,
|  | int | j,
|  | int | k ) const

Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.

Case where the field is antisymmetric with respect to the y=0 plane.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  j | [input] index of the collocation point in
  k | [input] index of the collocation point in

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 203 of file mtbl_cf_vp_asymy.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, mg, MSQ_R, MSQ_T, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, Lorene::som_r_cheb_asymy(), Lorene::som_r_chebpim_i_asymy(), Lorene::som_r_chebpim_p_asymy(), Lorene::som_r_chebu_asymy(), t, Lorene::Tbl::t, T_COSSIN_CP, TRA_R, and Lorene::x.

## val_point_jk_symy()

double Lorene::Mtbl_cf::val_point_jk_symy | ( | int | l,
|  | double | x,
|  | int | j,
|  | int | k ) const

Computes the value of the field represented by `*this` at an arbitrary point in , but collocation point in , by means of the spectral expansion.

Case where the field is symmetric with respect to the y=0 plane.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  j | [input] index of the collocation point in
  k | [input] index of the collocation point in

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 201 of file mtbl_cf_vp_symy.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, mg, MSQ_R, MSQ_T, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, Lorene::som_r_cheb_symy(), Lorene::som_r_chebpim_i_symy(), Lorene::som_r_chebpim_p_symy(), Lorene::som_r_chebu_symy(), t, Lorene::Tbl::t, T_COSSIN_CP, TRA_R, and Lorene::x.

## val_point_symy()

double Lorene::Mtbl_cf::val_point_symy | ( | 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 expansion.

Case where the field is symmetric with respect to the y=0 plane.

Parameters

  l | [input] index of the domain
  x | [input] value of the coordinate
  theta | [input] value of the coordinate
  phi | [input] value of the coordinate

Returns
  value at the point in the domain no. l of the field whose spectral coefficients are stored in `*this` .

Definition at line 69 of file mtbl_cf_vp_symy.C.

References base, etat, Lorene::Tbl::get_etat(), MAX_BASE, MAX_BASE_2, mg, MSQ_P, MSQ_R, MSQ_T, P_COSSIN, P_COSSIN_I, P_COSSIN_P, Lorene::phi, R_CHEB, R_CHEBI, R_CHEBP, R_CHEBPIM_I, R_CHEBPIM_P, R_CHEBU, Lorene::som_r_cheb_symy(), Lorene::som_r_chebpim_i_symy(), Lorene::som_r_chebpim_p_symy(), Lorene::som_r_chebu_symy(), Lorene::som_tet_cossin_ci_symy(), Lorene::som_tet_cossin_cp_symy(), t, Lorene::Tbl::t, T_COS, T_COS_P, T_COSSIN_CI, T_COSSIN_CP, T_SIN, T_SIN_P, TRA_P, TRA_R, TRA_T, and Lorene::x.

## Friends And Related Symbol Documentation

## operator<<

ostream & operator<< | ( | ostream & | o,
|  | const Mtbl_cf & | mt )

friend

Display.

Definition at line 366 of file mtbl_cf.C.

References base, get_etat(), get_nzone(), Mtbl_cf(), nzone, operator<<, and t.

## Member Data Documentation

## base

Base_val Lorene::Mtbl_cf::base

Bases of the spectral expansions.

Definition at line 200 of file mtbl_cf.h.

## etat

int Lorene::Mtbl_cf::etat

private

Logical state (`ETATNONDEF` , `ETATQCQ` or `ETATZERO` ).

Definition at line 196 of file mtbl_cf.h.

## mg

const Mg3d* Lorene::Mtbl_cf::mg

private

Pointer on the multi-grid `Mgd3` on which `this` is defined.

Definition at line 192 of file mtbl_cf.h.

## nzone

int Lorene::Mtbl_cf::nzone

private

Number of domains (zones).

Definition at line 194 of file mtbl_cf.h.

## t

Tbl** Lorene::Mtbl_cf::t

Array (size `nzone` ) of pointers on the `Tbl` 's which contain the spectral coefficients in each domain.

Definition at line 205 of file mtbl_cf.h.

The documentation for this class was generated from the following files:

- mtbl_cf.h
- mtbl_cf.C
- mtbl_cf_arithm.C
- mtbl_cf_display.C
- mtbl_cf_lapang.C
- mtbl_cf_pde.C
- mtbl_cf_val_point.C
- mtbl_cf_vp_asymy.C
- mtbl_cf_vp_symy.C
- valeur_d2sdp2.C
- valeur_d2sdt2.C
- valeur_d2sdx2.C
- valeur_dsdp.C
- valeur_dsdt.C
- valeur_dsdx.C
- valeur_mult2_xm1.C
- valeur_mult_cp.C
- valeur_mult_ct.C
- valeur_mult_sp.C
- valeur_mult_st.C
- valeur_mult_x.C
- valeur_mult_xm1.C
- valeur_scost.C
- valeur_ssint.C
- valeur_sx.C
- valeur_sx2.C
- valeur_sxm1_zec.C