JP2022022999A - 表面アルゴリズムを使用して物理過程をシミュレートするためのコンピュータシステム - Google Patents

表面アルゴリズムを使用して物理過程をシミュレートするためのコンピュータシステム Download PDF

Info

Publication number
JP2022022999A
JP2022022999A JP2021106379A JP2021106379A JP2022022999A JP 2022022999 A JP2022022999 A JP 2022022999A JP 2021106379 A JP2021106379 A JP 2021106379A JP 2021106379 A JP2021106379 A JP 2021106379A JP 2022022999 A JP2022022999 A JP 2022022999A
Authority
JP
Japan
Prior art keywords
voxel
elements
interaction
facet
state
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021106379A
Other languages
English (en)
Other versions
JP2022022999A5 (ja
Inventor
ゴパラクリシュナン プラディープ
Gopalakrishnan Pradeep
チャン ラオヤン
Raoyang Zhang
チェン フードン
Hudong Chen
ワン ジュンイェ
Junye Wang
ジャマラマダカ アヴィナッシュ
Jammalamadaka Avinash
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dassault Systemes Simulia Corp
Original Assignee
Dassault Systemes Simulia Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dassault Systemes Simulia Corp filed Critical Dassault Systemes Simulia Corp
Publication of JP2022022999A publication Critical patent/JP2022022999A/ja
Publication of JP2022022999A5 publication Critical patent/JP2022022999A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/28Design optimisation, verification or simulation using fluid dynamics, e.g. using Navier-Stokes equations or computational fluid dynamics [CFD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/25Design optimisation, verification or simulation using particle-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • G06F7/485Adding; Subtracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/08Computing arrangements based on specific mathematical models using chaos models or non-linear system models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/10Numerical modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/08Fluids
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/14Force analysis or force optimisation, e.g. static or dynamic forces

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Algebra (AREA)
  • Mathematical Physics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Computational Mathematics (AREA)
  • Fluid Mechanics (AREA)
  • Nonlinear Science (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】流体流の要素をシミュレートするためのコンピュータ実施技法を提供すること。【解決手段】これらの技法は、複数のボクセルの状態ベクトルをメモリに記憶するステップであって、状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、ステップと、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶するステップと、状態ベクトルに対して相互作用演算を実行するステップであって、相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、ステップと、表面の表現に対して表面相互作用演算を実行するステップであって、表面相互作用演算が、表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、ステップと、要素の新しいボクセルへの移動を反映するために、状態ベクトルに対して移動演算を実行するステップとを含む。【選択図】図1

Description

本説明は、物理過程、例えば流体流(fluid flow)をシミュレートすることに関する。
格子ボルツマン法(LBM:Lattice Boltzmann Method)は、車および飛行機などの様々な幾何学形状の周囲の多様で複雑な流体流をシミュレートするために使用される。ソルバ全体の中でも重要な部分の1つは、境界条件を処理するそのアルゴリズム、すなわち、固体壁の表面近くなどの流体計算領域の縁部においてLBM粒子分布の動力学を処理するアルゴリズムである。このようなアルゴリズムをどれだけ適切に定式化するかが、シミュレーションの結果として得られる精度に直接的な影響を与える。
米国特許第5,848,260号では、厳密な質量保存、および境界面全体にわたる運動量流束(momentum fluxes)の正確な適用を保証する、体積(volume)ベースの定式化のための新規な技法(‘260スリップアルゴリズム)について説明した。
米国特許第5,848,260号
特許取得済みの手法は大きな成功を収めているが、いくつかの制限がある。例えば、壁の近くで結果として得られる流体量(fluid quantities)は、所望の人工ノイズよりも高くなる。このような人工物は、有効な表面の粗さとして現れ、結果として、数値的散逸が増加し、所望の境界層よりも厚くなる。これは、特に非常に平滑な流線形の筐体の場合、シミュレーションの次のレベルの精度に悪影響を与える可能性がある。第2に、特許取得済みのプロセスの安定域の広さは十分ではなく、したがって、特許取得済みのプロセスは、より高速な流体流のシミュレーションに対するその能力に限界がある。
‘260特許に記載のプロセス、すなわちスリップアルゴリズムは、表面表現とともに、格子ボルツマン流体領域の体積表現に基づいている。‘260特許では、表面は、それぞれが比表面積および表面法線を有する表面要素の集合として説明されている。‘260特許では、境界条件は、隣接する表面要素と流体領域内の粒子との相互作用によって実現される。
しかしながら、本明細書に述べる新規なスリップアルゴリズムでは、境界条件は、次の3つの基本的なプロセスで定義されるように、すべての表面要素と流体領域内の粒子との相互作用によって提供される。
いわゆる平行四辺形/平行六面体に従って、境界面近くの流体領域からの流入分布(incoming distribution)関数(境界面に向かって移動する粒子に対応する)を収集する。表面動力学は、流入分布関数の集合を、境界を通過する質量および運動量流束(momentum fluxes)に関する特定の境界条件を満たす流出分布(outgoing distribution)関数(境界面から反射された粒子に対応する)の集合に変換することを含む。平行四辺形/平行六面体に従って、流出分布関数を、境界近くの流体領域に分布させる。
この手法は、前述の制限に大いに対処する。新しい手法の全体的なフレームワークは‘260特許と同様であるが、流入分布関数の集合を流出分布の集合に変換する表面動力学において大きな変化がある。より具体的には、表面を通過するゼロ運動量流束を実現するために、表面動力学で使用されるプロセスが大幅に変更される。厳密なゼロ接線運動量流束を達成することは、正確な境界条件アルゴリズムの基礎であり、その結果、特定の量の運動量流束を後で正確に追加することができる。この変更は、前述の長期にわたる制限を克服する助けとなる。
一態様によれば、流体流(fluid flow)の要素をシミュレートするためのコンピュータ実施方法は、複数のボクセルの状態ベクトルをメモリに記憶するステップであって、状態ベクトルが、ボクセルにおける複数の可能な運動量状態(momentum states)のうちの特定の運動量状態に対応する複数のエントリを含む、ステップと、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶するステップと、状態ベクトル(state vectors)に対して相互作用演算(interaction operations)を実行するステップであって、相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、ステップと、表面の表現に対して表面相互作用演算(surface interaction operations)を実行するステップであって、表面相互作用演算が、表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、ステップと、要素の新しいボクセルへの移動を反映するために、状態ベクトルに対して移動演算(move operations)を実行するステップとを含む。
さらなる一態様によれば、流体流の要素をシミュレートするためのデータ処理システムは、複数のボクセルの状態ベクトルをメモリに記憶することであって、状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、記憶することと、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶することと、状態ベクトルに対して相互作用演算を実行することであって、相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、相互作用演算を実行することと、表面の表現に対して表面相互作用演算を実行することであって、表面相互作用演算が、表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、表面相互作用演算を実行することと、要素の新しいボクセルへの移動を反映するために、状態ベクトルに対して移動演算を実行することとをデータ処理システムに行わせるための命令を含む。
さらなる一態様によれば、非一過性のコンピュータ可読媒体は、流体流の要素をシミュレートするためのコンピュータプログラム製品を記憶し、コンピュータプログラム製品は、複数のボクセルの状態ベクトルをメモリに記憶することであって、状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、記憶することと、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶することと、状態ベクトルに対して相互作用演算を実行することであって、相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、相互作用演算を実行することと、表面の表現に対して表面相互作用演算を実行することであって、表面相互作用演算が、表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、表面相互作用演算を実行することと、要素の新しいボクセルへの移動を反映するために、状態ベクトルに対して移動演算を実行することとをデータ処理システムに行わせるための命令を含む。
上記の態様のうちの1つまたは複数は、本明細書に記載の特徴の中でもとりわけ、以下の特徴のうちの1つまたは複数を含み得る。
表面相互作用演算を実行するための命令は、ファセットと相互作用する少なくとも1つのボクセルの第1の集合から要素を収集し、収集された要素とすべてのファセットとの間の相互作用をモデル化して表面相互作用要素の集合を生成し、表面相互作用要素を、ファセットと相互作用する少なくとも1つのボクセルの第2の集合に散乱させるための命令を含む。状態ベクトルのエントリは、ボクセルの特定の運動量状態における単位体積当たりの要素の密度を表す。状態ベクトルは、特定の運動量状態における単位体積当たりの要素の密度を表すとともにより多くの可能な値を有する複数の整数および/または浮動小数点値のうちの1つまたは複数を含む。
表面相互作用演算は、整数値および/または浮動小数点値のうちの1つまたは複数を使用して実行され、表面相互作用演算は、実数を表す値を使用して実行される。表面相互作用演算は、整数および/または浮動小数点数を使用して実行される。表面相互作用演算は、表面と交差するボクセルを部分ボクセルとして表すことを含む。少なくとも1つの表面の表現は、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられるとともに少なくとも1つの表面を表す複数のファセットを含み、表面相互作用演算は、ファセットとファセットの近くの少なくとも1つのボクセルの要素との間の相互作用をモデル化することをさらに含む。
要素は流体の粒子を表し、ファセットは流体が流れる少なくとも1つの表面を表す。
表面相互作用演算の実行は、流入分布とボルツマン分布との間の差分の計算することと、すべての状態ベクトルの差分から合計運動量を決定することと、決定された差分に基づいて流出分布を生成することとを含む。
上記の態様のうちの1つまたは複数は、本明細書に開示される利点のうちの1つまたは複数を提供し得る。
固体壁面に関する境界条件を処理することに加えて、スリップアルゴリズムは、2つの異なる格子ボルツマンソルバの領域間および2つの異なる参照フレームの領域間の流体境界を処理するために適用することもできる。固体壁とは異なり、境界を横切る質量流束は一般に、ゼロではない。また、運動量流束は、ある領域から別の領域への流れの対流を表す追加の項を含む。これらはすべて、固体表面のための以前のスリップアルゴリズム(‘260)の非自明であるが単純な拡張である。
好ましい実施形態の以下の詳細な説明、および特許請求の範囲から、本発明の他の特徴および利点が明らかになる。
新規な表面動力学変換を含む、流体流をシミュレートするためのシステムを示す図である。 表面動力学変換を伴う格子ボルツマンモデルシミュレーションの定式化のための動作を示す流れ図である。 表面動力学変換を伴う格子ボルツマンモデルを使用したシミュレーション動作を示す流れ図である。 動力学変換を示す流れ図である。 ユークリッド空間で表される2つのLBMモデルの速度成分を示す図である(先行技術)。 ユークリッド空間で表される2つのLBMモデルの速度成分を示す図である(先行技術)。 補正されたCAD図面を使用する物理過程シミュレーションシステムが従う手順の流れ図である。 マイクロブロックの斜視図である(先行技術)。 図1のシステムによって使用される格子構造の図である(先行技術)。 図1のシステムによって使用される格子構造の図である(先行技術)。 可変分解能技法を示す図である(先行技術)。 可変分解能技法を示す図である(先行技術)。 粒子の動きを示す図である(先行技術)。 表面のファセットの影響を受ける領域を示す図である(先行技術)。 新規な表面動力学の流れ図である。 表面動力学を実行するための手順の流れ図である(先行技術)。
本発明の1つまたは複数の実施形態の詳細が、添付の図面および以下の説明に記載されている。本発明の他の特徴、目的、および利点が、説明および図面、ならびに特許請求の範囲から明らかになる。
流体流をシミュレートするための方法の1つは、いわゆる格子ボルツマンモデル(LBM)である。LBMベースの物理過程シミュレーションシステムにおいて、流体流は、分布関数値によって表され、分布関数の時間発展を記述するよく知られた格子ボルツマン方程式(以下の方程式1を参照)を使用して、離散速度の集合で評価される。分布関数は、流動過程と衝突過程の2つの過程を含む。
表面動力学では、正確なゼロ接線運動量流束の境界条件が達成されるように、「流入」粒子分布の集合を「流出」粒子分布の集合にマッピング/変換する。上記のように、‘260特許と大きく異なるのは、この特有の部分である。特有のアルゴリズムの違いを以下の表面動力学のステップで説明する前に、最初に以下の表面動力学の概念の概要について説明する。
各表面要素について、
Figure 2022022999000002
が収集ステップから取得された流入粒子分布関数を表すとする。この関数は、表面に向かう方向を指す速度値ciを有する(すなわち、
Figure 2022022999000003
である)表面要素の近くの空間内の単位体積当たりの粒子数に対応し、式中、
Figure 2022022999000004
は、流れ領域に向かう方向を指す表面要素の単位法線ベクトルを示す。流入分布の集合全体は、表面の方向を指しているすべての可能なci値を含む(すなわち、
Figure 2022022999000005
)。
表面動力学では、「流入」分布関数の既知値の値に基づいて、表面要素の「流出」分布関数の値を求める。「流出」分布関数
Figure 2022022999000006
は、表面から離れる方向を指す速度値ciを有する(すなわち、
Figure 2022022999000007
である)表面近くの空間内の単位体積当たりの粒子数に対応する。
象徴的には、表面動力学は次の論理変換、
Figure 2022022999000008
と定義され、上記の方程式1の左辺は、収集ステップを通して取得した流入分布関数の集合であり、方程式1の右辺は、表面動力学ステップを介して値を求めた流出分布関数の集合である。境界の表面を通る2つの基本的な流束がある。これらは、以下の数式で定義される質量流束および運動量流束である。
質量流束は、
Figure 2022022999000009
(方程式2)
であり、運動量流束は、
Figure 2022022999000010
(方程式3)
であり、式中、Aは表面要素の面積である。
流体境界条件は、一般に、質量Mおよび運動量Pが、流体ソルバの境界面上で指定された値に従うように定義される。具体的には、粒子は固体壁を貫通できないので、ゼロ質量流束の条件、M=0が適用される。表面を通るゼロ接線運動量流束は、
Figure 2022022999000011
を有することになる。
固体壁では、これは摩擦のない境界条件を有することと同じである。ここでは、
Figure 2022022999000012
は、表面要素に対して接線方向にある任意のベクトルであり、したがって、
Figure 2022022999000013
である。
スリップアルゴリズムにおける表面動力学は、指定された値による2つの流束条件が満たされるように、流入分布関数の値を流出分布の値に変換する関係である。ゼロ質量流束条件とゼロ接線運動量流束条件を達成した後、指定された値による全体の質量流束条件および運動量流束条件を満たすための残りのプロセスは、‘260特許と新規な手法との間で同じであるので、そのプロセスについて、ここでは説明しない。
2つの流束条件の他にも多くの分布関数があるので、流出分布の値は一意ではない。実際、‘260特許および現在の手法は、流入分布関数を流出分布関数とリンクする関係が異なるため異なる値を与える。
ゼロ接線運動量流束のための表面動力学アルゴリズム
ゼロ質量流束およびゼロ接線運動量流束を満たす‘260特許における特有な関係は、次の定式化、
Figure 2022022999000014
によって与えられ、式中、i*は、iに対するパリティ格子速度方向であり、すなわち、ci=-ci*である。平衡分布
Figure 2022022999000015
および
Figure 2022022999000016
の計算は、密度および速度のサンプル値に基づく。計算の完全な記述は、‘260特許において指定されている。
例えば、等温LBMソルバの場合、平衡分布は、方程式5、
Figure 2022022999000017
(方程式5)
によって与えられ、式中、wiおよびT0は、格子ボルツマンモデルの知られている定数である。ここでは、密度ρおよび(
Figure 2022022999000018
を伴う)速度uは、表面近くの流体領域からサンプリングされる。また、ρは、次の関係、
Figure 2022022999000019
(方程式6)
を満たすことによってゼロ質量流束条件が満たされるように再スケーリングされる。
式(方程式4)を(方程式5)とともに運動量流束の定義(方程式3)に代入すると、
Figure 2022022999000020
であると証明することができる。したがって、接線方向に沿った運動量流束、
Figure 2022022999000021
は、ゼロである。
ここでは、量p=ρΤ0は、表面の圧力値を示す。より一般的な境界条件は、ここで説明するゼロ質量流束条件およびゼロ接線運動量流束条件に適切な質量流束および運動量流束を追加することによって実現することができる。
‘260特許の定式化における1つの明確な特徴は、方程式(4)に示されているように、流出分布
Figure 2022022999000022
の、流入分布
Figure 2022022999000023
への直接の1対1の依存性である。現在はこれが、前述の欠陥または前述の欠陥のうちの少なくともいくつかの主な原因であると理解されている。
次に図1を参照すると、格子ボルツマン(LB)ベースのシミュレーションを実行するシステム10は、新規な表面動力学変換34bを含む。この実装におけるシステム10は、クライアントサーバベースまたはクラウドベースのアーキテクチャに基づいており、大規模並列コンピューティングシステム12(スタンドアロンまたはクラウドベース)として実装されたサーバシステム12と、ネットワーク15を介して結合されたクライアントシステム14とを含む。サーバシステム12は、メモリ18、バスシステム11、インターフェース20(例えば、ユーザインターフェース/ネットワークインターフェース/ディスプレイまたはモニタインターフェースなど)、および処理デバイス24を含む。メモリ18には、メッシュ準備エンジン32およびシミュレーションエンジン34がある。
図1は、メモリ18内のメッシュ準備エンジン32を示しており、メッシュ準備エンジンは、サーバ12とは異なるシステム上で実行されるサードパーティアプリケーションとすることができる。メッシュ準備エンジン32がメモリ18内で実行するのか、サーバ12とは異なるシステム上で実行するのかにかかわらず、メッシュ準備エンジン32は、ユーザ提供のメッシュ定義30を受け取り、メッシュ準備エンジン32は、メッシュを準備し、準備されたメッシュをシミュレーションエンジン34に送信する(かつ/または記憶する)。
シミュレーションエンジン34は、新規な表面動力学変換34bを含む衝突相互作用モジュール34aと、境界モジュール34cと、移流粒子衝突相互作用モジュール(advection particle collision interaction module)34dと含む。システム10は、2Dおよび/または3Dメッシュ(デカルトおよび/または曲線)、座標系、ならびにライブラリを格納するデータリポジトリ38にアクセスする。
次に図2を参照すると、物理オブジェクトの表現について流体流をシミュレートするためのプロセス40が示されている。本明細書に述べる例では、物理オブジェクトは翼である。しかしながら、物理オブジェクトは任意の形状とすることができ、具体的には、平面および/または曲面を有することができるので、翼の使用は単に例示的なものである。プロセス40は、シミュレートされている物理オブジェクトためのメッシュ(またはグリッド)を、例えば、クライアントシステム14から受け取るか42、またはデータリポジトリ38から取得する。他の実施形態では、外部システムまたはサーバ12のいずれかが、ユーザ入力に基づいて、シミュレートされている物理オブジェクトのためのメッシュを生成する。プロセスでは、取得されたメッシュから幾何学量を事前計算し44、取得されたメッシュに対応する事前計算された幾何学量を使用して動力学格子ボルツマンモデルシミュレーションを実行する46。格子ボルツマンモデルシミュレーションは、表面動力学変換、境界モデリング、およびLBMメッシュ内の次のセルへの粒子の移流を含む、粒子分布の発展のシミュレーション46を含む。
図3を参照すると、シミュレーションプロセス46は、例えば、新規な表面動力学変換34b(図1)に適合するように修正された格子ボルツマンプロセス(LBp)に従って、粒子分布の発展をシミュレートする。プロセス46(図2を参照)は、衝突演算を実行し46a、すべての粒子のすべての衝突演算の結果を動力学変換し46b、その後に境界モデリング46c、およびLBM空間内の次のセルへの粒子の移流46dが続く。
次に図4を参照すると、粒子の時間発展をシミュレートするシミュレーションプロセス46は、一般に従来の衝突演算46a、境界モデリング46c、および移流46dのプロセスを実行する。しかしながら、‘260特許に記載されている流入粒子分布の集合の流出粒子分布の集合への変換は、流出粒子分布の各集合を定式化するために、すべての流入粒子分布46bの結果を取る動力学変換プロセスに置き換えられる。動力学変換46bは、隣接するメッシュ位置から流入分布の集合を収集するのではなく、衝突演算から、メッシュ位置から分布のすべての流入集合を収集すること52を含む。この新しい定式化は、上記の‘260特許における1対1の依存関係を回避し、その依存関係を、各「流出」分布関数がすべての「流入」分布に依存するように置き換える54。
方程式4の代わりに、新規な手法で与えられた新しい関係が、以下の数学的定式化、
Figure 2022022999000024
によって定義され、式中、δfiは、
Figure 2022022999000025
(方程式8)
によって定義される。量hは、
Figure 2022022999000026
(方程式9)
によって定義される。
(方程式9)において、平衡分布は、(方程式5)と同じ方法で定義される。
Figure 2022022999000027
の構築では、(方程式6)によって与えられるのと同じ質量流束制約を満たすために密度再スケーリングを適用する以外に、新しい定式化において平衡運動量流束の接線部分に追加の制約、
Figure 2022022999000028
(方程式10)
が必要であり、式中、単位ベクトル
Figure 2022022999000029
は、サンプリングされた速度方向uに平行である。後者は、表面要素に投影されるので
Figure 2022022999000030
、したがって、
Figure 2022022999000031
である。制約(方程式10)は、uの大きさを再スケーリングすることによって実現することができる。
‘260特許の手法と同様に、(方程式7)~(方程式9)によって定義される新規な手法も、ゼロ質量流束およびゼロ接線運動量流束の境界条件を達成することが示され得る。
一見より複雑な手順であるが、新しい定式化における主な違いは、流出分布と流入分布との間の1対1の関係を回避することである。実際、(方程式7)~(方程式9)に示すように、流出分布
Figure 2022022999000032
は、(方程式9)で表されるそれらのモーメント合計を通じたすべての流入分布に依存する。
新しい定式化は、前述の欠点を大幅に克服し、ノイズの少ない表面を提供し、境界近くでより高い流体速度をサポートする可能性がある。
詳細な例
以下の図7に述べる手順では、シミュレーション空間を構成するための識別された空き空間を有するCAD図面を使用する、流れシミュレーションプロセスについて説明する。前の図5および図6、ならびに図8、図9A~図9B、図10および図11、ならびに図12、図13、および図15では、これらの図が上記の参照特許に出現するので、これらの図はそれぞれ、先行技術としてラベル付けされている。
しかしながら、上記の参照特許には本明細書に記載の動力学変換プロセス46bは記載されていないので、上記の特許に出現する図は、動力学変換プロセス46bを使用する流れシミュレーションに対して加えられる変更を考慮していない。
シミュレーション空間のモデル化
LBMベースの物理過程シミュレーションシステムにおいて、流体流は、離散速度ciの集合で評価される分布関数値fiによって表される。分布関数の動力学は、方程式I.1、
Figure 2022022999000033
方程式(I.1)
によって支配され、式中、
Figure 2022022999000034
は、平衡分布関数として知られており、
Figure 2022022999000035
と定義される。
方程式(I.1)は、分布関数fiの時間発展を表すよく知られた格子ボルツマン方程式である。左辺は、いわゆる「流動過程」による分布の変化を表す。流動過程は、流体のポケットが、あるメッシュ位置で出発し、次いで複数の速度ベクトルのうちの1つに沿って次のメッシュ位置に移動するときの過程である。その時点で、「衝突因子」、すなわち、出発している流体のポケットに対する近傍の流体のポケットの影響を計算する。流体は別のメッシュ位置に移動することしかできず、したがって、すべての速度のすべての成分が共通の速度の倍数になるように、速度ベクトルを適切に選択する必要がある。
第1の方程式の右辺は、流体のポケット間の衝突による分布関数の変化を表す前述の「衝突演算子」である。衝突演算子の特定の形態は、Bhatnagar、Gross、およびKrook(BGK)演算子によるものである。衝突演算子は、分布関数を、「平衡」形態である第2の方程式によって与えられる規定値になるようにする。
BGK演算子は、衝突の詳細に関係なく、分布関数が、衝突
Figure 2022022999000036
を通じて{feq(x,v,t)}によって与えられる明確に定義された局所平衡に近づくという物理的論拠に従って構築され、式中、パラメータτは、衝突を通じた平衡までの特性緩和時間を表す。粒子(例えば、原子または分子)を扱う場合、緩和時間は通常、定数と見なされる。
このシミュレーションから、質量ρおよび流体速度uなどの従来の流体変数は、以下の方程式(I.3)における単純和として得られる。
Figure 2022022999000037
方程式(I.3)
式中、ρ、u、およびTはそれぞれ、流体の密度、速度、および温度であり、Dは離散化された速度空間の次元である(必ずしも物理空間の次元と等しいとは限らない)。
対称性を考慮することにより、速度値の集合は、構成空間にまたがるときに一定の格子構造を形成するように選択される。このような離散系の動力学は、形態
i(x+ci,t+1)-fi(x,t)=Ci(x,t)
を有するLBEに従い、式中、衝突演算子は通常、上記のようなBGK形態を取る。平衡分布形態を適切に選択することにより、格子ボルツマン方程式が正しい水力学および熱水力学を生み出すことを理論的に示すことができる。すなわち、fi(x,t)から導出される水力学的モーメントは、巨視的極限ではナビエ-ストークス方程式に従う。これらのモーメントは、上記の方程式(I.3)によって定義される。
iとwiの集合値は、LBMモデルを定義する。LBMモデルは、スケーラブルなコンピュータプラットフォームに効率的に実装され、時間非定常流および複雑な境界条件に対して優れたロバスト性を伴って実行することができる。
ボルツマン方程式から流体系に対する巨視的な運動方程式を取得する標準的な技法は、完全なボルツマン方程式の逐次近似を取るチャップマン-エンスコッグ法である。流体系では、密度のわずかな乱れが音速で伝わる。気体系では一般に、音速は温度によって決定される。流れの圧縮率の影響の重要性は、特性速度と音速との比によって測定され、この比は、マッハ数として知られている。
流体流のシミュレーションを実施するための動力学変換46bを含む、LBMベースのシミュレーションシステムの一般的な議論を以下に示す。LBMベースの物理過程シミュレーションシステムのさらなる説明については、参照として組み込まれる上記の米国特許を参照されたい。
図5を参照すると、第1のモデル(2D-1)200は、21の速度を含む2次元モデルである。これらの21の速度のうち、1つの速度(205)は、移動していない粒子を表し、3組の4つの速度は、格子のx軸またはy軸のいずれかに沿って正方向または負方向のいずれかに、正規化速度(r)(210~213)、正規化速度の2倍(2r)(220~223)、または正規化速度の3倍(3r)(230~233)のいずれかで移動する粒子を表し、2組の4つの速度は、x格子軸およびy格子軸の両方に対して正規化速度(r)(240~243)または正規化速度の2倍(2r)(250~253)で移動している粒子を表す。
図6を参照すると、第2のモデル(3D-1)260が示されており、このモデルは、各速度が図10の矢印のうちの1つによって表される39の速度を含む3次元モデルである。これらの39の速度のうち、1つの速度は、移動していない粒子を表し、3組の6つの速度は、格子のx軸、y軸、またはz軸に沿って正方向または負方向のいずれかに正規化速度(r)、正規化速度の2倍(2r)、または正規化速度の3倍(3r)のいずれかで移動している粒子を表し、8つの速度は、x、y、zの3つの格子軸すべてに対して正規化速度(r)で移動している粒子を表し、12の速度は、x、y、zの2つの格子軸に対して正規化速度の2倍(2r)で移動している粒子を表す。
101の速度を含む3D-2モデル、および37の速度を含む2D-2モデルなど、より複雑なモデルを使用することもできる。101の速度のから成る3次元モデル3D-2の場合、1つの速度は、移動していない粒子(グループ1)を表し、3組の6つの速度は、格子のx軸、y軸、またはz軸に沿って正方向または負方向のいずれかに正規化速度(r)、正規化速度の2倍(2r)、または正規化速度の3倍(3r)のいずれかで移動している粒子(グループ2、4、および7)を表し、3組の8つの速度は、x、y、zの3つの格子軸すべてに対して正規化速度(r)、正規化速度の2倍(2r)、または正規化速度の3倍(3r)で移動している粒子(グループ3、8、および10)を表し、12の速度は、x、y、z格子軸のうちの2つに対して正規化速度の2倍(2r)で移動している粒子(グループ6)を表し、24の速度は、x、y、z格子軸のうちの2つに対して正規化速度(r)および正規化速度の2倍(2r)で移動しており、残りの軸に対して移動していない粒子(グループ5)を表し、24の速度は、x、y、z格子軸のうちの2つに対して正規化速度(r)で移動しており、残りの軸に対して正規化速度の3倍(3r)で移動している粒子(グループ9)を表す。
37の速度から成る2次元モデル2D-2の場合、1つの速度は、移動していない粒子(グループ1)を表し、3組の4つの速度は、格子のx軸またはy軸のいずれかに沿って正方向または負方向のいずれかに正規化速度(r)、正規化速度の2倍(2r)、または正規化速度の3倍(3r)のいずれかで移動している粒子(グループ2、4、および7)を表し、2組の4つの速度は、x格子軸およびy格子軸の両方に対して正規化速度(r)または正規化速度の2倍(2r)で移動している粒子を表し、8つの速度は、x格子軸およびy格子軸のうちの一方に対して正規化速度(r)で移動しており、他方の軸に対して正規化速度の2倍(2r)で移動している粒子を表し、8つの速度は、x格子軸およびy格子軸のうちの一方に対して正規化速度(r)で移動しており、他方の軸に対して正規化速度の3倍(3r)で移動している粒子を表す。
上記のLBMモデルは、2次元と3次元の両方での流れの数値シミュレーションのための、特定のクラスの効率的でロバストな離散速度運動モデルを提供する。この種類のモデルは、特定の離散速度の集合、およびそれらの速度に関連する重みを含む。速度は、特に格子ボルツマンモデルとして知られる種類の離散速度モデルの正確で効率的な実装を容易にする、速度空間内のデカルト座標のグリッド点と一致する。このようなモデルを使用して、流れを高い充実度でシミュレートすることができる。
図7を参照すると、流体流などの物理過程をシミュレートするための手順270による物理過程シミュレーションシステムの動作が説明されている。流れのシミュレーションの前に、上記のCAD図面を使用して、シミュレーション空間がボクセルの集合体としてモデル化される(272)。シミュレーション空間は、コンピュータ支援設計(CAD)プログラム、およびCADで生成された図面のギャップ補正処理を使用して生成される。例えば、CADプログラムを使用して、風洞に配置された翼を描画することができる。
格子の分解能は、シミュレートされるシステムのレイノルズ数に基づいて選択することができる。レイノルズ数は、流れの粘度(ν)、流れの中の物体の特性長(L)、および流れの特性速度(u)に関連する。
Re=uL/ν 方程式(I.4)
物体の特性長は、物体の大きいスケールの特徴を表す。例えば、マイクロデバイスの周囲の流れがシミュレートされる場合、マイクロデバイスの高さを特性長と見なすことができる。物体の小さい領域(例えば、自動車のサイドミラー)の周囲の流れが関心対象である場合、シミュレーションの分解能を上げるか、または分解能を上げた領域を関心領域の周囲で使用することができる。格子の分解能が上がるにつれて、ボクセルの寸法は減少する。
状態空間は、fi(x,t)として表され、式中、fiは、時間tにおいて3次元ベクトルxで示される格子サイトにある、状態iの要素または粒子の単位体積当たりの数(すなわち、状態iの粒子の密度)を表す。既知の時間増分の場合、粒子の数は単にfi(x)と示される。格子サイトのすべての状態の組合せは、f(x)と示される。
状態の数は、各エネルギーレベル内の可能な速度ベクトルの数によって決定される。速度ベクトルは、x、y、およびzの3次元を有する空間内の整数の線形速度である。多重種シミュレーションでは、状態の数が増加する。
各状態iは、特定のエネルギーレベル(すなわち、エネルギーレベル0、1、または2)における異なる速度ベクトルを表す。各状態の速度ciは、次のように、3次元の各次元における「速度」を用いて示される。
i=(cix,civ,ciz) 方程式(I.5)
エネルギーレベル0の状態は、どの次元においても移動していない停止した粒子を表し、すなわち、cstopped=(0,0,0)である。エネルギーレベル1の状態は、3次元のうちの1次元において±1の速度を有し、他の2次元において0の速度を有する粒子を表す。エネルギーレベル2の状態は、3次元すべてにおいて±1の速度を有する粒子、または3次元のうちの1次元において±2の速度を有し、他の2次元において0の速度を有する粒子を表す。
3つのエネルギーレベルの可能な順列をすべて生成すると、合計39の可能な状態(1つのエネルギー0状態、6つのエネルギー1状態、8つのエネルギー3状態、6つのエネルギー4状態、12のエネルギー8状態、および6つのエネルギー9状態)が得られる。
各ボクセル(すなわち、各格子サイト)は、状態ベクトルf(x)によって表される。状態ベクトルは、ボクセルのステータスを完全に定義し、39個のエントリを含む。39個のエントリは、1つのエネルギー0状態、6つのエネルギー1状態、8つのエネルギー3状態、6つのエネルギー4状態、12のエネルギー8状態、および6つのエネルギー9状態に対応する。システムは、この速度集合を使用することによって、達成された平衡状態ベクトルのためのマクスウェル-ボルツマン統計を作り出すことができる。
処理効率のために、ボクセルは、マイクロブロックと呼ぶ2×2×2の体積にグループ化される。マイクロブロックは、ボクセルの並列処理を可能にして、データ構造に関連するオーバーヘッドを最小限に抑えるように編成される。マイクロブロック内のボクセルの省略表記は、Ni(n)と定義され、式中、nは、マイクロブロック内の格子サイトの相対位置を表し、n∈{0,1,2,...,7}である。
図8に、マイクロブロックを示す。
図9Aおよび図9Bを参照すると、表面S(図9A)を、シミュレーション空間(図9B)内にファセットFαの集合体として表している。
S={Fα} 方程式(I.6)
式中、αは、特定のファセットを挙げるインデックスである。ファセットは、ボクセル境界に制限されないが、ファセットが比較的少数のボクセルに影響を与えるように、ファセットのサイズは、典型的にはファセットに隣接するボクセルのサイズと同程度またはそれよりもわずかに小さい。ファセットには、表面動力学を実施する目的で特性が割り当てられる。具体的には、各ファセットFαは、単位法線(nα)、表面積(Aα)、中心位置(xα)、およびファセットの表面動力学特性を表すファセット分布関数(fi(α))を有する。全エネルギー分布関数qi(α)は、ファセットとボクセルの相互作用の流れ分布と同じ方法で扱われる。
図10を参照すると、処理効率を向上させるために、シミュレーション空間の異なる領域内で異なるレベルの分解能を使用することができる。典型的には、物体322の周囲の領域320が最大関心対象であり、したがって、この領域が、最高分解能でシミュレートされる。粘度の影響は物体からの距離とともに減少するので、レベルが減少していく分解能(すなわち、拡大されたボクセル体積)を使用して、物体322からの距離が増加する間隔で位置する領域324、326をシミュレートする。
同様に、図11に示すように、より低レベルの分解能を使用して、物体342のそれほど重要でない特徴の周囲の領域340をシミュレートすることができ、一方、最高レベルの分解能を使用して、物体342の最も重要な特徴(例えば、先端面および後端面)の周囲の領域344をシミュレートする。外側の領域346は、最低レベルの分解能および最大のボクセルを使用してシミュレートされる。
C.ファセットの影響を受けるボクセルの識別
再び図11を参照すると、シミュレーション空間がモデル化されると(272)、1つまたは複数のファセットの影響を受けるボクセルが識別される(274)。ボクセルは、ファセットによって様々な形で影響を受ける場合がある。第1に、1つまたは複数のファセットが交差するボクセルは、交差していないボクセルと比較してボクセルの体積が減少しているという点で影響を受ける。これは、ファセットおよびファセットによって表される表面下にある材料がボクセルの一部を占有するために発生する。小数係数(fractional factor)Pf(x)は、ファセットの影響を受けないボクセルの部分(すなわち、流れをシミュレートする対象となっている流体または他の材料によって占有される可能性のある部分)を示す。交差していないボクセルの場合、Pf(x)は1に等しい。
粒子をファセットに移送するかまたはファセットから粒子を受け取ることによって1つまたは複数のファセットと相互作用するボクセルも、ファセットの影響を受けるボクセルとして識別される。ファセットが交差するボクセルはすべて、ファセットから粒子を受け取る少なくとも1つの状態と、ファセットに粒子を移送する少なくとも1つの状態とを含むことになる。ほとんどの場合、追加のボクセルもこのような状態を含む。
図12を参照すると、各状態iが0以外の速度ベクトルciを有する場合、ファセットFαは、平行六面体Gによって画定される領域から粒子を受け取るか、その領域に粒子を移送し、平行六面体Gは、速度ベクトルciとファセットの単位法線nαとのベクトルドット積(|ciα|)の大きさによって定義された高さと、ファセットの表面積Aαによって定義される底面とを有し、その結果、平行六面体のGの体積Vは、
=|ciα|Aα 方程式(I.7)
に等しい。
ファセットFαは、状態の速度ベクトルがファセットの方に向いている(|ciα|<0)場合は体積Vから粒子を受け取り、状態の速度ベクトルがファセットから離れる方に向いている(|ciα|>0)場合はその領域に粒子を移送する。以下に説明するように、内部の隅部などの非凸面特徴の近傍で起こり得る状態である、別のファセットが平行六面体のGの一部を占めるとき、この式は修正される。
ファセットFαの平行六面体のGは、複数のボクセルの一部または全部と重なることがある。ボクセルまたはその一部の数は、ボクセルのサイズに対するファセットのサイズ、状態のエネルギー、および格子構造に対するファセットの向きに依存する。影響を受けるボクセルの数は、ファセットのサイズとともに増加する。したがって、上述のように、ファセットのサイズは、通常、ファセットの近くに位置するボクセルのサイズと同程度またはそれよりも小さくなるように選択される。
平行六面体Gと重なるボクセルN(x)の一部は、V(x)と定義される。この項を使用すると、ボクセルN(x)とファセットFαとの間を移動する状態iの粒子の流束Γ(x)は、ボクセル内の状態iの粒子の密度(Ni(x))と、ボクセルと重なる領域の体積(V(x))との積に等しくなる。
Γ(x)=Ni(x)V(x) 方程式(I.8)
平行六面体のGが1つまたは複数のファセットと交差する場合、次の条件、
=ΣV(x)+ΣV(β) 方程式(I.9)
は真であり、式中、第1の和は、Gと重なるすべてのボクセルに相当し、第2の項はGと交差するすべてのファセットに相当する。平行六面体Gが別のファセットと交差していない場合、この式は、
=ΣV(x) 方程式(I.10)
に縮小する。
D.シミュレーションの実行
1つまたは複数のファセットの影響を受けるボクセルが識別されると(274)、シミュレーションを開始するためにタイマが初期化される(276)。シミュレーションの各時間増分中に、ボクセルからボクセルへの粒子の移動が、粒子と表面ファセットとの相互作用に相当する移流段階(278~286)によってシミュレートされる。次に、衝突段階(288)は、各ボクセル内の粒子の相互作用をシミュレートする。その後、タイマが増分される(290)。増分されたタイマが、シミュレーションが完了したことを示さない場合(292)、移流段階および衝突段階(278~290)が繰り返される。増分されたタイマが、シミュレーションが完了したことを示す場合(292)、シミュレーションの結果が、記憶および/または表示される(294)。
1.表面の境界条件
表面との相互作用を正しくシミュレートするために、各ファセットは4つの境界条件を満たす。第1に、ファセットが受け取る粒子の合計質量は、ファセットが移送した粒子の合計質量に等しい(すなわち、ファセットへの正味質量流束は0に等しい)。第2に、ファセットが受け取る粒子の合計エネルギーは、ファセットが移送した粒子の合計エネルギーに等しい(すなわち、ファセットへの正味エネルギー流束は0に等しい)。これらの2つの条件は、各エネルギーレベル(すなわち、エネルギーレベル1および2)での正味質量流束が0に等しいことを要求することによって満たすことができる。
他の2つの境界条件は、ファセットと相互作用する粒子の正味運動量に関連する。本明細書では滑り面と呼ぶ表面摩擦のない表面の場合、正味接線運動量流束は0に等しく、正味法線運動量流束はファセットでの局所圧力に等しい。したがって、ファセットの法線nαに垂直な受け取った合計運動量の成分と、ファセットの法線nαに垂直な移送した合計運動量の成分と(すなわち、接線成分)は等しく、一方、ファセットの法線nαに平行な受け取った合計運動量の成分と、ファセットの法線nαに平行な移送した合計運動量の成分と(すなわち、法線成分)の差分がファセットでの局所圧力に等しい。非滑り面の場合、表面の摩擦によって、ファセットが移送する粒子の合計接線運動量が、ファセットが受け取る粒子の合計接線運動量と比較して、摩擦量に関連する係数だけ減少する。
2.ボクセルからファセットへの収集
粒子と表面との間の相互作用をシミュレートする際、粒子が、ボクセルから収集され、ファセットに提供される(278)。上述のように、ボクセルN(x)とファセットFαとの間の状態iの粒子の流束は、
Γ(x)=Ni(x)V(x) 方程式(I.11)
である。
この式から、各状態iがファセットFαの方に向いている(ciα<0)場合、ボクセルによってファセットFαに提供される粒子の数は、
ΓiαV→F=ΣXΓ(x)=ΣXi(x)V(x) 方程式(I.12)
である。
(x)が0以外の値を有するボクセルのみが合計される。上述のように、ファセットのサイズは、V(x)が少数のボクセルに対してのみ0以外の値を有するように選択される。V(x)およびPf(x)は非整数値を有することがあるので、Γα(x)は実数として記憶および処理される。
3.ファセットからファセットへの移動
次に、粒子は、ファセット間を移動する(280)。ファセットFαが流入状態(ciα<0)にある平行六面体Gが別のファセットFβと交差する場合、ファセットFαが受け取る状態iの粒子の一部はファセットFβから流入することになる。具体的には、ファセットFαは、前の時間増分中にファセットFβによって作り出された状態iの粒子の一部を受け取ることになる。この関係を図15に示しており、平行六面体GのうちのファセットFβと交差する部分380は、平行六面体GのうちのファセットFαと交差する部分382に等しい。上述のように、交差部分はV(β)で表される。この項を使用すると、ファセットFβとファセットFαとの間の状態iの粒子の流束は、
Γ(β,t-1)=Γi(β)V(β)/V 方程式(I.13)
と記述することができ、式中、Γi(β,t-1)は、前の時間増分中にファセットFβによって作り出された状態iの粒子の測定量である。この式から、各状態iがファセットFαの方に向いている(ciα<0)場合、他のファセットによってファセットFαに提供される粒子の数は、
ΓiαF→F=ΣβΓ(β)=ΣβΓi(β,t-1)V(β)/V 方程式(I.14)
であり、ファセット内への状態iの粒子の全流束は、
ΓiIN(α)=ΓiαF→F+ΓiαF→F=Σxi(x)V+ΣβΓi(β,t-1)V(β)/V 方程式(I.15)
である。
ファセット分布関数とも呼ぶファセットの状態ベクトルN(α)は、ボクセル状態ベクトルのM個のエントリに対応するMエントリを有する。Mは離散格子速度の数である。ファセット分布関数N(α)の入力状態は、これらの状態になる粒子の流束を体積Vで除算したものに等しく設定され、ciα<0の場合、
i(α)=ΓiIN(α)/V 方程式(I.16)
である。
ファセット分布関数は、ファセットからの出力流束を生成するためのシミュレーションツールであり、必ずしも実際の粒子を表すものではない。正確な出力流束を生成するために、分布関数の他の状態に値を割り当てる。上述した内向き状態を代入するための技法を使用して、外向き状態を代入すると、ciα≧0の場合、
i(α)=ΓiOTHER(α)/V 方程式(I.17)
であり、式中、ΓiOTHER(α)は、上述したΓiIN(α)を生成するための技法を使用して求められるが、流入状態(ciα<0)以外の状態(ciα≧0)にこの技法を適用する。代替の手法では、前のタイムステップからのΓiOUT(α)の値を使用して、ΓiOTHER(α)を、
ΓiOTHER(α,t)=ΓiOUT(α,t-1) 方程式(I.18)
のように生成することができる。
平行状態(ciα=0)の場合、VとV(x)はいずれも0である。Ni(α)を求める式では、V(x)は、(ΓiOTHER(α)を求める式からの)分子に現れ、Vは、(Ni(α)を求める式からの)分母に現れる。したがって、平行状態を求めるNi(α)は、VおよびV(x)が0に近づくときのNi(α)の極限として決定される。速度が0の状態(すなわち、静止状態、ならびに状態(0,0,0,2)および状態(0,0,0,-2))の値は、シミュレーションの開始時に、温度および圧力の初期条件に基づいて初期化される。その後、これらの値は、時間の経過とともに調整される。
4.ファセット表面動力学の実行
次に、各ファセットが上記の境界条件を満たすように表面動力学を実行する(282)。図14に、ファセットの表面動力学を実行するための手順390を示す。
278の間に、速度および密度を、ボクセルからファセットFαまでサンプリングする。次いで、速度を、表面に沿って投影する(すなわち)
Figure 2022022999000038
である。サンプリングした密度および投影した速度に基づいてボルツマン平衡分布を計算し392、密度および速度を、それぞれ方程式6および方程式10で指定された制約を満たすようにスケーリングする。次いで、結果として得られる密度および速度を使用して、新しいボルツマン平衡分布を計算する(392)。流入分布と新しいボルツマン分布との間の差分(394)、およびすべての流入状態とそれに対応するボルツマン分布(396)との間の差分の合計運動量は、次のように計算される。
Figure 2022022999000039
方程式(I.19)
運動量差分を、ファセットの接線方向に沿って投影する(398)。
Figure 2022022999000040
上記の運動量差分およびボルツマン分布から、ゼロ接線流束
Figure 2022022999000041
を満たすことによって、完全なスリップ境界条件を満たすように流出流束を計算する(399)。
Figure 2022022999000042
方程式(I.21)
表面摩擦および他の因子を説明するために、流出流束分布をさらに、
Figure 2022022999000043
と改良することができ、式中、Cfは表面摩擦係数である。完全な質量保存およびエネルギー保存に必要とされる様々なエネルギーレベルの格子に表面摩擦および補正を適用することに関する詳細な説明は、‘260特許に示されている。
5.ボクセルからボクセルへの移動
再び図7を参照すると、3次元直線格子に沿って、粒子をボクセル間で移動させる(284)。このボクセルからボクセルへの移動は、ファセットと相互作用しないボクセル(すなわち、表面の近くに位置していないボクセル)に対して実行される唯一の移動演算である。典型的なシミュレーションでは、表面と相互作用するのに十分なほど表面の近くに位置していないボクセルが、ボクセルの大多数を構成する。
各分離状態は、3次元のx、y、およびzのそれぞれにおいて、格子に沿って整数速度で移動する粒子を表す。整数速度は、0、±1、および±2を含む。速度の符号は、粒子が対応する軸に沿って移動している方向を示す。
表面と相互作用しないボクセルの場合、移動演算は、計算上極めて単純である。毎時間増分中に、状態の母集団全体は、その現在のボクセルからその移動先ボクセルに移動される。同時に、移動先ボクセルの粒子は、そのボクセルからそれ自体の移動先ボクセルに移動される。例えば、+1xおよび+1y方向(1,0,0)に移動しているエネルギーレベル1の粒子は、その現在のボクセルからx方向に+1および他の方向に0にあるボクセルに移動される。粒子は、最終的に、移動前と同じ状態(1,0,0)でその移動先ボクセルに到達する。ボクセル内の相互作用は、他の粒子および表面との局所的な相互作用に基づいて、この状態の粒子数を変更する可能性がある。そうでない場合、粒子は、同じ速度および方向で格子に沿って移動し続けることになる。
1つまたは複数の表面と相互作用するボクセルの場合、移動演算は、わずかに複雑になる。これにより、1つまたは複数の分画粒子がファセットに移送される可能性がある。このような分画粒子がファセットに移送されると、分画粒子がボクセルに残ることになる。これらの分画粒子は、ファセットが占有するボクセルに移送される。
図13を参照すると、ボクセル362の状態iの粒子の一部360がファセット364に移動すると(278)、残りの部分366は、ファセット364が位置するボクセル368に移動し、状態iの粒子は、そのボクセル368から、ファセット364に方向付けられる。したがって、状態の母集団が25に等しく、V(x)が0.25に等しい(すなわち、ボクセルの4分の1が平行六面体Gと交差する)場合、6.25個の粒子が、ファセットFαに移動され、18.75個の粒子が、ファセットFαによって占有されたボクセルに移動される。複数のファセットが単一のボクセルと交差する可能性があるので、1つまたは複数のファセットによって占有されたボクセルN(f)に移送される状態iの粒子の数は、
Figure 2022022999000044
であり、式中、N(x)はソースボクセルである。
6.ファセットからボクセルへの散乱
次に、各ファセットからの流出粒子がボクセルに散乱される(286)。本質的に、この散乱は、粒子がボクセルからファセットに移動される収集の逆である。ファセットFαからボクセルN(x)に移動する状態iの粒子の数は、
Figure 2022022999000045
であり、式中、Pf(x)は、部分ボクセルの体積減少に相当する。この式から、状態iごとにファセットからボクセルN(x)に方向付けられる粒子の総数は、
Figure 2022022999000046
である。
ファセットからボクセルに粒子を散乱させ、それらを周囲のボクセルから移流した粒子と組み合わせ、結果を整数化した後、一定のボクセルにおける一定の方向が、アンダーフローする(負になる)か、またはオーバーフローする(8ビットの実装形態では255を超える)可能性がある。その結果、質量、運動量、およびエネルギーの量が値の許容範囲に収まるように切り捨てられて、質量、運動量、およびエネルギーが増加または減少することになる。このような事象から保護するために、問題のある状態を切り捨てる前に、範囲外の質量、運動量、およびエネルギーが蓄積される。状態が属するエネルギーの場合、(アンダーフローにより)増加した値、または(オーバーフローにより)減少した値に等しい量の質量が、同じエネルギーを有するとともにそれ自体がオーバーフローまたはアンダーフローの影響を受けないランダムに(または逐次に)選択された状態に追加される。質量およびエネルギーのこの追加から生じる追加の運動量は、蓄積され、切り捨てによる運動量に追加される。同じエネルギー状態にのみ質量を追加することによって、質量カウンタが0に達したときに質量とエネルギーの両方が補正される。最終的に、運動量は、運動量アキュムレータが0に戻るまで、プッシュ/プル技法を使用して補正される。
7.流体動力学の実行
流体動力学を実行する(288)、図7。このステップは、マイクロ動力学またはボクセル内演算と呼ばれることがある。同様に、移流手順は、ボクセル間演算と呼ばれることがある。以下に説明するマイクロ動力学演算を使用して、ファセットで粒子を衝突させ、ボルツマン分布を作り出すこともできる。
流体動力学は、BGK衝突モデルとして知られる特定の衝突演算子によって格子ボルツマン方程式モデルにおいて保証される。この衝突モデルは、実際の流体系における分布の動力学を模倣する。衝突過程については、方程式1および方程式2の右辺によって適切に説明することができる。移流ステップの後、流体系、具体的には密度、運動量、およびエネルギーの保存量を、方程式3を使用して分布関数から取得する。これらの量から、方程式(2)のfeqで示された平衡分布関数は、方程式(4)で完全に指定される。速度ベクトルの集合ci、重み、両方の選択肢は、表1にリスト化されており、方程式2とともに、巨視的挙動が正しい水力学方程式に従うことを保証する。
可変分解能
(米国特許出願公開第2013/0151221号に記載の)可変分解能を使用することもでき、様々なサイズのボクセル、例えば、粗いボクセルおよび細かいボクセルなど使用することになる。
本明細書に記載の主題および機能動作の実施形態は、デジタル電子回路、有形に具体化されたコンピュータソフトウェアもしくはファームウェア、コンピュータハードウェア(本明細書に開示された構造およびそれらの構造的均等物を含む)において、またはこれらのうちの1つまたは複数の組合せにおいて実装することができる。本明細書に記載の主題の実施形態は、1つまたは複数のコンピュータプログラム(すなわち、データ処理装置による実行のために、またはデータ処理装置の動作を制御するために、有形の非一過性プログラムキャリア上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュール)として実装することができる。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つまたは複数の組合せとすることができる。
「データ処理装置」という用語は、データ処理ハードウェアを指し、例として、プログラマブルプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含む、データを処理するためのあらゆる種類の装置、デバイス、および機械を包含する。装置はまた、専用論理回路(例えば、FPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路))とするか、またはそれをさらに含むことができる。ハードウェアに加えて、装置は、コンピュータプログラム用の実行環境を作り出すコード(例えば、プロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらの1つまたは複数の組合せを構成するコード)を任意選択で含むことができる。
プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードとも呼ばれることも記載されることもあるコンピュータプログラムは、コンパイル型もしくはインタープリタ型言語、または宣言型もしくは手続き型言語を含む、任意の形態のプログラミング言語で記述することができ、スタンドアロンプログラムとして、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境での使用に適した別のユニットとしてなど、任意の形態で展開することができる。コンピュータプログラムは、ファイルシステム内のファイルに対応してもよいが、対応する必要はない。プログラムは、他のプログラムまたはデータ(例えば、マークアップ言語ドキュメント内、当該のプログラム専用の単一ファイル内、または複数の協調ファイル(例えば、1つまたは複数のモジュール、サブプログラム、もしくはコードの一部を格納するファイル)内に格納された1つまたは複数のスクリプト)を保持するファイルの一部に格納することができる。コンピュータプログラムは、プログラムが1つのコンピュータ上で実行されるように、または1つのサイトに配置されているか、もしくは複数のサイトにわたって分散されて、データ通信ネットワークによって相互接続されている複数のコンピュータ上で実行されるように展開することができる。
コンピュータプログラムの実行に適したコンピュータは、汎用もしくは専用マイクロプロセッサもしくはその両方、または任意の他の種類の中央処理ユニットに基づくことができる。コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体には、例として、半導体メモリデバイス(例えば、EPROM、EEPROM、およびフラッシュメモリデバイス)、磁気ディスク(例えば、内部ハードディスクまたはリムーバブルディスク)、光磁気ディスク、ならびにCD-ROMおよびDVD-ROMディスクを含む、媒体およびメモリデバイス上のすべての形態の不揮発性メモリを含む。プロセッサおよびメモリは、専用論理回路によって補完されるか、または専用論理回路を組み込まれてもよい。
本明細書に記載の主題の実施形態は、バックエンドコンポーネントを(例えば、データサーバとして)含むか、ミドルウェアコンポーネント(例えば、アプリケーションサーバ)を含むか、もしくはフロントエンドコンポーネント(例えば、ユーザが本明細書に記載の主題の実装と対話できるグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータ)を含むコンピューティングシステムで、または1つまたは複数のそのようなバックエンドコンポーネント、ミドルウェアコンポーネント、もしくはフロントエンドコンポーネントの任意の組合せで実装することができる。システムのコンポーネントは、任意の形態または媒体のデジタルデータ通信(例えば、通信ネットワーク)によって相互接続することができる。通信ネットワークの例には、ローカルエリアネットワーク(LAN)およびワイドエリアネットワーク(WAN)(例えば、インターネット)が含まれる。
コンピューティングシステムは、クライアントおよびサーバを含むことができる。クライアントおよびサーバは一般に、互いに離れており、典型的には通信ネットワークを通して対話する。クライアントとサーバの関係は、それぞれのコンピュータ上で実行するとともにクライアント-サーバ関係を有するコンピュータプログラムによって生じる。いくつかの実施形態において、サーバは、(例えば、データを表示し、ユーザデバイスと対話するユーザからのユーザ入力を受信する目的で)データ(例えば、HTMLページ)を、クライアントとして機能するユーザデバイスに送信する。ユーザデバイスで生成されたデータ(例えば、ユーザ対話の結果)は、ユーザデバイスからサーバで受信することができる。
主題の特定の実施形態について説明してきた。他の実施形態も、以下の特許請求の範囲内にある。例えば、特許請求の範囲に記載の動作は、異なる順序で実行することができ、それでもなお望ましい結果を達成することができる。一例として、添付の図に示すプロセスは、望ましい結果を達成するために、図示の特定の順序または逐次的順序を必ずしも必要としない。場合によっては、マルチタスクおよび並列処理が有利である場合がある。
10 システム
11 バスシステム
12 大規模並列コンピューティングシステム/サーバシステム
15 ネットワーク
18 メモリ
20 インターフェース
24 処理デバイス
30 ユーザ提供のメッシュ定義
32 メッシュ準備エンジン
34 シミュレーションエンジン
34a 衝突相互作用モジュール
34b 表面動力学変換
34c 境界モジュール
34d 移流粒子衝突相互作用モジュール
38 データリポジトリ

Claims (25)

  1. 流体流の要素をシミュレートするためのコンピュータ実施方法であって、
    複数のボクセルの状態ベクトルをメモリに記憶するステップであって、前記状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、ステップと、
    前記ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶するステップと、
    前記状態ベクトルに対して相互作用演算を実行するステップであって、前記相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、ステップと、
    前記表面の前記表現に対して表面相互作用演算を実行するステップであって、前記表面相互作用演算が、前記表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、ステップと、
    要素の新しいボクセルへの移動を反映するために、前記状態ベクトルに対して移動演算を実行するステップと
    を含む、コンピュータ実施方法。
  2. 前記表面相互作用演算が、
    ファセットと相互作用する少なくとも1つのボクセルの第1の集合から要素を収集することと、
    前記収集された要素とすべてのファセットとの間の相互作用をモデル化して表面相互作用要素の集合を作り出すことと、
    前記表面相互作用要素を、前記ファセットと相互作用する少なくとも1つのボクセルの第2の集合に散乱させることと
    を含む、請求項1に記載の方法。
  3. 状態ベクトルのエントリが、ボクセルの特定の運動量状態における単位体積当たりの要素の密度を表す、請求項1に記載の方法。
  4. 状態ベクトルが、特定の運動量状態における単位体積当たりの要素の密度を表すとともにより多くの可能な値を有する複数の整数および/または浮動小数点値のうちの1つまたは複数を含む、請求項1に記載の方法。
  5. 前記表面相互作用演算が、整数値および/または浮動小数点値のうちの1つまたは複数を使用して実行され、前記表面相互作用演算が、実数を表す値を使用して実行される、請求項1に記載の方法。
  6. 前記表面相互作用演算が、整数および/または浮動小数点数を使用して実行される、請求項1に記載の方法。
  7. 表面と交差するボクセルを部分ボクセルとして表すステップをさらに含む、請求項1に記載の方法。
  8. 少なくとも1つの表面の前記表現が、前記ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられるとともに少なくとも1つの表面を表す複数のファセットを含み、
    前記表面相互作用演算が、ファセットと前記ファセットの近くの少なくとも1つのボクセルの前記要素との間の相互作用をモデル化することを含む、請求項1に記載の方法。
  9. 前記要素が、流体の粒子を表し、前記ファセットが、前記流体が流れる少なくとも1つの表面を表す、請求項1に記載の方法。
  10. 表面相互作用演算を実行するステップが、
    流入分布とボルツマン分布との間の差分を計算することと、
    すべての状態ベクトルの差分から合計運動量を決定することと、
    前記決定された差分に基づいて流出分布を生成することと
    をさらに含む、請求項1に記載の方法。
  11. 流体流の要素をシミュレートするためのデータ処理システムであって、
    複数のボクセルの状態ベクトルをメモリに記憶することであって、前記状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、記憶することと、
    前記ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶することと、
    前記状態ベクトルに対して相互作用演算を実行することであって、前記相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、相互作用演算を実行することと、
    前記表面の前記表現に対して表面相互作用演算を実行することであって、前記表面相互作用演算が、前記表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、表面相互作用演算を実行することと、
    要素の新しいボクセルへの移動を反映するために、前記状態ベクトルに対して移動演算を実行することと
    を前記データ処理システムに行わせるための命令を含む、データ処理システム。
  12. 前記表面相互作用演算を実行するための前記命令が、
    ファセットと相互作用する少なくとも1つのボクセルの第1の集合から要素を収集することと、
    前記収集された要素とすべてのファセットとの間の相互作用をモデル化して表面相互作用要素の集合を作り出すことと、
    前記表面相互作用要素を、前記ファセットと相互作用する少なくとも1つのボクセルの第2の集合に散乱させることと
    を行うための命令を含む、請求項11に記載のデータ処理システム。
  13. 状態ベクトルのエントリが、ボクセルの特定の運動量状態における単位体積当たりの要素の密度を表す、請求項11に記載のデータ処理システム。
  14. 状態ベクトルが、特定の運動量状態における単位体積当たりの要素の密度を表すとともにより多くの可能な値を有する複数の整数および/または浮動小数点値のうちの1つまたは複数を含む、請求項11に記載のデータ処理システム。
  15. 前記表面相互作用演算が、整数値および/または浮動小数点値のうちの1つまたは複数を使用して実行され、前記表面相互作用演算が、実数を表す値を使用して実行される、請求項11に記載のデータ処理システム。
  16. 前記表面相互作用演算が、整数および/または浮動小数点数を使用して実行される、請求項11に記載のデータ処理システム。
  17. 前記表面相互作用演算を実行するための前記命令が、
    表面と交差するボクセルを部分ボクセルとして表すための命令を含む、請求項11に記載のデータ処理システム。
  18. 少なくとも1つの表面の前記表現が、ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられるとともに少なくとも1つの表面を表す複数のファセットを含み、前記命令が、
    ファセットと前記ファセットの近くの少なくとも1つのボクセルの前記要素との間の相互作用をモデル化するための命令をさらに含む、請求項11に記載のデータ処理システム。
  19. 前記要素が、流体の粒子を表し、前記ファセットが、前記流体が流れる少なくとも1つの表面を表す、請求項11に記載のデータ処理システム。
  20. 前記表面相互作用演算を実行するための前記命令が、
    流入分布とボルツマン分布との間の差分を計算することと、
    すべての状態ベクトルの差分から合計運動量を決定することと、
    前記決定された差分に基づいて流出分布を生成することと
    を行うための命令を含む、請求項11に記載のデータ処理システム。
  21. 流体流の要素をシミュレートするためのコンピュータプログラム製品を記憶する有形のコンピュータ可読媒体であって、前記コンピュータプログラム製品が、
    複数のボクセルの状態ベクトルをメモリに記憶することであって、前記状態ベクトルが、ボクセルにおける複数の可能な運動量状態のうちの特定の運動量状態に対応する複数のエントリを含む、記憶することと、
    前記ボクセルのサイズおよび向きとは無関係にサイズ指定され方向付けられた少なくとも1つの表面の表現をメモリに記憶することと、
    前記状態ベクトルに対して相互作用演算を実行することであって、前記相互作用演算が、異なる運動量状態の要素間の相互作用をモデル化する、相互作用演算を実行することと、
    前記表面の前記表現に対して表面相互作用演算を実行することであって、前記表面相互作用演算が、前記表面とボクセルの実質的にすべての要素との間の相互作用をモデル化する、表面相互作用演算を実行することと、
    要素の新しいボクセルへの移動を反映するために、前記状態ベクトルに対して移動演算を実行することと
    をデータ処理システムに行わせるための命令を含む、コンピュータ可読媒体。
  22. 前記表面相互作用命令が、
    ファセットと相互作用する少なくとも1つのボクセルの第1の集合から要素を収集することと、
    前記収集された要素とすべてのファセットとの間の相互作用をモデル化して表面相互作用要素の集合を作り出すことと、
    前記表面相互作用要素を、前記ファセットと相互作用する少なくとも1つのボクセルの第2の集合に散乱させることと
    を行うための命令をさらに含む、請求項21に記載のコンピュータ可読媒体。
  23. 状態ベクトルが、特定の運動量状態における単位体積当たりの要素の密度を表すとともにより多くの可能な値を有する複数の整数および/または浮動小数点値のうちの1つまたは複数を含む、請求項21に記載のコンピュータ可読媒体。
  24. 前記表面相互作用演算が、整数値および/または浮動小数点値のうちの1つまたは複数を使用して実行され、前記表面相互作用演算が、実数を表す値を使用して実行される、請求項21に記載のコンピュータ可読媒体。
  25. 表面相互作用演算を実行することが、
    流入分布とボルツマン分布との間の差分を計算することと、
    すべての状態ベクトルの差分から合計運動量を決定することと、
    前記決定された差分に基づいて流出分布を生成することと
    を行うための命令をさらに含む、請求項21に記載のコンピュータ可読媒体。
JP2021106379A 2020-06-29 2021-06-28 表面アルゴリズムを使用して物理過程をシミュレートするためのコンピュータシステム Pending JP2022022999A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/914,730 US11847391B2 (en) 2020-06-29 2020-06-29 Computer system for simulating physical processes using surface algorithm
US16/914,730 2020-06-29

Publications (2)

Publication Number Publication Date
JP2022022999A true JP2022022999A (ja) 2022-02-07
JP2022022999A5 JP2022022999A5 (ja) 2024-06-27

Family

ID=76584416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021106379A Pending JP2022022999A (ja) 2020-06-29 2021-06-28 表面アルゴリズムを使用して物理過程をシミュレートするためのコンピュータシステム

Country Status (4)

Country Link
US (2) US11847391B2 (ja)
EP (1) EP3933654A1 (ja)
JP (1) JP2022022999A (ja)
CN (1) CN113935254A (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3574291B1 (en) 2017-01-26 2023-12-06 Dassault Systemes Simulia Corp. Multi-phase flow visualizations based on fluid occupation time
US11714040B2 (en) 2018-01-10 2023-08-01 Dassault Systemes Simulia Corp. Determining fluid flow characteristics of porous mediums
US11530598B2 (en) 2018-08-21 2022-12-20 Dassault Systemes Simulia Corp. Determination of oil removed by gas via miscible displacement in reservoir rock
US11907625B2 (en) 2020-12-29 2024-02-20 Dassault Systemes Americas Corp. Computer simulation of multi-phase and multi-component fluid flows including physics of under-resolved porous structures
CN117077294B (zh) * 2023-10-12 2024-03-12 中国空气动力研究与发展中心计算空气动力研究所 基于参数化的结构网格生成方法、装置、设备及介质

Family Cites Families (114)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3818757A (en) 1972-05-05 1974-06-25 Saratoga Sys Inc Dual path ultrasonic fluid flow metering system and method
GB2066466A (en) 1979-12-03 1981-07-08 Water Res Centre Ultrasonic Flow Measurement
US4507726A (en) 1982-01-26 1985-03-26 Hughes Aircraft Company Array processor architecture utilizing modular elemental processors
US4498134A (en) 1982-01-26 1985-02-05 Hughes Aircraft Company Segregator functional plane for use in a modular array processor
US4729098A (en) 1985-06-05 1988-03-01 General Electric Company System and method employing nonlinear interpolation for the display of surface structures contained within the interior region of a solid body
US4831519A (en) 1985-12-12 1989-05-16 Itt Corporation Cellular array processor with variable nesting depth vector control by selective enabling of left and right neighboring processor cells
US4809202A (en) 1985-12-27 1989-02-28 Thinking Machines Corporation Method and apparatus for simulating systems described by partial differential equations
JPH0648486B2 (ja) 1986-10-08 1994-06-22 日本電気株式会社 ベクトルデ−タ処理装置
US4933895A (en) 1987-07-10 1990-06-12 Hughes Aircraft Company Cellular array having data dependent processing capabilities
JP2635617B2 (ja) 1987-09-29 1997-07-30 株式会社東芝 半導体素子特性評価用の直交格子点の発生方法
US4989166A (en) 1988-07-12 1991-01-29 Hitachi, Ltd. Method for synthesizing analysis model and flow analysis system
US5038302A (en) 1988-07-26 1991-08-06 The Research Foundation Of State University Of New York Method of converting continuous three-dimensional geometrical representations into discrete three-dimensional voxel-based representations within a three-dimensional voxel-based system
US5159690A (en) 1988-09-30 1992-10-27 Massachusetts Institute Of Technology Multidimensional cellular data array processing system which separately permutes stored data elements and applies transformation rules to permuted elements
JPH03276071A (ja) 1990-03-27 1991-12-06 Yoshiomi Kondo 流体及び電磁流体の物理量予測方法
ES2093705T5 (es) 1990-05-09 2000-12-01 Memtec Ltd Metodo para fabricar membranas de fibras huecas de pvdf.
CA2086930A1 (en) 1990-07-12 1992-01-13 Kim Molvig Fluid dynamics parallel processor
US5377129A (en) 1990-07-12 1994-12-27 Massachusetts Institute Of Technology Particle interaction processing system
IE69192B1 (en) 1990-12-21 1996-08-21 Hitachi Europ Ltd A method of generating partial differential equations for simulation a simulation method and a method of generating simulation programs
US5069065A (en) 1991-01-16 1991-12-03 Mobil Oil Corporation Method for measuring wettability of porous rock
US5442733A (en) 1992-03-20 1995-08-15 The Research Foundation Of State University Of New York Method and apparatus for generating realistic images using a discrete representation
JP3426647B2 (ja) 1992-06-24 2003-07-14 日本電信電話株式会社 3次元トポグラフィシミュレーションのための一般化されたソリッドモデリング
US5361385A (en) 1992-08-26 1994-11-01 Reuven Bakalash Parallel computing system for volumetric modeling, data processing and visualization
US5424963A (en) 1992-11-25 1995-06-13 Photon Research Associates, Inc. Molecular dynamics simulation method and apparatus
US5848260A (en) 1993-12-10 1998-12-08 Exa Corporation Computer system for simulating physical processes
US5606517A (en) 1994-06-08 1997-02-25 Exa Corporation Viscosity reduction in physical process simulation
US5548694A (en) 1995-01-31 1996-08-20 Mitsubishi Electric Information Technology Center America, Inc. Collision avoidance system for voxel-based object representation
US5640335A (en) 1995-03-23 1997-06-17 Exa Corporation Collision operators in physical process simulation
US5605517A (en) 1995-11-21 1997-02-25 General Motors Corporation Multi-speed power transmission
US5953239A (en) 1997-12-29 1999-09-14 Exa Corporation Computer simulation of physical processes
US7209873B1 (en) 1999-09-03 2007-04-24 Kliegel James R Method of analyzing and computing anisotropic turbulent flows
US6318156B1 (en) 1999-10-28 2001-11-20 Micro Motion, Inc. Multiphase flow measurement system
US6928399B1 (en) 1999-12-03 2005-08-09 Exxonmobil Upstream Research Company Method and program for simulating a physical system using object-oriented programming
US6516080B1 (en) 2000-04-05 2003-02-04 The Board Of Trustees Of The Leland Stanford Junior University Numerical method of estimating physical properties of three-dimensional porous media
FR2811760B1 (fr) 2000-07-17 2002-09-13 Inst Francais Du Petrole Methode pour modeliser des deplacements de fluides dans un milieu poreux tenant compte d'effets d'hysteresis
US6915245B1 (en) 2000-09-14 2005-07-05 General Atomics Method of simulating a fluid by advection of a time-weighted equilibrium distribution function
FR2844355B1 (fr) 2002-09-11 2005-03-25 Inst Francais Du Petrole Methode de mesure de la mouillabilite de roches par resonnance magnetique nucleaire
US7379852B2 (en) 2004-02-18 2008-05-27 Chevron U.S.A. Inc. N-phase interface tracking method utilizing unique enumeration of microgrid cells
ATE514962T1 (de) 2005-05-27 2011-07-15 Schlumberger Technology Bv Verfahren und vorrichtung zur messung der benetzbarkeit von geologischen formationen
FR2886742B1 (fr) 2005-06-02 2007-07-27 Inst Francais Du Petrole Methode de changement d'echelle des permeabilites absolues pour construire un modele de simulation d'ecoulement
US20070016389A1 (en) 2005-06-24 2007-01-18 Cetin Ozgen Method and system for accelerating and improving the history matching of a reservoir simulation model
US7716028B2 (en) 2006-05-24 2010-05-11 Schlumberger Technology Corporation Method for modeling a reservoir using a 3D wettability map generated from a wettability logging tool
US7590514B1 (en) 2006-05-24 2009-09-15 Livermore Software Technology Corporation Method and system for simulating inflation of an enclosed volume with flexible boundary using gas particles
US20080012853A1 (en) 2006-07-14 2008-01-17 William Geiger Generating mesh from implicit surface
US7558714B2 (en) 2006-08-10 2009-07-07 Exa Corporation Computer simulation of physical processes
US20080044543A1 (en) 2006-08-17 2008-02-21 Mcclements David J Stabilized emulsions, methods of preparation, and related reduced fat foods
US7983886B2 (en) 2007-09-10 2011-07-19 Chevron U.S.A. Inc. Methods for performing simulation of surfactant flooding of a hydrocarbon reservoir
US8370122B2 (en) 2007-12-21 2013-02-05 Exxonmobil Upstream Research Company Method of predicting connectivity between parts of a potential hydrocarbon reservoir and analyzing 3D data in a subsurface region
WO2009140738A1 (en) 2008-05-23 2009-11-26 The Australian National University Image data processing
EP2310626A4 (en) 2008-06-25 2015-08-05 Schlumberger Technology Bv METHOD OF ESTIMATING THE PERMEABILITY OF TRAINING USING INTERVALS MEASUREMENTS
GB2462261A (en) 2008-07-28 2010-02-03 Fujitsu Ltd Method, apparatus and computer program for simulating behaviou r of thermodynamic systems
AU2009302276B2 (en) 2008-10-10 2015-12-03 Velocys Inc. Process and apparatus employing microchannel process technology
US8155377B2 (en) 2008-11-24 2012-04-10 Ingrain, Inc. Method for determining rock physics relationships using computer tomographic images thereof
KR101199475B1 (ko) 2008-12-22 2012-11-09 한국전자통신연구원 3차원 모델 생성 방법 및 장치
CN101556687A (zh) 2009-04-23 2009-10-14 上海交通大学 微细通道内两相流的三维可视化系统及方法
US20100312535A1 (en) 2009-06-08 2010-12-09 Chevron U.S.A. Inc. Upscaling of flow and transport parameters for simulation of fluid flow in subsurface reservoirs
US9086306B2 (en) 2009-07-07 2015-07-21 Siemens Aktiengesellschaft Apparatus and method for measuring multi-phase fluid flow
EP2801845B1 (en) 2009-12-16 2017-02-01 Bp Exploration Operating Company Limited Method for measuring wettability
MX2012009273A (es) 2010-02-12 2012-09-07 Bp Exploration Operating Metodo y sistema para pronosticar el efecto de microbios inyectados en un yacimiento petrolifero.
JP2011191848A (ja) 2010-03-12 2011-09-29 Toyota Central R&D Labs Inc 拡散現象解析方法、拡散現象解析装置およびプログラム
US10083254B2 (en) 2010-06-15 2018-09-25 Exxonmobil Upstream Research Company Method and system for stabilizing formulation methods
US8412501B2 (en) 2010-06-16 2013-04-02 Foroil Production simulator for simulating a mature hydrocarbon field
US8757871B2 (en) 2010-08-16 2014-06-24 The Board Of Trustees Of The University Of Illinois Particle dynamics microscopy using temperature jump and probe anticorrelation/correlation techniques
CN102383783B (zh) 2010-09-03 2015-06-17 中国石油化工股份有限公司 一种分析缝洞型油藏孔洞间油水流动特征的方法
GB2502432B (en) 2010-09-20 2018-08-01 Exxonmobil Upstream Res Co Flexible and adaptive formulations for complex reservoir simulations
US8768628B2 (en) 2010-10-20 2014-07-01 Shawket Ghedan Rise in core wettability characterization method
WO2012071090A1 (en) 2010-11-23 2012-05-31 Exxonmobil Upstream Research Company Variable discretization method for flow simulation on complex geological models
US8645070B2 (en) 2010-11-24 2014-02-04 Chevron U.S.A. Inc. System and method for estimating fluid distribution in a subterranean reservoir
US8583411B2 (en) 2011-01-10 2013-11-12 Saudi Arabian Oil Company Scalable simulation of multiphase flow in a fractured subterranean reservoir as multiple interacting continua
US9051825B2 (en) 2011-01-26 2015-06-09 Schlumberger Technology Corporation Visualizing fluid flow in subsurface reservoirs
CN102174888B (zh) 2011-03-03 2012-05-23 康志勇 一种基于储集岩岩性参数的地层数据处理方法
US9507047B1 (en) 2011-05-10 2016-11-29 Ingrain, Inc. Method and system for integrating logging tool data and digital rock physics to estimate rock formation properties
WO2013009512A2 (en) 2011-07-12 2013-01-17 Ingrain, Inc. Method for simulating fractional multi-phase/multi-component flow through porous media
US9037440B2 (en) 2011-11-09 2015-05-19 Exa Corporation Computer simulation of fluid flow and acoustic behavior
US10360324B2 (en) 2011-12-09 2019-07-23 Dassault Systemes Simulia Corp. Computer simulation of physical processes
BR112014017652A8 (pt) 2012-02-10 2017-07-11 Landmark Graphics Corp Método para estimar um tempo de irrupção do fluido injetado em um poço de produção, e, dispositivos portador não transitório e portador de programa
US20130317791A1 (en) 2012-04-26 2013-11-28 Conocophillips Company Hydrodynamic slug flow model
EP2850467B1 (en) 2012-05-14 2018-06-20 Landmark Graphics Corporation Method and system of predicting future hydrocarbon production
EP2850466B1 (en) 2012-05-14 2021-11-17 Landmark Graphics Corporation Method and system of displaying a graphical representation of hydrocarbon production parameters
US9140117B2 (en) 2012-07-13 2015-09-22 Ingrain, Inc. Method for evaluating relative permeability for fractional multi-phase, multi-component fluid flow through porous media
US9619592B2 (en) 2012-08-31 2017-04-11 Schlumberger Technology Corporation Analysis of enhanced oil recovery (EOR) processes for naturally-fractured reservoirs
CA2912674C (en) 2013-05-16 2021-05-18 Exa Corporation Mass exchange model for relative permeability simulation
WO2015030837A1 (en) 2013-08-27 2015-03-05 Halliburton Energy Services, Inc. Simulating fluid leak-off and flow-back in a fractured subterranean
CA2919714C (en) 2013-07-30 2018-04-10 Heartflow, Inc. Method and system for modeling blood flow with boundary conditions for optimized diagnostic performance
AU2014296132A1 (en) 2013-07-31 2016-02-18 Exa Corporation Temperature coupling algorithm for hybrid Thermal Lattice Boltzmann method
CN105393110B (zh) 2013-08-06 2019-03-29 Bp北美公司 在模拟应力和应变条件下的岩石物理属性的基于图像的直接数值模拟
AR097342A1 (es) 2013-08-15 2016-03-09 Univ Texas Sistema alcalino tolerante a cationes minerales multivalentes para eor química
US9377392B2 (en) 2013-09-05 2016-06-28 Proptester, Inc. Methods and systems for testing fluids on crushed formation materials under conditions of stress
US9910173B2 (en) 2013-11-15 2018-03-06 Schlumberger Technology Corporation Saturation end-point adjustment
US20150141303A1 (en) 2013-11-18 2015-05-21 The Board Of Regents Of The University Of Oklahoma Binary and ternary surfactant blends for enhanced oil recovery in reservoir brines with extremely high total dissolved solids
US9797225B2 (en) 2013-11-27 2017-10-24 Saudi Arabian Oil Company Data compression of hydrocarbon reservoir simulation grids
CN103698102B (zh) 2013-12-17 2016-08-17 哈尔滨工程大学 一种管束间高温高压汽液两相流型实验装置及流型判别方法
US9228873B2 (en) 2014-03-18 2016-01-05 Exa Corporation Fluid blob tracking for evaluation of multiphase flow simulations
FR3023316B1 (fr) 2014-07-04 2016-08-19 Ifp Energies Now Procede d'exploitation d'un gisement petrolier a partir d'une technique de positionnement des puits a forer
WO2016159807A1 (ru) 2015-03-27 2016-10-06 Шлюмберже Текнолоджи Корпорейшн Способ определения равновесной смачиваемости образца горной породы
US10169498B2 (en) 2015-04-14 2019-01-01 California Institute Of Technology Particle-based simulation through power diagrams
US11280935B2 (en) 2015-05-01 2022-03-22 Chevron U.S.A. Inc. Multiphase flow in porous media
FR3041026B1 (fr) 2015-09-15 2017-10-20 Ifp Energies Now Procede pour caracteriser le reseau de fractures d'un gisement fracture et procede pour l'exploiter
US10436003B2 (en) 2015-12-17 2019-10-08 Baker Hughes, A Ge Company, Llc Fluid blocking analysis and chemical evalution
CN105910996A (zh) 2016-04-07 2016-08-31 昆明理工大学 一种利用rgb颜色模型确定多相流混合时间的方法
WO2017222509A1 (en) 2016-06-22 2017-12-28 Schlumberger Technology Corporation Visualizations of reservoir simulations with fracture networks
EP3574291B1 (en) 2017-01-26 2023-12-06 Dassault Systemes Simulia Corp. Multi-phase flow visualizations based on fluid occupation time
US10691846B2 (en) 2017-03-01 2020-06-23 International Business Machines Corporation Capillary network simulations based on a low-dimensional representation of porous media
US10942293B2 (en) 2017-07-21 2021-03-09 Halliburton Energy Services, Inc. Rock physics based method of integrated subsurface reservoir characterization for use in optimized stimulation design of horizontal wells
WO2019097272A1 (en) 2017-11-14 2019-05-23 Total Sa Surfactant composition for the reinjection of produced water
US10830713B2 (en) 2017-11-20 2020-11-10 DigiM Solution LLC System and methods for computing physical properties of materials using imaging data
US20190203593A1 (en) 2017-12-29 2019-07-04 Shawn Fullmer Method and System for Modeling in a Subsurface Region
US11714040B2 (en) 2018-01-10 2023-08-01 Dassault Systemes Simulia Corp. Determining fluid flow characteristics of porous mediums
US20190258764A1 (en) * 2018-02-20 2019-08-22 Dassault Systemes Simulia Corp. Lattice Boltzmann Based Solver for High Speed Flows
CN108509724B (zh) * 2018-04-03 2021-12-07 嘉兴学院 多尺度模拟纳米颗粒多相流体特性的方法
US20200050715A1 (en) * 2018-08-09 2020-02-13 Dassault Systemes Simulia Corp. Performance and Accuracy of Stability Explicit Diffusion
US11530598B2 (en) 2018-08-21 2022-12-20 Dassault Systemes Simulia Corp. Determination of oil removed by gas via miscible displacement in reservoir rock
US11613984B2 (en) 2019-09-04 2023-03-28 Dassault Systemes Simulia Corp. Determination of hydrocarbon mobilization potential for enhanced oil recovery
CN110717269B (zh) * 2019-10-10 2023-07-25 北方工业大学 一种基于网格和粒子耦合的流体表面细节保护方法
US11907625B2 (en) 2020-12-29 2024-02-20 Dassault Systemes Americas Corp. Computer simulation of multi-phase and multi-component fluid flows including physics of under-resolved porous structures

Also Published As

Publication number Publication date
EP3933654A1 (en) 2022-01-05
US11847391B2 (en) 2023-12-19
CN113935254A (zh) 2022-01-14
US20210406434A1 (en) 2021-12-30
US20240160817A1 (en) 2024-05-16

Similar Documents

Publication Publication Date Title
JP6657359B2 (ja) ハイブリッド熱格子ボルツマン法のための温度結合アルゴリズム
JP2022022999A (ja) 表面アルゴリズムを使用して物理過程をシミュレートするためのコンピュータシステム
JP7296216B2 (ja) 高速流のための格子ボルツマンベースのソルバ
JP6562307B2 (ja) 層流乱流遷移のモデル化を含む物理的プロセスのコンピュータシミュレーション
US11763048B2 (en) Computer simulation of physical fluids on a mesh in an arbitrary coordinate system
EP3525120A1 (en) Lattice boltzmann collision operators enforcing isotropy and galilean invariance
JP2010500654A (ja) 物理プロセスのコンピュータシミュレーション
US11334691B2 (en) Detection of gaps between objects in computer added design defined geometries
EP3751444B1 (en) Computer simulation of physical fluids on irregular spatial grids with stabilized explicit numerical diffusion
JP2021072123A (ja) スカラ輸送についてのガリレイ不変を強制する格子ボルツマンベースのスカラ輸送を使用して物理的プロセスをシミュレートするためのコンピュータシステム
EP3809306A1 (en) Method and apparatus for automatic underhood thermal modeling
JP7402125B2 (ja) 陽的数値拡散問題を安定化させる不規則空間グリッドによる物理流体のコンピュータシミュレーション
CN113673177B (zh) 网格空隙空间识别和自动种子设定检测
JP7496049B2 (ja) 全エネルギー保存を実施する格子ボルツマンソルバ
Kara et al. An octree-based solution-adaptive Cartesian grid generator and Euler solver for the simulation of three-dimensional inviscid compressible flows

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20240322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240619

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240619

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20240619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240716