83 int nr =
mg->get_nr(nucl) ;
84 int nt =
mg->get_nt(nucl) ;
85 int np =
mg->get_np(nucl) ;
89 assert(
etat == ETATQCQ) ;
91 assert(nr ==
mg->get_nr(nzet)) ;
92 assert(nt ==
mg->get_nt(nzet)) ;
93 assert(np ==
mg->get_np(nzet)) ;
97 pot = *((*this).c_cf) ;
99 Tbl& ccf_nucl = *((pot.
c_cf)->t[nucl]) ;
100 Tbl& ccf_shell = *((pot.
c_cf)->t[nzet]) ;
106 Tbl nucl_kj(np, nt) ;
109 for (
int k=0 ; k<np ; k++) {
110 for (
int j=0 ; j<nt ; j++) {
113 for (
int i=0 ; i<nr ; i++) {
115 tmp += ccf_nucl(k, j, i) ;
118 nucl_kj.
set(k, j) = tmp ;
127 Tbl shell_kj(np, nt) ;
130 for (
int k=0 ; k<np ; k++) {
131 for (
int j=0 ; j<nt ; j++) {
134 for (
int i=0 ; i<nr-1 ; i++) {
136 tmp2 +=
pow(-1., i) * ccf_shell(k, j, i) ;
139 shell_kj.
set(k, j) = tmp2 ;
153 for (
int k=0 ; k<np ; k++) {
154 for (
int j=0 ; j<nt ; j++) {
156 uuva_cf.
set(nzet, k, j, nr-1) = nucl_kj(k, j) - shell_kj(k, j) ;
Coefficients storage for the multi-domain spectral method.
Tbl & set(int l)
Read/write of the Tbl containing the coefficients in a given domain.
Tbl ** t
Array (size nzone ) of pointers on the Tbl 's which contain the spectral coefficients in each domain.
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
void set_etat_qcq()
Sets the logical state to ETATQCQ (ordinary state).
double & set(int i)
Read/write of a particular element (index i) (1D case).
void set_etat_cf_qcq()
Sets the logical state to ETATQCQ (ordinary state) for values in the configuration space (Mtbl_cf c_c...
Valeur(const Mg3d &mgrid)
Constructor.
const Mg3d * mg
Multi-grid Mgd3 on which this is defined.
void coef_i() const
Computes the physical value of *this.
Mtbl_cf * c_cf
Coefficients of the spectral expansion of the function.
int etat
Logical state (ETATNONDEF , ETATQCQ or ETATZERO ).
void smooth(int nzet, Valeur &uuva) const
Changes the function *this as a smooth one when there exists a discontinuity between the nucleus and ...
Cmp pow(const Cmp &, int)
Power .