LORENE
|
Basic class for elementary elliptic operators. More...
#include <ope_elementary.h>
Public Member Functions | |
virtual | ~Ope_elementary () |
Destructor. More... | |
double | val_sh_one_minus () const |
Returns the value of the first homogeneous solution at the inner boundary. More... | |
double | val_sh_one_plus () const |
Returns the value of the first homogeneous solution at the outer boundary. More... | |
double | der_sh_one_minus () const |
Returns the value of the derivative of the first homogeneous solution at the inner boundary. More... | |
double | der_sh_one_plus () const |
Returns the value of the derivative of the first homogeneous solution at the outer boundary. More... | |
double | val_sh_two_minus () const |
Returns the value of the second homogeneous solution at the inner boundary. More... | |
double | val_sh_two_plus () const |
Returns the value of the second homogeneous solution at the outer boundary. More... | |
double | der_sh_two_minus () const |
Returns the value of the derivative of the second homogeneous solution at the inner boundary. More... | |
double | der_sh_two_plus () const |
Returns the value of the derivative of the second homogeneous solution at the outer boundary. More... | |
double | val_sp_minus () const |
Returns the value of the particular solution at the inner boundary. More... | |
double | val_sp_plus () const |
Returns the value of the particular solution at the outer boundary. More... | |
double | der_sp_minus () const |
Returns the value of the derivative particular solution at the inner boundary. More... | |
double | der_sp_plus () const |
Returns the value of the derivative particular solution at the outer boundary. More... | |
double | get_alpha () const |
Returns alpha . More... | |
double | get_beta () const |
Returns beta} . More... | |
int | get_base_r () const |
Returns base_r} . More... | |
Matrice | get_ope_mat () |
Returns the matrix representation. More... | |
Matrice | get_ope_cl () |
Returns the banded matrix representation. More... | |
Matrice | get_non_dege () |
Returns the non degenerate matrix representation. More... | |
virtual Tbl | get_solp (const Tbl &so) const =0 |
Computes the particular solution, given the source so . More... | |
virtual Tbl | get_solh () const =0 |
Computes the homogeneous solutions(s). More... | |
virtual void | inc_l_quant ()=0 |
Increases the quatum number l by one unit. More... | |
Protected Member Functions | |
Ope_elementary (int nbr, int baser, double alf, double eta) | |
Standard constructor, protected because the class is an abstract one. More... | |
Ope_elementary (const Ope_elementary &) | |
Constructor by copy. More... | |
Protected Attributes | |
int | nr |
Number of radial points. More... | |
int | base_r |
Radial basis of decomposition. More... | |
double | alpha |
Parameter of the associated mapping. More... | |
double | beta |
Parameter of the associated mapping. More... | |
Matrice * | ope_mat |
Pointer on the matrix representation of the operator. More... | |
Matrice * | ope_cl |
Pointer on the banded-matrix of the operator. More... | |
Matrice * | non_dege |
Pointer on the non-degenerated matrix of the operator. More... | |
double | s_one_plus |
Value of the first homogeneous solution at the outer boundary. More... | |
double | s_one_minus |
Value of the first homogeneous solution at the inner boundary. More... | |
double | ds_one_plus |
Value of the derivative of the first homogeneous solution at the outer boundary. More... | |
double | ds_one_minus |
Value of the derivative of the first homogeneous solution at the inner boundary. More... | |
double | s_two_plus |
Value of the second homogeneous solution at the outer boundary. More... | |
double | s_two_minus |
Value of the second homogeneous solution at the inner boundary. More... | |
double | ds_two_plus |
Value of the derivative of the second homogeneous solution at the outer boundary. More... | |
double | ds_two_minus |
Value of the derivative of the second homogeneous solution at the inner boundary. More... | |
double | sp_minus |
Value of the particular solution at the inner boundary. More... | |
double | sp_plus |
Value of the particular solution at the outer boundary. More... | |
double | dsp_minus |
Value of the derivative of the particular solution at the inner boundary. More... | |
double | dsp_plus |
Value of the derivative of the particular solution at the outer boundary. More... | |
Private Member Functions | |
virtual void | do_ope_mat () const =0 |
Computes the matrix of the operator. More... | |
virtual void | do_ope_cl () const =0 |
Computes the banded-matrix of the operator. More... | |
virtual void | do_non_dege () const =0 |
Computes the non-degenerated matrix of the operator. More... | |
Basic class for elementary elliptic operators.
Such objects describe a type of elliptic operator, in a given domain and for a given spherical harmonics. They are called by the general elliptic solver. Ope_elementary
objects know how to compute the approriate particular solution for a given source and the associated homogeneous ones.
The class Ope_elementary
is an abstract one: it cannot be instanciated. Specific implementation of coordinate mappings will be performed by derived classes of Ope_elementary
.()
Definition at line 102 of file ope_elementary.h.
|
explicitprotected |
Standard constructor, protected because the class is an abstract one.
nbr | [input] number of radial points. |
baser | [input] radial basis of decomposition. |
alf | [input] parameter of the mapping. |
bet | [input] parameter of the mapping. |
Definition at line 45 of file ope_elementary.C.
|
protected |
Constructor by copy.
Definition at line 50 of file ope_elementary.C.
|
virtual |
Destructor.
Definition at line 65 of file ope_elementary.C.
|
inline |
Returns the value of the derivative of the first homogeneous solution at the inner boundary.
Definition at line 211 of file ope_elementary.h.
References ds_one_minus.
|
inline |
Returns the value of the derivative of the first homogeneous solution at the outer boundary.
Definition at line 217 of file ope_elementary.h.
References ds_one_plus.
|
inline |
Returns the value of the derivative of the second homogeneous solution at the inner boundary.
Definition at line 234 of file ope_elementary.h.
References ds_two_minus.
|
inline |
Returns the value of the derivative of the second homogeneous solution at the outer boundary.
Definition at line 240 of file ope_elementary.h.
References ds_two_plus.
|
inline |
Returns the value of the derivative particular solution at the inner boundary.
Definition at line 254 of file ope_elementary.h.
References dsp_minus.
|
inline |
Returns the value of the derivative particular solution at the outer boundary.
Definition at line 259 of file ope_elementary.h.
References dsp_plus.
|
privatepure virtual |
Computes the non-degenerated matrix of the operator.
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_pois_tens_rr, Lorene::Ope_pois_vect_r, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
|
privatepure virtual |
Computes the banded-matrix of the operator.
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_pois_tens_rr, Lorene::Ope_pois_vect_r, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
|
privatepure virtual |
Computes the matrix of the operator.
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_pois_tens_rr, Lorene::Ope_pois_vect_r, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
|
inline |
|
inline |
|
inline |
|
inline |
Returns the non degenerate matrix representation.
Definition at line 285 of file ope_elementary.h.
References do_non_dege(), and non_dege.
|
inline |
Returns the banded matrix representation.
Definition at line 278 of file ope_elementary.h.
References do_ope_cl(), and ope_cl.
|
inline |
Returns the matrix representation.
Definition at line 271 of file ope_elementary.h.
References do_ope_mat(), and ope_mat.
|
pure virtual |
Computes the homogeneous solutions(s).
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_pois_tens_rr, Lorene::Ope_pois_vect_r, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
Computes the particular solution, given the source so
.
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
|
pure virtual |
Increases the quatum number l by one unit.
Implemented in Lorene::Ope_vorton, Lorene::Ope_helmholtz_minus_pseudo_1d, Lorene::Ope_poisson_pseudo_1d, Lorene::Ope_helmholtz_minus_2d, Lorene::Ope_poisson_2d, Lorene::Ope_sec_order, Lorene::Ope_sec_order_r2, Lorene::Ope_helmholtz_plus, Lorene::Ope_helmholtz_minus, and Lorene::Ope_poisson.
|
inline |
Returns the value of the first homogeneous solution at the inner boundary.
Definition at line 200 of file ope_elementary.h.
References s_one_minus.
|
inline |
Returns the value of the first homogeneous solution at the outer boundary.
Definition at line 205 of file ope_elementary.h.
References s_one_plus.
|
inline |
Returns the value of the second homogeneous solution at the inner boundary.
Definition at line 223 of file ope_elementary.h.
References s_two_minus.
|
inline |
Returns the value of the second homogeneous solution at the outer boundary.
Definition at line 228 of file ope_elementary.h.
References s_two_plus.
|
inline |
Returns the value of the particular solution at the inner boundary.
Definition at line 245 of file ope_elementary.h.
References sp_minus.
|
inline |
Returns the value of the particular solution at the outer boundary.
Definition at line 249 of file ope_elementary.h.
References sp_plus.
|
protected |
Parameter of the associated mapping.
Definition at line 108 of file ope_elementary.h.
|
protected |
Radial basis of decomposition.
Definition at line 107 of file ope_elementary.h.
|
protected |
Parameter of the associated mapping.
Definition at line 109 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the first homogeneous solution at the inner boundary.
Definition at line 141 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the first homogeneous solution at the outer boundary.
Definition at line 136 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the second homogeneous solution at the inner boundary.
Definition at line 160 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the second homogeneous solution at the outer boundary.
Definition at line 155 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the particular solution at the inner boundary.
Definition at line 173 of file ope_elementary.h.
|
mutableprotected |
Value of the derivative of the particular solution at the outer boundary.
Definition at line 177 of file ope_elementary.h.
|
mutableprotected |
Pointer on the non-degenerated matrix of the operator.
Definition at line 122 of file ope_elementary.h.
|
protected |
Number of radial points.
Definition at line 106 of file ope_elementary.h.
|
mutableprotected |
Pointer on the banded-matrix of the operator.
Definition at line 118 of file ope_elementary.h.
|
mutableprotected |
Pointer on the matrix representation of the operator.
Definition at line 114 of file ope_elementary.h.
|
mutableprotected |
Value of the first homogeneous solution at the inner boundary.
Definition at line 131 of file ope_elementary.h.
|
mutableprotected |
Value of the first homogeneous solution at the outer boundary.
Definition at line 127 of file ope_elementary.h.
|
mutableprotected |
Value of the second homogeneous solution at the inner boundary.
Definition at line 150 of file ope_elementary.h.
|
mutableprotected |
Value of the second homogeneous solution at the outer boundary.
Definition at line 146 of file ope_elementary.h.
|
mutableprotected |
Value of the particular solution at the inner boundary.
Definition at line 165 of file ope_elementary.h.
|
mutableprotected |
Value of the particular solution at the outer boundary.
Definition at line 169 of file ope_elementary.h.