Plot elips dalam kurva eksponensial

Oct 11 2020

Saya mencoba untuk menghasilkan satu plot, di mana elips cocok dengan rapi dalam fungsi kurva yang diberikan, dan dengan masing-masing memotong kurva tepat pada 4 titik.

  • Elips adalah $x^2/a^2+y^2/b^2=1$, dimana $a=0.5, 0.6, 0.7, ..., 2.0$, dimana $a>0$,$b>0$ dan $πab=5$. Petunjuk: gunakan Tabel untuk membuat semuanya dalam satu perintah.

  • Kurva $|y|=5/(2π|x|)$, digambar dengan warna hitam. Pastikan kurva muncul, dan gambar kurva tunggal di atas elips sehingga terlihat jelas.

Apa yang saya coba lakukan adalah

Clear[x, y]
ellipse = x^2/a^2 + y^2/b^2 == 1;
curve = Abs[y] == 5/(2*Pi*Abs[x]);
ell = Table[ellipse, {a, 0.5, 2.0, 0.5}, {b, 5/Pi*a}];
curvep = ContourPlot[Evaluate[curve], {x, -7, 7}, {y, -7, 7}, 
   ContourStyle -> Black];
ellipsep = 
  ContourPlot[Evaluate[ell], {x, -7, 7}, {y, -7, 7}, 
   ContourStyle -> Rainbow];
Show[ellipsep, curvep]

tetapi untuk beberapa alasan, elips saya tidak pas di dalam fungsi kurva dan justru di luar.

Jawaban

4 cvgmt Oct 11 2020 at 06:34

Dalam persamaan ellipse, ganti bdengan 5/(Pi*a)hanya satu parametrik katakan a, maka mudah untuk membuat tabel yang ellmemuaskanPi*a*b=5

Clear["`*"];
Clear[x, y]
ellipse = x^2/a^2 + y^2/b^2 == 1 /. b -> 5/(Pi*a);
curve = Abs[y] == 5/(2*Pi*Abs[x]);
ell = Table[ellipse, {a, 0.5, 2.0, 0.5}];
curvep = ContourPlot[Evaluate[curve], {x, -7, 7}, {y, -7, 7}, 
   ContourStyle -> Black];
ellipsep = 
  ContourPlot[Evaluate[ell], {x, -7, 7}, {y, -7, 7}];
Show[ellipsep, curvep]