"収納容器内の液面の位置を計算する方法であって:a前記収納容器のソリッドモデル表現を含む第1データ集合を保存するステップと、b前記収納容器の空間姿勢を表わす第2データ集合を保存するステップと、c前記収納容器の加速度の絶対値及び方向を表わす第3データ集合を保存するステップと、d前記収納容器内の液体ボリュームを表わす液体ボリュームデータを保存するステップと、e前記収納容器内の前記液体の液面を表わす第1画像データ集合を求めるステップであって、前記第1画像データ集合が、少なくとも前記第1~第3データ集合、及び前記液体ボリュームデータの関数である、前記求めるステップと、f前記空間姿勢を有する前記収納容器を表わす第2画像データ集合と交差する関係にある前記第1画像データ集合を表示するステップと、を含む、方法。前記求めるステップは:i前記液面の前記位置に関する現在推定値を選択するステップと、ii前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、正則化ソリッドモデリング演算を用いて求めるステップと、iii前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、前記液体ボリュームデータで表わされる前記液体ボリュームと比較するステップと、iv前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記液体ボリュームデータで表わされる前記液体ボリュームに十分に近似していない場合、数値計算法を用いて、前記液面の位置に関する異なる現在推定値を選択するステップと、vステップii~ivを、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記液体ボリュームデータで表わされる前記液体ボリュームに十分に近似するまで繰り返すステップと、を含む、請求項1に記載の方法。前記数値計算法では、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームと、前記液体ボリュームデータで表わされる前記液体ボリュームとの差に等しい関数のゼロに対するより良好な連続する近似値を求める、請求項2に記載の方法。更に:前記収納容器に接続されるポートの面積及び高さを表わす第4データ集合を保存するステップと、前記ポートを介して前記収納容器に流入する、または前記収納容器から流出する液体流量を計算するステップであって、前記計算した流量が、前記第1~第4データ集合及び前記液体ボリュームデータの関数である、前記計算するステップと、を含み、前記第1画像データ集合が更に、前記第4データ集合の関数である、請求項1に記載の方法。更に、次のグループ:露出液体面積;前記収納容器の濡れ面積;及び前記収納容器内の前記液体の重量分布から選択される容器特性を求めるステップを含む、請求項1に記載の方法。更に、ディップスティックのソリッドモデル表現を、前記収納容器内の前記液体のソリッドモデル表現と交差させるステップを含む、請求項1に記載の方法。相互接続部を介して連通する第1及び第2貯留室を備える収納容器内の液体の動きをシミュレートする方法であって:a前記第1貯留室のソリッドモデル表現を含む第1データ集合を保存するステップと、b前記第2貯留室のソリッドモデル表現を含む第2データ集合を保存するステップと、c前記収納容器の空間姿勢を表わす第3データ集合を保存するステップと、d前記第1貯留室と前記第2貯留室との間の前記相互接続部の面積及び高さを表わす第4データ集合を保存するステップと、e前記第1貯留室内の初期液体ボリュームを表わす第1液体ボリュームデータを保存するステップと、f前記第2貯留室内の初期液体ボリュームを表わす第2液体ボリュームデータを保存するステップと、g前記第1貯留室内の液体の少なくとも初期液面を表わす第1画像データ集合を求めるステップであって、前記第1画像データ集合が、少なくとも前記第1及び第3データ集合、及び前記第1液体ボリュームデータの関数である、前記求めるステップと、h前記第2貯留室内の液体の少なくとも初期液面を表わす第2画像データ集合を求めるステップであって、前記第2画像データ集合が、少なくとも前記第2及び第3データ集合、及び前記第2液体ボリュームデータの関数である、前記求めるステップと、iステップg及びhの後に、前記第1貯留室及び前記第2貯留室内の液面の差に起因する圧力の変化を計算するステップと、jステップiで計算される圧力が変化するたびに、前記第1及び第2貯留室のうちの一方の貯留室から他方の貯留室に流れる液体流量を計算するステップであって、前記計算した流量が、少なくとも圧力の該当する変化、及び前記第4データ集合の関数である、前記計算するステップと、kステップi及びjの後に、前記第1貯留室内の後の時点の液面を表わす第3画像データ集合を求めるステップと、lステップi及びjの後に、前記第2貯留室内の後の時点の液面を表わす第4画像データ集合を求めるステップと、mステップk及びlの後に、前記空間姿勢を有する前記収納容器の前記第1及び第2貯留室を表わす第5画像データ集合と交差する関係にある前記第3及び第4画像データ集合を表示するステップと、を含む、方法。更に、ステップg及びhの後に実施されるステップであって、前記第5画像データ集合と交差する関係にある前記第1及び第2画像データ集合を表示する前記ステップを含む、請求項7に記載の方法。更に、前記収納容器の加速度の絶対値及び方向を表わす第5データ集合を保存するステップを含み、前記第1及び第2画像データ集合が更に、前記第5データ集合の関数である、請求項7に記載の方法。更に、ステップiを実施している間に実施されるステップであって、前記第1及び第2貯留室内の変化する液面を表わす画像データを表示する前記ステップを含む、請求項7に記載の方法。ステップgは:i前記第1貯留室内の前記液面の前記位置に関する現在推定値を選択するステップと、ii前記第1貯留室内の前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、正則化ソリッドモデリング演算を用いて求めるステップと、iii前記第1貯留室内の前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、前記第1液体ボリュームデータで表わされる前記液体ボリュームと比較するステップと、iv前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記第1液体ボリュームデータで表わされる前記液体ボリュームに十分に近似していない場合に、数値計算法を用いて、前記液面の位置に関する異なる現在推定値を選択するステップと、vステップii~ivを、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記第1液体ボリュームデータで表わされる前記液体ボリュームに十分に近似するまで繰り返すステップと、を含む、請求項7に記載の方法。前記数値計算法では、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームと、前記液体ボリュームデータで表わされる前記液体ボリュームとの差に等しい関数のゼロに対するより良好な連続する近似値を求める、請求項11に記載の方法。更に、次のグループ:前記第1及び第2貯留室内の露出液体面積;前記第1及び第2貯留室の濡れ面積;前記収納容器内の前記液体の重量分布;前記第1及び第2貯留室に捕集される液体の量;及び前記第1及び第2貯留室のうちの一方から他方に、前記収納容器の前記姿勢が変化するときに移送される液体の量から選択される容器特性を求めるステップを含む、請求項7に記載の方法。収納容器内の液面の位置を計算するシステムであって:前記収納容器内の前記液体の液面を表わす第1画像データ集合を求め、前記第1画像データ集合が少なくとも、前記収納容器のソリッドモデル表現を含む第1データ集合、前記収納容器の空間姿勢を表わす第2データ集合、前記収納容器の加速度の絶対値及び方向を表わす第3データ集合、及び前記収納容器内の液体ボリュームを表わす液体ボリュームデータの関数となるようにプログラムされるプロセッサと、前記空間姿勢を有する前記収納容器を表わす第2画像データ集合と交差する関係にある前記第1画像データ集合を表示する表示装置と、を備える、システム。求める前記操作は:i前記液面の前記位置に関する現在推定値を選択するステップと、ii前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、正則化ソリッドモデリング演算を用いて求めるステップと、iii前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームを、前記液体ボリュームデータで表わされる前記液体ボリュームと比較するステップと、iv前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記液体ボリュームデータで表わされる前記液体ボリュームに十分に近似していない場合に、数値計算法を用いて、前記液面の位置に関する異なる現在推定値を選択するステップと、vステップii~ivを、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームが、前記液体ボリュームデータで表わされる前記液体ボリュームに十分に近似するまで繰り返すステップと、を含む、請求項14に記載のシステム。前記数値計算法では、前記液面の位置に関する前記現在推定値を下回る前記液体ボリュームと、前記液体ボリュームデータで表わされる前記液体ボリュームとの差に等しい関数のゼロに対するより良好な連続する近似値を求める、請求項15に記載のシステム。前記プロセッサは更に、ポートを介して前記収納容器に流入する、または前記収納容器から流出する液体流量を計算するようにプログラムされ、前記流量は、前記第1~第3データ集合、前記液体ボリュームデータ、及び前記ポートの面積及び高さを表わす第4データ集合の関数であり、前記第1画像データ集合が更に、前記第4データ集合の関数である、請求項14に記載のシステム。前記プロセッサは更に、次のグループ:露出液体面積;前記収納容器の濡れ面積;及び前記収納容器内の前記液体の重量分布から選択される容器特性を求めるようにプログラムされる、請求項14に記載のシステム。前記プロセッサは更に、ディップスティックのソリッドモデル表現を、前記収納容器内の前記液体のソリッドモデル表現と交差させるようにプログラムされる、請求項14に記載のシステム。相互接続部を介して連通する第1及び第2貯留室を備える収納容器内の液体の動きをシミュレートするシステムであって:次の操作:a少なくとも前記第1貯留室内の液体の初期液面を表わす第1画像データ集合を求める操作であって、前記第1画像データ集合が少なくとも、前記第1貯留室のソリッドモデル表現を含む第1データ集合、前記収納容器の空間姿勢を表わす第2データ集合、及び前記第1貯留室内の初期液体ボリュームを表わす第1液体ボリュームデータの関数である、第1画像データ集合を求める前記操作、b少なくとも前記第2貯留室内の液体の初期液面を表わす第2画像データ集合を求める操作であって、前記第2画像データ集合が少なくとも、前記第2貯留室のソリッドモデル表現を含む第3データ集合、前記収納容器の前記空間姿勢を表わす前記第2データ集合、及び前記第2貯留室内の初期液体ボリュームを表わす第2液体ボリュームデータの関数である、第2画像データ集合を求める前記操作、c前記第1及び第2貯留室内の液面の差に起因する圧力の変化を計算する操作、d計算圧力が変化するたびに、前記第1及び第2貯留室のうちの一方の貯留室から他方の貯留室に流れる液体流量を計算する操作であって、前記計算した流量が少なくとも、圧力の該当する変化、及び前記第4データ集合の関数である、液体流量を計算する前記操作、e前記第1貯留室内の後の時点の液面を表わす第3画像データ集合を求める操作、及びf前記第2貯留室内の後の時点の液面を表わす第4画像データ集合を求める操作を実行するようにプログラムされるプロセッサと、前記空間姿勢を有する前記収納容器の前記第1及び第2貯留室を表わす第5画像データ集合と交差する関係にある前記第3及び第4画像データ集合を表示する表示装置と、を備える、システム。前記第3及び第4画像データ集合は少なくとも、前記収納容器の加速度の絶対値及び方向を表わす第5データ集合の関数である、請求項20に記載のシステム。次に、動的状態における燃料タンク内の液体の動きをモデル化し、そしてシミュレートするシステムの種々の実施形態について説明する。図1は、燃料を貯留する貯留室4,6,及び8を備える翼2のソリッドモデル表現である。本発明の1つの実施形態によれば、翼2のソリッドモデル表現には、無限水平半空間10の面18が交差し、当該面18は、15のボリュームを占める液体を満たした状態の翼2の内部の燃料の油面すなわち、燃料の液面を表わす油面を表わしている。斜めから眺める視点が、図を分かり易くするために選択されている。図2Aに示すように、翼2の貯留室4は、貯留室6とオリフィスを介して液体連通し、そして貯留室6は、貯留室8とオリフィスを介して液体連通している。図2Aは、バンク角が0度の状態の翼2を示している。これとは異なり、図2Bは、15のボリュームを占める液体を満たした状態で、かつバンク角が0度の状態の翼2の内部の燃料ボリュームのソリッドモデル表現である。図2Bに示すように、これらの燃料タンク室の内部の燃料ボリュームは、それぞれの燃料ボリューム12,14,及び16を含む。図1から最も良く分かるように、燃料ボリューム12は貯留室4に収容され;燃料ボリューム14は貯留室6に収容され;そして燃料ボリューム16は貯留室8に収容される。以下に更に詳細に開示されるように、プロセッサをソフトウェアでプログラムし、このソフトウェアで面18燃料油面を表わすの位置及び姿勢を、翼2のソリッドモデル表現、翼2の空間姿勢、翼2の内部に収容される燃料の量、及び翼2の内部の燃料に影響する動的状態例えば、翼の加速度の関数として求めるアルゴリズムを実行する。例えば、翼2のバンク角が変化すると、翼2の内部の燃料の位置が変化する。図3Aが、バンク角が9度の状態の同じ翼2のソリッドモデル表現であるのに対し、図3Bは、15のボリュームを占める液体を満たした状態で、かつバンク角が9度の状態の翼2の内部の燃料のボリュームのソリッドモデル表現である。図3Bから分かるように、燃料タンク室4及び6の内部の燃料ボリュームは、それぞれ燃料ボリューム12’及び14’を含む。図3Aに示す空間姿勢になっていて、15が満たされている状態では、貯留室8には燃料が無い。図4Aは、45度の角度の姿勢になっている円筒形収納容器22のソリッドモデル表現である。図4Bは、図4Aに表わされる円筒形収納容器22に収容される液体24で15のボリュームを占めるように満たした状態のソリッドモデル表現であり、このソリッドモデルは、図1、2A、2B、3A、及び3Bに示す画像を生成するために使用される同じアルゴリズムにより生成される。これは、当該アルゴリズムの一般的な性質を示している。図5は、本発明の1つの実施形態による収納容器の液面を算出し、そして表示するシステムの構成要素群を表わすブロック図である。当該システムは、ソリッドモデラーソフトウェア26でプログラムされるプロセッサ20を備え、このモデラーソフトウェア26では、ブーリアンソリッドモデリング演算、及び任意形状の収納容器の液面、例えば航空機翼内の液面を算出する非線形方程式ソルバ28を用いる。ソリッドモデラー26は、収納容器の境界表現を非線形方程式ソルバ28に出力する。収納容器のソリッドモデルは、形状を当該容器の境界で表現し、これらの境界は、共通辺で接合されて合体する水密空間容器を形成する面集合から成る。非線形方程式ソルバ28は、入力として、収納容器のソリッドモデル境界表現、空間中の所望の姿勢図5の入力A、動的状態例えば、横方向加速度図5の入力B、及び容器に収容される液体の量すなわち、ボリューム図5の入力Cを取り込む。収納容器内の液体の液面を求めるために、システムソルバ28は、連続ブーリアン減算を、容器の内部の液面を表わす無限水平半空間例えば、図1のアイテム10を用いて繰り返し実行する。結果として得られる分割ソリッドモデルを用いて、該当する液面になっている液体に対応するボリュームを算出する。反復システムソルバ28は、分割収納容器の算出ボリュームが、指定された液体例えば、燃料ボリュームに所定誤差内で一致すると終了する。当該システムソルバの結果は、算出液体ボリュームのソリッドモデル境界表現である。動的状態に対応する、例えば旋回または上昇のような加速度が生じる場合に対応するために、水平液面の代わりに、合計加速度に対応する角度の平面を用いる。次に、動的状態における液体のこの最終境界表現は表示装置30に出力され、この表示装置30は、水平液面が交差する収納容器のソリッドモデルの画像例えば、図1に示すようなを表示する。図6は、図5に示すシステムが実行するアルゴリズムを示すフローチャートである。ステップ32では、プロセッサは、収納容器のソリッドモデル境界表現をメモリから取り出す。ステップ34では、プロセッサは、更に別のデータをメモリから取り出す。好適な実施形態によれば、更に別のデータは:収納容器の空間姿勢;収納容器内の液体の量すなわち、目標ボリューム;及び収納容器の加速度の絶対値及び方向すなわち、合計加速度ベクトルを少なくとも含む。ステップ36では、プロセッサは、液面が取り得る位置のリミットを求め、これらのリミットは、空間姿勢、目標ボリューム、及び加速度ベクトルすなわち、加速度ベクトルは、液面の法線方向を向いているの関数である。当該ツールは、立体のリミット、すなわち当該立体の境界の最小及び最大のx、y、及びz値を求める方法を実行することができる。これらのリミットは、立体を包含するバウンディングボックスの対向するコーナーを定義する2つのポイントであると考えることができる。重力のみが液体に作用している状態-すなわち、合計加速度が慣性z方向に完全に一致する状態-では、これらの液体リミットは立体のzリミットである。航空機加速度が更に大きくなって、合計加速度ベクトルが、z方向と一致しなくなる場合では、容器をまず一時的に、当該容器の合計加速度ベクトルが慣性z方向に一致するまで回転させる。次に、当該ツールは、回転後の立体のリミットを求めて、回転後のバウンディングボックスを定義する。回転後の立体を廃棄し、そして当該立体のバウンディングボックスのリミットを、回転させて元の慣性座標系に戻し、この場合、これらのリミットの間に引かれる半直線は、液体平面に対応する範囲の位置特定ポイント群を含み、これらの位置特定ポイントは加速度ベクトルに一致する。更に詳細には、これらのリミットは、ソリッドモデルのバウンディングボックス計算に基づいて設定され、この場合、当該バウンディングボックスは、現在の座標系の軸に沿って配向する例えば、x-y平面は、水平平面を表わし、z成分は、垂直方向の高さを表わす-この場合、vertical垂直とは、重力の方向、及び他の加速度に対応する全ての要素の方向を指す。ソリッドモデルのバウンディングボックスの算出方法は公知であるが、ソリッドモデルを取り囲むボックスの厳密さには種々の度合いがある。z成分は、本明細書において開示される実施形態により使用されるリミットである。開示される実施形態では、境界表現のバウンディングボックスを、境界表現の複数面の下層面の全てのバウンディングボックスを算出することにより算出し、そして次に、これらのボックスを、これらのボックスの極点群について収集される極小値及び極大値を各座標方向に計算することにより組み合わせる。従って、バウンディングボックスは、少し精度が甘くなってしまうが、計算を実行するためには、それは問題ではない。従って、問題は、表面のバウンディングボックスを求めることに帰着し、これを求めるためには、公開されている多種多様な方法がある。開示される実施形態では、テンソル積スプラインを用いて、これらの表面を表現し、そして制御ポリゴンのバウンドを多項式スプライン加重スプラインは更に複雑であるに使用する。しかしながら、これは単なる1つの例示的な実施形態に過ぎず、そしてバウンディングボックスを算出する他の公開されている方法がある。バウンディングボックスを算出する種々の方法は、G.Farin著者らによる、かつElsevierB.V.によるHandbookofComputerAidedGeometricDesignコンピュータ援用幾何学設計ハンドブックのChapter13-InterrogationofSubdivisionSurfaces部分分割表面の調査:M.Sabin2002に開示されている。ステップ38では、プロセッサは、液面の位置に関する1次推定値すなわち、N=1とした場合のN次推定値を、線形補間により求め、このような1次推定値は、ステップ36で既に求めているリミット群の間に位置する。次に、プロセッサは、正則化ソリッドモデリングすなわち、ブーリアン演算を用いて、液面の位置の下の液体のボリュームを1次推定値に従って求める図6のステップ40参照。次に、プロセッサは、ステップ40で求めた液体ボリュームを目標ボリュームと比較しステップ42、そして液体ボリュームと目標ボリュームとの差が、許容できるかどうかを判断するステップ44。適用するテストは、算出ボリュームと目標ボリュームとの差が、ユーザ指定許容値に収まるかどうかに関して行なわれる図6のブロック46。当該差が許容できない場合、数値演算法例えば、擬似ニュートン-ラフソン法を用いて、液面の位置に関する推定値の精度を向上させるステップ42。精度が向上したこの推定値を用いて、ステップ42及び44を繰り返す。精度が向上した推定値が許容できないステップ42場合、ステップ48,40,及び42を、算出ボリュームと目標ボリュームとの差が許容できるまで繰り返す。当該差が許容できるステップ44場合、プロセッサは、液面の位置に関する最終推定値を表わす画像データ、及び/又は容器中の液体の算出ボリュームのソリッドモデル境界表現を保存し、当該ソリッドモデル境界表現の上面は、前述の液面であるステップ50。プロセッサは更に、当該画像データを表示装置例えば、コンピュータモニタに送信して表示させる。液面の位置を推定する数値演算法では、液面の位置に関する現在の推定値を下回る液体のボリュームと、前記液体ボリュームデータにより表わされる液体のボリュームとの差に等しい関数のゼロに、より良好に連続して近似する近似値を求める。一連の採用可能なゼロ発見法は、この技術分野で公知の多項式を用いる方法、及び導関数を用いる方法の両方を含む。異なる用途では、任意の数の異なる手法の利点を生かすことができる。図6を参照し続けると、ステップ40,42,44,及び48で表わされる繰り返しでは、異なるが機能的に等価な手法を利用することができる。例えば、第1バージョンのソースコードでは、大ブロックをシミュレート後の翼から減算して空き空間を、正則化ブーリアン演算を用いて無くす:cutsolid=solid-cutblock.Translate[0,0,zrangedelta/10.0]式中、-は、多重定義されて、正則化ブーリアン減算が立体BRepboundaryrepresentation:境界表現オブジェクトに対して施されることを意味する。第2バージョンでは、Cutコマンドを用い、このCutコマンドによって立体を無限平面で切断し、そして立体の一部のみを平面の正方向の法線に沿って保持する。両方のバージョンでは、同じ目的を、異なる方法を用いて達成し、そして両方のバージョンは、共に標準的なソリッドモデリング演算であると考えられる。第1バージョンの主要関数は、任意の立体を、当該立体の所定の姿勢で、大ブロックが所定のz値すなわち、高さに位置している状態で切断する関数cutWingsolid,hgt、及び収納容器のソリッドモデル、及び燃料のボリュームが与えられる場合に、擬似ニュートン-ラフソン反復法を用いて燃料油面を求める関数findwlsolid,volumeである。基本的に、この擬似ニュートン-ラフソン反復法では、液面を推定することから始まり、そして次に、液面を、特定の液面が与えられる場合に分割ソリッドモデルのボリュームを算出することにより繰り返し微細に調整する。本発明の開示の実施形態では、液面を求めるために適用されるニュートン法の内部のソリッドモデリング法を適用する。しかしながら、擬似ニュートン-ラフソン法は、この特定の問題を解く1つの可能な方法に過ぎない、すなわち次式に従って高さを求める:Volumecontainment_solid-big_blockatz=height-given_volume≦ε式中、-は、正則化ブーリアン減算を指し、εは小さい数値に設定され浮動小数点計算の精度が低く、かつ計算リソースが限定されているので、そしてbig_blockは、底面が地面に平行な概念的に矩形ボックスであり、かつ当該big_blockがcontainment_solidで表わされる収納容器よりも大きくなるようにサイズに設定される。無限に大きい半空間図1から分かるようにが更に作用する。幾つかの実施形態の場合、εは0.001~0.0001に設定された。数値を極めて小さい値に選択すると、ニュートン-ラフソン法が不安定になるまたは、計算時間が長くなる。関数cutWingsolid,hgtは、入力として、収納容器燃料タンク、ボトル、汚水処理タンクなどのBRepsolid立体で表わされるソリッドモデル、及び実数値で表わされる高さパラメータhgtを取り込む。高さ値hgtは、収納容器中の液面を表わし、これは、立体及び高さ値が共に、共通の及び、任意の原点を基準とすることを意味する。重力または、外力の存在も仮定し、これは、力の方向が収納容器中の液体の液面の法線となることを意味する。この実施形態では更に、液体が静止していて、周りに跳ねていないと仮定する。cutWingルーチンは、高さ値を用いて、液体が収納容器中で占める空間を表わすソリッドモデルを返す。概念的に、当該ルーチンはこれを、無限平面を生成し、立体をこの平面でスライスし、そして正の重力方向に在る部分を保持することにより行なう。1つのバージョンでは、収納容器は、地球の外周よりもずっと小さく、かつ収納容器中の液面が平坦であると見なすことができると仮定する。しかしながら、これを自明に拡張して、地球のサイズに対して大きい容器を、天体の中心を中心とする球または、他の形状を使用し、そして半径を、共通原点に対する容器の相対位置に応じて調整することにより包含することができる。cutWingルーチンでは、この操作は、ブロックが収納容器よりも大きくなるようにサイズ設定される大きい矩形ブロックのソリッドモデル表現を生成し、そして次に、当該ブロックを所定の高さに位置決めすることにより行なわれた。正則化ブーリアン演算を用いて、当該ブロックを収納容器から減算して、容器内に収容される液体のソリッドモデル表現を得た。幾つかの場合では、これは、液面が収納容器よりも下方になる場合に何も返さないことになるか、またはこれは、液面が容器よりも上方になる場合に収納容器全体を返すことになることに注目されたい。cutWingルーチンでは更に、所定の液面におけるブーリアン演算が失敗する場合に、僅かなデルタウィグルを高さ変数に発生させる。これにより基本的に、計算が成功したとの判定が返されるまで、当該ブロックを、zrangeを僅かにインクリメントしながら上下に小刻みに動かす。zrangeは、容器の最大高さの1に設定される。通常、ブーリアン演算の失敗は、境界表現の面に一致する切断面を扱う問題によって生じる。ブーリアン演算は、複数表面の多くの交差線を算出することにより行なわれ、そして2つの表面が部分的に一致する場合、解の数が無限になるすなわち、1つ以上の曲線ではなく、無限に多数の曲線が得られる、すなわちこれらの表面の部分集合が得られる。開示のシステム及び、殆どのCADシステムは、最も共通する一致を検出する特殊コードを有するが、ブーリアン演算が失敗する多くの場合が存在する。勿論、Boolean演算が失敗する例えば、バグが出る他の理由が多く存在し、そして摂動計算でトリックを使うことにより、これらのエラーから復旧することができる。これも、殆どのソリッドモデルリングシステムによって内部的に採用されているかなり普通の手法である。findwlsolid,volume関数では、次のパラメータ群を用いて燃料油面を求める:hlow,高さの現在の下側限界値を格納する変数hlow=zlower;vlow,容器のボリュームの現在の下側限界値を格納する変数vlow=0;hhigh,高さの現在の上側限界値を格納する変数hhigh=zupper;vhigh,容器のボリュームの現在の上側限界値を格納する変数vhigh=total;hmed,hlow及びhhighの平均[hmed=abshhigh-hlow.5zlower];vmed,hmedにおける液体のボリューム[vmed=cutWingsolid,hmed.Volume]。関数Volumeは、ソリッドモデルの面で囲まれる空間に含まれるボリュームを算出するルーチンソリッドモデルに関して定義されるである。ボリュームの境界表現は、共通辺で交わり、そして漏れ止め空間容器-を生成する複数面の集合により表わされる。関数Areaは、表面の部分集合を定義するトリミング曲線により定義される表面の一部の当該面積を算出するルーチンである。Areaを用いて、容器の濡れ面積を算出し、この濡れ面積は、容器の合計面積のうちの液体が触れる部分を表わすだけでなく、液体の上面の面積を表わす上面の面積を用いて蒸発速度などを求める。上に説明してきたアルゴリズムでは、幾何学的形状を離散的な棒で近似するのではなく、燃料タンクの幾何学的形状の実際のCAD定義を用いる。液面を算出するために、当該アルゴリズムでは、厳密なソリッドモデリング演算を、元の設計幾何学的形状に対して直接用いる。立体正則化Boolean演算では、幾何学的形状との必要な交差部を求め、続いて、分類を行なって、交差面群のうちの何れの交差面を保持すべきかを判断する。前に説明したように、立体を明確に表わす多くの方式が知られている。例えば、境界を使用してソリッドオブジェクトを表わす手法は、ACMComputingSurveys,Vol.12,No.4,pp.437-464December1980に掲載されたRequichaによるRepresentationsforRigidSolids剛性立体の表現:Theory,Methods,andSystems理論、方法、及びシステム,に開示されている。更に、Boolean演算をソリッドモデリングに用いて、ソリッドオブジェクトを、立方体、円筒体、及び他の境界表現のようなパラメータ化されたソリッドプリミティブの加算及び減算により定義する。例えば、Boolean減算を用いて、ソリッドオブジェクトを定義する手法は、ProceedingsoftheIEEE,Vol.73,No.1,pp.30-44January1985に掲載されたRequicha及びVoelckerによるBooleanOperatiosinSolidModelingソリッドモデリングにおけるブーリアン演算:BoundaryEvaluationandMergingAlgorithms境界解析及び融合アルゴリズム,に開示されている。別の実施形態によれば、シミュレーションシステムは、バッフル内の狭いオリフィスによって接続される貯留室または収納室を形成する内部バッフルを有する収納容器に対応することができるように設計される。液面高さ計算前に説明したようなをまず、各個々の貯留室すなわち、収納室に適用して初期液面高さを算出する。次に、各ペアの接続収納室の間に2つの連通容器の間の液面の差により生じる圧力である水頭水のエネルギーを水柱の高さで表わしたものを計算する。次に、この情報を利用して、液体がこれらの収納室の間を流れて液面が共通になる過程を計算する。この実施形態の1つの実施形態では、Mathworks社から市販されているSimulink登録商標ソフトウェア及びMATLAB登録商標ソフトウェアを、ソリッドオブジェクトを境界表現として表わすことができるソリッドモデリングソフトウェアと併せて利用する。MATLAB登録商標は、数値計算環境及びプログラミング言語である。MATLAB登録商標によって、行列操作、関数及びデータのプロット、及びアルゴリズムの実行が可能になる。Simulink登録商標は、マルチドメインダイナミックシステムをモデル化し、シミュレートし、そして解析するツールである。Simulink登録商標は、MATLAB登録商標環境に緊密に統合され、そしてMATLAB登録商標を駆動するか、またはMATLAB登録商標からスクリプト生成することができる。Mathworks社の物理モデリングツールを表わすために、Mathworks社は、SimscapeTMによって、Simulink登録商標を、機械系、電気系、油圧系、及び他の物理系を物理ネットワークとして結ぶシステムのモデリングツールを用いて拡張することができると明言している。Mathworks社は、基本的なビルディングブロックをこれらのドメインに基づいて提供して、カスタムコンポーネントのモデルを生成することができるようにしている。MATLAB登録商標は、数値計算環境及びプログラミング言語である。MATLAB登録商標ベースのSimscapeTMに言語によって、物理モデリングコンポーネント、ドメイン、及びライブラリのテキストベースのオーサリングが可能になる。本明細書において開示される本発明の実施形態では、Mathworks社の物理モデリングツールを利用するが、他の物理モデリングツールを利用することができる。オリフィスを介して連通する燃料タンクの一連の貯留室または収納室の間の流れをシミュレートする本発明の1つの実施形態によれば、ソルバ28図5参照は、多数のサブシステムを備え、これらのサブシステムは、各収納室における液面を算出する該当する燃料ボリュームサブシステムと、そして各オリフィスを流れる流量を各収納室における異なる液面の関数として計算する該当する接続サブシステムMathworks社が提供する標準ブロック群を用いると、を含む。[これらのサブシステムは、プロセッサが実行するそれぞれの命令セットを備える]。しかしながら、本発明は、相互接続要素がオリフィスである場合に限定されない。実際の用途では、タンク群の間には、シミュレートすることができるポンプ、バルブ、及び他のデバイスなどを通過するバルブ開閉部材、チューブ、チューブ導管のような多数の他の種類の相互接続部材が存在する。例示のために、次に、少なくとも部分的に満たされている燃料タンク収納室の液面、及びこれらの収納室を接続するオリフィスを流れる液体流量を計算する例示的なサブシステムについて説明する。これらの計算を拡張して、各収納室が液体燃料で少なくとも部分的に満たされている連続する少なくとも3つの連通収納室を有する模擬燃料タンクの計算を行なうことができる。同じ手順は、任意の多数の相互接続部材を有する任意の多数のソリッドオブジェクトの間で行なうことができる。図7は、接続情報を含む第3サブシステム56を境界とする2つの燃料ボリュームサブシステム52及び54オリフィスを介して接続されるそれぞれの液体収容貯留室または収納室に対応するを表わす最上位シミュレーションモデル図である。各燃料ボリュームサブシステム52,54は、該当する燃料収納室または貯留室に収容される液体燃料を表わし、そして燃料タンク内の同じ該当する燃料収納室または貯留室を表わす該当する固有のソリッドオブジェクトソリッドモデリングソフトウェアを用いて開始されると境界を接している。接続サブシステム56は、液体流量計算を実行して、一方の収納室から他方の収納室にオリフィスを通って流れる液体の流れをシミュレートする。1つの実施形態によれば、接続サブシステム56は、Mathworks社が提供する標準ブロック群のみを用いる。記載される実施形態によれば、各燃料ボリュームサブシステムは、タンクを表わす、または燃料タンク内の単一の収納室を表わすソリッドオブジェクトと相互作用する。これらのオブジェクトは、Simulink登録商標ワークスペースに、Baysという名前の付いたアレイとして読み込む必要がある。各燃料ボリュームサブシステムに関する初期条件は、シミュレーションオペレータが、コンピュータディスプレイのポップアップウィンドウを利用して入力することができる。このポップアップウィンドウは、それぞれBayNumber及びInitialVolumeと命名された2つのパラメータフィールドを有する。多数の収納室が当該アレイに含まれる場合、各収納室は、該当する初期液体ボリュームを用いて構成される必要がある。構成対象の収納室に関する収納室の個数は、BayNumberと命名されたフィールドに入力される。オブジェクトが1つしかない場合、BayNumberは、1に設定する必要がある。パラメータInitialVolumeによって、単位[len^3]で表わされるシミュレーションに対応する初期燃料ボリュームを設定し、この場合、lenは、立体を定義するために使用される単位である。例えば、立体をインチ単位で定義する場合、初期燃料ボリュームを単位[in^3]で設定する。また、同じ単位を使用して、入力ポートの収納室に流入する流量dV[len^3/s]を定義する。図7を参照し続けると、各燃料ボリュームサブシステム52,54は、シミュレート対象の収納容器の加速度のベクトルを表わす加速度ベクトルデータ58、及びシミュレート対象の収納容器の空間姿勢すなわち、基準座標系における回転のベクトルを表わす回転ベクトルデータ60を受信する。燃料ボリュームサブシステム52が更に、データを接続サブシステム56の出力ポートOut1から受信するのに対し、燃料ボリュームサブシステム54は、データを接続サブシステム56の出力ポートOut2から受信する。データ出力Out1は、収納室1及び2のうちの一方の収納室から他方の収納室に、指定直径を有する円形オリフィスを介して流れる液体流のシミュレーション時に接続サブシステム56によって計算される、収納室1に流入する、または収納室1から流出する液体流量dV単位:ボリューム/秒であるのに対し、データ出力Out2は、同じシミュレーション時に接続サブシステム56によって計算される、収納室2に流入する、または収納室2から流出する液体流量dVである。収納室1内の初期液体ボリュームが収納室2内の初期液体ボリュームよりも大きい場合、液体は、収納室1から収納室2に流入し;別の構成として、収納室1内の初期液体ボリュームが収納室2内の初期液体ボリュームよりも小さい場合、液体は、収納室2から収納室1に流入する。何れの場合においても、収納室1及び2に対応する流量は絶対値が等しく、かつ流量方向が反対である。図7に示す特定の例では、収納室1の内部の初期ボリュームが6000であるのに対し、収納室2の内部の初期ボリュームは1000である。各燃料ボリュームサブシステムは、入力をSimulink登録商標S-Functionブロックに送信する。これは、カスタム埋め込みコードを実行することにより、対応するソリッドオブジェクトのインターフェースとなる。このS-Functionコードは、sFun_tank.mと命名される定義ファイルを含み、この定義ファイルは、Mathworks標準テンプレートとして実装される。カスタムコードの関連ビットは、ソリッドオブジェクトに作用する関数findFuelPlaneをコールする。sFun_tank.m中の1つの行は次式により表わされる:block.OutputPort1.Data=findFuelPlanerot,volume,1,...normal式中、findFuelPlaneは重要な演算子である。入力rotは、指定空間姿勢を有するソリッドオブジェクトを指すポインタである。volumeは、rotの内部の現在の液体ボリュームを表わす二重数値である。normalは、液体に作用する合計加速度ベクトルを表わす二重数値の3次元ベクトルである。関数findFuelPlaneは、液面、すなわち[point,normal]で定義される平面に対応する位置特定ポイントである二重数値の3次元ベクトルを返す。再度、図7を参照するに、収納室1と収納室2との間の仕切り板にある円形オリフィス指定直径を持ち、かつ指定高さに位置する内の流れは、Simulink登録商標標準コンポーネントを用いてシミュレートされる。findFuelPlane関数へのvolume入力は、液体が一方の収納室から他方の収納室に流れるとともに変更される。シミュレーション時、ソリッドモデリングソフトウェアにより求めた液面を用いて、仕切り板の各側のオリフィスの上方の液体の水頭圧力を求める。液面が平坦ではないことに起因する圧力差によって、液面が等しくなるまで、流れがオリフィス内に生じる。シミュレーションシステムが初期化されると、燃料ボリュームサブシステム52は、収納室1の内部の液体の液面の初期位置を、収納室1を表わすソリッドモデルオブジェクト、収納室1内の液体の初期ボリューム、及び加速度ベクトル及び回転ベクトルの関数として計算し、そして当該データを接続サブシステム56の入力ポートIn1に出力し;そして燃料ボリュームサブシステム54は、収納室2の内部の液体の液面の初期位置を、収納室2を表わすソリッドモデルオブジェクト、収納室2内の液体の初期ボリューム、及び同じ加速度ベクトル及び回転ベクトルの関数として計算し、そして当該データを接続サブシステム56の入力ポートIn2に出力する。同時に、収納室1及び2内の初期液面のソリッドモデル境界表現を表示装置に表示することができる。図8は、2つのソリッドオブジェクト及びこれらのオブジェクトに収容される液体ボリュームの静止画像である。当該画像は、シミュレーションの初期状態を表わしている。太字線が、それぞれの収納室に収容される液体ボリュームの境界を表わしているのに対し、太字線ではない線は、液体を収容するそれぞれの内部ボリュームを区切るそれぞれの収納室の立体壁を表わしている。図示されていないのが、これらの収納室の間の微小円形オリフィスであり、このオリフィスによって液体が、一方の収納室から他方の収納室に流れることができる。収納室1及び2、収納室1及び2内の初期液面、及び収納室1及び2が連通するときに液体が流れるオリフィスの面積を表わすソリッドモデルオブジェクトに基づいて、接続サブシステム56は水頭を計算し、この水頭は、収納室1と2との間の液面の差によって生じる圧力である。次に、この情報を利用して、液体がこれらの収納室の間を流れて液面が共通になるときの流量を算出する。液面の差が小さくなると、それに応じて流量は、収納室1及び2内の模擬液面が図9に示すように等しくなって流量が最終的にゼロに等しくなるまで減る。図8は、初めは等しくない模擬液面をコンピュータモニタに表示したときの様子を示し、そして図9は、最終的に等しくなる模擬液面を同じコンピュータモニタに表示したときの様子を示しているが、表示装置はまた、これらの模擬液面を、これらの液面が、図8に示す液面から図9に示す液面に移行するときに継続的に表示することが好ましいことを理解されたい。液面が等しくなった後に加速度ベクトルまたは回転ベクトルに変化が生じると必ず、燃料ボリュームサブシステム52及び54は、収納室1及び2内のそれぞれの液体の液面の新規の位置を計算する。これらの新規の入力がポートIn1及びIn2に対して行なわれると、接続サブシステムは再度、一方の収納室から他方の収納室に、これらの変化した状態で流れる初期流量を計算し、そして出力するポートOut1及びOut2に。次に、接続サブシステム56は、流量の計算を、これらの液面が再度、等しくなるまで継続する。これまでに説明してきた実施形態によって、多数のメインフレームFortranフォートランプログラムを、MATLAB登録商標計算環境にシームレスに適合するように設計されるプラットフォーム非依存型ツールキットに置き換えることができる。初期燃料油面が等しくない状態の2つの収納室は、オリフィスを介して接続される。ソリッドモデリングソフトウェアを用いて、各収納室内の燃料のそれぞれの高さオリフィスの高さに対するを計算し、そしてSimulink登録商標で一方の収納室から他方の収納室への流れを処理する。図8及び9は、747-8の機体外側の翼タンクの最初の2つの収納室に関するシミュレーションを示している。単位は、翼の基準平面座標系におけるインチである。燃料高さ情報は、燃料ボリュームを、各収納室に対応するソリッドオブジェクトに流し込むことにより計算され、そして燃料の液平面に対応する3次元位置特定ベクトルとして返される図7に示す場合における平面の法線は丁度、[001]である。瞬間的には、航空機は、静止した状態を保持しているので、第3要素をこのベクトルから抽出し、そして燃料油面の高さとして使用し、この高さから、オリフィスのz位置を減算して、相対的な燃料高さを取得することにより水頭圧を計算する。水頭への変換は、近似変換、すなわちP=rhoghを表わす一連のゲインブロックにより行なわれる。この段階まで、全てが、ソリッドモデリングソフトウェアをコールする操作、またはSimulink登録商標信号を用いる操作の何れかの操作により行なわれ、これらは純粋に数学的に行なわれ;水頭を求めた後に、当該信号は、SimscapeTMが使用するPhysicalSignalsに変換される。変換後の圧力信号を用いて油圧供給源を駆動し、この油圧供給源は、一方の端部において基準大気に接続され、そして他方の端部において、オリフィスに接続される。次に、当該オリフィスは、第2収納室にミラー構成になるように接続される。例示的な燃料ボリュームサブシステムを図10に記号で示している。流量センサを用いて、物理システム内の結果的な流れを求め、次に、この流れを、単位inches^3/sインチ3/sで表わされる正則化Simulink登録商標信号に逆変換し、そして積分して、部分的に満たされている収納室を表わすソリッドオブジェクトのボリューム更新を行なう。燃料補給に続いて、燃料ボリュームを、航空機の状態が変化している状態で保持するシミュレーションを行なうことができる。離陸滑走を近似するために、.sliceメソッドまたは.cutメソッドへの通常入力を、MATLAB登録商標において[-accel01]として定義される合計加速度ベクトルとし、この場合、accelは、重力単位gで表わされる順方向加速度x方向である。findFuelPlaneと表記されるカスタムMATLAB登録商標関数を用いて、燃料油面に対応する位置特定ポイントを求める。更に、当該シミュレーションでは、飛行機のピッチ機首の上げ下げを変化させるピッチアップ/ピッチダウンことができる。この場合、重力に対する燃料タンクの向きが、時間とともに変化するだけでなく、合計加速度ベクトルも変化する。これは、ソリッドオブジェクトの回転メソッドを用いて行なわれ;MATLAB登録商標関数angle2dcm航空宇宙ツールボックスが、必要な入力の方向余弦行列を高速に生成するために有用であった。ソリッドモデルオブジェクトをSimulink登録商標に統合する種々の方法が試行されて成功している。上に開示した方法では、Level-2M-FileS-Functionブロックを用いた。他の方法では、EmbeddedMatlabFunctionブロックまたはMatlabFcnブロックを用いた。3つのブロックの全ては、関数findFuelPlaneを連続的にコールし、この関数findFuelPlaneが今度は、ソリッドモデルオブジェクトを用いて、入力燃料ボリューム及び動的状態に対応する燃料油面の位置を特定する。これらのオブジェクトのJava特性を生かすことができるので、これらの方法のうちの3つの方法の全てにおいて、基本的に同じ事を行なう-すなわち、これらの方法では、findFuelPlane関数を正則化MATLAB登録商標エンジンで実行する。Simulink登録商標は、Javaを当該Simulink登録商標独自に消化していないので、シミュレーションの速度を後の時点で高めるために適用することができる加速度オプションの種類が限定される。mコードを等価なCコードにプリコンパイルして実行速度を速くするEmbeddedMATLAB登録商標関数においても、findFuelPlane関数は、付随的であると明言され、これは、当該findFuelPlane関数が、当該findFuelPlane関数をプリコンパイルしようとするのではなく、正則化MATLAB登録商標エンジンに実行時に切り替えられることを意味する。図10は、収納容器の接続貯留室の間を、または接続収納室の間を流れる液体流をモデル化し、シミュレートし、そして解析するSimulink登録商標を用いて行なわれる計算を表わすブロック図である。図10のVol1の記号が付されたブロック62は、Gotoブロックであり、このGotoブロックは、信号を対応するFromブロックに送信する。Fromブロック及びGotoブロックによって、信号を1つのブロックから別のブロックに、これらのブロックを実際に接続することなく渡すことができる。この場合、当該信号は、単にデータ捕捉セクションに送信されてプロットされる。Constantの記号が付されたブロック64は、Constantブロックであり、この場合0.0に設定され、当該Constantブロックは、合計加速度ベクトルのFwdAccまたは順方向加速度成分をタンクモデルに供給している。Level-2M-fileS-Functionの記号が付されたブロック66がまさに、当該S-Functionである。このS-Functionは、ソリッドモデリングソフトウェアとのインターフェースとなり、そして前に説明したブロックの古いバージョンである。図10のh1の記号が付されたブロック68は、ToWorkspaceブロックであり;このToWorkspaceは、データをMATLAB登録商標ワークスペースのプログラムメモリに保存して、シミュレーションが終了した後に使用する。ブロック66の右側の直ぐ傍の黒色棒70はDemux逆多重化ブロックである。Demuxブロック70は、入力信号の成分群を抽出し、そしてこれらの成分を個別信号群として出力する。これらの出力信号は、上から下の順に出力ポートに並んでいる。S関数から出力されるFuelPlaneは3次元アレイ燃料油面のx、y、z位置特定ポイントを表わすであり、そして図10に示す特定のシミュレーションでは、第3要素、すなわち液体のz値または高さにのみ着目した。従って、Demuxブロックから出て行く最上部の2つの信号は、Terminatorブロック群72で終了するのに対し、3番目の信号は、他の演算に進む。Terminatorブロックは、未接続出力ポートを終端させる。Gotoの記号が付され、かつ内部にh1の記号が付されたブロック74は、図示しないデータ捕捉及びプロットセクションに至るGotoブロックである。orificeheightreferenceの記号が付されたブロック76は、Constantブロック、この場合は、オリフィスのz値高さを与えるConstantブロックであり、このz値を利用して、液体流が計算される。ブロック76からの出力を燃料油面z値から、円形のSumブロック78を利用して減算して、headheight水頭高さとも表記されるオリフィスの上方の液体の高さを表わす出力を生成する。この場合、水頭高さ信号は、高さをインチで表わしている。次に、水頭高さ信号を、入力に一定値gain:ゲインを乗算するGainブロック群を用いる一連の変換乗算器で処理する。in2mの記号が付されたブロック80は、インチからメートルへの単位変換を行ない;rhoの記号が付されたブロック82は、液体密度に関する乗算器であり;そしてgの記号が付されたブロック84は、重力に起因し、かつm/s^2m/s2で表わされる加速度に関する乗算器である。これらの乗算器からの出力は、Pascalsパスカル単位で表わされるheadpressure水頭圧である。HEAD1の記号が付されたブロック86は、水頭圧をデータ捕捉/プロットセクションに送信するGotoブロックである。内部にSPSの記号が付されたブロック88は、SimulinktoPhysicalSignalSimulinkから物理信号への変換ブロックである。ブロック88は、暗黙の単位を持つ正則化Simulink登録商標信号を、明確な単位を含むSimscapeTMPhysicalSignalに変換する。この場合、Physicalsignal物理信号はパスカル単位で表現される。Simulink登録商標ブロック群は、基本数値演算を表わす。SimscapeTMテクノロジーによって、システムのネットワーク表現の生成が、PhysicalNetwork物理ネットワークアプローチを利用して、設計中の段階で可能になる。このアプローチによれば、システムは、エネルギーをこれらの要素のポートを介して授受することにより互いに相互作用する機能要素として表現することができる。図10を参照し続けると、S-PSブロック88の圧力信号出力を油圧供給源ブロック90に入力する。油圧供給源ブロックは、システムが消費する流量に関係なく、指定圧力を当該油圧供給源の流出口で保持するために十分強力な油圧エネルギーの理想的な供給源を表わす。ブロック接続部T及びSは、油圧流入ポート及び流出ポートにそれぞれ対応し、そして接続部Sは、制御信号ポートを表わす。当該油圧供給源90は、ポートPとTとの間の理想的な圧力差を保ち、この圧力差は、入力信号Sに直接比例する。ブロック90は、流体回路網のオリフィスの上方の燃料の算出水頭圧を実現する。当該油圧供給源90のポートTは、当該油圧供給源の低圧側として定義される。この低圧側は、OutletArea[in^2]の記号が付されたブロック92に接続される。このブロック92はオリフィスブロックであり、このオリフィスブロックは、一定の断面積を持つ油圧オリフィスが圧力及び流量に及ぼす影響をモデル化する。流出口面積ブロック92は、当該ブロック92を、このブロック92の鏡像である別のブロック図に結び付けるOutport94に接続され、そして収納室1ではなく、収納室2内の水頭圧を計算する。IdealHydraulicFlowRateSensorの記号が付されたブロック96は、理想的な流量計を模擬している、すなわち油圧配管内のボリューム流量を、この流量に比例する制御信号に変換するデバイスを模擬している。センサは、当該センサが、慣性、摩擦、遅延、圧力損失などの主な原因とはならないので理想的である。ブロック96は、物理ネットワークを流れる流量を、当該流量がポートAからポートBに流れるときに測定する。これらのポートは、一方の側で基準油圧97に接続され、そして他方の側で水頭圧供給源90に接続される。このシーケンスは、液体の上方の大気圧基準油圧を初期圧力として始まり、次に、水頭圧オリフィスの上方の液体の重量が、オリフィス内を流れる前に加わるシーケンスであると考えることができる。水頭圧が大きくなると、より大きな誘導流がオリフィス内を流れる。接続部Qは、流量値を出力する物理信号ポートである。in^3/sの記号が付されたブロック98は、PhysicalSignaltoSimulinkコンバータブロックである。この場合、PhysicalSignaltoSimulinkコンバータブロックは、Simulink登録商標信号すなわち、暗黙の単位を持つを出力しており、このSimulink登録商標信号は、流量を立方インチ/秒で表わす。この流量は、収納室1に流入する流量を積分して、内部の液体の合計ボリュームを追跡し続けるDiscrete-TimeIntegratorブロック100に入力される。ブロック102は、収納室1内の燃料の初期ボリュームのブロック100への入力を表わす。ループ内の最終ブロック104はUnitDelayであり、このUnitDelayの機能は、積分器100からの出力を、当該出力がタンク計算機S-function66のボリューム入力に入力される前に1つの時間ステップだけ遅らせることにある。これにより、1つの時間ステップだけ遅らせない場合の代数ループを解消することができ、この場合、ブロックの出力を用いて当該ブロックの入力を同じ時間ステップで定義する。要約すると、当該ループで、オリフィスの上方の液体の水頭圧を計算する。次に、この水頭圧が当該オリフィス内を流れる流量を決定し、そして当該流量が容器からの液体ボリュームに加算されるか、または当該液体ボリュームから減算され、この計算結果が今度は、容器内の液体の高さに影響し、従って水頭圧に影響する。実際、液体の高さの差が、オリフィスの両側の2つの貯留室の間で生じると必ず、これらの高さが等しくなるまで、流れがオリフィス内に生じる。これまで開示してきたように、これまで説明してきた計算を拡張して、各収納室が液体燃料で少なくとも部分的に満たされた状態の、連続する少なくとも3つの連通する収納室を有する模擬燃料タンクに適用することができる。図11は、747型機の翼タンク106内の燃料108を表わす画像を示している。この燃料タンクは、連通する多数の収納室を有し、これらの収納室は、本明細書において開示される方法を用いてシミュレートすることができる。コンセプトの証明は、Jythonジャイソン及びMATLAB登録商標を用いるソリッドモデリングソフトウェアによって行なわれた。Jythonは、Javaで記述されるPythonパイソンプログラミング言語の1つの形態である。本発明の次の実施形態では、MATLAB登録商標を用いてソリッドモデリングソフトウェアを、当該ソフトウェアのJavaAPIを利用して駆動することにより液面を算出した。ソリッドモデリングソフトウェアは、ソリッドモデルを境界表現として表わし、そして減算、加算、及び交差のような正則化Boolean演算をソリッドモデルに適用する能力、及びソリッドモデルに関する厳密な積分特性を、発散定理を適用することにより算出する能力を提供する。具体的には、収納容器のソリッドモデル表現を用いて、容器特性を容易に求めることができる。例えば、液体及び収納容器のソリッドモデル表現を用いて、収納容器の内部の液体の露出面積を求めることができ、この露出面積は単に、液体のソリッドモデル表現の上面の面積である。この属性は、蒸発を推定するために重要である。燃料の蒸発は、Antoineアントワーヌ方程式及び理想気体の法則を用いて計算される。Antoine方程式は、蒸気圧方程式であり、そして純成分について、蒸気圧と温度との関係を記述する:式中、pは蒸気圧であり、Tは温度であり、そしてA,B,及びCは、成分固有の定数である。オーガスト方程式は、蒸発熱が温度に依存しないと仮定する。液体に溶解する大気ガスの蒸発更に専門的に表現すると、状態変化は、オストワルドの溶解係数及び理想気体の法則を用いて推定される。オストワルドの溶解係数及び理想気体の法則の両方の影響を、燃料タンクの可燃性を分析する場合に、すなわち燃料タンク内の蒸気に引火する危険がある場合に考慮する必要がある。可燃性分析は、燃料タンクの可燃性低減システムFRSの有効性を証明するために必要である。連邦航空局FAAのFAR25.981規制は、FRS可燃性低減システムの使用義務を説明している。液体及び収納容器のソリッドモデル表現を更に用いて、濡れ面積を液体が触れる面積を、液体のソリッドモデル表現の全ての面のうちの容器面に触れる面積を算出することにより求めることができる。容器の濡れ面積を主として、熱伝達計算に用いることにより、燃料タンク温度を予測する。多くの民間航空機は、電子式燃料残量表示システムFQISのバックアップとなる一連のディップスティックインジケータを有する。燃料残量をFQISによって求めることができない場合、航空機オペレータは、タンクの種々の部分の燃料高さ情報を、これらのdip-stickインジケータから手動で読み取り、そして次に、当該情報を一連の事前格納テーブル航空機製造業者が提供すると一緒に利用して、タンク内の燃料残量を求めることができる。液体及び収納容器のソリッドモデル表現を用いて、ディップスティックレベル液体に浸かっているスティックの長さを、ディップスティックのソリッドモデル表現を、液体のソリッドモデル表現と交差させることにより求めることができるこれを利用して、液体ボリュームを指すディップスティックを校正する。校正プロセスは、テーブルを微調整し、そして検証して、ボリュームの正確な予測を、dip-stick読み取り値に基づいて確実に行なえるようにする処理手順の1つである。本明細書において開示される本発明を利用したコンピュータモデルを用いてこれらのテーブルを作成することができる。更に、液体及び収納容器のソリッドモデル表現を用いて、捕集液体の量を求めることができる。航空機燃料タンク及びシステムを設計するに当たり、液体が捕集されてしまうすなわち、通常運行中に取り出すことができない箇所を最小限に減らすことが肝要である。エンジンに使用することができない捕集燃料箇所が死荷重となるだけでなく、これらの捕集燃料箇所は、水を収集する潜在的な箇所となり潜在的な腐食を起こす問題となる、そして特定の環境では、凍結して氷になる。固体氷は、燃料がエンジンに達するのを阻止する虞のある閉塞危険箇所となってしまう。図7~10を参照して上に開示しているように、液体及び収納容器のソリッドモデル表現を用いて、容器の姿勢が変化するときに1つの貯留室から別の貯留室に移送される液体の量を求めることができる。移送流速を十分速くして、燃料が、タンク分室の一方の側で通常運行中に溜まるのを、特に大量の燃料がタンクの1つの部分に速やかに溜まってしまって、他の部分に自由に流れるようにする必要がある燃料補給時に溜まるのを防止する必要があることが判明している。過剰燃料がタンクバッフルに沿って不均一な液面になると、不所望な構造応力が生じてしまう。これとは異なり、これらのバッフルは、燃料の全てが、高加速度の衝突時に主要構造に同時に勢いよく流入するのを防止するために十分な抑制効果を発揮する必要がある。液体及び収納容器のソリッドモデル表現を用いて、収納容器内の液体の重量分布を求めることができる。航空機では、重心位置の管理は、航空機の性能、効率、及びハンドリング品質の重要な構成要素である。満タンの燃料タンクは、総ビークル重量のうちかなりの割合を占め、そして当該重量の分布の僅かな変化は、上に説明した要素に甚大な影響を与える。燃料の重心位置が全ての運行状態で安全範囲に収まることを確認することが重要であり、そして理想的には、燃料の重心位置が最適化されて、航空機が最大効率で機能することができることを確認することが重要である。幾何学的に複雑な立体のボリューム、慣性モーメント、及び他の特性を計算するアルゴリズムが公知になっている。例えば、ソリッドオブジェクトのボリューム及び他の積分特性を算出するアルゴリズムは、ロチェスター大学の生産自動化プロジェクトにおけるLee及びRequichaによるTechnicalMemo35a1981年3月に;CommunicationsoftheACM,Vol.25,No.9,pp.635-6411982年9月に掲載されたAlgorithmsforComputingtheVolumeandOtherIntegralPropertiesofSolids.I.KnownMethodsandOpenIssues立体I.のボリューム及び他の積分特性を算出するアルゴリズム:公知の方法及び未解決の問題と題する論文に;そしてCommunicationsoftheACM,Vol.25,No.9,pp.642-6501982年9月に掲載されたAlgorithmsforComputingtheVolumeandOtherIntegralPropertiesofSolids.II.AFamilyofAlgorithmsBasedonRepresentationConversionandCellularApproximation立体II.のボリューム及び他の積分特性を算出するアルゴリズム:表現変換及びセル近似を利用する一連のアルゴリズムと題する論文に開示されている。曲面を持つソリッドオブジェクトの積分特性の計算は更に難しいが、この計算の解も導き出されている。例えば、G.Farin著者らによる、かつElsevierB.V.によるHandbookofComputerAidedGeometricDesignコンピュータ援用幾何学設計ハンドブック,pages603-622のChapter24-GeometryProcessing幾何学的処理,ThomasA.Grandine2002を参照されたい。本発明は、姿勢が変化する、または動的な力を受ける複雑な形状の収納容器内の液面を正確に計算する必要がある何れの状況にも適用することができる。この状況は、国内及び外国の航空宇宙機製造会社、自動車会社及びトラック会社における状況、船舶及びボート例えば、オイルタンカーを含み、そして場合によっては、地下水及び油層のような地層内の流体液面及びボリューム量を関連付ける際に問題になる全ての状況を含む。省力化は、航空機翼内の流体液面を求める際の精度が高まることにより達成される。計算値と物理校正中に検出される実際値との間に食い違いが生じると必ず、設計の初期段階で発見される場合よりも修正するのに数桁違いの多くのコストを要する。ソリッドモデル例えば、CATIAからインポートされるを直接使用すると、これらの立体を、現在のツールに入力する高度にフォーマット化され、遥かに縮減されたポイントデータアレイに変化させるために現在要しているモデル当たりの工数を省力化することができる。アーキテクチャJython/JavaAPI及びソリッドモデリングソフトウェアが改良されると、解析計算プロセスの統合が著しく進む。このためには現在、エラーが発生し易く、かつ多大な時間を要する極めて大規模な人手作業の介入が、約24個のアプリケーションに対して必要になる。開示の実施形態は、液体容器の動きをシミュレートする必要が生じる場合、すなわち解析ソフトウェア、システムテスト機器、及びフライトシミュレータを含む物理システムを利用することができない場合に明らかな利点をもたらすことができる。例えば、開示のアプリケーションは:1解析ツールの精度を向上させ、そして文書化の試行、及び文書化に伴う校正の事後試験例えば、新規の飛行機プログラムに対するの必要性を低減し;2液面を算出する共通の企業規模のモジュールを供給して事業単位間の成果物の授受を容易にし例えば、このツールを用いて、更に正確な計算負荷を求めることができる;3翼ボリューム計算を超えて適用することができ;4データ転送に要する時間を無くすことができ、そしてデータ転送に起因するエラーを低減することができ;そして5仕様の古くなったコードの維持工数を低減することができる。開示の実施形態を用いて、燃料計の校正のサイクル時間を短くし、そして使用不能燃料の推定を向上させることもできる。これらの解析の精度に対する信頼度がより高まって、試験に対する依存度が低くなり、開発時間が、認証データに伴なう校正の事後試験が減ることにより短くなり、そして潜在的な再設計のリスクが低下する。航空機設計時の解析結果のターンアラウンドが短くなると、設計問題をより早期に把握することができ、そして代替の設計を更に効率的に検討することができる。本発明について、種々の実施形態を参照しながら説明してきたが、この技術分野の当業者であれば、本発明の範囲から逸脱しない限り、種々の変更を行なうことができ、そして等価物をこれらの実施形態の構成要素の代わりに用いることができることを理解できるであろう。更に、本発明の基本範囲から逸脱しない限り多くの変形を加えて、特定の状況を本発明の教唆に適合させることができる。従って、本発明は、本発明を実施するために想定される最良の形態として開示される特定の実施形態に限定されないものである。以下に開示される方法請求項は、列挙されるステップ群が、記載される順番で実施されることを必要としていると捉えられてはならない。特に、このような推定は、アルファベット順に列挙されるステップ群に対して行なわれてはならない。"