help-gsl
[Top][All Lists]

## Re: [Help-gsl] Help-gsl Digest, Vol 101, Issue 6

 From: Brian Hawkins Subject: Re: [Help-gsl] Help-gsl Digest, Vol 101, Issue 6 Date: Thu, 15 Mar 2012 10:03:49 -0700

Qingling,

I don't understand the role of the Hankel transform in your question.  Why
not simply compute the convolution using DFTs?

Brian

On Thu, Mar 15, 2012 at 9:00 AM, <address@hidden> wrote:
>
> Date: Thu, 15 Mar 2012 17:12:18 +0800
> Subject: [Help-gsl] A question about the Discrete Hankel Transform
>
> Hi all,
> Sorry for disturbing, this is the first time I am using mailing lists and
> don't know whether this is a proper place to ask questions. But I
> encountered some problem and really need some help.
> I am encontered some problem in calculating the inverse hankel transform of
> functions. Let's say the function is R=[r1,r2,r3,r4], I used gsl_dht_apply,
> in
>
> http://www.gnu.org/software/gsl/manual/html_node/Discrete-Hankel-Transform-Functions.htmlto
> get the hankel transform, like this gsl_dht_apply(dht,R,R_out) and
> used
> gsl_dht_apply(dht,R_out,R_prime) to get the inverse transform. It satisfies
> R=coef*R_prime, where coef=j_(\nu,M) according to the documentation of
> gsl_dht_apply function.
> And now my problem is that for two functions R=[r1,r2,r3,r4] and
> T=[t1,t2,t3,t4] in time domain, I want to compute the convolution of them
> according to the Convolution Theorem, saying that the convolution of two
> functions in time domain is the inverse Fourier Transform of two functions
> element-wise multiplication in the frequency domain, and Hankel Transform
> of the 0-order Bessel function of first kind is equal to 2D fourier
> transform. Let's say R_out=[ir1,ir2,ir3,ir4] and T_out=[it1,it3,it3,it4]
> are the inverse hankel transform of R and T respectively. Let F be the
> element-wise multiplication of R_out and T_out, that is
> F=[ir1*it1,ir2*it2,ir3*it3,ir4*it4]. Then how can I get the original
> convolution result of R and T? Is it still R**T=coef*F_out or should I
> multiply some other coeficient?(** stands for convolution and F_out is the
> inverse hankel transform of F, coef=j_(\nu,M)).
> Thanks for help!
>
> --
> ???
> Qingling Zhang
> Institute of CG & CAD
> School of software Tsinghua University
> Tsinghua University Beijing, P.R.China 100084
>