デカルトの夢と奇妙な図形 part2 | 数学アラカルト [実践] | 逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓の実践ウェブ rpn hacks!

逆ポーランド電卓rpnの実践ウェブ   
rpn hacks! アールピーエヌ・ハックスサイトマップ

rpn | 実戦 | 数学アラカルト | 数学に関する話題をrpnで探求!数字と遊んでみよう。

HOME > 実践 > 数学アラカルト > デカルトの夢と奇妙な図形 part2

hatena twitter facebook rss ソーシャルブックマーク

デカルトの夢と奇妙な図形 part2

前のページに戻るLinkIcon

パスカルのかたつむり(リマソン曲線)

 最初の曲線はパスカルのかたつむり(蝸牛)です。あの有名なパスカルの父が見つけたそうです。リマソン曲線(蝸牛のラテン語)とも言います。数式は以下のとおりですが、何とも奇妙な数式です。aとbはパラメータ(係数)です。適当な数に変えると図形が変化します。

     2   2      2    2   2   2
  ( x + y + ax )  = b ( x + y )


この数式からどんな図形が描かれるのでしょうか。早速、rpnを使って適当な数を繰り返し発生させて、プロット用のデータを作成してみます。データはxypを使ってグラフ表示させます。

  >rpn 2 @t c * 1 + #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-1,4 -y-2,2 -m <tmp
         y^2
          |   * **********
          | ***           ***
          **                ***
         *|                    *
         *|                     *
         *| *****               **
  -1     ***    **               *       4
  -------***-----*---------------*------->
         *| *****               *        x
         *|                     *
         **                   **
          **                 **
          |****          ***
          |    * * * * ***
          |-2


何とも奇妙な図形が出てきました。テキスト文字で描くので、どうしても歪みが出てしまいますが、雰囲気は伝わるでしょう。かたつむりの殻に似ていなくもありません。そして、面白いことにaとbのパラメータを少し変えると「心臓形」に変化してしまいます。

  >rpn 2 @t c * 2 + #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-1,5 -y-3,3 -m <tmp
       y^3
        |  *************
        * *             ****
      **|                   ***
     *  |                     ***
    *   |                       **
    **  |                        *
  -1 ***|                        *       5
  ---***+------------------------**------>
    ** o|                        *       x
    *   |                       *
     *  |                      *
      **|                   ***
        ****            ****
        |   ****** * ***
        |-3


図形中央部の巻いている部分がなくなりましたが、何で心臓なのかよく分かりません。そこで、座標軸の原点付近を拡大してみます。

  >xyp -x-1,1 -y-1.5,1.5 -m <tmp
              ****   y^1.5
             *        |
            *         |
            *         |
            *         |
             *        |
              ***     |
  -1             *****|                  1
  --------------******+------------------>
              **     o|                  x
            **        |
            *         |
            *         |
            *         |
             **       |
               *      |-1.5


心臓と言われる理由が分かります。要はハート型なんですね。

グランディのバラ(四葉線)

 イタリアの数学者であるグランディによるものです。これも複雑な数式ですが、パラメータはaの一つだけです。

     2   2 3     2   2   2
  ( x + y )  = 4a ・ x ・ y


数式からはどんな図形が描かれるのか皆目見当が付きませんが、rpnで数式に値を代入しながらxypでグラフを描いてみましょう。

  >rpn 4 2 @t * s * #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-4,4 -y-4,4 -m <tmp
                     y^4
                      |
       *** **** *     |     *********
       *        * *   |   *         **
       *          * * | *           **
       **           * **          **
         ****        **         **
  -4        *  ** ****** *** ***         4
  ----------*-***-**-***--**-**---------->
         ****        **         **       x
       ***          * **           *
       *          *** |**           *
       *        ***   |  **         **
       ******** *     |     * *******
                      |
                      |-4


4つの花びらが見えます。この形でバラと言えるか分かりませんが、一つの数式からなんとも奇妙というか不思議な図形が生まれるものです。例のごとく、数式のパラメータをちょっと変更すると図形が変化していきます。

  >rpn 4 3 @t * s * #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-4,4 -y-4,4 -m <tmp
                     y^4
                      |
                      |
     ******           |          ******
    **    *****       |     ******    **
     **        ***    |  ****        **
      *****       **  |***        ****
  -4      ****** *****************       4
  ------------------***------------------>
                   **o|**                x
                  **  | *
                  *   |  *
                  *   |  *
                  *   |  *
                  **  | **
                   *****4


今度は三つ葉のクローバーになりました。再度、パラメータを変更です。

  >rpn 4 5 @t * s * #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-4,4 -y-4,4 -m <tmp
                    ****
                    * |*
                   *  | *
                   *  | *
                   ** | *
   ** ***** *       * |*        * *******
   ****      ****   * **  *****     *****
  -4   **** * ** *********** ***** *     4
  -----------------******---------------->
                *** *o|*  **             x
             ***   *  | *   ***
           ***   **   |  **   **
          **   **     |    *    **
          * ***       |     **** *
          **          |        ***
                      |-4


5つの花びらを持つ桜が現れました。調子に乗ってパラメータをとても大きな数にしてみます。

  >rpn 4 21 @t * s * #r @r @t c * #x @r @t s * #y @t .1 + #t @x @y -r 200 >tmp
  >xyp -x-4,4 -y-4,4 -m <tmp
                *    **4   *
           *    *    *|   **    *
           *    * *   *   *   ***
      **    * *      *| * *  *    ****
        ***    *  **  *     * *
    * * *    * * *    | * *     *    ****
       *    **     ***|** **     **
  *4 * *    *     *****    **     *   * **
  ----------*-----*****-----*-----*------>
   * * *    * *   ***o* ** **    *    ** *
        **    * *     |* *      **
     ***        * *  *|      * *    ***
         * **   *  *  |*  * *   *
        **    *     * | *   *    ***
             *     *  |**    **
                   *  |-**


21の花びらが見えるはずなのですが、何だかよく分からない図形になりました。右上端(第一象限)だけを拡大表示してみましょう。

  >xyp -x,4 -y,4 -m <tmp
  *y 4       *
  *        * *
  *                    *
  |       *          * *
  |*               *  *
  |        *                    *
  |    *         *         * * *
  |           *
  *                *
  |    *               *           *  *
  |        *                    * * *
  * *  *     *          * *
  |       *
  *          * *          *        *  * *x
  **          **           *       *  *  4
  *------------*------------------------->


どうやら6つの花びらが見えます。ただ、プロット数が少ないので、隙間が空いて綺麗に見えません。そこで、プロット数を10倍にして繰り返し計算させて、表示の密度を上げてみましょう。

  >rpn 4 21 @t * s * #r @r @t c * #x @r @t s * #y @t .01 + #t @x @y -r 2000 >tmp
  >xyp -x,4 -y,4 -m <tmp
  *y 4      **
  *        ***
  *       ****        ***
  **     ****       ****
  |*    ** *      *****
  |*    * **     ****         ***
  |*   ****    ****        *****
  *   ****   ** **     ******
  *   ***  *****   ********
  *  * *  ****   *******         ******
  * *** ****  ******      ***********
  * ****** ******  ************
  ***********************
  ********** *****      *****************x
  ***************************************4
  ***********-***------------------------>


今度はくっきりと6つの花びらが見えてきましたね。

対数螺旋(等角螺旋、ベルヌーイの螺旋)

 最後に自然界に多く見られる対数螺旋です(等角螺旋、ベルヌーイの螺旋とも言われます)。数式は以下のとおりです。aとbはパラメータです。

        bt
  r = ae


rpnで数式に適当な数を代入して計算させます。結果をxypに渡せば簡単にグラフ表示できます。

  >rpn .1 .2 @t * e * #r @t c @r * #x @t s @r * #y @t .1 + #t @x @y -r 400 >tmp
  >xyp -x-10,10 -y-10,10 -m <tmp
                     y^10
                      |
                      |
              * **** ****
          ****        |  ***
        **            |     **
       *           *****      *
  -10 *          ********     *         10
  ---**----------*--*****----**---------->
     *           *** o|    ***           x
      *            ********
      **              |
        *             |
         **           |
           * *        |                  *
              * * *   |-10        * * *


不思議なことに反時計回りの渦巻きが描かれました。台風のようなオーム貝のような形です。

台風にしても低気圧にしても、そして洗面台の栓を抜いたときに水が抜けていくときも、北半球と南半球では渦巻きの向きが逆になるのは有名な話ですね。

さて、座標の原点付近が込み入っていて、よく見えません。そこで、図形の中心部だけを拡大表示してみましょう。まずは、x軸を±3、y軸を±3にしてみます。

  >xyp -x-3,3 -y-3,3 -m <tmp
                     y^3
                      |
                      |
                *** ****
            ****      | ****
         ***          |    ***
       **          *****     **
  -3  **         ********     *          3
  ----*----------*--*****----*----------->
      *          *** o|   ***            x
      *             ******
       *              |
        **            |
          **          |                  *
             **       |              * *
                * * * *-3      * * *


何だか、前と同じ図形に見えますね。そして、原点付近はやはり込み入っています。もっと拡大してx軸を±1、y軸を±1にしてみます。初めの図形の10分の1のサイズになります。

  >xyp -x-1,1 -y-1,1 -m <tmp
                     y^1               * *
                      |
                      |
                      |
              ************
           ***        |  ***
          **        ***    **
  -1     *        *** **    *            1
  ------*---------*---+*---**------------>
        **        **********             x
         *            |
         **           |                  *
           ***        |                 *
              **      |            ** *
                 ** * ** * * * * *
                      |-1


やっぱり何か似てますよね。螺旋を拡大して細かく細かく見ていっても、前と同じ姿が現れるようです。何とも不思議な感じがします。このような現象を自己相似形と言うのですが、フラクタルなど自然界には意外に多い現象です。

では、今度は逆にプロット数を増やしてみましょう。とても大きな螺旋を描いて、巨大なグラフに描いてみます。それをグラフにして見ると、今度は図形を縮小して見たのと同じ効果になります。

  >rpn .1 .2 @t * e * #r @t c @r * #x @t s @r * #y @t .1 + #t @x @y -r 800 >tmp


プロットデータができたのでxypで表示してみますが、1つ目のグラフはx軸が±800とy軸が±800に、2つ目のグラフはx軸が±3200とy軸が±3200に設定します。横に並べて比較してみましょう。

   * * * * *  * * *^**0* *                   * * * * **y*3*00
  *                |      * *             * *           |  * **
                   |         **        **               |      **
                   |           *                        |        **
                   |            *                       |          *
              *******           **                   ****           *
            ***    | **          *                ***   |***        *
  -800     **   ***** **         *800  -3200     **   **** *        * 3200
  ---------*----*******---------*--->  ----------*----***-**-------**---->
           *     *****         **   x            *     ***        **     x
            **     |          **                  **    |       ***
             ***   |       ***                      *****  *****
                ***** *****                             ***
                   |                                    |
                   |                                    |
                   |-800                                |-3200


両方とも同じに見えます。それどころか巻き数が違うだけで、x軸とy軸が±10のときとそっくりな図形です。実に元の図形の80倍と320倍なのにスケールの違いがパッと見ただけ分かりません。本当に対数螺旋は近づいて細かく見ても、離れて大まかに見ても同じ形なのですね。

物事を細かく観察して得られることは、大まかに観察して得られることと同じということになります。社会の縮図という言葉がありますが、物事の本質はスケールに拠らず同じなのかも知れません。まさに「一は全、全は一」ですね。

実践数学アラカルトに戻るLinkIcon

警告rpnプログラムを実行するには、rpn試用版かrpn標準版が必要です(バージョンの違いはこちら)。

情報pasteは講座サポートで公開されています。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。

数学アラカルト

数字と遊んでみよう

※実践コーナーのTOP

紹介 rpnの利用シーンはこちら…

講座初めての人のrpn基礎もどうぞ
講座しっかり学べるrpn入門もどうぞ
講座すぐに使えるdos入門もどうぞ

実践他の分野への挑戦は実践TOP

応用rpnアプリケーションは応用TOP

part2

数字と遊んでみよう

※実践コーナーのTOP

講座初めての人のrpn基礎もどうぞ
講座しっかり学べるrpn入門もどうぞ
講座すぐに使えるdos入門もどうぞ

実践他の分野への挑戦は実践TOP

応用rpnアプリケーションは応用TOP

書籍紹介

記事に関連した書籍

本ウェブサイトで扱った話題に関連した書物で、スタッフが実際に読了したものを紹介。

書籍数学の書籍
数の世界は思ったよりもエキサイティング

書籍投資の書籍
失敗しない投資には広範囲で実践的な知識が必要

警告バックスラッシュはエンマークに読み替えて下さい(IE)。
バックスラッシュとエンマーク

警告文字で作られた図表や式が崩れることがあります。ブラウザによっては固定幅フォントをMSゴシックにするときれいに表示されます。それでも崩れる場合は図表や式をメモ帳にコピー後、閲覧下さい。

警告rpn試用版と標準版(2kリビジョン)はダブルクォートで囲って下さい。

rpn 1 2 + ⇒ rpn "1 2 +"
rpn 1 -c foo ⇒ rpn "1" -c "foo"

ダブルクォートは省略できることが多いのですが、慣れない間は囲んだほうが無難です。なお、本ウェブサイトの記事ではrpn標準版(98リビジョン)を使用しているため囲っていません。詳しくは技術サポートの「rpn TIPS参照ください。

注意rpnの障害情報はこちら

警告rpn試用版の場合、複雑なプログラムや処理時間のかかるプログラムの一部には動作しないものがあるかもしれません。あくまで無料提供であることを勘案・了承ください。rpn標準版は、すべてのプログラムが動作します。