21 #include "spheric.hpp"
22 #include "val_domain.hpp"
23 #include "array_math.hpp"
26 int mult_cos_1d (
int, Array<double>&) ;
27 int mult_sin_1d (
int, Array<double>&) ;
28 int div_sin_1d (
int, Array<double>&) ;
29 int div_cos_1d (
int, Array<double>&) ;
30 int mult_x_1d (
int, Array<double>&) ;
31 int div_xp1_1d (
int, Array<double>&) ;
32 int div_xm1_1d (
int, Array<double>&) ;
33 int mult_xm1_1d (
int, Array<double>&) ;
34 int div_1mx2_1d (
int, Array<double>&) ;
60 cout <<
"Unknown case in Domain_shell::mult_cos_phi" << endl ;
64 while (index_t.
inc()) ;
98 cout <<
"Unknown case in Domain_shell::mult_sin_phi" << endl ;
102 while (index_t.
inc()) ;
265 cerr <<
"Unknown variable in Domain_shell::der_partial_var" << endl ;
293 assert(baset==SIN_ODD) ;
298 assert (baser==CHEB) ;
305 val += 2./(2.*j+1) * integral_1d(CHEB, cf) ;
308 return val * 2*M_PI ;
reference set(const Index &pos)
Read/write of an element.
Bases_container bases_1d
Arrays containing the various basis of decomposition.
void allocate(const Dim_array &nbr_coefs)
Allocates the various arrays, for a given number of coefficients.
bool def
true if the Base_spectral is defined and false otherwise.
Array< double > ope_1d(int(*function)(int, Array< double > &), int var, const Array< double > &so, Base_spectral &base) const
One-dimensional operator acting in the coefficient space.
virtual Val_domain div_xp1(const Val_domain &) const
Division by .
virtual Val_domain div_r(const Val_domain &) const
Division by .
virtual Val_domain mult_cos_theta(const Val_domain &) const
Multiplication by .
virtual Val_domain div_1mrsL(const Val_domain &) const
Division by .
virtual double integ_volume(const Val_domain &so) const
Volume integral.
double beta
Relates the numerical to the physical radii.
virtual Val_domain div_sin_theta(const Val_domain &) const
Division by .
virtual Val_domain ddp(const Val_domain &) const
Compute the second derivative with respect to of a scalar field.
virtual Val_domain der_partial_var(const Val_domain &, int) const
Partial derivative with respect to a coordinate.
virtual Val_domain der_r(const Val_domain &) const
Compute the radial derivative of a scalar field.
double alpha
Relates the numerical to the physical radii.
virtual Val_domain div_cos_theta(const Val_domain &) const
Division by .
virtual Val_domain div_xm1(const Val_domain &) const
Division by .
virtual Val_domain mult_cos_phi(const Val_domain &) const
Multiplication by .
virtual Val_domain dt(const Val_domain &) const
Compute the derivative with respect to of a scalar field.
virtual Val_domain mult_sin_phi(const Val_domain &) const
Multiplication by .
virtual Val_domain laplacian2(const Val_domain &, int) const
Computes the ordinary flat 2dè- Laplacian for a scalar field with an harmonic index m.
virtual Val_domain mult_r(const Val_domain &) const
Multiplication by .
virtual Val_domain mult_1mrsL(const Val_domain &) const
Multiplication by .
virtual Val_domain div_1mx2(const Val_domain &) const
Division by .
virtual Val_domain mult_sin_theta(const Val_domain &) const
Multiplication by .
virtual Val_domain mult_xm1(const Val_domain &) const
Multiplication by .
Dim_array nbr_coefs
Number of coefficients.
Val_domain const & get_radius() const
Returns the generalized radius.
Class that gives the position inside a multi-dimensional Array.
int & set(int i)
Read/write of the position in a given dimension.
bool inc(int increm, int var=0)
Increments the position of the Index.
Class for storing the basis of decompositions of a field and its values on both the configuration and...
Base_spectral base
Spectral basis of the field.
bool check_if_zero() const
Check whether the logical state is zero or not.
Array< double > * cf
Pointer on the Array of the values in the coefficients space.
Val_domain div_sin_theta() const
Division by .
bool in_coef
Is the field known in the coefficient space ?
void coef() const
Computes the coefficients.
Val_domain der_var(int i) const
Computes the derivative with respect to a numerical coordinate.
Array< double > get_coef() const
const Base_spectral & get_base() const
Returns the basis of decomposition.