説明

データへのインデックス付けおよびデータ圧縮

【解決手段】 多次元データにインデックスを付ける方法によって、時間以外の少なくとも1つの次元以上で規定されている特徴を記述するデータ・セット(210)が得られる(302)。また、少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データ(212)が得られる。データ・セットが圧縮され(306)、また、圧縮されたデータ・セットがインデックス・データによって特定されることができるようにインデックス・データが圧縮されたデータ・セットに関連付けされる(308)。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はデータへのインデックス付けおよびデータ圧縮に関する。
【背景技術】
【0002】
工学的設計のために物理的なプロセスの数値シミュレーションを行なうと、非常に大きなデータ・セットという結果になり得る。例えば、(図1に例示されているような)外部航空力学についての1回の計算流体力学(CFD)シミュレーションによって、10GBオーダーのデータが生成され得る。現在のシミュレーション・プロセスには、このデータを後のシミュレーションにおいて利用する能力は、その後にシミュレートされる特徴部が非常に類似していたとしても、ほとんどない。このことは、一般に、再利用の余地のほとんどない大量のデータが保存されることを意味しており、これらのデータによってもともとモデリングしたシミュレーション特性を見直すことぐらいである。大量のデータを保存しておくことは、これに関連する周知のハードウェアおよび(または)サービス費用を意味する。
【0003】
製品の物理的な形状(geometry)に言及する場合、ほとんどの工業設計プロセスは、かなり確固とした定義を有しており、「翼幅」、「車輪数」、「棒の太さ」等の「工学用語(engineering term)」、またはサーフェス、インターセクション、トポロジーなどの数学的仕様に関するコンピュータ利用設計(CAD)の定義を用いる。これらの製品の多くは(航空機、船、自動車、コンピュータ・チップ、人工心臓等のように)流体と相互作用する。流体の相互作用は非常に重要であるとともに流体の流れの特性を特定することは可能ではあるが、かなり一般的な形での表現を除いて「流体様(like flows)」を比較することは非常に困難である。
【0004】
場(field)の専門家は、多くの場合、「よどみ点」、「渦」、「境界層特性」、「衝撃波」などのような明白な特徴の点から流れ場を分析する。これらは有効な記述子であるが、物理的な実験に起源を持っており、それらが三次元に存在するという意味で直観的である。現在のCFDシミュレーション・アプリケーションは、このようなユーザにとって分かりやすい用語でデータを扱わず、またそのようにデータを提供することもない。すなわち、未加工データが技術者に提示されて、次いで、技術者が関心のある特徴を特定したり量子化したりする。CFDファイルを後処理して技術者にとって意味あるデータを得ることは可能であるが、これを同様の方法で生成された別のデータに直接関連付けるような形で自動的に処理するシステムは今のところ存在しない。
【発明の開示】
【0005】
本発明の第1の視点によれば、時間以外の少なくとも1つの次元上で規定されている特徴を記述するデータ・セットを得ることと、前記少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データを得ることと、前記データ・セットを圧縮することと、前記圧縮されたデータ・セットを保存することと、前記圧縮されたデータ・セットが前記インデックス・データによって特定されることができるように前記インデックス・データを前記データ・セットに関連付けることと、を具備する、多次元データにインデックスを付ける方法が提供される。
【0006】
幾つかの例において、前記データ・セットは、(流れ場の中で動いているかもしれない)物体に関する流体の流れを表わすとともに時間および他の次元上で規定されている、計算流体力学(CFD)シミュレーション・データのような計算シミュレーション・データ(場のデータを含む)を具備している。前記インデックス・データは、シミュレーションにおける移動物体に関する工学用語(例えば翼幅、車輪数、棒の太さ、前記移動物体の(例えばマッハ数で表現された)速度、材料タイプ)を含み得、前記設計用語は前記データ・セットの非時間次元のうちの1つに対応している。前記インデックス・データは前記流体の流れに関連する流れ場の用語(例えばよどみ点、渦、境界層特性、衝撃波)を含んでおり、前記流れ場の用語は前記データ・セットの非時間次元のうちの1つに対応している。前記インデックス・データは、前記流体の流れの視覚的表現に関する形状用語(例えば中心軸、レベル・セット、スプライン係数)についての値を含み得、前記形状用語は前記データ・セットの非時間次元のうちの1つに対応している。前記インデックス・データは、前記流体の流れの視覚的または数学的表現に関する数学用語(主成分、放射規定関数、固有値分解値)についての値を含み得、前記数学用語は前記データ・セットの非時間次元のうちの1つに対応している。前記インデックス・データは、前記流体の流れおよび/または前記物体に関するユーティリティー用語(使用費用、安全性/セキュリティー、審美上の訴求力、重量、使用の容易さ)についての値を含み得、前記ユーティリティー用語は前記データ・セットの非時間次元のうちの1つに対応している。
【0007】
前記方法は、複数の前記データ・セットに適用され得、これによって複数の圧縮されたデータ・セットを得、前記圧縮されたデータ・セットの各々は前記インデックス・データのそれぞれと関連付けられている。典型的には、前記複数のデータ・セットは、少なくとも1つの同じ非時間次元上でそれぞれの特徴を規定している。
【0008】
前記データ・セットを圧縮することは、前記データ・セットを背景(例えばデカルト平面)メッシュ上に補間する工程と、前記非時間次元のうちの1つに基づいたウェーブレット関数(次元が特定された形状関数)を用いて前記補間の値をウェーブレット係数へと分解する工程と、前記ウェーブレット係数を保存する工程と、を具備し得る。
【0009】
前記方法は、第1の前記圧縮されたデータ・セットと第2の前記圧縮されたデータ・セットとの間の関係を記述する写像データを生成することをさらに具備し得る。前記第1、第2の圧縮されたデータ・セットは、関連付けられているか類似し得る。例えば、前記第1、第2のデータ・セットの少なくとも1つの非時間次元の値(これは各々のインデックス・データにおいて保存されている)が同じである。前記写像データは動きベクトルの形態であり得る。前記動きベクトルは、前記第1のデータ・セットと前記第2のデータ・セットとの間の変化を前記データ・セットが規定されている次元の少なくも1つの点において記述することが可能である。前記方法は、前記写像データを分析して前記第1、第2のデータ・セットの間の差を特定すること、および前記特定された差に関するデータを表示/保存することをさらに具備し得る。
【0010】
前記第1のデータ・セットは、物体に関する流体の流れのシミュレーションを表わすデータを含み得、また、前記第2のデータ・セットは、前記物体に関する実際の(実験による)流体の流れの記録を表わすデータを含み得る。前記方法は、前記圧縮されたデータ・セットの少なくとも1つおよび写像データを用いて、視覚的な画面表示を生成することを含み得る。前記視覚的な画面表示はユーザによって選択されたデータ・セットの特徴に相当し得る。
【0011】
前記複数のデータ・セットがCFDシミュレーション・データを表わす場合、前記第1の圧縮されたデータ・セットは複数の特徴(例えば具体的な次元を持っている翼)を有している物体(例えば航空機)に関する流体の流れを表し得、前記第2の圧縮されたデータ・セットは、複数の特徴を有する物体に関する流体の流れを表わし得、前記第2の物体の特徴の少なくとも1つは前記第1の物体の対応する特徴と異なっている(例えば翼が異なる次元を持っている)。または、前記第2の圧縮されたデータ・セットは、前記第1のデータ・セットの前記物体の特徴とは異なる特徴に関する流体の流れを表わし得る。または、前記第2の圧縮されたデータ・セットは、前記第1のデータ・セットの前記物体に関する流体の流れに対する摂動(perturbation)を表し得る。すなわち、前記第1、第2の圧縮されたデータ・セットは同じ物体で異なる流体の流れを表わしている。適切な第2の圧縮されたデータ・セットが利用可能ではない場合、前記方法は、前もって、異なる物体/物体の特徴/流体の流れに関するデータ・セットを生成することと、前記データ・セットを圧縮することと、前記圧縮されたデータ・セット(「前記第2の圧縮されたデータ・セット」)を保存することを含み得る。
【0012】
本発明のさらなる視点によれば、時間以外の少なくとも1つの次元上で規定されている特徴を記述するデータ・セットを得るように構成されている装置と、前記少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データを得るように構成されている装置、前記データ・セットを圧縮するように構成されている装置と、前記圧縮されたデータ・セットを保存するように構成されている装置と、前記圧縮されたデータ・セットが前記インデックス・データによって特定されることができるように前記インデックス・データを前記データ・セットに関連付けるように構成されている装置と、を具備する、多次元データにインデックスを付けるように構成されているシステムが提供される。
【0013】
本発明の別の視点によれば、コンピュータ・プログラム・コード手段を有するコンピュータ読み取り可能媒体を具備するコンピュータ・プログラム製品であって、前記プログラム・コードがロードされると前記コンピュータに、時間以外の少なくとも1つの次元上で規定されている特徴を記述するデータ・セットを得ることと、前記少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データを得ることと、前記データ・セットを圧縮することと、前記圧縮されたデータ・セットを保存することと、前記圧縮されたデータ・セットが前記インデックス・データによって特定されることができるように前記インデックス・データを前記データ・セットに関連付けることと、を含む、多次元データにインデックスをつける方法を実行させる、コンピュータ・プログラム製品が提供される。
【0014】
本発明の別の視点によれば、時間以外の少なくとも1つの次元上で規定されている、背景メッシュ上に補間されたデータ・セットを得ることと、前記非時間次元のうちの1つに基づいたウェーブレット関数(次元が特定された形状関数)を用いて前記補間されたデータ・セットをウェーブレット係数へと分解することと、前記ウェーブレット係数を保存することと、を含む多次元データを圧縮する方法が提供される。
【0015】
本発明が上に記述されているが、本発明は、上記のまたは以下の記述における特徴のあらゆる組合せにまで及ぶ。本発明の例示的な実施形態は添付の図面を参照して本明細書に詳細に記述されているが、本発明がこれらの実施形態そのものに限定されないことが理解されるべきである。そのため、多くの修正体および変形体が当業者にとって明白であろう。また、他の個々に記述されている特徴または他の実施形態の一部として記述されている特徴が、別の個々に記述されている特徴または別の実施形態の一部として記述されている特徴と、たとえこの別の特徴や実施形態が具体的な特徴に言及していないとしても、組み合わせられることが可能である。したがって、本発明はまだ記述されていないそのような特定の組合せにまで及ぶ。
【0016】
本発明は様々な方法で実行され得、あくまで例として、その実施形態が、添付の図面を参照しながら、次に記述される。
【発明を実施するための最良の形態】
【0017】
図2は、プロセッサ201および内部ランダム・アクセス・メモリ202を含んでいるコンピュータ200を示している。コンピュータはデスクトップ・パソコン等であり得る。内部メモリ202は、シミュレーション・アプリケーション204用の実行可能なコードと、他のデータにインデックス・データを関連させるためのアプリケーション205と、インデックスを付されたデータを用いるデータ圧縮アプリケーション206と、さらなるアプリケーション207を含んでいる。例示されている構成があくまで例示であること、また、本明細書で記述されているアプリケーションによって実行される機能が1つの統合アプリケーションまたは個別のハードウェア/ソフトウェア・モジュールの様々な組合せによって実行されることが可能であることが理解されるであろう。
【0018】
コンピュータ200は不揮発性記憶装置208とデータを交換することが可能になっている。場合によっては、不揮発性記憶装置は、コンピュータに直接接続されるハードディスクなどであり得、大量のデータが格納される必要がある場合は、記憶装置208はネットワーク上でアクセスされる大容量の外部記憶装置/サービスであり得る。例において、記憶装置208は、シミュレーション・アプリケーション204によって生成されるシミュレーション・データ210、インデックス付けアプリケーション205によって使用されかつ/または生成されるインデックス・データ212、圧縮アプリケーション206によって生成されることが可能な圧縮されたシミュレーション・データ214、アプリケーション207によって使用されかつ/または生成され得るさらなるデータ216、を格納している。この様々なタイプのデータが、別々の記憶装置で格納されることが可能であることが理解されるであろう。
【0019】
本明細書において記述されている例はCFDシミュレーション・アプリケーションによって生成されるデータに関しているが、本方法が、構造、電磁場、応力デザイン(設計)、音響の有限要素モデリング用のシミュレーションのような別のタイプのアプリケーションに関係している、またはこのようなアプリケーションによって生成される大容量圧縮可能データに適用されることが可能であることが理解されるであろう。図3に目を向けると、圧縮されたインデックス付けされたシミュレーション・データを生成するためにコンピュータ200上で実行するコードによって実行されるステップが例示されている。ステップ302において、詳細なシミュレーション・データ210が、インデックス付けアプリケーション205によって獲得される。このデータは、通常、シミュレーション・アプリケーション204によって生成される。シミュレーション・アプリケーション204は、(アメリカ、ペンシルバニア州キャノンズバーグのAnsys社によって製造された)CFXのような従来のCFDシミュレーション・アプリケーションまたはアメリカ、ニューハンプシャー州レバノンのFluent社によって製造されたシミュレーション・アプリケーションであり得る。このようなシミュレーション・アプリケーションは乗り物のような物体の記述およびその中に物体が位置するかその中で物体が移動している流体(例えば空気)の特性の形態での入力を受け取り、また、物体の周囲の流体の流れを記述するデータを出力する。出力データは、標準的な形態(例えば、典型的には、ギガバイトの、シミュレーションの途中のある時点および終了時点における流れ場変数の状態を表わす実数値(より高精度の値を含む)を含んでいるファイル)とされることが可能である。
【0020】
シミュレーション・アプリケーション204のユーザは、シミュレーションに含まれている物体および流体の様々な特性を知っているであろう。典型的には、ユーザは、物体のデザイン・パラメータを入力する。例えば、物体が航空機である場合、(例えばCADパッケージによって入力された)パラメータに、航空機の物理的特徴の詳細(例えば翼長)を、シミュレーションに影響を与える物体のその他の特性(例えば航空機の速度および迎え角)に加えて、含めることが可能である。他の例では、ユーザは、流体の特性(例えば粘性)を指定してもよい。明らかに、ある具体的なシミュレーションの様々な次元/特性によってシミュレーション・データ出力が決定されるのであるが、これらの特性の少なくとも一部(例えば設計中の乗り物の審美的な訴求力のゲージ)はデータに直接含まれないかもしれず、他方、別の一部はデータをシミュレーション・アプリケーションまたは他のアプリケーションにロードせずにアクセスされることが容易ではないかもしれない。
【0021】
ステップ304において、データにインデックス付けするアプリケーション205はインデックス・データ212を得る。インデックス・データは上記されているようなシミュレーションの特性に相当する。これらの特性は、シミュレーション・データ210から自動的に抽出され得るが、通常、フィールド・フロー・シミュレーション・データの生成前に存在しているのでインデックス・データは、ユーザによって例えばメニューから選択することによって独立して作製されることが可能である。これらの特性によって、生成されるインデックス付けされたデータを活用するためのインデックスも作製することができる。
【0022】
翼長などの上述した特徴よりも「直感的エンジニアリング(intuitive engineering)」値が少ないと考えられ得る特性/次元が用いられてもよいことが理解されるであろう。例は、流体の流れの視覚的表示用の幾何学的性質(geometric)パラメータ(例えばスプライン係数)を含んでいる。やはり直感の程度は劣るが、より一般的には、幾何学的性質(geometry)についてのトポロジー記述子(topological descriptor)、例として中心軸またはレベル・セット、が用いられてもよい。より抽象的な数学表現の基礎、例として主成分、放射基底関数、固有値分解値、が用いられてもよい。別の選択肢は、費用、セキュリティ、新しさ、審美性のようなユーティリィティの関数を用いることである。例の全ては網羅しないリストは、下記のものを含んでいる。
【0023】
a. 工学変数。例として、スパン(span)、スイープ(sweep)、材料のタイプ、車輪数、棒の太さ、シミュレーション内の移動物体の(例えばマッハ数で表現される)速度、材料のタイプ。
【0024】
b. 場の流れの用語。例えばよどみ点、渦、境界層特性、衝撃波。
【0025】
c. 数学的な次元。例えば、直交分解成分、中心軸、レベル・セット、スプライン係数、主成分、放射基底関数、固有値分解値。
【0026】
d. ビジネス/ユーティリィティー次元。例えば、費用、重量、耐久性、製造/使用の容易さ、安全性/セキュリティー、審美上の訴求力。
【0027】
図3Aは、インデックス・データ212がどのように表の形で保存されることが可能かの単純な例を示している。シミュレーション・データの第1のセットは、迎え角5度でマッハ0.8の速度で飛行している航空機について生成された。シミュレーション・データの第2の組も6度の迎え角およびマッハ0.8の航空機について生成された。第3のシミュレーション・データの組は、5度の迎え角およびマッハ0.9の航空機に対応している。これらの値は、図3Aの単純な表データ構造で示されているが、他の方法で保存されてもよいことが理解されるであろう。このような他の方法は、当業者にとって容易に明白になるであり、例えば、実数または整数の引数を用いたマイクロソフト・エクセルのスプレッドシート、XMLまたはデータベース・キーのようなタグ付きのリストである。例示されている表では、行352は、第1のシミュレーション・データ・セットの特性についての値を含んでいる。行352は、また、SD1という名のデータ・ファイルへのリンク/参照を含んでいる。SD1は、第1のデータ・セットの圧縮された形態を含んでおり、これについては後述する。行354、356は、第2、第3のデータ・セットに関連するデータをそれぞれ含んでいる。この明細書において言及されているもののような様々な他の特性/次元についての値が保存されてもよいことが理解されるであろう。通常は、全ての列が全ての行について完成しているが、場合によっては、これは不可欠ではない。
【0028】
ステップ306において、得られたシミュレーション・データ210が圧縮されて圧縮データ214を生成する。この後、元のシミュレーション・データは廃棄され得る。廃棄することは、記憶領域(および関連する費用)を抑えるのに望ましい可能性がある。様々な適切な圧縮技術は当業者にとって知られているであろう。しかしながら、本例において使用されている圧縮アプローチは、シミュレーションされたフィールド・フロー・データをデカルト平面(a Cartesian)または適切な背景、(必要に応じて)メッシュ上へと補間すること、この補間値をウェーブレット係数へと分解するとともにこの係数を保存することである。この種の圧縮技術は、動画圧縮の分野でよく確立されている。数学的な意味で補間ステップにおいて達成されようとしているものは、未加工のシミュレーション・データを、基底へと投影すること(例えばフーリエ分解、離散コサイン変換、不連続ガラーキン補間(discontinuous Galerkin interpolation)、整数表現(すなわち、データの精度を切り捨てることによる圧縮)、放射基底分解、ステップ/デルタ関数投影)である。このデカルト平面で補間されたデータは、典型的には、フロー領域(domain)内で規則的に離れている頂点(またはセル中心)に対して補間された実数値データのファイルという形態で保存されている。これによって、係数データが計算されたり、保存されたりすることが可能になる。このことは、完全体のシミュレーション・データよりも記憶空間が少なくて済む。
【0029】
当業者は、既知のMPEG動画符号化アルゴリズムの基礎となっているウェーブレット圧縮として、ひいてはMP3圧縮として知られている数学的方法に精通しているであろう。当業者が本明細書において記述されている技術を理解および実行することを援助する、他の関連する既知の圧縮アルゴリズムは、Xvidビデオ・コーデックを含んでいる。これは、GNU PLの用語を介して配布されているオープン・ソース・ソフトウェア・プロジェクトである。本明細書において与えられている例を理解することを支援するために、MPEG圧縮技術の概要が、次に与えられる。MPEG圧縮比は非常に高い。このアルゴリズムが「平行移動不変性(translation invariance)」(「移動不変性(shift invariance)」とも呼ばれる)を利用する、すなわち、このアルゴリズムが、動画像内の何かが変化はしていないがある場所から別の場所へと単に移動しているのを認識することができるからである。このアルゴリズムは、一般に、2Dにおいて実現される。
【0030】
ビデオ・ストリームの「移動不変性」は多くの方法で算出されることが可能であるが、最も一般的な(かつ有効な)既知の技術のうちの1つは「ブロック動き検知」と呼ばれる。送り手から受信器に動画フレームのシーケンスを送信する場合、個々の新しいフレームについての信号は2つの部分へと分割されることが可能である。1番目によって、受信器が、ピクセルのブロックを以前のフレームから新たなものへと写像する動きベクトルの集合から近似フレームを作製することが可能になっている。この近似フレームに対して後に行なわれる更新は、「残差フレーム」として送信されることが可能である。これには、通常、より大きな帯域幅が必要である。このシミュレーション・データのための残差データを算出および保存することは、ステップ306において実行されることが可能である。
【0031】
「ウェーブレット」として知られている数学的な概念は、ブロック動き検知、そしてデータ圧縮を可能にするのに非常に有用なツールである。ウェーブレットは正式には、関数をコンパクトにサポートするための原理であり、その係数は、信号を、ウェーブレット系列(wavelet series)を定義する形状関数で畳み込むことによって決定される。時系列信号についての標準的なウェーブレット圧縮方程式は以下の通りである。
【数1】

【0032】
ここで、s(t)は信号、またはt(時間)で圧縮される予定のデータの完全な集合であり、Ψは形状関数であり、aはスケール(圧縮された結果のウェーブレットの大きさ)であり、bは変位であり、Ca,bは、結果得られるウェーブレット係数である。これを達成するためのソフトウェア、例としてアメリカ、マサチューセッツ州のMathWorks社によって製造された「MATlab」シミュレーション製品が、利用可能である。
【0033】
圧縮アプリケーション206の実現は、インデックス・データの特性/次元に対応する、より高い(非時間)次元でのデータ圧縮を可能にするために、画像圧縮のための動きベクトル検知によって可能になっている圧縮を拡張することおよびその結果のインデックス付けに基づくことができる。これによって、各次元用に(数値積分法をサポートするあらゆる形態の空間用に)カスタマイズされることが可能な形状関数に基づいた、任意の次元空間用の移動不変性を持って圧縮することができる。したがって、動き検知技術が用いられて、数値シミュレーション・データ内の特徴(の変化)を追跡することができる。領域に固有(domain-specific)の形状関数(Ψ)は、あらゆる所与の次元について用いられることが可能である。最新のウェーブレット関数が本質的に「滑らかで」あるので、「鋭い特徴」を捕らえる方法が工夫されることが可能である。そのような関数は、それに関連付けられている変位および回転ベクトルを備えた3Dエッジを有し得る。通常の空間への投影のような近似が圧縮技術内に埋め込まれてもよい。
【0034】
ステップ308において、インデックス・データが圧縮データに関連付けされる。これを行なう幾つかの方法があることが認識されるであろう。図3Aの表は1つの方法であるが、代案はインデックス・データを圧縮データ214内に埋め込むことであろう。同様のやり方で他のシミュレーション・データ・セット/ファイルを処理するためにステップが繰り返されることが可能であることが理解されるであろう。
【0035】
ステップ310乃至312は、随意的なものであって、圧縮されたインデックス付けされたデータをどのように用いることができるかを実例で示している。ステップ310において、1つの圧縮されたインデックス付けされたデータ・セットと少なくとも1つの別の圧縮されたインデックス付けされたデータ・セットとの間の写像を表すデータが生成される。この写像データは、動きベクトルの形態であってもよいし、または例では場の表現(すなわち、粗い形態のメッシュ上での各頂点についての動きベクトルを保存し、次いでその値を中間値で補間する)であってもよい。この写像データはデータ・セット相互間の違いおよび(または)相関性を記憶することが可能である。
【0036】
そのような写像データは様々な用途に配されることが可能である。例えば、一連の詳細なシミュレーション・データ・ファイル内の最初のデータ・セットが、後のシミュレーション・データ・セットと比較されることが可能である。このことは、(実質的に完全な形の)初期データをこの初期データと後続のデータ・セットとの間の違いを記述する写像データとともに保存することによって、保存されている違いに従って初期データ・セットを修正することによって後のデータ・セットを実質的に再構成することが可能になることを意味している。このプロセスは、詳細なシミュレーション・データ内のさらなる後のデータ・セットについて繰り返されることが可能である。他の使用法は、データ・セット相互間の相関性を見つけること、および処理されたシミュレーション・データ・セット内のデザイン特徴を加える/修正する影響をシミュレートする/見積もることを含んでいる。(わずかに高いマッハで移動する特定の航空機のような)後のシミュレーションが生成されることが可能である。また、未加工のシミュレーション・データ・ファイルが同じ迅速なプロセスの対象にされることが可能である。そして、シミュレーション相互間のフローの相関されている領域を写像する動きベクトルの集合を生成することができる。これは、フローが何であるか、または衝撃波が例えば残りの流れに対して何を意味するかについての理解には依存しない。しかしながら、それは、既存のシミュレーションに対する変化の影響、およびさらに変化の組合せの影響をも予測する際に強力なツールとなる可能性を秘めている。本方法によって生成されるデータのそのような用途のさらなる詳細な例が、次に与えられる。
【0037】
図4のステップ402において、詳細なシミュレーション・データD1の第1のセットが上記のステップ302と同様の方法でアプリケーションにロードされる。ステップ404において、詳細なデータD2の第2のセットがロードされる。このデータはD1と同じタイプの次元を含むことができるが、実験的な測定または別のソース(例えば代替的なシミュレーション・データ生成アプリケーション)の結果とすることが可能である。したがって、図4のプロセスの1つの用途は、乗り物のある具体的なデザインに関する流体の流れについてシミュレーション・アプリケーション(例えば204)によって生成されたデータの精度を、この乗り物に関する物理的テストの最中の実際の流体の流れを示す経験的なデータと比較することであり得る。
【0038】
ステップ406において、動きベクトルおよび残差データが、D1とD2の間の差を示すデータを生成するために、それらの圧縮およびインデックス付けに続いて、評価される。ステップ408において、シミュレーション・データD1を、別のデータD2に照らして修正する地図が、動きベクトルを用いて生成される。随意的に、ステップ410において、D1とD2の間の大きな相違に、再考のために、フラグが立てられたり、この相違が記録されたりすることが可能である。
【0039】
図5は、動きベクトルおよび(例えばステップ310乃至312の結果として保存されている)残差データを用いて、対応する流れ場を表示するために行なわれることが可能なステップを示している。ステップ502において、502のベースライン形状(geometry)と動きベクトルおよび残差データが、物体に関する流れ場の画面表示を生成することを意図されているアプリケーションにロードされる。
【0040】
ステップ504において、ユーザは、インターフェースを介してデータを入力してパラメトリック設計空間内の関心領域(例えば乗り物の翼端のような特定の特徴)を決める。ステップ506において、ユーザによって特定された関心領域に対応するこのパラメトリック設計空間における動きベクトルおよび残差が、上記と同様の方法で補間される。ステップ508において、動きベクトルを用いて再構成された流れ場が表示される。必要な場合/ユーザによって要求される場合、残差データが加えられてさらなる詳細を提供することが可能である。随意的に、ステップ510において、補間された/外挿された残差データは、ステップ508で表示された場の見込み精度についてユーザに助言する根拠として用いられる。
【0041】
上で言及されている航空機の流れ場シミュレーション・データを用いるこのプロセスの一例は、パラメータの具体的な集合(例えば迎え角=6度、マッハ0.9)についてのフローを迅速にビジュアル化することであろう。人にやさしい画像は、本方法によって、新しいデータ・セットについてのフレーム更新の速度(すなわち、人間が見ることができる速度)で動きベクトルを重ね合せることによって(このことによって、衝撃のようないかなる不連続性も不鮮明にならないだろう)、システムによって生成されることが可能である。データ・セットは不正確になるが、人間のオペレータが動きベクトルによる近似によって一連のパラメータ(対話形式で)を一通り素早くざっと見れば、このオペレータは工学変数設定のある具体的な集合において、例えば翼効率は最大化されるが衝撃によってナセル/パイロンの接合部が影響を受けることに依然気づくことができるであろう。この解法は、より詳しく検討する価値があり、画像修正ベクトルが動画ストリーム内の動きベクトル見積もりの後に適用されるのと同じ方法で、この人間のオペレータは、新しいシナリオの完全なシミュレーションを開始することができる。これによって、データ・ストアがさらに豊かになり、フローの再構成のためにより多くの基準点が提供されるであろう。
【0042】
図6は、流体の流れのシミュレーション・データが生成された対象であるデザインの特徴を修正する影響を見積もるために動きベクトルおよび残差データを用いて行われることが可能なステップを示している。ステップ602において、任意の次元の動きベクトルを伴ったベースライン形状が、シミュレーション・アプリケーションにロードされる。ステップ604において、新しいデザイン特徴を表わすデータが、このシミュレーション・アプリケーションにロードされる。このデータは、形状のCAD記述およびフリーストリーム(freestream)変数(速度、迎え角など)、および(または)インデックス・データ次元についてのデータであり得る。新しい特徴データは、ステップ602でロードされた、より下層の形状データの対応する部分の上に重ね合わせられる。また、対応する流体の流れのシミュレーション・データが生成される。
【0043】
ステップ606において、ステップ604において生成された流体の流れのデータが用いられて、新しい特徴についての流体の流れとステップ602でロードされた元のデータ内の対応する特徴/領域についての流体の流れとの間の差に基づいて、動きベクトルおよび残差データ(上記と同様の技術を用いて)を生成する。
【0044】
ステップ608において、ベースライン形状および(または)物体の実際のシミュレーションに関連している動きベクトルが、新しいデザイン特徴に起因して生じる可能性が最も高い流れ場を見つけるために探索される。このデータは上記の技術を用いて生成されることが可能である。シミュレーションが生成される場合は常に、動きベクトル(および幾つかの残差データ)が、計算されるとともにデータ・ストアに加えられることが可能である。これは、進行中の、領域からは独立した、シミュレーション知識ベースを豊富にすることとして捉えられ得る。この探索は逆の参照が可能であり、動作モードの例は次のものを含んでいる。
【0045】
1. デザインAおよびデザインBについての完全なシミュレーションが、AからBまでの動きベクトル(MV1)およびAへの摂動(perturbation)であるAからCまでの動きベクトル(MV2)とともに生成された。Bへのシミュレーション摂動の影響を見積もることが必要で、これはMV2をBについてのシミュレーションに加えることによって得られる。MV1も修正の形態として用いられることが可能である。
【0046】
2. ある具体的なベースラインAから開始するある具体的な流れ場の影響を達成する方法を考え出すことが望まれる。大量のデータがデザインAに類似しているデザインBの周囲のパラメータ上の調査から集められた。Aの中のフロー領域のある領域が手動で選択されるとともに動きベクトルが入力される。次に、(AからBまでの動きベクトルによって転置された)位置および動きベクトルが、具体的なデザイン変更に起因する動きベクトルに対して相関させられる。次に、最も有望な候補が、調査にふさわしいものとして、設計者に提示される。それらは、設計者がその時に作業を行なっている画像の上に、提案として、重ね合わせられてもよい。
【0047】
3. デザインAがデザインB(そのデザイン空間は、しっかりと調査されている)に類似している。BからAまでの動きベクトルMVが算出され、また、パラメータの変化がAに適用され、B内の同じ変化が参照される(この例におけるAおよびBは同じタイプの設計パラメータによって記述されている)。B内のこのパラメータの変化に対応する動きベクトルMV2が算出され、これらがMVに加えられ、この摂動をAに適用すると起こりそうな結果として表示される。
【0048】
ステップ610において、ステップ608で見つけられた、可能性が最も高い流体の流れに対応する、関心ある情報が表示される。
【0049】
上記の技術によってもたらされる利点の例は、莫大な量の数値シミュレーション・データ(例えば計算上の流体の力学データ)の任意の精度への圧縮、忠実度の劣るシミュレーション・プロセスへのヒューマン・インターフェースを促進するために補間されたか再構成されたデータ、多面的なトレード研究(trade studies)を見積もるための製品定義(例えばCAD形状)とそれに関連する流体物理学との間の数学的なリンク(写像)の構築、を含んでいる。
【0050】
1つの実際的な例として、計算流体力学(CFD)データ(シミュレーション当たり10GB)の完全な場の定常状態の集合が、評価が計3000回の実験デザインで20次元のデザイン空間(翼弦、厚さ、スイープ角度、クランク位置など)について生成された。このデータ(30TB)を、完全バックアップを行なう商用システム上で保存するのは高価であろう。例えば£20K/TB/年の割合では、1年当たり£600Kの費用という結果になる。しかしながら、設計の目的でプロセスを再度後処理するのに十分な精度を備えたデータの圧縮された形態が、代わりに格納されることが可能である。例において、20次元が圧縮軸として用いられ、また、完全データ・セットについてのブロック動きベクトルおよびウェーブレット係数を見積もるために(必須ではないが、積分が直線的に算出され得るので)分散型コンピューティングが用いられる。流体の流れの特徴は1つのシミュレーションと次のものとの間で(形状の変化に連れて)領域内で変化しているが、ウェーブレットは効率的にそれらの移動を追跡することができる。10:1で後処理するのに容認できる損失の圧縮が達成でき、したがって、毎年の記憶装置の新たな費用は1年で£60Kになるであろう。
【0051】
上記のものに類似の別の例において、設計者は、デザインの決定に伴ってフローの変化の仕方の「感触を得る(get a feel)」ためにデザイン空間を視覚的に検討することを望んでいる。圧縮比は今回は100:1であり得、したがって、データ保存費用は1年当たり£6Kに落ちるであろう。さらに別の例において、良好に検証された以前のデザイン用の係数Cの既存のセットがあるとする。新製品に対するデザインの選択の影響が評価される必要がある。新製品を記述するウェーブレット係数を旧製品と相関させることが可能で、実際、圧縮は、設計者の「暗黙の(tacit)知識ベース」の「記憶(memory)」であるとみなされることが可能である。
【図面の簡単な説明】
【0052】
【図1】シミュレーション・アプリケーションによって生成された、航空機用の外部航空力学のグラフ表示である。
【図2】シミュレーション・データを用いたり保存したりするように構成されているコンピュータおよび記憶装置を概略的に示している。
【図3】インデックスを付された圧縮されたデータを生成するためにコンピュータによって実行されるステップを概略的に示している。
【図3A】インデックス・データの概略的な例示である。
【図4】データの集合を相関させるためにデータ圧縮アプリケーションによって実行されるステップを概略的に示している。
【図5】シミュレーション・データを表示するためにシミュレーションおよび(または)データ圧縮アプリケーションによって実行されるステップを概略的に示している。
【図6】新しいデザイン要素の影響をシミュレートするためにシミュレーションおよび(または)データ圧縮アプリケーションによって実行されるステップを概略的に示している。

【特許請求の範囲】
【請求項1】
時間以外の少なくとも1つの次元上で規定されている特徴を記述するデータ・セットを得ることと、
前記少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データを得ることと、
前記データ・セットを圧縮することと、
前記圧縮されたデータ・セットを保存することと、
前記圧縮されたデータ・セットが前記インデックス・データによって特定されることができるように前記インデックス・データを前記データ・セットに関連付けることと、
を具備する、多次元データにインデックスを付ける方法。
【請求項2】
前記データ・セットが、物体に関する流体の流れを表わす計算流体力学(CFD)シミュレーション・データのような計算シミュレーション・データを具備する、請求項1の方法。
【請求項3】
前記インデックス・データが、シミュレーションにおける移動物体に関する工学用語(例えば翼幅、車輪数、棒の太さ、前記移動物体の(例えばマッハ数で表現された)速度、材料タイプ)を含み、
前記設計用語が、前記データ・セットの非時間次元のうちの1つに対応している、
請求項2の方法。
【請求項4】
前記インデックス・データが、前記流体の流れに関連する流れ場の用語(例えばよどみ点、渦、境界層特性、衝撃波)を含んでおり、
前記流れ場の用語が、前記データ・セットの非時間次元のうちの1つに対応している、
請求項2または3の方法。
【請求項5】
前記方法が複数の前記データ・セットに適用されることによって、複数の圧縮されたデータ・セットを得て、
前記圧縮されたデータ・セットの各々が前記インデックス・データのそれぞれと関連付けられている、
請求項1乃至4のいずれか1項の方法。
【請求項6】
前記データ・セットを圧縮することが、
前記データ・セットを背景(例えばデカルト平面)メッシュ上に補間する工程と、
前記非時間次元のうちの1つに基づいたウェーブレット関数(次元が特定された形状関数)を用いて前記補間の値をウェーブレット係数へと分解する工程と、
前記ウェーブレット係数を保存する工程と、
を具備する、請求項1乃至5のいずれか1項の方法。
【請求項7】
第1の前記圧縮されたデータ・セットと第2の前記圧縮されたデータ・セットとの間の関係を記述する写像データを生成することをさらに具備する、請求項1乃至6のいずれか1項の方法。
【請求項8】
前記写像データが、前記第1のデータ・セットと前記第2のデータ・セットとの間の変化を前記データ・セットが規定されている次元の少なくも1つの点において記述する動きベクトルの形態である、請求項7の方法
【請求項9】
前記写像データを分析して前記第1、第2のデータ・セットの間の差を特定することをさらに具備する、請求項7または8の方法。
【請求項10】
時間以外の少なくとも1つの次元上で規定されている特徴を記述するデータ・セットを得るように構成されている装置と、
前記少なくとも1つの非時間次元に対応する少なくとも1つの値を具備するインデックス・データを得るように構成されている装置、
前記データ・セットを圧縮するように構成されている装置と、
前記圧縮されたデータ・セットを保存するように構成されている装置と、
前記圧縮されたデータ・セットが前記インデックス・データによって特定されることができるように前記インデックス・データを前記データ・セットに関連付けるように構成されている装置と、
を具備する、多次元データにインデックスを付けるように構成されているシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

image rotate

【図3A】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公表番号】特表2009−532710(P2009−532710A)
【公表日】平成21年9月10日(2009.9.10)
【国際特許分類】
【出願番号】特願2009−517448(P2009−517448)
【出願日】平成20年5月29日(2008.5.29)
【国際出願番号】PCT/GB2008/050388
【国際公開番号】WO2008/149135
【国際公開日】平成20年12月11日(2008.12.11)
【出願人】(390038014)ビ−エイイ− システムズ パブリック リミテッド カンパニ− (74)
【氏名又は名称原語表記】BAE SYSTEMS plc
【Fターム(参考)】