2012-03-01[n年前へ]
■「おっぱい曲面」で学ぶ「Julia言語の実用テクニック」
「チョー簡単で超上級ハッカーも満足する言語 Julia」をインストールして、2次元の世界で「おっぱい断面方程式」を描いたならば、次は2次元から3次元の世界へと進んでみたくなるものです。
そこで、今日はJulia言語で おっぱい曲面を描いてみることにしました。…といっても、Julia言語は3次元のグラフを(まだ)描くことができません。そこで、Julia言語でおっぱい曲面データを作り・エクセルで読み込み・3次元グラフとして描いてみることにしました。
手順はとても簡単です。Juliaのシェルを立ち上げたら、あとはこんなコードを入力するだけです。つまり、
- おっぱい曲面関数を定義して
- -3から3までのXY領域におっぱい曲面関数を適用し
- 結果をCSVファイルとして書き込む
function bust(x,y)
1/8* (6*exp(-((2/3*abs(x) - 1)^2 + (2/3 *y)^2) - 1/3*(2/3*y + 1/2)^3)+ 2/3 *exp(-2.818^11*((abs(2/3*x) - 1)^2+ (2/3 *y)^2)^2) + 2/3*y - (2/3*x)^4)
end
oppai=[bust(x,y) | x=[-3:0.2:3], y=[-3:0.2:3] ]
csvwrite("oppai.csv",oppai)
そして、作成したCSVファイルをエクセルで開き、グラフにすると、こんな立体的で魅惑的な「おっぱい曲面」が描かれるのです。
科学技術用の言語で処理した結果を、さらにエクセルで加工する…ということも多々あるものです(個人的にはエクセルを使うのは時間の無駄だと思いますが…)。そして、簡単という言葉やハックという言葉は、実用的という言葉との相性は抜群に良いはずのものです。
だから、超簡単で超上級ハッカーも満足するJulia言語を使って計算をした結果を、エクセルでさらに加工する…そんなJulia言語の実用テクニックを「おっぱい曲面」を通じて学んでみるのはいかがでしょうか?
*役立ち情報:丸井綜研 のJulia の行列演算例など