2020/03/16

カッシーニの卵形線(Cassinian oval)の書き方

カッシーニの卵形線とは


 カッシーニの卵形線(カッシーニのらんけいせん、英語: Cassinian oval)は、直交座標の方程式 (1) によって表される四次曲線である。

 x軸、y軸に対して線対称である。

  • a<b のとき2つのまるいループに分かれる
  • a=b のときレムニスケートとなる
  • a>b のとき1つのループからなる

 Wikipediaより引用


数式表現


(1)(x2+y2)22b2(x2y2)(a4b4)=0

書き方


 R言語での書き方は以下のとおり。

 条件:a=1,b=0.9 のとき

1
2
3
4
5
6
7
8
x=y=seq(-2, 2, 0.05)
f1=function(x, y, a, b) (x^2+y^2)^2-2*b^2*(x^2-y^2)-(a^4-b^4)
z=outer(x, y, f1, a=1, b=0.9)
svg("cassinian1.svg", width=5, height=5)
contour(x, y, z, drawlabels=F, levels=0, asp=1, lwd=2, col=2)
abline(h=0)
abline(v=0)
dev.off()

 条件:a=1,b=1 のとき

1
2
3
4
5
6
7
8
x=y=seq(-2, 2, 0.01)
f1=function(x, y, a, b) (x^2+y^2)^2-2*b^2*(x^2-y^2)-(a^4-b^4)
z=outer(x, y, f1, a=1, b=1)
svg("cassinian2.svg", width=5, height=5)
contour(x, y, z, drawlabels=F, levels=0, asp=1, lwd=2, col=2)
abline(h=0)
abline(v=0)
dev.off()

 条件:a=1,b=1.1 のとき

1
2
3
4
5
6
7
8
x=y=seq(-2, 2, 0.05)
f1=function(x, y, a, b) (x^2+y^2)^2-2*b^2*(x^2-y^2)-(a^4-b^4)
z=outer(x, y, f1, a=1, b=1.1)
svg("cassinian3.svg", width=5, height=5)
contour(x, y, z, drawlabels=F, levels=0, asp=1, lwd=2, col=2)
abline(h=0)
abline(v=0)
dev.off()

0 件のコメント:

コメントを投稿

マンデルブロ集合の彩色方法(5)

06.knit 1 発散判定式を変更する mandelbrot() 内の発散判定式 |zn|>2 を変更する...