[R] Calling fft from C
Gunnar Hellmund
ghellmund at gmail.com
Sun May 30 20:08:06 CEST 2010
Hi
I have made a R function 'convolve2' for convolution of two real
valued vectors based on Rs 'convolve' with option type="open" - see
below.
(exp.length and irf.length are variables set in another part of the program)
I wish to implement the function convolve2 in C and use it in a
function used from R with .Call - e.g. I need to call fft in C.
All I can find in the source code is do_fft in Internals.h - but how
do I use do_fft? Or should I call another C routine (and how)?
How do I solve the problem in the most appropriate way?
convolve2=function2(x,y)
{
x<- c(rep.int(0,exp.length-1),x)
n <- length(y<-c(y, rep.int(0, irf.length -1)))
x <- fft(fft(x) * Conj(fft(y)), inverse=TRUE)
return(Re(x)/n)
}
--
Best wishes/bedste hilsner
Gunnar Hellmund
cand. scient., PhD
http://staff.pubhealth.ku.dk/~guhe/
---
“If everyone is thinking alike, then somebody isn't thinking.”
More information about the R-help
mailing list