(57)【要約】      （修正有）【課題】シミュレーションを表示するための改善された方法を提供する。【解決手段】シミュレーションを表示するためのコンピュータ実施方法は、フルシミュレーションを計算することを含む。フルシミュレーションは、状態を含む。さらに、計算されたフルシミュレーションの縮小モデルを計算することを含む。縮小モデルは、要素を有する基底を含む。フルシミュレーションの各状態は、基底要素の対応する線形結合によって表される。また、フルシミュレーションの少なくとも１つの状態について、対応する線形結合の一部を表示するステップを含む。【選択図】図１
2020109646.tif 000002
【特許請求の範囲】
【請求項１】
シミュレーションを表示するためのコンピュータ実施方法であって、以下のステップを含む：
状態を含む完全なシミュレーションを計算するステップ（Ｓ１０）；
計算されたフルシミュレーションの縮小モデルを計算するステップ（Ｓ２０）、ここで縮小モデルは要素を有する基底を含み、フルシミュレーションの各状態は、基底要素の対応する線形結合によって表される、
フルシミュレーションの少なくとも１つの状態について、対応する線形結合の一部を表示するステップ（Ｓ４０）。
【請求項２】
基底要素の任意の線形結合が、対応するシミュレーション圧縮比及び対応する再構成誤差に関連付けられる
請求項１に記載の方法。
【請求項３】
基底要素が順序付けられ、順序付けられた基底要素の第１の要素が、対応する線形結合の一部に寄与する
請求項１〜２のいずれか一項に記載の方法。
【請求項４】
前記対応する線形結合の前記一部を表示する前に、表示されるべき１つ以上の次の状態に対する対応する線形結合の部分に寄与する多数の基底要素を選択するステップ（Ｓ３０）
をさらに含む、請求項１〜３のいずれか一項に記載の方法。
【請求項５】
前記対応する線形結合の前記部分の前記表示（Ｓ４０）の後に、さらに以下を含む請求項４に記載の方法：
表示されるべき１つ以上の次の状態に対する対応する線形結合の部分に寄与する新たな数の基底要素を選択するステップ（Ｓ５０）、これにより、表示されるべき１つ以上の状態の各々に対する対応する線形結合の新たな部分が生成され、
対応する線形結合の新たな部分を表示するステップ（Ｓ６０）。
【請求項６】
前記新たな数の基底要素を選択するステップ（Ｓ５０）と、前記新たな部分を表示するステップ（Ｓ６０）とが繰り返される（Ｓ７０）
ことを特徴とする請求項５に記載の方法。
【請求項７】
各選択（Ｓ５０）は、表示されるべき１つ又は複数の次の状態に対する対応する線形結合の部分の対応するシミュレーション圧縮比又は対応する再構成誤差が所与の値に達するように実行される
請求項２と組み合わされた請求項４から６のいずれか一項に記載の方法。
【請求項８】
前記シミュレーション圧縮比の前記所与の値は、前記シミュレーションを表示するためにネットワークを介して送信されるデータの量がしきい値を下回るように決定される
請求項７に記載の方法。
【請求項９】
前記再構成誤差の前記所与の値は、表示される前記シミュレーションの精度が要件に適合するように決定される
請求項７に記載の方法。
【請求項１０】
前記所与の値は前記ネットワークを介して送信されるデータの量を最小限に抑えながら、最大精度で前記シミュレーションを表示するために決定される
請求項８及び９に記載の方法。
【請求項１１】
前記しきい値又は前記要件は、ユーザのアクションに応じて選択される
請求項８又は９に記載の方法。
【請求項１２】
フルシミュレーションを計算するステップ（Ｓ１０）及び計算されたフルシミュレーションの縮小モデルを計算するステップ（Ｓ２０）は第１のコンピュータ上で実行され、
他のステップは第２のコンピュータ上で実行され、
第１及び第２のコンピュータはネットワークを介して接続される
請求項１から１１のいずれか一項に記載の方法。
【請求項１３】
請求項１〜１２のいずれかに記載の方法を実行するための命令を含むコンピュータプログラム。
【請求項１４】
請求項１３に記載のコンピュータプログラムを記録した、メモリ及びディスプレイに結合されたプロセッサを含むコンピュータ。
【請求項１５】
ネットワークを介して第２のコンピュータに接続された第１のコンピュータを備えるシステムであって、
第１のコンピュータ及び第２のコンピュータは対応するメモリに結合された対応するプロセッサをそれぞれ備え、
対応するメモリは請求項１から１２のいずれかに記載の方法を実行するための命令をその上に記録している
システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シミュレーションデータの圧縮及び視覚化に関する。
【背景技術】
【０００２】
物理シミュレーションなどのシミュレーションは通常、膨大な計算能力を必要とし、高いメモリ要件を有する。物理シミュレーションを表示するための一般的なパイプラインは別個の高性能コンピュータプロセスで物理を計算し、シミュレーションが時間的に進むにつれてシミュレーションデータをディスクに出力することである。これらのデータは、異なる時間ステップにおけるシミュレーションの表現から構成することができる。データは、後に利用され、オンライン及び／又はリアルタイムでレンダリング／表示される。
【０００３】
例えば、航空空間、地磁気、電磁、又はプラズマ物理の分野からの物理シミュレーションは、視覚化されるべき膨大な量のシミュレートされたデータを必要とし得る。一例は、計算流体力学（ＣＦＤ）である。後者は数値的方法及びアルゴリズムを使用して、流体流を伴う問題を解き、分析する流体力学の分岐である。これは、航空宇宙推進から気象予測まで、流体力学のほとんどすべての分野において不可欠なツールである。自然界で頻繁に発生し、研究することが重要な複雑な乱流の特別な場合は、流体ソルバが高分解能で時間ステップが小さく、大量の時空間データを生成することを必要とするシミュレーションの良好な例である。ネットワークを介してこれらのデータを転送することは、非常に時間のかかるタスクであり得、一連の時間ステップを対話的及び／又はリアルタイムで転送することを妨げる。このため、ネットワークを介してシミュレーションデータを送信する前に、シミュレーションデータを圧縮する方法を見つけなければならない。
【０００４】
この傾向に対処するための既存の戦略には、現場処理、時間的頻度の減少、及び記憶するデータのサイズの縮小が含まれる。後者のアプローチはサブサンプリング、すなわち、シミュレーションデータの断片、例えば、シミュレーションメッシュの特定の領域、又は特定の変数を記憶するだけであり、それらの全てではないサブサンプリングを介して行うことができる。その結果、シミュレーション結果の部分的な、したがって、場合によっては物理的に正確でないビューのみが可能になる。
【０００５】
記憶するデータのサイズを縮小することは、圧縮を含むこともできる。圧縮戦略の大部分は空間情報に依存するが、画像データをターゲットとするウェーブレットフィルタ（例えば、Villasenor、John DAErgas、and PLDonoho.“Seismic Data Compression using h
igh-dimensional wavelet transforms.”data compression conference、1996、Proceedi
ngs.IEEE、surface meshsIEEE Computer Society Press、1996)及び流体シミュレーション(例えば、Li、Shaomeng、et al、“Spatiotemporal Wavelet compression for Visuali
zation of Scientific Simulation data.”、ClusterComputing(CLUSTER)、2017 IEEE I
nternational Conferen。IEEE、2017）圧縮は必然的に、正確さ及び精度の損失を意味し、この損失は物理学に対して制御することができないという欠点を有する。その結果、表示されたシミュレーション結果は、物理学の観点からは正確でない可能性がある。また、圧縮は、例えばシミュレーション結果上でのズーミングが圧縮比に制限されるという欠点を有する。他の圧縮技術はビデオストリーミングから知られており、科学的データについて探求された（例えば、Ibarria, Lawrence, et al. “Out‐of‐core compression and
decompression of large n‐dimensional scalar fields.” Computer Graphics Forum
. Vol. 22. No. 3. Blackwell Publishing, Inc, 2003.）。これらの方法は科学的データを圧縮するために使用することができるが、転送されたデータの数値精度に関する信頼できる制御装置を提供しない。
【０００６】
また、可視化のために計算されたシミュレーションデータに後処理技術を使用することも知られている。しかしながら、それは、高価で強力なスーパーコンピュータの使用を必要とする。
【０００７】
また、特に高性能コンピュータに関する最近の傾向は、計算能力が急速に増加しているのに対して、ディスク速度はゆっくりと増加していることを示している。その結果、データを生成するシミュレーションの能力はデータを記憶し、転送する能力よりも速く増加している。
【０００８】
これに関連して、シミュレーションを表示するための改善された方法が依然として必要とされている。
【発明の概要】
【０００９】
したがって、シミュレーションを表示するためのコンピュータ実施方法が提供される。この方法は、フルシミュレーションを計算することを含む。フルシミュレーションは状態を含む。この方法は、計算されたフルシミュレーションの縮小モデルを計算することをさらに含む。縮小モデルは、要素を有する基底を含む。フルシミュレーションの各状態は、基底要素の対応する線形結合によって表される。この方法は、フルシミュレーションの少なくとも１つの状態について、対応する線形結合の一部を表示するステップをさらに含む。
【００１０】
これは、シミュレーションを表示するための改善された方法を構成する。
【００１１】
この方法は、以下のうちの１つ又は複数を含むことができる：
・基底要素の任意の線形結合が、対応するシミュレーション圧縮比及び対応する再構成誤差に関連付けられる；
・基底要素が順序付けられ、順序付けられた基底要素の第１の要素が、対応する線形結合の部分に寄与する；
・本方法は対応する線形結合の部分を表示する前に、表示されるべき１つ又は複数の次の状態について対応する線形結合の部分に寄与するいくつかの基底要素を選択するステップをさらに含む；
・本方法は対応する線形結合の部分を表示した後に、表示されるべき１つ又は複数の次の状態について、対応する線形結合の部分に寄与する新しい数の基底要素を選択し、それによって、表示されるべき１つ又は複数の状態のそれぞれについて、対応する線形結合の新しい部分を作成するステップをさらに含む。この方法は対応する線形結合の部分を表示した後に、対応する線形結合の新しい部分を表示するステップをさらに含む；
・新たな数の基底要素の選択と新たな部分の表示とが繰り返される；
・各選択は、対応するシミュレーション圧縮比、又は表示されるべき１つ又は複数の次の状態に対する対応する線形結合の部分の対応する再構成誤差が所与の値に達するように実行される；
・シミュレーション圧縮比の所与の値は、シミュレーションを表示するためにネットワークを介して送信されるデータの量がしきい値未満になるように決定される；
・再構成誤差の所与の値は、表示されるシミュレーションの精度が要件に適合するように決定される；
・ネットワークを介して送信されるデータの量を最小限に抑えながら、最大精度でシミュレーションを表示するために所与の値が決定される；
【００１２】
しきい値又は要件はユーザのアクションに応じて選択され、及び／又はフルシミュレーションの計算及び計算されたフルシミュレーションの縮小モデルの計算が第１のコンピュータ上で実行され、他のステップは第２のコンピュータ上で実行され、第１及び第２のコンピュータはネットワークを介して接続される。
【００１３】
本方法を実行するための命令を含むコンピュータプログラムがさらに提供される。
【００１４】
さらに、コンピュータプログラムが記録されたコンピュータ可読記憶媒体が提供される。
【００１５】
さらに、メモリ及びディスプレイに結合されたプロセッサを備えるコンピュータが提供され、メモリには、コンピュータプログラムが記録されている。
【００１６】
さらに、ネットワークを介して第２のコンピュータに接続された第１のコンピュータを備えるシステムが提供され、第１のコンピュータ及び第２のコンピュータはそれぞれ、対応するメモリに結合された対応するプロセッサを備え、対応するメモリには、方法を実行するための命令が記録されている。
【図面の簡単な説明】
【００１７】
【図１】方法の一例のフローチャートを示す。
【図２】本発明のコンピュータの一例を示す。
【図３】フルシミュレーションの一例を示す図である。
【図４】縮小モデルの計算例を示す図である。
【図５】基底要素の例を示す。
【図６】１つの状態の状態表現を形成する線形結合の異なる対応する部分に関連する異なる再構成誤差を示す。
【図７ａ】所与の値に到達するために実行される１つの選択の例を示す図である。
【図７ｂ】所与の値に到達するために実行される１つの選択の例を示す図である。
【図８】所与の値を決定する例を示す。
【図９】所与の値を決定する例を示す。
【図１０】所与の値を決定する例を示す。
【図１１】方法の例を示す図である。
【発明を実施するための形態】
【００１８】
図１のフローチャートを参照すると、シミュレーションを表示するためのコンピュータ実施方法が提案されている。この方法は、フルシミュレーションを計算するステップ（Ｓ１０）を含む。フルシミュレーションは状態を含む。この方法はさらに、計算されたフルシミュレーションの縮小モデルを計算するステップ（Ｓ２０）を含む。縮小モデルは、要素を有する基底を含む。フルシミュレーションの各状態は、基底要素の対応する線形結合によって表される。この方法は、フルシミュレーションの少なくとも１つの状態について、対応する線形結合の一部を表示するステップ（Ｓ４０）をさらに含む。
【００１９】
このような方法は、シミュレーションの表示を改善する。実際、計算されたフルシミュレーションの縮小モデルは、シミュレーションの物理学を捕捉する。これにより、縮小モデルに基づいて関連物理解析を行うことができ、物理的に興味深い結果（対応する形結合の一部）を表示することができる。したがって、シミュレーションディスプレイは、数値精度だけでなく、物理的挙動に基づいて所与の精度レベルを尊重する。また、縮小モデルから得られた各線形結合の一部のみが表示されるため、シミュレーション表示に必要なデータ量を削減することができる。したがって、視覚化データは、所望のネットワーク使用に応じて適応され、低転送速度ネットワークの使用を可能にする。要するに、この方法のシミュレーション表示はネットワーク使用において経済的であり、物理的に正確である。さらに、フルシミュレーションは本方法によって１回、かつ全て計算され、次いで、本方法はフルシミュレーションを再実行することなく、フルシミュレーション、又はその少なくとも一部のみを再生／表示する。この方法はさらに、ビデオ圧縮又は後処理技術、及びそれらの欠点を回避する。
【００２０】
この方法は、コンピュータで実施される。これは、該方法のステップ（又は実質的に全てのステップ）が少なくとも１つのコンピュータ又は任意のシステムによって実行されることを意味する。したがって、本方法のステップはコンピュータによって、場合によっては完全に自動的に、又は半自動的に実行される。例では、方法のステップのうちの少なくともいくつかのトリガがユーザ−コンピュータ対話を介して実行され得る。必要とされるユーザ−コンピュータ対話のレベルは予測される自動化のレベルに依存し、ユーザの希望を実施する必要性とバランスをとることができる。例では、このレベルがユーザ定義及び／又は事前定義され得る。
【００２１】
方法のコンピュータ実装の典型的な例はこの目的のために適合されたシステム（例えば、コンピュータシステム）を用いて方法を実行することである。システムはメモリに結合されたプロセッサと、グラフィカルユーザインタフェース（ＧＵＩ）とを備えることができ、メモリには、本方法を実行するための命令を含むコンピュータプログラムが記録されている。メモリはまた、データベースを記憶してもよい。メモリはそのような記憶装置に適合された任意のハードウェアであり、場合によっては、いくつかの物理的に別個の部分（例えば、プログラムのための部分、及び場合によってはデータ断片ベースのための部分）を備える。
【００２２】
図２は、システムがクライアント・コンピュータ・システム、例えばユーザのワークステーションであるシステムの一例を示す。
【００２３】
この例のクライアント・コンピュータは、内部通信バス１０００に接続された中央処理装置（ＣＰＵ）１０１０と、やはりバスに接続されたランダムアクセスメモリ（ＲＡＭ）１０７０とを備える。クライアント・コンピュータには、さらに、ＢＵＳに接続されたビデオ・ランダム・アクセス・メモリ１１００に関連するグラフィカル・プロセッシング・ユニット（ＧＰＵ）１１１０が設けられている。ビデオＲＡＭ１１００は、当技術分野ではフレームバッファとしても知られている。大容量記憶装置コントローラ１０２０は、ハードドライブ１０３０などの大容量記憶装置へのアクセスを管理する。コンピュータプログラム命令及びデータを有形に具現化するのに適した大容量メモリデバイスは、例として、ＥＰＲＯＭ、ＥＥＰＲＯＭ、及びフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスク及びリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにＣＤ−ＲＯＭディスク１０４０を含む、すべての形態の不揮発性メモリを含む。前述のいずれも、特別に設計されたＡＳＩＣ（特定用途向け集積回路）によって補足されるか、又はその中に組み込まれてもよい。ネットワークアダプタ１０５０は、ネットワーク１０６０へのアクセスを管理する。クライアントコンピュータは、カーソル制御デバイス、キーボードなどの触覚デバイス１０９０も含むことができる。ユーザがディスプレイ１０８０上の任意の所望の位置にカーソルを選択的に位置決めすることを可能にするために、カーソル制御装置がクライアント・コンピュータ内で使用される。さらに、カーソル制御装置はユーザが様々なコマンドを選択し、制御信号を入力することを可能にする。カーソル制御装置は、システムに制御信号を入力するための多数の信号発生装置を含む。典型的にはカーソル制御装置がマウスであってもよく、マウスのボタンは信号を生成するために使用される。代替的に、又は追加的に、クライアントコンピュータシステムは、センシティブパッド及び／又はセンシティブスクリーンを備えることができる。
【００２４】
コンピュータプログラムはコンピュータによって実行可能な命令を含むことができ、命令は、上記システムに該方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってもよい。プログラムは例えば、デジタル電子回路において、又はコンピュータハードウェア、ファームウェア、ソフトウェアにおいて、又はそれらの組み合わせにおいて実装されてもよい。プログラムは装置、例えば、プログラマブルプロセッサによる実行のための機械可読記憶デバイスに有形に具現化された製品として実装されてもよい。方法のステップは入力データ断片に対して動作し、出力を生成することによって、方法の機能を実行するための命令のプログラムを実行するプログラマブルプロセッサによって実行されてもよい。したがって、プロセッサはプログラム可能であり、データ断片記憶システム、少なくとも１つの入力デバイス、及び少なくとも１つの出力デバイスからデータ断片及び命令を受信し、それらにデータ断片及び命令を送信するように結合され得る。アプリケーション・プログラムは、高レベルの手続き型又はオブジェクト指向プログラミング言語で、あるいは必要に応じてアセンブリ言語又は機械語で実装することができる。いずれの場合も、言語は、コンパイル又はインタプリタされた言語であってもよい。プログラムはフルインストールプログラムであってもよいし、更新プログラムであってもよい。システム上にプログラムを適用すると、いずれにしても、この方法を実行するための命令が得られる。
【００２５】
例ではシステムがネットワーク（コンピュータネットワークとも呼ばれる）を介して第２のコンピュータに接続された第１のコンピュータを備え、第１のコンピュータ及び第２のコンピュータはそれぞれ、対応するメモリに結合された対応するプロセッサを備え、対応するメモリは方法を実行するための命令を記録する。例では、第１のコンピュータが図２のクライアント・コンピュータ・システムである。コンピュータネットワークは、第１のコンピュータ及び第２のコンピュータがワイヤ又は光ケーブル、あるいはワイヤレス媒体などの媒体を介して確立されるデータリンクを使用することによって、リソース、通常はデータを交換することを可能にする。より一般的には、データリンクを提供する任意の電気通信ネットワークを使用することができる。
【００２６】
システムは、ＣＡＤシステム、ＣＡＥシステム、ＣＡＭシステム、ＰＤＭシステム、及び／又はＰＬＭシステムの任意の組み合わせであってもよい。これらの異なるシステムでは、モデル化オブジェクトが対応するデータによって定義される。モデル化オブジェクトは、例えばデータベースに格納されたデータによって定義される任意のオブジェクトである。拡張によって、表現「モデル化オブジェクト」は、データ自体を指定する。システムのタイプに応じて、モデル化オブジェクトは、異なる種類のデータによって定義されてもよい。したがって、ＣＡＤオブジェクト、ＰＬＭオブジェクト、ＰＤＭオブジェクト、ＣＡＥオブジェクト、ＣＡＭオブジェクト、ＣＡＤデータ、ＰＬＭデータ、ＰＤＭデータ、ＣＡＭデータ、ＣＡＥデータについて言うことができる。しかしながら、モデル化オブジェクトはこれらのシステムの任意の組み合わせに対応するデータによって定義され得るので、これらのシステムは他のシステムのうちの１つを排他的にするものではない。したがって、システムは以下に提供されるそのようなシステムの定義から明らかになるように、ＣＡＤシステム及びＰＬＭシステムの両方であってもよい。
【００２７】
ＣＡＤシステムとは、さらに、ＣＡＴＩＡのような、モデル化オブジェクトのグラフィック表現に基づいてモデル化オブジェクトを少なくとも設計するように適合された任意のシステムを意味する。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能にするデータを含む。ＣＡＤシステムは例えば、ある場合には、面又は表面を有するエッジ又は線を使用してＣＡＤモデル化オブジェクトの表現を提供することができる。線、エッジ、又は表面は様々な方法、例えば、不均一有理Ｂスプライン（ＮＵＲＢＳ）で表すことができる。具体的には、ＣＡＤファイルは仕様を含み、そこから幾何学的形状を生成することができ、これにより表現を生成することができる。モデル化オブジェクトの仕様は、単一のＣＡＤファイル又は複数のＣＡＤファイルに格納することができる。ＣＡＤシステム内のモデル化オブジェクトを表すファイルの典型的なサイズは、パーツ当たり１メガバイトの範囲内である。そして、モデル化オブジェクトは、典型的には何千ものパーツのアセンブリであり得る。
【００２８】
ＰＬＭシステムとは、さらに、物理的に製造された製品（又は製造される製品）を表すモデル化オブジェクトの管理に適合された任意のシステムを意味する。したがって、ＰＬＭシステムでは、モデル化オブジェクトが物理的オブジェクトの製造に適したデータによって定義される。これらは、典型的には寸法値及び／又は公差値であってもよい。オブジェクトを正確に製造するためには、このような値を有することが実際に好ましい。
【００２９】
ＣＡＭソリューションとは、さらに、製品の製造データを管理するように適合された任意のソリューション、ハードウェアのソフトウェアを意味する。製造データは一般に、製造する製品、製造工程、及び必要な資源に関するデータを含む。ＣＡＭソリューションは製品の製造プロセス全体を計画し、最適化するために使用される。例えば、ＣＡＭユーザに、製造プロセスの実現可能性、製造プロセスの継続時間、又は製造プロセスの特定のステップで使用することができる特定のロボットなどのリソースの数に関する情報を提供することができ、したがって、管理又は必要な投資に関する決定を可能にする。ＣＡＭは、ＣＡＤプロセス及び潜在的ＣＡＥプロセスの後の後続プロセスである。このようなＣＡＭソリューションは、ダッソーシステムズによってＤＥＬＭＩＡ（登録商標）の商標で提供されている。
【００３０】
ＣＡＥソリューションとは、さらに、モデル化オブジェクトの物理的挙動の分析に適合された任意のソリューション、ハードウェアのソフトウェアを意味する。よく知られ、広く使用されているＣＡＥ技法は有限要素法（ＦＥＭ）であり、これは、典型的にはモデル化オブジェクトを、物理的挙動を計算し、式によってシミュレートすることができる要素に分裂することを含む。このようなＣＡＥソリューションは、ダッソーシステムズによって、ＳＩＭＵＬＩＡ（登録商標）の商標で提供されている。別の成長するＣＡＥ技術は、ＣＡＤジオメトリデータなしで物理学の異なる分野からの複数の構成要素を構成する複雑なシステムのモデリング及び分析を伴う。ＣＡＥソリューションはシミュレーションを可能にし、したがって、製品の最適化、改善、及びバリデーションを製造することを可能にする。このようなＣＡＥソリューションは、ダッソーシステムズによってＤＹＭＯＬＡ（登録商標）の商標で提供されている。
【００３１】
ＰＤＭは、製品データ管理を意味する。ＰＤＭソリューションとは、特定の製品に関連するすべてのタイプのデータを管理するように適合された任意のソリューション、ハードウェアのソフトウェアを意味する。ＰＤＭソリューションは、製品のライフサイクルに関与するすべての行為者（主にエンジニアだけでなく、プロジェクトマネージャー、ファイナンス担当者、販売担当者、及び購入者も含む）によって使用され得る。ＰＤＭソリューションは一般に、製品指向データベースに基づく。それは、行為者が彼らの製品に関する一貫性のあるデータを共有することを可能にし、したがって、行為者が異なるデータを使用することを防ぐ。このようなＰＤＭソリューションは、ダッソーシステムズによってＥＮＯＶＩＡ（登録商標）という商標で提供されている。
【００３２】
この方法は、フルシミュレーションを計算するステップ（Ｓ１０）を含む。
【００３３】
シミュレーションは、エレクトロニクス、電気、機械、電気力学、電気力学、流体力学、重力力学、統計力学、波動物理学、統計物理学、粒子システム、水力システム、量子物理学、地球物理学、天体物理学、化学、空気空間、地磁気、電磁、プラズマ物理学又はＣＦＤなどの物理学の任意の分野からの任意のシミュレーションである。それは、上記の例のリストを含む、任意の物理分野からの任意の物理又は多重物理システムの時間における少なくとも１つの挙動のシミュレーションであってもよい。
【００３４】
物理又は多物理システムは少なくとも１つの物理技術分野（物理技術分野の上記の例のうちの１つなど）から少なくとも１つ（すなわち、１つ又は複数）の物理モデルを介して挙動をシミュレートすることができる任意の現実世界システム又は物理的実体である。現実世界のシステム又は物理的実体は、電子製品、電気製品、機械製品、電気機械製品、粒子のシステム、又は電磁製品とすることができる。物理モデルは、電子モデル、電気モデル、機械モデル、統計モデル、粒子モデル、油圧モデル、量子モデル、地質モデル、天文モデル、化学モデル、電磁モデル又は流体モデルであってもよい。物理モデルは、１つ又は複数の微分方程式及び／又は偏微分方程式及び／又は代数方程式などの１つ又は複数の方程式のシステムとすることができる。マルチ物理システムは一般に、それ自体が物理又はマルチ物理システムであり、例えば物理法則によって与えられる物理又は論理関係によって完全に接続されるサブシステムを有する。したがって、マルチ物理システムは機械的関係（例えば、力又は運動を伝達するための接続に対応する）、電気的関係（例えば、回路内の電気的接続に対応する）、油圧関係（例えば、磁束を伝達する伝導に対応する）、論理的関係（例えば、情報の流れに対応する）、流体関係（例えば、流体の流れに対応する）、化学的関係、及び／又は電磁関係などの物理的又は論理的関係によって互いに関連するサブシステムを有する現実世界システム又は任意の物理的実体を表すモデルである。このシステムは、マルチ物理システムの物理的又は論理的関係がいくつかの物理分野に属することができるので、「マルチ物理」と呼ばれる（これは必ずしも必要ではないが）。多重物理システムの一例は、航空機翼と、航空機翼に取り付けられた少なくとも１つの航空機エンジンとを備えるＣＦＤシステムである。
【００３５】
物理又は多重物理システムは（例えば、機械的な）部品又は部品のアセンブリ、又はより一般的には任意の剛体アセンブリ（例えば、可動機構）、剛体機構など、その仮想設計の完了後に現実世界で製造される産業製品に対応することができる。ＣＡＤ及び／又はＣＡＥソフトウェアソリューションは、航空宇宙、建築、建築、消費財、ハイテク装置、産業機器、輸送、海洋、及び／又は沖合もしくは輸送を含む、様々な無制限の産業分野における製品の設計を可能にする。したがって、マルチ物理システムは陸上車両（例えば、自動車及び軽トラック機器、レーシングカー、オートバイ、トラック及びモーター機器、トラック及びバス、列車を含む）の一部（又は全体）、航空車両（例えば、機体機器、航空宇宙機器、推進機器、防衛機器、航空機機器、宇宙機器を含む）の一部（又は全体）、海軍車両（例えば、海軍機器、商用船、オフショア機器、ヨット及びワークボート、船舶機器を含む）の一部（又は全体）、機械部品（例えば、産業用製造機械、重機、移動機器、設置機器、産業用機器、加工金属製品、タイヤ製造製品を含む）、電気機械又は電子部品（例えば、家庭用電化製品、セキュリティ及び／又は制御装置及び／又は計装製品、コンピュータ及び通信機器、半導体、医療デバイス及び機器を含む）、消費者であり得る産業製品を表す。商品（家具、家庭用品、庭用品、レジャー用品、ファッション用品、ハードグッズ小売業用品、ソフトグッズ小売業用品等）、包装（食品・飲料・たばこ、美容・パーソナルケア、家庭用品包装等）。
【００３６】
シミュレーションは、設計が既に行われている、現実世界で製造される少なくとも１つの工業製品のシミュレーションであってもよい。シミュレーションは設計後の少なくとも１つの工業製品の少なくとも１つの挙動（例えば、時間の進展）をシミュレートすることができる。この方法に続いて、この方法によるシミュレーションに続いて、少なくとも１つの工業製品を現実世界で製造することができる。
【００３７】
少なくとも１つの物理モデルによってモデル化された物理又は多物理システムをシミュレートすることは、一般に、少なくとも１つの物理モデルを計算すること、及び／又は結果を記憶すること、及び／又は結果を表示することによって、システムの時間的な物理的挙動（例えば、時間的な進化）の近似を計算することを含む。少なくとも１つの物理モデルの計算に先立って、少なくとも１つのグリッド（又はメッシュ）及び／又は少なくとも１つの時間ステップ及び／又は少なくとも１つのシミュレーションパラメータを提供することができる。前記提供は、ユーザのアクションに応じて実行されてもよい。コンピューティングは、一般に（常にではないが）、少なくとも１つのグリッド及び／又は少なくとも１つの時間ステップに従って、少なくとも１つの物理モデルの１つ又は複数の方程式を離散化することを含む。離散化は、任意の公知の数値的方法を用いて行うことができる。
【００３８】
シミュレーションは、シミュレーション状態（以下、簡略化のために「状態」と呼ぶ）を含む。状態は与えられた時間における物理システムの物理状態の表現であり、その物理システムの時間における挙動がシミュレーションによってシミュレートされる。例えば、物理状態は、所与の時間における任意の物理量であってもよい。物理量（物理的な量ともいう）は現象、本体、物質の物理的性質であり、測定によって定量化することができる。物理量は長さ、質量、時間、温度、物質の量、輝度、吸収量、角加速度、角運動量、角速度（又は角速度）、面積密度、触媒活性、化学濃度、亀裂、電流等価、電荷密度、電気変位、電界強度、電気伝導度、電気ポテンシャル、電気抵抗、エネルギー密度、エネルギー密度、エネルギー、周波数、燃料効率、半減期、熱容量、熱流束密度、照度、インピーダンス、インダクタンス、照射強度であってもよいが、これらに限定されない。ジャーク、ジョウンス（又はスナップ）、線形粘度、光束（又は光度）、磁場強度、磁束密度、磁化率、密度（又は体積）  モル濃度、モルエントロピー、モル濃度、慣性、モル濃度、透過率、透過率、平面角、出力、圧力、ポップ、（放射性）活性、（放射性）線量、（放射線）線量、放射線強度、反応率、屈折率、リラクタンス、固体角、速度、比熱容量、比熱容量、比体積、スペイン、歪み、歪み、表面張力、温度勾配、熱伝導率、トルク、速度、体積、体積流量、波長、波数、波長ベクトル、重量、仕事率、ヤング率。状態は、物理量のベクトルであってもよい。シミュレーションは初期時間及び最終時間と、初期時間と最終時間との間に含まれる少なくとも１つ（すなわち、１つ又は複数）の時間ステップとを含む。各時間ステップには、初期時間及び最終時間を含む１つの状態がある。
【００３９】
フルシミュレーションの計算は、全てのシミュレーション結果が計算されることを意味する（個々のシミュレーション結果は、状態を表す情報を含むデータである）。このように、フルシミュレーションを計算することは、全ての状態を全ての時間において表す実質的に全ての情報が計算されることを意味する。フルシミュレーションは、任意の既知の数値的方法及び／又は異なる時間ステップでシミュレーション結果をエクスポートすることができる任意の既存のコンピュータプログラムを使用することによって計算することができる。図３は、フルシミュレーションの一例を示す図である。フルシミュレーション３０は、物理シミュレーションである。フルシミュレーション３０は、ｎ個の状態３２、３４、３６を含む。
【００４０】
この方法はさらに、計算されたフルシミュレーションの縮小モデルを計算するステップ（Ｓ２０）を含む。
【００４１】
計算されたフルシミュレーションの縮小モデルは、縮小次数モデリング技法を使用することによってシミュレーションから計算されたモデルである。縮小次数モデリング（ＲＯＭ）は、数学モデルの次元数及び計算の複雑さを低減する技術である。ＲＯＭ  （以下、縮小モデル）は高忠実度シミュレーション（例えば、計算されたフルシミュレーション）から構築され、その後、より低い計算のためのシミュレーションを生成するために使用され得る。ＲＯＭ法の一例として、Galerkin投写(例えば、Rowley, Clarence W., Tim Colonius, and Richard M. Murray. “Model reduction for compressible flows using POD
and Galerkin projection.” Physica D: Nonlinear Phenomena 189.1-2 (2004): 115-
129.及びBarone, Matthew F., et al. “Reduced order modeling of fluid/structure 
interaction.” Sandia National Laboratories Report, SAND No 7189 (2009): 44-72.
）は、流体力学において特に有名である。ガレルキン投影法は流れシミュレーションの次元数を減少させるために適切な直交分解（ＰＯＤ）を使用し、次いで、この減少された空間上の動力学を見つける。これに基づいて構築される他の方法、例えば、縮小基準法及び平衡切捨てがある（例えば、Veroy, K., and A. T. Patera. “Certified real‐time s
olution of the parametrized steady incompressible Navier-Stokes equations: rigorous reduced‐basis a posteriori error bounds.” International Journal for Numer
ical Methods in Fluids 47.8‐9 (2005): 773-788.及びRowley, Clarence W. “Model 
reduction for fluids, using balanced proper orthogonal decomposition.” Modelin
g And Computations In Dynamical Systems: In Commemoration of the 100th Anniversary of the Birth of John von Neumann. 2006. 301-317.）．  一般的に言えば、ＲＯＭは、ＰＯＤ又は単一値分解（ＳＶＤ）などの技法を使用して、計算されたフルシミュレーションの状態から基底を計算する。この基底は、シミュレーションの主要な構成要素を表す。ＳＶＤは、行列を特異ベクトル及び特異値に因数分解する方法を提供する。ＳＶＤは固有分解と同じ種類の情報のいくつかを発見することを可能にし、例えば、機械システムの主要な構成要素を表すことができる。また、"Model Order Reduction", Francisco Chinesta, Antonio Huerta, Gianluigi Rozza and Karen Willcox, Encyclopedia of Computational Mechanics, edited by Erwin Stein, Rene de Borst and Thomas J.R. Hughes, 2004も知られている。本方法による縮小モデルの計算は、上記の基準に記載されているものなどのＲＯＭの任意の技法を使用する。
【００４２】
いずれの場合も、計算された縮小モデルは、要素を有する基底を含む。この基底は、縮小基底と呼ぶことができる。以下、これらの基底要素を基底要素と呼ぶ。計算されたフルシミュレーションの各状態は、基底要素の対応する線形結合によって表される。したがって、対応する線形結合は、それが表す状態の状態表現とも呼ばれる。対応する線形結合は、それが表す状態の縮小状態と呼ばれることもある。言い換えれば、計算されたフルシミュレーションの各状態について、本方法は、この状態の表現を計算する。計算された表現は基底要素が及ぶベクトル空間に属するベクトルであり、基底は前記ベクトル空間のベクトル基底である。基底要素は、計算されたフルシミュレーションから計算された因数分解の構成要素である。基底要素は、モードとも呼ばれる。例では、基底要素がシミュレーションによってシミュレートされる物理システムのエネルギーモードである。各状態表現は、それが表す状態を近似する。
【００４３】
基底
【数１】
2020109646.tif 000003
が、書き込まれてもよい。任意の状態ｓｔａｔｅ（ｔ）は以下のように、これらの基底要素の線形結合である状態表現ＰＳｔａｔｅ（ｔ）によって、時間ｔにおいて表すことができる。
【数２】
2020109646.tif 000004
ここで、ｗｉは、状態表現ＰＳｔａｔｅ（ｔ）を計算するために用いられる各々の基底要素の寄与の重みである。基底要素が線形結合に寄与すると言うことは、その寄与質量が線形結合において非ゼロであると言うことである。基底Ｂは、経時的に一定に保たれ、質量のみが経時的に変化する。時間的に重みを更新することにより、シミュレーション結果は時間的に進行する。計算されたフルシミュレーションの縮小モデルを計算することは、シミュレーションの最初の時間と最後の時間との間に含まれる時間ステップで全ての時間ｔにおける基底Ｂの全ての要素及び全ての質量を計算することを含む。したがって、縮小モデルが計算されると、式（１）を使用することによって、任意の時間ステップｔにおける計算されたフルシミュレーションの任意の状態ｓｔａｔｅ（ｔ）を表す任意の縮小状態ＰＳｔａｔｅ（ｔ）が利用可能になる。
【００４４】
図４は、縮小モデルの計算例を示す図である。計算は、全シミュレーションのすべての時間ステップにおいて、計算された全シミュレーションの状態４０を入力として得る。計算は、計算されたフルシミュレーションの全ての状態４０に基づく基底の計算４２を含む。図４の例では、計算された基底が計算されたフルシミュレーションのモード４４の基底である。言い換えれば、基底要素は、この例では計算されたフルシミュレーションの因数分解の結果である。スナップショット５０、５２及び５４の３つのスクリーンショットが図５に示されている。
【００４５】
この方法はフルシミュレーションの少なくとも１つ（すなわち、１つ又は複数）の状態について、対応する線形結合の一部を表示するステップ（Ｓ４０）をさらに含む。したがって、表示は１つの状態に対するものとすることができる。これはまた、例えば時間の反復に従って、同時に又は連続的に表示することができるいくつかの状態のためのものであってもよい。状態を表す対応する線形結合の一部は、状態近似又は完全状態近似と呼ぶことができる。
【００４６】
言い換えれば、本方法はフルシミュレーションの少なくとも１つの時間ステップｔについて、時間ｔにおける状態ｓｔａｔｅ（ｔ）の状態表現ＰＳｔａｔｅ（ｔ）を形成する線形結合の一部を表示する。線形結合の一部は、線形結合に寄与する基底要素のサブファミリーが及ぶベクトル空間上への前記線形結合の線形ベクトル投写を意味する。例えば、式（１）によって与えられる、時間ステップｔにおける状態ｓｔａｔｅ（ｔ）の状態表現ＰＳｔａｔｅ（ｔ）を得る。ＰＳｔａｔｅ（ｔ）を形成する線形結合の一部は以下の通りである：
【数３】
2020109646.tif 000005
ここで、
【数４】
2020109646.tif 000006
は
【数５】
2020109646.tif 000007
の非空の部分集合であり、ｐは正の整数であり、ｅｉは式（１）に関連して考察される基底要素であり、ｗｉは式（１）に関連して考察される各基底要素の寄与の重みである。集合の部分集合はその数学的意味で理解されるべきであり、集合の一部又はすべての集合とすることができる。これらの表記では少なくとも１つの時間ステップｔについて、該方法は状態表現ＰＳｔａｔｅ（ｔ）を形成する対応する線形結合の式（２）によって与えられる部分を表示するという上記の意味がある。本方法はいくつかのより多くの時間ステップ、例えば、同時に又は連続的に、そのような表示を行うことができる。なお、表示される各線形結合の部分に寄与する基底要素が多いほど、表示が正確になり、シミュレーション表示に必要なデータ量が大きくなる。言い換えれば、ｐが大きいほど、シミュレーションの表示はより正確でコストがかかる。
【００４７】
例では、すべてのシミュレーション状態を表す線形結合のいくつかの部分が同時に表示される。これらの例では、完全なシミュレーションがそのいくつかの部分を含む組み合わせに基づいて再構成される。再構成とは、この組合せに基づいて、フルシミュレーションの概算（したがって、データコストがかからない）が作成されることを意味する。再構成されたフルシミュレーションは、ディスプレイにも表示（Ｓ４０）され得る。
【００４８】
例では、基底要素の任意の線形結合が対応するシミュレーション圧縮比及び対応する再構成誤差に関連付けられる。
【００４９】
計算された縮小モデルは、シミュレーション表示に使用することができる１組の線形結合を提供する。これらの線形結合の各々は、対応するシミュレーション圧縮比に関連付けられ、したがって、シミュレーション表示に必要なデータ量に直接関連する。圧縮率の値は実際には転送されるデータ量に相当し、データ量が多いほど圧縮率の値は小さくなる。言い換えれば、１つの対応する線形結合の一部を表示することは、シミュレーション表示のために転送されるべきある程度のデータ量を決定することを意味する。
【００５０】
また、これらの線形結合の各々は、それぞれの再構成誤差に関連するので、シミュレーション表示の精度に直接関連する。言い換えれば、１つの対応する線形結合の一部を表示することは、シミュレーション表示のある精度、ある品質を固定する／必要とすることを意味する。また、データ量と精度とが関連しているという意味であり、データ量が多いほど精度が良くなり、逆もまた同様である。
【００５１】
基底要素の対応する線形結合の対応する再構成誤差は対応する線形結合、又は適切な場合には、対応する線形結合の一部によって形成される状態近似と、状態近似が表し、近似する対応する状態との間の数学的比較である。
【００５２】
例では、誤差は以下のように計算される。時間ステップｔと、この時間ステップにおける状態ｓｔａｔｅ（ｔ）と、式（１）によって与えられるその状態表現ＰＳｔａｔｅ（ｔ）とを得る。次に、線形結合ＰＳｔａｔｅ（ｔ）に関連するそれぞれの再構成誤差は、
【数６】
2020109646.tif 000008
によって与えられる。式中、
【数７】
2020109646.tif 000009
は任意の適切な既知のノルムである。同様に、（２）式で与えられる線形組み合わせＰＳｔａｔｅ（ｔ）の一部をとると、その部分に関連する誤差は
【数８】
2020109646.tif 000010
となる。式（３）及び（４）のパラメータは式（１）及び（４）を参照して説明したものであり、線形結合における基底要素が多いほど、それぞれの再構成誤差が小さくなり、線形結合の表示結果がより正確になる。
【００５３】
対応する線形結合の一部がいくつかの状態について表示される例では、本方法が対応する線形結合のすべての表示された部分に関連するすべての対応する再構成誤差のすべての二乗の合計の計算を含むことができる。計算された合計は、対応する線形結合の全ての表示された部分の共通の誤差を提供する。例えば状態表記ＰＳｔａｔｅ（ｔ１）、ＰＳｔａｔｅ（ｔ２）、…、ＰＳｔａｔｅ（ｔｍ）、ｓｔａｔｅ（ｔ１）、ｓｔａｔｅ（ｔ２）、…、ｓｔａｔｅ（ｔｍ）が、ステップｔ１、ｔ２、…、ｔｍで表示されると仮定する。この場合、共通誤差は
【数９】
2020109646.tif 000011
である。同様に、状態表現ＰＳｔａｔｅ（ｔ１）、ＰＳｔａｔｅ（ｔ２）、…、式（２）で与えられるＰＳｔａｔｅ（ｔｍ）の各部分（ｔ＝ｔ１，ｔ２，．．，ｔｍ）を考えると、共通誤差は以下のとおりである。
【数１０】
2020109646.tif 000012
対応する圧縮比は状態ｓｔａｔｅ（ｔ）を表示するために転送されるデータの量と、状態ｓｔａｔｅ（ｔ）を近似し、表す状態表現ＰＳｔａｔｅ（ｔ）を形成する対応する線形結合を表示するために転送されるデータの量との間の比であり、例えば式（１）に従う。適切な場合、対応する圧縮比は状態ｓｔａｔｅ（ｔ）を表示するために転送されるデータの量と、ＰＳｔａｔｅ（ｔ）を形成する対応する線形結合の一部を表示するために転送されるデータの量との間の比であり、例えば、式（２）に従う。線形結合における基底要素が多ければ多いほど、そのそれぞれの再構成誤差は小さくなり、線形結合を表示するために転送されるデータの量は大きくなる。逆に、線形結合における基底要素が少なければ少ないほど、そのそれぞれの再構成誤差は大きくなり、線形結合を表示するために転送されるデータの量は小さくなる。
【００５４】
図６は、１つの状態の状態表現を形成する線形結合の異なる対応する部分に関連する異なる再構成誤差を示す。列６０は、線形結合の異なる部分に寄与する基底要素の数である。列６２には、各部分に関連する対応するシミュレーション誤差が示されている。列６４には、線形結合のそれぞれ異なる部分が表示される。列６８では、前記１つの状態が比較のために繰り返し表示される。図６に示すように、部分に寄与する基底要素が多いほど、それぞれの再構成誤差は小さくなり、状態の近似はより正確になる。従って、図６の例は、再構成時間ステップにおけるモードの数の影響を示す。
【００５５】
例では、基底要素は順序付けられる。これらの例では、順序付けられた基底要素の第１の要素が表示される対応する線形結合の部分に寄与する。
【００５６】
基底要素を順序付けし、少なくとも第１の要素が線形結合の一部に寄与することを要求することにより、シミュレーション表示の最小精度を保証することができる。
【００５７】
基底要素の順序付けは上記のように、基底要素Ｂが
【数１１】
2020109646.tif 000013
と書けることを意味するが、さらにｅ１が第１の要素、ｅ２が第２の要素、・・・ｅｎが最後の要素であることも意味する。換言すれば、基底要素はインデックス付けされ、インデックス付けは順序を与える。例では、順序がディスプレイの精度と関連付けられ、第１の要素が線形結合の一部分に寄与する唯一の基底要素である場合、線形結合の一部分は第２の基底要素のみが寄与する線形結合の一部分のそれぞれの再構成誤差よりも小さいそれぞれの再構成誤差を有し、第２の基底要素自体が第３の基底要素のみが寄与する線形結合の一部分のそれぞれの再構成誤差よりも小さいそれぞれの再構成誤差を有する、などである。例えば、ステップｔにおける状態ｓｔａｔｅ（ｔ）が（１）式で与えられるＰＳｔａｔｅ（ｔ）で表される場合、
【数１２】
2020109646.tif 000014
であるすべての整数に対し、
【数１３】
2020109646.tif 000015
である。これは、時間ステップｔとは無関係に成り立つ。言い換えれば、基底要素の順序は、シミュレーション表示のためのそれらの増分精度に従う。
【００５８】
本方法は対応する線形結合の部分の表示（Ｓ４０）の前に、表示されるべきシミュレーションの１つ又は複数の次の状態について、対応する線形結合の部分に寄与するいくつかの基底要素を選択するステップ（Ｓ３０）をさらに含むことができる。
【００５９】
基底要素の数を選択することは、１つ又は複数の次の状態の表示の精度及びコストの両方に影響を及ぼす。それは、次の状態に対するそれぞれの再構成誤差又はそれぞれのシミュレーション圧縮比を増加又は減少させることができる。すなわち、この選択により、表示の精度と表示のために転送するデータ量の両方を制御することができ、一定の表示精度を確保しつつ、シミュレーション表示に必要なネットワークの制御を行うことができる。
【００６０】
基底要素の数を選択するステップ（Ｓ３０）は、選択するステップ（Ｓ３０）に関係する任意の線形結合の任意の部分が正確に選択された数である多数の寄与基底要素を特色とすることを意味する。１つ又は複数の次の状態という表現は、本方法によって表示（Ｓ４０）が実行される少なくとも１つの状態を指す。選択（Ｓ３０）は、少なくとも１つの状態の１つ、一部、又はすべての状態に対して実行することができるという意味である。例では選択（Ｓ３０）が少なくとも１つの状態のすべての状態について１回実行され、このことは同じ個数の基底要素が少なくとも１つの状態のそれぞれの状態を表すそれぞれの線形結合のすべての部分に寄与することを意味する。これらの例では、それは寄与する全く同じ基底要素であってもよい。選択（Ｓ３０）は自動的に、又はユーザのアクションに基づいて実行することができる。
【００６１】
例では、基底要素は順序付けられ、第１の基底要素は常に、表示される任意の線形結合の任意の部分に寄与する。これらの例では、要素の数、例えばＮ個を選択することにより、Ｎ個の第１の基底要素が表示される任意の線形結合の任意の部分に寄与することができる。
【００６２】
本方法は対応する線形結合の部分の表示（Ｓ４０）の後に、表示されるべき１つ又は複数の次の状態について、対応する線形結合の部分に寄与する新しい数の基底要素の選択（Ｓ５０）をさらに含むことができる。それによって、対応する線形結合の新しい部分が、１つ又は複数の状態のそれぞれについて作成される。本方法は、対応する線形結合の新しい部分の表示（Ｓ６０）をさらに含むことができる。
【００６３】
この方法は、累積的であることを意味するインクリメンタルな精度を可能にする。前回の表示（Ｓ４０）の精度が物理的観点から満たされていない場合には、線形結合の部分に寄与する要素の数を増やして、満足のいく精度に達するようにしてもよい。同様に、この方法は、ネットワークのボトルネックを回避することを可能にする。以前の表示（Ｓ４０）のために転送されるべきデータの量が、ネットワークのボトルネックを引き起こすか、又は遭遇すると仮定する。次に、線形結合の部分に寄与する要素の数を減らして、ネットワークの使用を容易にし、及び／又は帯域幅の使用を節約することができる。同様に、本方法はシミュレーションを実行するコンピュータシステム上のボトルネックを回避することを可能にし、例えば、シミュレーションは過剰なコンピューティング資源及び／又はメモリを使用し、及び／又はストレージ、バス等のコンピュータシステムの他の要素を圧倒する。線形結合の部分に寄与する要素の数は、コンピュータシステムの使用を減少させるように減少させることができる。
【００６４】
なお、新たな番号の選択（Ｓ５０）は、前回の選択（Ｓ３０）として行ってもよい。
【００６５】
例では、基底要素は順序付けられ、第１の基底要素は常に、表示される任意の線形結合の任意の部分に寄与する。これらの例では前の選択（Ｓ３０）で選択された要素の数、例えばＮはＮ個の第１の基底要素が表示される任意の線形結合の任意の部分に寄与するという結果をもたらすことができる。新しい数、例えばＭ個の要素を選択するステップ（Ｓ５０）は既に寄与しているＮ個の第１の基底要素から１つ又は複数の基底要素を追加又は除去することを含み、その結果、表示されるべきシミュレーションの１つ又は複数の状態のそれぞれについて、対応する線形結合の新しい部分に今や寄与するのはＭ個の第１の基底要素である。
【００６６】
ここでは、新たな基底要素数の選択（Ｓ５０）と新たな部分の表示（Ｓ６０）とを繰り返す（Ｓ７０）。
【００６７】
したがって、この方法は非常に柔軟である。実際、表示された部分に寄与する基底要素の数は、時間中、例えばシミュレーション時間中に修正することができる。従って、シミュレーション表示の精度及びネットワーク使用量を常に更新又は変更することができる。これにより、帯域幅及び／又は使用及び／又は可能なボトルネックをリアルタイムで考慮し、結果としてネットワーク／帯域幅の使用を容易にするように動作しながら（新たな選択を実行することによって（Ｓ５０））、可能な限り正確なシミュレーション表示が可能になる。特に、本方法はネットワーク／帯域幅の使用の制約を自動的かつリアルタイムで尊重しつつ、例えば、全ての状態の時間シーケンスなどの一連のシミュレーション結果を可能な限り正確に自動的かつリアルタイムで表示するために、自動的に実行されるのに適している。言い換えれば、本方法は、表示精度を利用可能なネットワークに自動的かつリアルタイムで適合させることができる。
【００６８】
反復の長さ／持続時間は、予め決定されてもよい。これは、例えば、シミュレーション長さに対応することができる。例では、反復の各増分がシミュレーションの１つの時間ステップに対応する。これらの例では、すべての状態がシミュレーション中の時間におけるそれらの位置の順序で連続的に表示される。シミュレーションの各時間ステップにおいて、この時間ステップの状態を表す線形結合の対応する部分が表示されるという意味である。その結果、状態の近似が、時間の順序で表示される。これは、完全なシミュレーションの近似が連続的に表示され、例えば、シミュレートされた物理システムの時間の進化を見ることを可能にするように、連続的に行われてもよい。
【００６９】
各表示（Ｓ７０）の前に選択（Ｓ５０）が行われる。反復（Ｓ７０）は、コンピュータによって自動的に実行されてもよい。例えば、コンピュータは、ネットワーク使用量の測定値をリアルタイムで提供され、次いで、シミュレーション表示のためのデータ量が次の表示が実行されるときにネットワークのボトルネックを引き起こさないように、各選択を実行する（Ｓ５０）。反復（Ｓ７０）はまた、コンピュータとのユーザ対話を含んでもよい。例では、ユーザが例えばコンピュータのＧＵＩと対話することによって、反復（Ｓ７０）の各選択（Ｓ５０）を実行することができる。次の表示（Ｓ７０）がユーザに適合しない場合、例えば、ある精度要件に達しない場合、ユーザは、次の選択（Ｓ５０）を実行して、寄与基底要素の数を増加させることができる。例では、ユーザが各表示（Ｓ６０）でネットワーク使用量の測定値を提供され、したがって、例えばボトルネックを回避するために、寄与する基底要素の数を増減するように次の選択（Ｓ５０）を実行することができる。
【００７０】
基底要素の任意の線形結合が対応するシミュレーション圧縮比及び対応する再構成誤差に関連付けられる例では、各選択（Ｓ５０）が表示されるべき１つ又は複数の次の状態に関する対応する線形結合の部分の対応するシミュレーション圧縮比が所与の値に達するように実行され得る。あるいは、各選択（Ｓ５０）が表示されるべき１つ以上の次の状態に対する対応する線形結合の部分の対応する再構成誤差が所与の値に達するように実行されてもよい。
【００７１】
シミュレーション圧縮率又は再構成誤差に到達する値を設定することによって、本方法は、表示精度と転送速度（したがって、ネットワーク使用量）との間のバランスを保証する。
シミュレーション圧縮比（又は再構成誤差）の所与の値は所与の転送速度（又は所与の精度）を保証するように決定される（例えば、ユーザによって予め決定されるか、又は選択される）圧縮比（又は再構成誤差）の値である。
【００７２】
シミュレーション圧縮比（又は再構成誤差）の所与の値に到達するために、各選択（Ｓ５０）は、以下の反復を含む。
−表示されるべき対応する線形結合の１つ又は複数の次の部分の対応するシミュレーション圧縮比（又は再構成誤差）は、寄与基底要素の現在の数に基づいて決定される。
−表示されるべき対応する線形結合の１つ又は複数の次の部分の対応するシミュレーション圧縮比（又は再構成誤差）は、所与の値と比較される。
−表示されるべき対応する線形結合の１つ又は複数の次の部分の対応するシミュレーション圧縮比（又は再構成誤差）が所与の値が実質的に等しくない場合、新しい基底要素の数が選択され（Ｓ５０）、以下下同様に、表示されるべき１つ又は複数の次の部分の対応するシミュレーション圧縮比（又は再構成誤差）が所与の値に実質的に等しくなるまで繰り返される。
【００７３】
例では上記の反復が１つの増分のみを含み、このことは選択された新しい数が表示されるべき対応する線形結合の１つ以上の次の部分の対応するシミュレーション圧縮比（又は再構成誤差）と所与の値との間の実質的な等しさを直接的にもたらすことを意味する。したがって、これらの例では、ワンショット計算で所与の値に達する。所与の値は選択（Ｓ５０）ごとに同じであってもよいし、方法の実行中に、例えば、ある選択（Ｓ５０）において、又はそれらの各々において変更されてもよいことを理解されたい。
【００７４】
シミュレーション圧縮比の所与の値は、シミュレーションを表示するためにネットワークを介して送信されるデータ量がしきい値未満になるように決定されてもよい。
【００７５】
データ量がしきい値未満に留まることを保証することは、優先順位がネットワーク使用に与えられることを意味する。要するに、この方法は、転送可能なデータ量がしきい値によって制限されるという制約を尊重する最大表示精度を提供する。
【００７６】
ネットワークは、ネットワークを介して現在転送されているデータの量に対応するネットワーク負荷を有する。ネットワーク負荷は、典型的にはビット／秒で測定される。ネットワーク負荷は少なくとも、シミュレーションを表示するために送信されるシミュレーションのデータを含み、さらに、他のタイプのトラフィックのデータを含むことができる。シミュレーションを表示するためにネットワークを介して送信されるデータ量（例えば、データ量）がしきい値未満に留まることを要求することは対応するネットワーク負荷が所与のネットワーク負荷を超えないことを要求することであり、すべての場合において、シミュレーションを表示するためにネットワークを介して送信されるデータ量に対応するネットワーク負荷はネットワークが負担することができる最大ネットワーク負荷を超えるべきではない。しきい値は、ユーザによって固定されてもよい。しきい値はネットワーク上の測定に基づいてコンピュータによって自動的に決定されてもよく、最大ネットワーク荷重及び現在のネットワーク荷重（例えば、現在のネットワーク使用量が測定される）が測定され、その差はシミュレーションのデータのための利用可能なネットワーク荷重を提供し、しきい値であってもよい。上述したように、圧縮率は、データ量に相当する。したがって、データ量がしきい値未満に留まるという要件は、圧縮比がしきい値に対応するある値を超えて留まることを必要とすることである。シミュレーションを表示する際にネットワークを介して送信されるデータ量がしきい値を超えず、選択（Ｓ５０）の際に所与の値に達するようにシミュレーション圧縮比の所与の値を決定することは、対応する線形結合の表示された部分のシミュレーション圧縮比の所与の値が、シミュレーションを表示するためのネットワーク負荷が最大ネットワーク負荷に達しないような値であることを意味する。
【００７７】
再構成誤差の所与の値は、表示されるシミュレーションの精度が要件に適合するように決定されてもよい。
【００７８】
表示精度が要求に適合することを確認することは、表示制度に優先度が与えられることを意味する。つまり、この方法は、表示精度を最大にすることを目的とする。
【００７９】
表示精度が要求に適合すると言うことは、表示される部分の誤差（適切な場合には共通誤差）が最大時間ステップ値未満にとどまるということを意味する。実際、その部分の再構成誤差値が大きいほど、部分表示の精度は低くなる。最大誤差値は例えば、ユーザによって予め決定されてもよい。再構成誤差の所与の値は、最大誤差値を設定した結果として、最大誤差値よりも低くなるように決定することができる。したがって、精度の要件は、最大誤差値の関数として設定される。したがって、再構成誤差の所与の値を決定し、所与の値に到達するように選択を実行すること（Ｓ５０）は、表示されたすべての部分の誤差（適切な場合、共通誤差）が最大誤差値未満に留まることを意味する。
【００８０】
例では、所与の値がネットワークを介して送信されるデータの量を最小限に抑えながら、最大精度でシミュレーションを表示するために決定される。
【００８１】
所与の値のこのような決定は、精度と転送速度との間のバランスを最適化する。
【００８２】
データ量を最小にしつつディスプレイ精度が最大になるように所与の値を決定することは、ネットワークができるだけ広範囲に使用されることを意味する。言い換えれば、ネットワークを介して送信されるデータの量は、ネットワーク負荷が最大ネットワーク負荷に実質的に等しくなるような量である。したがって、最大限の可能な表示精度に達するために送られるデータ量が最小限に抑えられる。基底要素に関しては表示された部分の寄与基底要素の数はできるだけ多いが、ネットワーク負荷が最大ネットワーク負荷に実質的に等しくなるように、圧縮率の到達した所与の値があるという制約を満たすという意味である。
【００８３】
例では、しきい値がユーザアクション時に選択されてもよい。
【００８４】
例では、要件がユーザアクションに応じて選択されてもよい。
【００８５】
したがって、これらの例では、ユーザが表示精度及び／又は帯域幅／ネットワーク使用の制御を有する。
【００８６】
選択は方法の初期段階で実行されてもよく、この場合、しきい値又は要件はすべての選択に共通である（Ｓ５０）。それはまた、方法の実行中の任意の時間に、例えば、必要に応じて、選択（Ｓ５０）及び表示（Ｓ６０）の反復の任意の増分で実行することができる。選択はさらに、コンピュータのＧＵＩとのユーザ対話の際に実行されてもよい。
【００８７】
ここで、本方法の異なる例を、図７−１０を参照して説明する。
【００８８】
図７ａ及び図７ｂは、所与の値に到達するために実行される１つの選択（Ｓ５０）の例を示す図である。
【００８９】
図７ａの一例では、シミュレーション圧縮比の所与の値がシミュレーション表示のために転送されるデータ量に対応するネットワーク負荷が最大ネットワーク負荷に等しくなるように決定される。最大ネットワーク負荷はコンピュータによって自動的に、又はユーザアクションに応じて選択することができる。最大ネットワーク負荷は、対応する転送データ量がしきい値未満になるようなものである。表示されるべき対応する線形結合の部分に寄与する現在の基底要素の数の検出７０が実行される。検出の結果、各線形結合の部分の各シミュレーション圧縮比が算出され、所定値よりも大きいと判定される。それに応答して、１つ又は複数の寄与基底要素が、部分に寄与するために追加される。新たな対応するネットワーク負荷の計算７２が実行される。１つの選択（Ｓ５０）の間、検出７０及び後続の計算７２は表示されるべき対応する線形結合の部分の対応するシミュレーション圧縮比が所与の値に達するまで、又は同等に、ネットワーク負荷が最大ネットワーク負荷に達するまで繰り返されてもよい。
【００９０】
図７ｂの第２の例では、再構成誤差の所与の値は、最大誤差値よりも低くなるように決定される。最大誤差値はコンピュータによって自動的に、又はユーザのアクションに応じて選択することができる。所与の値が最大誤差値よりも低いことを要求することは、精度要件に適合することである。表示されるべき対応する線形結合の部分に寄与する現在の基底要素の数の検出７４が実行される。対応する線形結合の部分の対応する再構成誤差が計算され、それが所与の値よりも大きいと判定される。それに応答して、１つ又は複数の寄与基底要素が、部分に寄与するために追加される。対応する線形結合の新しい部分の新しい対応する再構成誤差の計算７６が実行される。１つの選択（Ｓ５０）の間、検出７４及び後続の計算７６は表示されるべき対応する線形結合の部分の対応する再構成誤差が所与の値に達し、したがって最大誤差値よりも小さくなるまで繰り返され得る。シミュレーションディスプレイが精度の要求に適合するという意味である。
【００９１】
図８は与えられた値が最良のユーザ体験に従って決定される例を示し、これはシミュレーションがネットワークを介して送信されるデータの量を最小化しながら、最大の精度で表示されることである。具体的には最大精度は８０％に等しく、最小限のデータ量はネットワーク使用量が３０％に等しくなるようなものである。設定ウィンドウ８０がユーザに表示され、ユーザは最良の体験設定８６を選択する。ネットワーク使用の視覚的表示８２が表示される。視覚的表示８２は、ネットワーク使用のステータスバー８２０と、最良の体験ネットワーク使用が３０％であるという視覚的情報８２２とを含む。精度の視覚的表示８４が表示される。視覚的表示８４は、精度のステータスバー８４０と、最良の体験ネットワーク使用が８０％であるという視覚的情報８４２とを含む。この最良の設定は、システムによって自動的に提案されてもよく、精度と転送速度との間の最適なバランスを保証する。
【００９２】
図９は、別のユーザが設定を選択した場合の設定ウィンドウ８０の別の表示を示す。ユーザは、カスタム精度設定９６を選択している。この設定により、ユーザは、精度の要件を選択することができる。精度の視覚的表示９０が表示される。これは、精度のステータスバー９０２と、ステータスバー９０２上のカーソル９０４とを含む。要件を選択するために、ユーザは例えば、タッチ又は触覚デバイスを使用してＧＵＩと対話することによって、所望の精度要件に達するまで、ステータスバー９０２に沿ってカーソル９０４を移動させる。ユーザがカーソル９０４を動かすと、再構成誤差の所与の値が自動的に決定され、実際には、既に説明したように、再構成誤差とシミュレーション表示の精度との直接的な関係がある。同時に、この方法は、ユーザによって選択された精度に必要とされるネットワーク使用量の視覚情報９２を表示する。視覚表示９２は、ネットワーク使用量のステータスバー９２０と、ユーザの精度要件の選択に対応するネットワーク使用量が５％であるという視覚情報９２２とを含む。例えば、雑音の多い及び／又は視覚的なポップアップウィンドウのような情報が表示されて、ユーザの精度要件の選択が、ボトルネックを引き起こす可能性がある重要すぎるネットワーク使用をトリガすることをユーザに知らせることができる。これらの例では、情報が精度要件を下げるための提案を含むことができ、おそらく、ネットワーク使用の測定から決定された適切な精度レベルを示す。
【００９３】
図１０は、別のユーザが設定を選択した場合の設定ウィンドウ８０の別の表示を示す。ユーザは、カスタム帯域幅設定１０６を選択している。この設定により、ユーザは、帯域幅／ネットワーク使用量を選択することができる。図１０の例では、使用を選択することはしきい値を選択することと同等である。ネットワーク使用の視覚的表示１００が表示される。これは、ネットワーク使用のステータスバー１０２と、ステータスバー１０２上のカーソル１０４とを含む。使用を選択するために、ユーザは例えば、タッチ又は触覚デバイスを使用してＧＵＩと対話することによって、所望のネットワーク使用に達するまで、ステータスバー１０２に沿ってカーソル１０４を移動させる。ユーザがカーソル１０４を動かすと、シミュレーション圧縮比の所与の値が自動的に決定され、実際には、既に説明したように、再構成誤差とシミュレーション表示の精度との直接的な関係がある。同時に、この方法は、ユーザによって選択された帯域幅使用に必要な表示精度の視覚情報１１０を表示する。精度の視覚的表示１１０は、ネットワーク使用のステータスバー１１２と、ユーザのネットワーク使用の選択に対応する精度が８０％であるという視覚的情報１１４とを含む。システムはユーザの帯域幅使用の要件に適合させるために、精度を自動的に調整することを理解されたい。
【００９４】
上記のすべての例において、設定ウィンドウ８０の表示及び後続のユーザの選択は方法の初期段階で一度実行することができ、この場合、所与の値は、すべての方法ステップ中に固定されたままであることを理解されたい。また、各表示（Ｓ６０）の前又は何らかの表示（Ｓ６０）の前に、設定ウィンドウ８０の表示及びその後のユーザの選択を行ってもよい。例では設定ウィンドウが方法の全実行中に表示されてもよく、ユーザは実質的にリアルタイムで１つの設定から別の設定に切り替えてもよい。設定ウィンドウ８０の各表示は自動的に、場合によっては、ユーザ要求、例えば、ＧＵＩとのユーザ対話に応答して実行することができる。さらに、ウィンドウ８０は任意のシミュレーション表示（すなわち、１つ又は複数の表示（Ｓ６０）に対する）が例えば、シミュレーション表示の隣、上、又は下に設定ウィンドウ８０を表示することによって、画面上で完全に見えるように表示されてもよい。設定ウィンドウ８０は、ウィジェットであってもよい（又はウィジェットの一部であってもよい）。
【００９５】
次に、この方法の別の例を、図１１を参照して説明する。
【００９６】
この方法は、オフラインステージ２０００及びオンラインステージ２１００を含むことができる。オフラインステージ２０００は、フルシミュレーション２０２０を計算すること（Ｓ１０）を含む。その結果、全ての状態２０４０が計算される。計算された完全なシミュレーションは、いくつかの用途のために記憶されてもよい。オンライン状態２０００は縮小基底２０８０及び質量の計算２０６０を含む縮小モデルを計算すること（Ｓ２０）をさらに含み、計算は、計算されたフルシミュレーション２０２０の状態２０４０を入力としてとる。この方法は、オンラインステージ２１００をさらに含む。オンラインステージ２１００は状態２０４０、重み、及び縮小基底２０８０に基づいて、少なくとも１つの縮小状態を形成するステップ２１２０を含む。オンラインステージ２１００はさらに、いくつかの寄与基底要素の選択（Ｓ３０）を含み、これは、縮小基底２０８０の対応する適切なサブセットの転送２１８０をトリガする。オンラインステージ２１００は部分集合と少なくとも１つの縮小状態２１２０とを組み合わせるステップ２１４０をさらに含み、その結果、少なくとも１つの縮小状態２１２０に対応する少なくとも１つの完全状態近似２１６０が表示される（Ｓ３０）。
【００９７】
実施例では、フルシミュレーションの計算（Ｓ１０）及び計算されたフルシミュレーションの縮小モデルの計算（Ｓ２０）が第１のコンピュータ上で実行される。これらの例では、他のステップが第２のコンピュータ上で実行される。これらの例では、第１及び第２のコンピュータがネットワークを介して接続されている。第１のコンピュータは完全なシミュレーションを計算するために使用される日付を記憶する記憶装置（例えば、データベース）を含むことができるサーバとすることができる。第２のコンピュータはコンピュータクライアント、例えば、計算されたデスクトップ、ラップトップ、タブレット、スマートフォンなどであってもよい。
【００９８】
これらの例では、第１及び第２のコンピュータが図２によるコンピュータであってもよい。第１及び第２のコンピュータの各最小限の要件は、方法の１つ又は複数のステップを実行するための命令を記憶するメモリに通信可能に結合された中央処理装置（ＣＰＵ）１０１０であることを理解されたい。第２のコンピュータは、シミュレーションをユーザに表示するのに適していてもよい。第２は、図の設定ウィンドウ８０をユーザに表示するのに適している。７ａ、７ｂ、８、９及び１０。例では、図１１によるオフラインステージ２０００及びオンラインステージ２１００がそれぞれ、第１のコンピュータ上及び第２のコンピュータ上で実行され得る。
【図１】
2020109646.tif 000016
【図２】
2020109646.tif 000017
【図３】
2020109646.tif 000018
【図４】
2020109646.tif 000019
【図５】
2020109646.tif 000020
【図６】
2020109646.tif 000021
【図７ａ】
2020109646.tif 000022
【図７ｂ】
2020109646.tif 000023
【図８】
2020109646.tif 000024
【図９】
2020109646.tif 000025
【図１０】
2020109646.tif 000026
【図１１】
2020109646.tif 000027
【外国語明細書】
2020109646.tif 000028
2020109646.tif 000029
2020109646.tif 000030
2020109646.tif 000031
2020109646.tif 000032
2020109646.tif 000033
2020109646.tif 000034
2020109646.tif 000035
2020109646.tif 000036
2020109646.tif 000037
2020109646.tif 000038
2020109646.tif 000039
2020109646.tif 000040
2020109646.tif 000041
2020109646.tif 000042
2020109646.tif 000043
2020109646.tif 000044
2020109646.tif 000045
2020109646.tif 000046
2020109646.tif 000047
2020109646.tif 000048
2020109646.tif 000049
2020109646.tif 000050
2020109646.tif 000051
2020109646.tif 000052
2020109646.tif 000053
2020109646.tif 000054
2020109646.tif 000055
2020109646.tif 000056
2020109646.tif 000057
2020109646.tif 000058
【図１】
2020109646.tif 000059
【図２】
2020109646.tif 000060
【図３】
2020109646.tif 000061
【図４】
2020109646.tif 000062
【図５】
2020109646.tif 000063
【図６】
2020109646.tif 000064
【図７ａ】
2020109646.tif 000065
【図７ｂ】
2020109646.tif 000066
【図８】
2020109646.tif 000067
【図９】
2020109646.tif 000068
【図１０】
2020109646.tif 000069
【図１１】
2020109646.tif 000070