恐竜の歯+α

リニューアル中です。現在、標本解析に専念していますが、なかなか謎が解けません

全体表示

[ リスト ]

アンモナイト!

イメージ 1

既に書いたように、先日、長野県の石堂層で化石採集をして参りました。
…やはり完全体のアンモナイトくんには出会えませんでした(-o-i)

仕方がないので(?)パソコンでアンモナイトくんを描いてみました。


こちらのアンモナイト図形はとても有名で、web上でも見かけますし、
フラクタル についての啓蒙書やテキストに掲載されています。
でもyahooブログ上には私の見た限り取り上げている記事はありませんでした。
そういうことなら私が一番乗り!…ということで。

図形を生成する数式については下のソースコードからご解読ください(>_<)

(x,y)平面上に出発点を与えておいて、
ある確率に従って3種類のアフィン変換を繰り返していくと
このような図形が出現するわけなんです。

プログラムはC言語やJavaで書く方が適当なのでしょうけど、
一部、 Excelマニア(?) の方々がVBAで頑張っておられるので
私もインスパイアされてExcelでやってみました(^o^i)
表計算やVBAで数値計算する、みたいな書籍は最近かなり出版されていますよね。
Excelでゲームを作っている方々もいるようですし…。

実用的な科学技術計算に向いているとは言えないかも知れませんが、
やってみるとExcelもかなり面白いですヨ(^o^)/

興味を持たれた方へ〜

ソースコードは以下の通りです。Microsoft社のExcelさえあれば動かせます。
コンパラをインストールする必要はありません☆

Excelを立ち上げたならツールメニューからマクロ→Visual Basic Editorを起動し、
ソースコードを貼り付けて「実行」するだけ。
シート上のA列、B列に数値が出力されますので(かなり多いです。3万行)、
すべて選択してグラフウィザードから「散布図」を指定します。
するとこんな図形が現れるはずです。(ちょっと説明足りないかもしれませんm(_ _)m)


Sub DRAW_AMMONITE()

Dim x As Double: Dim y As Double
Dim xnew As Double: Dim ynew As Double
Dim n As Long: Dim k As Double

x = 0.1
y = 0.1 'x,yに初期値を代入

Cells(1, 1) = x
Cells(1, 2) = y '初期値を出力

For n = 1 To 30000
  
    Randomize: k = Rnd()
 
    If k < 0.06124 Then
        xnew = -0.289993 * x - 0.001347 * y + 0.593333
        ynew = 0.001986 * x - 0.196662 * y - 0.32
    ElseIf k >= 0.06124 And k < 0.06124 + 0.022236 Then
        xnew = -0.073058 * x - 0.024834 * y + 0.793333
        ynew = -0.006353 * x + 0.285589 * y - 0.056667
    Else    
        xnew = 0.939186 * x - 0.218787 * y - 0.046667
        ynew = 0.214337 * x + 0.958685 * y + 0.01
    End If
 
    Cells(n + 1, 1) = xnew
    Cells(n + 1, 2) = ynew
   
    x = xnew
    y = ynew

Next n

End Sub

閉じる コメント(6)

顔アイコン

へえ〜!器用な事してますね〜。私ではこうは行きません(えっへん!)また今度≪石堂アンモ≫のこんな綺麗なヤツをお見せくださいね・・・(*^^)v

2006/11/25(土) 午後 7:36 [ ]

顔アイコン

UNIONさんこんばんは!こんな人造アンモではなくホンモノをupしたいのはやまやまなのですが(泣) ほんとうに産出が少ないのです。カケラアンモのストックならまだありますので少しずつアップしてまいります。

2006/11/25(土) 午後 10:37 [ catappledog ]

顔アイコン

緻密、規則性ー不器用な私はとても描けません。傑作です。

2007/3/1(木) 午後 7:13 [ ]

顔アイコン

うきくささんこんにちは!いえいえ、この数式自体とても有名なものですので、私のオリジナリティなんてほどんどないんです^^i 私はこんな感じの幾何学模様にしばしば心奪われます

2007/3/2(金) 午後 0:14 [ catappledog ]

顔アイコン

本当にアンモナイトのデザインそのものズバリですね。フラクタルでアンモナイトが描けるとは驚きです。

2010/5/17(月) 午前 2:15 [ kipccl ]

顔アイコン

kipcclさん、こんばんは。生物を支配している数理は興味深いものです。もうちょっと高度な数理モデルについても紹介していきたいと思います

2010/5/22(土) 午後 11:23 [ catappledog ]

コメント投稿
名前パスワードブログ
投稿

閉じる トラックバック(1)

トラックバックされた記事

フラクタル画像を描く

最近読んでた本でフラクタル(自己相似性を持つ構造)の話が出てきて、この手の話は良...

2007/12/25(火) 午後 1:56 [ yoshiaki's blog ]

トラックバック先の記事

  • トラックバック先の記事がありません。


.

catappledog
人気度

ヘルプ

Yahoo Image

開設日: 2006/10/10(火)


プライバシーポリシー -  利用規約 -  ガイドライン -  順守事項 -  ヘルプ・お問い合わせ

Copyright (C) 2012 Yahoo Japan Corporation. All Rights Reserved.