2020/03/01

リサジュー曲線の書き方(1)

 なぜか突然書きたくなったので調べてみた。


リサジュー曲線とは


 下記はWikipediaからの引用です。

 リサジュー図形(リサジューずけい、Lissajous figure)あるいはリサジュー曲線 (Lissajous curve) とは、互いに直交する二つの単振動を合成して得られる平面図形のこと。“リサージュ”と表記されることもある[1][2]。それぞれの振動の振幅、振動数、初期位相の違いによって、多様な曲線が描かれる。振動数の比が無理数の場合は閉曲線にはならず、軌道は有限の平行四辺形領域を稠密に埋める。

-Wikipedia, リサジュー図形

 個人的には『リサージュ』と記憶していたのですが、Wikipediaでは『リサジュー』となっていました。


数式表現


{x(t)=cos(at)y(t)=cos(bt+c) (0t<2π)

書き方


 R言語での書き方は以下のとおり。ここではa=5,b=7,c=π2とする。

1
2
3
4
5
6
7
> a = 5
> b = 7
> c = pi/2
> t = seq(0, 2*pi, length=300)
> svg("test.svg", ,width=5, height=5)
> plot(cos(a*t), cos(b*t+c), type="l", asp=1, col=2, lwd=2)
> dev.off()

R言語だと簡潔に書けるのが良いですね。


追記


 パラメータ a,b,c を色々振った実行結果をご紹介します。

0 件のコメント:

コメントを投稿

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

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