JP2010026581A - 計算格子形成装置、計算格子形成方法、及びプログラム - Google Patents
計算格子形成装置、計算格子形成方法、及びプログラム Download PDFInfo
- Publication number
- JP2010026581A JP2010026581A JP2008183803A JP2008183803A JP2010026581A JP 2010026581 A JP2010026581 A JP 2010026581A JP 2008183803 A JP2008183803 A JP 2008183803A JP 2008183803 A JP2008183803 A JP 2008183803A JP 2010026581 A JP2010026581 A JP 2010026581A
- Authority
- JP
- Japan
- Prior art keywords
- lattice
- grid
- region
- calculation
- area
- 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
Links
Images
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】 計算格子を移動させる際に生じるつぶれや歪みを抑え、高品質な計算格子を形成する計算格子形成装置、計算格子形成方法、及びプログラムを提供する。
【解決手段】 計算空間を物体60の直近の領域である物体固定領域51と、物体固定領域から所定の格子点数だけ離れた領域である変形領域55と、物体固定領域51及び変形領域55の間に設けられる緩衝領域53とに分割し、各領域で異なる算出法で格子の移動ベクトルを算出する。格子移動演算部200は、物体固定領域51では格子点が物体とともに移動するように移動ベクトルを決定し、変形領域55では任意の手法で移動ベクトルを算出し、緩衝領域53では、上記各領域の格子ベクトルが滑らかに連続するように、移動ベクトルを算出する。特に、緩衝領域53ではエッジ部531と角部533とで異なる算出法で移動ベクトルを算出してもよい。
【選択図】図4
【解決手段】 計算空間を物体60の直近の領域である物体固定領域51と、物体固定領域から所定の格子点数だけ離れた領域である変形領域55と、物体固定領域51及び変形領域55の間に設けられる緩衝領域53とに分割し、各領域で異なる算出法で格子の移動ベクトルを算出する。格子移動演算部200は、物体固定領域51では格子点が物体とともに移動するように移動ベクトルを決定し、変形領域55では任意の手法で移動ベクトルを算出し、緩衝領域53では、上記各領域の格子ベクトルが滑らかに連続するように、移動ベクトルを算出する。特に、緩衝領域53ではエッジ部531と角部533とで異なる算出法で移動ベクトルを算出してもよい。
【選択図】図4
Description
本発明は、計算格子形成装置、計算格子形成方法、及びプログラムに関し、詳細には、流体解析、及び構造解析等に用いられる計算格子を形成する計算格子形成装置、計算格子形成方法、及びプログラムに関する。
近年コンピュータ等を用いて、物理現象を数値解析する様々な手法が研究、開発されている。例えば、移動物体周囲の流体解析手法の一つとして、ALE(Arbitrary Lagrangian Eulerian formulations)法が知られている。ALE法では、解析対象となる物理空間を多数の格子点で離散化し、物理空間をメッシュ状の計算格子(以下、格子という)からなる計算空間に写像する。そして、この格子を経時的に移動、変形させて移動物体周囲の流れを解析する。ここで形成される格子の質は流体解析の精度や安定性に大きく寄与する。
初期状態の格子(以下、初期格子)の形成法としては、(1)Geometrical Method、(2)代数式による格子形成法(Transfinite法)、(3)座標に対する楕円型偏微分方程式による格子形成法等の手法が知られている。また、格子を初期状態から移動させる格子移動法としては、(4)スプリングアナロジーによる格子移動法、(5)弾性力学的アプローチによる格子移動法、(6)速度場の偏微分方程式による平滑化、等の手法が知られている。
また、上述の(5)の弾性力学的な手法を利用して、複雑な対象に対して、形状が一部変わったときの格子を作成する際、格子を弾性体と見立て、既に存在する格子の外形を変えて構造解析を行うことで、内部の格子の移動ベクトルを求め、格子の作成を簡略化する手法が開示されている(特許文献1)。
また、構造解析を対象として、大変形を伴う場合に物体の変形が過度になりすぎないように各座標方向に対して、幾何学的な関係に基づいて変形の程度を補正する手法が開示されている(特許文献2)。
また、直交座標系において、物理量の変化の大きな箇所の格子間隔が密になるよう代数的に格子を移動させる手法が開示されている(特許文献3)。
また、構造解析を対象として、大変形を伴う場合に物体の変形が過度になりすぎないように各座標方向に対して、幾何学的な関係に基づいて変形の程度を補正する手法が開示されている(特許文献2)。
また、直交座標系において、物理量の変化の大きな箇所の格子間隔が密になるよう代数的に格子を移動させる手法が開示されている(特許文献3)。
しかしながら、上述の特許文献1の手法は、直前の格子に対するつりあい方程式をとくため、初期の格子情報が反映されず、空間解像度の制御が難しい。すなわち格子が一度つぶれてしまうと境界の位置が元の位置に戻ってもその格子は元の大きさに戻らないという不具合が起きる。また一つの剛性パラメータで格子の直交化と集中化を調節しているため、複雑な形状では対象や運動によってこのパラメータを試行錯誤的に調節しなければならないという問題がある。
また、特許文献2の手法は、各格子線方向に対して過度に格子が変形しないよう補正を独立に求めるため、2次元もしくは3次元的な歪みを抑えることができない。また、特許文献3の手法は、各格子線方向に対して補正を独立に求めるため、2次元もしくは3次元的な歪みを抑えることができない。さらに直交座標系を前提としているため、複雑な形状には対応できない。
また、境界付近の流れは変化が大きく、この領域の格子解像度不足は解析の精度低下に直接影響を及ぼすため、一般に、格子は境界に向かうにつれて細かく配置されている。移動境界解析を行う場合には境界が移動するため、境界近傍の格子は、格子サイズに対する移動量が大きく、もっとも歪みが集中しやすい。また、計算精度の観点からも境界近傍の格子解像度はなるべく変化しない方が望ましい。
図11は、従来手法を用いて角柱状物体60の回転させた場合における流体解析の結果出力例であり、(a)は初期状態の全体図、(b)は(a)の物体60の左上角部分を含む計算空間を拡大した図、(c)は最大変位時における全体図、(d)は(c)の角柱状物体60の上角部分の計算空間を拡大した図である。
なお、ここでは、スプリングアナロジーを構造格子に拡張する手法を用いている。角柱の回転角度は最大45度とする。
図11に示す従来手法による出力結果では、壁近傍の角部で格子がつぶれてしまっている。
なお、ここでは、スプリングアナロジーを構造格子に拡張する手法を用いている。角柱の回転角度は最大45度とする。
図11に示す従来手法による出力結果では、壁近傍の角部で格子がつぶれてしまっている。
本発明は、前述した問題点に鑑みてなされたもので、その目的は、物体との境界近傍の計算格子を移動させる際に生じるつぶれや歪みを抑え、高品質な計算格子を形成する計算格子形成装置、計算格子形成方法、及びプログラムを提供することである。
前述した目的を達成するために第1の発明は、計算空間に複数の格子点からなる計算格子を形成し、各格子点を経時的に移動させる計算格子形成装置であって、前記計算空間を、該計算空間内に置かれた境界に直近の第1の領域と、前記第1の領域から所定の格子点数だけ離れた第2の領域と、前記第1の領域と前記第2の領域との間に設けられる第3の領域と、に分割し、前記第1、第2、及び第3の領域で夫々異なる方法で前記格子点を移動させる格子移動手段を備えることを特徴とする計算格子形成装置である。
また、前記格子移動手段は、前記第1の領域では、前記境界の移動とともに各格子点を移動させ、前記第2の領域では、任意の手法で格子点を移動させ、前記第3の領域では、移動対象となる格子点について、前記第1の領域側の格子と、前記第2の領域側の格子間で、所定の規則に従って滑らかに分布するように、前記格子点を移動させる。
また、前記計算格子が、2次元格子である場合に、前記格子移動手段は、前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と線で接するエッジ部と、物体固定領域に線で接しない角部とで、夫々異なる方法で前記格子点を移動させる。
また、前記計算格子が、3次元格子である場合に、前記格子移動手段は、前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と面で接するエッジ部と、物体固定領域に面で接しない角部とで、夫々異なる方法で前記格子点を移動させる。
また、前記格子移動手段は、前記角部に含まれる格子点は、前記第3の領域内の対向する格子線が夫々平行または略平行となるように移動させる。
第2の発明は、計算空間に複数の格子点からなる計算格子を形成し、各格子点を経時的に移動させる計算格子形成方法であって、前記計算空間を、該計算空間内に置かれた境界に直近の第1の領域と、前記第1の領域から所定の格子点数だけ離れた第2の領域と、前記第1の領域と前記第2の領域との間に設けられる第3の領域と、に分割し、前記第1、第2、及び第3の領域で夫々異なる方法で前記格子点を移動させることを特徴とする計算格子形成方法である。
第3の発明は、コンピュータを第1の発明の計算格子形成装置として機能させるためのプログラムである。
本発明により、物体との境界近傍の計算格子を移動させる際に生じるつぶれや歪みを抑え、高品質な計算格子を形成する計算格子形成装置、計算格子形成方法、及びプログラムを提供することができる。
以下図面に基づいて、本発明の実施形態を詳細に説明する。
図1は、本実施の形態の計算格子形成装置1により形成される計算格子について説明する図である。
図2は、本実施の形態に係る計算格子形成装置1を実現するコンピュータのハードウェア構成図である。
図2は、本実施の形態に係る計算格子形成装置1を実現するコンピュータのハードウェア構成図である。
計算格子形成装置1は、解析対象となる物理空間を計算空間50に写像するために、計算空間50を複数の格子点で離散化し、計算格子(以下、格子という)を形成する。図1に示す計算空間50は横方向及び縦方向に交差する複数の格子線によって表現される。格子線の交差する点が格子点である。
図1は、計算空間50の中央に置かれた角柱状の物体60を上面から見た様子を表す。図1の計算格子は、物体60の各辺の延長線上で、格子線間隔が狭くなるように形成されている。
なお、図1では以下の説明の簡略化のために2次元の計算空間50を例示したが、3次元としてもよい。格子の形状は四角形に限定されるものではなく六面体としてもよい。また、計算空間50ではその座標を、2次元の場合は(ξ、η)で表し、3次元の場合は(ξ、η、ζ)で表すものとする。
また、格子ベクトルとは格子線の向きを表すベクトルであり、隣り合う格子点の位置から決定される。
また、移動ベクトルとは、移動対象となる格子点の移動すべき向きと長さを定義するベクトルである。
また、格子ベクトルとは格子線の向きを表すベクトルであり、隣り合う格子点の位置から決定される。
また、移動ベクトルとは、移動対象となる格子点の移動すべき向きと長さを定義するベクトルである。
図2に示すように、計算格子形成装置1は、制御部3、記憶部5、メディア入出力部7、通信制御部9、入力部11、表示部13、周辺機器I/F部15等が、バス17と介して接続される。
制御部3は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)等で構成される。
CPUは、記憶部5、ROM、記録媒体等に格納されるプログラムをRAM上のワークメモリ領域に呼び出して実行し、バス17を介して接続された各装置を駆動制御し、計算格子形成装置1が行う後述する処理(図7、図9、図10参照)を実現する。
ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。
RAMは、揮発性メモリであり、記憶部5、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部3が各種処理を行う為に使用するワークエリアを備える。
ROMは、不揮発性メモリであり、コンピュータのブートプログラムやBIOS等のプログラム、データ等を恒久的に保持している。
RAMは、揮発性メモリであり、記憶部5、ROM、記録媒体等からロードしたプログラム、データ等を一時的に保持するとともに、制御部3が各種処理を行う為に使用するワークエリアを備える。
記憶部5は、HDD(ハードディスクドライブ)であり、制御部3が実行するプログラム、プログラム実行に必要なデータ、OS(オペレーティングシステム)等が格納される。プログラムに関しては、OS(オペレーティングシステム)に相当する制御プログラムや、アプリケーションプログラムが格納されている。
これらの各プログラムコードは、制御部3により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
これらの各プログラムコードは、制御部3により必要に応じて読み出されてRAMに移され、CPUに読み出されて各種の手段として実行される。
メディア入出力部7(ドライブ装置)は、データの入出力を行い、例えば、フロッピー(登録商標)ディスクドライブ、PDドライブ、CDドライブ(−ROM、−R、RW等)、DVDドライブ(−ROM、−R、−RW等)、MOドライブ等のメディア入出力装置を有する。
通信制御部9は、通信制御装置、通信ポート等を有し、コンピュータとネットワーク19間の通信を媒介する通信インタフェースであり、ネットワーク19を介して、他のコンピュータ間との通信制御を行う。
入力部11は、例えば、キーボード、マウス等のポインティング・デバイス、テンキー等の入力装置であり、データの入力を行う。
表示部13は、液晶パネル、CRTモニタ等のディスプレイ装置、及びディスプレイ装置と連携してコンピュータのビデオ機能を実現するための論理回路等(ビデオアダプタ等)を有する。
周辺機器I/F(インタフェース)部15は、コンピュータに周辺機器を接続させるためのポートであり、周辺機器I/F部15を介してコンピュータは周辺機器とのデータの送受信を行う。周辺機器との接続形態は有線、無線を問わない。
バス17は、各装置間の制御信号、データ信号等の授受を媒介する経路である。
次に図3を参照しながら、計算格子形成装置1の機能構成について説明する。
図3は、計算格子形成装置1全体の機能概略構成図である。
図3は、計算格子形成装置1全体の機能概略構成図である。
計算格子形成装置1は、図3に示すように、初期格子形成部100、格子移動演算部200、流体解析部300、及び結果出力部400を備えて構成される。
初期格子形成部100は、初期状態の格子(以下、初期格子という)を形成する。初期格子形成にはいかなる手法を用いてもよい。例えばGeometrical Method、代数式による格子形成法(Transfinite法)、座標に対する楕円型偏微分方程式による格子形成法等といった公知の手法を用いてもよいし、今後改良される新しい手法を適用するようにしてもよい。また、予め初期格子に関するデータを記憶部5に記憶しておき、解析実行時に初期格子形成部100により記憶部5から読み出すようにしてもよい。初期格子形成部100は形成した初期格子を格子移動演算部200に出力する。
初期格子形成部100は、初期状態の格子(以下、初期格子という)を形成する。初期格子形成にはいかなる手法を用いてもよい。例えばGeometrical Method、代数式による格子形成法(Transfinite法)、座標に対する楕円型偏微分方程式による格子形成法等といった公知の手法を用いてもよいし、今後改良される新しい手法を適用するようにしてもよい。また、予め初期格子に関するデータを記憶部5に記憶しておき、解析実行時に初期格子形成部100により記憶部5から読み出すようにしてもよい。初期格子形成部100は形成した初期格子を格子移動演算部200に出力する。
格子移動演算部200は、初期格子形成部100から入力される初期格子と、入力部11から入力されるか、或いは記憶部5から読み込んだ解析対象となる流れ場の情報及び格子情報d10等と、に基づいて格子を移動させるための演算を実行する。格子の移動とは、時刻ステップ毎に計算空間50内の各格子点の位置を変化させることであり、格子移動演算部200により逐次計算される。格子移動演算部200の行う演算処理については後述する。
流体解析部300は、格子移動演算部200から入力される移動後の格子について、ヤコビ行列式、メトリック関係式等を算出し、流体計算を行う。例えば、流れ場や、各種統計量の算出、格子の経時変化等の解析を行う。そして、解析結果を結果出力部400に出力する。流体解析部300の計算後、再び格子移動演算部200に戻り、次の時刻での格子位置を求め、流体計算を行う。結果出力部400は流体解析部300から入力される解析結果を、数値やグラフ或いはグラフィック表示にて表示部13に表示する。
次に、格子移動演算部200における格子移動について、図4、図5、図6を参照して説明する。
図4は、分割された計算空間50の模式図である。
格子移動演算部200は、図1に示す計算空間50を図4(a)に示すように3つの領域に分類する。
図4は、分割された計算空間50の模式図である。
格子移動演算部200は、図1に示す計算空間50を図4(a)に示すように3つの領域に分類する。
第1の領域は物体60に直近の領域であり、壁(物体60)から所定の距離にある格子点を含む。以下、第1の領域を物体固定領域51と呼ぶ。
第2の領域は、第1の領域から所定の格子点数(または距離)だけ外側に離れた領域である。以下、第2の領域を変形領域55と呼ぶ。
第3の領域は、物体固定領域51と変形領域55との間に設けられる領域であり、以下、緩衝領域53と呼ぶ。
第2の領域は、第1の領域から所定の格子点数(または距離)だけ外側に離れた領域である。以下、第2の領域を変形領域55と呼ぶ。
第3の領域は、物体固定領域51と変形領域55との間に設けられる領域であり、以下、緩衝領域53と呼ぶ。
物体固定領域51、緩衝領域53、変形領域55の領域のそれぞれの範囲は、解析対象となる流れ場の情報等に応じて決定すればよい。
例えば、簡略化のために、物体60に隣接する格子点群(物体60から第1点目の格子点群)を物体固定領域51とし、物体固定領域51の外側第1点目の格子点群を緩衝領域53とし、緩衝領域53より外側の格子点群を変形領域55としてもよい。
また、物体固定領域51、緩衝領域53に複数層の格子点を配置するようにしてもよい。また、格子の数ではなく、距離で各領域を決定するようにしてもよい。領域決定の指標として、変形領域55や物体60の大きさに対する割合を用いるようにしてもよい。
なお、変形を伴う場合には、物体固定領域51をなくしてしまう例も本実施の形態に含む。
例えば、簡略化のために、物体60に隣接する格子点群(物体60から第1点目の格子点群)を物体固定領域51とし、物体固定領域51の外側第1点目の格子点群を緩衝領域53とし、緩衝領域53より外側の格子点群を変形領域55としてもよい。
また、物体固定領域51、緩衝領域53に複数層の格子点を配置するようにしてもよい。また、格子の数ではなく、距離で各領域を決定するようにしてもよい。領域決定の指標として、変形領域55や物体60の大きさに対する割合を用いるようにしてもよい。
なお、変形を伴う場合には、物体固定領域51をなくしてしまう例も本実施の形態に含む。
物体固定領域51において、格子は物体60の移動とともに移動するものとする。そのため、この物体固定領域51における格子点の移動ベクトルは、物体60の変形もしくは運動に応じて決定される。
変形領域55において、格子点の移動ベクトルは任意の手法を用いて算出される。例えば、スプリングアナロジーによる格子移動法、弾性力学的アプローチによる格子移動法、速度場の偏微分方程式による平滑化、といった公知の手法を用いてもよいし、今後改良される新しい格子移動手法を適用するようにしてもよい。
緩衝領域53において、格子の移動ベクトルは、物体固定領域51側と変形領域55側の格子線の向き(格子ベクトル)を参照することにより、格子線の連続性が大きくなるように決定される。例えば緩衝領域が1層の場合には、物体固定領域51側の格子ベクトルの向きと変形領域側の格子ベクトルの向きとの平均から移動対象となる格子点の移動ベクトルを算出する。また、格子点間隔が、物体固定領域51側と変形領域側とで、滑らかになるように上記格子点の移動ベクトルを算出する。
更に、図4(b)に示すように、緩衝領域53を、その緩衝領域53の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち、線で物体固定領域51と接する部分をエッジ部531とし、線で物体固定領域51と接しない部分を角部533とする。ここで、緩衝領域53の幅とは、物体固定領域51との境界から変形領域55との境界までに含まれる緩衝領域53の格子点の層の数、または距離である。エッジ部531は、物体固定領域51とξ方向またはη方向のいずれか一方向で接する格子点群であり、角部533は、物体固定領域51の斜め方向(格子の対角線方向)に存在する格子点群である。
そして、エッジ部531と角部533とでは、異なる処理で移動ベクトルを算出するようにしてもよい。これは、一般に角部533は特に歪みが集中しやすいためである。エッジ部531と角部533とで異なる処理にて移動ベクトルを算出することにより、特に角部533での格子の歪みを抑えることができる。
そして、エッジ部531と角部533とでは、異なる処理で移動ベクトルを算出するようにしてもよい。これは、一般に角部533は特に歪みが集中しやすいためである。エッジ部531と角部533とで異なる処理にて移動ベクトルを算出することにより、特に角部533での格子の歪みを抑えることができる。
以下、緩衝領域53のエッジ部531と角部533とにおける移動ベクトルの算出について、それぞれ説明する。
図5は、緩衝領域53のエッジ部531における移動ベクトルΔPcの算出手法について説明する図であり、図6は、緩衝領域の角部533における移動ベクトルΔPcの算出手法について説明する図である。
なお、図5、図6ではベクトルを表す符合として矢印(→)を付しているが、明細書内には矢印を付さない。代わりに、例えば点PとベクトルPとを区別するため、ベクトルを意味する場合には「ベクトルP」と記載することとする。
図5は、緩衝領域53のエッジ部531における移動ベクトルΔPcの算出手法について説明する図であり、図6は、緩衝領域の角部533における移動ベクトルΔPcの算出手法について説明する図である。
なお、図5、図6ではベクトルを表す符合として矢印(→)を付しているが、明細書内には矢印を付さない。代わりに、例えば点PとベクトルPとを区別するため、ベクトルを意味する場合には「ベクトルP」と記載することとする。
まず、エッジ部531について図5を参照して説明する。
図5では、η方向についての格子点移動を示しており、点Pss、点Psは、物体固定領域51の格子点であり、Pnは変形領域55の格子点であり、点Pcが緩衝領域53のエッジ部531の格子点である。説明の簡略のため、緩衝領域53の格子点数が1点の場合について述べる。
図5では、η方向についての格子点移動を示しており、点Pss、点Psは、物体固定領域51の格子点であり、Pnは変形領域55の格子点であり、点Pcが緩衝領域53のエッジ部531の格子点である。説明の簡略のため、緩衝領域53の格子点数が1点の場合について述べる。
緩衝領域53の格子点Pcの移動ベクトルΔPcbndは、各格子点を結ぶ格子ベクトルが物体固定領域51から変形領域55に滑らかに連続するよう、以下の式(1)により、算出される。
ここで、
である。
また、Δsについては、辺PssPs、辺PsPc、辺PcPnの格子間隔が滑らかに分布するように算出する。ここでいう「滑らかさ」及び「平滑性」とは、格子点が一部に集中したり、格子間隔比がばらついたりせずに、所定の規則に従って分布することをいう。例えば、格子間隔や格子間隔比が等しい場合、或いは等比級数に従って分布する場合等である。
また、Δsについて、格子間隔の上限値及び下限値を与え、この上限値及び下限値の範囲内の値をとるようにしてもよい。
また、Δsについては、辺PssPs、辺PsPc、辺PcPnの格子間隔が滑らかに分布するように算出する。ここでいう「滑らかさ」及び「平滑性」とは、格子点が一部に集中したり、格子間隔比がばらついたりせずに、所定の規則に従って分布することをいう。例えば、格子間隔や格子間隔比が等しい場合、或いは等比級数に従って分布する場合等である。
また、Δsについて、格子間隔の上限値及び下限値を与え、この上限値及び下限値の範囲内の値をとるようにしてもよい。
上述の式(1)は、点Pcが点Psに対して、物体固定領域51側と変形領域55側の傾きの平均となり、かつ格子間隔が滑らかになるように、点Pcを移動させることを意味するものである。
次に、角部533について図6を参照して説明する。
図6では、点Pwnが物体固定領域51側の点であり、緩衝領域53のξ方向に点Pw、η方向に点Pnが存在する。
点Pcの移動ベクトルΔPcbndは、次の式(2)により算出される。
図6では、点Pwnが物体固定領域51側の点であり、緩衝領域53のξ方向に点Pw、η方向に点Pnが存在する。
点Pcの移動ベクトルΔPcbndは、次の式(2)により算出される。
ここで、
である。
上述の式(2)は、辺PwPcが緩衝領域53側の辺PwnPnと平行となり、辺PnPcが緩衝領域53側の辺PwnPwと平行となるように、点Pcを移動させることを意味する。
上述の式(2)は、辺PwPcが緩衝領域53側の辺PwnPnと平行となり、辺PnPcが緩衝領域53側の辺PwnPwと平行となるように、点Pcを移動させることを意味する。
最終的に、緩衝領域53での次の時刻の移動ベクトルΔPcは、以下の式(3)により求められる。
ここで、dtsubは逐次計算に用いるサブステップの擬似時間刻みである。
格子移動演算部200は、算出された移動ベクトルに従って格子点の移動後の位置を逐次計算する。
なお、上述の移動ベクトル算出法を3次元の計算格子に適用することも可能である。3次元の場合も同様に緩衝領域53を、その緩衝領域53の幅と同一の幅を有する複数の部分に分割する。分割された部分のうち、面で物体固定領域51と接する部分をエッジ部531とし、面で物体固定領域51と接しない部分を角部533とする。すなわち、エッジ部531は、物体固定領域51とξ方向またはη方向またはζ方向のいずれか一方向で接する格子点群であり、角部533は、物体固定領域51の斜め方向(格子の対角線方向)に存在する格子点群である。3次元の場合にも、エッジ部531と角部533とで上述のように、異なる手法で各格子点の移動ベクトルを算出する。
次に、図7及び図8を参照して、計算格子形成装置1における動作について説明する。
図7は、計算格子形成装置1の処理手順を示すフローチャートである。
図8は、本実施の形態の計算格子形成装置1によって得られる結果例を示す図である。
図8は、本実施の形態の計算格子形成装置1によって得られる結果例を示す図である。
計算格子形成装置1は、図7のフローチャートの手順に従って、格子を形成し、移動させ、流体解析計算を実行する。
図7において、左側が通常の流体計算の部分、右側が本実施の形態の計算格子形成装置1の実行する格子移動処理に関する部分である。格子移動処理は流体計算の時間進行の一部に組み込まれる。
図7において、左側が通常の流体計算の部分、右側が本実施の形態の計算格子形成装置1の実行する格子移動処理に関する部分である。格子移動処理は流体計算の時間進行の一部に組み込まれる。
まず、初期格子形成部100は、初期格子に関する情報を記憶部5から読み込み(ステップS101)、格子移動演算部200へ渡す。格子移動演算部200は、格子を移動する上で必要となる初期格子情報(格子ベクトル、格子間隔)を算出し(ステップS102)、RAMに保存する。次に、初期格子形成部100は、流れ場及び格子に関する情報を有するファイルを記憶部5から読み込み(ステップS103)、格子移動演算部200へ渡す。
格子移動演算部200は、読み込まれた初期格子、流れ場及び格子に関する情報に基づいて、格子を移動する処理を行う。以降の処理では、各格子の移動ベクトルを、流体計算の擬似時間刻み(以下、時刻ステップという)毎に算出する。その際、各時刻ステップ内にサブステップを設け、移動ベクトルを陽解法的に逐次計算する。
まず、ステップS104において、物体60との境界を次の時刻における位置に移動させる。
ステップS106において、格子移動演算部200は、現在の格子点の位置情報から格子ベクトルと格子間隔を算出する。そしてステップS107において、格子移動演算部200は、各格子の移動ベクトルを算出する。
移動ベクトルは、上述したように、物体固定領域51、緩衝領域53、変形領域55の各領域で異なる算出法により算出される。すなわち、格子移動演算部200は、物体固定領域51では格子点が物体と共に移動するような移動ベクトルを算出する。また、変形領域55では、いかなる手法を用いて格子の移動ベクトルを算出するようにしてもよい。
そして、緩衝領域53では、物体固定領域51側と変形領域側とで格子線の連続性が大きくなるように移動ベクトルを算出する。特に緩衝領域53では、エッジ部531と角部533とで異なる算出法によりそれぞれ移動ベクトルが算出されるようにしてもよい。この場合、エッジ部531では格子ベクトルの傾きが、物体固定領域53側の格子点と変形領域55側の格子点に対して連続的に変化し、かつ格子間隔が滑らかになるように移動ベクトルが算出される。また、角部533では、対向する格子線がそれぞれなるべく平行になるように移動ベクトルを算出する。
格子移動演算部200は決定された移動ベクトルΔPcに従って、格子の位置を移動させる(ステップS108)。
格子移動演算部200は決定された移動ベクトルΔPcに従って、格子の位置を移動させる(ステップS108)。
格子移動演算部200はステップS106〜ステップS108の処理をK回繰り返し、上限回数(Kmax)に達すると(ステップS109;Yes)、その時の移動ベクトルによって次のステップの格子位置を最終的に決定する。
その後、現ステップ及び前ステップでの各格子位置から格子移動速度を算出して(ステップS110)、流体解析部300へ移行する。
その後、現ステップ及び前ステップでの各格子位置から格子移動速度を算出して(ステップS110)、流体解析部300へ移行する。
流体解析部300では、移動後の格子位置情報を用いて、従来の流体計算処理と同様にヤコビアン(ヤコビ行列式)、メトリック関係式を算出し(ステップS111)、当該時刻ステップでの流体計算を実行する(ステップS112)。流体解析部300は、ステップS104〜ステップS112の処理をN回の時刻ステップ分だけ繰り返し、上限回数(Nmax)に達すると(ステップS113;Yes)、最終的な流れ場の状態や各種統計量の時間履歴の算出、そのときの格子位置等を含む解析結果を結果出力部400に渡す。結果出力部400は、流体解析結果を数値やグラフ化し、或いはグラフィック表示により出力する(ステップS114)。
図8は、本実施の形態の計算格子形成装置1によって得られる、角柱状物体60の回転問題の結果出力例であり、(a)は初期状態の全体図、(b)は(a)の物体60の左上角部分を含む計算空間を拡大した図、(c)は最大変位時の全体図、(d)は(c)の角柱状物体60の上角部分を含む計算空間を拡大した図である。
角柱状物体60の運動は以下の式(4)により与えられるものとする。
角柱状物体60の運動は以下の式(4)により与えられるものとする。
式(4)において、θは回転角度を表す。
また、最大回転角θmaxは45度とする。
また、最大回転角θmaxは45度とする。
図8(d)に示すように、本実施の形態の計算格子形成装置1によって形成された格子は最大変位時においてもつぶれや歪みが少ない。特に壁近傍において、その結果が顕著に表れている。
以上説明したように、本実施の形態の計算格子生成装置1は、格子移動演算部200によって格子を移動させる際に、移動対象となる格子点の移動ベクトルを算出する。すなわち、計算空間50を物体60の直近の領域である物体固定領域51と、物体固定領域51からある程度離れた領域である変形領域55と、物体固定領域51及び変形領域55の間に設けられる緩衝領域53とに分割し、各領域により異なる処理で各格子点の移動ベクトルを算出する。物体固定領域51では、移動ベクトルは格子点が物体とともに移動するように決定される。また、変形領域55では任意の手法で移動ベクトルを算出する。そして緩衝領域53では、物体固定領域51側と変形領域55側との格子ベクトル(格子線の向き)が滑らかに連続するように、格子点の移動ベクトルを算出する。
また、緩衝領域53では、格子点の位置により更にエッジ部531と角部533とで異なる算出法で移動ベクトルを算出するようにしてもよい。この場合、角部533では、対向する辺(格子線)がなるべく平行(平行または略平行)となるように移動ベクトルを算出する。
その結果、格子線の不連続性が小さくなり、歪みを抑えることができる。特につぶれや歪みの集中しやすい角部533で歪みを抑えることができるため、高品質な格子を形成することが可能となり、流体解析の精度を向上させることができる。
なお、上述の図7のフローチャートでは、境界の移動が既知の場合の処理動作を示しているが、例えば、構造解析や機構解析といった他の解析手法と連成させてもよい。その場合は、図7のフローチャートに代えて、図9または図10のフローチャートに基づく処理を行う。また、図3の機能ブロック図において、「流体解析部300」に「構造解析または機構解析との連成解析部」が設けられる。
図9及び図10は、本実施の形態の移動ベクトル算出手法を用いて格子を形成した際に、構造解析または機構解析と連成させる場合の処理手順を示し、図9は弱連成の場合、図10は強連成の場合を示すフローチャートである。
図9の弱連成の例において、ステップS201〜ステップS212は、図7のステップS101〜ステップS112と同様の手法で格子を形成し、移動させ、流体計算を実行する。そして、ステップS213として、流体計算の後に構造計算または機構計算の処理を追加する。その後、ステップS204〜ステップS213までの処理を上限回数(Nmax)に達するまで繰り返し(ステップS214)、結果を出力して(ステップS215)、処理を終了する。
また、図10の強連成の例においても、ステップS301〜ステップS312は、図7のステップS101〜ステップS112と同様の手法で格子を形成し、移動させ、流体計算を実行する。そして、ステップS313として、流体計算の後に構造計算または機構計算の処理を追加する(ステップS313)。強連成の場合は、流体計算と構造計算(または機構計算)の間で、力や変位の値をやり取りし、両者の釣り合いをとる。そのため、時刻ステップN内にサブステップMを設けている。サブステップを上限回数(Mmax)に達するまで繰り返しつつ(ステップS314)、非定常計算における実時間進行に相当する時間ステップを上限回数(Nmax)に達するまで繰り返す(ステップS315)。
その後、結果を出力して(ステップS316)、処理を終了する。
その後、結果を出力して(ステップS316)、処理を終了する。
なお、本実施の形態の計算格子の移動方法は、上述の流体解析(図7)または流体解析と構造解析との連成(図9、図10)に適用するだけでなく、構造解析に適用することも可能である。
構造解析に適用する場合には、図7のフローチャートにおいて、ステップS112における「流体計算」処理を、「構造計算」処理に置き換える。
また、図3の機能ブロック図については、流体解析部300は構造解析部に置き換えられる。
構造解析に適用する場合には、図7のフローチャートにおいて、ステップS112における「流体計算」処理を、「構造計算」処理に置き換える。
また、図3の機能ブロック図については、流体解析部300は構造解析部に置き換えられる。
なお、上述の図7、図9、図10に示す処理を行うプログラムは、CD−ROM等の記録媒体に保持させて流通させても良いし、通信回線を介して送受信することもできる。
以上、添付図面を参照しながら、本発明に係る計算格子形成装置等の好適な実施形態について説明したが、本発明はかかる例に限定されない。当業者であれば、本願で開示した技術的思想の範疇内において、各種の変更例又は修正例に想到し得ることは明らかであり、それらについても当然に本発明の技術的範囲に属するものと了解される。
1………計算格子形成装置
50………計算格子
51………物体固定領域(第1の領域)
53………緩衝領域(第3の領域)
55………変形領域(第2の領域)
531………エッジ部
533………角部
60………物体(角柱状物体)
100………初期格子形成部
200………格子移動演算部
300………流体解析部
400………結果出力部
50………計算格子
51………物体固定領域(第1の領域)
53………緩衝領域(第3の領域)
55………変形領域(第2の領域)
531………エッジ部
533………角部
60………物体(角柱状物体)
100………初期格子形成部
200………格子移動演算部
300………流体解析部
400………結果出力部
Claims (11)
- 計算空間に複数の格子点からなる計算格子を形成し、各格子点を経時的に移動させる計算格子形成装置であって、
前記計算空間を、該計算空間内に置かれた境界に直近の第1の領域と、前記第1の領域から所定の格子点数だけ離れた第2の領域と、前記第1の領域と前記第2の領域との間に設けられる第3の領域と、に分割し、前記第1、第2、及び第3の領域で夫々異なる方法で前記格子点を移動させる格子移動手段を備えることを特徴とする計算格子形成装置。 - 前記格子移動手段は、
前記第1の領域では、前記境界の移動に追従するように各格子点を移動させ、
前記第2の領域では、任意の手法で格子点を移動させ、
前記第3の領域では、移動対象となる格子点について、前記第1の領域側の格子と前記第2の領域側の格子間で、所定の規則に従って滑らかに分布するように、前記格子点を移動させることを特徴とする請求項1に記載の計算格子形成装置。 - 前記計算格子が、2次元格子である場合に、
前記格子移動手段は、
前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と線で接するエッジ部と、物体固定領域に線で接しない角部とで、夫々異なる方法で前記格子点を移動させることを特徴とする請求項1に記載の計算格子形成装置。 - 前記計算格子が、3次元格子である場合に、
前記格子移動手段は、
前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と面で接するエッジ部と、物体固定領域に面で接しない角部とで、夫々異なる方法で前記格子点を移動させることを特徴とする請求項1に記載の計算格子形成装置。 - 前記格子移動手段は、
前記角部に含まれる格子点は、前記第3の領域内の対向する格子線が夫々平行または略平行となるように移動させることを特徴とする請求項3または4に記載の計算格子形成装置。 - 計算空間に複数の格子点からなる計算格子を形成し、各格子点を経時的に移動させる計算格子形成方法であって、
前記計算空間を、該計算空間内に置かれた境界に直近の第1の領域と、前記第1の領域から所定の格子点数だけ離れた第2の領域と、前記第1の領域と前記第2の領域との間に設けられる第3の領域と、に分割し、前記第1、第2、及び第3の領域で夫々異なる方法で前記格子点を移動させることを特徴とする計算格子形成方法。 - 前記第1の領域では、前記境界の移動に追従するように各格子点を移動させ、
前記第2の領域では、任意の手法で格子点を移動させ、
前記第3の領域では、移動対象となる格子点について、前記第1の領域側の格子と、前記第2の領域側の格子間で、所定の規則に従って滑らかに分布するように、前記格子点を移動させることを特徴とする請求項6に記載の計算格子形成方法。 - 前記計算格子が、2次元格子である場合に、
前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と線で接するエッジ部と、物体固定領域に線で接しない角部とで、夫々異なる方法で前記格子点を移動させることを特徴とする請求項6に記載の計算格子形成方法。 - 前記格子が、3次元格子である場合に、
前記第3の領域を、第3の領域の幅と同一の幅を有する複数の部分に分割し、分割された部分のうち物体固定領域と面で接するエッジ部と、物体固定領域に面で接しない角部とで、夫々異なる方法で前記格子点を移動させることを特徴とする請求項6に記載の計算格子形成方法。 - 前記角部に含まれる格子点は、前記第3の領域内の対向する格子線が夫々平行または略平行となるように移動させることを特徴とする請求項8または9に記載の計算格子形成方法。
- コンピュータを請求項1から5のいずれかに記載の計算格子形成装置として機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008183803A JP2010026581A (ja) | 2008-07-15 | 2008-07-15 | 計算格子形成装置、計算格子形成方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008183803A JP2010026581A (ja) | 2008-07-15 | 2008-07-15 | 計算格子形成装置、計算格子形成方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010026581A true JP2010026581A (ja) | 2010-02-04 |
Family
ID=41732389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008183803A Pending JP2010026581A (ja) | 2008-07-15 | 2008-07-15 | 計算格子形成装置、計算格子形成方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010026581A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010026579A (ja) * | 2008-07-15 | 2010-02-04 | Toyota Central R&D Labs Inc | 計算格子形成装置、計算格子形成方法、及びプログラム |
JP2013164848A (ja) * | 2012-02-13 | 2013-08-22 | Livermore Software Technology Corp | 任意ラグランジュ・オイラー法(ale)における要素細分化法およびシステム |
KR20140138883A (ko) * | 2012-03-08 | 2014-12-04 | 엔진 시뮬레이션 파트너스 | 유체 역학 시스템에서의 경계 |
-
2008
- 2008-07-15 JP JP2008183803A patent/JP2010026581A/ja active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010026579A (ja) * | 2008-07-15 | 2010-02-04 | Toyota Central R&D Labs Inc | 計算格子形成装置、計算格子形成方法、及びプログラム |
JP2013164848A (ja) * | 2012-02-13 | 2013-08-22 | Livermore Software Technology Corp | 任意ラグランジュ・オイラー法(ale)における要素細分化法およびシステム |
KR20140138883A (ko) * | 2012-03-08 | 2014-12-04 | 엔진 시뮬레이션 파트너스 | 유체 역학 시스템에서의 경계 |
JP2015511745A (ja) * | 2012-03-08 | 2015-04-20 | エンジン シミュレーション パートナーズ | 流体力学システムの境界 |
KR102014120B1 (ko) | 2012-03-08 | 2019-08-26 | 엔진 시뮬레이션 파트너스 | 유체 역학 시스템에서의 경계 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE48940E1 (en) | Simulation of the machining of a workpiece | |
Wang et al. | A new volume-of-fluid method with a constructed distance function on general structured grids | |
US8903693B2 (en) | Boundary handling for particle-based simulation | |
US11244506B2 (en) | Tracking rigged polygon-mesh models of articulated objects | |
TW201610730A (zh) | 點雲網格簡化系統及方法 | |
EP3467792B1 (en) | Image processing apparatus, image processing method, and program | |
JP6458501B2 (ja) | シミュレーションプログラム、シミュレーション方法、およびシミュレーション装置 | |
Neto et al. | Improving Nagata patch interpolation applied for tool surface description in sheet metal forming simulation | |
JP2010026581A (ja) | 計算格子形成装置、計算格子形成方法、及びプログラム | |
US7813907B2 (en) | Hybrid method for enforcing curvature related boundary conditions in solving one-phase fluid flow over a deformable domain | |
US7982732B2 (en) | Evolutionary design optimization using extended direct manipulation of free form deformations | |
Xie et al. | A conservative solver for surface-tension-driven multiphase flows on collocated unstructured grids | |
JP4998395B2 (ja) | 計算格子形成装置、計算格子形成方法、及びプログラム | |
JP6141290B2 (ja) | マルチポインタ間接入力装置の加速度によるインターラクション | |
Misztal et al. | Cut locus construction using deformable simplicial complexes | |
CN114912303A (zh) | 三维流体的展示方法、装置、电子设备及存储介质 | |
KR101170909B1 (ko) | 이동 그리드를 이용한 유체 시뮬레이션 시스템 및 방법 | |
US10565328B2 (en) | Method and apparatus for modeling based on particles for efficient constraints processing | |
US20240165804A1 (en) | Environment Warped Gait Trajectory Optimization for Complex Terrains | |
Corominas Murtra et al. | Efficient use of 3D environment models for mobile robot simulation and localization | |
Kim et al. | FE-analysis of sheet metal forming processes using continuous contact treatment | |
Hachani et al. | 3D contact smoothing method based on Quasi-C1 interpolation | |
CN101882299B (zh) | 一种散乱点集的拓扑保持拟合方法、装置及图像变换系统 | |
CN113384890B (zh) | 一种凸多边形碰撞的检测方法 | |
d’Amore et al. | A robust region approach to the computation of geometric graphs |