28char vector_df_poisson_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Tensor/vector_df_poisson.C,v 1.15 2014/10/13 08:53:44 j_novak Exp $" ;
79 double relax =
par.get_double() ;
80 double precis =
par.get_double(1) ;
109 par_mu.add_double(relax, 0) ;
110 par_mu.add_double(precis, 1) ;
150 for (
int i=0;
i<3;
i++)
168 if (
cmp[0]->get_etat() == ETATZERO) {
169 f_r.set_etat_zero() ;
182 S_r.set_spectral_va().ylm() ;
183 S_eta.set_spectral_va().ylm() ;
198 double alpha =
mpaff->get_alpha()[0] ;
199 double beta =
mpaff->get_beta()[0] ;
200 int l_q = 0 ;
int m_q = 0;
int base_r = 0 ;
205 for (
int k=0 ;
k<np+1 ;
k++) {
206 for (
int j=0 ;
j<nt ;
j++) {
208 if ( (nullite_plm(
j, nt,
k, np, base) == 1) && (
l_q != 0) ) {
265 multx2_1d(nr, &
res_eta.t, base_r) ;
266 multx2_1d(nr, &
res_vr.t, base_r) ;
270 for (
int i=0 ;
i<nr ;
i++) {
290 double ech = beta / alpha ;
294 for (
int k=0 ;
k<np+1 ;
k++) {
295 for (
int j=0 ;
j<nt ;
j++) {
297 if ( (nullite_plm(
j, nt,
k, np, base) == 1) && (
l_q != 0) ) {
341 Tbl sr(5) ;
sr.set_etat_qcq() ;
343 for (
int i=0;
i<5;
i++) {
347 for (
int i=5;
i<nr;
i++)
351 multx2_1d(5, &
x2sr.t, base_r) ; multx_1d(5, &xsr.
t, base_r) ;
352 multx_1d(nr, &
xseta.t, base_r) ;
381 for (
int i=0 ;
i<nr ;
i++) {
403 for (
int k=0 ;
k<np+1 ;
k++) {
404 for (
int j=0 ;
j<nt ;
j++) {
406 if ( (nullite_plm(
j, nt,
k, np, base) == 1) && (
l_q != 0) ) {
470 for (
int i=0 ;
i<nr ;
i++) {
485 vr.set_spectral_base(base) ;
486 vr.set_spectral_va().set_etat_cf_qcq() ;
488 cf_vr.annule_hard() ;
490 het.set_spectral_base(base) ;
491 het.set_spectral_va().set_etat_cf_qcq() ;
494 int taille = 2*
nzm1 ;
502 for (
int k=0 ;
k<np+1 ;
k++)
503 for (
int j=0 ;
j<nt ;
j++) {
505 if ((nullite_plm(
j, nt,
k, np, base) == 1)&&(
l_q != 0)) {
510 for (
int l=0;
l<taille;
l++)
511 for (
int c=0; c<taille; c++)
515 alpha =
mpaff->get_alpha()[0] ;
518 for (
int i=0 ;
i<nr ;
i++)
523 for (
int i=0;
i<nr;
i++)
536 for (
int i=0 ;
i<nr ;
i++)
544 for (
int i=0 ;
i<nr ;
i++)
554 for (
int i=0 ;
i<nr ;
i++)
561 for (
int i=0 ;
i<nr ;
i++)
572 for (
int i=0 ;
i<nr ;
i++)
577 for (
int i=0 ;
i<nr ;
i++)
584 if (taille > 2)
systeme.set_band(2,2) ;
594 for (
int i=0 ;
i<nr ;
i++) {
603 for (
int i=0 ;
i<nr ;
i++) {
615 for (
int i=0 ;
i<nr ;
i++) {
624 vr.set_spectral_va().ylm_i() ;
625 het.set_spectral_va().ylm_i() ;
Bases of the spectral expansions.
void give_quant_numbers(int, int, int, int &, int &, int &) const
Computes the various quantum numbers and 1d radial base.
Spherical orthonormal vectorial bases (triads).
Component of a tensorial field *** DEPRECATED : use class Scalar instead ***.
Class for the elementary differential operator (see the base class Diff ).
Class for the elementary differential operator (see the base class Diff ).
Class for the elementary differential operator Identity (see the base class Diff ).
Class for the elementary differential operator (see the base class Diff ).
Class for the elementary differential operator (see the base class Diff ).
Class for the elementary differential operator (see the base class Diff ).
Time evolution with partial storage (*** under development ***).
int get_np(int l) const
Returns the number of points in the azimuthal direction ( ) in domain no. l.
int get_nt(int l) const
Returns the number of points in the co-latitude direction ( ) in domain no. l.
int get_nzone() const
Returns the number of domains.
int get_nr(int l) const
Returns the number of points in the radial direction ( ) in domain no. l.
int get_type_r(int l) const
Returns the type of sampling in the radial direction in domain no.
Coefficients storage for the multi-domain spectral method.
Tensor field of valence 0 (or component of a tensorial field).
void div_r()
Division by r everywhere; dzpuis is not changed.
virtual void set_etat_zero()
Sets the logical state to ETATZERO (zero).
double * t
The array of double.
Vector_divfree poisson() const
Computes the solution of a vectorial Poisson equation with *this as a source:
const Metric *const met_div
Metric with respect to which the divergence is defined.
virtual const Scalar & eta() const
Gives the field such that the angular components of the vector are written:
virtual const Scalar & mu() const
Gives the field such that the angular components of the vector are written:
Cmp pow(const Cmp &, int)
Power .
const Map *const mp
Mapping on which the numerical values at the grid points are defined.
Scalar ** cmp
Array of size n_comp of pointers onto the components.
const Base_vect * triad
Vectorial basis (triad) with respect to which the tensor components are defined.