131 #include "param_elliptic.h" 210 const Scalar& source)
const {
232 if ((map_affine == 0x0) && (map_log == 0x0)) {
233 cout <<
"sol_elliptic only defined for affine or log mapping" << endl ;
240 if (map_affine != 0x0)
243 map_log->sol_elliptic (ope_var, *
this, res) ;
249 double fact_dir,
double fact_neu)
const {
255 if ((map_affine == 0x0) && (map_log == 0x0)) {
256 cout <<
"sol_elliptic only defined for affine or log mapping" << endl ;
263 if (map_affine != 0x0)
265 fact_dir, fact_neu ) ;
267 map_log->sol_elliptic_boundary (ope_var, *
this, res, bound,
268 fact_dir, fact_neu ) ;
275 double fact_dir,
double fact_neu)
const {
281 if ((map_affine == 0x0) && (map_log == 0x0)) {
282 cout <<
"sol_elliptic only defined for affine or log mapping" << endl ;
289 if (map_affine != 0x0)
291 fact_dir, fact_neu ) ;
293 map_log->sol_elliptic_boundary (ope_var, *
this, res, bound,
294 fact_dir, fact_neu ) ;
312 if ((map_affine == 0x0) && (map_log == 0x0)) {
313 cout <<
"sol_elliptic_no_zec only defined for affine or log mapping" << endl ;
320 if (map_affine != 0x0)
323 map_log->sol_elliptic_no_zec (ope_var, *
this, res, val) ;
338 if (map_affine == 0x0) {
339 cout <<
"sol_elliptic_no_zec only defined for affine or log mapping" << endl ;
361 if (map_affine == 0x0) {
362 cout <<
"sol_elliptic_sin_zec only defined for affine mapping" << endl ;
384 if (map_affine == 0x0) {
385 cout <<
"sol_elliptic_no_zec only defined for affine mapping" << endl ;
406 if (map_affine == 0x0) {
407 cout <<
"Poisson 2D only defined for affine mapping" << endl ;
427 if (map_affine == 0x0) {
428 cout <<
"Pseudo_1d only defined for affine mapping" << endl ;
void sol_elliptic_only_zec(Param_elliptic ¶ms, const Scalar &so, Scalar &uu, double val) const
General elliptic solver.
Tensor field of valence 0 (or component of a tensorial field).
Scalar poisson() const
Solves the scalar Poisson equation with *this as a source.
void sol_elliptic_2d(Param_elliptic &, const Scalar &, Scalar &) const
General elliptic solver in a 2D case.
Scalar sol_elliptic_fixe_der_zero(double val, Param_elliptic ¶ms) const
Resolution of a general elliptic equation fixing the dericative at the origin and relaxing one contin...
virtual void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
Scalar poisson_angu(double lambda=0) const
Solves the (generalized) angular Poisson equation with *this as source.
Scalar sol_elliptic_only_zec(Param_elliptic ¶ms, double val) const
Resolution of a general elliptic equation solving in the compactified domain and putting a given valu...
virtual void poisson_tau(const Cmp &source, Param &par, Cmp &uu) const =0
Computes the solution of a scalar Poisson equationwith a Tau method (Cmp version).
Scalar avance_dalembert(Param &par, const Scalar &fJm1, const Scalar &source) const
Performs one time-step integration (from ) of the scalar d'Alembert equation with *this being the val...
virtual void dalembert(Param &par, Scalar &fJp1, const Scalar &fJ, const Scalar &fJm1, const Scalar &source) const =0
Performs one time-step integration of the d'Alembert scalar equation.
virtual void poisson(const Cmp &source, Param &par, Cmp &uu, bool verbose=true) const =0
Computes the solution of a scalar Poisson equation (Cmp version).
Scalar sol_elliptic_no_zec(Param_elliptic ¶ms, double val=0) const
Resolution of a general elliptic equation, putting a given value at the outermost shell and not solvi...
Logarithmic radial mapping.
Scalar sol_elliptic(Param_elliptic ¶ms) const
Resolution of a general elliptic equation, putting zero at infinity.
Scalar sol_elliptic_boundary(Param_elliptic ¶ms, const Mtbl_cf &bound, double fact_dir, double fact_neu) const
Resolution of a general elliptic equation, putting zero at infinity and with inner boundary condition...
void sol_elliptic_no_zec(Param_elliptic ¶ms, const Scalar &so, Scalar &uu, double val) const
General elliptic solver.
This class contains the parameters needed to call the general elliptic solver.
void sol_elliptic(Param_elliptic ¶ms, const Scalar &so, Scalar &uu) const
General elliptic solver.
void sol_elliptic_fixe_der_zero(double val, Param_elliptic ¶ms, const Scalar &so, Scalar &uu) const
General elliptic solver fixing the derivative at the origin and relaxing the continuity of the first ...
Scalar sol_elliptic_pseudo_1d(Param_elliptic &) const
Solves a pseudo-1d elliptic equation with *this as a source.
Coefficients storage for the multi-domain spectral method.
void sol_elliptic_pseudo_1d(Param_elliptic &, const Scalar &, Scalar &) const
General elliptic solver in a pseudo 1d case.
void sol_elliptic_boundary(Param_elliptic ¶ms, const Scalar &so, Scalar &uu, const Mtbl_cf &bound, double fact_dir, double fact_neu) const
General elliptic solver including inner boundary conditions.
const Map *const mp
Mapping on which the numerical values at the grid points are defined.
Scalar sol_elliptic_sin_zec(Param_elliptic ¶ms, double *coefs, double *phases) const
General elliptic solver.
void sol_elliptic_sin_zec(Param_elliptic ¶ms, const Scalar &so, Scalar &uu, double *coefs, double *) const
General elliptic solver.
virtual void poisson_angu(const Scalar &source, Param &par, Scalar &uu, double lambda=0) const =0
Computes the solution of the generalized angular Poisson equation.
Scalar sol_elliptic_2d(Param_elliptic &) const
Solves the scalar 2-dimensional elliptic equation with *this as a source.
Scalar poisson_tau() const
Solves the scalar Poisson equation with *this as a source using a real Tau method The source of the ...