32 #include "ope_elementary.h" 40 Matrice _helmholtz_minus_2d_non_dege_pas_prevu(
const Matrice &lap,
int) {
41 cout <<
"Construction non degeneree pas prevue..." << endl ;
53 Matrice _helmholtz_minus_2d_non_dege_r_cheb (
const Matrice &lap,
int) {
58 Matrice res(n-2, n-2) ;
60 for (
int i=0 ; i<n-2 ; i++)
61 for (
int j=0 ; j<n-2 ; j++)
62 res.set(i, j) = lap(i, j+2) ;
74 Matrice _helmholtz_minus_2d_non_dege_r_chebu_deux (
const Matrice&) ;
76 Matrice _helmholtz_minus_2d_non_dege_r_chebu (
const Matrice &lap,
int puis) {
80 return _helmholtz_minus_2d_non_dege_r_chebu_deux (lap) ;
84 return Matrice(0, 0) ;
90 Matrice _helmholtz_minus_2d_non_dege_r_chebu_deux (
const Matrice &lap) {
94 Matrice res(n-1, n-1) ;
96 for (
int i=0 ;i<n-1 ; i++)
97 for (
int j=0 ; j<n-1 ; j++)
98 res.set(i, j) = lap(i, j+1) ;
121 helmholtz_minus_2d_non_dege[i] = _helmholtz_minus_2d_non_dege_pas_prevu ;
124 helmholtz_minus_2d_non_dege[
R_CHEB >>
TRA_R] = _helmholtz_minus_2d_non_dege_r_cheb ;
125 helmholtz_minus_2d_non_dege[
R_CHEBU >>
TRA_R] = _helmholtz_minus_2d_non_dege_r_chebu ;
Matrice * ope_cl
Pointer on the banded-matrix of the operator.
virtual void do_ope_cl() const
Computes the banded-matrix of the operator.
int base_r
Radial basis of decomposition.
virtual void do_non_dege() const
Computes the non-degenerated matrix of the operator.
#define TRA_R
Translation en R, used for a bitwise shift (in hex)
int get_dim(int i) const
Returns the dimension of the matrix.
int dzpuis
the associated dzpuis, if in the compactified domain.
#define R_CHEBU
base de Chebychev ordinaire (fin), dev. en 1/r
#define MAX_BASE
Nombre max. de bases differentes.
Matrice * non_dege
Pointer on the non-degenerated matrix of the operator.
#define R_CHEB
base de Chebychev ordinaire (fin)