(57)【要約】  データを格納するために必要な記憶容量を削減する。  データ取得手段（１１）は、データを各次元軸と時間軸とに対応付けて取得する。モード設定手段（１２）は、次元性調査モードに設定し、および次元性調査モードを解除する。軸判定変化率算出手段（１３）は、次元性調査モードで、軸データ変化率をそれぞれ算出する。軸判定手段（１４）は、各軸の軸データ変化率が低いか否かを判定する。対象軸設定手段（１５）は、軸データ変化率が高いと判定された軸を対象軸に設定する。記録判定変化率算出手段（１６）は、次元性調査モードが解除されているとき、軸データ変化率をそれぞれ算出する。記録判定手段（１７）は、軸データ変化率に基づき、取得されたデータを記録するか否かを判定する。記録手段（１８）は、データを記録しないと判定した場合、取得されたデータを記録しない。
2009031200.tif 000002
【特許請求の範囲】
【請求項１】
複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録プログラムにおいて、
コンピュータを、
前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得するデータ取得手段、
次元性調査の対象となる対象軸を前記軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、設定した前記次元性調査モードを解除するモード設定手段、
前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する軸判定変化率算出手段、
前記軸選択変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が低いか否かを判定する軸判定手段、
前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が高いと判定されなかった軸を対象軸に設定しない対象軸設定手段、
前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する記録判定変化率算出手段、
前記記録判定変化率算出手段によって算出された前記軸データ変化率に基づき、当該軸データに対応する前記データを記録するか否かを判定する記録判定手段、
前記記録判定手段が前記データを記録すると判定した場合、前記軸データに対応する前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記データに対応する前記データを前記データテーブルに記録しない記録手段、
として機能させることを特徴とするデータ記録プログラム。
【請求項２】
前記軸判定変化率算出手段は、各前記軸について、単位時間ごとの当該軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該軸の軸データ変化率とし、
前記記録判定変化率算出手段は、各前記軸について、単位時間ごとの当該軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該軸の軸データ変化率とする、
ことを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項３】
さらに前記コンピュータを、前記軸データ変化率が低いか否かを判定するための前記軸ごとに対応する閾値を取得する設定情報取得手段として機能させ、
前記軸判定手段は、前記軸判定変化率算出手段によって算出された各前記軸の軸データ変化率と、前記設定情報取得手段によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が前記閾値未満である場合、当該軸の軸データ変化率が低いと判定し、
前記記録判定手段は、前記記録判定変化率算出手段によって算出された前記対象軸の軸データ変化率と、前記設定情報取得手段によって取得された当該対象軸に対応する閾値とを比較して、少なくともいずれか１つの前記対象軸の軸データ変化率が前記閾値未満である場合、前記軸データに対応する前記データを前記データテーブルに記録しないと判定する、
ことを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項４】
前記設定情報取得手段は、さらに、前記軸判定手段による判定の対象としてユーザにより指定された軸を示す指定軸を取得し、
前記軸判定手段は、前記指定軸のみについて、前記軸判定変化率算出手段によって算出された各前記軸の軸データ変化率と、前記設定情報取得手段によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が前記閾値未満である場合、当該軸の軸データ変化率が低いと判定し、
前記記録判定手段は、前記対象軸について、前記軸の軸データ変化率と当該軸に対応する閾値とを比較して、前記対象軸のうち少なくともいずれか１つの軸の軸データ変化率が前記閾値未満である場合、前記軸データに対応する前記データを前記データテーブルに記録しないと判定する、
ことを特徴とする請求の範囲第３項記載のデータ記録プログラム。
【請求項５】
前記軸判定変化率算出手段は、前記指定軸についてのみ、単位時間ごとの当該指定軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該指定軸の軸データ変化率とし、
前記記録判定変化率算出手段は、前記対象軸についてのみ、単位時間ごとの当該対象軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該対象軸の軸データ変化率とする、
ことを特徴とする請求の範囲第４項記載のデータ記録プログラム。
【請求項６】
さらに前記コンピュータを、前記軸データ変化率が低いか否かを判定するための前記軸ごとに対応する閾値を取得する設定情報取得手段として機能させ、
前記軸判定手段は、前記軸判定変化率算出手段によって算出された各前記軸の軸データ変化率と、前記設定情報取得手段によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が前記閾値未満である場合、当該軸の軸データ変化率が低いと判定し、
前記記録判定手段は、前記記録判定変化率算出手段によって算出された前記対象軸の軸データ変化率と、前記設定情報取得手段によって取得された当該対象軸に対応する閾値とを比較して、すべての前記対象軸の軸データ変化率が前記閾値未満である場合、前記軸データに対応する前記データを前記データテーブルに記録しないと判定する、
ことを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項７】
前記設定情報取得手段は、さらに、前記軸判定手段による判定の対象としてユーザにより指定された軸を示す指定軸を取得し、
前記軸判定手段は、前記指定軸について、前記軸判定変化率算出手段によって算出された各前記軸の軸データ変化率と、前記設定情報取得手段によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が前記閾値未満である場合、当該軸の軸データ変化率が低いと判定し、
前記記録判定手段は、前記対象軸のみについて、前記軸の軸データ変化率と当該軸に対応する閾値とを比較して、すべての前記対象軸の軸データ変化率が前記閾値未満である場合、前記軸データに対応する前記データを前記データテーブルに記録しないと判定する、
ことを特徴とする請求の範囲第６項記載のデータ記録プログラム。
【請求項８】
前記軸判定変化率算出手段は、前記指定軸についてのみ、単位時間ごとの当該指定軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該指定軸の軸データ変化率とし、
前記記録判定変化率算出手段は、前記対象軸についてのみ、単位時間ごとの当該対象軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該対象軸の軸データ変化率とする、
ことを特徴とする請求の範囲第７項記載のデータ記録プログラム。
【請求項９】
前記データ取得手段は、前記データを前記時間軸の変化に基づいて順次取得し、
前記モード設定手段は、前記データ取得手段によって最初に取得されたデータから所定個数のデータまでは前記次元調査モードに設定して当該データを処理する一方、前記データ取得手段によって最初に取得されたデータから所定個数のデータ以後のデータは前記次元性調査モードを解除して当該データを処理することを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項１０】
前記データ取得手段は、前記データを前記時間軸の変化に基づいて順次取得し、
前記モード設定手段は、前記データ取得手段によって最初にデータが取得されてから経過した前記時間が所定の時間以内のデータまでは前記次元調査モードに設定して当該データを処理する一方、前記データ取得手段によって最初にデータが取得されてから経過した前記時間が所定の時間以後に取得されたデータは前記次元性調査モードを解除して当該データを処理することを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項１１】
前記データ取得手段は、前記データを前記時間軸の変化に基づいて順次取得し、
前記モード設定手段は、前記データ取得手段によって取得されたあるデータから所定個数のデータまでは前記次元調査モードに設定して当該データを処理すると共に、その後に取得された第２の所定の個数のデータについては前記次元調査モードを解除して当該データを処理し、その後はこれらの前記次元調査モードの設定および解除を交互に繰り返して当該データを処理することを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項１２】
前記データ取得手段は、前記データを前記時間軸の変化に基づいて順次取得し、
前記モード設定手段は、前記データ取得手段によって取得されたあるデータから経過した前記時間が第１の所定時間内のデータまでは前記次元調査モードに設定して当該データを処理すると共に、その後経過した前記時間が第２の所定時間内のデータについては前記次元調査モードを解除して当該データを処理し、その後はこれらの前記次元調査モードの設定および解除を交互に繰り返して当該データを処理することを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項１３】
前記軸判定変化率算出手段は、各前記次元軸データにおける単位時間ごとの当該次元軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該次元軸の軸データ変化率とし、
前記軸判定手段は、前記軸判定変化率算出手段によって算出された前記次元軸の軸データ変化率に基づき、各前記次元軸の軸データ変化率が低いか否かを判定し、
前記記録判定変化率算出手段は、前記対象軸の各前記次元軸データにおける単位時間ごとの当該対象軸の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該対象軸の軸データ変化率とし、
前記記録判定手段は、前記記録判定変化率算出手段によって算出された前記対象軸の軸データ変化率に基づき、当該対象軸の軸データに対応する前記データを記録するか否かを判定する、
ことを特徴とする請求の範囲第１項記載のデータ記録プログラム。
【請求項１４】
複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録装置において、
前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得するデータ取得手段と、
次元性調査の対象となる対象軸を前記軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、および設定した前記次元性調査モードを解除するモード設定手段と、
前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する軸判定変化率算出手段と、
前記軸選択変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が低いか否かを判定する軸判定手段と、
前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が高いと判定されなかった軸を対象軸に設定しない対象軸設定手段と、
前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて当該軸の軸データが変化する率を示す軸データ変化率をそれぞれ算出する記録判定変化率算出手段と、
前記記録判定変化率算出手段によって算出された前記軸データ変化率に基づき、当該軸データに対応する前記データを記録するか否かを判定する記録判定手段と、
前記記録判定手段が前記データを記録すると判定した場合、前記軸データに対応する前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記軸データに対応する前記データを前記データテーブルに記録しない記録手段と、
を有することを特徴とするデータ記録装置。
【請求項１５】
コンピュータが、複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録方法において、
データ取得手段が、前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得し、
モード設定手段が、次元性調査の対象となる対象軸を前記軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、および設定した前記次元性調査モードを解除し、
軸判定変化率算出手段が、前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出し、
軸判定手段が、前記軸選択変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が低いか否かを判定し、
対象軸設定手段が、前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が高いと判定されなかった軸を対象軸に設定せず、
記録判定変化率算出手段が、前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて当該軸の軸データが変化する率を示す軸データ変化率をそれぞれ算出し、
記録判定手段が、前記記録判定変化率算出手段によって算出された前記軸データ変化率に基づき、当該軸データに対応する前記データを記録するか否かを判定し、
記録手段が、前記記録判定手段が前記データを記録すると判定した場合、前記軸データに対応する前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記軸データに対応する前記データを前記データテーブルに記録しない、
ことを特徴とするデータ記録方法。
【請求項１６】
複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録プログラムを記録したコンピュータ読み取り可能な記録媒体において、
前記コンピュータを、
前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得するデータ取得手段、
次元性調査の対象となる対象軸を前記軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、および設定した前記次元性調査モードを解除するモード設定手段、
前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する軸判定変化率算出手段、
前記軸選択変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が低いか否かを判定する軸判定手段、
前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が高いと判定されなかった軸を対象軸に設定しない対象軸設定手段、
前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する記録判定変化率算出手段、
前記記録判定変化率算出手段によって算出された前記軸データ変化率に基づき、当該軸データに対応する前記データを記録するか否かを判定する記録判定手段、
前記記録判定手段が前記データを記録すると判定した場合、前記軸データに対応する前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記データに対応する前記データを前記データテーブルに記録しない記録手段、
として機能させることを特徴とするデータ記録プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータを記録するデータ記録プログラム、データ記録装置およびデータ記録方法に関し、特に複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録プログラム、データ記録装置、データ記録方法および記録媒体に関する。
【背景技術】
【０００２】
地球温暖化シミュレーションや分子シミュレーションなどの大規模なシミュレーションでは、タイムステップ毎に物理量が計算されて出力されるため、逐次出力される計算結果のデータが莫大な数となる。【０００３】
具体的には、これらにより出力されるデータ量は、計算する物理空間のメッシュサイズ×タイムステップ数×扱う物理量の個数で表される。例えば、３次元空間の１００００×１００００×１００００のメッシュサイズ、時間の経過を示すタイムステップ数が１０００００、それぞれ８ｂｙｔｅの物理量の個数が１００のモデルの場合、全出力データ量は、約８０４ｐｅｔａ（１０の１５乗）ｂｙｔｅの出力データ量となり、この莫大な量のデータを保存するためには、相応のハードディスクなどの記憶容量が必要となる。【０００４】
また、これらの出力データはディスプレイなどの可視化装置に接続してシミュレーション過程を表示することにも使用されるが、莫大な量のデータを表示するための処理時間も大きくなってしまう。【０００５】
このように、シミュレーションプログラムなど、大量の演算結果を出力し、その演算結果を元に解析を行うプログラムでは、その演算結果を格納する領域や処理時間が多大になるという問題がある。【０００６】
従来、これらの問題に対しては、一定時間間隔においてサンプリングしたデータの変化率に応じてデータを間引く技術のような（例えば、特許文献１参照）、一般にデータの間引きを行うという手法が取られることがある。
【特許文献１】特開２０００−２０６１０５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、シミュレーションの実行の結果得られるデータの間引く間隔を適切に設定するのは難しいという問題がある。すなわち、間引く間隔が大きいと、着目すべき時間や空間のデータが損失されてしまい、必要なデータが抜けることがある一方、逆に間引く間隔が小さいと、データを大きく減少させることができない。【０００８】
また、特許文献１に記載の技術では、物理空間における現象を対象とするシミュレーションに適用した場合、扱われるデータが多次元であるため、例えば、物理空間の点単位で空間的（３次元の場合、Ｘ軸、Ｙ軸、Ｚ軸）、および時間的（時間軸）な変化率を求めると、前述したような大規模なモデルの場合などには、計算負荷が大変大きくなってしまうという問題がある。【０００９】
本発明はこのような点に鑑みてなされたものであり、データを格納するために必要な記憶容量を節約すると共に、データ数を削減するための計算負荷も低減させるデータ記録プログラム、データ記録装置、データ記録方法および記録媒体を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明では上記課題を解決するために、図１に示すようなデータ記録プログラムが提供される。本発明に係るデータ記録プログラムは、複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録する際に、記録されるデータ数を削減するための計算量を低減するものである。【００１１】
このデータ記録プログラムを実行するコンピュータ１は、データ取得手段１１、モード設定手段１２、軸判定変化率算出手段１３、軸判定手段１４、対象軸設定手段１５、記録判定変化率算出手段１６、記録判定手段１７、および記録手段１８を有する。データ取得手段１１は、空間を構成する各次元軸の方向の変位と、時間軸によって示される時間の経過とに従って変化するデータを、各次元軸と時間軸とに対応付けて取得する。モード設定手段１２は、次元性調査の対象となる対象軸を軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、設定した次元性調査モードを解除する。軸判定変化率算出手段１３は、次元性調査モードにおいて、データ取得手段１１によって取得されたデータに基づき、次元軸および時間軸の各軸の方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率をそれぞれ算出する。軸判定手段１４は、軸選択変化率算出手段によって算出された軸データ変化率に基づき、各軸の軸データ変化率が低いか否かを判定する。対象軸設定手段１５は、軸判定手段１４によって軸データ変化率が高いと判定された軸を対象軸に設定する一方、軸判定手段１４によって軸データ変化率が高いと判定されなかった軸を対象軸に設定しない。記録判定変化率算出手段１６は、次元性調査モードが解除されているときにおいて、データ取得手段１１によって取得されたデータに基づき、対象軸設定手段１５によって設定された対象軸の各軸の方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率をそれぞれ算出する。記録判定手段１７は、記録判定変化率算出手段１６によって算出された軸データ変化率に基づき、当該軸データに対応するデータを記録するか否かを判定する。記録手段１８は、記録判定手段１７が軸データを記録すると判定した場合、軸データに対応するデータをデータテーブル１９に記録する一方、記録判定手段１７が軸データを記録しないと判定した場合、軸データに対応するデータをデータテーブル１９に記録しない。【００１２】
このようなデータ記録プログラムを実行するコンピュータによれば、データ取得手段１１により、各次元軸の方向の変位と時間の経過とに従って変化するデータが各次元軸と時間軸とに対応付けられて取得される。モード設定手段１２により、次元性調査の対象となる対象軸が軸データの変化の大きさに基づいて決定される次元性調査モードに設定され、設定された次元性調査モードが解除される。軸判定変化率算出手段１３により、次元性調査モードにおいて、取得されたデータに基づき、軸方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率がそれぞれ算出される。軸判定手段１４により、軸データ変化率に基づき、各軸の軸データ変化率が低いか否かが判定される。対象軸設定手段１５により、軸データ変化率が高いと判定された軸が対象軸に設定される一方、軸データ変化率が高いと判定されなかった軸が対象軸に設定されない。記録判定変化率算出手段１６により、次元性調査モードが解除されているときにおいて、取得されたデータに基づき、対象軸の各軸の方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率がそれぞれ算出される。記録判定手段１７により、記録判定変化率算出手段１６によって算出された軸データ変化率に基づき、当該軸データに対応するデータを記録するか否かが判定される。記録手段１８により、データを記録すると判定された場合、データに対応するデータが記録される一方、データを記録しないと判定された場合、軸データに対応するデータが記録されない。
【発明の効果】
【００１３】
本発明では、取得したデータを各軸方向の変化に応じて記録するか否かを決定するが、予め各軸方向の変化に応じてデータが変化する率を示す軸データ変化率を算出し、多次元空間を構成する複数の軸のうち、軸データ変化率が低い軸については、取得したデータを記録するか否かの判定の条件から除外し、軸データ変化率も算出しない。これにより、データを格納するために必要な記憶容量を節約することができると共に、データ変化率の計算量も削減することができる。したがって、データの格納のための記憶装置の容量を節約できると共に、データの削減のための計算負荷も抑えることができるため、シミュレーションシステムの簡素化や運用時の低コスト化に大変有用となる。【００１４】
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１５】
【図１】本実施の形態の概要を示す図である。
【図２】データ記録装置のハードウェア構成を示す図である。
【図３】データ記録装置の機能を示すブロック図である。
【図４】設定パラメータテーブルのデータ構造例を示す図である。
【図５】データ記録装置で行われる計算を示す図である。
【図６】一次元性モデルの例を示す図である。
【図７】一次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。
【図８】二次元性モデルの例を示す図である。
【図９】二次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。
【図１０】三次元性モデルの例を示す図である。
【図１１】三次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。
【図１２】データ記録処理の手順を示すフローチャート（前半）である。
【図１３】データ記録処理の手順を示すフローチャート（後半）である。
【図１４】記録判定処理の手順を示すフローチャート（前半）である。
【図１５】記録判定処理の手順を示すフローチャート（後半）である。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態を図面を参照して詳細に説明する。まず、本発明の概要について説明し、その後、実施の形態の具体的な内容を説明する。
図１は、本実施の形態の概要を示す図である。図１に示されるコンピュータ１は、シミュレーションプログラム１０などが算出する、複数の次元軸データから構成される多次元空間において変化するデータについて、データを格納するために必要な記憶容量を節約すると共に、データ数を削減するための計算負荷も低減させるものである。コンピュータ１は、データ取得手段１１、モード設定手段１２、軸判定変化率算出手段１３、軸判定手段１４、対象軸設定手段１５、記録判定変化率算出手段１６、記録判定手段１７、および記録手段１８を有する。【００１７】
データ取得手段１１は、シミュレーションプログラム１０などによって算出された、空間を構成する各次元軸の方向の変位と、各当該次元軸データに対応し、時間軸によって示される時間の経過とに従って変化するデータを、各次元軸と時間軸とに対応付けて取得する。【００１８】
モード設定手段１２は、次元性調査の対象となる対象軸を軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、および設定した次元性調査モードを解除する。【００１９】
軸判定変化率算出手段１３は、次元性調査モードにおいて、データ取得手段１１によって取得されたデータに基づき、次元軸および時間軸の各軸の方向の変化に応じてデータが変化する率を示す軸データ変化率をそれぞれ算出する。【００２０】
軸判定手段１４は、軸選択変化率算出手段によって算出された軸データ変化率に基づき、各軸の軸データ変化率が低いか否かを判定する。
対象軸設定手段１５は、軸判定手段１４によって軸データ変化率が高いと判定された軸を対象軸に設定する一方、軸判定手段１４によって軸データ変化率が高いと判定されなかった軸を対象軸に設定しない。【００２１】
記録判定変化率算出手段１６は、次元性調査モードが解除されているときにおいて、データ取得手段１１によって取得されたデータに基づき、対象軸設定手段１５によって設定された対象軸の各軸の方向の変化に応じてデータが変化する率を示す軸データ変化率をそれぞれ算出する。【００２２】
記録判定手段１７は、記録判定変化率算出手段１６によって算出された軸データ変化率に基づき、当該軸データに対応する取得されたデータを記録するか否かを判定する。
記録手段１８は、記録判定手段１７が取得されたデータを記録すると判定した場合、軸データに対応する取得されたデータをデータテーブル１９に記録する一方、記録判定手段１７が取得されたデータを記録しないと判定した場合、軸データに対応する取得されたデータをデータテーブル１９に記録しない。【００２３】
このようなデータ記録プログラムを実行するコンピュータによれば、データ取得手段１１により、各次元軸の方向の変位と時間の経過とに従って変化するデータが各次元軸と時間軸とに対応付けられて取得される。モード設定手段１２により、次元性調査の対象となる対象軸が軸データの変化の大きさに基づいて決定される次元性調査モードに設定され、および設定された次元性調査モードが解除される。軸判定変化率算出手段１３により、次元性調査モードにおいて、取得されたデータに基づき、軸方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率がそれぞれ算出される。軸判定手段１４により、軸データ変化率に基づき、各軸の軸データ変化率が低いか否かが判定される。対象軸設定手段１５により、軸データ変化率が高いと判定された軸が対象軸に設定される一方、軸データ変化率が高いと判定されなかった軸が対象軸に設定されない。記録判定変化率算出手段１６により、次元性調査モードが解除されているときにおいて、取得されたデータに基づき、対象軸の各軸の方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率がそれぞれ算出される。記録判定手段１７により、記録判定変化率算出手段１６によって算出された軸データ変化率に基づき、当該軸データに対応するデータを記録するか否かが判定される。記録手段１８により、データを記録すると判定された場合、データに対応するデータが記録される一方、データを記録しないと判定された場合、軸データに対応するデータが記録されない。【００２４】
以下、本実施の形態を、図面を参照して詳細に説明する。
図２は、データ記録装置のハードウェア構成を示す図である。データ記録装置１００は、ＣＰＵ（Central Processing Unit）１０１によって装置全体が制御されている。ＣＰＵ１０１には、バス１０７を介してＲＡＭ（Random Access Memory）１０２、ハードディスクドライブ（ＨＤＤ：Hard Disk Drive）１０３、グラフィック処理装置１０４、入力インタフェース１０５および通信インタフェース１０６が接続されている。【００２５】
ＲＡＭ１０２には、ＣＰＵ１０１に実行させるＯＳプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭ１０２には、ＣＰＵ１０１による処理に必要な各種データが格納される。ＨＤＤ１０３には、ＯＳプログラムやアプリケーションプログラムが格納される。【００２６】
グラフィック処理装置１０４には、モニタ５０が接続されている。グラフィック処理装置１０４は、ＣＰＵ１０１からの命令に従って、画像をモニタ５０の画面に表示させる。入力インタフェース１０５には、キーボード４１とマウス４２とが接続されている。入力インタフェース１０５は、キーボード４１やマウス４２から送られてくる信号を、バス１０７を介してＣＰＵ１０１に送信する。通信インタフェース１０６は、ネットワーク６０に接続されている。データ記録装置１００は、このネットワーク６０を介して他のコンピュータと通信が可能である。【００２７】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
次に、データ記録装置１００のモジュール構成について説明する。【００２８】
図３は、データ記録装置の機能を示すブロック図である。データ記録装置１００は、データ取得部１１１、モード設定部１１２、軸判定変化率算出部１１３、軸判定部１１４、対象軸設定部１１５、記録判定変化率算出部１１６、記録判定部１１７、記録部１１８、および設定情報取得部１１９を有する。【００２９】
データ取得部１１１は、シミュレーションプログラム１３０などによって算出された、空間を構成する各次元軸の方向の変位と、各当該次元軸データに対応し、時間軸によって示される時間の経過とに従って変化するデータを、各次元軸と時間軸とに対応付けて取得する。【００３０】
なお、このデータは、時間軸の変化に基づくシミュレーションのステップの進行に伴って順次算出され、データ取得部１１１は、これに従い、時間軸の変化に基づいて取得する。しかし、これに限らず、シミュレーションのステップの進行およびデータ取得部１１１によるデータの取得は、空間軸のいずれか、またはさらに他のパラメータに基づくものであってもよい。【００３１】
モード設定部１１２は、次元性調査の対象となる対象軸を軸データの変化の大きさに基づいて決定する次元性調査モードに設定し、および設定した次元性調査モードを解除する。具体的には、モード設定部１１２は、データ取得部１１１によって最初に取得されたデータから所定個数のデータまでは次元調査モードに設定して当該データを処理する一方、データ取得部１１１によって最初に取得されたデータから所定個数のデータ以後のデータは次元性調査モードを解除して当該データを処理する。【００３２】
そして、モード設定部１１２は、データ取得部１１１によって取得された、あるデータから所定個数のデータまでは次元調査モードに設定して当該データを処理すると共に、その後に取得された第２の所定の個数のデータについては次元調査モードを解除して当該データを処理し、その後はこれらの次元調査モードの設定および解除を交互に繰り返して当該データを処理する。これにより、定期的にデータの次元性を見直す機会が設けられるので、次元性に変化があるモデルに基づくデータの場合にも、適切に計算負荷の軽減およびデータ数の削減を行うことができる。【００３３】
軸判定変化率算出部１１３は、次元性調査モードにおいて、データ取得部１１１によって取得されたデータに基づき、次元軸および時間軸の各軸の方向の変化に応じて取得されたデータが変化する率を示す軸データ変化率をそれぞれ算出する。具体的には、軸判定変化率算出部１１３は、単位時間ごとの各軸方向のデータの変化率の平均値を算出して、算出した各平均値をそれぞれ次元軸の軸データ変化率とする。【００３４】
軸判定部１１４は、軸選択変化率算出手段によって算出された軸データ変化率に基づき、各軸の軸データ変化率が低いか否かを判定する。具体的には、軸判定部１１４は、軸判定変化率算出部１１３によって算出された次元軸の軸データ変化率に基づき、軸判定変化率算出部１１３によって算出された各次元軸の軸データ変化率と、設定情報取得部１１９によって取得された当該次元軸に対応する閾値とを比較して、当該次元軸の軸データ変化率が閾値未満である場合、当該次元軸の軸データ変化率が低いと判定する。【００３５】
対象軸設定部１１５は、軸判定部１１４によって軸データ変化率が高いと判定された軸を対象軸に設定する一方、軸判定部１１４によって軸データ変化率が高いと判定されなかった軸を対象軸に設定しない。【００３６】
記録判定変化率算出部１１６は、次元性調査モードが解除されているときにおいて、データ取得部１１１によって取得されたデータに基づき、対象軸設定部１１５によって設定された対象軸の各軸の方向の変化に応じて当該軸の軸データが変化する率を示す軸データ変化率をそれぞれ算出する。具体的には、次元性調査モードが解除されているときにおいて、記録判定変化率算出部１１６は、対象軸についてのみ、データ取得部１１１によって取得されたデータに基づき、対象軸設定部１１５によって設定された対象軸の単位時間ごとの各対象軸方向のデータの変化率の平均値を算出して、算出した各平均値をそれぞれ対象軸の軸データ変化率とする。【００３７】
記録判定部１１７は、記録判定変化率算出部１１６によって算出された軸データ変化率に基づき、当該軸データに対応する取得されたデータを記録するか否かを判定する。具体的には、記録判定部１１７は、対象軸のみについて、記録判定変化率算出部１１６によって算出された対象軸の軸データ変化率と、設定情報取得部１１９によって取得された当該対象軸に対応する閾値とを比較して、すべての対象軸の軸データ変化率が閾値未満である場合、軸データに対応する取得されたデータをデータテーブル１２１に記録しないと判定する。【００３８】
記録部１１８は、記録判定部１１７が取得されたデータを記録すると判定した場合、軸データに対応する取得されたデータをデータテーブル１２１に記録する一方、記録判定部１１７が取得されたデータを記録しないと判定した場合、軸データに対応する取得されたデータをデータテーブル１２１に記録しない。本実施の形態のデータ記録装置１００は、この記録部１１８によって取得されたデータが記録されたデータテーブル１２１の内容を、出力データ２２０として出力することができる。【００３９】
設定情報取得部１１９は、軸データ変化率が低いか否かを判定するための軸ごとに対応する閾値、および軸判定部１１４による判定の対象としてユーザにより指定された軸を示す指定軸を設定情報２１０から取得する。この設定情報２１０は、ユーザによってデータ記録プログラム１１０の設定のために入力される。【００４０】
なお、モード設定部１１２は、データ取得部１１１によって最初にデータが取得されてから経過した時間が所定の時間以内のデータまでは次元調査モードに設定して当該データを処理する一方、データ取得部１１１によって最初にデータが取得されてから経過した時間が所定の時間以後に取得されたデータは次元性調査モードを解除して当該データを処理してもよい。また、モード設定部１１２は、データ取得部１１１によって取得されたあるデータから経過した時間が第１の所定時間内のデータまでは次元調査モードに設定して当該データを処理すると共に、その後経過した時間が第２の所定時間内のデータについては次元調査モードを解除して当該データを処理し、その後はこれらの次元調査モードの設定および解除を交互に繰り返して当該データを処理してもよい。これらにより、時間軸のデータが等間隔でない場合にも、等しい時間間隔によって次元調査モードの設定および解除を行うことができる。【００４１】
また、軸判定変化率算出部１１３は、指定軸についてのみ、単位時間ごとの当該軸方向のデータの変化率の平均値を算出して、算出した各平均値をそれぞれ当該指定軸の軸データ変化率とすると共に、軸判定部１１４は、指定軸のみについて、軸判定変化率算出部１１３によって算出された各軸の軸データ変化率と、設定情報取得部１１９によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が閾値未満である場合、当該軸の軸データ変化率が低いと判定してもよい。これにより、軸の変化率の計算が、軸判定の対象にユーザが指定した指定軸に限定されるので、計算量をより削減することができる。【００４２】
また、記録判定部１１７は、対象軸のみについて、記録判定変化率算出部１１６によって算出された対象軸の軸データ変化率と、設定情報取得部１１９によって取得された当該対象軸に対応する閾値とを比較して、少なくともいずれか１つの対象軸の軸データ変化率が閾値未満である場合、軸データに対応する取得されたデータをデータテーブル１２１に記録しないと判定してもよい。これにより、対象軸のうちいずれか１つでも変化率が閾値未満であれば、データが記録されないので、データ数を大幅に削減することができる。【００４３】
次に、データ記録装置１００が有する設定パラメータテーブルについて説明する。
図４は、設定パラメータテーブルのデータ構造例を示す図である。
設定パラメータテーブル７０１には、データ記録装置１００によるデータ数削減のための設定パラメータを示す設定情報２１０が、テーブル化されて格納されている。設定パラメータテーブル７０１には、パラメータ名を示すフィールド７０１ａ、およびパラメータの設定値を示すフィールド７０１ｂが設けられている。各フィールドの横方向に並べられた情報同士が互いに関連付けられて、更新情報を構成する。【００４４】
フィールド７０１ａには、各パラメータに付与されたパラメータ名が設定される。
フィールド７０１ｂには、フィールド７０１ａに示されるパラメータに設定される設定値が設定される。【００４５】
この設定パラメータテーブル７０１は、データ記録装置１００が有するＲＡＭ１０２に格納されている。
ここで、本実施の形態の設定パラメータテーブル７０１に格納されている設定情報２１０に含まれる各パラメータについて説明する。【００４６】
設定情報２１０は、ユーザによってキーボード４１などの入力インタフェースを用いて入力される。入力された設定情報２１０に含まれるこれらのパラメータは、設定パラメータテーブル７０１に格納される。【００４７】
設定情報２１０のパラメータは、ステップ数Ｎ、ステップ数Ｎｓ、Ｘ軸、Ｙ軸、Ｚ軸（三次元の場合）、時間軸およびそれぞれの軸の閾値、判定条件、ならびに指定軸から構成される。【００４８】
ステップ数Ｎは、後述するデータ記録処理（図１２および図１３）において次元性の調査を行うために繰り返されるステップ数である。ステップ数Ｎｓは、対象軸のみの軸データ変化率の計算を行うために繰り返されるステップ数である。Ｘ軸、Ｙ軸およびＺ軸は、各次元軸を示す。各次元軸および時間軸の閾値は、対象軸の判定およびデータの記録の判定において、これらの軸データ変化率の比較対象となる値である。【００４９】
判定条件は、変化率計算の対象軸が多数ある場合に、ＡＮＤ条件が指定されていた場合、すべての対象軸の変化率が閾値以上でないとデータが記録されない。また、判定条件にＯＲ条件が指定されていた場合、いずれか１つの対象軸の変化率が閾値以上の条件を満たしていればデータが記録される。【００５０】
指定軸は、指定軸のみ変化率が閾値以上であればデータが記録される。さらに、この指定軸が複数指定されている場合には、判定条件においてＡＮＤ条件が指定されていたときは、すべての指定軸の変化率が対応する閾値以上でないとデータが記録されない。また、ＯＲ条件のときは、いずれか一つの指定軸の変化率が対応する閾値以上であればデータが記録される。【００５１】
次に、データ記録装置１００で実行されるデータを記録するか否かの判定について説明する。
図５は、データ記録装置で行われる計算を示す図である。【００５２】
本実施の形態のデータ記録装置１００では、実行中のシミュレーションプログラム１３０から、シミュレーションが１ステップ実行されるごとに、算出された物理量を示すデータを取得する。データ記録装置１００は、取得したデータに基づいて、まず、設定パラメータテーブル７０１の次元性調査のステップ数Ｎの間、シミュレーションの対象となる物理空間の次元性調査５０１を行い、その後、変化率を求める対象である対象軸を判定する対象軸判定５０２を行う。【００５３】
次に、データ記録装置１００は、設定パラメータテーブル７０１の変化率計算のステップ数Ｎｓの間、対象軸のみの変化率を計算する変化率計算５０３および算出された変化率に基づく記録判定５０４を行う。これらにより、条件を満たしたデータのみがデータテーブル１２１に記録される。そして、これらの次元性調査５０１〜記録判定５０４の処理を、シミュレーションの終了まで繰り返し行う。【００５４】
本実施の形態のデータ記録装置１００で行われる計算について、ある物理量Ｐの次元性を調べる例を用いて説明する。シミュレーションの物理空間が三次元である場合、空間軸の変化率は、三次元空間上、Ｘ軸方向の変化率、Ｙ軸方向の変化率、およびＺ軸方向の変化率の３種類存在する。また、時間軸の変化率も存在するので、空間軸の変化率と時間軸の変化率とを合わせて、４種類の変化率が存在する。それぞれの軸ごとにシミュレーションのステップの実行に伴って取得されたデータを用いて三次元の物理空間の変化率の平均値を計算する。【００５５】
まず、次元性調査５０１では、次元軸および時間軸ごとに変化率（軸データ変化率）が計算される。例えば、Ｘ軸方向の変化率は、ある特定のタイムステップにおいて、座標（ｘ，ｙ，ｚ）の物理量Ｐと、Ｘ軸上において隣接する座標（ｘ＋Δｘ，ｙ，ｚ）の物理量Ｐの変化率（ΔＰｘ／Δｘ＝（Ｐ（ｘ＋Δｘ，ｙ，ｚ）−Ｐ（ｘ，ｙ，ｚ））／Δｘ）が計算され、これに基づいて全座標（空間）におけるｘ軸方向の変化率の平均値が求められる。そして、シミュレーションプログラム１３０の各ステップの実行結果のデータを取得するごとに、全座標の変化率が計算される。次元性調査５０１（設定情報２１０（図４）のステップ数Ｎ）間の変化率の平均値は、次式（１）によって算出される。【００５６】
【数１】
2009031200.tif 000003
同様に、Ｙ軸、Ｚ軸、および時間軸についても、次元性調査５０１間の変化率の平均値は、次式（２）〜（４）によって算出される。【００５７】
【数２】
2009031200.tif 000004
【００５８】
【数３】
2009031200.tif 000005
【００５９】
【数４】
2009031200.tif 000006
次に、対象軸判定５０２では、次元性調査５０１で算出した各軸の変化率の平均値を用いて、後述するデータを記録するか否かの判定のための後述する変化率計算５０３が行われる対象となる対象軸の判定が行なわれる。対象軸判定５０２は、設定情報２１０によってユーザが設定した各軸のそれぞれの閾値を用いて軸ごとに行う。そして、各軸に対応して、ユーザにより設定情報２１０で設定され、設定パラメータテーブル７０１に格納されている閾値（Ｔｘ、Ｔｙ、Ｔｚ、およびＴｔ）を越えた軸のみが計算軸として選択される。対応する閾値以上の軸が、変化率の大きい軸と判定されて、変化率計算５０３の対象軸となる。対象軸判定５０２は、空間軸（Ｘ軸、Ｙ軸、Ｚ軸）および時間軸について、それぞれ次式（５）〜（８）を用いて判定される。【００６０】
【数５】
2009031200.tif 000007
【００６１】
【数６】
2009031200.tif 000008
【００６２】
【数７】
2009031200.tif 000009
【００６３】
【数８】
2009031200.tif 000010
次に、変化率計算５０３では、シミュレーションプログラム１３０の各ステップの実行結果のデータを取得するごとに、対象軸判定５０２によって判定された対象軸について、当該データについて変化率を計算する。例えば、Ｙ軸とＺ軸のみが対象軸として設定されている場合、これらの２軸のみの変化率（ΔＰｙ／Δｙ＝（Ｐ（ｘ，ｙ＋Δｙ，ｚ）−Ｐ（ｘ，ｙ，ｚ））／Δｙ、およびΔＰｚ／Δｚ＝（Ｐ（ｘ，ｙ，ｚ＋Δｚ）−Ｐ（ｘ，ｙ，ｚ））／Δｚ）を計算し、Ｘ軸方向と時間軸方向の変化率は計算しない。この変化率計算５０３は、次式（９）〜（１２）によって算出される。【００６４】
【数９】
2009031200.tif 000011
【００６５】
【数１０】
2009031200.tif 000012
【００６６】
【数１１】
2009031200.tif 000013
【００６７】
【数１２】
2009031200.tif 000014
次に、記録判定５０４では、変化率計算５０３において算出された各軸の変化率に基づいて、シミュレーションプログラム１３０の各ステップの実行結果のデータをデータテーブル１２１に記録するか否かが判定される。この記録判定５０４は、次式（１３）〜（１６）を用いて判定される。【００６８】
【数１３】
2009031200.tif 000015
【００６９】
【数１４】
2009031200.tif 000016
【００７０】
【数１５】
2009031200.tif 000017
【００７１】
【数１６】
2009031200.tif 000018
なお、記録判定５０４において対象軸が多数ある場合には、設定パラメータテーブル７０１（図４）に格納されている設定情報２１０より、ユーザによって指定された指定軸、または判定条件ＡＮＤ条件もしくはＯＲ条件を用いてデータを記録するか否かが判定される。【００７２】
対象軸が多数ある場合において、ＡＮＤ条件が指定されていたときは、すべての対象軸の変化率が対応する閾値以上でないとデータが記録されない。また、ＯＲ条件のときは、いずれか一つの対象軸の変化率が対応する閾値以上の条件を満たしていればデータが記録される。【００７３】
また、ユーザによって指定軸が指定されている場合には、指定軸のみ変化率が対応する閾値以上であれば、データが記録される。この指定軸が複数指定されている場合には、判定条件においてＡＮＤ条件が指定されていたときは、すべての指定軸の変化率が対応する閾値以上でないとデータが記録されない。また、ＯＲ条件のときは、いずれか一つの指定軸の変化率が対応する閾値以上の条件を満たしていればデータが記録される。【００７４】
次に、次元性について説明する。まず、一次元性および一次元性モデルについて説明する。
図６は、一次元性モデルの例を示す図である。本実施の形態における一次元性モデルとは、例えば、物質の沈殿のように、空間において一次元方向（物質の沈殿の場合は上下方向）に大きな変化が見られるモデルである。一次元モデルの場合には、一次元方向に対する変化率と時間軸の変化率とが重視される。【００７５】
図６では、物理量の大きさを、白抜きの矢印の長さで示す。図６に示した一次元性モデルの例では、Ｚ軸方向の変化に応じて、物理量の大きさを示す白抜きの矢印の長さが大きく変化している。すなわち、図において、Ｚ軸の値が小さい方の矢印の長さは長く、Ｚ軸の値が大きくなるにつれて矢印の長さは短くなっている。一方、図において、Ｘ軸方向およびＹ軸方向の変化によって、矢印の長さはほとんど変化しない。【００７６】
このように、一次元性モデルでは、空間上の一次元方向（図６の例ではＺ軸方向）の変化に基づく物理量の変化が大きいが、空間上の他の次元方向（図６の例ではＸ軸方向およびＹ軸方向）の変化に基づく物理量の変化は小さい。【００７７】
次に、データ記録装置１００が有する一次元モデルの空間データテーブルについて説明する。
図７は、一次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。空間データテーブル９１０には、一次元性モデルの場合のシミュレーションの実行の結果取得されるデータの一例が、記録部１１８によってテーブル化されてデータテーブル１２１として格納されている。空間データテーブル９１０には、ＴＩＭＥを示すフィールド９１１、Ｘ−ＡＸＩＳを示すフィールド９１２、Ｙ−ＡＸＩＳを示すフィールド９１３、Ｚ−ＡＸＩＳを示すフィールド９１４、およびＯＵＴＰＵＴを示すフィールド９１５が設けられている。各フィールドの横方向に並べられた情報同士が互いに関連付けられて、多次元データを構成する。【００７８】
フィールド９１１には、時間軸の値が設定される。フィールド９１２には、Ｘ軸の値が設定される。この値は、Ｘ軸方向の軸データ変化率を計算するために用いられる。フィールド９１３には、Ｙ軸の値が設定される。この値は、Ｙ軸方向の軸データ変化率を計算するために用いられる。フィールド９１４には、Ｚ軸の値が設定される。この値は、Ｚ軸方向の軸データ変化率を計算するために用いられる。フィールド９１５には、本実施の形態では、シミュレーションプログラム１３０によって算出された物理量を示すデータが設定される。【００７９】
次に、空間データテーブル９１０に格納されているデータの例に基づき、一次元モデルの軸方向の変化率（軸データ変化率）について説明する。
Ｘ軸方向の変化率を計算する場合、Ｘ軸の値が１だけ異なり、時間軸および他の空間軸が等しいもの同士のデータのすべての組み合わせについて、Ｘ軸が大きいもののデータの値からＸ軸が小さいもののデータの値を引いた差分を計算する。そして、求めた差分の平均値を、Ｘ軸方向の変化率とする。【００８０】
空間データテーブル９１０のデータを用いて具体的に説明すると、空間データテーブル９１０において、Ｘ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９１５ａおよびデータ９１５ｇ、データ９１５ｂおよびデータ９１５ｈ、ならびにデータ９１５ｃおよびデータ９１５ｊがある。これらの組のそれぞれについてＸ軸の値が大きいものからＸ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、１．８−１．７＝０．１、２．３−２．２＝０．１、２．７−２．６＝０．１となる。この差分の平均値である、（０．１＋０．１＋０．１）÷３＝０．１が、Ｘ軸方向の変化率となる。【００８１】
Ｙ軸方向について同様に変化率を計算すると、空間データテーブル９１０において、Ｙ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９１５ａおよびデータ９１５ｄ、データ９１５ｂおよびデータ９１５ｅ、ならびにデータ９１５ｃおよびデータ９１５ｆがある。これらの組のそれぞれについてＹ軸の値が大きいものからＹ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、１．７−１．７＝０、２．２−２．２＝０、２．５−２．６＝−０．１となる。この差分の平均値である、（０＋０−０．１）÷３≒−０．０３が、Ｙ軸方向の変化率となる。【００８２】
Ｚ軸方向について同様に変化率を計算すると、空間データテーブル９１０において、Ｚ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９１５ａおよびデータ９１５ｂ、データ９１５ｂおよびデータ９１５ｃ、データ９１５ｄおよびデータ９１５ｅ、データ９１５ｅおよびデータ９１５ｆ、データ９１５ｇおよびデータ９１５ｈ、ならびにデータ９１５ｈおよびデータ９１５ｊがある。これらの組のそれぞれについてＺ軸の値が大きいものからＺ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．５、０．４、０．５、０．３、０．５、０．４、０．２、０．５となる。この差分の平均値である、（０．５＋０．４＋０．５＋０．３＋０．５＋０．４＋０．２＋０．５）÷８≒０．４１が、Ｚ軸方向の変化率となる。【００８３】
時間軸について同様に変化率を計算すると、空間データテーブル９１０において、時間軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９１５ａおよびデータ９１５ｋ、データ９１５ｂおよびデータ９１５ｍ、ならびにデータ９１５ｃおよびデータ９１５ｐがある。これらの組のそれぞれについて時間軸の値が大きいものから時間軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、１．９−１．７＝０．２、２．１−２．２＝−０．１、２．６−２．６＝０となる。この差分の平均値である、（０．２−０．１＋０）÷３≒０．０３が、時間軸方向の変化率となる。【００８４】
このように、空間データテーブル９１０の例に基づいて各軸方向の変化率を計算した結果、他の軸方向の変化率に比較してＺ軸方向のみ、変化率が特に大きいことがわかる。これは、このデータが一次元性モデルに基づくものであることを示している。これに従って、この例では、データ記録装置１００は、この変化率が大きいＺ軸に基づいてデータを記録するか否かを判定する。【００８５】
なお、この例のＹ軸の変化率のように、変化率が負の値となる場合があるが、変化率は絶対値で扱ってもよい。これにより、符号の正負にかかわらず、各軸方向の変化の大きさをデータの個数の削減に反映させることができる。【００８６】
次に、二次元性および二次元性モデルについて説明する。
図８は、二次元性モデルの例を示す図である。本実施の形態における二次元性モデルとは、例えば、管内を流れる流体のように、空間において二次元方向（管内を流れる流体の場合は管の断面と平行な方向）に大きな変化が見られるモデルである。二次元モデルの場合には、二次元方向に対する変化率と時間軸の変化率とが重視される。【００８７】
図８では、物理量の大きさを、黒色の矢印の長さで示す。図８に示した二次元性モデルの例では、管８０１の内部を流れる流体が断面８０１ｃにおいて外部に流体が放出されるまでは、Ｙ軸方向の変化およびＺ軸方向の変化に応じて、物理量の大きさを示す矢印の長さが大きく変化している。すなわち、図において、Ｙ軸の位置およびＺ軸の位置が、管８０１の断面８０１ａ、８０１ｂの中心に近い矢印の長さは長く、断面８０１ａ、８０１ｂの中心から離れるにつれて矢印の長さは短くなっている。一方、図において、Ｘ軸方向の変化によって、矢印の長さはほとんど変化しない。【００８８】
このように、二次元性モデルでは、空間上の二次元方向（図６の例ではＺ軸方向）の変化に基づく物理量の変化が大きいが、空間上の他の次元方向（図６の例ではＸ軸方向およびＹ軸方向）の変化に基づく物理量の変化は小さい。【００８９】
次に、データ記録装置１００が有する二次元モデルの空間データテーブルについて説明する。
図９は、二次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。空間データテーブル９２０には、二次元性モデルの場合のシミュレーションの実行の結果取得されるデータの一例が、記録部１１８によってテーブル化されてデータテーブル１２１として格納されている。空間データテーブル９２０には、空間データテーブル９１０と同様に、ＴＩＭＥを示すフィールド９２１、Ｘ−ＡＸＩＳを示すフィールド９２２、Ｙ−ＡＸＩＳを示すフィールド９２３、Ｚ−ＡＸＩＳを示すフィールド９２４、およびＯＵＴＰＵＴを示すフィールド９２５が設けられている。各フィールドの横方向に並べられた情報同士が互いに関連付けられて、多次元データを構成する。【００９０】
次に、空間データテーブル９２０に格納されているデータの例に基づき、二次元モデルの軸方向の変化率（軸データ変化率）について説明する。
一次元モデルの場合と同様にＸ軸方向について変化率を計算すると、空間データテーブル９２０において、Ｘ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９２５ａおよびデータ９２５ｇ、データ９２５ｂおよびデータ９２５ｈ、ならびにデータ９２５ｃおよびデータ９２５ｊがある。これらの組のそれぞれについてＸ軸の値が大きいものからＸ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．８−０．８＝０、１．３−１．２＝０．１、１．７−１．６＝０．１となる。この差分の平均値である、（０＋０．１＋０．１）÷３≒０．０７が、Ｘ軸方向の変化率となる。【００９１】
Ｙ軸について同様に変化率を計算すると、空間データテーブル９２０において、Ｙ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９２５ａおよびデータ９２５ｄ、データ９２５ｂおよびデータ９２５ｅ、ならびにデータ９２５ｃおよびデータ９２５ｆがある。これらの組のそれぞれについてＹ軸の値が大きいものからＹ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、１．２−０．８＝０．４、１．８−１．２＝０．６、２．４−１．６＝０．８となる。この差分の平均値である、（０．４＋０．６＋０．８）÷３≒０．６が、Ｙ軸方向の変化率となる。【００９２】
Ｚ軸について同様に変化率を計算すると、空間データテーブル９２０において、Ｚ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９２５ａおよびデータ９２５ｂ、データ９２５ｂおよびデータ９２５ｃ、データ９２５ｄおよびデータ９２５ｅ、データ９２５ｅおよびデータ９２５ｆ、データ９２５ｇおよびデータ９２５ｈ、ならびにデータ９２５ｈおよびデータ９２５ｊがある。これらの組のそれぞれについてＺ軸の値が大きいものからＺ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．４、０．４、０．６、０．６、０．５、０．４、０．２、０．５となる。この差分の平均値である、（０．４＋０．４＋０．６＋０．６＋０．５＋０．４＋０．２＋０．５）÷８≒０．４５が、Ｚ軸方向の変化率となる。【００９３】
時間軸について同様に変化率を計算すると、空間データテーブル９２０において、時間軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９２５ａおよびデータ９２５ｋ、データ９２５ｂおよびデータ９２５ｍ、ならびにデータ９２５ｃおよびデータ９２５ｐがある。これらの組のそれぞれについて時間軸の値が大きいものから時間軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．９−０．８＝０．１、１．１−１．２＝−０．１、１．６−１．６＝０となる。この差分の平均値である、（０．１−０．１＋０）÷３＝０が、時間軸方向の変化率となる。【００９４】
このように、空間データテーブル９２０の例に基づいて各軸方向の変化率を計算した結果、Ｙ軸方向およびＺ軸方向のみ変化率が特に大きいことがわかる。これは、このデータが二次元性モデルに基づくものであることを示している。【００９５】
これに従って、この例では、データ記録装置１００は、この変化率が大きいＹ軸およびＺ軸に基づいてデータを記録するか否かを判定する。ここで、判定条件（図４、図５）にＡＮＤ条件が設定されていれば、Ｙ軸およびＺ軸の両方が対応する閾値（図４、図５）以上の場合のみデータが記録される。判定条件にＯＲ条件が設定されていれば、Ｙ軸およびＺ軸の少なくともいずれか一方が対応する閾値以上の場合にデータが記録される。また、ユーザによってＹ軸またはＺ軸のいずれかが指定軸（図４、図５）に指定されていれば、その指定軸がその指定軸に対応する閾値以上の場合にデータが記録される。【００９６】
次に、三次元性および三次元性モデルについて説明する。
図１０は、三次元性モデルの例を示す図である。本実施の形態における三次元性モデルとは、空間において三次元方向に大きな変化が見られるモデルである。三次元モデルの場合には、三次元方向に対する変化率と時間軸の変化率とが重視される。【００９７】
図１０では、物理量の大きさを、白抜きの矢印の長さで示す。図１０に示した三次元性モデルの例では、Ｘ軸方向、Ｙ軸方向、およびＺ軸方向のそれぞれの変化に基づいて、物理量の大きさを示す白抜きの矢印の長さが大きく変化している。【００９８】
このように、三次元性モデルでは、空間上のすべての方向（Ｘ軸方向、Ｙ軸方向およびＺ軸方向）の変化に基づく物理量の変化が大きい。
次に、データ記録装置１００が有する三次元モデルの空間データテーブルについて説明する。【００９９】
図１１は、三次元性モデルの場合の空間データテーブルのデータ構造例を示す図である。空間データテーブル９３０には、三次元性モデルの場合のシミュレーションの実行の結果取得されるデータの一例が、記録部１１８によってテーブル化されてデータテーブル１２１として格納されている。空間データテーブル９３０には、空間データテーブル９１０と同様に、ＴＩＭＥを示すフィールド９３１、Ｘ−ＡＸＩＳを示すフィールド９３２、Ｙ−ＡＸＩＳを示すフィールド９３３、Ｚ−ＡＸＩＳを示すフィールド９３４、およびＯＵＴＰＵＴを示すフィールド９３５が設けられている。各フィールドの横方向に並べられた情報同士が互いに関連付けられて、多次元データを構成する。【０１００】
次に、空間データテーブル９３０に格納されているデータの例に基づき、三次元モデルの軸方向の変化率（軸データ変化率）について説明する。
一次元モデルの場合と同様にＸ軸方向について変化率を計算すると、空間データテーブル９３０において、Ｘ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９３５ａおよびデータ９３５ｇ、データ９３５ｂおよびデータ９３５ｈ、ならびにデータ９３５ｃおよびデータ９３５ｊがある。これらの組のそれぞれについてＸ軸の値が大きいものからＸ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、２．３−１．７＝０．６、２．４−０．５＝１．９、０．６−１．３＝−０．７となる。この差分の平均値である、（０．６＋１．９−０．７）÷３≒０．６が、Ｘ軸方向の変化率となる。【０１０１】
Ｙ軸について同様に変化率を計算すると、空間データテーブル９３０において、Ｙ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９３５ａおよびデータ９３５ｄ、データ９３５ｂおよびデータ９３５ｅ、ならびにデータ９３５ｃおよびデータ９３５ｆがある。これらの組のそれぞれについてＹ軸の値が大きいものからＹ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．８−１．７＝−０．９、１．４−０．５＝０．９、２．７−０．９＝１．８となる。この差分の平均値である、（−０．９＋０．９＋１．８）÷３≒０．６が、Ｙ軸方向の変化率となる。【０１０２】
Ｚ軸について同様に変化率を計算すると、空間データテーブル９３０において、Ｚ軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９３５ａおよびデータ９３５ｂ、データ９３５ｂおよびデータ９３５ｃ、データ９３５ｄおよびデータ９３５ｅ、データ９３５ｅおよびデータ９３５ｆ、データ９３５ｇおよびデータ９３５ｈ、ならびにデータ９３５ｈおよびデータ９３５ｊがある。これらの組のそれぞれについてＺ軸の値が大きいものからＺ軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、−１．２、０．８、０．６、１．３、０．１、−１．８、１．３、２．４となる。この差分の平均値である、（−１．２＋０．８＋０．６＋１．３＋０．１−１．８＋１．３＋２．４）÷８≒０．４４が、Ｚ軸方向の変化率となる。【０１０３】
時間軸について同様に変化率を計算すると、空間データテーブル９３０において、時間軸の値が１だけ異なり他の軸が等しいデータの組み合わせは、データ９３５ａおよびデータ９３５ｋ、データ９３５ｂおよびデータ９３５ｍ、ならびにデータ９３５ｃおよびデータ９３５ｐがある。これらの組のそれぞれについて時間軸の値が大きいものから時間軸の値が小さいもののデータの値を引いて差分を求めると、それぞれ、０．１−１．７＝−１．６、１．４−０．５＝０．９、３．８−１．３＝２．５となる。この差分の平均値である、（−１．６＋０．９＋２．５）÷３＝０．６が、時間軸方向の変化率となる。【０１０４】
このように、空間データテーブル９３０の例に基づいて各軸方向の変化率を計算した結果、すべての空間軸について変化率が大きいことがわかる。これは、このデータが三次元性モデルに基づくものであることを示している。この例では、すべての軸の変化率が大きいので、データの記録判定の際の変化率の計算の対象である対象軸からいずれの軸も除外されないため、次元性調査では記録判定の計算負荷を軽減することができないが、例えば、時間軸の変化率が小さい場合には、時間軸が対象軸から除外されることにより、計算負荷を軽減することができる。また、ユーザによって指定軸が指定された場合にも、指定軸以外の記録判定の変化率の計算が行われないので、計算負荷を軽減することができる。【０１０５】
これに従って、この例では、データ記録装置１００は、すべての空間軸に基づいてデータを記録するか否かを判定する。ここで、判定条件（図４、図５）にＡＮＤ条件が設定されていれば、すべての空間軸が対応する閾値（図４、図５）以上の場合のみデータが記録される。判定条件にＯＲ条件が設定されていれば、空間軸のうち少なくともいずれか一つが対応する閾値以上の場合にデータが記録される。【０１０６】
また、ユーザによって空間軸のうち少なくともいずれか一つが指定軸（図４、５）に指定されていれば、その指定軸がその指定軸に対応する閾値以上の場合にデータが記録される。この場合、指定軸が複数ある場合には、同様に設定された判定条件に従って処理される。【０１０７】
ここで、本実施の形態のデータ記録装置１００による計算負荷の軽減の効果について説明する。まず、計算条件として、格子数＝Ｍ3、総ステップ数＝Ｕ、次元性の分析を行うステップ数＝Ｄ、変化率が小さい軸の処理を省いたステップ数＝Ｓ（＝Ｕ−Ｄ）とする。【０１０８】
この場合、１格子の変化率の計算に必要な負荷をａと置くと、次元性調査５０１による負荷は、次式（１７）で示される。【０１０９】
【数１７】
2009031200.tif 000019
例えば、シミュレーションの対象が二次元性モデルであり、次元性調査５０１（図５）によって変化率が小さい軸が１軸見つかった場合、その軸の変化率の計算を省略してステップ数Ｓの処理を行う時の負荷は、次式（１８）で示される。【０１１０】
【数１８】
2009031200.tif 000020
一方、次元性の分析を行わず、すべてのステップで変化率の計算を行う場合の負荷は、次式（１９）で示される。【０１１１】
【数１９】
2009031200.tif 000021
従って、次元性調査５０１を行う場合と次元性調査５０１を行わない場合の負荷の比率Ｒは、（Ａ＋Ｂ）／Ｃであることから、このＲは、次式（２０）によって求めることができる【０１１２】
【数２０】
2009031200.tif 000022
ここで、次元性の分析を行うステップ数Ｄを、全ステップ数Ｕの２割（Ｄ／Ｕ＝０．２）と仮定し、格子点の数を１軸あたり１００個（Ｍ＝１００）とすれば、比率Ｒは、次式（２１）のようになる。【０１１３】
【数２１】
2009031200.tif 000023
この場合、次元性調査５０１を行わない場合に比較して、負荷が０．２０８倍になる。以上より、次元性の分析を行うことによって負荷を低減できることがわかる。【０１１４】
また、式（２０）において、Ｍが大きい場合は第２項の１/Ｍ（１−Ｓ／Ｕ）は無視でき（例えば、この例では０．８／１００）、比率Ｒを決定するのは、主に第１項の（Ｄ／Ｕ）であることもわかる。つまり、次元性調査５０１を行うステップ数Ｄをできるだけ少なくするほど効果が出やすい。また、モデルの一次元性や二次元性の違いは第２項に含まれる（モデルが一次元性の場合は、分母がＭでなくＭ2になる）が、Ｍが大きい場合はこの項は無視できるので、次元性の違いは計算負荷の変化に余り影響しない。しかし、Ｍが大きくなく、この項が無視できない場合にはある程度影響することになる。【０１１５】
シミュレーションの物理空間が三次元空間である場合、空間データテーブル上には、タイムステップ、Ｘ軸座標、Ｙ軸座標、Ｚ軸座標およびその座標上の物理量が格納される。物理量は、圧力値、速度、密度などを示すデータである。物理空間が三次元であり、各次元の要素数が１０００であった場合、１ステップに１０9（１０の９乗）行のメモリ空間が必要となる。物理現象の次元性を調査する際には、さらにステップ数倍のデータが空間データテーブルに蓄えられることになる。しかし、これらのデータはすべてのステップ数のデータをテーブル上に格納しておく必要がない。本実施の形態のデータ記録装置１００では、必要のない過去のデータは新しいタイムステップのデータで上書きされる。なお、必要のないデータは、一旦記録されるが、その後判定結果に基づいて削除されるようにしてもよい。【０１１６】
次に、以上の構成およびデータ構造のテーブルを入力として出力データを判別する処理について説明する。
図１２および図１３は、データ記録処理の手順を示すフローチャートである。以下、図１２および図１３に示す処理をステップ番号に沿って説明する。【０１１７】
［ステップＳ１１］  設定情報取得部１１９は、ユーザによって入力された設定情報２１０を受け付け、受け付けた設定情報２１０から設定パラメータを取得する。この設定情報２１０は、一旦設定パラメータテーブル７０１を構成してＲＡＭ１０２に格納され、必要に応じて読み出される。【０１１８】
［ステップＳ１２］  データ取得部１１１は、シミュレーションの実行の新たなステップが実行された結果算出されたデータを取得する。
［ステップＳ１３］  モード設定部１１２は、所定の条件に従って、次元性調査モードに設定する。所定の条件が成立して次元性調査モードに設定される場合、および既に次元性調査モードに設定されている場合には、ステップＳ１４に処理が進む一方、次元性調査モードが解除されていれば、ステップＳ１５に処理が進む。【０１１９】
［ステップＳ１４］  軸判定変化率算出部１１３は、空間軸および時間軸の軸データ変化率を算出する。なお、ここで算出された軸データ変化率は、後述するステップＳ２３において軸ごとに平均値が算出される。【０１２０】
［ステップＳ１５］  記録判定変化率算出部１１６は、対象軸の軸データ変化率を計算する。なお、ここで算出された軸データ変化率は、後述するステップＳ１６においてデータを記録するか否かの判定に用いられる。【０１２１】
［ステップＳ１６］  記録判定部１１７は、記録判定処理を実行する。この記録判定処理は、詳しくは図１４および図１５において後述する。
［ステップＳ２１］  記録部１１８は、データテーブル１２１にデータを記録する。ここでは、次元性調査モードではステップＳ１４で変化率が算出された物理量を示すデータが記録される。また、次元性調査モードの解除時ではステップＳ１５で算出された変化率に基づいてステップＳ１５で記録すると判定された物理量を示すデータが記録される。【０１２２】
［ステップＳ２２］  モード設定部１１２は、所定の条件に従って、次元性調査モードを解除する。所定の条件が成立して、次元性調査モードが解除される場合、ステップＳ２２に処理が進む一方、次元性調査モードに設定されている場合、および次元性調査モードが既に解除されている場合、ステップＳ１２に処理が進む。【０１２３】
［ステップＳ２３］  軸判定変化率算出部１１３は、ステップＳ１４で算出した各軸のステップごとの変化率に基づいて、各軸の変化率の平均値を算出する（図５）。
［ステップＳ２４］  軸判定部１１４は、ステップＳ２３で算出された各軸の変化率の平均値に基づいて、データを記録するか否かを判定する記録判定処理（図１４および図１５）のための変化率計算の対象となる対象軸を決定する（図５）。【０１２４】
図１４および図１５は、記録判定処理の手順を示すフローチャートである。本処理は、データ記録処理（図１２および図１３）のステップＳ１６において実行される処理である。以下、図１４および図１５に示す処理をステップ番号に沿って説明する。【０１２５】
［ステップＳ３１］  記録判定部１１７は、現在判定しているデータにつき、対象軸のうち未だ選択していない軸から１つの軸を選択する。
［ステップＳ３２］  記録判定部１１７は、ステップＳ１１（図１２）において取得した設定パラメータ（図４）から、ステップＳ３１において選択した軸に対応する閾値を取得する。【０１２６】
［ステップＳ３３］  記録判定部１１７は、ステップＳ１１において取得した設定パラメータから、判定条件を取得し、取得した判定条件がＯＲ条件であるか否かを判断する。記録判定部１１７は、判定条件がＯＲ条件であれば、ステップＳ３４に処理を進める一方、判定条件がＯＲ条件でなくＡＮＤ条件であれば、ステップＳ４１（図１５）に処理を進める。【０１２７】
［ステップＳ３４］  記録判定部１１７は、ステップＳ３１において選択した軸の軸データ変化率が、ステップＳ３２において取得した閾値未満であるか否かを判断する。記録判定部１１７は、軸データ変化率が閾値未満であれば、ステップＳ３５に処理を進める一方、軸データ変化率が閾値以上であれば、ステップＳ３６に処理を進める。【０１２８】
［ステップＳ３５］  記録判定部１１７は、現在判定しているデータにつき、ステップＳ３１においてすべての対象軸を選択したか否かを判断する。記録判定部１１７は、すべての対象軸を選択していれば、ステップＳ３７に処理を進める一方、すべての対象軸を選択していなければ、ステップＳ３１に処理を進める。【０１２９】
［ステップＳ３６］  記録判定部１１７は、現在判定しているデータを記録するように設定し、その後処理を終了する。
［ステップＳ３７］  記録判定部１１７は、現在判定しているデータを記録しないように設定し、その後処理を終了する。【０１３０】
［ステップＳ４１］  記録判定部１１７は、ステップＳ３１において選択した軸の軸データ変化率が、ステップＳ３２において取得した閾値未満であるか否かを判断する。記録判定部１１７は、軸データ変化率が閾値未満であれば、ステップＳ４３に処理を進める一方、軸データ変化率が閾値以上であれば、ステップＳ４２に処理を進める。【０１３１】
［ステップＳ４２］  記録判定部１１７は、現在判定しているデータにつき、ステップＳ３１においてすべての対象軸を選択したか否かを判断する。記録判定部１１７は、すべての対象軸を選択していれば、ステップＳ４４に処理を進める一方、すべての対象軸を選択していなければ、ステップＳ３１（図１４）に処理を進める。【０１３２】
［ステップＳ４３］  記録判定部１１７は、現在判定しているデータを記録しないように設定し、その後処理を終了する。
［ステップＳ４４］  記録判定部１１７は、現在判定しているデータを記録するように設定し、その後処理を終了する。【０１３３】
このようにして、記録判定部１１７は、設定パラメータテーブル７０１に記憶されている設定情報２１０を用いて、次元性調査モード解除時には、各データについて記録するか否かを判定する。【０１３４】
このようなデータ記録装置１００を用いることで、取得したデータを各軸方向の変化に応じて記録するか否かを決定するが、予め各軸方向の変化に応じて当該軸の軸データが変化する率を示す軸データ変化率を算出し、多次元データを構成する複数の軸のうち、軸データ変化率が低い軸については、取得したデータを記録するか否かの判定の条件から除外し、軸データ変化率も算出しない。これにより、データを格納するために必要な記憶容量を節約することができると共に、データ変化率の計算量も削減することができる。したがって、データの格納のための記憶装置の容量を節約できると共に、データの削減のための計算負荷も抑えることができるため、シミュレーションシステムの簡素化や運用時の低コスト化に大変有用となる。【０１３５】
特に、物理空間における現象を対象とするシミュレーションでは、扱われるデータが多次元である。従って、モデルの次元性を判定することにより変化率を計算する軸方向を限定してから、点単位で空間的（３次元の場合、Ｘ軸、Ｙ軸、Ｚ軸）、および時間的（時間軸）な変化率を求めて、時間的、空間的に変化率が大きく着目すべきデータのみを抽出するので、例えば、大規模な物理空間のモデルについても、モデルの規模の拡大に伴う計算負荷の増加を軽減することができる。【０１３６】
以上、本発明のデータ記録プログラム、データ記録装置、およびデータ記録方法を図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置き換えることができる。また、本発明に他の任意の構成物や工程が付加されていてもよい。また、本発明は、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。【０１３７】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、データ記録装置１００が有すべき機能の処理内容を記述したプログラムが提供される。そのプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリなどが挙げられる。磁気記録装置としては、例えば、ハードディスク装置（ＨＤＤ）、フレキシブルディスク（ＦＤ）、磁気テープ（ＭＴ）などが挙げられる。光ディスクとしては、例えば、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などが挙げられる。光磁気記録媒体としては、例えば、ＭＯ（Magneto-Optical disk）などが挙げられる。【０１３８】
プログラムを流通させる場合には、例えば、そのプログラムが記録されたＤＶＤ、ＣＤ−ＲＯＭなどの可搬型記録媒体が販売される。また、プログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することもできる。【０１３９】
データ記録プログラムを実行するコンピュータは、例えば、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、自己の記憶装置に格納する。そして、コンピュータは、自己の記憶装置からプログラムを読み取り、プログラムに従った処理を実行する。なお、コンピュータは、可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することもできる。また、コンピュータは、サーバコンピュータからプログラムが転送されるごとに、逐次、受け取ったプログラムに従った処理を実行することもできる。【０１４０】
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【０１４１】
１  コンピュータ
１０  シミュレーションプログラム
１１  データ取得手段
１２  モード設定手段
１３  軸判定変化率算出手段
１４  軸判定手段
１５  対象軸設定手段
１６  記録判定変化率算出手段
１７  記録判定手段
１８  記録手段
１９  データテーブル
【図１】
2009031200.tif 000024
【図２】
2009031200.tif 000025
【図３】
2009031200.tif 000026
【図４】
2009031200.tif 000027
【図５】
2009031200.tif 000028
【図６】
2009031200.tif 000029
【図７】
2009031200.tif 000030
【図８】
2009031200.tif 000031
【図９】
2009031200.tif 000032
【図１０】
2009031200.tif 000033
【図１１】
2009031200.tif 000034
【図１２】
2009031200.tif 000035
【図１３】
2009031200.tif 000036
【図１４】
2009031200.tif 000037
【図１５】
2009031200.tif 000038
【手続補正書】
【提出日】平成22年3月3日(2010.3.3)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録プログラムにおいて、
コンピュータを、
前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得するデータ取得手段、
次元性調査の対象となる対象軸を前記次元軸および前記時間軸の各軸方向の前記データの変化の大きさに基づいて決定する次元性調査モードに設定し、設定した前記次元性調査モードを解除するモード設定手段、
前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する軸判定変化率算出手段、
前記軸判定変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が高いか否かを判定する軸判定手段、
前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が低いと判定された軸を対象軸に設定しない対象軸設定手段、
前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて前記データが変化する率を示す対象軸データ変化率をそれぞれ算出する記録判定変化率算出手段、
前記記録判定変化率算出手段によって算出された前記対象軸データ変化率に基づき、前記データを記録するか否かを判定する記録判定手段、
前記記録判定手段が前記データを記録すると判定した場合、前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記データを前記データテーブルに記録しない記録手段、
として機能させることを特徴とするデータ記録プログラム。
【請求項２】
前記軸判定変化率算出手段は、各前記軸について、単位時間ごとの当該軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該軸の軸データ変化率とし、
前記記録判定変化率算出手段は、各前記軸について、単位時間ごとの当該軸方向の前記データの変化率の平均値を算出して、算出した各平均値をそれぞれ当該軸の対象軸データ変化率とする、
ことを特徴とする請求項１記載のデータ記録プログラム。
【請求項３】
さらに前記コンピュータを、前記軸データ変化率が高いか否かを判定するための前記軸ごとに対応する閾値を取得する設定情報取得手段として機能させ、
前記軸判定手段は、前記軸判定変化率算出手段によって算出された各前記軸の軸データ変化率と、前記設定情報取得手段によって取得された当該軸に対応する閾値とを比較して、当該軸の軸データ変化率が前記閾値未満である場合、当該軸の軸データ変化率が低いと判定し、
前記記録判定手段は、前記記録判定変化率算出手段によって算出された前記対象軸の対象軸データ変化率と、前記設定情報取得手段によって取得された当該対象軸に対応する閾値とを比較して、すべての前記対象軸の対象軸データ変化率が前記閾値未満である場合、前記データを前記データテーブルに記録しないと判定する、
ことを特徴とする請求項１記載のデータ記録プログラム。
【請求項４】
前記データ取得手段は、前記データを前記時間軸の変化に基づいて順次取得し、
前記モード設定手段は、前記データ取得手段によって最初に取得されたデータから所定個数のデータまでは前記次元性調査モードに設定して当該データを処理する一方、前記データ取得手段によって最初に取得されたデータから所定個数のデータ以後のデータは前記次元性調査モードを解除して当該データを処理することを特徴とする請求項１記載のデータ記録プログラム。
【請求項５】
複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録装置において、
前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得するデータ取得手段と、
次元性調査の対象となる対象軸を前記次元軸および前記時間軸の各軸の方向の前記データの変化の大きさに基づいて決定する次元性調査モードに設定し、設定した前記次元性調査モードを解除するモード設定手段と、
前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出する軸判定変化率算出手段と、
前記軸判定変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が高いか否かを判定する軸判定手段と、
前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が低いと判定された軸を対象軸に設定しない対象軸設定手段と、
前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて前記データが変化する率を示す対象軸データ変化率をそれぞれ算出する記録判定変化率算出手段と、
前記記録判定変化率算出手段によって算出された前記対象軸データ変化率に基づき、前記データを記録するか否かを判定する記録判定手段と、
前記記録判定手段が前記データを記録すると判定した場合、前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記データを前記データテーブルに記録しない記録手段と、
を有することを特徴とするデータ記録装置。
【請求項６】
コンピュータが、複数の次元軸で構成される空間において時間の経過に応じて変化するデータを記録するデータ記録方法において、
データ取得手段が、前記空間を構成する各次元軸の方向の変位と、時間軸によって示される前記時間の経過とに従って変化する前記データを、前記各次元軸と前記時間軸とに対応付けて取得し、
モード設定手段が、次元性調査の対象となる対象軸を前記次元軸および前記時間軸の各軸の方向のデータの変化の大きさに基づいて決定する次元性調査モードに設定し、設定した前記次元性調査モードを解除し、
軸判定変化率算出手段が、前記次元性調査モードにおいて、前記データ取得手段によって取得された前記データに基づき、前記次元軸および前記時間軸の各軸の方向の変化に応じて前記データが変化する率を示す軸データ変化率をそれぞれ算出し、
軸判定手段が、前記軸判定変化率算出手段によって算出された前記軸データ変化率に基づき、各前記軸の軸データ変化率が高いか否かを判定し、
対象軸設定手段が、前記軸判定手段によって前記軸データ変化率が高いと判定された軸を対象軸に設定する一方、前記軸判定手段によって前記軸データ変化率が低いと判定された軸を対象軸に設定せず、
記録判定変化率算出手段が、前記次元性調査モードが解除されているときにおいて、前記データ取得手段によって取得された前記データに基づき、前記対象軸設定手段によって設定された対象軸の各軸の方向の変化に応じて前記データが変化する率を示す対象軸データ変化率をそれぞれ算出し、
記録判定手段が、前記記録判定変化率算出手段によって算出された前記対象軸データ変化率に基づき、前記データを記録するか否かを判定し、
記録手段が、前記記録判定手段が前記データを記録すると判定した場合、前記データをデータテーブルに記録する一方、前記記録判定手段が前記データを記録しないと判定した場合、前記データを前記データテーブルに記録しない、
ことを特徴とするデータ記録方法。
【国際調査報告】
2009031200.tif 000039
2009031200.tif 000040
2009031200.tif 000041
2009031200.tif 000042