122 void chb_legii_sinp(
const int* deg ,
const double* cfi,
double* cfo) {
132 assert( cfi != cfo ) ;
135 double* som =
new double[nr] ;
137 double* bb = mat_legii_sinp(np, nt) ;
144 const double* cc = cfi ;
156 for (i=0; i<nr; i++) {
163 for (j=1; j<nt-1; j++) {
166 for (i=0; i<nr; i++) {
170 for (l=1; l<nt-1; l++) {
171 double bmjl = bb[nt*j + l] ;
172 for (i=0; i<nr; i++) {
173 som[i] += bmjl * cc[nr*l + i] ;
177 for (i=0; i<nr; i++) {
185 for (i=0; i<nr; i++) {
193 for (i=0; i<2*ntnr; i++) {
208 for (l=0; l<nt; l++) {
209 for (i=0; i<nr; i++) {
223 for (i=0; i<nr; i++) {
230 for (j=1; j<nt-1; j++) {
233 for (i=0; i<nr; i++) {
237 for (l=1; l<nt-1; l++) {
238 double bmjl = bb[nt*j + l] ;
239 for (i=0; i<nr; i++) {
240 som[i] += bmjl * cc[nr*l + i] ;
244 for (i=0; i<nr; i++) {
252 for (i=0; i<nr; i++) {
267 for (m=3; m < np ; m+=2) {
269 for (k2=0; k2 < 2; k2++) {
274 for (i=0; i<nr; i++) {
279 for (j=1; j<nt-1; j++) {
281 for (i=0; i<nr; i++) {
285 for (l=(m+1)/2; l<nt-1; l++) {
286 double bmjl = bb[nt*j + l] ;
287 for (i=0; i<nr; i++) {
288 som[i] += bmjl * cc[nr*l + i] ;
292 for (i=0; i<nr; i++) {
300 for (i=0; i<nr; i++) {
320 for (l=0; l<nt; l++) {
321 for (i=0; i<nr; i++) {
329 assert(resu == cfo + (np+2)*ntnr) ;