森田/プログラミング/マンデルブロ集合描画プログラム
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
-動作
--マンデルブロ集合を描画するプログラム
--サンプルとして与えられている座標幅からマンデルブロ集合を描画できる 出力された画像から座標を指定して拡大することも可能
--発散までの計算量により、色が赤→黄→緑→水色→青→紫と変わる 決められた計算量で発散しなかった場合は、収束したとして黒を表示する
--計算量はユーザーが指定する
--解像度はヘッダファイルのPIXの値を変えることにより変更可能 デフォルトは1000
-検証
--プレゼン資料のほうにまとめたのでそっちを見てください。
#ref(mandelbrot.pptx)
#ref(mandelbrot.pdf)
-プログラム本体~
需要なさそうでが、一応置いときます~
幾何学模様みて楽しみたい人はどうぞ~
#ref(mandelbrot.lzh)
--ファイル一覧
---mandelbrot.exe: マンデルブロ集合描画プログラム
---calcofcoord.exe: 座標データから拡大した座標を求めるプログラム
---header: BMPのヘッダーデータバイナリファイル
---mandelbrot.c: 逐次的プログラムソース
---mpi_mandelbrot.c: 並列プログラムソース
---mandelbrot_func.c: 関数動作プログラムソース
---mandelbrot_func.h: 上のヘッダファイル
---calcofcoord.c: 座標計算プログラムソース
--動作環境
---逐次的なほうはWindowsとかでも動きます。多分、コマンドプロンプトで。
---並列動かすなら、大学環境でコンパイルして動かすのがお手軽でおすすめ。~
% mpicc -Os -c mandelbrot_func.c~
% mpicc -Os -c mpi_mandelbrot.c~
% mpicc -o mpi_mandelbrot mpi_mandelbrot.o mandelbrot_func.o~
--使い方
---プログラムに拙い英語で書いてあります。
---calcofcoord.exeは出力された画像ファイルをペイントとかで開いて、拡大したい座標を調べてそれを入れて下さい。
---mandelbrot.exeで画像出力→その画像から拡大したいところの座標しらべる→calcofcoord.exeで座標データをファイルへ→mandelbrot.exeでそれを描画っていう風にやると、どんどん拡大できるはず。
--注意点
---プログラム実行中にbmpファイルを開かないこと
---makefileはないので各自でなんとかコンパイルしてください
---ループ上限が256*8191で2096896になってます。それ以上の結果は全部黒で表示されるのであしからず
---拡大するときに、変数をバイナリで引き継いでいない関係上、どんどん劣化していきます。拡大しすぎると変な画像がでます。仕様です。そのうち直すかも。
--バグ
---結構ありそうなんで、あったら教えてください。~
~
--------------------------
6/10 プレゼン資料に検証結果追加。大体やりたいことはやりつくした感があります。~
6/09 実装発表に向けプレゼン資料を作っていたら、バグ的なものが見つかったので修正。~
~
何か感想とか質問とかあればどうぞ。~
#comment
終了行:
-動作
--マンデルブロ集合を描画するプログラム
--サンプルとして与えられている座標幅からマンデルブロ集合を描画できる 出力された画像から座標を指定して拡大することも可能
--発散までの計算量により、色が赤→黄→緑→水色→青→紫と変わる 決められた計算量で発散しなかった場合は、収束したとして黒を表示する
--計算量はユーザーが指定する
--解像度はヘッダファイルのPIXの値を変えることにより変更可能 デフォルトは1000
-検証
--プレゼン資料のほうにまとめたのでそっちを見てください。
#ref(mandelbrot.pptx)
#ref(mandelbrot.pdf)
-プログラム本体~
需要なさそうでが、一応置いときます~
幾何学模様みて楽しみたい人はどうぞ~
#ref(mandelbrot.lzh)
--ファイル一覧
---mandelbrot.exe: マンデルブロ集合描画プログラム
---calcofcoord.exe: 座標データから拡大した座標を求めるプログラム
---header: BMPのヘッダーデータバイナリファイル
---mandelbrot.c: 逐次的プログラムソース
---mpi_mandelbrot.c: 並列プログラムソース
---mandelbrot_func.c: 関数動作プログラムソース
---mandelbrot_func.h: 上のヘッダファイル
---calcofcoord.c: 座標計算プログラムソース
--動作環境
---逐次的なほうはWindowsとかでも動きます。多分、コマンドプロンプトで。
---並列動かすなら、大学環境でコンパイルして動かすのがお手軽でおすすめ。~
% mpicc -Os -c mandelbrot_func.c~
% mpicc -Os -c mpi_mandelbrot.c~
% mpicc -o mpi_mandelbrot mpi_mandelbrot.o mandelbrot_func.o~
--使い方
---プログラムに拙い英語で書いてあります。
---calcofcoord.exeは出力された画像ファイルをペイントとかで開いて、拡大したい座標を調べてそれを入れて下さい。
---mandelbrot.exeで画像出力→その画像から拡大したいところの座標しらべる→calcofcoord.exeで座標データをファイルへ→mandelbrot.exeでそれを描画っていう風にやると、どんどん拡大できるはず。
--注意点
---プログラム実行中にbmpファイルを開かないこと
---makefileはないので各自でなんとかコンパイルしてください
---ループ上限が256*8191で2096896になってます。それ以上の結果は全部黒で表示されるのであしからず
---拡大するときに、変数をバイナリで引き継いでいない関係上、どんどん劣化していきます。拡大しすぎると変な画像がでます。仕様です。そのうち直すかも。
--バグ
---結構ありそうなんで、あったら教えてください。~
~
--------------------------
6/10 プレゼン資料に検証結果追加。大体やりたいことはやりつくした感があります。~
6/09 実装発表に向けプレゼン資料を作っていたら、バグ的なものが見つかったので修正。~
~
何か感想とか質問とかあればどうぞ。~
#comment
ページ名: