23char cipcossin_C[] =
"$Header: /cvsroot/Lorene/C++/Source/Non_class_members/Coef/FFT991/cipcossin.C,v 1.4 2014/10/15 12:48:21 j_novak Exp $" ;
129#include "proto_f77.h"
133int* facto_ini(
int ) ;
134double* trigo_ini(
int ) ;
137void cipcossin(
const int* deg,
const int* dimc,
const int* dimf,
138 double* cf,
double* ff)
156 cout <<
"cipcossin: np+2 > n1c : np = " << np <<
" , n1c = "
162 cout <<
"cipcossin: np > n1f : np = " << np <<
" , n1f = "
168 cout <<
"cipcossin: n3f > n3c : n3f = " << n3f <<
" , n3c = "
174 cout <<
"cipcossin: n2f > n2c : n2f = " << n2f <<
" , n2c = "
181 int* facto = facto_ini(np) ;
182 double* trigo = trigo_ini(np) ;
185 double* t1 = (
double*)( malloc( (np+2)*
sizeof(
double) ) ) ;
188 int n2n3c = n2c * n3c ;
189 for (i=2; i<np; i += 2 ) {
190 for (j=0; j<n2c; j++) {
191 for (k=0; k<n3c; k++) {
192 index = n2n3c * i + n3c * j + k ;
200 for (i=3; i<np+1; i += 2 ) {
201 for (j=0; j<n2c; j++) {
202 for (k=0; k<n3c; k++) {
203 index = n2n3c * i + n3c * j + k ;
217 for (j=0; j<n2c; j++) {
218 for (k=0; k<n3c; k++) {
220 index = n3c * j + k ;
223 double* debut = cf + index ;
225 F77_fft991( debut, t1, trigo, facto, &inc, &jump, &np,
234 int n2n3f = n2f * n3f ;
235 for (i=0; i<np; i++) {
236 for (j=0; j<n2f; j++) {
237 for (k=0; k<n3f; k++) {
238 int indexc = n2n3c * i + n3c * j + k ;
239 int indexf = n2n3f * i + n3f * j + k ;
240 ff[indexf] = cf[indexc] ;