(57)【要約】【課題】品質の高い格子データを生成する。【解決手段】粗密分布設定手段２２は、数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定する。格子生成部２３は、設定されたパラメータに応じて、格子データを生成する。品質評価部２４は。生成された格子データから、格子モデルの品質の評価関数を求める。最適化部２５は、評価関数に応じてパラメータを更新し、当該更新したパラメータに応じて格子生成部２３に格子データを生成させる。【選択図】      図１
2011134279.tif 000002
【特許請求の範囲】
【請求項１】
数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定する設定手段と、
前記設定手段によって設定されたパラメータに応じて、格子データを生成する生成手段と、
前記生成手段によって生成された格子データから、前記格子モデルの品質の評価関数を求める評価手段と、
前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に前記格子データを生成させる最適化手段と、
を具備する格子データ生成装置。
【請求項２】
前記最適化手段は、前記評価関数に応じた重み付けによって前記パラメータを更新し、前記生成手段に少なくとも１世代の格子モデル群を生成させる請求項１に記載の格子データ生成装置。
【請求項３】
前記最適化手段は、遺伝的アルゴリズムに従って重み付けを行い、前記パラメータを更新し、前記生成手段に複数世代の格子モデル群を生成させる請求項２に記載の格子データ生成装置。
【請求項４】
前記パラメータは、格子点の数及び粗密分布を含む請求項１に記載の格子データ生成装置。
【請求項５】
前記評価関数は、前記格子モデルにおけるアスペクト比及びひずみ度の最大値の少なくとも一方を含む請求項１に記載の格子データ生成装置。
【請求項６】
前記評価関数は、前記格子モデルの格子点の数を含む請求項５に記載の格子データ生成装置。
【請求項７】
前記生成装置は、不規則に配列された四面体によって形成される格子モデルの格子データを生成する請求項１に記載の格子データ生成装置。
【請求項８】
数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定する設定ステップと、
前記設定されたパラメータに応じて、生成手段によって格子データを生成する生成ステップと、
前記生成された格子データから、前記格子モデルの品質の評価関数を求める評価ステップと、
前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に格子データを生成させる最適化ステップと、
を備える格子データ生成方法。
【請求項９】
前記最適化ステップでは、前記評価関数に応じた重み付けによって前記パラメータを更新し、前記生成手段に少なくとも１世代の格子モデル群を生成させる請求項８に記載の格子データ生成方法。
【請求項１０】
前記最適化ステップでは、遺伝的アルゴリズムに従って重み付けを行い、前記パラメータを更新し、前記生成手段に複数世代の格子モデル群を生成させる請求項９に記載の格子データ生成方法。
【請求項１１】
前記パラメータは、格子点の数及び粗密分布を含む請求項８に記載の格子データ生成方法。
【請求項１２】
前記評価関数は、前記格子モデルにおけるアスペクト比及びひずみ度の最大値の少なくとも一方を含む請求項８に記載の格子データ生成方法。
【請求項１３】
前記評価関数は、前記格子モデルの格子点の数を含む請求項１２に記載の格子データ生成方法。
【請求項１４】
前記生成装置は、不規則に配列された四面体によって形成される格子モデルの格子データを生成する請求項８に記載の格子データ生成方法。
【請求項１５】
格子データ生成手段を具備するコンピュータに、
数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定することと、
前記設定されたパラメータに応じて、前記生成手段によって格子データを生成することと、
前記生成された格子データから、前記格子モデルの品質の評価関数を求めることと、
前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に前記格子データを生成させることと、
を実行させるための格子データ生成プログラムを記憶したコンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、格子データ生成装置、格子データ生成方法、及び格子データ生成プログラムを記憶した記憶媒体に関する。
【背景技術】
【０００２】
例えば流体中を移動する構造物の設計にあたっては、流体の運動を解析するために、数値流体解析に基づくコンピュータシミュレーションを利用することが行なわれる。数値流体解析では、空間を格子によって表現し、空間を離散的に扱うことができるようにする。近年では、格子生成ソフトによって格子を自動的に生成することも可能となっている。このようなソフトを利用して品質の高い格子を作成するためには、格子点の数と分布を適切に設定する必要がある。
【０００３】
例えば特許文献１には、格子データの修正を可能とする格子データ生成装置が開示されている。この格子データ生成装置では、格子データの修正を行うか否かを判断し、格子データの追加、削除あるいは移動等の修正を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−８６０３７号公報（段落００２７、図２）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
数値流体力学に従って複雑な形状を表現するには、不規則に配置された四面体による非構造格子が用いられる。しかしながら、非構造格子は格子の配置が不規則であるため、格子点の粗密分布をどのように調整すれば、格子の品質が良くなるかが明確ではなく、調整と生成の試行錯誤を繰り返さなくてはならない。
【０００６】
本発明は、前記のような問題に鑑みなされたもので、品質の高い格子データの生成が可能になる格子データ生成装置、格子データ生成方法、及び格子データ生成プログラムを記憶した記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一実施形態に係る格子データ生成装置は、数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定する設定手段と、前記設定手段によって設定されたパラメータに応じて、格子データを生成する生成手段と、前記生成手段によって生成された格子データから、前記格子モデルの品質の評価関数を求める評価手段と、前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に前記格子データを生成させる最適化手段を具備する。
【０００８】
本発明の一実施形態に係る格子データ生成方法は、数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定する設定ステップと、前記設定されたパラメータに応じて、生成手段によって格子データを生成する生成ステップと、前記生成された格子データから、前記格子モデルの品質の評価関数を求める評価ステップと、前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に格子データを生成させる最適化ステップを備える。
【０００９】
本発明の一実施形態に係る格子データ生成プログラムを記憶した記憶媒体は、コンピュータ読み取り可能な記憶媒体であって、格子データ生成手段を具備するコンピュータに、数値流体解析の対象となる流体の格子モデル化を生成するためのパラメータを設定することと、前記設定されたパラメータに応じて、前記生成手段によって格子データを生成することと、前記生成された格子データから、前記格子モデルの品質の評価関数を求めることと、前記評価関数に応じて前記パラメータを更新し、当該更新したパラメータに応じて前記生成手段に前記格子データを生成させることを実行させるための格子データ生成プログラムを記憶する。
【発明の効果】
【００１０】
本発明によれば、評価関数に応じて格子生成のパラメータを更新し、当該更新したパラメータに応じて格子データを生成するので、品質の高い格子データの生成が可能になる。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る格子データ生成装置の機能構成を示す機能ブロック図。
【図２】上記実施形態に係る格子点間距離の比率を説明するための図。
【図３】４つの格子点によって形成される四辺形面についてのひずみ度を説明するための図。
【図４】３つの格子点によって形成される三角形面についてのひずみ度を説明するための図。
【図５】最適化部によって制御される格子形成の最適化処理のフローチャート。
【図６】１世代分の格子群を生成する処理を表すフローチャート。
【図７】最適化部による最適化を行わない場合の格子生成結果の一例を示す図。
【図８】最適化部による最適化を行った場合の格子生成結果の一例を示す図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明による格子データ生成装置の実施形態を説明する。
【００１３】
図１は、本発明の一実施形態に係る格子データ生成装置の機能構成を示す機能ブロック図である。
【００１４】
図１に示すように、格子データ生成装置２０には、入力装置１０及び出力装置３０が接続されている。
【００１５】
入力装置１０は、例えばキーボードやマウス等を具備し、ユーザからの入力を受け付ける。入力装置１０を介して入力されたデータは、格子データ生成装置２０に送信される。本実施形態では、設計変数の初期値及び評価関数が、ユーザによって入力装置１０に入力される。
【００１６】
出力装置３０は、例えばＬＣＤ等の表示装置を具備し、格子データ生成装置２０が生成したデータを可視化する。具体的には、出力装置３０は生成された格子分布を表示したり、当該格子分布に基づく解析の結果得られた圧力分布を等圧線で表示したりする。
【００１７】
格子データ生成装置２０は、制御部２１、格子点粗密分布設定部２２、格子生成部２３、格子品質評価部２４、及び最適化部２５を具備する。
【００１８】
制御部２１は、プロセッサ、プログラムメモリ、及びワークメモリを備えており、格子データ生成装置２０の動作全体を制御する。具体的には、プログラムメモリに記憶された所定のプログラムをプロセッサが実行することにより、各種の処理が実行される。
【００１９】
粗密分布設定部２２は、入力装置１０を介して入力された格子生成に必要なパラメータに基づいて、生成する格子の粗密分布を設定する。本実施形態においては、格子点の数と格子点間の距離の比率に基づいて、格子の粗密分布が設定される。
【００２０】
図２は、本実施形態に係る格子点間距離の比率を説明するための図である。図２では、一列に並んだ格子点Ｐ１、Ｐ２、Ｐ３、Ｐ４…が図示されている。点Ｐ１と点Ｐ２の間の距離をＬ１、点Ｐ２と点Ｐ３の間の距離をＬ２、点Ｐ３と点Ｐ４の間の距離をＬ３、…と定めると、格子点間距離の比率Ｒは、以下の式（１）によって表される。
【数１】
2011134279.tif 000003
【００２１】
図２には、格子点間距離の比率Ｒ＝１．２の例が図示されている。一般に、Ｒの値が大きい場合に比べて、Ｒの値が小さい場合の方が密な格子分布を与える。なお、図２では説明の簡単化のために１次元配列された格子が図示されているが、実際に流体をモデル化する際には、３次元配列された格子が利用される。
【００２２】
このように、モデル化する流体に応じて、格子点の数及び格子点間距離の比率を設定することができる。また、流体を複数の領域に分割して、領域ごとに格子点の数と格子点間の距離を設定できるように、粗密分布設定部２２が構成されていてもよい。このように構成することで、より多くの格子を、例えば境界面など詳細な解析結果が求められる部位に配置することができる。
【００２３】
格子生成部２３は、粗密設定部によって設定されたパラメータに基づき、一般の格子生成ソフトウェアを用いて格子を生成する。格子生成のためのソフトウェアは種々開発され提供されているが、本実施形態に係る格子生成部２３は、不規則に配置された四面体による非構造格子を生成するものとする。ただし、格子生成部２３によって生成される格子は、非構造格子に限定されるものではない。
【００２４】
品質評価部２４は、生成された格子のアスペクト比（縦横比）及びひずみ度に基づいて当該生成された格子の品質を評価する。図３及び図４は、ひずみ度の定義を説明するための図である。
【００２５】
図３は、４つの格子点によって形成される四辺形面についてのひずみ度を説明するための図である。この場合のひずみ度は、四辺形が長方形からどの程度ひずんでいるかによって表される。具体的には、四辺形のひずみ度は、以下の式（２）で定義される。
【数２】
2011134279.tif 000004
【００２６】
式（２）では、四辺形の４つの角のうち、最大角度をθmax、最小角度をθminとし、直角をθeで表している。
【００２７】
図４は、３つの格子点によって形成される三角形面についてのひずみ度を説明するための図である。この場合のひずみ度は、三角形が正三角形からどの程度ひずんでいるかによって表される。具体的には、三角形のひずみ度も四辺形と同様に式（２）で定義される。
【数３】
2011134279.tif 000005
【００２８】
ただし三角形の場合三角形の３つの角のうち、最大角度をθmax、最小角度をθminとし、θe＝６０°と定められている。
【００２９】
品質評価部２４は、ひずみ度が大きい格子ほど品質が低いと評価する。
【００３０】
最適化部２５は、生成された格子に対して遺伝的アルゴリズムを用いた最適化処理を行う。最適化の設計変数には、粗密分布設定部２２によって設定される格子数及び格子点間距離の比率Ｒが用いられる。また、最適化の評価関数には、品質評価部２４によって得られた格子のアスペクト比とひずみ度が用いられる。
【００３１】
次に、以上のように構成された格子データ生成装置の動作について説明する。
【００３２】
図５は、最適化部２５によって制御される格子形成の最適化処理のフローチャートである。
【００３３】
まず粗密分布設定部２３によって、格子点数と格子分布（格子間距離の比）の初期値が設定される（ステップＳ５１）。すなわち粗密分布設定部２３は、入力装置１０を介して入力されたパラメータを初期値として設定する。
【００３４】
格子生成部２３は、１世代分の格子群を生成する（ステップＳ５２）。この処理の詳細は、図６を参照して後述する。
【００３５】
次に、規定の世代数分の格子群の生成処理が終了したか否かが判断される（ステップＳ５３）。生成する格子群の世代数は、例えば入力装置１０を介して予めユーザが設定しておくことができる。
【００３６】
生成された格子群の世代数が規定の数に達していなければ（ステップＳ５３でＮｏ）、ステップＳ５１の処理に戻り、次世代の格子群が生成される。
【００３７】
一方、規定の世代数分の格子群が生成されていれば（ステップＳ５３でＹｅｓ）、品質評価部２５によって最終世代の評価関数が検出される（ステップＳ５４）。
【００３８】
図６は、１世代分の格子群を生成する処理を表すフローチャートである。
【００３９】
まず、格子生成部２３によって、設定されている設計変数に基づいて１つの格子モデルが生成される（ステップＳ６１）。
【００４０】
品質評価部２３は、生成された格子のひずみ度及びアスペクト比を算出し、ひずみ度のうち最大の値を検出する（ステップＳ６２）。
【００４１】
最適化部２５は、算出されたアスペクト比、及び検出されたひずみ度の最大値を最適化の評価関数として設定する（ステップＳ６３）。
【００４２】
次に最適化部２５は、生成された格子モデルの数が規定の個体数に達したか否かを判断する（ステップＳ６４）。規定の個体数は、例えば入力装置１０を介して予めユーザが設定しておくことができる。
【００４３】
生成された格子モデルの数が規定の固体数に達していなければ（ステップＳ６４でＮｏ）、最適化部２５は、粗密分布設定部２２が設定する設計変数を、品質評価部２４が設定した評価関数に基づいて更新する（ステップＳ６５）。そしてステップＳ６１に戻り、更新された設計変数に基づく新たな格子モデルが生成され、以降の処理が繰り返される。
【００４４】
一方、規定数の格子モデルが生成されていれば（ステップＳ６４でＮｏ）、図５の処理に戻る。
【００４５】
ステップＳ６５における設計変数の更新の際には、遺伝的アルゴリズムに従った重み付けが行なわれる。すなわち、モデル間での複写、交叉、突然変異等が生じて次世代が形成されるように行なわれる。重み付けは、評価関数として設定されたアスペクト比やひずみ度を適切化するように行なわれる。例えば、ひずみ度が大きい格子モデルに与えられる重みは小さくなり、なるべく品質の高い格子モデルが次世代に大きく影響するように構成される。
【００４６】
以上のようにして検出された（図５のステップＳ５４）最終世代の評価関数から、格子モデルの最適解が求められて、最終世代の格子モデルが格子の最適形状とされる。
【００４７】
図７は、最適化部２５による最適化を行わない場合の格子生成結果の一例を示す図である。図７の左側の図は、流体内を移動する構造物の一部を示す。この例では、構造物近傍の一部分（図では楕円部で囲まれた部分）に対して、設計変数として格子点数が５０個、格子点間距離の比Ｒ＝１．２が設定されている。図７の右側の図は、このような構造体近傍の流体のモデル化のために、最適化部２５による最適化を行なわずに生成した格子データを示す。ここでは、ひずみ度の最大値が０．９９９となる部分があり、品質の悪い格子が存在する。
【００４８】
図８は、図７の例に対して、最適化部２５による最適化を行った場合の格子生成結果の一例を示す図である。最適化部２５の制御の下で、図５及び図６に示す処理が行われると、図において楕円部で囲まれた部分の設計変数が変更され、格子点数が６０個、格子点間距離の比Ｒ＝１．１に変更される。これによって格子形状が最適化され、図８の右側の図に示すように、ひずみ度の最大値が０．９３０にまで改善する。
【００４９】
以上のように、本実施形態に係る格子データ生成装置２０では、遺伝的アルゴリズムを利用する最適化部２５による最適化処理を、格子データの生成に適用する。これによって最適化格子点の粗密分布の調整し、品質の高い格子を生成する。格子モデル毎に評価関数を求め、評価の高い格子モデルに大きく重み付けすることで、品質の高い格子を生成することが可能となる。また、最適化に遺伝的アルゴリズムを利用することで、最適化の精度をより向上させることができるようになる。
【００５０】
なお上述の実施形態では、評価関数として、ひずみ度やアスペクト比を用いたが、これらに加えて、格子の総数を設定することもできる。格子数を評価関数とすることで、計算機能力に見合った格子モデルを作成することができる。
【００５１】
また、上述の実施形態では最適化部２５は、遺伝的アルゴリズムを用いた最適化を行なったが、遺伝的アルゴリズムに限らず、勾配法、焼きなまし法等によって設計変数の重み付けが行われてもよい。
【００５２】
また、図５及び図６に示すフローチャートは、コンピュータシステムに格子データ生成動作を行なわせるためのプログラムとして実装されてもよい。
【００５３】
なお、この発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【００５４】
また、本発明は、コンピュータに所定の手段を実行させるため、コンピュータを所定の手段として機能させるため、コンピュータに所定の機能を実現させるため、あるいはプログラムを記録したコンピュータ読取り可能な記録媒体としても実施することもできる。
【符号の説明】
【００５５】
１０…入力装置、２０…格子データ生成装置、２１…制御部、２２…粗密分布設定部、２３…格子生成部、２４…品質評価部、２５…最適化部、３０…出力装置。
【図１】
2011134279.tif 000006
【図２】
2011134279.tif 000007
【図３】
2011134279.tif 000008
【図４】
2011134279.tif 000009
【図５】
2011134279.tif 000010
【図６】
2011134279.tif 000011
【図７】
2011134279.tif 000012
【図８】
2011134279.tif 000013