133 void chb_sini_legpi(
const int* deg ,
const double* cfi,
double* cfo) {
135 int k2, l, jmin, j, i, m ;
143 assert( cfi != cfo ) ;
146 double* som =
new double[nr] ;
149 double* aa = mat_sini_legpi(np, nt) ;
156 const double* cc = cfi ;
168 for (l=0; l<nt-1; l++) {
169 for (i=0; i<nr; i++) {
175 for (j=jmin; j<nt-1; j++) {
176 double amlj = aa[nt*l + j] ;
177 for (i=0; i<nr; i++) {
178 som[i] += amlj * cc[nr*j + i] ;
182 for (i=0; i<nr; i++) {
190 for (i=0; i<nr; i++) {
198 for (i=0; i<2*ntnr; i++) {
214 for (l=0; l<nt; l++) {
215 for (i=0; i<nr; i++) {
229 for (l=0; l<nt-1; l++) {
230 for (i=0; i<nr; i++) {
236 for (j=jmin; j<nt-1; j++) {
237 double amlj = aa[nt*l + j] ;
238 for (i=0; i<nr; i++) {
239 som[i] += amlj * cc[nr*j + i] ;
243 for (i=0; i<nr; i++) {
251 for (i=0; i<nr; i++) {
266 for (m=3; m < np ; m+=2) {
268 for (k2=0; k2 < 2; k2++) {
270 for (l=0; l<(m-1)/2; l++) {
271 for (i=0; i<nr; i++) {
278 for (l=(m-1)/2; l<nt-1; l++) {
279 for (i=0; i<nr; i++) {
285 for (j=jmin; j<nt-1; j++) {
286 double amlj = aa[nt*l + j] ;
287 for (i=0; i<nr; i++) {
288 som[i] += amlj * cc[nr*j + 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) ;