fractals (Maxima 5.50.0 Manual)

## 54 fractals ¶

### 54.1 Introduction to fractals ¶

このパッケージはよく知られているフラクタルをいくつか定義します:

- ランダムIFS(反復函数系)を使って: Sierpinski三角形、木、シダ

- 複素フラクタル: MandelbrotとJulia集合

- Koch雪片集合

- Peano写像: SierpinskiとHilbert写像

著者: José Ramírez Labrador.

質問、提案、バグに関しては、 pepe DOT ramirez AAATTT uca DOT es まで、私に気兼ねせずコンタクトしてください。

### 54.2 Definitions for IFS fractals ¶

いくつかのフラクタルは、 縮小アフィン変換をランダムに繰り返し適用することで生成することができます; Hoggar S. G., "Mathematics for computer graphics", Cambridge University Press 1994を参照してください。

いくつかの縮小アフィン変換のリストを定義して、 繰り返しの中で変換をランダムに選択します。 変換の選択の確率は縮小比に関係しなければいけません。

変換を変えて、別のフラクタルを見つけることができます。

関数: sierpinskiale (n) ¶

  Sierpinski三角形: 3つの縮小写像; .5の縮小定数と変形; すべての写像は同じ縮小比です。 引数nは十分大きく、10000以上でなければいけません、

  例:

      (%i1) load("fractals")$
      (%i2) n: 10000$
      (%i3) plot2d([discrete,sierpinskiale(n)], [style,dots])$

  Package fractals ·

関数: treefale (n) ¶

  すべて同じ縮小比を持つ3つの縮小写像。 引数nは十分大きく、10000以上でなければいけません、

  例:

      (%i1) load("fractals")$
      (%i2) n: 10000$
      (%i3) plot2d([discrete,treefale(n)], [style,dots])$

  Package fractals ·

関数: fernfale (n) ¶

  変換を選択する確率が縮小比に関係する、4つの縮小写像。 引数nは十分大きく、10000以上でなければいけません、

  例:

      (%i1) load("fractals")$
      (%i2) n: 10000$
      (%i3) plot2d([discrete,fernfale(n)], [style,dots])$

  Package fractals ·

### 54.3 Definitions for complex fractals ¶

関数: mandelbrot_set (x, y) ¶

  Mandelbrot集合。

  例:

  たくさんの演算を実行しなければいけないので、このプログラムは時間がかかります; 計算時間は格子点の数にも関係します。

      (%i1) load("fractals")$
      (%i2) plot3d (mandelbrot_set, [x, -2.5, 1], [y, -1.5, 1.5],
                      [gnuplot_preamble, "set view map"],
                      [gnuplot_pm3d, true],
                      [grid, 150, 150])$

  Package fractals ·

関数: julia_set (x, y) ¶

  Julia集合。

  たくさんの演算を実行しなければいけないので、このプログラムは時間がかかります; 計算時間は格子点の数にも関係します。

  例:

      (%i1) load("fractals")$
      (%i2) plot3d (julia_set, [x, -2, 1], [y, -1.5, 1.5],
                      [gnuplot_preamble, "set view map"],
                      [gnuplot_pm3d, true],
                      [grid, 150, 150])$

  See also `julia_parameter`.

  Package fractals ·

オプション変数: julia_parameter ¶

  デフォルト値: `%i`

  Juliaフラクタルの複素パラメータ。 デフォルト値は`%i`です; we suggest the values 値`-.745+%i*.113002`, `-.39054-%i*.58679`, `-.15652+%i*1.03225`, `-.194+%i*.6557`, `.011031-%i*.67037`を提案します。

  Package fractals ·

関数: julia_sin (x, y) ¶

  関数`julia_set`が変換`julia_parameter+z^2`を実装する一方、 関数`julia_sin`は`julia_parameter*sin(z)`を実装します。 詳細はソースコードを参照してください。

  たくさんのsinを計算するので、このプログラムはゆっくり実行されます

  例:

  たくさんの演算を実行しなければいけないので、このプログラムは時間がかかります; 計算時間は格子点の数にも関係します。

      (%i1) load("fractals")$
      (%i2) julia_parameter:1+.1*%i$
      (%i3) plot3d (julia_sin, [x, -2, 2], [y, -3, 3],
                      [gnuplot_preamble, "set view map"],
                      [gnuplot_pm3d, true],
                      [grid, 150, 150])$

  See also `julia_parameter`.

  Package fractals ·

### 54.4 Definitions for Koch snowflakes ¶

関数: snowmap (ent, nn) ¶

  Koch雪片集合。 関数`snowmap`は、 複素平面内の初期値の閉多角形の頂点上に雪Koch写像をプロットします。 ここで多角形の向きが重要です。 引数Argument nnはKoch変換の繰り返し適用の回数です; nnは小さく(5か6で)なければいけません。

  例:

      (%i1) load("fractals")$
      (%i2) plot2d([discrete,
                    snowmap([1,exp(%i*%pi*2/3),exp(-%i*%pi*2/3),1],4)])$
      (%i3) plot2d([discrete,
                    snowmap([1,exp(-%i*%pi*2/3),exp(%i*%pi*2/3),1],4)])$
      (%i4) plot2d([discrete, snowmap([0,1,1+%i,%i,0],4)])$
      (%i5) plot2d([discrete, snowmap([0,%i,1+%i,1,0],4)])$

  Package fractals ·

### 54.5 Definitions for Peano maps ¶

ある面積を覆う連続曲線。 警告: nと共に点の数は指数関数的に増加します。

関数: hilbertmap (nn) ¶

  Hilbert写像。 nnは小さく(例えば5で)なければいけません。 もし7以上ならMaximaはクラッシュするかもしれません。

  例:

      (%i1) load("fractals")$
      (%i2) plot2d([discrete,hilbertmap(6)])$

  Package fractals ·

関数: sierpinskimap (nn) ¶

  Sierpinski写像。 nnは小さく(例えば5で)なければいけません。 もし7以上ならMaximaはクラッシュするかもしれません。

  例:

      (%i1) load("fractals")$
      (%i2) plot2d([discrete,sierpinskimap(6)])$

  Package fractals ·