64 ost <<
"Spectral expansion (Mtbl_cf, threshold for display = "
65 << thres <<
")" << endl ;
68 if (
etat == ETATNONDEF) {
69 ost <<
" state: UNDEFINED" << endl ;
73 if (
etat == ETATZERO) {
74 ost <<
" state: ZERO" << endl ;
78 ost.precision(precis);
79 ost.setf(ios::showpoint);
80 assert(
etat == ETATQCQ) ;
85 for (
int l=0; l<
nzone; l++) {
87 int nr =
mg->get_nr(l) ;
88 int nt =
mg->get_nt(l) ;
89 int np =
mg->get_np(l) ;
91 ost <<
" --------- Domain no. " << l <<
" ------- nr x nt x np = "
92 << nr <<
" x " << nt <<
" x " << np <<
" ------" << endl ;
93 const Tbl& tcf = *(
t[l]) ;
95 ost <<
"*** identically ZERO ***" << endl << endl ;
99 ost <<
"*** UNDEFINED ***" << endl << endl ;
102 assert( tcf.
get_etat() == ETATQCQ ) ;
104 for (
int k=0; k<=np; k++) {
105 base.name_phi(l, k, namep) ;
106 if (namep[0] ==
'u') continue ;
108 for (
int j=0; j<nt; j++) {
110 bool test_display = false ;
111 for (
int i=0; i<nr; i++) {
112 if (fabs( tcf(k, j, i) ) >= thres) test_display = true ;
115 base.name_theta(l, k, j, namet) ;
117 test_display = test_display && ( namet[0] !=
'u' ) ;
120 ost <<
"# " << namep <<
" " << namet <<
" :" ;
121 for (
int i=0; i<nr; i++) {
122 double cx = tcf(k, j, i) ;
123 if (fabs( cx ) >= thres) {
124 base.name_r(l, k, j, i, namer) ;
125 if (namer[0] ==
'u') continue ;
126 if ( (i>0) && (cx >= 0.) ) {
127 ost <<
" +" << setw(precis) << cx
131 ost <<
" " << setw(precis) << cx
void display(double threshold=1.e-7, int precision=4, ostream &ostr=cout) const
Prints the coefficients whose values are greater than a given threshold, as well as the corresponding...