問題タブ [fluid-dynamics]

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 投票する
0 に答える
1144 参照

simulation - OpenFOAM の GAMG Preconditioner は実際にどのように機能しますか?

私は CFD シミュレーションに OpenFOAM を使用しています。非常に人気のある前処理はGAMG です。これは、流体の流れをシミュレートするために使用される SIMPLE または PISO ソルバーで時間ステップごとに必要な反復回数が少なくて済みます。

GAMG が内部構造をどのように準備しているかを理解したいと思います。

ジオメトリに基づいて 1 回の反復で 1 回だけGAMG で使用される内部データ構造を作成し、これらのデータ構造のエントリのみを更新しますか?

また

1回の反復で内部データ構造を複数回作成しますか? ここでドキュメントを読みましたが、答えがありません。

ご回答有難うございます。

0 投票する
0 に答える
416 参照

c++ - 流体 c++ のヤコビ反復オブジェクト

正方形などのオブジェクトの周りの特定の電流の速度を計算するプログラムを書いています。現在、Jacobi Iteration メソッドを使用していますが、実行すると、期待した結果が得られません。何が間違っているのかわかりません。2 つのクラスがあります。1 つは調整できないグリッドを作成するクラスで、もう 1 つはパラメーター「voneindig」を持つオブジェクトを作成するクラスです。

正方形とグリッドを作成して Iterate() 関数を実行すると、正方形のオブジェクトが大きくなるようです。(元の正方形の周りにゼロがどんどん増えていきます)

メンバー関数 getStatusElement() は、正方形が配置されている場所が 1 で、その他の場所が 0 で作成したグリッドです。

この問題について十分な情報を提供できていることを願っています。それ以外の場合は、すべてのコードを提供できます。どうもありがとう!

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

simulation - 半径が 0 の場合、平滑化粒子の流体力学ではどの反発方向を使用しますか?

SPH を実行する場合、Kelagar の論文では、圧力によって引き起こされる粒子間の力に特定のカーネルを使用することを推奨しています。半径がカーネル半径内にある場合、推奨されるカーネルは次のとおりです。

ここで、h はカーネル半径、r は関数の値の計算に関心のある半径です。

この論文では、この関数の勾配は次のようになると述べています。

ここで、r_vec は、カーネルの中心から関心のあるポイントまでのベクトルです。r_vec の長さが正の方向から 0 になると、この論文は、この勾配が近づくと述べています。

ただし、これはベクトルではなくスカラーです。関心のある 2 点間に反発があるためには、反発する方向が必要です。

2 つの粒子が隣り合っている場合、どの方向を使用すればよいでしょうか?

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

fluid-layout - 内側の境界

この記事を使用して、流体シミュレーション アプリケーションを作成しています。内側の境界を実装できません。私が知っている限り、境界の内側にある各セルの境界を ( set_bnd関数で) 設定しているとき、次のように隣接する非境界セルから平均値を計算する必要があります。

残念ながら、煙は吸収され、境界面に接触して消えます。
私の数学のバックグラウンドは計算のすべての部分を理解するのに十分ではないので、誰かが私に正しい方向性を示してくれたらとても感謝しています.

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

modelica - Modelica.Media.R134a エラー

Modelica Standard Library 3.2.1 には冷媒 R134a のモデルが含まれていましたが、Modelica.Fluid では正しく動作しないようです。1 つの単純な例でDynamicPipeは、次のエラーが発生します。

use_T_startは偽です。ここで何が問題なのですか?どうすれば解決できますか?

ティア

アップデート:

選択された状態は、当然のことながら h と p です。pTX 呼び出しのパラメーターは、選択したメディアの既定値のようです。

PartialStaggeredFlowModelとを使用Medium.density_pTXしてMedium.setState_pTXいますが、これらをそれぞれの phX 関数に変更しても問題は解決しません。

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

android - Androidで流体モーションを作成する方法

ボトル内の流体をレンダリングする必要があり、デバイスが回転している場合

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

algorithm - 流体シミュレーションは、Rigid Body phisix エンジンにどのように統合されていますか?

1) Rigid Body phisix と流体 (SPH など) を混合したシミュレーションが現実世界のモデリングを提供できるという証拠はありますか?
2) そのようなミックスのフレームはどのように機能しますか?

2 つの異なる液体 (油と水) とソフト ボディ (ボール) が入った箱の中に木のブランコがあるとします。開始条件は次のようになります。 ここに画像の説明を入力

このような状況をどのようにシミュレートできますか? どんなツールで?

私の持っているもので現在それをどのように見ているか(間違っている場合は背を高くしてください)

  1. すべての物体と流体は状態 ( *)にあります。
  2. Bullet などの最新のエンジンは、ソフト ボディとリジッド ボディをサポートしている*ため、RB\SB phisix エンジンでフレームをロード ( ) して作成できます。
  3. すべての頂点を取り、その位置を前のフレームと比較します。何らかの形のベクトル力場を取得します。
  4. *流体エンジンのtate ( ) での rb/sb を、力場からのインパルスを持つ粒子として表します。
  5. load ( *) RB と SB を粒子として、それらが作られた材料に対応する密度と、以前に計算されたベクトル場に対応するインパルスを持ちます
  6. 流体エンジンでフレームを作る
  7. 粒子の動きに対して rb/sb 位置を更新 - 新しい状態を取得 ( **)

そして、これは少なくとも理論的には、単純なケースの場合、現在の流体 3 + 弾丸 3 を GPU で使用して、ほぼリアルタイムで計算できる可能性があります。

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

objective-c - Spritekit 流体の流れをシミュレートする

シーン内で電流をシミュレートする簡単な方法はありますか? スプライトキット内で重力、質量、密度、抗力、その他の属性を提供することは知っていますが、シーン上のオブジェクトに影響を与える電流をどのようにシミュレートすればよいのでしょうか?

IE によると、重力と密度を使用して画面の上部から下部にオブジェクトが落下しているかのように見えますが、これを設定するのはかなり簡単です。ただし、シーンの中央を左から右に流れる電流を追加したいとしましょう...そのため、オブジェクトが落下すると、電流の影響を受け始め、落下は電流とともに動き始めます。流れの中心に近づくと左右の動きが大きくなり、流れの中心を通過して中心から離れると左右の動きが遅くなります。

これは可能ですか?これをシミュレートするには、重力で左から右に移動する非表示/透過ノードを作成する必要がありますか? または、使用する必要がある別のアプローチがありますか?