133 void chb_legi_cossinci(
const int* deg ,
const double* cfi,
double* cfo) {
135 int ip, k2, l, j, i, m ;
145 double* som =
new double[nr] ;
148 double* bb = mat_legi_cossinci(np, nt) ;
155 const double* cc = cfi ;
171 for (ip=0; ip < np/4 + 1 ; ip++) {
178 for (k2=0; k2 < 2; k2++) {
180 if ( (k == 1) || (k == np+1) ) {
182 for (j=0; j<nt; j++) {
183 for (i=0; i<nr; i++) {
194 for (j=0; j<nt-1; j++) {
196 for (i=0; i<nr; i++) {
200 for (l=m/2; l<nt-1; l++) {
202 double bmjl = bb[nt*j + l] ;
203 for (i=0; i<nr; i++) {
204 som[i] += bmjl * cc[nr*l + i] ;
208 for (i=0; i<nr; i++) {
216 for (i=0; i<nr; i++) {
237 for (k2=0; k2 < 2; k2++) {
241 for (j=0; j<nt; j++) {
242 for (i=0; i<nr; i++) {
254 for (i=0; i<nr; i++) {
261 for (j=1; j<nt-1; j++) {
263 for (i=0; i<nr; i++) {
267 for (l=(m+1)/2; l<nt-1; l++) {
268 double bmjl = bb[nt*j + l] ;
269 for (i=0; i<nr; i++) {
270 som[i] += bmjl * cc[nr*l + i] ;
274 for (i=0; i<nr; i++) {
282 for (i=0; i<nr; i++) {
305 assert(resu == cfo + (np+2)*ntnr) ;