Come calcolare una serie numerica di Fourier multidimensionale
Il tutorial della serie di Fourier qui descrive una serie di comandi differenti per trovare numericamente le serie di Fourier e i loro coefficienti. Tuttavia, sembrano funzionare solo per le serie di Fourier unidimensionali. Esiste un'estensione che includa le serie multidimensionali di Fourier? In particolare, mi interessa poter calcolare numericamente un numero di coefficienti della serie di Fourier bidimensionale.
Ad esempio, trova i coefficienti di Fourier di
$$ \ln(4(\cos(\theta)-\cos(\phi))^{2}+(\sin(\theta)-\sin(\phi))^{2}) $$
sul rettangolo $0<\theta,\phi<2\pi$.
Grazie in anticipo per qualsiasi aiuto.
Risposte
Per il tuo esempio originale, TrigToExpfa quello che ti serve:
4 (Cos[θ] - Cos[φ])^2 + (Sin[θ] - Sin[φ])^2 // TrigToExp
(* 5 + 3/4 E^(-2 I θ) + 3/4 E^(2 I θ) - 3/2 E^(-I θ - I φ) -
5/2 E^(I θ - I φ) - 5/2 E^(-I θ + I φ) - 3/2 E^(I θ + I φ) +
3/4 E^(-2 I φ) + 3/4 E^(2 I φ) *)
Per funzioni più complesse senza una struttura esponenziale esplicita, puoi valutare esplicitamente gli integrali di Fourier:
f[θ_, φ_] = Log[4 (Cos[θ] - Cos[φ])^2 + (Sin[θ] - Sin[φ])^2 + 1];
F[a_?NumericQ, b_?NumericQ] := 1/(2 π)^2 * NIntegrate[
f[θ, φ] * E^(-I*{a, b}.{θ, φ}), {θ, 0, 2 π}, {φ, 0, 2 π}]
Ad esempio, riassumi tutti i componenti di Fourier fino all'ordine 2:
g[θ_, φ_] = Sum[F[a, b]*E^(I*{a, b}.{θ, φ}), {a, -2, 2}, {b, -2, 2}] // Chop
(* 1.48242 +
0.0545782 E^(-2 I θ) +
0.0545782 E^(2 I θ) -
0.0291498 E^(I (-2 θ - 2 φ)) -
0.136866 E^(I (2 θ - 2 φ)) -
0.224188 E^(I (-θ - φ)) -
0.517258 E^(I (θ - φ)) +
0.0545782 E^(-2 I φ) +
0.0545782 E^(2 I φ) -
0.517258 E^(I (-θ + φ)) -
0.224188 E^(I (θ + φ)) -
0.136866 E^(I (-2 θ + 2 φ)) -
0.0291498 E^(I (2 θ + 2 φ)) *)
Plot3D[{f[θ, φ], Re[g[θ, φ]]}, {θ, 0, 2 π}, {φ, 0, 2 π}]
