Menjaga Faktor Fase di Akar
Saya mencoba memplot fungsi holomorfik tertentu yang mengandung akar kuadrat dan lebih tinggi. Dalam pengertian analisis yang kompleks, fungsinya$f:z\mapsto z^\alpha$ untuk beberapa $\alpha\in\mathbb C$ memiliki faktor fase $e^{2\pi i\alpha}$ di $z=0$, yang berarti bahwa di sekitar jalur melingkar kecil $0$ fungsinya $f$mengambil faktor ini. Apakah ada cara untuk menerapkan ini di Mathematica?
Contohnya,
g[z_] = z^4;
Sqrt[g[Exp[Pi I/2]]]
memberikan 1 sebagai hasil, di mana saya ingin Mathematica untuk mempertahankan fase $g(e^{\pi i/2})=e^{2\pi i}$ lalu hitung $$\sqrt{g(e^{\pi i/2})}=e^{\pi i}=-1.$$Dengan Sqrt
atau$(\cdot)^{1/2}$ini tampaknya tidak mungkin, karena mereka memilih akar kuadrat utama. Terima kasih banyak atas bantuanmu!
EDIT Berikut ini contohnya:
lim = 5; dlim = 20;
f1[z_] = Sqrt[z^8];
f2[z_] = z^4;
p1 = ParametricPlot[{Re[f1[1 + d I]], Im[f1[1 + d I]]}, {d, -dlim,
dlim}, PlotRange -> {{-lim, lim}, {-lim, lim}}];
p2 = ParametricPlot[{Re[f2[ 1 + d I]], Im[f2[1 + d I]]}, {d, -dlim,
dlim}, PlotRange -> {{-lim, lim}, {-lim, lim}}];
GraphicsGrid[{{p1, p2}}]
Jelas fungsinya f1
dan f2
tidak sama, sama seperti$\sqrt{x^2}=|x|$ tidak sama dengan $x$ di $\mathbb R\ni x$. Untuk tujuan saya, saya agak tertarik pada resolusi akar kuadrat yang mengarah ke fungsi yang mulus. Plot di atas terlihat sebagai berikut:
Pada gambar kiri kita bisa melihat titik-titik di mana fungsi tersebut melintasi potongan cabang dari akar kuadrat. Saya bertanya-tanya apakah ada cara untuk menghindarinya, seperti pada gambar yang benar, tanpa bisa menyelesaikan akar kuadrat dengan tangan. Misalnya, jika seseorang menambahkan ekspresi ke$z^8$ yang berisi fase serupa, saya ingin mengambil fase umum dari akar kuadrat, agar tidak terpengaruh oleh pemotongan cabang.
Seseorang juga dapat mengubah bentuk fungsi di atas untuk dikatakan $f(z)=\sqrt{z^8+\varepsilon}$ untuk beberapa $\varepsilon>0$. Maka tidak ada cara untuk mengambil akar kuadrat untuk generik$z$, dan tidak mungkin menggambar deformasi gambar yang benar. Saya tidak tertarik menemukan cara untuk melakukannya, sehingga gambar yang benar terus menerus berubah bentuk.
Kepentingan aktual saya berasal dari akar kuadrat dari fungsi modular EllipticTheta
dan DedekindEta
, yang bertransformasi di bawah transformasi linier pecahan tertentu dengan fase. Maka itu didefinisikan dengan baik untuk memiliki ekspresi seperti$\sqrt{\vartheta_4(z)^8+\varepsilon \vartheta_2(z)^4\vartheta_3(z)^4}$ karena kedua ringkasan berubah dengan fase yang sama.
Semua masalah di atas berasal dari fakta bahwa Mathematica mengekspresikan bilangan kompleks pada setiap langkah baik dalam koordinat Kartesius atau mengabaikan semua modulo $2\pi$dalam bentuk kutub. Alangkah baiknya menemukan cara untuk mencegah Mathematica melakukan ini, tanpa harus mendefinisikan ulang setiap operasi. Terima kasih banyak!
Jawaban
Ini adalah contoh masalah umum kelanjutan analitik fungsi multi-nilai di sepanjang jalur kontinu.
Dalam kasus fungsi aljabar seperti $w=\sqrt{z^8}$, kita bisa menulisnya sebagai $f(z,w)=w^2-z^8=0$ dan dalam kasus Anda, membiarkan $z(t)=1+it$, menulis: $$ \frac{dw}{dt}=-\frac{f_z}{f_w}\frac{dz}{dt}=\frac{4i(1+it)^7}{w} $$ Kami selanjutnya menyelesaikan IVP (multi-nilai): $$ \frac{dw}{dt}=\frac{4i(1+i t)^7}{w};\quad \{w_0\}=\{f(z(t_0),w)=0\} $$ dimana DE dan nilai awal $\{w_0\}$ untuk $t_0=-5$ diatur sebagai:
tStart = -5;
tEnd = 5;
thez[t_] = 1 + t I;
theDE = w'[t] == ((4 I z^7)/w /. {z -> thez[t],
w -> w[t]});
wStart = w /. Solve[w^2 == (1 + tStart I)^8, w]
Sekarang selesaikan IVP dan plot hasilnya:
colors = {Red, Blue};
plotTable = Table[
dSol =
First[NDSolve[{theDE, w[-5] == wStart[[i]]},
w, {t, tStart, tEnd}]];
theSol[t_] := Evaluate[Flatten[w[t] /. dSol]];
ParametricPlot[{Re[theSol[t]], Im[theSol[t]]}, {t, tStart, tEnd},
PlotRange -> {{-5, 5}, {-5, 5}}, PlotStyle -> colors[[i]]],
{i, 1, 2}];
Show[plotTable]