3
$\begingroup$

I can define a Multinormal distribution by

p = PDF[MultinormalDistribution[
{mu1, mu2}, 
{{sig11^2, ρ sig11 sig22}, 
 {ρ sig11 sig22, sig22^2}}], {x, y}]

I would like to do the 2D Fourier transform of this by

FourierTransform[p, {x, y}, {kx, ky}]

which gives the result. How can I make Mathematica give the result in matrix form instead of its expanded form?

$\endgroup$
  • $\begingroup$ There is no distribution called Distribution. Also, avoid explicit subscripts, which only confuse matters, e.g., use μ1 and μ2, etc. $\endgroup$ – David G. Stork Jun 19 '17 at 17:36
  • $\begingroup$ What do you mean by matrix form? The result is a function, not a matrix. $\endgroup$ – yohbs Jun 19 '17 at 19:01
  • 4
    $\begingroup$ For a bivariate normal it is easier to enter the distribution as BinormalDistribution[{m1, m2}, {s1, s2}, r] and the FourierTransform of the PDF is just the CharacteristicFunction of the distribution. $\endgroup$ – Bob Hanlon Jun 19 '17 at 19:07
1
$\begingroup$

You can do the Fourier transformation separately (because these are integrations). Using @BobHanlon suggestion:

dist = PDF[BinormalDistribution[{m1, m2}, {s1, s2}, \[Rho]], {x, y}]

Plot3D[dist /. {m1 -> 0, m2 -> 1, s1 -> 1, s2 -> 2, \[Rho] -> 0.2}, {x, -5, 5}, {y, -5, 6}, PlotRange -> Full,
MeshFunctions -> {#3 &}, MeshShading -> {White, Black, White, Black}]

I get for the 2D gaussian:

enter image description here

which when integrated over x and y with:

fourier = 
FourierTransform[FourierTransform[dist, x, \[Omega]1], y, \[Omega]2]

becomes for the real part (in phase):

Plot3D[Re[fourier] /. {m1 -> 0, m2 -> 1, s1 -> 1, s2 -> 2, \[Rho] -> 0.2}, {\[Omega]1, -5, 5}, {\[Omega]2, -5, 5}, PlotRange -> Full,MeshFunctions -> {#3 &}, MeshShading -> {White, Black, White, Black}]

enter image description here

and the out of phase complex component (see the change of sign):

Plot3D[Im[fourier] /. {m1 -> 0, m2 -> 1, s1 -> 1, s2 -> 2, \[Rho] -> 0.2}, {\[Omega]1, -5, 5}, {\[Omega]2, -5, 5}, PlotRange -> Full, MeshFunctions -> {#3 &}, MeshShading -> {White, Black, White, Black}]

enter image description here

$\endgroup$
1
$\begingroup$
dist = BinormalDistribution[{mu1, mu2}, {sig11, sig22}, ρ];

The constraints on the parameters are given by DistributionParameterAssumptions

assume = DistributionParameterAssumptions[dist]

(* (mu1 | mu2) ∈ Reals && sig11 > 0 && sig22 > 0 && -1 < ρ < 1 *)

The FourierTransform of the PDF is

ft1 = FourierTransform[PDF[dist, {x, y}], {x, y}, {kx, ky}, 
   FourierParameters -> {1, 1}] // FullSimplify[#, assume] &

(* E^((1/2)*(2*I*kx*mu1 + ky*(2*I*mu2 - ky*sig22^2) - 
         kx*sig11*(kx*sig11 + 2*ky*sig22*ρ))) *)

This is equivalent to the CharacteristicFunction of the distribution

ft2 = CharacteristicFunction[dist, {kx, ky}] // Simplify

(* E^(I*(kx*mu1 + ky*mu2) - (kx^2*sig11^2)/2 - 
      (ky^2*sig22^2)/2 - kx*ky*sig11*sig22*ρ) *)

Or alternatively,

ft3 = Expectation[Exp[I {kx, ky}.{x, y}], {x, y} \[Distributed] dist]

(* E^(I*(kx*mu1 + ky*mu2) - (kx^2*sig11^2)/2 - 
      (ky^2*sig22^2)/2 - kx*ky*sig11*sig22*ρ) *)

Verifying the equivalence of these values

ft1 == ft2 == ft3 // Simplify

(* True *)
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.