28char mg3d_std_base_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Mg3d/mg3d_std_base.C,v 1.13 2014/10/13 08:53:07 j_novak Exp $" ;
93#include "type_parite.h"
105 for (
int l=0; l<
nzone; l++) {
120 cout <<
"Mg3d::std_base_scal : unknown type of radial base!"
135 for (
int l=0; l<
nzone; l++) {
150 cout <<
"Mg3d::std_base_scal_odd : unknown type of radial base!"
184 for (
int i=0 ; i<3 ; i++)
188 for (
int l=0; l<
nzone; l++) {
198 int base1, base2, base3 ;
256 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
259 " dans la zone l = " << l <<
" n'est pas prevu ! "
306 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
309 " dans la zone l = " << l <<
" n'est pas prevu ! "
321 "Mg3d::std_base_vect_cart : le cas type_p, type_t = "
324 " dans la zone l = " << l <<
" n'est pas prevu ! "
389 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
392 " dans la zone l = " << l <<
" n'est pas prevu ! "
403 base1 = base1 |
T_SIN ;
404 base2 = base2 |
T_SIN ;
405 base3 = base3 |
T_COS ;
439 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
442 " dans la zone l = " << l <<
" n'est pas prevu ! "
452 "Mg3d::std_base_vect_cart : le cas type_p, type_t = "
455 " dans la zone l = " << l <<
" n'est pas prevu ! "
468 "Mg3d::std_base_vect_cart : le cas type_p = " <<
type_p << endl ;
469 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
476 bases[0]->
b[l] = base1 ;
477 bases[1]->
b[l] = base2 ;
478 bases[2]->
b[l] = base3 ;
506 for (
int i=0 ; i<3 ; i++)
510 for (
int l=0; l<
nzone; l++) {
520 int base1, base2, base3 ;
577 "Mg3d::std_base_vect_sphere : le cas type_p, type_t, type_r = "
579 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
626 "Mg3d::std_base_vect_sphere : le cas type_p, type_t, type_r = "
628 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
637 cout <<
"Mg3d::std_base_vect_spher : le cas type_p, type_t = "
639 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
702 "Mg3d::std_base_vect_spher : le cas type_p, type_t, type_r = "
704 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
715 base1 = base1 |
T_COS ;
716 base2 = base2 |
T_SIN ;
717 base3 = base3 |
T_SIN ;
749 cout <<
"Mg3d::std_base_vect_spher : le cas type_p, type_t = "
751 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
761 "Mg3d::std_base_vect_spher : le cas type_p = " <<
type_p << endl ;
762 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
769 bases[0]->
b[l] = base1 ;
770 bases[1]->
b[l] = base2 ;
771 bases[2]->
b[l] = base3 ;
801 for (
int i=0 ; i<3 ; i++)
805 for (
int l=0; l<
nzone; l++) {
815 int base1, base2, base3 ;
872 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
875 " dans la zone l = " << l <<
" n'est pas prevu ! "
922 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
925 " dans la zone l = " << l <<
" n'est pas prevu ! "
937 "Mg3d::std_base_vect_cart : le cas type_p, type_t = "
940 " dans la zone l = " << l <<
" n'est pas prevu ! "
1005 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
1008 " dans la zone l = " << l <<
" n'est pas prevu ! "
1019 base1 = base1 |
T_SIN ;
1020 base2 = base2 |
T_SIN ;
1021 base3 = base3 |
T_COS ;
1025 switch ( type_r0 ) {
1055 "Mg3d::std_base_vect_cart : le cas type_p, type_t, type_r = "
1058 " dans la zone l = " << l <<
" n'est pas prevu ! "
1067 "Mg3d::std_base_vect_cart : le cas type_p, type_t = "
1070 " dans la zone l = " << l <<
" n'est pas prevu ! "
1083 "Mg3d::std_base_vect_cart : le cas type_p = " <<
type_p << endl ;
1084 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1091 bases[0]->
b[l] = base1 ;
1092 bases[1]->
b[l] = base2 ;
1093 bases[2]->
b[l] = base3 ;
1121 for (
int i=0 ; i<3 ; i++)
1125 for (
int l=0; l<
nzone; l++) {
1127 assert (
colloc_r[l] == BASE_CHEB) ;
1135 int base1, base2, base3 ;
1162 switch ( type_r0 ) {
1192 "Mg3d::std_base_vect_sphere : le cas type_p, type_t, type_r = "
1194 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1211 switch ( type_r0 ) {
1241 "Mg3d::std_base_vect_sphere : le cas type_p, type_t, type_r = "
1243 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1252 cout <<
"Mg3d::std_base_vect_spher : le cas type_p, type_t = "
1254 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1288 switch ( type_r0 ) {
1317 "Mg3d::std_base_vect_spher : le cas type_p, type_t, type_r = "
1319 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1330 base1 = base1 |
T_COS ;
1331 base2 = base2 |
T_SIN ;
1332 base3 = base3 |
T_SIN ;
1336 switch ( type_r0 ) {
1364 cout <<
"Mg3d::std_base_vect_spher : le cas type_p, type_t = "
1366 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1373 cout <<
"Mg3d::std_base_vect_spher : le cas type_p, type_t = "
1375 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1385 "Mg3d::std_base_vect_spher : le cas type_p = " <<
type_p << endl ;
1386 cout <<
" dans la zone l = " << l <<
" n'est pas prevu ! "
1393 bases[0]->
b[l] = base1 ;
1394 bases[1]->
b[l] = base2 ;
1395 bases[2]->
b[l] = base3 ;
Bases of the spectral expansions.
int * b
Array (size: nzone ) of the spectral basis in each domain.
Base_val ** std_base_vect_spher() const
Returns the standard spectral bases for the spherical components of a vector.
int * type_r
Array (size: nzone) of type of sampling in r ( ) (RARE,FIN, c UNSURR)
int type_t
Type of sampling in (SYM, NONSYM)
Base_val std_base_scal_odd() const
Returns the standard odd spectral bases for a scalar.
int type_p
Type of sampling in (SYM, NONSYM)
Base_val ** pseudo_base_vect_spher() const
Returns the standard spectral bases for the spherical components of a pseudo-vector.
Base_val ** pseudo_base_vect_cart() const
Returns the standard spectral bases for the Cartesian components of a pseudo-vector.
int get_nzone() const
Returns the number of domains.
int nzone
Number of domains (zones)
int get_type_r(int l) const
Returns the type of sampling in the radial direction in domain no.
Base_val std_base_scal() const
Returns the standard spectral bases for a scalar.
Base_val ** std_base_vect_cart() const
Returns the standard spectral bases for the Cartesian components of a vector.
int * colloc_r
Array (size: nzone) of type of collocation points in r ( ) and related decompoisition bases (BASE_CHE...
#define P_COSSIN_P
dev. sur Phi = 2*phi, freq. paires
#define R_CHEBU
base de Chebychev ordinaire (fin), dev. en 1/r
#define T_COSSIN_SP
sin pair-cos impair alternes, sin pour m=0
#define R_CHEBI
base de Cheb. impaire (rare) seulement
#define T_SIN_P
dev. sin seulement, harmoniques paires
#define T_COSSIN_S
dev. cos-sin alternes, sin pour m=0
#define R_CHEBPIM_I
Cheb. pair-impair suivant m, impair pour m=0.
#define T_COSSIN_SI
sin impair-cos pair alternes, sin pour m=0
#define R_CHEBPI_I
Cheb. pair-impair suivant l impair pour l=0.
#define T_COS_P
dev. cos seulement, harmoniques paires
#define T_COSSIN_CI
cos impair-sin pair alternes, cos pour m=0
#define P_COSSIN
dev. standart
#define P_COSSIN_I
dev. sur Phi = 2*phi, freq. impaires
#define R_CHEBPIM_P
Cheb. pair-impair suivant m, pair pour m=0.
#define T_COSSIN_CP
cos pair-sin impair alternes, cos pour m=0
#define R_CHEB
base de Chebychev ordinaire (fin)
#define T_SIN_I
dev. sin seulement, harmoniques impaires
#define T_COS
dev. cos seulement
#define R_CHEBP
base de Cheb. paire (rare) seulement
#define T_SIN
dev. sin seulement
#define T_COS_I
dev. cos seulement, harmoniques impaires
#define T_COSSIN_C
dev. cos-sin alternes, cos pour m=0
#define R_CHEBPI_P
Cheb. pair-impair suivant l pair pour l=0.