JP2005501314A - 複雑なデータ分析及び工学的設計で使用するためのハードウェア適応可能データビジュアリゼーションツール - Google Patents
複雑なデータ分析及び工学的設計で使用するためのハードウェア適応可能データビジュアリゼーションツール Download PDFInfo
- Publication number
- JP2005501314A JP2005501314A JP2002591917A JP2002591917A JP2005501314A JP 2005501314 A JP2005501314 A JP 2005501314A JP 2002591917 A JP2002591917 A JP 2002591917A JP 2002591917 A JP2002591917 A JP 2002591917A JP 2005501314 A JP2005501314 A JP 2005501314A
- Authority
- JP
- Japan
- Prior art keywords
- data
- module
- visualization
- viewer
- hardware
- 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
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0267—Fault communication, e.g. human machine interface [HMI]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Processing Or Creating Images (AREA)
- Devices For Executing Special Programs (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
解釈されるデータの特徴を表す数値データを提供するためのデータソースモジュール(11)と、該数値データ等を解釈する上でユーザに役立つ完全に没入した視界またはより制限されたビューなどの該数値データセットのビューを提供するために該数値データに応答するビューアモジュール(12)とを含む、データソースからのデータを視覚化する際に使用するためのハードウェア適応可能データビジュアリゼーションツール。
【選択図】図2
【選択図】図2
Description
【技術分野】
【0001】
本発明は、複雑なデータ分析及び工学的設計において使用するためのソフトウェアアプリケーションに関し、さらに特定するときわめて適応性のあるアプリケーションに、局所的にあるいは分散して一連のグレードの計算装置で容認できるように機能し、指定されたハードウェア構成でアプリケーションのユーティリティを最大限にすることができる構成要素を提供できるようにこのようなアプリケーションのモジュールのグループ化を適応させることに関する。
【背景技術】
【0002】
ビジュアリゼーション技法をデータ集約型タスクと分析に対して適用することは、一般的には、データの理解及び(設計決定を下すなどの)データ依存型タスクの完了を容易にする目的で有効である。ここでは、用語「ビジュアリゼーション」は、数値データをコンピュータソフトウェアによって生成され、ソフトウェアユーザによって表示されるグラフィックオブジェクトに変換することを指す。
【0003】
さまざまな色をさまざまなオブジェクト、オブジェクト動画、または類似する技法に適用することは、パターン認識及びデータの理解につながる他の知的な合図においてソフトウェアユーザを補助する。
【0004】
データ集約型タスクの一例は、ユーティリティボイラーなどの燃焼プロセス用の公害防止システムの工学的設計である。ボイラーは、熱交換器を介して(水などの)作動流体によって吸収される熱を生成するために燃料を燃焼する。理想的には単に二酸化炭素と水にすぎない燃焼の生成物は、つねに、一部は望ましくなく汚染という形と見なされる他の生成物も含有する。汚染生成物の1つの特定のクラスは多様な窒素−酸素化合物(NOx)を含んでいる。このような汚染のエミッションを削減するために、ボイラーは、燃焼生成物に、それらがボイラーから排出される前に、汚染する副産物と反応し、二酸化炭素と水または他の良性の最終生成物のどちらかを生じさせる化学品を追加することを可能にするように作られている。この点については、参考のためにこれにより示される、Lyonに対する米国特許第3,900,554号、Arandらに対する米国特許第4,208,86号、Epperlyらに対する米国特許第4,777,024号、及びEpperlyらに対する米国特許第4,780,289号を参照すること。
【0005】
例えば、図1は、燃料が酸素と応答する(つまり燃焼される)バーナーセルの中に燃料を導入する燃料噴射器を有するバーナーを含むボイラーを示している。
【0006】
セル領域内の温度は通常華氏2200度から2600度に達する。このような範囲の温度では、室温ではともに2原子分子の形を取る空気中の窒素と酸素の両方とも遊離基に分かれ、1つまたは別のNOx化合物を形成するために応答する。
【0007】
水溶液中の尿素(CON2H0)はバーナーセル内の温度よりいくぶん低い温度では安定しているが、通常華氏約1800度と1950度の間のさらに低い温度ではNOxと反応し、前述された特許に説明されるように、不活性窒素(N2)、二酸化炭素、及び水を生成する。したがって、最新のボイラーは、水性の尿素をボイラーの中に導入する1つまたは複数のノズルなどの噴射器を備えている。所望される効果をあげるためのこのような尿素噴射器ノズルを使用する尿素の導入のために、ノズルは適切に設置しなければならず、特定のサイズ範囲で、及びボイラーのジオメトリに応じて特定のモーメント範囲のあるモーメントで尿素/水の小滴を生じさせるような設計でなければならない。尿素濃度、流量、使用される特定のノズル、ボイラー荷重等の他の要因も制御されなければならない。
【0008】
1つまたは複数の尿素ノズルをどこに最良に設置するのかを決定し、燃焼プロセスが依存する他の要因をどのようにして制御するのかだけではなく、どのノズルを使用するのかも決定するためには、通常、ボイラーは図1に図示される場所だけではなく、バーナーセルの壁の中、及び尿素が噴射されるだろう領域の中にも熱交換器を含むため、ボイラーの構築様式のためにあるノズルまたは別のノズルをある場所から別の場所に移動するにはボイラーの広範囲な改造が必要となるという点を除き、物理的なシステムでの試行錯誤が適切である可能性がある。実際、要因の多くは相互に関連している。つまり、1つを変更すると、他の1つまたは複数を変更することが必要になる。したがって、ノズルをある場所から別の場所に移動するには、ボイラーの壁の中の熱交換器の構造の大幅な改造が必要となるため、ボイラーの中に尿素を噴射するために使用されるあらゆるノズルの位置の選定は、物理的なシステムでの試行錯誤を使用して、後でではなく、ボイラーを設計するプロセスの中で有利に行われる。
【0009】
したがって、従来の技術は(つまりボイラー設計の一部として)ボイラーの中に1つまたは複数の尿素のズルを作りこむこと、あるいは1つまたは複数の尿素ノズルを含むようにボイラーを改造し、――いずれのケースでも――計算の集合に基づきノズルの設置を今回限り決定することのどちらかを教示している。この例に必要とされる計算は、計算上の流体力学モデリングソフトウェアの使用を必要とし、モデリングソフトウェアは、入力として、物理システムの数値記述と、システム内の燃料と他の質量流量の特性を取り、次に各セルの中あるいはモデルの各ノードで(温度、速度、化学種濃度等の)変数の値を表す数値データセットを出力する。出力データセットは、例えば、適度の12個の変数を計算、記憶する100×20×40セルモデルの場合約100万データ値など、大きい。
【0010】
考えられるノズル場所及び構成で無作為に計算を実行する(物理システムの代わりでコンピュータモデルでの試行錯誤)よりむしろ、結果を視覚化できるような方法で計算を実行することが技術では既知である。このような設計方法論においては、パラメータの初期の集合に対応する計算が実行され、それからユーザにはボイラーの中で発生する燃焼プロセスのグラフィック表現(つまりビュー)が提示される。提示されるビューから、ユーザは、尿素のさらに高い/さらに低い濃度、さらに高い/低いフィード圧、尿素ノズルの別の場所、または異なる種類のノズルに変更することが有利かどうかを確かめることができる。次に、ユーザは所望される変更を加え、新しいデータセットの計算を再計算し、変更されたパラメータの集合の結果を表示し、少ない数の反復で実行可能な設計の決定に達することができる。
【0011】
この方法論、つまり複雑なデータの理解及び設計タスクの完了を容易にするためにビジュアリゼーションを使用することは、代わりに指定アプリケーションを実行するために必要なコンピュータハードウェアの精密化によって制約を受けるビジュアリゼーションソフトウェアの機能及び特徴によって制約を受けている。
【0012】
【特許文献1】
米国特許第3,900,554号公報
【特許文献2】
米国特許第4,208,86号公報
【特許文献3】
米国特許第4,777,024号公報
【特許文献4】
米国特許第4,780,289号公報
【発明の開示】
【発明が解決しようとする課題】
【0013】
一般的にバーチャルリアリティ(VR)ビジュアリゼーションとして知られている最も情報が豊富なビジュアリゼーション環境は、最低でも、「VR世界」でのユーザの立体写真投射(stereo projection)または没入のための高度なグラフィック機能と特殊化されたハードウェアを備えた高性能ワークステーションを必要とする。このようなハードウェア構成は高価且つ収益性が低いため、削減された機能セットのより計算上集約的ではないビジュアリゼーションソフトウェアがさらにローエンドなハードウェアで実行するために存在している。従来の技術は、ビジュアリゼーションソフトウェアが特定のクラスのハードウェアのために開発、最適化されてきたことを教示している。VR様式のビジュアリゼーションソフトウェアはローエンドのハードウェアにリバースエンジニアリングすることが可能であり、非VRビジュアリゼーションソフトウェアも同様に高性能ハードウェアに改良することができ、幅広い範囲のハードウェアと動作構成(局所対分散)に迅速に適応できる単一のモジュラーソフトウェアアーキテクチャの設計は新規であり、必要とされている。
【0014】
加えて、必要とされているのは(例えばオフィス環境においてなど)高性能ハードウェア構成でVRスタイルのビューアでデータセットを表示しているユーザと、(例えばフィールドに持ち出された携帯型システムなど)さらにローエンドのハードウェア構成で非VRビューアに同時に同じデータセットを表示している他のユーザとの間の協力を可能にするソフトウェアシステムである。理想的には、このようなソフトウェアシステムのモジュールは、異なるターゲットホストコンピュータの変化するパフォーマンスケイパビリティに対処する方法として、さまざまな方法でリンクする(実行可能ファイルの中に結合する)ことが可能だろう。また、モジュールは、理想的には、前述された方法論、つまり複雑なデータの理解及び設計タスクの完了を容易にするための視覚化の使用における計算タスクと視覚化タスクを同時に実行できるようにリンクすることが可能だろう。
【課題を解決するための手段】
【0015】
したがって、本発明は、視覚化されるジオメトリについての情報を示すデータソース入力ファイルに応答して、データの特徴を表す数値データセットを、解釈されるデータのストリームとして提供するためのデータソースモジュールと、数値データセットを解釈する際にユーザに役立つ数値データセットのビューを提供するために数値データセットに応答してデータソース入力ファイルを提供するためのビューアモジュールとを含む、データソースからのデータを視覚化する際に使用するためのハードウェア適応可能なデータビジュアリゼーションツールを提供し、そこではビューアモジュールは、複数のビューアコンポーネントモジュールを備え、ソースモジュール及びビューアコンポーネントモジュールはコンパイルされ、所定の1つまたは複数のターゲットホストのパフォーマンスケイパビリティまたは実行可能ファイルの所望されるユーティリティの少なくともどちらかを含む要因に応じて1つまたは複数の実行可能ファイルにともにリンクされ、当該コンポーネントモジュールは所定の1つまたは複数のホストとは実質的には関係のないプログラミングインタフェースを有し、それによりさまざまなビジュアリゼーションツールはすべてが同じデータソースモジュールとビューアコンポーネントモジュールから提供されることができ、異なるビジュアリゼーションツールは異なるターゲットホストの異なるパフォーマンスケイパビリティに合わされる様に構成される。
【0016】
本発明の追加態様においては、ビューアコンポーネントモジュールは以下を含む。つまり、ビューアコンポーネントモジュールが、表示されている領域に対応する境界に関するジオメトリを記述するジオメトリ情報に応答し、ジオメトリ情報及び(どのグラフィックを表示するのか、及びどのようにグラフィックを表示するのかを示し、イマーシブビューにおけるユーザのビューの位置と方向も示す)関連する表示特性の変化に応答して、表示されている領域の境界の表示、及びジオメトリについての情報を含むデータソース入力ファイルを提供するためのジオメトリマネージャと、ユーザツールコントロールと入力に応答してジオメトリ及び関連する表示特性に対する変化を提供し、ビジュアリゼーションオブジェクトのグラフィック表示に関連する表示特性を提供し、数値データセットのビュー(表示、view)を提供するための情報を示すフライト計画を提供するためと共に、要約データにも応答し、さらに要約データのグラフィック出力を提供する、データビジュアリゼーションツールのユーザがビューを要求するか、あるいは対象物を表示する事を要求する手段としての役割を果たすインタフェースモジュールと、フライト計画または他の標準化された命令を維持すると共に、当該フライト計画に応答して、フライト計画と関連する表示特性に変化を提供する自動化/スクリプトモジュールと、表示特性に対する変化に応答して数値データセットに含まれる情報を表す動的ビジュアリゼーションオブジェクトを検索し、記憶し、及び表示し、要約数値データに応答して要約数値データを提供し、ビジュアリゼーションデータに応答して、かつビジュアリゼーションオブジェクトのグラフィック表現を提供するビジュアリゼーションオブジェクトクライアント/グラフィックモジュールと、グラフィックオブジェクトを生成し、ついで当該データに応答してグラフィックオブジェクトを生成し、生成されたグラフィックオブジェクトを提供するビジュアリゼーションオブジェクトサーバと、数値データセットを標準フォーマットした後に視覚化のためのデータに変換し、且つ視覚化のため当該データを提供する補助計算モジュールセットと、さまざまなデータソースプログラムデータ構造を標準アプリケーションプログラミングインタフェースに変換し、したがって数値データセットに応答してさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にするため、標準フォーマットに従って数値データセットを提供するための照会ライブラリモジュールとを備え、更に当該データソースモジュールが計算可能な流体力学(CFD、computational fluid dynamics)モジュールなどのカルキュラトリデータソースモジュールまたは実験若しくは経験等によって得られるデータ(empirical data)のさまざまなソースなどからなる1つまたは別のノンカルキュラトリデータソースモジュールのどちらかである請求項1に主張される1つのハードウェア適応可能データビジュアリゼーションツールを含む。
【0017】
本発明の追加の態様においては、データソースモジュールは計算可能な流体力学(CFD)モジュールである。
【0018】
本発明の別の追加の態様においては、ビューアコンポーネントモジュールのすべてはコンパイルされ、単一の実行可能ファイルにともにリンクされ、データソースモジュールは別個の実行可能ファイルにコンパイルされ、それにより計算に最も適した計算装置がデータソースモジュールのホストとして使用でき、又データソースモジュールにより提供されるデータストリームを解釈する上で役立つビューを提供するのに最も適した計算装置がビューアのホストとして使用できる、データビジュアリゼーションツールが提供される。
【0019】
本発明のまだ別の追加態様においては、データソースモジュールは単一の実行可能ファイル、照会モジュール、トラックパックモジュールの中にともにリンクされ、ビジュアリゼーションオブジェクトサーバモジュールはコンパイルされ、単一の実行可能ファイルの中にともにリンクされ、ビューアモジュールの他のコンポーネントモジュールはコンパイルされ、ともに単一の実行可能ファイルの中にリンクされ、それにより最高3つの異なったターゲットホストに亘って分散されるデータビジュアリゼーションツールがネットワーク及び/またはファイルシステムを介して通信する。
【0020】
本発明のさらになお別の追加態様においては、データソースモジュール、追跡調査モジュール、及び照会モジュールはコンパイルされ、1つの実行可能ファイルの中にともにリンクされ、それにより噴霧軌道に関する情報または実行中のデータソースモジュールに対するソースターム入力のための基礎として使用される他の類似した情報を生成するために追跡調査モジュールの使用を可能にし、どのようにコンパイルされ、リンクされているのかに関係なく残りのモジュールがビューアを形成する。
【0021】
本発明のまだなお別の追加の態様においては、ビューアコンポーネントモジュール及びデータソースモジュールのすべてはコンパイルされ、単一の実行可能ファイルの中にともにリンクされ、それにより当該モジュール計算を実行し、データソースモジュールの計算結果を制御する際に、データソースモジュールの中間結果を検査する機能を備えたビューアを提供する。
【0022】
本発明の別の追加態様においては、ビジュアリゼーションツールは流体力学システムの分析及び工学的設計のために使用され、追跡調査モジュールによって提供される視覚化のためのデータは粒子軌道データであり、加えて、データソースモジュールは流体力学システムのジオメトリに関するデータに応答し且つ解釈されるべきデータのストリームとして、流量を表す数値データセットを提供するCFDモジュールであり、又ビューアモジュールは、流量を表す数値データセットに応答し、更に流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ、完全な没入型の環境(fully immersive environment)と言うような環境における流量をあらわす数値データセットのビューも提供する。この点における本発明の更なる追加の態様においては、データソースモジュール、照会ライブラリモジュール、追跡調査モジュール、及びビジュアリゼーションオブジェクトサーバはすべてコンパイルされ、1つの実行可能ファイルにともにリンクされ、他のモジュール、つまり主要ビューアモジュールはすべてコンパイルされ第2の実行可能ファイルにともにリンクされ、ビューアはネットワークリンクを介してデータソースモジュールに接続され、それによって、データソースモジュールが計算を実行する時に当該データソースモジュールに於ける中間結果を検査する事が出来る様に構成され、且つ当該データソースモジュールが計算を実行する時にその計算を制御する事が可能に構成されている。
【0023】
本発明のまだなお別の追加態様においては、ビジュアリゼーションツールは、反応の流れが発生する流体力学システムの分析及び工学的設計のために使用され、加えてデータソースモジュールは流体力学システムのジオメトリに関するデータに応答し、さらに反応する流れに加えられる反応種のソースに関するデータに応答するCFDモジュールであり、解釈されるデータのストリームとして、流れ及び反応する流れの他の特性を表す数値データセットを提供し、ビューアモジュールは流れ及び反応する流れの他の特性を表す数値データセットに反応し、流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境の様な環境に於ける流れ及び反応する流れの他の特性を表す数値データセットのビューも提供する。
【0024】
本発明のさらにまだ別の追加の態様においては、ビジュアリゼーションツールは公害防止システムなどの目標とされる炉内噴射システムを設計する際に使用するため、又燃焼プロセスを制御するために使用される燃焼生成物と反応する種を燃焼プロセスの中に導入するための特別な機能であり、これに加えて、データソースモジュールは特別な機能を含む燃焼システムのジオメトリに関するデータに応答し、さらに燃焼プロセスに追加される反応する種のソースに関するデータに応答する計算可能な流体力学(CFD)モジュールであり、解釈されるデータのストリームとして燃焼プロセスの流れ及び他の特性を表す数値データセットを提供し、ビューアモジュールは燃焼プロセスの流れ及び他の特徴を表す数値データセットに応答し、当該特別な機能を含む燃焼システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境と言う様な環境で燃焼プロセスの流れ及び他の特性を表す数値データセットのビューも提供する。
【0025】
本発明のさらになお別の追加の態様においては、ビジュアリゼーションツールは、2つの異なるビューアモジュールを含み、一方のビューアモジュールのホストは第1のコンピュータによって制御されるものであり、他方のビューアモジュールのホストは第2のコンピュータよって制御されるものであり、ビューアモジュールは同じモデルデータを使用する。
【0026】
本発明のまだ別の追加の態様においては、ビューアコンポーネントモジュールは、表示されている領域に対応するジオメトリの境界を説明するジオメトリ情報に応答し、ジオメトリ情報と関連する表示特性の変化に応答して、表示されている領域の境界の表示を提供し、及びジオメトリについての情報を含むデータソース入力ファイルを提供し、及び数値データセットの中の情報を表す動的ビジュアリゼーションオブジェクトを検索し、記憶し及び表示し、それによって表示特性に対する変化に応答出来、且つ要約数値データにも応答し、要約数値データを提供し、ビジュアリゼーションデータに応答し、ビジュアリゼーションオブジェクトのグラフィック表現を提供するためのデータビジュアリゼーションモジュールと、データビジュアリゼーションツールのユーザがビューを要求するか或いはオブジェクトを表示することを要求する手段としての役割を果たすインタフェースモジュールであり、ユーザツール制御と入力に応答し、ジオメトリとそれに関連する表示特性に対する変更を提供し、ビジュアリゼーションオブジェクトのグラフィック表現と関連つけられる表示特性を提供し、及び要約データにも応答し、更に要約データのグラフィック出力を提供し、さらにフライト計画または数値データセットを表示するための他の標準化された命令を維持し、フライト計画に関連付けられる表示特性に対する変更を提供するためのインタフェースシステムモジュールと、グラフィックオブジェクトを生成するためのデータに応答し、グラフィックオブジェクトを生成し、生成されたグラフィックオブジェクトを提供し、及び標準フォーマットの後に数値データセットを視覚化のためのデータへの変換し、視覚化のためのデータを提供するためのデータ解釈モジュールと、さまざまなデータソースプログラムデータ構造を1つの標準アプリケーションプログラミングインタフェースに変換し、したがってさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にし、数値データセットに応答し、標準フォーマットに従って数値データセットを提供するためのデータ変換モジュールとを備え、データソースモジュールは、計算可能な流体力学(CFD)モジュールなどのカルキュラトリデータソースモジュール、あるいは実験或いは経験等によって得られるデータのさまざまなソースなどの一つ或いはその他のノンカルキュラトリデータソースモジュールのどちらかである。
【0027】
本発明の前記及び他の目的、特徴及び優位点は、添付図面に関連して提示される以後の詳細な説明を考慮することから明らかになるだろう。
【発明を実施するための最良の形態】
【0028】
例えばCFDまたは他の計算ツールに基づくだけではなく、実験によって得られるデータ(例えば、販売データや他の業務データ)のソースなどの計算ツールではないデータソースにも基づいてモデル計算によって提供されるデータのストリームを解釈する際にユーザを補助するために、及び計算装置の一連のパフォーマンスケイパビリティに従ってそれを行うために、本発明はソフトウェアモジュールの本質的に同じ集合から、さまざまな計算装置に合わせられているさまざまなデータビジュアリゼーションツールを開発する手段を提供する。
【0029】
ここでは、本発明は窒素酸化物化合物(NOx)のエミッションを削減するために(蒸気を生成するために使用される)ボイラー用の尿素噴射器を設計するという点で説明される。特に、本発明は、燃焼生成物の流れの中に尿素を噴射する効果を含む、このようなボイラーの中で燃焼プロセスをモデル化するためにCFDを用いた視覚化を使用するという点で説明されるだろう。しかしながら、下記から明らかになるはずであるように、本発明の何も本発明により提供されるデータビジュアリゼーションツールがCFDを使用する燃焼プロセスのモデル化に、あるいはボイラーのために尿素噴射器システムを設計することに制限されることを必要としていない。本発明は、任意のソースからの複雑なデータを視覚化し、前記視覚化から設計決定に達する上で使用するために後述されるようなツールを提供することを包含する(本発明のわずかにより一般的な用途とは、目標とされる炉内噴射システムの設計の用途であり、燃焼方式のための公害防止システムを含むだろう)。
【0030】
ここで図2を参照すると、好適実施形態において、本発明は、ターゲットホストに適切なデータビジュアリゼーションツールを提供するためにさまざまな方法でともにリンクされる本質的に同じモジュールの集合を備えている。該モジュールの集合は、好適実施形態において、1つまたは別のソースモジュール11と、組み合わされてビューアスーパーモジュール12としての役割を果たす他のモジュールのすべてを含んでいる。データソースモジュール11は、データストリームを解釈する際にユーザを補助することを目的としたフォーマットでビューを提供するためにビューア12によってユーザに提示されるデータストリームを生成し、1つのフォーマットは高性能ターゲットホストのケースで使用されるイマーシブビュー(immersive view)である。該データソースモジュールは単一のモジュールである場合もあれば、さまざまなデータを提供するモジュールの集合の場合もある。ビューア12は、ターゲットホストのパフォーマンスケイパビリティに応じて類似する機能性の他のモジュールによって置換される1つまたは複数のモジュールを含む。具体的には、ビューア12は、ターゲットホストに応じて違うふうに実現されるいわゆるインタフェースモジュールを含む。後述されるように、ターゲットホストに応じてモジュールをスワップアウトすることに加え、ビューアモジュールと(説明されている実施形態のCFDモジュールなどの)データソースモジュールの両方を含む本発明のモジュールは、さまざまなターゲットホストコンピュータの変化するパフォーマンスケイパビリティ及びシステムの異なる所望されるユーティリティに対処する方法として1つまたは複数の実行可能ファイルを作成できるようにさまざまな方法でリンクすることができる。
【0031】
第1のビューア:デスクトップビューア
依然として図2を参照すると、ビューア12の1つの実施形態は、ここでは、適度な処理能力の計算装置での実行に適切であるデスクトップビューアと呼ばれる。つまり、インタフェースモジュールは、標準的な性能のパーソナルコンピュータに適切なビューアを提供できるように実現されている。(適度な処理能力の)ホストコンピュータで表示できないグラフィックオブジェクトは、デスクトップビューアインタフェースモジュールを通して要求することはできない。
【0032】
デスクトップビューアは標準的なウィンドウ型インタフェースを使用する。例えばCFDモデルドメインの視野透視(viewing perspective)と規模は単純なマウスの移動とボタンの組み合わせによって変更できる。マウスをクリックするか、あるいはメニューを選択するかのどちらかによって表示されるポップアップウィンドウはモデル変数の外形をオンデマンドで視覚化、制御するために使用される。外形平面の外観は位置だけではなくさまざまなカラースケールにも従って調整できる。モデルドメイン全体で外形を摺動することにより、特定の変数の特性を迅速に選別することができる。デスクトップビューアの流れの軌道はストリームラインツールを使用して表示できる。ツールは、数値モデル化データによって記述されるフローフィールドの中で解放される粒子によって取られる経路を計算し、描画するためにビジュアリゼーションオブジェクトモジュールを使用する。ストリームラインは、ある場所から別の場所に追加、削除、及びドラッグすることができる。ツールは、追加の分析のために各ストリームラインに沿って、時間温度データまたは他の値を抽出するためにビジュアリゼーションオブジェクトモジュール(クライアントモジュールとサーバモジュール)も使用できる。デスクトップビューアは、ユーザがジオメトリ定義を修正し、ブロック特性を指定できるようにする計算モデリング用の入力インタフェースとして使用することもできる。
【0033】
図2で図示されるように、インタフェースモジュール、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュール及びジオメトリマネージャモジュールはディスプレイ装置にグラフィックオブジェクトを送信する。ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールからのオブジェクトは、データセット(ストリームライン、フローインジケータ、外形表面等)に関係する特定のオブジェクトである。インタフェースモジュールのオブジェクトは、ダイアログオブジェクト及びコントロールオブジェクト等を含む。さらにインタフェースモジュールのグラフィック出力は要約CFDデータと関係のあるグラフィックを含む。ジオメトリマネージャのオブジェクトはジオメトリ(壁等)を表す特殊オブジェクトを含む。
【0034】
第2のビューア:VRビューア
デスクトップビューアは多岐に亘るハードウェア構成で実行できるが、さらにローエンドのコンピュータグラフィック機能を使って実行するというニーズのために、提供できるビューにいくつかの技術的な制約が生じる。例えば、デスクトップビューア環境は啓発的であるが、それはイマーシブではない。ハードウェア要件をグラフィックワークステーションの仕様により典型的な要件まで強化することにより、さらに多くの量の動画及びさらに自然で直感的なインタフェースモジュールを使用することができる。このようなモジュールは、同時に動画化するオブジェクトの数を削減すればさらにローエンドなハードウェアで実行するように最適化することもできるだろう。したがって、ビューア12の第2の実施形態、つまりここではいわゆるバーチャルリアリティ(VR)ビューアは、さらに高度な動画性能を目標とする直感的なインタフェースモジュールを使用している。
【0035】
VRビューアはデスクトップビューアと同じモジュールのすべてを使用するが、インタフェースモジュールはさらに高性能のターゲットホストを利用し、特に完全に没入した視界を提供できるように違うふうに実現される。例えば、VRビューアに使用されるビジュアリゼーションオブジェクトモジュールはデスクトップビューアのために使用されるモジュールと同じである。
【0036】
VRビューアを用いると、ユーザはオブジェクトを表示できるだけではなく、モデルドメインの内側で「飛行(fly)」し、環境と対話することができる。デスクトップビューアと同様に、VRビューアは外形平面生成のためのツールを提供し、実際にはそれらの平面を生成するために同じモジュールを使用する。ストリームラインも追加することができ、ユーザは任意のロケーションにナビゲーションし、マウスをクリックして瞬時のストリームライン生成を要求する。しかしながら、VRビューアは動画機能を高めた。ドメインのすべてまたは一部の速度と方向を示す速度と報告を示す速度ベクタをロードできる。次にこれらのベクタは数値モデリングデータに従ってモデルドメインを通して「飛行」(伝搬)するために解放される。ベクタが伝搬するにつれて、ユーザは視野透視(view perspective)を配置し直すことができ、実際、モデルドメイン自体の内部または外部の任意の透視を通してフローを表示することができる。このようにして微妙であるが決定が重要な詳細をモデリング結果で見つけ出すことができ、それによりさらに深くデータを理解できるようになる。
【0037】
前述されたように、ここで提供される説明の中ではVRビューアは、尿素と水をボイラーの中に噴射するためなど噴霧噴射用途の設計におけるデータビジュアリゼーションツールとして使用することができる。噴射器を追加することができ、小滴経路及び蒸発を示すストリームラインはリアルタイムで(つまり、通常は2秒未満で)計算される。これらのストリームラインに基づき、噴射器はユーザによって配置し直され、アプリケーションは引き続き噴射噴霧の効果を計算し直し、イマーシブビューを更新し、それにより対話型の没入型設計環境を提供する。形状、速度及び粒子サイズの分布などの噴射器に対する他の調整は、本質的に瞬時にストリームラインの更新された計算を再び生じさせることができる。
【0038】
モジュラー設計
前述したように、VRビューアとデスクトップビューアは、異なるビューを提供する一方で同じ基礎的なソフトウェアモジュールの多くを使用している。本質的に同じ入力を使用し、本質的に同じ機能を実行するが、一連の計算装置に適切な異なったユーザインタフェースを提供するアプリケーションの開発を可能にするのは、モジュラー設計を使用しているためである。後述されるように本発明に従って、2つまたは3つ以上のさまざまなモジュールが、一連のホスト機能及び所望されるユーティリティに適切なアプリケーションを提供するために、ターゲットホスト計算装置に応じてさまざまな実行可能ファイルにともにリンクされる。
【0039】
本発明に従って、ソフトウェア設計の各モジュールは、結合時に完全なビジュアリゼーションプログラムつまりビューアを作成する別個のタスクの実行を担当する。ビジュアリゼーションプログラムは、例えばFLUENT、CFX及びPhoenicsなどを含む商業的なCFDプログラムモジュールなどの視覚化されるデータのソースを有さなければならない。任意のプロセスシミュレーションモデルまたはデータ生成手段が使用されてよい。技術は、燃焼、化学的なプロセス、物理的なプロセス、財務プロセス、または経済的なプロセス、あるいは他のプロセスにも適用してよい。照会ライブラリモジュールは、標準的なアプリケーションプログラミングインタフェースとともに使用するために、CFDモジュールなどの元のデータソースからデータ構造を解釈する。追跡調査モジュールは視覚化のための粒子軌道データに標準化されたデータを変換する。ビジュアリゼーションオブジェクトモジュール(クライアントとサーバ)は、ストリームライン、外形及びここでは飛行ベクトルと呼ばれるもの、つまり速度または他のデータ変数を示し、ストリームラインに沿って、そのストリームラインに沿ったその変数の値に比例した速度で移動し、その結果ベクタが特定の燃焼生成物の速度を表し、バーナーの中の任意の点で燃焼生成物の速度が高い場合に、速度ベクタが該指定された点でさらに高速で移動するベクタなどの実際のビジュアリゼーションオブジェクトを検索し、記憶し、表示に備える。ビジュアリゼーションオブジェクトの視覚化を制御するためには、自動化スクリプト化モジュールが、類似した形式のデータセットに同じオブジェクトを生成するために使用できる。つまり、データセットで表されるモデルのジオメトリは類似している(自動化及びスクリプト化モジュールは、対応する表示特性を、それぞれがその後ディスプレイに対応するグラフィック出力を送信するビジュアリゼーションオブジェクトクライアント/グラフィックモジュール、(ナビゲーション情報を示す)インタフェースモジュール、及び(ジオメトリオブジェクトをオン、オフする)ジオメトリマネージャモジュールに送信することによって実際にフライト計画を「再生」する。また、自動化スクリプト化モジュールは、それが飛行しているときに経路を記録することができる。インタフェースモジュールは、デスクトップビューアによって提供されるビュー、及びVRビューアによって提供されるビューなどの、アプリケーションによって提供されるさまざまなビューを担当する。最後に、ジオメトリマネージャは、ドメイン壁に示されるワイヤフレーム輪郭やテクスチャなどの静的なモデルドメイン自体を描画する。ジオメトリマネージャは、データソースモジュールが計算されたデータを提供する場合、つまりデータソースが販売データのソースなどの実験によって得られるデータのソースとは対照的にCFDモジュールなどのカルキュラトリツールである場合に、データソースモジュールの入力ファイルを改変するために使用することもできる。
【0040】
(明確にするために、図2には、ビューアコンポーネントモジュール間の主要なデータフローだけが示されている。したがって、例えば、図2が、照会ライブラリモジュールがCFDポイントソースデータを追跡調査モジュールに提供することを示す場合、提供されるデータフローはCFDポイントソースデータに対する追跡調査モジュールによる要求、つまり図2に図示されていない要求に応答している。やはり明確にするために、モジュールに使用されるいくつかのデータストアは図示されていない。例えば、自動化スクリプト化モジュールは、ユーザに示すビューのシーケンスを示すデータである、ここでは飛行計画と呼ばれているもののデータストアを使用している。そのデータストアは図2には図示されておらず、他のデータストアも図示されていない。)
【0041】
デスクトップビューアとVRビューアのようなさまざまなビューアは、1対の異なるインタフェースモジュールを使用してよいが、必要とされる基本的なタスクが同じであるため、リンクされたコードの残りのモジュールは未変更のままとなる。例えば、異なるビューアのユーザはストリームラインの表示を要求するために別のインタフェースを使用するが、該要求は、同様にまったく同じ追跡調査モジュールからストリームラインデータを要求するストリームラインオブジェクトを獲得するためにまったく同じビジュアリゼーションオブジェクトモジュールに送ることができる。追跡調査モジュールは、(CFDモジュールなどの)同じデータソースを解釈する照会ライブラリの同じインスタンスを通してデータを獲得する。最終的なストリームラインは、モジュールをバックアップし、そして表示される。
【0042】
前述されたように、モジュラー設計アプローチは多岐に亘るビューア構成を可能にする。ここでは図3Aを参照すると、ある実施形態
(構成)において、デスクトップビューアまたはVRビューアのモジュールのすべては1つの実行可能なプログラムにコンパイルされ、同じローカルな機械に常駐するデータとともに使用できる。
【0043】
ここで図3Bを参照すると、まだ別の実施形態は、照会ライブラリモジュール、追跡調査モジュール、ビジュアリゼーションオブジェクトサーバモジュールをコンパイルさせ、第1の実行可能としてともにリンクさせることと、残りのビューアモジュールを別の第2の実行可能にコンパイルし、リンクすることである。
【0044】
第1の実行可能はCFDデータにアクセスし、視覚化のための計算を実行するが、第2の実行可能はそれらの計算の結果を受け取り、視覚化を表示する。該2つの実行可能はネットワークリンクによって接続されている。この構成は、特に、データソースがレポジトリに残り、リモートロケーションからアクセスされる現場作業及びクライアントの訪問に有効である。
【0045】
ここで図3Cを参照すると、照会ライブラリモジュールと追跡調査モジュールなどのモジュールのいくつかをコンパイルし、CFDプログラム11(または他のデータソースプログラム)とともにリンクすることも可能である。データソースプログラムがCFDプログラムであるケースでは、このような装置は、例えば、ソースタームとして追跡調査モジュールによって生成される噴霧計算のCFD計算への結合を可能にする(このようなケースにおける追跡調査モジュールは、例えば噴霧の軌道と結果として生じる質量、種等をその軌道に沿った各場所で計算するだろう。この情報が、CFDモジュールがバルクフローに対するその噴霧、つまりCFDグリッド等の中での噴霧される化学品の拡散の影響を計算するための「ソースターム」となる。)図3Cの実施形態の重要な機能性はビューアを必要としないが、代わりに(噴射器場所などの)ソースターム情報のための追跡調査モジュールを制御するために入力ファイルを使用する。(残りのモジュールは、どのようにコンパイルされていようとも、CFD結果を視覚化するために使用されるだろうビューアの基礎を形成する。図3Cの実施形態、つまりCFDモジュール、追跡調査モジュール、及び消化ライブラリをコンパイルし、ともにリンクすることによって形成される実行可能ファイルは、ビジュアリゼーションツールと同じモジュールを使用するソースタームジェネレータである。)
【0046】
ここで図3Dを参照すると、さらに別の実施形態において、2つの実行可能なファイルが使用され、一方はビューアのおもなモジュールのいくつかを含み、他方はCFDモジュールを含む。それから、2つのモジュールは例えばネットワークによって通信することができる。その結果、ビューアはCFDモジュール(またはカルキュラトリツールである他のデータソース)によって実行される計算の即時の結果を見ることができ、モジュールが計算を実行するにつれて、実際に計算を導く(結果を異なる解決策に向け直すためにCFD入力ファイルの境界条件または他の特徴に変更を加える)ことができる。
【0047】
ここで図3Eを参照すると、さらに別の実施形態において、本発明のモジュールのすべてがコンパイルされ、ともにリンクされている。結果はデータ計算を導き、結果を単一の実行可能の中で同時に視覚化することができる統合されたソルバー/ビューアである。
【0048】
このようにして、高度なビジュアリゼーションソフトウェアに対する本発明のモジュール設計アプローチは、幅広い範囲のビューアプログラムを開発するための確固としているが柔軟性のある基礎を提供する本発明は既存のモジュールの代わりにアプリケーションに組み込まれる特定的なアプリケーションにさらに適切な新しいモジュール、特にさまざまなハードウェア制約または性能基準を満たすアプリケーションを作成するための新しいインタフェースを開発することを包含する。
【0049】
好適実施形態のモジュール
好適実施形態のモジュールは、ここにさらに詳しく説明されている。前述されたように、好適実施形態においては、データソースモジュールはCFDプログラムであり、アプリケーションは流体力学システム、特に噴霧及び粒子追跡調査を必要とするシステムの分析及び光学的設計である。このような応用例の例は、ボイラー用の公害防止装置の分析と設計であり、本発明のモジュールはここではその特定の応用例について説明されている。また、前記に示され、図2に図示されるモジュールは、何がデータソースモジュールとして使用されているのかに関係なく好適実施形態のモジュールである。他の実施形態または応用例では、ビューアが図2に示されるビューアモジュールの1つまたは複数を含まない可能性がある。例えば、データソースモジュールが業務販売データのソースなどの、ノンカルキュラトリツール(で実験によって得られるデータのソース)ある場合はジオメトリマネージャはない可能性がある。言うまでもなく、このようなアプリケーションではジオメトリマネージャがあるが、限られた物理的な空間で発生することを視覚化するためのアプリケーションにおいてより幅広い意味でのジオメトリマネージャ、つまり、好適実施形態においてその用語が使用されるような「ジオメトリ」においてである。発明者は、図2の7つのビューアモジュールが任意の設定、つまり任意の静的な構成(例えば、石油及び天然ガスを地下資源から抽出するために使用される削井の軌道に沿った多様な深度での温度、圧力及び材料の成分)において本質的に任意のプロセスを視覚化することを可能にできることを発見した。さらに、前記に示されたように、データソースモジュールがカルキュラトリツールであることは必須ではない。つまり、それは代わりに商品の価格に相関付けられても、相関付けられなくてもよいデータと組み合わされた商品の価格に関する実際のデータを提供するモジュールなどの実験によって得られるデータのソースである場合があるだろう。本発明は、要するになんらかのデータソースの、一方でビューアとしての役割を果たす多様なモジュール、他方ではデータソースモジュールにより提供されるデータを視覚化する上で使用するためのビューアモジュールとの結合であり、(ビューアモジュールのどれかが、モジュールの他に対する同じプログラミングインタフェースであるが、実質的には異なる機能性を有する別のモジュールにより置換できるだろうという意味で)ビューアのモジュラー設計は、前述された図3から図4に図解され、その付随する優位点が前述された実施形態のどれかを実現することを含む多様な優位点を可能にする。加えて、図のどれにも明示的に示されていないが前述されているが、モジュラー設計はビューアモジュールの集合の中のインタフェースモジュールを、同じプログラミングインタフェースを有するなんらかの他のインタフェースモジュール(または図4のケースでは複数のインタフェースモジュール)で置換することも可能にし、その結果図3から図4に示されている構成のどれかによって提供される視覚化は、インタフェースモジュールのホストとなるコンピュータの処理能力に合わせることができ、ホストの処理能力に応じて、多かれ少なかれ完全に没入した視界を提供する。
【0050】
再び図2を参照すると、好適実施形態のモジュールは最初にデータソースモジュールとしてCFDモジュールを含む。データソースモジュールの目的とは視覚化されるデータセットをなんらかのネイティブなフォーマット(つまり、データソース自体にとってオリジナル)で生成または記憶することである。CFDモジュールはFluent Inc.から入手できるFLUENT、AEA Technologyから入手できるCFX、及びCHAMから入手できるPhoenicsなどの数多くの市販されているCFDプログラムの任意の1つであってよい。表1は、データソースモジュールがCFDプログラムであるケースでの、データソースモジュールと本発明の他のモジュールの間の入力/出力接続を示している。
【0051】
【表1】
【0052】
ジオメトリマネージャの目的とは、ビジュアリゼーションプログラムの内側で表示され、操作されるウィンドウの中に静的なモデルドメイン自体、つまりドメインの壁に示されるワイヤフレーム輪郭またはテクスチャを描画することである。(前記に示されたように、ジオメトリマネージャはいくつかのアプリケーションでは必要とされない可能性がある。)このモジュールへの入力が、他の属性だけではなくシステムのジオメトリを表すために必要とされる壁の位置及びサイズを記述し、ソースタームを含むジオメトリソースとして図2に示されているジオメトリファイルである。ジオメトリファイルは「オフライン」で創始する(authored)ことができるか、あるいはデスクトップビューアまたは他のビューアアプリケーションの内側から構築することができる。ジオメトリマネージャの出力は画面に示されるグラフィックオブジェクトである。前述されたように、ジオメトリマネージャが、データソースがその出力を生成するために入力ファイルを使用する場合にCFDまたは他のデータソースプログラムに対する入力ファイルを生成または改変するためにも使用されることが意図される。ジオメトリマネージャはジオメトリを変更できるようにするためにインタフェースモジュールとの入力/出力接続も有する。本発明の他のモジュールとのジオメトリマネージャの入力/出力接続はデータソースとしてCFDプログラムの例で表2に示されている。
【0053】
【表2】
【0054】
さらに一般的なケースでのジオメトリマネージャは、視覚化されるデータを引き起こす状態が発生する空間の記述を提供する。例えば、データソースモジュールが予測または計算される(通常実験によって得られるデータからなんらかの方法で推定される)データのソースだけではなく、(実際の)地震のデータ及び温度と圧力のセンサから獲得されるおそらく(実際の)データのソースでもあるだろう石油またはガスの削井応用例においては、ジオメトリマネージャは、データ(実験によって得られるデータと計算されたデータの両方)が提供されている削井及び削井を取り囲む領域の深度を記述するだろう。データソースモジュールが実際の商品の価格及び商品価格に(あるいは商品価格の変化に)相関付けられると仮定される他の実際のデータのソース、及びおそらく予測される商品価格のソースでもあるだろう商品追跡装置の応用例では、ジオメトリマネージャは例えば(経時的に)追跡調査されているさまざまな商品の価格、仮定で相関付けられるパラメータの値、及びおそらく予測される商品価格の値を、時間の次元とともに次元として有する抽象的な空間を記述できるだろう。したがって、このようなケースでのジオメトリマネージャは境界のある空間ではなく、境界のない抽象的な空間を記述するだろう。言うまでもなく、インタフェースモジュールは3次元より多くを表示できないため、空間が3次元より多い場合にはジオメトリマネージャによって設定される抽象的な空間のスライスを表示するだろう。
【0055】
インタフェースモジュールはデスクトップビューアまたはVRビューアなどのビジュアリゼーションツールのさまざまな外観を担当し、それはビジュアリゼーションソフトウェアのユーザがビジュアリゼーションツールから入手できるビューまたは表示オブジェクトを要求する手段である。したがって、インタフェースモジュールに対する入力のいくつかは、クリック及びキーボード入力などのユーザコマンドである。インタフェースモジュールからの出力はビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する要求、ジオメトリマネージャに対するジオメトリ変更、及び自動化スクリプト化モジュールに対する要求/変更である。インタフェースモジュールによって行われる計算と視覚化は、ユーザインタフェースの要素及びビュー位置に制限される。インタフェースモジュールはあらゆる高度な視覚化または計算のタスクに依存し、それらをアプリケーションの他のモジュールに任せている。他のモジュールとのインタフェースモジュールの入力/出力接続は表3に示されている。
【0056】
【表3】
【0057】
さらに一般的なケースにおけるインタフェースモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。
【0058】
自動化/スクリプト化モジュールは、同じように複数回データを表示するための「フライト計画」または他の標準化された命令を記憶する。このモジュールに対する入力はオフラインで創始されるか、あるいはインタフェースモジュールを介して「記録される」または構築されるかのどちらかである所望されるビューを記述する命令のファイルである。自動化/スクリプト化モジュールの出力は、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する要求、及び潜在的にインタフェースモジュールに対する命令でもある。他のモジュールとの自動化/スクリプト化モジュールの入力/出力接続は表4に示されている。
【0059】
【表4】
【0060】
さらに一般的なケースにおける自動化/スクリプト化モジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態におけるのと同じである。
【0061】
ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、ストリームライン、外形、及び例えばCFDデータセットなどにおける情報を表す飛行ベクタなどの実際の動的視覚化オブジェクトを表示する。(この機能とジオメトリマネージャの間の区別は、ジオメトリマネージャが、モデルの壁などの静的オブジェクトだけを取り扱うという点である。)クライアント側モジュールは、入力として、インタフェースモジュールまたは自動化/スクリプト化モジュールのどちらかを介するユーザからのビジュアリゼーションオブジェクトに対する要求を取る。これらの動作のいくつかには、照会ライブラリモジュールまたはビジュアリゼーションオブジェクトサーバモジュールからの新しいデータが必要になる。これらの動作に応えて、要求はビジュアリゼーションオブジェクトサーバまたは照会ライブラリモジュールのどちらか、あるいは両方に送信される。その結果、必要とされるデータは作成される、あるいは発見され、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する入力として提供される。ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールの入力/出力接続は、表5に示されている。
【0062】
【表5】
【0063】
さらに一般的なケースにおけるビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。どのようなオブジェクトが視覚化されていようと(実際のオブジェクトは後述されるようなビジュアリゼーションオブジェクトサーバによって提供される)、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、インタフェースモジュールに対して要求されたようにオブジェクトを提供する。
【0064】
このように、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、表示オブジェクトに対する要求を取るためにユーザインタフェース及び/または自動化モジュールと通信し、要約データのために照会ライブラリと直接的に通信してもよい。他方、ビジュアリゼーションオブジェクトサーバは任意のCFDグラフィックオブジェクトを生成するために必要とされる。サーバモジュールは、入力として、クライアントモジュールからこのようなオブジェクトに対する要求を取る。これらのケースにおける出力は、表示されるデータに対する(オブジェクトに応じた)追跡調査モジュールまたは照会ライブラリのどちらかへの要求である。また、サーバモジュールは、入力として、これらのモジュールのどちらかからデータを取り戻す。いずれの場合も、出力は表示される実際のグラフィックオブジェクトである。ビジュアリゼーションオブジェクトサーバモジュールの他のモジュ−ルとの入力/出力接続は、表6に示されている。
【0065】
【表6】
【0066】
さらに一般的なケースにおけるビジュアリゼーションオブジェクトサーバモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態におけるのと同じであるが、言うまでもなく視覚化されているオブジェクトは応用例とともに変化するため、ビジュアリゼーションオブジェクトサーバモジュールによって提供されるオブジェクトは応用例とともに変化する。応用例がなんらかの意味においてジオメトリを通した流れを必要としない場合、おそらく「飛行ベクタ」またはフロープロセスに特定的な他のオブジェクトはないだろう。代わりに、視覚化されているオブジェクトは応用例に関連しているだろう。例えば、石油及びガスの探炭応用例のケースでは、視覚化されているオブジェクトは、温度または圧力を示すアイコンだけではなく、さまざまな濃度でのさまざまな種類の材料を示すスケラブルなアイコンであるだろう。
【0067】
追跡調査モジュールの目的とは、照会ライブラリからのデータを視覚化のための粒子軌道データに変換することである。したがって、それは、入力としてビジュアリゼーションオブジェクトサーバモジュールからのデータに対する要求を取り、そのデータを計算し、表示されるグラフィックオブジェクトへの変換のために、それをビジュアリゼーションオブジェクトモジュールに出力する。計算という行為において、追跡調査モジュールは照会ライブラリに対して多くの要求を行い、それらの要求に応えて照会ライブラリからデータを受け取る。照会ライブラリデータを要求されたビジュアリゼーションオブジェクト表示するのに適切なデータに消化するために追跡調査モジュールによって講じられる処置は、「追跡調査」を必要とするオブジェクトにとっては一意である。例えば、CFDデータセットはグリッドの各セルの中の流体の速度と方向を記述する。指定された場所で開始し、各セルの中の速度/方向情報に従ってそのグリッドを通って移動する「飛行矢印」または他のオブジェクトを生成するためには、オブジェクトの経路を絶えず「補正する」ための計算がジオメトリを通して必要とされる。技術的には、追跡調査モジュールの機能とは、いわゆるオイラー(Eulerian)データセットを取り、いわゆるラグランジュ(Lagrangian)軌道を生成することである。他のモジュールとの追跡調査モジュールの入力/出力接続は表7に示されている。
【0068】
【表7】
【0069】
さらに一般的なケースにおいては、追跡調査モジュールは照会ライブラリからのデータを粒子軌道データではなく、むしろ抽象的な量である可能性があるなんらかの関連するオブジェクトのジオメトリを通して軌道を記述するデータに変換する。
【0070】
追跡調査モジュールはさらに一般的なコンテキストでは補助的な計算モジュールの集合の中の1つのモジュールまたは別のモジュールとして理解されなければならない。このような補助的な計算モジュールの例は、(反応容器内の種について滞留時間の分散などの)統計的な計算を実行するモジュール、あるいはソフトウェアがユーザのためのデータの中でパターンを強調表示するためにパターン認識アルゴリズムを実行するモジュールを含む。
【0071】
照会ライブラリモジュールは、標準的なアプリケーションプログラミングインタフェースとともに使用するためのCFD(または他のデータソースプログラム)データ構造を解釈する。すべてのプログラムが同じフォーマットでそのデータを出力するわけではないため、照会ライブラリは、ビジュアリゼーションモジュールが多くの異なるデータソースプログラムと連動できるようにする。これは新しいデータソースのために必要に応じて拡張できるプラグインのセットとして実現される。照会ライブラリは、入力として、ビジュアリゼーションオブジェクトモジュールまたは追跡調査モジュールのどちらかからのデータに対する要求を取る。照会ライブラリの出力は、ビジュアリゼーションプログラムの他のすべてのモジュールによって理解されるフォーマットに標準化された正しいデータである。その出力は、データを要求したどちらのモジュールにでも送信される。照会ライブラリモジュールの他のモジュールとの入力/出力接続は表8に示されている。
【0072】
【表8】
【0073】
さらに一般的なケースでの照会ライブラリモジュールは概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。つまり、それは標準プログラミングインタフェースとともに使用するためにデータソースモジュールによって提供されるデータ構造を解釈し、ビューアモジュールがそれぞれの異なるデータソースプログラムと互換となることができるようにそれぞれの異なるデータソースプログラムと適応する。このモジュール及びジオメトリマネージャは、プログラミングインタフェースが変化するが、その詳細においてだけであると言うことができる2つのモジュールである。これらの2つのモジュールのプログラミングインタフェースは、概念上、任意のアプリケーションについて、つまり任意のデータソースモジュールについて同じである。
【0074】
好適実施形態の他の態様
汎用ユーザインタフェース
1. CFR VRアプリケーションの有用性を拡張するために高度バーチャルユーザインタフェースを使用する
高度バーチャルユーザインタフェースは、高度ユーザインタフェースが汎用化され、拡張可能であり、ユーザインタフェースの複雑度を大幅に高めなくても、さらに多くの入力を処理し、さらに多くの種類のデータを表示できるという点で大部分のVRユーザインタフェースとは異なる。高度バーチャルユーザインタフェースは、従来のVRユーザインタフェースによって提供される通常の質的な情報だけではなく、量的な情報もユーザに与える。従来のVRユーザインタフェースを用いると、人はジオメトリを「飛び(fly through)」、質的な情報を表示することができる。高度バーチャルユーザインタフェースを用いると、人は質的な情報だけではなく、外形平面の場所についての情報を含む、外形平面上で記述されるデータについて正確な数値情報も表示できる。(従来のVRアプリケーションでは、人は外形を表示できるが、外形の場所を与えられない。)さらに、高度バーチャルユーザインタフェースは、高度バーチャルユーザインタフェースが表示されているグラフィックオブジェクトと対話するための抽象化の総を提供するという点で従来のVRインタフェースとは区別される。VRの従来の履行においては、人は、まるでジオメトリの中を「飛んでいる」かのように感じさせられ、所望される位置にドラッグすることによってグラフィックオブジェクトをジオメトリ中で配置または再配置することができる。抽象化の層は、例えば各オブジェクトにリンクされるダイアログボックスによって提供され、オブジェクトを操作できるようにする。このようにして、高度バーチャルユーザインタフェースをデータビジュアリゼーションツールの中に組み込むことによって、ツールに、量的な情報、多数の直感的なオプション、さらにグラフィックツールのより大きなフィーチャセットを提供させることができる。
【0075】
2. 接続されているデスクトップとVRアプリケーション
すでに示したように、デスクトップビューアとVRビューア(VRアプリケーション)は、ともにファイルの同じ集合の上で作動するように作られている。さらに、両方のアプリケーションのツールは同様に作動し、類似する機能性を提供する。しかしながら、2つのアプリケーションは、それらが提供する異なるユーザインタフェースを利用するために違うふうに調子を合わせられる。このような同調の1つの態様において、デスクトップアプリケーションは、描画を実行するために相対的に長い時間を要することが容認できるという前提に基づいている。したがって、デスクトップアプリケーションは、データの相対的な静的に複雑なビューに調子が合わせられる。他方、VRアプリケーションは、描画を実行するために相対的に制限された時間だけを持つと仮定されるため、VRアプリケーションは(深まる複雑さを犠牲にして)相対的に多くの動画と動作を提供するように調子を合わせられる。したがって、同じデータが両方のビューアに提供されても、一方は複雑であるが静的なビューを提供するように調子を合わせられ、他方は同じデータのより複雑ではない表現を動画化するために調子を合わせられる。
【0076】
3. 複数の合成されたダイアログボックスを使用し、データ破壊を防止する
好適実施形態においては、デスクトップビューアはプログラム内のダイアログボックス間で同期機構を使用する。この機能は本発明のモジュラー設計とは関係がない。このような同期機構により、同じコンテンツの2つのダイアログボックスは、ダイアログボックス間のデータ統合問題を引き起こさずに同時にオープンすることができる。同じ機構は、特定的なデータがダイアログボックスの中で表示され、さらに一般的なデータが別個のボックスの中で表示されるときに使用される。具体例は、すべてのブロックの名前及び色を提供するいわゆるブロックリスティングダイアログボックス、及びブロックの中の選択されたブロックについてのユーザが調整可能な情報を提供するいわゆるブロック構成ダイアログボックスである。同期機構が適所にある場合、外形平面またはブロックなどのグラフィックオブジェクトの定義が変更されると、同期機構はそのグラフィックオブジェクトを参照するすべてのインタフェースオブジェクトにメッセージを送出し、オブジェクトが、インタフェースオブジェクトがオブジェクトに対するそのインタフェースを更新できるように変化したことを信号で知らせる。
【0077】
4. 別々のコントロールダイアログボックス及びビジュアリゼーションウィンドウを使用する
デスクトップビューアは別々のコントロールダイアログボックスとビジュアリゼーションウィンドウを使用し、それは、マルチヘッド機械(複数のモニタ付き機械)で動作するときに有益であり、画面上で(コントロールダイアログボックスにアクセスするための)コンロールをレイアウトする際にユーザにさらに大きな柔軟性を与える。データの複数のビューにおいて複数のビジュアリゼーションオブジェクトを制御することも可能である。
【0078】
5. データの瞬間的なビジュアリゼーションを制御するために強力なスクリプト化言語を使用する
少なくともいくつかの応用例では、バッチ処理とは対照的に対話の意味でリアルタイムで、リアルタイムビジュアリゼーションセッションを駆動するために強力なスクリプト化言語を使用することは有利である。多くの場合、ビジュアリゼーションソフトウェアのビデオ出力は「ショットをセットアップし、コンピュータにそれらのショットを包含するビデオをレンダリングするように依頼し、通常は相対的に短いビデオを研削するために1時間以上戻す」というシナリオに従って提供される。本発明のいくつかの応用例においては、自動化/スクリプト化モジュールは強力なスクリプト化言語を使用しているため、コマンド「(例えばボイラーを「飛行する」ための)フライト計画#1を再生する」が出されると、ビジュアリゼーションソフトウェアは感知できるほどの遅延なくそれを行う。
【0079】
6. 複雑なビジュアリゼーションピクチャを生成するためにスクリプトファイルを使用し、したがって非常に小さな空間に大きなラスタ画像を保存できるようにする。
本発明によるデータビジュアリゼーションツールからの画像の妥当な外観のプリントアウトは、約10kかける10kのピクセルである。これは非常に大きなファイルである。所望される画像を作成し直すために使用できるスクリプトファイルを生成することが有利な場合がある。このようなスクリプトファイルは画像より著しく小さい。スクリプトファイルは、Windowsメタファイルがアプリケーションの実際の出力ファイルにどのように関係しているのか、あるいは代わりにポストスクリプトファイルがどのように画像ファイルに関係しているのかに類似した方法で画像ファイルに関連する。ここで参照されている「スクリプトファイル」は「フライト計画」とは区別されるべきである。「スクリプトファイル」はビューアによって提供される特定のビューの「画面ダンプ」に相当する情報、つまり画面ダンプのコンパクトな表現である情報を含む。他方、「フライト計画」は、ジオメトリを通る経路に沿って示すための一連のビューを示しており、ビューはリアルタイムで、あるいは映画を生成するために提供される。
【0080】
汎用ソフトウェア開発
7. VR Juggler及びCAVElibベースのアプリケーションの両方に同じグラフィックライブラリを使用する
CAVElibとVR Jugglerはバーチャルリアリティアプリケーションと使用するためのベースライブラリである。このようなライブラリは特定のVRハードウェアに汎用アプリケーションプログライングインタフェースを提供する。CAVElibはVRCO Inc.が独自に開発したソフトウェアであるが、VR Jugglerはアイオワ州立大学(Iowa State University)の(より重要ではないGNUパブリックライセンス(Lesser GNU Public License)を受けた)オープンソースコードである。好適実施形態においては、本発明のモジュールはオブジェクト指向プログラミングを使用して実現される。このような履行は、VR JugglerとCAVElibを含む異なった別個のVRベースライブラリに基づいたアプリケーションで(ジオメトリマネージャ及びビジュアリゼーションオブジェクトクライアント/グラフィックモジュールのような)同じグラフィックライブラリを使用できるオブジェクト構造を提供する。本発明のビューアグラフィックライブライモジュールは、ある実施形態においてはどちらか1つと互換性がある。ビューアのモジュールが2つ以上のVRベースライブラリと互換性があることは珍しい。
【0081】
ビジュアリゼーションオブジェクトクライアント/サーバの進歩
8. ストリームラインで複数のパルスを提供する
好適実施形態においては、ビューアは粒子の複数のグラフィック表現を単一のストリームラインに置き、ストリームラインが計算されるより多くの粒子を視覚的に表すことができるようにする。
【0082】
9. 年齢によりストリームラインを彩色する
好適実施形態において、ストリームラインはストリームラインの作成以来経過した時間などの追加情報を示すためにビューアによって彩色される。(いくつかの実施形態においては、それらはストリームラインに沿って温度または他の変数で彩色される。)従来のビューアは、通常、年齢などの計算されたフィールドに基づいてではなく、CFDデータによって表される任意の変数に基づいてストリームラインを彩色する。
【0083】
10. カラーマッププラグインを使用する
好適実施形態において、データビジュアリゼーションツールは、ユーザがいわゆるRGBA空間の中の所望される色にスカラ値sをマッピングするために1つまたは別の関数f(s)を使用してカラーマップをコーディングできるようにする。一例は、赤、緑、青のカラースケールをある変数の値の16の均等に離間された範囲、つまり線形16スケールを表す16個のセクションに分割する一次関数である。他の例は線形8スケール、線形32スケール、及びログスケールである。これらのスケールの1つまたは別のものはある特定のデータッセットまたは変数にとってより優れた、少なくとも1つまたは別の目的にとってより優れたスケールとなる可能性がある。一定のパラメータを関数に従って制御するダイアログボックスもコーディングされ、プラグインで置かれる。
【0084】
11. 同じストリームラインコードを使用して噴霧器、一団となった噴霧器、ストリームライン及び粒子動画を提供する
本発明の好適実施形態において、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールはストリームライン、噴霧器、及び一団となった噴霧器などの(グラフィックオブジェクトという意味での)異なる種類の追跡調査オブジェクトのすべてを視覚化するために1つのコードセクションを使用する。同様に、追跡調査モジュールはすべての異なる種類の追跡調査オブジェクトを計算するために1つのコードセクションを使用する。これにより、開発者は、新しい機能を迅速に追加できるようになり、機能は新しい追跡調査オブジェクトまたは追跡調査オブジェクトを視覚化する新しい方法である。例えば、なんらかの新しいアルゴリズムによって、噴射器、一団となった噴射器、ストリームライン、及び粒子動画を含む複数の異なるオブジェクトのディスプレイに新しい機能を追加することが所望されると仮定する。異なるオブジェクトを視覚化するためにさまざまなコードセクションが使用されるソフトウェアビジュアリゼーションシステムにおいては、さまざまなコードセクションのそれぞれを修正しなければならない。しかしながら、本発明の好適実施形態においては、コードベースの中のただ1つの場所だけを変更しなければならない。ここで顕著なことは、噴霧の追加/視覚化の際に、本発明が元のCFDデータセットの視覚を超えるという点である。言い換えると、フローフィールドストリームラインを計算するために使用される同じアルゴリズムを、噴霧からの粒子軌道を計算するために適用できるため、CFDモジュールによりモデル化されなかった噴霧はいずれにせよ視覚化することができる。通常、行われることは、元のデータセット(つまり、CFDモジュールによって計算されるデータセット)の中のオブジェクトの軌道だけを計算することである。他方、本発明は、元のデータセットにはないオブジェクトの軌道を計算する。
【0085】
CFD計算の進歩
好適実施形態においては、本発明のモジュールのすべてはオブジェクト指向背系に従って実現され、このような履行は、履行のビューア(モジュールの集合)がCFDデータの複数の異なるタイプ(フォーマット)を解釈できるようにする。オブジェクト指向設計以外に基づく履行においては、結果として生じるデータビジュアリゼーションツールは、一度に1つの種類のデータを使用することに制限されている。非オブジェクト指向設計を用いると、データのフォーマット(例えば、使用されている特定のCFDプログラムに関係するグリッド構造)を変更しなければならない場合、データビジュアリゼーションツールをコンパイルし直さなければならない。
【0086】
この意義を理解するためには、照会ライブラリの細かい区別を理解することが重要である。それは、CFDデータを進行中に「標準フォーマット」に翻訳する。ネイティブデータセットの、ビジュアリゼーションコードが必要とする内容に基づいた新しい構造へのデータ補間はない。むしろ照会ライブラリはポイント(x、y、z、t)場所での値に対する要求を獲得し、ある特定のCFDモジュール(または他のデータソースモジュール)と連動するように特に作られた関数を使用して値を提供する。このような照会ライブラリの履行は、独自のグリッドにネイティブなCFDデータを補間する履行よりさらに多くの正確なデータを検索する。従来のビューアは多くの異なるCFDモジュール(したがってそれらの異なったデータフォーマット)と互換性があることもあるが、互換であるために補間を使用するため本発明によって実現されるより正確ではないデータビジュアリゼーションを実現する。
【0087】
13. 単一のCDF出力ファイルに複数の種類のセルを与えるためにオブジェクト指向設計を使用する
好ましい履行であるオブジェクト指向設計においては、単一のCFDデータセットが同じモデル(つまり同じグリッドの中に)さまざまなセルタイプ(例えば、四面体セル対六面体セル、ネスト化されたグリッド、または他のセルタイプ)を含むことがある。好適実施形態においては、オブジェクト指向設計は、核セルがそのネイティブタイプとして処理される、つまり各セルがそれを別のセルタイプに変換しなくても使用されることを規定するために使用される。言い換えると、例えば、ピラミッド形のセルは立方体形状のセルに変更されない。したがって、補間は実行されない。各セルタイプは同じファイル内でさえ個別に処理されるため、セルタイプを変換するビジュアリゼーションツールのケースで規定されるより(補間が実行されないので)さらに正確な値がセルから獲得される。つまり、ビューアのニーズを満たすためにあるグリッドフォーマットから別のグリッドフォーマットに変換する必要は絶対にない。
【0088】
さまざまなCFDコードのグリッド構造を処理することができるということは、単一のグリッドの中で異なったセル構造を処理できるということとは別個であることが理解されなければならない。両方の特徴とも照会ライブラリと特に照会ライブラリ内のオブジェクト指向設計だけではなくモジュールの残りとの間の通信の設計の結果でもある。通信は、セル情報ではなくポイント情報を与え、計算アルゴリズムを強制的にセルと無関係にする。
【0089】
14. CFDデータセット用のプラグ可能読取装置を備える(または任意の他のデータソースプログラムからのデータセット)
好適実施形態においては、ユーザはその特定のデータセット用のCFD読取装置を書き込むことができる。言い換えると本発明のビジュアリゼーションソフトウェアは、好適実施形態において、任意の種類のデータセットともに使用できる。必要となるのは、ビジュアリゼーションソフトウェアで使用される標準化されたフォーマットでの新しいタイプのデータセットに関するポイント情報と要約情報を提供する照会ライブラリの拡張を提供することだけである。これにより任意の種類のデータをカスタムCFDアプリケーションからのデータを含むアプリケーションの中に引き込むことができる。言い換えると、本発明のビジュアリゼーションツールは、任意のコンピュータソフトウェアシステムでのように拡張可能であるが、単にデータコンバータではないプラグインを介して拡張可能である。つまり、(本)発明(の好適実施形態)のプラグインは照会ライブラリの一部であり、セル情報ではなくポイント情報を本発明の他のモジュールに与える。
【0090】
15. プラグインを介して噴射器特性を定義することに備える
好適実施形態においては、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールの中の噴射器プラグインは、任意の種類の噴射器を定義したり、視覚化されている(噴射形状などの)噴射器特性を変更できるようにするために使用される。したがって、本発明は、CFDデータセットの一部ではない噴霧を視覚化することを可能にする。つまり、本発明はビジュアリゼーションプログラムの内側の設計ツールとして噴霧を計算し、噴霧はプラグインを介して修正できる(任意の噴射器特性は、位置、速度、方向、及び化学特性の初期状態で一連の粒子に合わせて変更できる)。次に、追跡調査モジュールはこれらの初期条件を取り、それらから噴霧を計算する。それによって、本発明の特定の問題への適用は拡張することができ、ユーザがアプリケーションの真新しい部分としてまったく新しいタイプの噴射器を設計できるようにする。
【0091】
16. プラグインを介して粒子噴霧を定義することに備える
同様に、好適実施形態においては、ユーザが、例えば水対尿素溶液対他の化学溶液などのさまざまな粒子特性を開発できるようにするために、粒子プラグインが使用される。噴射器プラグインは噴射器自体を調整するのに対し、対応する粒子プラグインは噴射器の噴霧構成要素を調整するために使用される。
【0092】
17. 普通のグリッドサンプリングにより外形平面構築を実行する
好適実施形態においては、外形平面は、ビューアにCFDグリッド構造に基づいて外形を生成させるのとは対照的に、CFD溶液を交差する普通の2次元グリッド上でポイントをサンプリングすることによって構築される。(ここでは「交差する」は、数学的意味における交差である)。例えば、CFD解決策を表す立体が、グリッドが課される平面と交差される。グリッド上の各ポイントはそれからサンプリングされる。)言い換えると、好適実施形態においては、ビューアによって生成される外形は、グリッドとは無関係である。本発明により外形平面が構築される方法は(可能なときはつねにグリッド情報を隠すという決定で始めて)ソフトウェア設計決定から外れる。
【0093】
ジオメトリの進歩
18. ジオメトリディスプレイで使用されるテクスチャの数及びタイプを拡張するために構成ファイルを使用する
好適実施形態においては、ユーザはジオメトリに表示されるテクスチャを追加またはカスタマイズするために構成ファイルを修正できる(ビジュアリゼーションウィンドウにおいては、ジオメトリはワイヤフレームまたは1枚壁として表示されてよく、人は「ジオメトリの上に」表面テクスチャを提供することを話す。例えば、壁は、問題に応じて、ボイラーに関しては壁に沿った管によって、あるいはレンガあるいは他の任意の他のテクスチャとして、最もうまく表現することができる。)これによりユーザは任意の所望されるテクスチャを追加できる。
【0094】
19. カラーコードジオメトリブロック
ジオメトリマネージャはさまざまな色を使用してそのブロックを彩色することができ、ある特定のジオメトリブロックの選択を簡略化する。(ジオメトリファイルは、ボックスを繰り返し「ジオメトリブロック」に切断し、該ジオメトリブロックを作り直すことによってボックスから開始して、デスクトップビューアの内側に構築される。)
【0095】
説明及び2つのビューアを含む実施形態
デスクトップビューアとVRビューアなどの本発明に従って実現されるさまざまなビューアは、例えばインタフェースモジュールの別のインスタンスを使用してよいが、残りのモジュール及びコードは、必要とされる基本的なタスクが同じであるため未変更のまま残る。例えば、さまざまなビューアのユーザはストリームラインの表示を要求するために別のインタフェースを表示する。しかし、要求はストリームラインオブジェクト獲得するために、同様にまったく同じ追跡調査モジュールからストリームラインデータを要求するまったく同じビジュアリゼーションオブジェクトモジュールに送信できる。追跡調査モジュールは、同じデータソース出力を解釈する照会ライブラリの同じインスタンスを通してデータを獲得する。それから、最終的なストリームラインはモジュールをバックアップし、表示される。したがって、デスクトップビューア及びVRビューアのようなビューアプログラムは異なったプログラムのように見えるが、それらは本質的に同じモジュールを使用して実現され、あるプログラムは、典型的に一方のただ1つまたは2つモジュールを他方で使用される対応するモジュールで置換することによって別のプログラムに変換できる。
【0096】
ここで図4を参照すると、本発明は、特に、ともに同時にホストコンピュータの内の1台でCFDモジュール(13)と通信する、さまざまなホスト上の2つまたは3つ以上のビューアを含む分散型データビジュアリゼーションツールを可能にする。さまざまなビューアモジュールは、インタフェースモジュールを除き本質的には同じである。ビューアの1つ、つまりフィールドコンピュータビューア14aは、フィールドコンピュータ41によってホストされ、他のビューア、つまりオフィスコンピュータビューア14bはオフィスコンピュータ42によってホストされる。フィールドコンピュータビューア14aは、通常より制限されたデスクトップビューアであり、オフィスコンピュータビューア14bはイマーシブビューを提供するVRビューアである。モジュールのプログラミングインタフェース(モジュールと他のモジュール間のインタフェース)が、完全にイマーシブなオフィスコンピュータ(VR)ビューアとさらに制限されたフィールドコンピュータ(デスクトップ)ビューアが同じモデルデータを使用するように同じであるこのような実施形態においては、オフィス位置の作業者は対応するイマ−シブでないビューだけを経験することができる現場の作業者によって使用される同じデータのイマーシブビューを経験することができ、それによって遠隔共同研究を可能にする。オフィスコンピュータでのビューアの多様なコンポーネントモジュールは前述された方法のすべてで(CFDモジュールを使用しようと、使用しまいと)コンパイルし、ともにリンクすることができ、フィールドコンピュータの上のビューアのモジュールはCFDモジュールを統合しない方法のすべてでコンパイルし、ともにリンクすることができる。
【0097】
ビューアモジュールの別の実施形態
ここで図5及びまた図2を参照すると、別の実施形態において、ビューアモジュール12は4つのモジュール、つまりここでは(図2のサーバビューアコンポーネントモジュールとは対照的に)ビューアスーパーコンポーネントモジュールと呼ばれているものとして実現することができる。つまり、データファイル読取装置とともに照会ライブラリを含むデータ変換モジュールと、追跡調査モジュールとビジュアリゼーションオブジェクトサーバモジュールを含むデータ解釈モジュールと、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールとジオメトリマネージャを含むデータビジュアリゼーションモジュールと、前記インタフェースモジュールと自動化スクリプト化モジュールを含むユーザインタフェースシステムモジュールである。したがって、本発明のビューアモジュール12は、抽象化の多様なレベルに従って表現または実現することができるとして図示され、その結果ビューアモジュール12は必ずしも図2に描かれている7つのコンポーネントモジュール(すなわち、ジオメトリモジュール、インタフェースモジュール、自動化スクリプト化モジュール、照会ライブラリ、追跡調査モジュール、ビジュアリゼーションオブジェクトサーバ、及びビジュアリゼーションオブジェクトクライアント/グラフィックサーバ)の集合体ではない。代わりに、ビューアモジュール12は図2の7つのビューアコンポーネントモジュールによって達成される機能性という点で定義されている。したがって、本発明はビューアモジュール12が、各ビューアスーパーコンポーネントモジュールを構成するビューアコンポーネントモジュールによって示されるように機能性が割り当てられる、例えば図5の4つのビューアスーパーコンポーネントモジュールとして実現されている。
【産業上の利用可能性】
【0098】
前述された装置が本発明の原則の適用を例証するにすぎないことが理解されるべきである。特に、本発明についての何も必ずしも、本発明をボイラー用の尿素噴射ノズルシステムの設計に制限せず、本発明は全般的な複雑なデータ分析及び工学的設計のためのツールを包含することを目的とする。多数の他の変型及び代替装置は、本発明の精神及び範囲を逸脱することなく当業者により考案されてよい。特に燃焼プロセスデータを提供するためのCFDモジュールに加えて他のデータソースが本発明により包含されることを目的とする。このような他のデータソースは気象データを生成するためのCFDプログラム、あるいは単に実験によって得られる(計算されたのではない)気象データを蓄積し、(おそらくなんらかのマイナーな処理を加えて)提供するだけであるプログラムを含む。本文中、汚染の種のトランスポートに関する実験によって得られたデータまたは計算されたデータを提供するプログラムも本発明の範囲内にあると意図される。このような他のデータソースは、心臓の中の血液の流れを計算するために使用されるCFDモジュール、あるいはエンジンクロック内または建物の基礎の中の内部応力を計算するモジュール、あるいはスピーカまたは雑音源の配置に応じた3次元エンクロージャ内でのデシベルレベルを計算するモジュール、あるいは静電集塵機を設計する際に使用される可能性があるなどのソース量(電流と電荷)から生じる電磁場を計算するモジュールも含む。他のデータソースさえ、本発明の対象となることが意図されている。添付請求項は、他のデータソース及び本発明により含まれる変型と異なる装置を対象とすることが意図される。
【図面の簡単な説明】
【0099】
【図1】本発明を使用してすべてまたは一部が設計できるだろう物理システムの一例の概略図であり、該例は燃焼生成物の中に尿素を噴射することに基づく公害防止システムが設計されなければならないボイラーである。
【図2】組み合わされてビューア(データビジュアリゼーションサブシステム)である多様なモジュールを示しているが、モジュールの特定のリンクを示していない本発明のブロック図/流れ図である。
【図3.A】図3Aから図3Eは、本発明を別のユーティリティ(用途)に適応できるようにさまざまなグレードのホスト計算装置のために組み合わせる(実行可能ファイルの中にともにリンクする)ことができるさまざまな方法を例示する図であって、図3Aはスタンドアロンビューアに適用した例を示す図である。
【図3.B】図3Bは図3Aに於いてリモートビューアに適用した例を示す図である。
【図3.C】図3Cは図3Aに於いて入力ファイルによって駆動される追加の計算のための統合型ソルバー/ソースタームジェネレータに適用した例を示す図である。
【図3.D】図3Dは図3Aに於いて統合型ソルバー/ソースタームジェネレータ/ビューアに適用した例を示す図である。
【図3.E】図3Eは図3Aに於いて統合型ソルバー/ソースタームジェネレータ/ビューアに適用した例を示す図である。
【図4】本発明のモジュールの1つの装置をホストするためにさらに高いグレードの計算装置が使用されるオフィスにいるユーザに、本発明のモジュールの別の装置をホストするためにさらに低いグレードの計算装置が使用される(フィールド内の)サイトにいる作業者が表示する同じデータの別のビューを提供できるように、本発明のモジュールを結合する2つの異なる方法が協調する本発明の使用の例図であって、したがって該2つの強調する組み合わせは、分散型システムの実施形態における本発明の2つのサブシステムとしての役割を果たす。
【図5】(図2の7つのビューアコンポーネントモジュールと対照的に)ビューアスーパーコンポーネントモジュールと呼ばれている4つのモジュールとして実現されるビューアモジュールを示す本発明のブロック図/流れ図である。
【0001】
本発明は、複雑なデータ分析及び工学的設計において使用するためのソフトウェアアプリケーションに関し、さらに特定するときわめて適応性のあるアプリケーションに、局所的にあるいは分散して一連のグレードの計算装置で容認できるように機能し、指定されたハードウェア構成でアプリケーションのユーティリティを最大限にすることができる構成要素を提供できるようにこのようなアプリケーションのモジュールのグループ化を適応させることに関する。
【背景技術】
【0002】
ビジュアリゼーション技法をデータ集約型タスクと分析に対して適用することは、一般的には、データの理解及び(設計決定を下すなどの)データ依存型タスクの完了を容易にする目的で有効である。ここでは、用語「ビジュアリゼーション」は、数値データをコンピュータソフトウェアによって生成され、ソフトウェアユーザによって表示されるグラフィックオブジェクトに変換することを指す。
【0003】
さまざまな色をさまざまなオブジェクト、オブジェクト動画、または類似する技法に適用することは、パターン認識及びデータの理解につながる他の知的な合図においてソフトウェアユーザを補助する。
【0004】
データ集約型タスクの一例は、ユーティリティボイラーなどの燃焼プロセス用の公害防止システムの工学的設計である。ボイラーは、熱交換器を介して(水などの)作動流体によって吸収される熱を生成するために燃料を燃焼する。理想的には単に二酸化炭素と水にすぎない燃焼の生成物は、つねに、一部は望ましくなく汚染という形と見なされる他の生成物も含有する。汚染生成物の1つの特定のクラスは多様な窒素−酸素化合物(NOx)を含んでいる。このような汚染のエミッションを削減するために、ボイラーは、燃焼生成物に、それらがボイラーから排出される前に、汚染する副産物と反応し、二酸化炭素と水または他の良性の最終生成物のどちらかを生じさせる化学品を追加することを可能にするように作られている。この点については、参考のためにこれにより示される、Lyonに対する米国特許第3,900,554号、Arandらに対する米国特許第4,208,86号、Epperlyらに対する米国特許第4,777,024号、及びEpperlyらに対する米国特許第4,780,289号を参照すること。
【0005】
例えば、図1は、燃料が酸素と応答する(つまり燃焼される)バーナーセルの中に燃料を導入する燃料噴射器を有するバーナーを含むボイラーを示している。
【0006】
セル領域内の温度は通常華氏2200度から2600度に達する。このような範囲の温度では、室温ではともに2原子分子の形を取る空気中の窒素と酸素の両方とも遊離基に分かれ、1つまたは別のNOx化合物を形成するために応答する。
【0007】
水溶液中の尿素(CON2H0)はバーナーセル内の温度よりいくぶん低い温度では安定しているが、通常華氏約1800度と1950度の間のさらに低い温度ではNOxと反応し、前述された特許に説明されるように、不活性窒素(N2)、二酸化炭素、及び水を生成する。したがって、最新のボイラーは、水性の尿素をボイラーの中に導入する1つまたは複数のノズルなどの噴射器を備えている。所望される効果をあげるためのこのような尿素噴射器ノズルを使用する尿素の導入のために、ノズルは適切に設置しなければならず、特定のサイズ範囲で、及びボイラーのジオメトリに応じて特定のモーメント範囲のあるモーメントで尿素/水の小滴を生じさせるような設計でなければならない。尿素濃度、流量、使用される特定のノズル、ボイラー荷重等の他の要因も制御されなければならない。
【0008】
1つまたは複数の尿素ノズルをどこに最良に設置するのかを決定し、燃焼プロセスが依存する他の要因をどのようにして制御するのかだけではなく、どのノズルを使用するのかも決定するためには、通常、ボイラーは図1に図示される場所だけではなく、バーナーセルの壁の中、及び尿素が噴射されるだろう領域の中にも熱交換器を含むため、ボイラーの構築様式のためにあるノズルまたは別のノズルをある場所から別の場所に移動するにはボイラーの広範囲な改造が必要となるという点を除き、物理的なシステムでの試行錯誤が適切である可能性がある。実際、要因の多くは相互に関連している。つまり、1つを変更すると、他の1つまたは複数を変更することが必要になる。したがって、ノズルをある場所から別の場所に移動するには、ボイラーの壁の中の熱交換器の構造の大幅な改造が必要となるため、ボイラーの中に尿素を噴射するために使用されるあらゆるノズルの位置の選定は、物理的なシステムでの試行錯誤を使用して、後でではなく、ボイラーを設計するプロセスの中で有利に行われる。
【0009】
したがって、従来の技術は(つまりボイラー設計の一部として)ボイラーの中に1つまたは複数の尿素のズルを作りこむこと、あるいは1つまたは複数の尿素ノズルを含むようにボイラーを改造し、――いずれのケースでも――計算の集合に基づきノズルの設置を今回限り決定することのどちらかを教示している。この例に必要とされる計算は、計算上の流体力学モデリングソフトウェアの使用を必要とし、モデリングソフトウェアは、入力として、物理システムの数値記述と、システム内の燃料と他の質量流量の特性を取り、次に各セルの中あるいはモデルの各ノードで(温度、速度、化学種濃度等の)変数の値を表す数値データセットを出力する。出力データセットは、例えば、適度の12個の変数を計算、記憶する100×20×40セルモデルの場合約100万データ値など、大きい。
【0010】
考えられるノズル場所及び構成で無作為に計算を実行する(物理システムの代わりでコンピュータモデルでの試行錯誤)よりむしろ、結果を視覚化できるような方法で計算を実行することが技術では既知である。このような設計方法論においては、パラメータの初期の集合に対応する計算が実行され、それからユーザにはボイラーの中で発生する燃焼プロセスのグラフィック表現(つまりビュー)が提示される。提示されるビューから、ユーザは、尿素のさらに高い/さらに低い濃度、さらに高い/低いフィード圧、尿素ノズルの別の場所、または異なる種類のノズルに変更することが有利かどうかを確かめることができる。次に、ユーザは所望される変更を加え、新しいデータセットの計算を再計算し、変更されたパラメータの集合の結果を表示し、少ない数の反復で実行可能な設計の決定に達することができる。
【0011】
この方法論、つまり複雑なデータの理解及び設計タスクの完了を容易にするためにビジュアリゼーションを使用することは、代わりに指定アプリケーションを実行するために必要なコンピュータハードウェアの精密化によって制約を受けるビジュアリゼーションソフトウェアの機能及び特徴によって制約を受けている。
【0012】
【特許文献1】
米国特許第3,900,554号公報
【特許文献2】
米国特許第4,208,86号公報
【特許文献3】
米国特許第4,777,024号公報
【特許文献4】
米国特許第4,780,289号公報
【発明の開示】
【発明が解決しようとする課題】
【0013】
一般的にバーチャルリアリティ(VR)ビジュアリゼーションとして知られている最も情報が豊富なビジュアリゼーション環境は、最低でも、「VR世界」でのユーザの立体写真投射(stereo projection)または没入のための高度なグラフィック機能と特殊化されたハードウェアを備えた高性能ワークステーションを必要とする。このようなハードウェア構成は高価且つ収益性が低いため、削減された機能セットのより計算上集約的ではないビジュアリゼーションソフトウェアがさらにローエンドなハードウェアで実行するために存在している。従来の技術は、ビジュアリゼーションソフトウェアが特定のクラスのハードウェアのために開発、最適化されてきたことを教示している。VR様式のビジュアリゼーションソフトウェアはローエンドのハードウェアにリバースエンジニアリングすることが可能であり、非VRビジュアリゼーションソフトウェアも同様に高性能ハードウェアに改良することができ、幅広い範囲のハードウェアと動作構成(局所対分散)に迅速に適応できる単一のモジュラーソフトウェアアーキテクチャの設計は新規であり、必要とされている。
【0014】
加えて、必要とされているのは(例えばオフィス環境においてなど)高性能ハードウェア構成でVRスタイルのビューアでデータセットを表示しているユーザと、(例えばフィールドに持ち出された携帯型システムなど)さらにローエンドのハードウェア構成で非VRビューアに同時に同じデータセットを表示している他のユーザとの間の協力を可能にするソフトウェアシステムである。理想的には、このようなソフトウェアシステムのモジュールは、異なるターゲットホストコンピュータの変化するパフォーマンスケイパビリティに対処する方法として、さまざまな方法でリンクする(実行可能ファイルの中に結合する)ことが可能だろう。また、モジュールは、理想的には、前述された方法論、つまり複雑なデータの理解及び設計タスクの完了を容易にするための視覚化の使用における計算タスクと視覚化タスクを同時に実行できるようにリンクすることが可能だろう。
【課題を解決するための手段】
【0015】
したがって、本発明は、視覚化されるジオメトリについての情報を示すデータソース入力ファイルに応答して、データの特徴を表す数値データセットを、解釈されるデータのストリームとして提供するためのデータソースモジュールと、数値データセットを解釈する際にユーザに役立つ数値データセットのビューを提供するために数値データセットに応答してデータソース入力ファイルを提供するためのビューアモジュールとを含む、データソースからのデータを視覚化する際に使用するためのハードウェア適応可能なデータビジュアリゼーションツールを提供し、そこではビューアモジュールは、複数のビューアコンポーネントモジュールを備え、ソースモジュール及びビューアコンポーネントモジュールはコンパイルされ、所定の1つまたは複数のターゲットホストのパフォーマンスケイパビリティまたは実行可能ファイルの所望されるユーティリティの少なくともどちらかを含む要因に応じて1つまたは複数の実行可能ファイルにともにリンクされ、当該コンポーネントモジュールは所定の1つまたは複数のホストとは実質的には関係のないプログラミングインタフェースを有し、それによりさまざまなビジュアリゼーションツールはすべてが同じデータソースモジュールとビューアコンポーネントモジュールから提供されることができ、異なるビジュアリゼーションツールは異なるターゲットホストの異なるパフォーマンスケイパビリティに合わされる様に構成される。
【0016】
本発明の追加態様においては、ビューアコンポーネントモジュールは以下を含む。つまり、ビューアコンポーネントモジュールが、表示されている領域に対応する境界に関するジオメトリを記述するジオメトリ情報に応答し、ジオメトリ情報及び(どのグラフィックを表示するのか、及びどのようにグラフィックを表示するのかを示し、イマーシブビューにおけるユーザのビューの位置と方向も示す)関連する表示特性の変化に応答して、表示されている領域の境界の表示、及びジオメトリについての情報を含むデータソース入力ファイルを提供するためのジオメトリマネージャと、ユーザツールコントロールと入力に応答してジオメトリ及び関連する表示特性に対する変化を提供し、ビジュアリゼーションオブジェクトのグラフィック表示に関連する表示特性を提供し、数値データセットのビュー(表示、view)を提供するための情報を示すフライト計画を提供するためと共に、要約データにも応答し、さらに要約データのグラフィック出力を提供する、データビジュアリゼーションツールのユーザがビューを要求するか、あるいは対象物を表示する事を要求する手段としての役割を果たすインタフェースモジュールと、フライト計画または他の標準化された命令を維持すると共に、当該フライト計画に応答して、フライト計画と関連する表示特性に変化を提供する自動化/スクリプトモジュールと、表示特性に対する変化に応答して数値データセットに含まれる情報を表す動的ビジュアリゼーションオブジェクトを検索し、記憶し、及び表示し、要約数値データに応答して要約数値データを提供し、ビジュアリゼーションデータに応答して、かつビジュアリゼーションオブジェクトのグラフィック表現を提供するビジュアリゼーションオブジェクトクライアント/グラフィックモジュールと、グラフィックオブジェクトを生成し、ついで当該データに応答してグラフィックオブジェクトを生成し、生成されたグラフィックオブジェクトを提供するビジュアリゼーションオブジェクトサーバと、数値データセットを標準フォーマットした後に視覚化のためのデータに変換し、且つ視覚化のため当該データを提供する補助計算モジュールセットと、さまざまなデータソースプログラムデータ構造を標準アプリケーションプログラミングインタフェースに変換し、したがって数値データセットに応答してさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にするため、標準フォーマットに従って数値データセットを提供するための照会ライブラリモジュールとを備え、更に当該データソースモジュールが計算可能な流体力学(CFD、computational fluid dynamics)モジュールなどのカルキュラトリデータソースモジュールまたは実験若しくは経験等によって得られるデータ(empirical data)のさまざまなソースなどからなる1つまたは別のノンカルキュラトリデータソースモジュールのどちらかである請求項1に主張される1つのハードウェア適応可能データビジュアリゼーションツールを含む。
【0017】
本発明の追加の態様においては、データソースモジュールは計算可能な流体力学(CFD)モジュールである。
【0018】
本発明の別の追加の態様においては、ビューアコンポーネントモジュールのすべてはコンパイルされ、単一の実行可能ファイルにともにリンクされ、データソースモジュールは別個の実行可能ファイルにコンパイルされ、それにより計算に最も適した計算装置がデータソースモジュールのホストとして使用でき、又データソースモジュールにより提供されるデータストリームを解釈する上で役立つビューを提供するのに最も適した計算装置がビューアのホストとして使用できる、データビジュアリゼーションツールが提供される。
【0019】
本発明のまだ別の追加態様においては、データソースモジュールは単一の実行可能ファイル、照会モジュール、トラックパックモジュールの中にともにリンクされ、ビジュアリゼーションオブジェクトサーバモジュールはコンパイルされ、単一の実行可能ファイルの中にともにリンクされ、ビューアモジュールの他のコンポーネントモジュールはコンパイルされ、ともに単一の実行可能ファイルの中にリンクされ、それにより最高3つの異なったターゲットホストに亘って分散されるデータビジュアリゼーションツールがネットワーク及び/またはファイルシステムを介して通信する。
【0020】
本発明のさらになお別の追加態様においては、データソースモジュール、追跡調査モジュール、及び照会モジュールはコンパイルされ、1つの実行可能ファイルの中にともにリンクされ、それにより噴霧軌道に関する情報または実行中のデータソースモジュールに対するソースターム入力のための基礎として使用される他の類似した情報を生成するために追跡調査モジュールの使用を可能にし、どのようにコンパイルされ、リンクされているのかに関係なく残りのモジュールがビューアを形成する。
【0021】
本発明のまだなお別の追加の態様においては、ビューアコンポーネントモジュール及びデータソースモジュールのすべてはコンパイルされ、単一の実行可能ファイルの中にともにリンクされ、それにより当該モジュール計算を実行し、データソースモジュールの計算結果を制御する際に、データソースモジュールの中間結果を検査する機能を備えたビューアを提供する。
【0022】
本発明の別の追加態様においては、ビジュアリゼーションツールは流体力学システムの分析及び工学的設計のために使用され、追跡調査モジュールによって提供される視覚化のためのデータは粒子軌道データであり、加えて、データソースモジュールは流体力学システムのジオメトリに関するデータに応答し且つ解釈されるべきデータのストリームとして、流量を表す数値データセットを提供するCFDモジュールであり、又ビューアモジュールは、流量を表す数値データセットに応答し、更に流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ、完全な没入型の環境(fully immersive environment)と言うような環境における流量をあらわす数値データセットのビューも提供する。この点における本発明の更なる追加の態様においては、データソースモジュール、照会ライブラリモジュール、追跡調査モジュール、及びビジュアリゼーションオブジェクトサーバはすべてコンパイルされ、1つの実行可能ファイルにともにリンクされ、他のモジュール、つまり主要ビューアモジュールはすべてコンパイルされ第2の実行可能ファイルにともにリンクされ、ビューアはネットワークリンクを介してデータソースモジュールに接続され、それによって、データソースモジュールが計算を実行する時に当該データソースモジュールに於ける中間結果を検査する事が出来る様に構成され、且つ当該データソースモジュールが計算を実行する時にその計算を制御する事が可能に構成されている。
【0023】
本発明のまだなお別の追加態様においては、ビジュアリゼーションツールは、反応の流れが発生する流体力学システムの分析及び工学的設計のために使用され、加えてデータソースモジュールは流体力学システムのジオメトリに関するデータに応答し、さらに反応する流れに加えられる反応種のソースに関するデータに応答するCFDモジュールであり、解釈されるデータのストリームとして、流れ及び反応する流れの他の特性を表す数値データセットを提供し、ビューアモジュールは流れ及び反応する流れの他の特性を表す数値データセットに反応し、流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境の様な環境に於ける流れ及び反応する流れの他の特性を表す数値データセットのビューも提供する。
【0024】
本発明のさらにまだ別の追加の態様においては、ビジュアリゼーションツールは公害防止システムなどの目標とされる炉内噴射システムを設計する際に使用するため、又燃焼プロセスを制御するために使用される燃焼生成物と反応する種を燃焼プロセスの中に導入するための特別な機能であり、これに加えて、データソースモジュールは特別な機能を含む燃焼システムのジオメトリに関するデータに応答し、さらに燃焼プロセスに追加される反応する種のソースに関するデータに応答する計算可能な流体力学(CFD)モジュールであり、解釈されるデータのストリームとして燃焼プロセスの流れ及び他の特性を表す数値データセットを提供し、ビューアモジュールは燃焼プロセスの流れ及び他の特徴を表す数値データセットに応答し、当該特別な機能を含む燃焼システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境と言う様な環境で燃焼プロセスの流れ及び他の特性を表す数値データセットのビューも提供する。
【0025】
本発明のさらになお別の追加の態様においては、ビジュアリゼーションツールは、2つの異なるビューアモジュールを含み、一方のビューアモジュールのホストは第1のコンピュータによって制御されるものであり、他方のビューアモジュールのホストは第2のコンピュータよって制御されるものであり、ビューアモジュールは同じモデルデータを使用する。
【0026】
本発明のまだ別の追加の態様においては、ビューアコンポーネントモジュールは、表示されている領域に対応するジオメトリの境界を説明するジオメトリ情報に応答し、ジオメトリ情報と関連する表示特性の変化に応答して、表示されている領域の境界の表示を提供し、及びジオメトリについての情報を含むデータソース入力ファイルを提供し、及び数値データセットの中の情報を表す動的ビジュアリゼーションオブジェクトを検索し、記憶し及び表示し、それによって表示特性に対する変化に応答出来、且つ要約数値データにも応答し、要約数値データを提供し、ビジュアリゼーションデータに応答し、ビジュアリゼーションオブジェクトのグラフィック表現を提供するためのデータビジュアリゼーションモジュールと、データビジュアリゼーションツールのユーザがビューを要求するか或いはオブジェクトを表示することを要求する手段としての役割を果たすインタフェースモジュールであり、ユーザツール制御と入力に応答し、ジオメトリとそれに関連する表示特性に対する変更を提供し、ビジュアリゼーションオブジェクトのグラフィック表現と関連つけられる表示特性を提供し、及び要約データにも応答し、更に要約データのグラフィック出力を提供し、さらにフライト計画または数値データセットを表示するための他の標準化された命令を維持し、フライト計画に関連付けられる表示特性に対する変更を提供するためのインタフェースシステムモジュールと、グラフィックオブジェクトを生成するためのデータに応答し、グラフィックオブジェクトを生成し、生成されたグラフィックオブジェクトを提供し、及び標準フォーマットの後に数値データセットを視覚化のためのデータへの変換し、視覚化のためのデータを提供するためのデータ解釈モジュールと、さまざまなデータソースプログラムデータ構造を1つの標準アプリケーションプログラミングインタフェースに変換し、したがってさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にし、数値データセットに応答し、標準フォーマットに従って数値データセットを提供するためのデータ変換モジュールとを備え、データソースモジュールは、計算可能な流体力学(CFD)モジュールなどのカルキュラトリデータソースモジュール、あるいは実験或いは経験等によって得られるデータのさまざまなソースなどの一つ或いはその他のノンカルキュラトリデータソースモジュールのどちらかである。
【0027】
本発明の前記及び他の目的、特徴及び優位点は、添付図面に関連して提示される以後の詳細な説明を考慮することから明らかになるだろう。
【発明を実施するための最良の形態】
【0028】
例えばCFDまたは他の計算ツールに基づくだけではなく、実験によって得られるデータ(例えば、販売データや他の業務データ)のソースなどの計算ツールではないデータソースにも基づいてモデル計算によって提供されるデータのストリームを解釈する際にユーザを補助するために、及び計算装置の一連のパフォーマンスケイパビリティに従ってそれを行うために、本発明はソフトウェアモジュールの本質的に同じ集合から、さまざまな計算装置に合わせられているさまざまなデータビジュアリゼーションツールを開発する手段を提供する。
【0029】
ここでは、本発明は窒素酸化物化合物(NOx)のエミッションを削減するために(蒸気を生成するために使用される)ボイラー用の尿素噴射器を設計するという点で説明される。特に、本発明は、燃焼生成物の流れの中に尿素を噴射する効果を含む、このようなボイラーの中で燃焼プロセスをモデル化するためにCFDを用いた視覚化を使用するという点で説明されるだろう。しかしながら、下記から明らかになるはずであるように、本発明の何も本発明により提供されるデータビジュアリゼーションツールがCFDを使用する燃焼プロセスのモデル化に、あるいはボイラーのために尿素噴射器システムを設計することに制限されることを必要としていない。本発明は、任意のソースからの複雑なデータを視覚化し、前記視覚化から設計決定に達する上で使用するために後述されるようなツールを提供することを包含する(本発明のわずかにより一般的な用途とは、目標とされる炉内噴射システムの設計の用途であり、燃焼方式のための公害防止システムを含むだろう)。
【0030】
ここで図2を参照すると、好適実施形態において、本発明は、ターゲットホストに適切なデータビジュアリゼーションツールを提供するためにさまざまな方法でともにリンクされる本質的に同じモジュールの集合を備えている。該モジュールの集合は、好適実施形態において、1つまたは別のソースモジュール11と、組み合わされてビューアスーパーモジュール12としての役割を果たす他のモジュールのすべてを含んでいる。データソースモジュール11は、データストリームを解釈する際にユーザを補助することを目的としたフォーマットでビューを提供するためにビューア12によってユーザに提示されるデータストリームを生成し、1つのフォーマットは高性能ターゲットホストのケースで使用されるイマーシブビュー(immersive view)である。該データソースモジュールは単一のモジュールである場合もあれば、さまざまなデータを提供するモジュールの集合の場合もある。ビューア12は、ターゲットホストのパフォーマンスケイパビリティに応じて類似する機能性の他のモジュールによって置換される1つまたは複数のモジュールを含む。具体的には、ビューア12は、ターゲットホストに応じて違うふうに実現されるいわゆるインタフェースモジュールを含む。後述されるように、ターゲットホストに応じてモジュールをスワップアウトすることに加え、ビューアモジュールと(説明されている実施形態のCFDモジュールなどの)データソースモジュールの両方を含む本発明のモジュールは、さまざまなターゲットホストコンピュータの変化するパフォーマンスケイパビリティ及びシステムの異なる所望されるユーティリティに対処する方法として1つまたは複数の実行可能ファイルを作成できるようにさまざまな方法でリンクすることができる。
【0031】
第1のビューア:デスクトップビューア
依然として図2を参照すると、ビューア12の1つの実施形態は、ここでは、適度な処理能力の計算装置での実行に適切であるデスクトップビューアと呼ばれる。つまり、インタフェースモジュールは、標準的な性能のパーソナルコンピュータに適切なビューアを提供できるように実現されている。(適度な処理能力の)ホストコンピュータで表示できないグラフィックオブジェクトは、デスクトップビューアインタフェースモジュールを通して要求することはできない。
【0032】
デスクトップビューアは標準的なウィンドウ型インタフェースを使用する。例えばCFDモデルドメインの視野透視(viewing perspective)と規模は単純なマウスの移動とボタンの組み合わせによって変更できる。マウスをクリックするか、あるいはメニューを選択するかのどちらかによって表示されるポップアップウィンドウはモデル変数の外形をオンデマンドで視覚化、制御するために使用される。外形平面の外観は位置だけではなくさまざまなカラースケールにも従って調整できる。モデルドメイン全体で外形を摺動することにより、特定の変数の特性を迅速に選別することができる。デスクトップビューアの流れの軌道はストリームラインツールを使用して表示できる。ツールは、数値モデル化データによって記述されるフローフィールドの中で解放される粒子によって取られる経路を計算し、描画するためにビジュアリゼーションオブジェクトモジュールを使用する。ストリームラインは、ある場所から別の場所に追加、削除、及びドラッグすることができる。ツールは、追加の分析のために各ストリームラインに沿って、時間温度データまたは他の値を抽出するためにビジュアリゼーションオブジェクトモジュール(クライアントモジュールとサーバモジュール)も使用できる。デスクトップビューアは、ユーザがジオメトリ定義を修正し、ブロック特性を指定できるようにする計算モデリング用の入力インタフェースとして使用することもできる。
【0033】
図2で図示されるように、インタフェースモジュール、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュール及びジオメトリマネージャモジュールはディスプレイ装置にグラフィックオブジェクトを送信する。ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールからのオブジェクトは、データセット(ストリームライン、フローインジケータ、外形表面等)に関係する特定のオブジェクトである。インタフェースモジュールのオブジェクトは、ダイアログオブジェクト及びコントロールオブジェクト等を含む。さらにインタフェースモジュールのグラフィック出力は要約CFDデータと関係のあるグラフィックを含む。ジオメトリマネージャのオブジェクトはジオメトリ(壁等)を表す特殊オブジェクトを含む。
【0034】
第2のビューア:VRビューア
デスクトップビューアは多岐に亘るハードウェア構成で実行できるが、さらにローエンドのコンピュータグラフィック機能を使って実行するというニーズのために、提供できるビューにいくつかの技術的な制約が生じる。例えば、デスクトップビューア環境は啓発的であるが、それはイマーシブではない。ハードウェア要件をグラフィックワークステーションの仕様により典型的な要件まで強化することにより、さらに多くの量の動画及びさらに自然で直感的なインタフェースモジュールを使用することができる。このようなモジュールは、同時に動画化するオブジェクトの数を削減すればさらにローエンドなハードウェアで実行するように最適化することもできるだろう。したがって、ビューア12の第2の実施形態、つまりここではいわゆるバーチャルリアリティ(VR)ビューアは、さらに高度な動画性能を目標とする直感的なインタフェースモジュールを使用している。
【0035】
VRビューアはデスクトップビューアと同じモジュールのすべてを使用するが、インタフェースモジュールはさらに高性能のターゲットホストを利用し、特に完全に没入した視界を提供できるように違うふうに実現される。例えば、VRビューアに使用されるビジュアリゼーションオブジェクトモジュールはデスクトップビューアのために使用されるモジュールと同じである。
【0036】
VRビューアを用いると、ユーザはオブジェクトを表示できるだけではなく、モデルドメインの内側で「飛行(fly)」し、環境と対話することができる。デスクトップビューアと同様に、VRビューアは外形平面生成のためのツールを提供し、実際にはそれらの平面を生成するために同じモジュールを使用する。ストリームラインも追加することができ、ユーザは任意のロケーションにナビゲーションし、マウスをクリックして瞬時のストリームライン生成を要求する。しかしながら、VRビューアは動画機能を高めた。ドメインのすべてまたは一部の速度と方向を示す速度と報告を示す速度ベクタをロードできる。次にこれらのベクタは数値モデリングデータに従ってモデルドメインを通して「飛行」(伝搬)するために解放される。ベクタが伝搬するにつれて、ユーザは視野透視(view perspective)を配置し直すことができ、実際、モデルドメイン自体の内部または外部の任意の透視を通してフローを表示することができる。このようにして微妙であるが決定が重要な詳細をモデリング結果で見つけ出すことができ、それによりさらに深くデータを理解できるようになる。
【0037】
前述されたように、ここで提供される説明の中ではVRビューアは、尿素と水をボイラーの中に噴射するためなど噴霧噴射用途の設計におけるデータビジュアリゼーションツールとして使用することができる。噴射器を追加することができ、小滴経路及び蒸発を示すストリームラインはリアルタイムで(つまり、通常は2秒未満で)計算される。これらのストリームラインに基づき、噴射器はユーザによって配置し直され、アプリケーションは引き続き噴射噴霧の効果を計算し直し、イマーシブビューを更新し、それにより対話型の没入型設計環境を提供する。形状、速度及び粒子サイズの分布などの噴射器に対する他の調整は、本質的に瞬時にストリームラインの更新された計算を再び生じさせることができる。
【0038】
モジュラー設計
前述したように、VRビューアとデスクトップビューアは、異なるビューを提供する一方で同じ基礎的なソフトウェアモジュールの多くを使用している。本質的に同じ入力を使用し、本質的に同じ機能を実行するが、一連の計算装置に適切な異なったユーザインタフェースを提供するアプリケーションの開発を可能にするのは、モジュラー設計を使用しているためである。後述されるように本発明に従って、2つまたは3つ以上のさまざまなモジュールが、一連のホスト機能及び所望されるユーティリティに適切なアプリケーションを提供するために、ターゲットホスト計算装置に応じてさまざまな実行可能ファイルにともにリンクされる。
【0039】
本発明に従って、ソフトウェア設計の各モジュールは、結合時に完全なビジュアリゼーションプログラムつまりビューアを作成する別個のタスクの実行を担当する。ビジュアリゼーションプログラムは、例えばFLUENT、CFX及びPhoenicsなどを含む商業的なCFDプログラムモジュールなどの視覚化されるデータのソースを有さなければならない。任意のプロセスシミュレーションモデルまたはデータ生成手段が使用されてよい。技術は、燃焼、化学的なプロセス、物理的なプロセス、財務プロセス、または経済的なプロセス、あるいは他のプロセスにも適用してよい。照会ライブラリモジュールは、標準的なアプリケーションプログラミングインタフェースとともに使用するために、CFDモジュールなどの元のデータソースからデータ構造を解釈する。追跡調査モジュールは視覚化のための粒子軌道データに標準化されたデータを変換する。ビジュアリゼーションオブジェクトモジュール(クライアントとサーバ)は、ストリームライン、外形及びここでは飛行ベクトルと呼ばれるもの、つまり速度または他のデータ変数を示し、ストリームラインに沿って、そのストリームラインに沿ったその変数の値に比例した速度で移動し、その結果ベクタが特定の燃焼生成物の速度を表し、バーナーの中の任意の点で燃焼生成物の速度が高い場合に、速度ベクタが該指定された点でさらに高速で移動するベクタなどの実際のビジュアリゼーションオブジェクトを検索し、記憶し、表示に備える。ビジュアリゼーションオブジェクトの視覚化を制御するためには、自動化スクリプト化モジュールが、類似した形式のデータセットに同じオブジェクトを生成するために使用できる。つまり、データセットで表されるモデルのジオメトリは類似している(自動化及びスクリプト化モジュールは、対応する表示特性を、それぞれがその後ディスプレイに対応するグラフィック出力を送信するビジュアリゼーションオブジェクトクライアント/グラフィックモジュール、(ナビゲーション情報を示す)インタフェースモジュール、及び(ジオメトリオブジェクトをオン、オフする)ジオメトリマネージャモジュールに送信することによって実際にフライト計画を「再生」する。また、自動化スクリプト化モジュールは、それが飛行しているときに経路を記録することができる。インタフェースモジュールは、デスクトップビューアによって提供されるビュー、及びVRビューアによって提供されるビューなどの、アプリケーションによって提供されるさまざまなビューを担当する。最後に、ジオメトリマネージャは、ドメイン壁に示されるワイヤフレーム輪郭やテクスチャなどの静的なモデルドメイン自体を描画する。ジオメトリマネージャは、データソースモジュールが計算されたデータを提供する場合、つまりデータソースが販売データのソースなどの実験によって得られるデータのソースとは対照的にCFDモジュールなどのカルキュラトリツールである場合に、データソースモジュールの入力ファイルを改変するために使用することもできる。
【0040】
(明確にするために、図2には、ビューアコンポーネントモジュール間の主要なデータフローだけが示されている。したがって、例えば、図2が、照会ライブラリモジュールがCFDポイントソースデータを追跡調査モジュールに提供することを示す場合、提供されるデータフローはCFDポイントソースデータに対する追跡調査モジュールによる要求、つまり図2に図示されていない要求に応答している。やはり明確にするために、モジュールに使用されるいくつかのデータストアは図示されていない。例えば、自動化スクリプト化モジュールは、ユーザに示すビューのシーケンスを示すデータである、ここでは飛行計画と呼ばれているもののデータストアを使用している。そのデータストアは図2には図示されておらず、他のデータストアも図示されていない。)
【0041】
デスクトップビューアとVRビューアのようなさまざまなビューアは、1対の異なるインタフェースモジュールを使用してよいが、必要とされる基本的なタスクが同じであるため、リンクされたコードの残りのモジュールは未変更のままとなる。例えば、異なるビューアのユーザはストリームラインの表示を要求するために別のインタフェースを使用するが、該要求は、同様にまったく同じ追跡調査モジュールからストリームラインデータを要求するストリームラインオブジェクトを獲得するためにまったく同じビジュアリゼーションオブジェクトモジュールに送ることができる。追跡調査モジュールは、(CFDモジュールなどの)同じデータソースを解釈する照会ライブラリの同じインスタンスを通してデータを獲得する。最終的なストリームラインは、モジュールをバックアップし、そして表示される。
【0042】
前述されたように、モジュラー設計アプローチは多岐に亘るビューア構成を可能にする。ここでは図3Aを参照すると、ある実施形態
(構成)において、デスクトップビューアまたはVRビューアのモジュールのすべては1つの実行可能なプログラムにコンパイルされ、同じローカルな機械に常駐するデータとともに使用できる。
【0043】
ここで図3Bを参照すると、まだ別の実施形態は、照会ライブラリモジュール、追跡調査モジュール、ビジュアリゼーションオブジェクトサーバモジュールをコンパイルさせ、第1の実行可能としてともにリンクさせることと、残りのビューアモジュールを別の第2の実行可能にコンパイルし、リンクすることである。
【0044】
第1の実行可能はCFDデータにアクセスし、視覚化のための計算を実行するが、第2の実行可能はそれらの計算の結果を受け取り、視覚化を表示する。該2つの実行可能はネットワークリンクによって接続されている。この構成は、特に、データソースがレポジトリに残り、リモートロケーションからアクセスされる現場作業及びクライアントの訪問に有効である。
【0045】
ここで図3Cを参照すると、照会ライブラリモジュールと追跡調査モジュールなどのモジュールのいくつかをコンパイルし、CFDプログラム11(または他のデータソースプログラム)とともにリンクすることも可能である。データソースプログラムがCFDプログラムであるケースでは、このような装置は、例えば、ソースタームとして追跡調査モジュールによって生成される噴霧計算のCFD計算への結合を可能にする(このようなケースにおける追跡調査モジュールは、例えば噴霧の軌道と結果として生じる質量、種等をその軌道に沿った各場所で計算するだろう。この情報が、CFDモジュールがバルクフローに対するその噴霧、つまりCFDグリッド等の中での噴霧される化学品の拡散の影響を計算するための「ソースターム」となる。)図3Cの実施形態の重要な機能性はビューアを必要としないが、代わりに(噴射器場所などの)ソースターム情報のための追跡調査モジュールを制御するために入力ファイルを使用する。(残りのモジュールは、どのようにコンパイルされていようとも、CFD結果を視覚化するために使用されるだろうビューアの基礎を形成する。図3Cの実施形態、つまりCFDモジュール、追跡調査モジュール、及び消化ライブラリをコンパイルし、ともにリンクすることによって形成される実行可能ファイルは、ビジュアリゼーションツールと同じモジュールを使用するソースタームジェネレータである。)
【0046】
ここで図3Dを参照すると、さらに別の実施形態において、2つの実行可能なファイルが使用され、一方はビューアのおもなモジュールのいくつかを含み、他方はCFDモジュールを含む。それから、2つのモジュールは例えばネットワークによって通信することができる。その結果、ビューアはCFDモジュール(またはカルキュラトリツールである他のデータソース)によって実行される計算の即時の結果を見ることができ、モジュールが計算を実行するにつれて、実際に計算を導く(結果を異なる解決策に向け直すためにCFD入力ファイルの境界条件または他の特徴に変更を加える)ことができる。
【0047】
ここで図3Eを参照すると、さらに別の実施形態において、本発明のモジュールのすべてがコンパイルされ、ともにリンクされている。結果はデータ計算を導き、結果を単一の実行可能の中で同時に視覚化することができる統合されたソルバー/ビューアである。
【0048】
このようにして、高度なビジュアリゼーションソフトウェアに対する本発明のモジュール設計アプローチは、幅広い範囲のビューアプログラムを開発するための確固としているが柔軟性のある基礎を提供する本発明は既存のモジュールの代わりにアプリケーションに組み込まれる特定的なアプリケーションにさらに適切な新しいモジュール、特にさまざまなハードウェア制約または性能基準を満たすアプリケーションを作成するための新しいインタフェースを開発することを包含する。
【0049】
好適実施形態のモジュール
好適実施形態のモジュールは、ここにさらに詳しく説明されている。前述されたように、好適実施形態においては、データソースモジュールはCFDプログラムであり、アプリケーションは流体力学システム、特に噴霧及び粒子追跡調査を必要とするシステムの分析及び光学的設計である。このような応用例の例は、ボイラー用の公害防止装置の分析と設計であり、本発明のモジュールはここではその特定の応用例について説明されている。また、前記に示され、図2に図示されるモジュールは、何がデータソースモジュールとして使用されているのかに関係なく好適実施形態のモジュールである。他の実施形態または応用例では、ビューアが図2に示されるビューアモジュールの1つまたは複数を含まない可能性がある。例えば、データソースモジュールが業務販売データのソースなどの、ノンカルキュラトリツール(で実験によって得られるデータのソース)ある場合はジオメトリマネージャはない可能性がある。言うまでもなく、このようなアプリケーションではジオメトリマネージャがあるが、限られた物理的な空間で発生することを視覚化するためのアプリケーションにおいてより幅広い意味でのジオメトリマネージャ、つまり、好適実施形態においてその用語が使用されるような「ジオメトリ」においてである。発明者は、図2の7つのビューアモジュールが任意の設定、つまり任意の静的な構成(例えば、石油及び天然ガスを地下資源から抽出するために使用される削井の軌道に沿った多様な深度での温度、圧力及び材料の成分)において本質的に任意のプロセスを視覚化することを可能にできることを発見した。さらに、前記に示されたように、データソースモジュールがカルキュラトリツールであることは必須ではない。つまり、それは代わりに商品の価格に相関付けられても、相関付けられなくてもよいデータと組み合わされた商品の価格に関する実際のデータを提供するモジュールなどの実験によって得られるデータのソースである場合があるだろう。本発明は、要するになんらかのデータソースの、一方でビューアとしての役割を果たす多様なモジュール、他方ではデータソースモジュールにより提供されるデータを視覚化する上で使用するためのビューアモジュールとの結合であり、(ビューアモジュールのどれかが、モジュールの他に対する同じプログラミングインタフェースであるが、実質的には異なる機能性を有する別のモジュールにより置換できるだろうという意味で)ビューアのモジュラー設計は、前述された図3から図4に図解され、その付随する優位点が前述された実施形態のどれかを実現することを含む多様な優位点を可能にする。加えて、図のどれにも明示的に示されていないが前述されているが、モジュラー設計はビューアモジュールの集合の中のインタフェースモジュールを、同じプログラミングインタフェースを有するなんらかの他のインタフェースモジュール(または図4のケースでは複数のインタフェースモジュール)で置換することも可能にし、その結果図3から図4に示されている構成のどれかによって提供される視覚化は、インタフェースモジュールのホストとなるコンピュータの処理能力に合わせることができ、ホストの処理能力に応じて、多かれ少なかれ完全に没入した視界を提供する。
【0050】
再び図2を参照すると、好適実施形態のモジュールは最初にデータソースモジュールとしてCFDモジュールを含む。データソースモジュールの目的とは視覚化されるデータセットをなんらかのネイティブなフォーマット(つまり、データソース自体にとってオリジナル)で生成または記憶することである。CFDモジュールはFluent Inc.から入手できるFLUENT、AEA Technologyから入手できるCFX、及びCHAMから入手できるPhoenicsなどの数多くの市販されているCFDプログラムの任意の1つであってよい。表1は、データソースモジュールがCFDプログラムであるケースでの、データソースモジュールと本発明の他のモジュールの間の入力/出力接続を示している。
【0051】
【表1】
【0052】
ジオメトリマネージャの目的とは、ビジュアリゼーションプログラムの内側で表示され、操作されるウィンドウの中に静的なモデルドメイン自体、つまりドメインの壁に示されるワイヤフレーム輪郭またはテクスチャを描画することである。(前記に示されたように、ジオメトリマネージャはいくつかのアプリケーションでは必要とされない可能性がある。)このモジュールへの入力が、他の属性だけではなくシステムのジオメトリを表すために必要とされる壁の位置及びサイズを記述し、ソースタームを含むジオメトリソースとして図2に示されているジオメトリファイルである。ジオメトリファイルは「オフライン」で創始する(authored)ことができるか、あるいはデスクトップビューアまたは他のビューアアプリケーションの内側から構築することができる。ジオメトリマネージャの出力は画面に示されるグラフィックオブジェクトである。前述されたように、ジオメトリマネージャが、データソースがその出力を生成するために入力ファイルを使用する場合にCFDまたは他のデータソースプログラムに対する入力ファイルを生成または改変するためにも使用されることが意図される。ジオメトリマネージャはジオメトリを変更できるようにするためにインタフェースモジュールとの入力/出力接続も有する。本発明の他のモジュールとのジオメトリマネージャの入力/出力接続はデータソースとしてCFDプログラムの例で表2に示されている。
【0053】
【表2】
【0054】
さらに一般的なケースでのジオメトリマネージャは、視覚化されるデータを引き起こす状態が発生する空間の記述を提供する。例えば、データソースモジュールが予測または計算される(通常実験によって得られるデータからなんらかの方法で推定される)データのソースだけではなく、(実際の)地震のデータ及び温度と圧力のセンサから獲得されるおそらく(実際の)データのソースでもあるだろう石油またはガスの削井応用例においては、ジオメトリマネージャは、データ(実験によって得られるデータと計算されたデータの両方)が提供されている削井及び削井を取り囲む領域の深度を記述するだろう。データソースモジュールが実際の商品の価格及び商品価格に(あるいは商品価格の変化に)相関付けられると仮定される他の実際のデータのソース、及びおそらく予測される商品価格のソースでもあるだろう商品追跡装置の応用例では、ジオメトリマネージャは例えば(経時的に)追跡調査されているさまざまな商品の価格、仮定で相関付けられるパラメータの値、及びおそらく予測される商品価格の値を、時間の次元とともに次元として有する抽象的な空間を記述できるだろう。したがって、このようなケースでのジオメトリマネージャは境界のある空間ではなく、境界のない抽象的な空間を記述するだろう。言うまでもなく、インタフェースモジュールは3次元より多くを表示できないため、空間が3次元より多い場合にはジオメトリマネージャによって設定される抽象的な空間のスライスを表示するだろう。
【0055】
インタフェースモジュールはデスクトップビューアまたはVRビューアなどのビジュアリゼーションツールのさまざまな外観を担当し、それはビジュアリゼーションソフトウェアのユーザがビジュアリゼーションツールから入手できるビューまたは表示オブジェクトを要求する手段である。したがって、インタフェースモジュールに対する入力のいくつかは、クリック及びキーボード入力などのユーザコマンドである。インタフェースモジュールからの出力はビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する要求、ジオメトリマネージャに対するジオメトリ変更、及び自動化スクリプト化モジュールに対する要求/変更である。インタフェースモジュールによって行われる計算と視覚化は、ユーザインタフェースの要素及びビュー位置に制限される。インタフェースモジュールはあらゆる高度な視覚化または計算のタスクに依存し、それらをアプリケーションの他のモジュールに任せている。他のモジュールとのインタフェースモジュールの入力/出力接続は表3に示されている。
【0056】
【表3】
【0057】
さらに一般的なケースにおけるインタフェースモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。
【0058】
自動化/スクリプト化モジュールは、同じように複数回データを表示するための「フライト計画」または他の標準化された命令を記憶する。このモジュールに対する入力はオフラインで創始されるか、あるいはインタフェースモジュールを介して「記録される」または構築されるかのどちらかである所望されるビューを記述する命令のファイルである。自動化/スクリプト化モジュールの出力は、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する要求、及び潜在的にインタフェースモジュールに対する命令でもある。他のモジュールとの自動化/スクリプト化モジュールの入力/出力接続は表4に示されている。
【0059】
【表4】
【0060】
さらに一般的なケースにおける自動化/スクリプト化モジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態におけるのと同じである。
【0061】
ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、ストリームライン、外形、及び例えばCFDデータセットなどにおける情報を表す飛行ベクタなどの実際の動的視覚化オブジェクトを表示する。(この機能とジオメトリマネージャの間の区別は、ジオメトリマネージャが、モデルの壁などの静的オブジェクトだけを取り扱うという点である。)クライアント側モジュールは、入力として、インタフェースモジュールまたは自動化/スクリプト化モジュールのどちらかを介するユーザからのビジュアリゼーションオブジェクトに対する要求を取る。これらの動作のいくつかには、照会ライブラリモジュールまたはビジュアリゼーションオブジェクトサーバモジュールからの新しいデータが必要になる。これらの動作に応えて、要求はビジュアリゼーションオブジェクトサーバまたは照会ライブラリモジュールのどちらか、あるいは両方に送信される。その結果、必要とされるデータは作成される、あるいは発見され、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールに対する入力として提供される。ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールの入力/出力接続は、表5に示されている。
【0062】
【表5】
【0063】
さらに一般的なケースにおけるビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。どのようなオブジェクトが視覚化されていようと(実際のオブジェクトは後述されるようなビジュアリゼーションオブジェクトサーバによって提供される)、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、インタフェースモジュールに対して要求されたようにオブジェクトを提供する。
【0064】
このように、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールは、表示オブジェクトに対する要求を取るためにユーザインタフェース及び/または自動化モジュールと通信し、要約データのために照会ライブラリと直接的に通信してもよい。他方、ビジュアリゼーションオブジェクトサーバは任意のCFDグラフィックオブジェクトを生成するために必要とされる。サーバモジュールは、入力として、クライアントモジュールからこのようなオブジェクトに対する要求を取る。これらのケースにおける出力は、表示されるデータに対する(オブジェクトに応じた)追跡調査モジュールまたは照会ライブラリのどちらかへの要求である。また、サーバモジュールは、入力として、これらのモジュールのどちらかからデータを取り戻す。いずれの場合も、出力は表示される実際のグラフィックオブジェクトである。ビジュアリゼーションオブジェクトサーバモジュールの他のモジュ−ルとの入力/出力接続は、表6に示されている。
【0065】
【表6】
【0066】
さらに一般的なケースにおけるビジュアリゼーションオブジェクトサーバモジュールは、概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態におけるのと同じであるが、言うまでもなく視覚化されているオブジェクトは応用例とともに変化するため、ビジュアリゼーションオブジェクトサーバモジュールによって提供されるオブジェクトは応用例とともに変化する。応用例がなんらかの意味においてジオメトリを通した流れを必要としない場合、おそらく「飛行ベクタ」またはフロープロセスに特定的な他のオブジェクトはないだろう。代わりに、視覚化されているオブジェクトは応用例に関連しているだろう。例えば、石油及びガスの探炭応用例のケースでは、視覚化されているオブジェクトは、温度または圧力を示すアイコンだけではなく、さまざまな濃度でのさまざまな種類の材料を示すスケラブルなアイコンであるだろう。
【0067】
追跡調査モジュールの目的とは、照会ライブラリからのデータを視覚化のための粒子軌道データに変換することである。したがって、それは、入力としてビジュアリゼーションオブジェクトサーバモジュールからのデータに対する要求を取り、そのデータを計算し、表示されるグラフィックオブジェクトへの変換のために、それをビジュアリゼーションオブジェクトモジュールに出力する。計算という行為において、追跡調査モジュールは照会ライブラリに対して多くの要求を行い、それらの要求に応えて照会ライブラリからデータを受け取る。照会ライブラリデータを要求されたビジュアリゼーションオブジェクト表示するのに適切なデータに消化するために追跡調査モジュールによって講じられる処置は、「追跡調査」を必要とするオブジェクトにとっては一意である。例えば、CFDデータセットはグリッドの各セルの中の流体の速度と方向を記述する。指定された場所で開始し、各セルの中の速度/方向情報に従ってそのグリッドを通って移動する「飛行矢印」または他のオブジェクトを生成するためには、オブジェクトの経路を絶えず「補正する」ための計算がジオメトリを通して必要とされる。技術的には、追跡調査モジュールの機能とは、いわゆるオイラー(Eulerian)データセットを取り、いわゆるラグランジュ(Lagrangian)軌道を生成することである。他のモジュールとの追跡調査モジュールの入力/出力接続は表7に示されている。
【0068】
【表7】
【0069】
さらに一般的なケースにおいては、追跡調査モジュールは照会ライブラリからのデータを粒子軌道データではなく、むしろ抽象的な量である可能性があるなんらかの関連するオブジェクトのジオメトリを通して軌道を記述するデータに変換する。
【0070】
追跡調査モジュールはさらに一般的なコンテキストでは補助的な計算モジュールの集合の中の1つのモジュールまたは別のモジュールとして理解されなければならない。このような補助的な計算モジュールの例は、(反応容器内の種について滞留時間の分散などの)統計的な計算を実行するモジュール、あるいはソフトウェアがユーザのためのデータの中でパターンを強調表示するためにパターン認識アルゴリズムを実行するモジュールを含む。
【0071】
照会ライブラリモジュールは、標準的なアプリケーションプログラミングインタフェースとともに使用するためのCFD(または他のデータソースプログラム)データ構造を解釈する。すべてのプログラムが同じフォーマットでそのデータを出力するわけではないため、照会ライブラリは、ビジュアリゼーションモジュールが多くの異なるデータソースプログラムと連動できるようにする。これは新しいデータソースのために必要に応じて拡張できるプラグインのセットとして実現される。照会ライブラリは、入力として、ビジュアリゼーションオブジェクトモジュールまたは追跡調査モジュールのどちらかからのデータに対する要求を取る。照会ライブラリの出力は、ビジュアリゼーションプログラムの他のすべてのモジュールによって理解されるフォーマットに標準化された正しいデータである。その出力は、データを要求したどちらのモジュールにでも送信される。照会ライブラリモジュールの他のモジュールとの入力/出力接続は表8に示されている。
【0072】
【表8】
【0073】
さらに一般的なケースでの照会ライブラリモジュールは概念上(データソースモジュールとしてCFDモジュールがある)好適実施形態においてと同じである。つまり、それは標準プログラミングインタフェースとともに使用するためにデータソースモジュールによって提供されるデータ構造を解釈し、ビューアモジュールがそれぞれの異なるデータソースプログラムと互換となることができるようにそれぞれの異なるデータソースプログラムと適応する。このモジュール及びジオメトリマネージャは、プログラミングインタフェースが変化するが、その詳細においてだけであると言うことができる2つのモジュールである。これらの2つのモジュールのプログラミングインタフェースは、概念上、任意のアプリケーションについて、つまり任意のデータソースモジュールについて同じである。
【0074】
好適実施形態の他の態様
汎用ユーザインタフェース
1. CFR VRアプリケーションの有用性を拡張するために高度バーチャルユーザインタフェースを使用する
高度バーチャルユーザインタフェースは、高度ユーザインタフェースが汎用化され、拡張可能であり、ユーザインタフェースの複雑度を大幅に高めなくても、さらに多くの入力を処理し、さらに多くの種類のデータを表示できるという点で大部分のVRユーザインタフェースとは異なる。高度バーチャルユーザインタフェースは、従来のVRユーザインタフェースによって提供される通常の質的な情報だけではなく、量的な情報もユーザに与える。従来のVRユーザインタフェースを用いると、人はジオメトリを「飛び(fly through)」、質的な情報を表示することができる。高度バーチャルユーザインタフェースを用いると、人は質的な情報だけではなく、外形平面の場所についての情報を含む、外形平面上で記述されるデータについて正確な数値情報も表示できる。(従来のVRアプリケーションでは、人は外形を表示できるが、外形の場所を与えられない。)さらに、高度バーチャルユーザインタフェースは、高度バーチャルユーザインタフェースが表示されているグラフィックオブジェクトと対話するための抽象化の総を提供するという点で従来のVRインタフェースとは区別される。VRの従来の履行においては、人は、まるでジオメトリの中を「飛んでいる」かのように感じさせられ、所望される位置にドラッグすることによってグラフィックオブジェクトをジオメトリ中で配置または再配置することができる。抽象化の層は、例えば各オブジェクトにリンクされるダイアログボックスによって提供され、オブジェクトを操作できるようにする。このようにして、高度バーチャルユーザインタフェースをデータビジュアリゼーションツールの中に組み込むことによって、ツールに、量的な情報、多数の直感的なオプション、さらにグラフィックツールのより大きなフィーチャセットを提供させることができる。
【0075】
2. 接続されているデスクトップとVRアプリケーション
すでに示したように、デスクトップビューアとVRビューア(VRアプリケーション)は、ともにファイルの同じ集合の上で作動するように作られている。さらに、両方のアプリケーションのツールは同様に作動し、類似する機能性を提供する。しかしながら、2つのアプリケーションは、それらが提供する異なるユーザインタフェースを利用するために違うふうに調子を合わせられる。このような同調の1つの態様において、デスクトップアプリケーションは、描画を実行するために相対的に長い時間を要することが容認できるという前提に基づいている。したがって、デスクトップアプリケーションは、データの相対的な静的に複雑なビューに調子が合わせられる。他方、VRアプリケーションは、描画を実行するために相対的に制限された時間だけを持つと仮定されるため、VRアプリケーションは(深まる複雑さを犠牲にして)相対的に多くの動画と動作を提供するように調子を合わせられる。したがって、同じデータが両方のビューアに提供されても、一方は複雑であるが静的なビューを提供するように調子を合わせられ、他方は同じデータのより複雑ではない表現を動画化するために調子を合わせられる。
【0076】
3. 複数の合成されたダイアログボックスを使用し、データ破壊を防止する
好適実施形態においては、デスクトップビューアはプログラム内のダイアログボックス間で同期機構を使用する。この機能は本発明のモジュラー設計とは関係がない。このような同期機構により、同じコンテンツの2つのダイアログボックスは、ダイアログボックス間のデータ統合問題を引き起こさずに同時にオープンすることができる。同じ機構は、特定的なデータがダイアログボックスの中で表示され、さらに一般的なデータが別個のボックスの中で表示されるときに使用される。具体例は、すべてのブロックの名前及び色を提供するいわゆるブロックリスティングダイアログボックス、及びブロックの中の選択されたブロックについてのユーザが調整可能な情報を提供するいわゆるブロック構成ダイアログボックスである。同期機構が適所にある場合、外形平面またはブロックなどのグラフィックオブジェクトの定義が変更されると、同期機構はそのグラフィックオブジェクトを参照するすべてのインタフェースオブジェクトにメッセージを送出し、オブジェクトが、インタフェースオブジェクトがオブジェクトに対するそのインタフェースを更新できるように変化したことを信号で知らせる。
【0077】
4. 別々のコントロールダイアログボックス及びビジュアリゼーションウィンドウを使用する
デスクトップビューアは別々のコントロールダイアログボックスとビジュアリゼーションウィンドウを使用し、それは、マルチヘッド機械(複数のモニタ付き機械)で動作するときに有益であり、画面上で(コントロールダイアログボックスにアクセスするための)コンロールをレイアウトする際にユーザにさらに大きな柔軟性を与える。データの複数のビューにおいて複数のビジュアリゼーションオブジェクトを制御することも可能である。
【0078】
5. データの瞬間的なビジュアリゼーションを制御するために強力なスクリプト化言語を使用する
少なくともいくつかの応用例では、バッチ処理とは対照的に対話の意味でリアルタイムで、リアルタイムビジュアリゼーションセッションを駆動するために強力なスクリプト化言語を使用することは有利である。多くの場合、ビジュアリゼーションソフトウェアのビデオ出力は「ショットをセットアップし、コンピュータにそれらのショットを包含するビデオをレンダリングするように依頼し、通常は相対的に短いビデオを研削するために1時間以上戻す」というシナリオに従って提供される。本発明のいくつかの応用例においては、自動化/スクリプト化モジュールは強力なスクリプト化言語を使用しているため、コマンド「(例えばボイラーを「飛行する」ための)フライト計画#1を再生する」が出されると、ビジュアリゼーションソフトウェアは感知できるほどの遅延なくそれを行う。
【0079】
6. 複雑なビジュアリゼーションピクチャを生成するためにスクリプトファイルを使用し、したがって非常に小さな空間に大きなラスタ画像を保存できるようにする。
本発明によるデータビジュアリゼーションツールからの画像の妥当な外観のプリントアウトは、約10kかける10kのピクセルである。これは非常に大きなファイルである。所望される画像を作成し直すために使用できるスクリプトファイルを生成することが有利な場合がある。このようなスクリプトファイルは画像より著しく小さい。スクリプトファイルは、Windowsメタファイルがアプリケーションの実際の出力ファイルにどのように関係しているのか、あるいは代わりにポストスクリプトファイルがどのように画像ファイルに関係しているのかに類似した方法で画像ファイルに関連する。ここで参照されている「スクリプトファイル」は「フライト計画」とは区別されるべきである。「スクリプトファイル」はビューアによって提供される特定のビューの「画面ダンプ」に相当する情報、つまり画面ダンプのコンパクトな表現である情報を含む。他方、「フライト計画」は、ジオメトリを通る経路に沿って示すための一連のビューを示しており、ビューはリアルタイムで、あるいは映画を生成するために提供される。
【0080】
汎用ソフトウェア開発
7. VR Juggler及びCAVElibベースのアプリケーションの両方に同じグラフィックライブラリを使用する
CAVElibとVR Jugglerはバーチャルリアリティアプリケーションと使用するためのベースライブラリである。このようなライブラリは特定のVRハードウェアに汎用アプリケーションプログライングインタフェースを提供する。CAVElibはVRCO Inc.が独自に開発したソフトウェアであるが、VR Jugglerはアイオワ州立大学(Iowa State University)の(より重要ではないGNUパブリックライセンス(Lesser GNU Public License)を受けた)オープンソースコードである。好適実施形態においては、本発明のモジュールはオブジェクト指向プログラミングを使用して実現される。このような履行は、VR JugglerとCAVElibを含む異なった別個のVRベースライブラリに基づいたアプリケーションで(ジオメトリマネージャ及びビジュアリゼーションオブジェクトクライアント/グラフィックモジュールのような)同じグラフィックライブラリを使用できるオブジェクト構造を提供する。本発明のビューアグラフィックライブライモジュールは、ある実施形態においてはどちらか1つと互換性がある。ビューアのモジュールが2つ以上のVRベースライブラリと互換性があることは珍しい。
【0081】
ビジュアリゼーションオブジェクトクライアント/サーバの進歩
8. ストリームラインで複数のパルスを提供する
好適実施形態においては、ビューアは粒子の複数のグラフィック表現を単一のストリームラインに置き、ストリームラインが計算されるより多くの粒子を視覚的に表すことができるようにする。
【0082】
9. 年齢によりストリームラインを彩色する
好適実施形態において、ストリームラインはストリームラインの作成以来経過した時間などの追加情報を示すためにビューアによって彩色される。(いくつかの実施形態においては、それらはストリームラインに沿って温度または他の変数で彩色される。)従来のビューアは、通常、年齢などの計算されたフィールドに基づいてではなく、CFDデータによって表される任意の変数に基づいてストリームラインを彩色する。
【0083】
10. カラーマッププラグインを使用する
好適実施形態において、データビジュアリゼーションツールは、ユーザがいわゆるRGBA空間の中の所望される色にスカラ値sをマッピングするために1つまたは別の関数f(s)を使用してカラーマップをコーディングできるようにする。一例は、赤、緑、青のカラースケールをある変数の値の16の均等に離間された範囲、つまり線形16スケールを表す16個のセクションに分割する一次関数である。他の例は線形8スケール、線形32スケール、及びログスケールである。これらのスケールの1つまたは別のものはある特定のデータッセットまたは変数にとってより優れた、少なくとも1つまたは別の目的にとってより優れたスケールとなる可能性がある。一定のパラメータを関数に従って制御するダイアログボックスもコーディングされ、プラグインで置かれる。
【0084】
11. 同じストリームラインコードを使用して噴霧器、一団となった噴霧器、ストリームライン及び粒子動画を提供する
本発明の好適実施形態において、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールはストリームライン、噴霧器、及び一団となった噴霧器などの(グラフィックオブジェクトという意味での)異なる種類の追跡調査オブジェクトのすべてを視覚化するために1つのコードセクションを使用する。同様に、追跡調査モジュールはすべての異なる種類の追跡調査オブジェクトを計算するために1つのコードセクションを使用する。これにより、開発者は、新しい機能を迅速に追加できるようになり、機能は新しい追跡調査オブジェクトまたは追跡調査オブジェクトを視覚化する新しい方法である。例えば、なんらかの新しいアルゴリズムによって、噴射器、一団となった噴射器、ストリームライン、及び粒子動画を含む複数の異なるオブジェクトのディスプレイに新しい機能を追加することが所望されると仮定する。異なるオブジェクトを視覚化するためにさまざまなコードセクションが使用されるソフトウェアビジュアリゼーションシステムにおいては、さまざまなコードセクションのそれぞれを修正しなければならない。しかしながら、本発明の好適実施形態においては、コードベースの中のただ1つの場所だけを変更しなければならない。ここで顕著なことは、噴霧の追加/視覚化の際に、本発明が元のCFDデータセットの視覚を超えるという点である。言い換えると、フローフィールドストリームラインを計算するために使用される同じアルゴリズムを、噴霧からの粒子軌道を計算するために適用できるため、CFDモジュールによりモデル化されなかった噴霧はいずれにせよ視覚化することができる。通常、行われることは、元のデータセット(つまり、CFDモジュールによって計算されるデータセット)の中のオブジェクトの軌道だけを計算することである。他方、本発明は、元のデータセットにはないオブジェクトの軌道を計算する。
【0085】
CFD計算の進歩
好適実施形態においては、本発明のモジュールのすべてはオブジェクト指向背系に従って実現され、このような履行は、履行のビューア(モジュールの集合)がCFDデータの複数の異なるタイプ(フォーマット)を解釈できるようにする。オブジェクト指向設計以外に基づく履行においては、結果として生じるデータビジュアリゼーションツールは、一度に1つの種類のデータを使用することに制限されている。非オブジェクト指向設計を用いると、データのフォーマット(例えば、使用されている特定のCFDプログラムに関係するグリッド構造)を変更しなければならない場合、データビジュアリゼーションツールをコンパイルし直さなければならない。
【0086】
この意義を理解するためには、照会ライブラリの細かい区別を理解することが重要である。それは、CFDデータを進行中に「標準フォーマット」に翻訳する。ネイティブデータセットの、ビジュアリゼーションコードが必要とする内容に基づいた新しい構造へのデータ補間はない。むしろ照会ライブラリはポイント(x、y、z、t)場所での値に対する要求を獲得し、ある特定のCFDモジュール(または他のデータソースモジュール)と連動するように特に作られた関数を使用して値を提供する。このような照会ライブラリの履行は、独自のグリッドにネイティブなCFDデータを補間する履行よりさらに多くの正確なデータを検索する。従来のビューアは多くの異なるCFDモジュール(したがってそれらの異なったデータフォーマット)と互換性があることもあるが、互換であるために補間を使用するため本発明によって実現されるより正確ではないデータビジュアリゼーションを実現する。
【0087】
13. 単一のCDF出力ファイルに複数の種類のセルを与えるためにオブジェクト指向設計を使用する
好ましい履行であるオブジェクト指向設計においては、単一のCFDデータセットが同じモデル(つまり同じグリッドの中に)さまざまなセルタイプ(例えば、四面体セル対六面体セル、ネスト化されたグリッド、または他のセルタイプ)を含むことがある。好適実施形態においては、オブジェクト指向設計は、核セルがそのネイティブタイプとして処理される、つまり各セルがそれを別のセルタイプに変換しなくても使用されることを規定するために使用される。言い換えると、例えば、ピラミッド形のセルは立方体形状のセルに変更されない。したがって、補間は実行されない。各セルタイプは同じファイル内でさえ個別に処理されるため、セルタイプを変換するビジュアリゼーションツールのケースで規定されるより(補間が実行されないので)さらに正確な値がセルから獲得される。つまり、ビューアのニーズを満たすためにあるグリッドフォーマットから別のグリッドフォーマットに変換する必要は絶対にない。
【0088】
さまざまなCFDコードのグリッド構造を処理することができるということは、単一のグリッドの中で異なったセル構造を処理できるということとは別個であることが理解されなければならない。両方の特徴とも照会ライブラリと特に照会ライブラリ内のオブジェクト指向設計だけではなくモジュールの残りとの間の通信の設計の結果でもある。通信は、セル情報ではなくポイント情報を与え、計算アルゴリズムを強制的にセルと無関係にする。
【0089】
14. CFDデータセット用のプラグ可能読取装置を備える(または任意の他のデータソースプログラムからのデータセット)
好適実施形態においては、ユーザはその特定のデータセット用のCFD読取装置を書き込むことができる。言い換えると本発明のビジュアリゼーションソフトウェアは、好適実施形態において、任意の種類のデータセットともに使用できる。必要となるのは、ビジュアリゼーションソフトウェアで使用される標準化されたフォーマットでの新しいタイプのデータセットに関するポイント情報と要約情報を提供する照会ライブラリの拡張を提供することだけである。これにより任意の種類のデータをカスタムCFDアプリケーションからのデータを含むアプリケーションの中に引き込むことができる。言い換えると、本発明のビジュアリゼーションツールは、任意のコンピュータソフトウェアシステムでのように拡張可能であるが、単にデータコンバータではないプラグインを介して拡張可能である。つまり、(本)発明(の好適実施形態)のプラグインは照会ライブラリの一部であり、セル情報ではなくポイント情報を本発明の他のモジュールに与える。
【0090】
15. プラグインを介して噴射器特性を定義することに備える
好適実施形態においては、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールの中の噴射器プラグインは、任意の種類の噴射器を定義したり、視覚化されている(噴射形状などの)噴射器特性を変更できるようにするために使用される。したがって、本発明は、CFDデータセットの一部ではない噴霧を視覚化することを可能にする。つまり、本発明はビジュアリゼーションプログラムの内側の設計ツールとして噴霧を計算し、噴霧はプラグインを介して修正できる(任意の噴射器特性は、位置、速度、方向、及び化学特性の初期状態で一連の粒子に合わせて変更できる)。次に、追跡調査モジュールはこれらの初期条件を取り、それらから噴霧を計算する。それによって、本発明の特定の問題への適用は拡張することができ、ユーザがアプリケーションの真新しい部分としてまったく新しいタイプの噴射器を設計できるようにする。
【0091】
16. プラグインを介して粒子噴霧を定義することに備える
同様に、好適実施形態においては、ユーザが、例えば水対尿素溶液対他の化学溶液などのさまざまな粒子特性を開発できるようにするために、粒子プラグインが使用される。噴射器プラグインは噴射器自体を調整するのに対し、対応する粒子プラグインは噴射器の噴霧構成要素を調整するために使用される。
【0092】
17. 普通のグリッドサンプリングにより外形平面構築を実行する
好適実施形態においては、外形平面は、ビューアにCFDグリッド構造に基づいて外形を生成させるのとは対照的に、CFD溶液を交差する普通の2次元グリッド上でポイントをサンプリングすることによって構築される。(ここでは「交差する」は、数学的意味における交差である)。例えば、CFD解決策を表す立体が、グリッドが課される平面と交差される。グリッド上の各ポイントはそれからサンプリングされる。)言い換えると、好適実施形態においては、ビューアによって生成される外形は、グリッドとは無関係である。本発明により外形平面が構築される方法は(可能なときはつねにグリッド情報を隠すという決定で始めて)ソフトウェア設計決定から外れる。
【0093】
ジオメトリの進歩
18. ジオメトリディスプレイで使用されるテクスチャの数及びタイプを拡張するために構成ファイルを使用する
好適実施形態においては、ユーザはジオメトリに表示されるテクスチャを追加またはカスタマイズするために構成ファイルを修正できる(ビジュアリゼーションウィンドウにおいては、ジオメトリはワイヤフレームまたは1枚壁として表示されてよく、人は「ジオメトリの上に」表面テクスチャを提供することを話す。例えば、壁は、問題に応じて、ボイラーに関しては壁に沿った管によって、あるいはレンガあるいは他の任意の他のテクスチャとして、最もうまく表現することができる。)これによりユーザは任意の所望されるテクスチャを追加できる。
【0094】
19. カラーコードジオメトリブロック
ジオメトリマネージャはさまざまな色を使用してそのブロックを彩色することができ、ある特定のジオメトリブロックの選択を簡略化する。(ジオメトリファイルは、ボックスを繰り返し「ジオメトリブロック」に切断し、該ジオメトリブロックを作り直すことによってボックスから開始して、デスクトップビューアの内側に構築される。)
【0095】
説明及び2つのビューアを含む実施形態
デスクトップビューアとVRビューアなどの本発明に従って実現されるさまざまなビューアは、例えばインタフェースモジュールの別のインスタンスを使用してよいが、残りのモジュール及びコードは、必要とされる基本的なタスクが同じであるため未変更のまま残る。例えば、さまざまなビューアのユーザはストリームラインの表示を要求するために別のインタフェースを表示する。しかし、要求はストリームラインオブジェクト獲得するために、同様にまったく同じ追跡調査モジュールからストリームラインデータを要求するまったく同じビジュアリゼーションオブジェクトモジュールに送信できる。追跡調査モジュールは、同じデータソース出力を解釈する照会ライブラリの同じインスタンスを通してデータを獲得する。それから、最終的なストリームラインはモジュールをバックアップし、表示される。したがって、デスクトップビューア及びVRビューアのようなビューアプログラムは異なったプログラムのように見えるが、それらは本質的に同じモジュールを使用して実現され、あるプログラムは、典型的に一方のただ1つまたは2つモジュールを他方で使用される対応するモジュールで置換することによって別のプログラムに変換できる。
【0096】
ここで図4を参照すると、本発明は、特に、ともに同時にホストコンピュータの内の1台でCFDモジュール(13)と通信する、さまざまなホスト上の2つまたは3つ以上のビューアを含む分散型データビジュアリゼーションツールを可能にする。さまざまなビューアモジュールは、インタフェースモジュールを除き本質的には同じである。ビューアの1つ、つまりフィールドコンピュータビューア14aは、フィールドコンピュータ41によってホストされ、他のビューア、つまりオフィスコンピュータビューア14bはオフィスコンピュータ42によってホストされる。フィールドコンピュータビューア14aは、通常より制限されたデスクトップビューアであり、オフィスコンピュータビューア14bはイマーシブビューを提供するVRビューアである。モジュールのプログラミングインタフェース(モジュールと他のモジュール間のインタフェース)が、完全にイマーシブなオフィスコンピュータ(VR)ビューアとさらに制限されたフィールドコンピュータ(デスクトップ)ビューアが同じモデルデータを使用するように同じであるこのような実施形態においては、オフィス位置の作業者は対応するイマ−シブでないビューだけを経験することができる現場の作業者によって使用される同じデータのイマーシブビューを経験することができ、それによって遠隔共同研究を可能にする。オフィスコンピュータでのビューアの多様なコンポーネントモジュールは前述された方法のすべてで(CFDモジュールを使用しようと、使用しまいと)コンパイルし、ともにリンクすることができ、フィールドコンピュータの上のビューアのモジュールはCFDモジュールを統合しない方法のすべてでコンパイルし、ともにリンクすることができる。
【0097】
ビューアモジュールの別の実施形態
ここで図5及びまた図2を参照すると、別の実施形態において、ビューアモジュール12は4つのモジュール、つまりここでは(図2のサーバビューアコンポーネントモジュールとは対照的に)ビューアスーパーコンポーネントモジュールと呼ばれているものとして実現することができる。つまり、データファイル読取装置とともに照会ライブラリを含むデータ変換モジュールと、追跡調査モジュールとビジュアリゼーションオブジェクトサーバモジュールを含むデータ解釈モジュールと、ビジュアリゼーションオブジェクトクライアント/グラフィックモジュールとジオメトリマネージャを含むデータビジュアリゼーションモジュールと、前記インタフェースモジュールと自動化スクリプト化モジュールを含むユーザインタフェースシステムモジュールである。したがって、本発明のビューアモジュール12は、抽象化の多様なレベルに従って表現または実現することができるとして図示され、その結果ビューアモジュール12は必ずしも図2に描かれている7つのコンポーネントモジュール(すなわち、ジオメトリモジュール、インタフェースモジュール、自動化スクリプト化モジュール、照会ライブラリ、追跡調査モジュール、ビジュアリゼーションオブジェクトサーバ、及びビジュアリゼーションオブジェクトクライアント/グラフィックサーバ)の集合体ではない。代わりに、ビューアモジュール12は図2の7つのビューアコンポーネントモジュールによって達成される機能性という点で定義されている。したがって、本発明はビューアモジュール12が、各ビューアスーパーコンポーネントモジュールを構成するビューアコンポーネントモジュールによって示されるように機能性が割り当てられる、例えば図5の4つのビューアスーパーコンポーネントモジュールとして実現されている。
【産業上の利用可能性】
【0098】
前述された装置が本発明の原則の適用を例証するにすぎないことが理解されるべきである。特に、本発明についての何も必ずしも、本発明をボイラー用の尿素噴射ノズルシステムの設計に制限せず、本発明は全般的な複雑なデータ分析及び工学的設計のためのツールを包含することを目的とする。多数の他の変型及び代替装置は、本発明の精神及び範囲を逸脱することなく当業者により考案されてよい。特に燃焼プロセスデータを提供するためのCFDモジュールに加えて他のデータソースが本発明により包含されることを目的とする。このような他のデータソースは気象データを生成するためのCFDプログラム、あるいは単に実験によって得られる(計算されたのではない)気象データを蓄積し、(おそらくなんらかのマイナーな処理を加えて)提供するだけであるプログラムを含む。本文中、汚染の種のトランスポートに関する実験によって得られたデータまたは計算されたデータを提供するプログラムも本発明の範囲内にあると意図される。このような他のデータソースは、心臓の中の血液の流れを計算するために使用されるCFDモジュール、あるいはエンジンクロック内または建物の基礎の中の内部応力を計算するモジュール、あるいはスピーカまたは雑音源の配置に応じた3次元エンクロージャ内でのデシベルレベルを計算するモジュール、あるいは静電集塵機を設計する際に使用される可能性があるなどのソース量(電流と電荷)から生じる電磁場を計算するモジュールも含む。他のデータソースさえ、本発明の対象となることが意図されている。添付請求項は、他のデータソース及び本発明により含まれる変型と異なる装置を対象とすることが意図される。
【図面の簡単な説明】
【0099】
【図1】本発明を使用してすべてまたは一部が設計できるだろう物理システムの一例の概略図であり、該例は燃焼生成物の中に尿素を噴射することに基づく公害防止システムが設計されなければならないボイラーである。
【図2】組み合わされてビューア(データビジュアリゼーションサブシステム)である多様なモジュールを示しているが、モジュールの特定のリンクを示していない本発明のブロック図/流れ図である。
【図3.A】図3Aから図3Eは、本発明を別のユーティリティ(用途)に適応できるようにさまざまなグレードのホスト計算装置のために組み合わせる(実行可能ファイルの中にともにリンクする)ことができるさまざまな方法を例示する図であって、図3Aはスタンドアロンビューアに適用した例を示す図である。
【図3.B】図3Bは図3Aに於いてリモートビューアに適用した例を示す図である。
【図3.C】図3Cは図3Aに於いて入力ファイルによって駆動される追加の計算のための統合型ソルバー/ソースタームジェネレータに適用した例を示す図である。
【図3.D】図3Dは図3Aに於いて統合型ソルバー/ソースタームジェネレータ/ビューアに適用した例を示す図である。
【図3.E】図3Eは図3Aに於いて統合型ソルバー/ソースタームジェネレータ/ビューアに適用した例を示す図である。
【図4】本発明のモジュールの1つの装置をホストするためにさらに高いグレードの計算装置が使用されるオフィスにいるユーザに、本発明のモジュールの別の装置をホストするためにさらに低いグレードの計算装置が使用される(フィールド内の)サイトにいる作業者が表示する同じデータの別のビューを提供できるように、本発明のモジュールを結合する2つの異なる方法が協調する本発明の使用の例図であって、したがって該2つの強調する組み合わせは、分散型システムの実施形態における本発明の2つのサブシステムとしての役割を果たす。
【図5】(図2の7つのビューアコンポーネントモジュールと対照的に)ビューアスーパーコンポーネントモジュールと呼ばれている4つのモジュールとして実現されるビューアモジュールを示す本発明のブロック図/流れ図である。
Claims (28)
- データソースからデータを視覚化する際に使用するためのハードウェア適応可能なデータビジュアリゼーションツールであって、
a)視覚化されるジオメトリについての情報を示すデータソース入力ファイルに応答して、データの特徴を表す数値データセットを、解釈されるデータのストリームとして提供するためのデータソースモジュールと、
b)数値データセットを解釈する際にユーザに役立つ数値データセットのビューを提供するために数値データセットに応答してデータソース入力ファイルを提供するためのビューアモジュールと
を備え、
ビューアモジュールは、複数のビューアコンポーネントモジュールを備え、ソースモジュール及びビューアコンポーネントモジュールはコンパイルされ、所定の1つまたは複数のターゲットホストのパフォーマンスケイパビリティまたは実行可能ファイルの所望されるユーティリティの少なくともどちらかを含む要因に応じて1つまたは複数の実行可能ファイルにともにリンクされ、当該コンポーネントモジュールは所定の1つまたは複数のホストとは実質的には関係のないプログラミングインタフェースを有し、それによりさまざまなビジュアリゼーションツールはすべてが同じデータソースモジュールとビューアコンポーネントモジュールから提供されることができ、異なるビジュアリゼーションツールは異なるターゲットホストの異なるパフォーマンスケイパビリティに合わされる様に構成されていることを特徴とするハードウェア適応可能なデータビジュアリゼーションツール。 - ビューアコンポーネントモジュールが、
a)表示されている領域に対応する境界に関するジオメトリを記述するジオメトリ情報に応答し、ジオメトリ情報及び関連する表示特性の変化に応答して、表示されている領域の境界の表示、及びジオメトリについての情報を含むデータソース入力ファイルを提供するためのジオメトリマネージャと、
b)ユーザツールコントロールと入力に応答してジオメトリ及び関連する表示特性に対する変化を提供し、ビジュアリゼーションオブジェクトのグラフィック表示に関連する表示特性を提供し、数値データセットのビューを提供するための情報を示すフライト計画を提供するためと共に、要約データにも応答し、さらに要約データのグラフィック出力を提供する、データビジュアリゼーションツールのユーザがビューを要求するか、あるいは対象物を表示する事を要求する手段としての役割を果たすインタフェースモジュールと、
c)フライト計画または他の標準化された命令を維持すると共に、当該フライト計画に応答して、フライト計画と関連する表示特性に変化を提供する自動化/スクリプトモジュールと、
d)表示特性に対する変化に応答して数値データセットに含まれる情報を表す動的ビジュアリゼーションオブジェクトを検索し、記憶し、及び表示し、要約数値データに応答して要約数値データを提供し、ビジュアリゼーションデータに応答して、かつビジュアリゼーションオブジェクトのグラフィック表現を提供するビジュアリゼーションオブジェクトクライアント/グラフィックモジュールと、
e)グラフィックオブジェクトを生成し、ついで当該データに応答してグラフィックオブジェクトを生成し、生成されたグラフィックオブジェクトを提供するビジュアリゼーションオブジェクトサーバと、
f)数値データセットを標準フォーマットした後に視覚化のためのデータに変換し、且つ視覚化のため当該データを提供する補助計算モジュールセットと、及び
g)さまざまなデータソースプログラムデータ構造を標準アプリケーションプログラミングインタフェースに変換し、したがって数値データセットに反応してさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にするため、標準フォーマットに従って数値データセットを提供するための照会ライブラリモジュールと
を備え、
データソースモジュールが、カルキュラトリデータソースモジュールとノンカルキュラトリデータソースモジュールから構成されるグループから選択される、
ことを特徴とする請求項1記載のハードウェア適応可能なデータビジュアリゼーションツール。 - データソースモジュールが計算可能な流体力学(CFD)モジュールであることを特徴とする請求項2に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- ビューアコンポーネントモジュールのすべてがコンパイルされ、単一の実行可能ファイルにともにリンクされ、データソースモジュールが別個の実行可能なファイルにコンパイルされ、それによって計算に最も適した計算装置がデータソースモジュールのホストとして使用することができ、データソースモジュールによって提供されるデータストリームを解釈する際に有効なビューを提供するのに最も適した計算装置がビューアのホストとして使用できることを特徴とする請求項2に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- データソースモジュールが単一の実行可能ファイル、照会モード、補助計算モジュールセットにともにリンクされ、ビジュアリゼーションオブジェクトサーバモジュールはコンパイルされ、単一の実行可能ファイルにともにリンクされ、ビューアモジュールの他のコンポーネントモジュールがコンパイルされ、単一の実行可能ファイルにともにリンクされ、それによって最高3つの異なるターゲットホストに亘って分散されるデータビジュアリゼーションツールがネットワーク及び/またはファイルシステムを介して通信することを特徴とする請求項2に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- データソースモジュール、追跡調査モジュールなどの補助計算モジュールセット、及び照会モジュールがコンパイルされ、1つの実行可能なファイルにリンクされ、それによって霧軌道に関する情報または実行中のデータソースモジュールに対するソースターム入力のための基礎として使用される他の類似した情報を生成するために追跡調査モジュールの使用を可能にし、どのようにコンパイルされ、リンクされているのかに関係なく残りのモジュールがビューアを形成することを特徴とする請求項2に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- ビューアコンポーネントモジュール及びデータソースモジュールのすべてはコンパイルされ、単一の実行可能ファイルの中にともにリンクされ、それにより当該モジュール計算を実行し、データソースモジュールの計算結果を制御する際に、データソースモジュールの中間結果を検査する機能を備えたビューアを提供することを特徴とする請求項2に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- データソースモジュール、照会ライブラリモジュール、補助計算モジュールセット、及びビジュアリゼーションオブジェクトサーバはすべてコンパイルされ、1つの実行可能ファイルにともにリンクされ、他のモジュール、つまり主要ビューアモジュールはすべてコンパイルされ第2の実行可能ファイルにともにリンクされ、ビューアはネットワークリンクを介してデータソースモジュールに接続され、それによって、データソースモジュールが計算を実行する時に当該データソースモジュールに於ける中間結果を検査する事が出来る様に構成され、且つ当該データソースモジュールが計算を実行する時にその計算を制御する事が可能に構成されていることを特徴とする請求項2に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- 当該ツールが反応の流れが発生する流体力学システムの分析及び工学的設計のために使用され、且つ追跡調査モジュールによって提供される視覚化のためのデータが粒子軌道データであり、さらに、
a)データソースモジュールは流体力学システムのジオメトリに関するデータに反応するCFDモジュールであり、解釈されるデータのストリームとして、流れ及び反応する流れの他の特性を表す数値データセットを提供し、そして
b)ビューアモジュールは流れを表す数値データセットに応答し、流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境の様な環境に於ける流れを表す数値データセットのビューも提供することを特徴とする請求項1記載のハードウェアによって適応可能なデータビジュアリゼーションツール。 - 当該ツールが反応する流れが発生する流体力学システムの分析及び工学的設計のために使用され、さらに、
a)データソースモジュールが流体力学システムのジオメトリに関するデータに応答し、さらに反応する流れに追加される反応する種のソースに関するデータにも応答する計算可能な流体力学(CFD)モジュールであり、解釈されるデータのストリームとして、流れ及び反応する流れの他の特性を表す数値データセットを提供し、
b)ビューアモジュールが流れ及び反応する流れの他の特性を表す数値データセットに応答し、流体力学システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのを補助する完全な没入型環境と言う様な環境における流れ及び反応する流れの他の特性を表す数値データセットのビューも提供する
ことを特徴とする請求項1記載のハードウェアによって適応可能なデータビジュアリゼーションツール。 - 当該ツールが
本発明のさらにまだ別の追加の態様においては、ビジュアリゼーションツールは公害防止システムなどの目標とされる炉内噴射システムを設計する際に使用するため、又燃焼プロセスを制御するために使用される燃焼生成物と反応す反応種を燃焼プロセスの中に導入するための特別な機能であり、更に
a)データソースモジュールは当該特別な機能を含む燃焼システムのジオメトリに関するデータに応答し、さらに燃焼プロセスに追加される反応する種のソースに関するデータに応答する計算可能な流体力学(CFD)モジュールであり、解釈されるデータのストリームとして燃焼プロセスの流れ及び他の特性を表す数値データセットを提供し、
b)ビューアモジュールは燃焼プロセスの流れ及び他の特徴を表す数値データセットに応答し、当該特別な機能を含む燃焼システムのジオメトリに関するデータを提供し、ユーザが数値データセットを解釈するのに役立つ完全な没入型環境と言う様な環境で燃焼プロセスの流れ及び他の特性を表す数値データセットのビューも提供する
ことを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。 - データビジュアリゼーションツールが2つまたはそれ以上の異なるビューアモジュールを備え、あるビューアモジュールが第1のコンピュータによってホストされ、別のビューアモジュールが第2のコンピュータによってホストされ、ビューアモジュールが同じモデルデータを使用することを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- 複数の同期されたダイアログボックスがデータの破壊を防止するために使用されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- 別個のコントロールダイアログボックス及びビジュアリゼーションウィンドウが提供されることを特徴とする請求項1に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- 強力なスクリプト化言語が、リアルタイムビジュアリゼーションを導くために自動化スクリプト化モジュールに入力を提供するために使用されることを特徴とする請求項2に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- スクリプトファイルが複雑なビジュアリゼーションピクチャを生成するために使用されることを特徴とする請求項1に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- CAVElibベースのアプリケーションまたはVRJugglerベースのアプリケーションを含む複数のVRベースライブラリとともに同じグラフィックライブラリを使用できるオブジェクト構造が提供されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- ビューアが粒子の複数のグラフィック表現を単一のストリームラインに配置し、ストリームラインが計算されるより多くの粒子を視覚的に表現できるようにすることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- ストリームラインが生存期間により彩色されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- プログラミングインタフェースは、スカラ値sを所望される色にマッピングするために1つまたは別の関数f(s)を使用してユーザがカラーマップをコーディングできるようにするプログラミングインタフェースが提供されることを特徴とする請求項1に記載のハードウェアによって適応可能なデータビジュアリゼーションツール。
- ストリームライン、噴射器、及び一団となった噴射器などのすべての異なった種類のグラフィック追跡調査オブジェクトを視覚化するために1つのコードセクションが使用されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- モジュールのそれぞれが、ビューアが任意のタイプのデータを解釈できるようにオブジェクト指向設計に従って実行されることを特徴とする請求項2に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- モジュールのそれぞれが、アプリケーションが、単一のデータソース出力ファイル内のさまざまなタイプのセルを解釈できるようにオブジェクト指向設計に従って実行されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- モジュールのそれぞれが、データソースプログラムによって提供されるデータセット用の差し込み可能な読取装置を可能とするようにオブジェクト指向設計に従って実行されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- 噴射器の特性がプラグインを介して定義可能であることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- 粒子プラグインが、ユーザがさまざまな粒子特性を開発できるようにするために使用されることを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- 外形平面が、普通の2次元のグリッド上で点をサンプリングすることによって構築され、それによりグリッドとは無関係である外形を提供することを特徴とする請求項1に記載のハードウェア適応可能なデータビジュアリゼーションツール。
- ビューアコンポーネントモジュールが、
a)表示されている領域の境界の表現を提供するため、ジオメトリについての情報を含むデータソース入力ファイルを提供するため、及び数値データセットの中の情報を表す動的ビジュアリゼーションオブジェクトを検索、記憶及び表示するために、表示されている領域に対応するジオメトリの境界を記述するジオメトリ情報に応え、ジオメトリ情報と関連する表示特性の変化に応え、表示特性の変化にも応え、要約数値データにも応え、要約数値データを提供するため、及びビジュアリゼーションデータに応え、ビジュアリゼーションオブジェクトのグラフィック表現を提供するためのデータビジュアリゼーションモジュールと、
b)インタフェースジオメトリ及び関連する表示特性に変更を提供するため、ビジュアリゼーションオブジェクトのグラフィック表現に関連付けられる表示特性を提供するために、データビジュアリゼーションツールのユーザが、ユーザツールコントロール及び入力に応え、ビューを要求する、あるいはオブジェクトを表示することを要求する手段としての役割を果たすインタフェースモジュールであるインタフェースシステムモジュールであって、要約データにも応え、さらに要約データのグラフィック出力を提供するため、またフライト計画または数値データセットを表示するための他の標準化された命令を維持するため、フライト計画に関連付けられた表示特性に変更を提供するためのインタフェースシステムモジュールと、
c)グラフィックオブジェクトを生成するためのデータに応えてグラフィックオブジェクトを生成するため、生成されたグラフィックオブジェクトを提供するため、及び標準フォーマットの後に数値データセットを視覚化のためのデータに変換するため、視覚化のためのデータを提供するためのデータ解釈モジュールと、
d)標準アプリケーションプログラミングインタフェースにさまざまなデータソースプログラムデータ構造を変換するため、数値データセットに応えてさまざまなフォーマットでデータを出力するデータソースプログラムからのデータの視覚化を可能にし、標準フォーマットに従って数値データセットを提供するためのデータ変換モジュールと、
を備え、
データソースモジュールが、カルキュラトリデータソースモジュールとノンカルキュラトリデータソースモジュールから構成されるグループから選択される、
ことを特徴とする請求項1に記載のハードウェア適応可能データビジュアリゼーションツール。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US29314301P | 2001-05-23 | 2001-05-23 | |
US10/026,332 US20020199156A1 (en) | 2001-05-23 | 2001-12-21 | Hardware-adaptable data visualization tool for use in complex data analysis and engineering design |
PCT/US2002/016340 WO2002095507A1 (en) | 2001-05-23 | 2002-05-23 | Hardware-adaptable data visualization tool for use in complex data analysis and engineering design |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005501314A true JP2005501314A (ja) | 2005-01-13 |
JP2005501314A5 JP2005501314A5 (ja) | 2005-09-15 |
Family
ID=26701098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002591917A Pending JP2005501314A (ja) | 2001-05-23 | 2002-05-23 | 複雑なデータ分析及び工学的設計で使用するためのハードウェア適応可能データビジュアリゼーションツール |
Country Status (7)
Country | Link |
---|---|
US (1) | US20020199156A1 (ja) |
EP (1) | EP1415203A1 (ja) |
JP (1) | JP2005501314A (ja) |
KR (1) | KR20040069261A (ja) |
CA (1) | CA2445616A1 (ja) |
TW (1) | TW556091B (ja) |
WO (1) | WO2002095507A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012525638A (ja) * | 2009-04-30 | 2012-10-22 | マイクロソフト コーポレーション | データ可視化プラットフォームのパフォーマンスの最適化 |
Families Citing this family (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6954910B2 (en) * | 2002-01-31 | 2005-10-11 | Cadence Design Systems, Inc. | Method and apparatus for producing a circuit description of a design |
US6747650B2 (en) * | 2002-04-22 | 2004-06-08 | Battelle Memorial Institute | Animation techniques to visualize data |
JP4889432B2 (ja) * | 2006-10-06 | 2012-03-07 | 愛三工業株式会社 | 燃料ポンプ |
US8786628B2 (en) * | 2007-09-14 | 2014-07-22 | Microsoft Corporation | Rendering electronic chart objects |
EP2223126B1 (en) | 2007-12-07 | 2018-08-01 | Landmark Graphics Corporation, A Halliburton Company | Systems and methods for utilizing cell based flow simulation results to calculate streamline trajectories |
US8276106B2 (en) * | 2009-03-05 | 2012-09-25 | International Business Machines Corporation | Swarm intelligence for electrical design space modeling and optimization |
US9250926B2 (en) * | 2009-04-30 | 2016-02-02 | Microsoft Technology Licensing, Llc | Platform extensibility framework |
US11348147B2 (en) | 2020-04-17 | 2022-05-31 | At&T Intellectual Property I, L.P. | Facilitation of value-based sorting of objects |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US10620790B2 (en) * | 2016-11-08 | 2020-04-14 | Microsoft Technology Licensing, Llc | Insight objects as portable user application objects |
US10684762B2 (en) * | 2018-08-27 | 2020-06-16 | Sap Se | Analytics design system |
CN111324401A (zh) * | 2018-12-17 | 2020-06-23 | 西门子股份公司 | 工件加工程序可视化方法、装置、系统及存储介质 |
US11068558B2 (en) * | 2018-12-21 | 2021-07-20 | Business Objects Software Ltd | Managing data for rendering visualizations |
CN110717295B (zh) * | 2019-10-09 | 2020-09-08 | 西南石油大学 | 一种利用有限元方法追踪致密砂岩储层流线分布的方法 |
CN111061930B (zh) * | 2019-12-23 | 2023-04-25 | 武汉赛摩博晟信息科技有限公司 | 一种基于rgb分段函数控制模型的大数据可视化方法 |
US11217029B2 (en) * | 2020-04-16 | 2022-01-04 | At&T Intellectual Property I, L.P. | Facilitation of augmented reality-based space assessment |
US11537999B2 (en) | 2020-04-16 | 2022-12-27 | At&T Intellectual Property I, L.P. | Facilitation of automated property management |
US11810595B2 (en) | 2020-04-16 | 2023-11-07 | At&T Intellectual Property I, L.P. | Identification of life events for virtual reality data and content collection |
US11568456B2 (en) | 2020-04-17 | 2023-01-31 | At&T Intellectual Property I, L.P. | Facilitation of valuation of objects |
US11153707B1 (en) | 2020-04-17 | 2021-10-19 | At&T Intellectual Property I, L.P. | Facilitation of audio for augmented reality |
US11568987B2 (en) | 2020-04-17 | 2023-01-31 | At&T Intellectual Property I, L.P. | Facilitation of conditional do not resuscitate orders |
CN111770594B (zh) * | 2020-06-17 | 2022-04-19 | 陕西飞机工业(集团)有限公司 | 一种便携式多用途玻璃加温系统调试电路 |
US11681964B2 (en) | 2021-03-15 | 2023-06-20 | Cerner Innovation, Inc. | System and method for optimizing design, workflows, performance, and configurations based on design elements |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3900554A (en) * | 1973-03-16 | 1975-08-19 | Exxon Research Engineering Co | Method for the reduction of the concentration of no in combustion effluents using ammonia |
US4208386A (en) * | 1976-03-03 | 1980-06-17 | Electric Power Research Institute, Inc. | Urea reduction of NOx in combustion effluents |
US4780289A (en) * | 1987-05-14 | 1988-10-25 | Fuel Tech, Inc. | Process for nitrogen oxides reduction and minimization of the production of other pollutants |
US4777024A (en) * | 1987-03-06 | 1988-10-11 | Fuel Tech, Inc. | Multi-stage process for reducing the concentration of pollutants in an effluent |
US4954076A (en) * | 1989-07-28 | 1990-09-04 | Air Products And Chemicals, Inc. | Flame stabilized oxy-fuel recirculating burner |
US5315530A (en) * | 1990-09-10 | 1994-05-24 | Rockwell International Corporation | Real-time control of complex fluid systems using generic fluid transfer model |
JP2775538B2 (ja) * | 1991-11-14 | 1998-07-16 | 住友重機械工業株式会社 | 成形シミュレーション方法及び装置 |
JP3127026B2 (ja) * | 1991-12-20 | 2001-01-22 | 富士通株式会社 | 分子設計支援システム |
US5336081A (en) * | 1992-11-24 | 1994-08-09 | Bluenox Japan Kabushiki Kaisha | Device and method for removing nitrogen oxides |
US5537641A (en) * | 1993-11-24 | 1996-07-16 | University Of Central Florida | 3D realtime fluid animation by Navier-Stokes equations |
US5604687A (en) * | 1994-01-31 | 1997-02-18 | Texas Instruments Incorporated | Thermal analysis system and method of operation |
US5619685A (en) * | 1994-11-04 | 1997-04-08 | Ball Corporation | Run-time dynamically adaptive computer process for facilitating communication between computer programs |
US6034697A (en) * | 1997-01-13 | 2000-03-07 | Silicon Graphics, Inc. | Interpolation between relational tables for purposes of animating a data visualization |
US6816903B1 (en) * | 1997-05-27 | 2004-11-09 | Novell, Inc. | Directory enabled policy management tool for intelligent traffic management |
US6112304A (en) * | 1997-08-27 | 2000-08-29 | Zipsoft, Inc. | Distributed computing architecture |
US6008808A (en) * | 1997-12-31 | 1999-12-28 | Nortel Network Corporation | Tools for data manipulation and visualization |
JP2888240B1 (ja) * | 1998-03-26 | 1999-05-10 | 日本電気株式会社 | スパッタ形状シミュレーション方法 |
US6300947B1 (en) * | 1998-07-06 | 2001-10-09 | International Business Machines Corporation | Display screen and window size related web page adaptation system |
US6266071B1 (en) * | 1998-11-20 | 2001-07-24 | Silicon Graphics, Inc. | Method of producing fluid-like animations using a rapid and stable solver for the Navier-Stokes equations |
US6766521B1 (en) * | 1999-05-27 | 2004-07-20 | Sun Microsystems, Inc. | Dataflow algorithm for symbolic computation of lowest upper bound type |
US6234968B1 (en) * | 1999-06-15 | 2001-05-22 | Acuson Corporation | 3-D diagnostic medical ultrasound imaging using a 1-D array |
-
2001
- 2001-12-21 US US10/026,332 patent/US20020199156A1/en not_active Abandoned
-
2002
- 2002-05-23 KR KR10-2003-7015371A patent/KR20040069261A/ko not_active Application Discontinuation
- 2002-05-23 EP EP02729300A patent/EP1415203A1/en not_active Withdrawn
- 2002-05-23 TW TW091110882A patent/TW556091B/zh not_active IP Right Cessation
- 2002-05-23 WO PCT/US2002/016340 patent/WO2002095507A1/en not_active Application Discontinuation
- 2002-05-23 CA CA002445616A patent/CA2445616A1/en not_active Abandoned
- 2002-05-23 JP JP2002591917A patent/JP2005501314A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012525638A (ja) * | 2009-04-30 | 2012-10-22 | マイクロソフト コーポレーション | データ可視化プラットフォームのパフォーマンスの最適化 |
Also Published As
Publication number | Publication date |
---|---|
KR20040069261A (ko) | 2004-08-05 |
US20020199156A1 (en) | 2002-12-26 |
EP1415203A1 (en) | 2004-05-06 |
TW556091B (en) | 2003-10-01 |
CA2445616A1 (en) | 2002-11-28 |
WO2002095507A1 (en) | 2002-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005501314A (ja) | 複雑なデータ分析及び工学的設計で使用するためのハードウェア適応可能データビジュアリゼーションツール | |
Zachmann | Virtual reality in assembly simulation-collision detection, simulation algorithms, and interaction techniques | |
Hartmann et al. | Design as exploration: creating interface alternatives through parallel authoring and runtime tuning | |
Forney et al. | User's Guide for Smokeview Version 4: A Tool for Visualizing Fire Dynamics Simulation Data | |
King et al. | Open-source simulation software “JaamSim” | |
Kamat | VITASCOPE: Extensible and scalable 3D visualization of simulated construction operations | |
Krecklau et al. | Procedural modeling of interconnected structures | |
JP2005501314A5 (ja) | ||
Dörner et al. | Content creation and authoring challenges for virtual environments: from user interfaces to autonomous virtual characters | |
El Nimr et al. | Application of gaming engines in simulation driven visualization of construction operations | |
Von Pilgrim et al. | Gef3D: a framework for two-, two-and-a-half-, and three-dimensional graphical editors | |
Kress | In situ visualization techniques for high performance computing | |
Kamat et al. | Software mechanisms for extensible and scalable 3D visualization of construction operations | |
Häfner | PolyVR-a virtual reality authoring framework for engineering applications | |
Hibbard et al. | Java distributed components for numerical visualization in VisAD | |
Jeffery et al. | Writing virtual environments for software visualization | |
AU2002259300A1 (en) | Hardware-adaptable data visualization tool for use in complex data analysis and engineering design | |
Hidayat | BUILDING A VIRTUAL HAND FOR SIMULATION | |
Kamat et al. | Interactive discrete-event simulation of construction processes in dynamic immersive 3D virtual worlds | |
Revie | Designing a Data-Driven Renderer | |
Kim et al. | 3d animation using visual script language | |
Howell et al. | A discrete event simulation package for Java | |
Lipp | Interactive computer generated architecture | |
Ma et al. | Industrial Robot Simulation Based on OpenGL | |
George et al. | Using Processing to Develop iCove: a Tool for Interactive Coastal Oceanographic Visualization. |