質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

解決済

2回答

2221閲覧

フラクタル図形の描画

ike-0315

総合スコア30

C

C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2019/02/05 05:18

1.6次元のフラクタル図形を書け、という問題があるのですが、

1/aに縮小された図形がM個で構成されているD次元の図形に対して、
a^D=M
D=log_a(M)
D=(ln(M))/(ln(a))=1.6

なので、M=10^8、a=10^5
となったのですが、これでどう描画したらいいのかわかりませんでした。

○Mとaがあっているのか。
○どう描画するか
が知りたいです
よろしくお願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

set0gut1

2019/02/05 05:36

シェルピンスキーのギャスケットの次元が 1.5850… で、約 1.6 なので、これを書けという問題な気がしました。出題者に確認できるなら確認してみたほうが良いかもです。
guest

回答2

0

aをどうしても整数にしたいなら
M=2^8=256、a=2^5=32が最小のようです(10がなぜ出てきたか不明)

Mはその性質上、整数である事が求められますが、
aの値は実数でも構いません

aの値に実数が使えるフラクタル図形も数多くあります
例えば2分木はその典型例です

2分木ですので M=2 です
1.6 = ln(2)/ln(a) を ln(a)について解くと
ln(a) = ln(2)/1.6
exp(ln(a)) = a なので両辺の値をexp()に入れてやると
a = exp(ln(2)/1.6) = 1.54221082540794...
とaの実数値が逆算できます

つまり枝の長さを1/a(=0.648419777325...)ずつ縮小して2分木を描画すれば、
次元1.6のフラクタル図形となるはずです

投稿2019/07/19 07:02

e-cube

総合スコア284

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

既にシェルビンスキーのギャスケット(シェルビンスキーの三角形)ではないかという記述がありますが、実際問題として、確かに相似図形からなるフラクタルの次元は D = log(a)*M で定義されます。
だからといって単純に当てはめてしまうと、
・ある図形はその図形の10万分の1(10^5) の縮小図形を、1億個(10^8)つなげたものである
ということになってしまいます。

 だとすると縦横1万ピクセルの黒い背景を考えて、そこに10万個の白ピクセルを置きます。このとき白ピクセル一個が、1万倍に拡大すると元の図形に見える、わけです。

 従ってフラクタルであることが分かるようにするためには、1万×1万で、1億ピクセル平方ないとダメですね。こんなの描画できるシステムなんてありません。
※白黒の2値だとしても、必要なバイト数は1.25*10^15 で、1.11PB に達します。これは「京」スーパーコンピュータの全ノードのメモリ量(1.26PB)でぎりぎりですねえ……

投稿2019/02/07 06:15

tacsheaven

総合スコア13703

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問