Re: A Problem seemingly with NIntegrate
- To: mathgroup at smc.vnet.net
- Subject: [mg122373] Re: A Problem seemingly with NIntegrate
- From: Andrew Moylan <amoylan at wolfram.com>
- Date: Thu, 27 Oct 2011 06:27:40 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
Hi, Please try this:
In[40]:= K[
m_] := (4 Sqrt[Pi] Gamma[2 m] m^(2 m))/(Gamma[m]^2 Gamma[
2 m + 1/2] 2^(4 m - 1) \[CapitalOmega]^(2 m));
In[41]:= f1[r_] :=
K[m] r^(4 m - 1) Hypergeometric1F1[2 m,
2 m + 1/2, (m r^2)/(2 \[CapitalOmega])] Exp[-m r^2/\[CapitalOmega]]
In[42]:= f2[r_] := 1/(Sqrt[2 Pi] \[Sigma]) Exp[-r^2/(2 \[Sigma]^2)];
In[43]:= Clear[f3];
f3[z_?NumberQ] :=
Module[{x}, NIntegrate[1/x f1[x] f2[z/x], {x, 0, Infinity}]]
In[45]:= Block[{m = 1, \[CapitalOmega] = 1, \[Sigma] = 1},
NIntegrate[f3[x], {x, -\[Infinity], \[Infinity]}]]
Out[45]= 1.
Here are the changes I made:
- Use Module[{x}, ...] in definition of f3, to avoid confusing an x passed as an argument with the integration dummy variable x.
- Add a condition to f3 since f3[z] only makes sense for a specific numerical value NumberQ[z].
- Use specific numerical values for the parameters m = 1, \[CapitalOmega] = 1, \[Sigma] = 1 (probably you just forgot these in your original question).
- Integrate from -Infinity to Infinity which was your intention anyway.
I hope this helps you.
Regards,
Andrew Moylan
Wolfram Research
----- Original Message -----
> From: "choco munch" <choceam at gmail.com>
> To: mathgroup at smc.vnet.net
> Sent: Friday, October 21, 2011 3:26:05 AM
> Subject: A Problem seemingly with NIntegrate
>
> Hi,
>
> Here is my problem. I have two PDFs (Probability Density Functions).
> One is a sum of 2 IID Nakagami-m and the other is a zero mean
> Guassian. I am constructing a new RV which is the product of these
> two, so I have in effect:
> Z = (X1 + X2)*N = X12*N
> X1, X2 are distributed IID Nakagami and N is a zero mean Normal RV.
>
> Now I know how to compute the PDF of Z by using PDF_Z[z_] :=
> NIntegrate[1/x PDF_X12[x]* PDF_N[z/x], {x, 0, Infinity}]
>
> Unforutantely, when i do this
>
> NIntegrate[PDF_Z[z], {z, -Infinty, Infinty}] I do not get 1.
>
> there is something going on with NIntegrate here, but I don't know
> what. Here is the code:
>
> ==========================================================================
> (*K[m] is just a constant *)
> K[m_] := (4 Sqrt[Pi] Gamma[2 m] m^(2 m))/(Gamma[m]^2 Gamma[2 m + 1/2]
> 2^(4 m - 1) \[CapitalOmega]^(2 m));
>
> (*f1 is the sum of two Nakagami's*)
> f1[r_] := K[m] r^(4 m - 1) Hypergeometric1F1[2 m, 2 m + 1/2, (m r^2)/
> (2 \[CapitalOmega])] Exp[-m r^2/\[CapitalOmega]]
>
> (*f2 is the standard normal *)
> f2[r_] := 1/(Sqrt[2 Pi] \[Sigma]) Exp[-r^2/(2 \[Sigma]^2)];
>
> (*f3 is the product of X1+X2 and N*)
> f3[z_] := NIntegrate[1/x f1[x] f2[z/x], {x, 0, Infinity}]
>
> (*here is the problem*)
>
> NIntegrate[f3[x], {x, -10, 10}]
>
> (*this will not give 1, why? I have checked both f1 and f2, they are
> valid PDFs*)
>
>