67 assert (
etat != ETATNONDEF) ;
76 "Scalar::raccord : The mapping does not belong to the class Map_af !"
81 assert (mapping->get_mg()->get_type_r(1) == FIN) ;
82 assert (mapping->get_mg()->get_type_r(0) == RARE) ;
87 va.set_etat_cf_qcq() ;
88 va.c_cf->t[0]->annule_hard() ;
91 int nz = mapping->get_mg()->get_nzone() ;
92 int nbrer_kernel = mapping->get_mg()->get_nr(0) ;
93 int nbrer_shell = mapping->get_mg()->get_nr(1) ;
95 int nbret_kernel = mapping->get_mg()->get_nt(0) ;
96 int nbret_shell = mapping->get_mg()->get_nt(1) ;
98 int nbrep_kernel = mapping->get_mg()->get_np(0) ;
99 int nbrep_shell = mapping->get_mg()->get_np(1) ;
101 double alpha_kernel = mapping->
get_alpha()[0] ;
102 double alpha_shell = mapping->
get_alpha()[1] ;
104 int base_r, m_quant, l_quant ;
106 for (
int k=0 ; k<nbrep_kernel+1 ; k++)
107 for (
int j=0 ; j<nbret_kernel ; j++)
108 if (nullite_plm(j, nbret_kernel, k,nbrep_kernel,
va.base) == 1)
109 if (nullite_plm(j, nbret_shell, k, nbrep_shell,
va.base) == 1)
112 donne_lm(nz, 0, j, k,
va.base, m_quant, l_quant, base_r) ;
117 Tbl facteur (nbrer_kernel) ;
119 for (
int i=0 ; i<nbrer_shell ; i++)
121 facteur.
set(i) = (*
va.c_cf)(1, k, j, i) ;
123 Tbl sec_membre (sec_membre_raccord (facteur, cont, alpha_shell)) ;
126 systeme = matrice_raccord_pair (cont, alpha_kernel) ;
128 systeme = matrice_raccord_impair (cont, alpha_kernel) ;
131 Tbl regulier (nbrer_kernel) ;
134 for (
int i=0 ; i<cont ; i++)
135 va.c_cf->set(0, k, j, i) = soluce(i) ;
138 regulier = regularise (soluce, nbrer_kernel,
R_CHEBP) ;
140 regulier = regularise (soluce, nbrer_kernel,
R_CHEBI) ;
142 for (
int i=0 ; i<nbrer_kernel ; i++)
143 va.c_cf->set(0, k, j, i) = regulier(i) ;