/* Steven Andrews, 5/99 */ /* See documentation called Cn doc */ /* Copyright 2003 by Steven Andrews. Permission is granted for non-commercial use of and modifications to the code. */ #include "Rn.h" #include "Cn.h" #include "RnSort.h" #include "math2.h" float *makecmplx(float *ar,float *ai,float *c,int n) { int i; if(ar&&ai) for(i=0;ii) { tempr=data[j];data[j]=data[i];data[i]=tempr; tempi=data[j+1];data[j+1]=data[i+1];data[i+1]=tempi;} m=n>>1; while(m>=2&&j>m) { j-=m; m>>=1; } j+=m; } mmax=2; while(n>mmax) { istep=2*mmax; theta=6.28318530717959/(isign*mmax); wtemp=sin(0.5*theta); wpr=-2.0*wtemp*wtemp; wpi=sin(theta); wr=1.0; wi=0.0; for(m=1;m