20 #ifndef __BASE_SPECTRAL_HPP_
21 #define __BASE_SPECTRAL_HPP_
23 #include "dim_array.hpp"
100 void save(FILE*)
const ;
133 void set(
Dim_array const& nbr_coefs,
int basephi,
int basetheta,
int baser);
225 for (
int l = 0; l <
ndim; l++)
230 std::swap(
ndim, so.ndim);
236 std::swap(
def,so.def);
243 for (
int l=0 ; l<
ndim ; l++)
254 for (
int i=0 ; i<
ndim ; i++) {
272 for (
int i=0 ; i<a.
ndim ; i++) {
276 while (index.
inc() && res) ;
Version of the Index class optimized for incremental access to Array components.
bool inc(int increm, int var=0)
Increments the position of the Array_iterator.
Class for storing the basis of decompositions of a field.
Base_spectral(int dimensions)
Standard constructor, the Base_spectral is not defined.
void save(FILE *) const
Saving function.
void coef_i_dim(int var, int nbr, Array< double > *&tab) const
Performs the inverse coefficient transformation for one particular variable.
Array< double > coef(const Dim_array &nbr_coefs, const Array< double > &so) const
friend bool operator==(const Base_spectral &, const Base_spectral &)
Comparison operator.
Base_spectral & operator=(Base_spectral &&so)
Move assignment operator.
friend ostream & operator<<(ostream &o, const Base_spectral &)
Display.
Array< double > coef_i(const Dim_array &nbr_points, const Array< double > &so) const
Bases_container bases_1d
Arrays containing the various basis of decomposition.
Memory_mapped_array< Array< int > *, int > Bases_container
Sylvain'stuff.
void coef_dim(int var, int nbr, Array< double > *&tab) const
void set(Dim_array const &nbr_coefs, int basephi, int basetheta, int baser)
Allocates the various arrays, for a given number of coefficients and sets basis to some values (same ...
double summation(const Point &num, const Array< double > &tab) const
Computes the spectral summation.
const Array< int > * get_base_1d(int i) const
Returns one of the 1d base array.
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.
int ndim
Number of dimensions.
void set_non_def()
Sets all the basis to the undefined state.
~Base_spectral()
Destructor.
void swap(Base_spectral &so)
Swaps data between the source and this.
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.
Class for storing the dimensions of an array.
Class for bispherical coordinates with a symmetry with respect to the plane .
Class for bispherical coordinates with a symmetry with respect to the plane .
Class for bispherical coordinates with a symmetry with respect to the plane .
Class for a spherical compactified domain and a symmetry with respect to the plane and a quadrant sy...
Class for a spherical compactified domain and a symmetry with respect to the plane .
Class for a 2-dimensional cylindrical type domain.
Class for a 2-dimensional cylindrical type domain.
Class for a spherical nucleus.
Class for a spherical shell.
Class for a spherical domain containing the origin a symmetry with respect to the plane and an quadr...
Class for a spherical domain containing the origin and a symmetry with respect to the plane .
Class for a 1-dimensional compactified spherical domain.
Class for a 1-dimensional spherical domain containing the origin.
Class for a 1-dimensional spherical domain bounded between two raii.
Class for a 2-dimensional spherical shell and a symmetry with respect to the plane .
Class for a 2-dimensional spherical domain containing the origin and a symetry with respect to the pl...
Class for a spherical nucleus with a symmetry in .
Class for a spherical shell with a symmetry in .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a 2-dimensional spherical shell and a symmetry with respect to the plane .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a spherical shell and a symmetry with respect to the plane .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a spherical-like domain, having a symmetry with respect to the plane .
Class for a spherical shell and a symmetry with respect to the plane and an quadrant symmetry wrt .
Class for a spherical shell and a symmetry with respect to the plane .
Class for a 2-dimensional compactified spherical domain and a symetry with respect to the plane .
Class for a 2-dimensional spherical domain containing the origin and a symetry with respect to the pl...
Class for a 2-dimensional spherical domain bounded between two fixed radii and a symetry with respect...
Class for a 2-dimensional compactified spherical domain and a symetry with respect to the plane .
Class for a 2-dimensional spherical domain containing the origin and a symetry with respect to the pl...
Class for a 2-dimensional spherical domain bounded between two finite radii and a symetry with respec...
The class Point is used to store the coordinates of a point.
The class Scalar does not really implements scalars in the mathematical sense but rather tensorial co...
The Space_spheric class fills the space with one nucleus, several shells and a compactified domain,...
The Space class is an ensemble of domains describing the whole space of the computation.