問題タブ [mandelbrot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1298 参照

complex-numbers - 複素数ライブラリを使用しない滑らかな彩色マンデルブロ集合

C# で基本的なマンデルブロ エクスプローラーをコーディングしましたが、ひどい色の帯があり、すべてグレースケールです。

滑らかな色付けの方程式があります: mu = N + 1 - log (log |Z(N)|) / log 2

ここで、N はエスケープ カウントで、|Z(N)| です。値がエスケープされた後の複素数のモジュラスです。不明なのはこの値です。

私のコードは、ウィキペディアのページにある疑似コードに基づいています: http://en.wikipedia.org/wiki/Mandelbrot_set#For_programmers

複素数は実数値 x と y で表されます。この方法を使用すると、|Z(N)| の値はどのように計算されますか? ?

0 投票する
2 に答える
542 参照

java - マンデルブロは更新が非常に遅いですが、それを速くする方法はありますか?

私は最近フラクタルジェネレーターに取り組んでおり、特にマンデルブロ集合に取り組んでいます。残念ながら、ズームと移動は非常に不十分なようで、更新にはかなりの時間がかかります。ズームするたびに生成していますが、これがおそらく最も効率的な方法ではないことはわかっています。また、理解している別の方法を使用するコードを見つけることができないようです。これらは私が使用する次の方法です。最初の方法は初期生成であり、2番目の方法は更新方法です。

0 投票する
1 に答える
277 参照

java - Java mandelbrot セットの移動が間違っている

だから私はJavaでマンデルブローセットをプログラムしようとしてきました.コードがあまり最適化されていないことは知っていますが、これを始めたばかりです.

アイデアは、ピクセルをクリックすると、そのピクセルが中央 (特定の複素数を表す) に配置され、その周りのセットが計算されるというものです。これは最初は機能しますが、ズームインすると奇妙な動作を開始します。私のmidX、midY、または奇妙な表示機能のいずれかだと思いますが、長い間見てきましたが、理解できません。助けていただければ幸いです。

0 投票する
1 に答える
478 参照

c - c から sse2 へのマンデルブロ描画ルーチン

このような単純なルーチンを SSE2 コードに (できれば nasm で) 書き直したいのですが、その方法が完全にはわかりません。 c コード関数 "SetPixelInDibInt(i ,j, palette[n]);" 静的にリンクされた asm コードの下から

他のコードの実装は見たくないのですが、上記のものの nasm-sse 翻訳だけを見たいのですが、私の場合は最も役に立ちます - 誰かがそれを手伝ってくれますか?

0 投票する
2 に答える
2131 参照

opencl - MandelBrot セット openCL の使用

TBB(スレッドビルディングブロック)を使用して実行したときに使用したものと同じコード(一種)を使用しようとしています。

OpenCL の経験はあまりありませんが、メイン コードのほとんどは正しいと思います。エラーは.cl、計算を行うファイルにあると思います。

TBB の私のマンデルブロー コードは次のとおりです。

マンデルブロ TBB

これがOpenCLの私のコードです

マンデルブロ OpenCL

どんな助けでも大歓迎です。

0 投票する
2 に答える
501 参照

c++ - マンデルブローの各ピクセル計算を異なるノードに分割する方法は?

ここに画像の説明を入力

ここでの私の質問は、作業を各スレッドに分散し、それらから計算値を取得するためにどのデータ構造を使用する必要があるかということです。最初に頭に浮かんだのは、ベクトル [0] .. ベクトル [63999] (800x800 ピクセルの場合) を x、y および iterate_value を保持する構造体で埋めることです。それらのベクトルを各ノードに渡します->次に、指定されたベクトルを各コア(Os-thread)にさらに分割します->次に、指定されたベクトルを各スレッドにさらに分割します。値を送受信する他の方法はありますか? また、ベクトルの方法でそれを行う場合、ベクトルを値渡しまたは参照渡しで渡す必要があります。この場合、どちらが良いでしょうか?

0 投票する
3 に答える
755 参照

c - 私の OpenMP マンデルブロ セット コードを修正する必要があります

OpenMP で次のマンデルブロ セット コードがあります。私の C コードは問題なく動作し、生成される画像は完璧です。しかし、OpenMP を使用すると、正しくコンパイルおよび実行されますが、残念ながら、出力された .ppm ファイルを開くことができません。単に Gimp が読み取れないだけです。

0 投票する
2 に答える
554 参照

c++ - マンデルブロー集合は pthread を使用して加速しません

そこで、pthread を使用してマンデルブロー集合を計算するプログラムを作成しています。
これはスレッド関数です:


これCompは複素数のクラスでありz.next、次のマンデルブロ反復を計算することを意味します。

clock_t前後pthread_createをペアでセットしましたpthread_join。マンデルブロー
集合の結果は正しいですが、スレッド数を 1 から 8 に増やしても計算時間は常に同じ
です"enter"pthread_join.
にスレッドセーフ機能があることが問題なのかもしれpartial_computeませんが、見つかりません。float(クラスではなく で複素数を表現しようとしました)
ここで間違いはありますか? お手伝いありがとうございます。

更新:
不完全な情報で申し訳ありません。
z.length()は複素数 z の 2 乗を意味します。
これが私がタスクを分割する方法です。画面の幅と高さを意味しますx_length。 画面を幅ごとに n 分割し、範囲をスレッドに送信して計算します。y_length