(57)【要約】【課題】一連の序列的に関連している工学シミュレーションのそれぞれにおいて適切な数値精度を有する求解器（解法）を選択するシステムおよび方法を、開示する。【解決手段】本発明の例示的な態様に関しては、一連の序列的に関連している工学シミュレーションは、一続きの有限要素解析を有しており、これにより、構造的な製品を設計および解析する。構造的な製品および工学シミュレーションのタイプを記述する入力ファイルが、受け取られる。それぞれの異なるタイプの工学シミュレーションが、適切な数値精度（つまり単精度または倍精度）を有するどの求解器（解法）が用いられるかを決定するよう、チェックされる。そしてその後、対応する実行可能なモジュール（例えば有限要素解析法ソフトウェアモジュール）が、その工学シミュレーションの解析を行なうために用いられる。工学シミュレーションのすべてがシーケンス全体において行なわれるまで、そのプロセスが繰り返される。【選択図】図３
2010020763.tif 000002
【特許請求の範囲】
【請求項１】
一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有する有限要素解析法（ＦＥＡ）解法を選択する方法であって、
（ａ）単精度および倍精度でＦＥＡ実行可能なモジュールの両方がインストールされたコンピュータシステムにおいて入力ファイルを受け取るステップであって、前記入力ファイルは、前記一連の序列的に関連している工学シミュレーションの特定の１つの工学シミュレーションに対するものであるステップと、
（ｂ）前記受け取った入力ファイルからシミュレーションタイプを抽出するステップと、
（ｃ）前記シミュレーションタイプおよびＦＥＡモジュールタイプの予め定義された対応関係に従って単精度ＦＥＡモジュールおよび倍精度ＦＥＡモジュールのどちらを選択するかを決定するステップと、
（ｄ）前記一連の序列的に関連している工学シミュレーションのうちの上述の特定の１つのシミュレーションに対して、前記選択されたＦＥＡモジュールを用いてＦＥＡを行なうステップと、
（ｅ）前記一連の序列的に関連している工学シミュレーションにおいてすべてのシミュレーションが行なわれるまで、ステップ（ａ）〜（ｄ）を繰り返すステップと、
を備える方法。
【請求項２】
請求項１に記載の方法であって、前記入力ファイルは、シミュレートされる構造的な製品の情報を有している方法。
【請求項３】
請求項１に記載の方法であって、前記一連の序列的に関連している工学シミュレーションは、一続きの金属成形シミュレーションを有している方法。
【請求項４】
請求項３に記載の方法であって、前記一続きの金属成形シミュレーションは、重力負荷、バインダラッピング、パンチ降下、スプリングバックおよび端部の縁成形のフェーズを有している方法。
【請求項５】
請求項１に記載の方法であって、前記シミュレーションタイプは、陰解法ＦＥＡおよび陽解法ＦＥＡの一方を有している方法。
【請求項６】
請求項５に記載の方法であって、前記陽解法ＦＥＡは、前記単精度でＦＥＡを実行可能なモジュールを用いて行なわれる方法。
【請求項７】
請求項５に記載の方法であって、前記陰解法ＦＥＡは、前記倍精度でＦＥＡを実行可能なモジュールを用いて行なわれる方法。
【請求項８】
請求項１の方法であって、さらに、前記一連の序列的に関連している工学シミュレーションを作動させる単一の識別名としてのシミュレーションシーケンスコマンドを、前記入力ファイルにおいて定義するステップを備える方法。
【請求項９】
一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有する有限要素解析法（ＦＥＡ）解法を選択するシステムであって、
入出力（Ｉ／Ｏ）インタフェースと、
単精度のＦＥＡモジュールと倍精度のＦＥＡモジュールとを有するアプリケーションモジュールに対応するコンピュータで読取り可能なコードを記憶するメモリと、
前記メモリに連結されている少なくとも１つのプロセッサと、
を備えるシステムであって、
上述の少なくとも１つのプロセッサが前記メモリ内の前記コンピュータが読み取り可能なコードを実行して、これにより、前記アプリケーションモジュールに、
（ａ）前記一連の序列的に関連している工学シミュレーションの特定のシミュレーションに対する入力ファイルを受け取るステップと、
（ｂ）前記受け取った入力ファイルからシミュレーションタイプを抽出するステップと、
（ｃ）前記シミュレーションタイプおよびＦＥＡモジュールタイプの予め定義された対応関係に従って単精度および倍精度ＦＥＡモジュールのどちらを選択するかを決定するステップと、
（ｄ）前記一連の序列的に関連している工学シミュレーションのうちの上述の特定の１つのシミュレーションに対して、前記選択されたＦＥＡモジュールを用いてＦＥＡを行なうステップと、
（ｅ）前記一連の序列的に関連している工学シミュレーションにおいてすべてのシミュレーションが行なわれるまで、ステップ（ａ）〜（ｄ）を繰り返すステップと、
を実行させるシステム。
【請求項１０】
請求項９に記載のシステムであって、前記シミュレーションタイプは、陰解法ＦＥＡおよび陽解法ＦＥＡの一方を有しているシステム。
【請求項１１】
請求項１０に記載のシステムであって、前記陽解法ＦＥＡは、前記単精度でＦＥＡを実行可能なモジュールを用いて行なわれるシステム。
【請求項１２】
請求項１０に記載のシステムであって、前記陰解法ＦＥＡは、前記倍精度でＦＥＡを実行可能なモジュールを用いて行なわれるシステム。
【請求項１３】
請求項９のシステムであって、さらに、前記一連の序列的に関連している工学シミュレーションを作動させる単一の識別名としてのシミュレーションシーケンスコマンドを、前記入力ファイルにおいて定義するステップを備えるシステム。
【請求項１４】
請求項９に記載のシステムであって、前記一連の序列的に関連している工学シミュレーションは、一続きの金属成形シミュレーションを有しているシステム。
【請求項１５】
請求項１４に記載のシステムであって、前記一続きの金属成形シミュレーションは、重力負荷、バインダラッピング、パンチ降下、スプリングバックおよび端部の縁成形のフェーズを有しているシステム。
【請求項１６】
一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有する有限要素解析法（ＦＥＡ）解法を選択する方法を実行するコンピュータが読み取り可能な手段を記憶しているコンピュータで使用可能な記憶媒体であって、
（ａ）単精度および倍精度でＦＥＡ実行可能なモジュールの両方がインストールされたコンピュータシステムにおいて入力ファイルを受け取るコンピュータが読み取り可能なコードであって、前記入力ファイルは、前記一連の序列的に関連している工学シミュレーションの特定の１つの工学シミュレーションに対するものであるコンピュータが読み取り可能なコードと、
（ｂ）前記受け取った入力ファイルからシミュレーションタイプを抽出するコンピュータが読み取り可能なコードと、
（ｃ）前記シミュレーションタイプおよびＦＥＡモジュールタイプの予め定義された対応関係に従って単精度および倍精度ＦＥＡモジュールのどちらを選択するかを決定するコンピュータが読み取り可能なコードと、
（ｄ）前記一連の序列的に関連している工学シミュレーションのうちの上述の特定の１つのシミュレーションに対して、前記選択されたＦＥＡモジュールを用いてＦＥＡを行なうコンピュータが読み取り可能なコードと、
（ｅ）前記一連の序列的に関連している工学シミュレーションにおいてすべてのシミュレーションが行なわれるまで、ステップ（ａ）〜（ｄ）を繰り返すコンピュータが読み取り可能なコードと、
を備えるコンピュータで使用可能な記憶媒体。
【請求項１７】
請求項１６に記載のコンピュータで使用可能な記憶媒体であって、さらに、入前記一連の序列的に関連している工学シミュレーションを作動させる単一の識別名としてのシミュレーションシーケンスコマンドを、前記入力ファイルにおいて定義するコンピュータが読み取り可能なコードを備えるコンピュータで使用可能な記憶媒体。
【請求項１８】
請求項１６に記載のコンピュータで使用可能な記憶媒体であって、前記一連の序列的に関連している工学シミュレーションは、一続きの金属成形シミュレーションを有しているコンピュータで使用可能な記憶媒体。
【請求項１９】
請求項１８に記載のコンピュータで使用可能な記憶媒体であって、前記一続きの金属成形シミュレーションは、重力負荷、バインダラッピング、パンチ降下、スプリングバックおよび端部の縁成形のフェーズを有しているコンピュータで使用可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、概して、機械学のコンピュータ支援工学（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ  （ＣＡＥ））解析に関し、特に、一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有するＣＡＥ解法（ＣＡＥによる求解器）（ＣＡＥ  ｓｏｌｖｅｒ）を選択するシステムおよび方法に関する。
【背景技術】
【０００２】
コンピュータ支援工学シミュレーションが、構造体（例えば自動車、飛行機など）の設計のために用いられている。そのようなシミュレーションの多くは、有限要素分析法（Ｆｉｎｉｔｅ  Ｅｌｅｍｅｎｔ  Ａｎａｌｙｓｉｓ  （ＦＥＡ））を用いて行われる。有限要素分析法（ＦＥＡ）は、複雑な系に関係する工学問題をモデル化して解くために産業において広く用いられる、コンピュータで処理される方法である。ＦＥＡの名前は、想定されている対象の幾何学的配置を特定する方法に由来する。現代のデジタルコンピューターの登場により、ＦＥＡは、ＦＥＡのソフトウェアとして実装されている。ＦＥＡソフトウェアは、大まかに２つのタイプに分類することができる。陰解法ＦＥＡソフトウェアと陽解法ＦＥＡソフトウェアとがそれである。陰解法ＦＥＡソフトウェアは、連立一次方程式のシステムを解くために陰解法方程式求解器（ｉｍｐｌｉｃｉｔ  ｅｑｕａｔｉｏｎ  ｓｏｌｖｅｒ）を用いる。このようなソフトウェアは、一般的に、静的あるいは擬似静的な問題をシミュレートするために用いられる。陽解法ＦＥＡソフトウェアは、連立方程式を解くのではなく、それぞれが未知であるものをそれらが連立していないものと仮定して明示的に解く。陽解法ＦＥＡソフトウェアは、通常、方法を安定で正確にするために非常に短い解法サイクルすなわち時間ステップを必要とする中央差分時間積分（ｃｅｎｔｒａｌ  ｄｉｆｆｅｒｅｎｃｅ  ｔｉｍｅ  ｉｎｔｅｇｒａｔｉｏｎ）を、用いる。陽解法ＦＥＡソフトウェアは、一般的に、衝突型イベントなど、動力学が重要である、短期間イベントをシミュレートするために用いられる。
【０００３】
ＦＥＡソフトウェアのユーザは、多数の要素（エレメント（ｅｌｅｍｅｎｔ））およびノード（ｎｏｄｅ）を用いて解析される系のＦＥＡモデルを生成する。要素のそれぞれは、系の有限領域を表わす。それぞれの要素内では、未知の量は、要素のドメイン内で単純な形をとると仮定される。陽解法ＦＥＡソフトウェアに関しては、その未知の量は、通常、加速度である。陰解法ＦＥＡソフトウェアに関しては、その未知の量は、一般的に、変位あるいは他のものである。
【０００４】
要素内の未知のものを単純な形とする仮定によって、そして多くの要素を用いることによって、複雑な挙動を、ＦＥＡソフトウェアを用いて長すぎない時間フレーム内でシミュレートすることができる。単純な一の例は、線形バネ（スプリング（ｓｐｒｉｎｇ））要素であり、そのバネは端部に未知の量としての変位を有する。変位フィールドは、スプリングの長さに沿って線形に変化すると仮定される。したがって、バネの変位を解けば、バネに沿ったどの点の変位をも容易に評価することができる。線形のバネ要素に関して、互換性のある歪みおよび応力フィールドは、要素長さにわたって一定であり、端部変位および材料特性から容易に評価される。
【０００５】
未知のものが解かれる要素上の点は、ノードと呼ばれる。線形のバネは、それぞれの端部にノードを有する。もし第３のノードをバネ要素の中間に配置すれば、変位フィールドが二次関数として変化すると仮定することができ、互換性のある歪みおよび応力フィールドが線形となる。共通要素タイプには、体積をモデル化する中実（ソリッド（ｓｏｌｉｄ））要素と、曲げに支配される薄いパーツをモデル化する外殻（シェル（ｓｈｅｌｌ））要素と、梁状物（ビーム（ｂｅａｍ））をモデル化するビーム要素と、骨組構造物（トラス（ｔｒｕｓｓ））をモデル化するバネあるいはトラス要素と、がある。それぞれの要素には、材料タイプおよび適切な材料特性が割り当てられる。適切な材料タイプおよび特性を選ぶことによって、金属、プラスチック、泡、土、コンクリート、ゴム、ガラス、液体および他の多くの材料を、モデル化することができる。ユーザは、また、モデルを完成するために、境界条件、負荷および初期条件を指定しなければならない。正確に複雑なシステム動作をシミュレートするには、多くの要素が必要である。例えば、自動車全体の典型的なＦＥＡのモデルは５００，０００を超える要素で作成される。解析の多くは、最新技術水準のマルチプロセッサ・コンピュータシステムを用いてさえ、演算時間のためだけに、何時間、ときには数日を要することもある。
【０００６】
ＦＥＡモデルが定義されると、ＦＥＡソフトウェアは、指定された荷重あるいは初期条件で物理的な挙動のシミュレーションを行なうことができる。ＦＥＡのソフトウェアは、自動車産業において広範に用いられており、自動車およびエアバッグと相互に作用する乗員ダミー人形に対する前面および側面の衝撃、およびシート状金属からの自動車ボディー部の成形をシミュレートする。このようなシミュレーションは、価値ある洞察をエンジニアに提供し、エンジニアは自動車の安全性を改善することができ、ニューモデルを市場により早く出すことができる。
【０００７】
ＦＥＡの進行とともに、関連するイベントのＦＥＡ解析が、幾度も幾度も行なわれる。今日、関連するイベントは、個々にシミュレートされる。言いかえれば、それぞれのイベントは、新しいコンピュータ支援シミュレーションを用いて解析される。適切な一続きの解析を行なうことができるようにするためには、技術者あるいはユーザは、関連するイベントのそれぞれの、多くの知識を持たなければならない。特に、知識のうちのいくつかは、他のシミュレーションに使えない、従属的な問題である。したがって、ユーザの知識にあまり依存しない、方法の改善が望ましい。
【０００８】
ＦＥＡソフトウェアは、一般的に、コンピュータシステム上で実行される。コンピュータ支援工学解析のほとんどすべてとして、演算は、コンピュータシステムにおいて浮動小数点演算を用いて行なわれる。浮動小数点式のものは、一連の数字（すなわちビット）が実数を表わす数値表現システムを記述する。浮動小数点数の範囲は、仮数部（数の有効数字）の表現および指数に用いられるビット数に依存する。したがって、より多くの桁すなわちビットが実数に用いられるほど、実数の精度を高く保持することができる。
【０００９】
一般に、２つのフォーマットがある。多くの標準（例えばＩＥＥＥ  ７５４）において定義される単精度および倍精度がそれである。単精度は３２ビット（すなわち４バイト）を占めており、２４ビット（およそ１０の７乗のオーダ）の仮数部の精度を有する。一方、倍精度は、６４ビット（すなわち８バイト）を占めており、５３ビットの仮数部の精度（およそ１０の１６乗のオーダ）を有する。
【００１０】
演算の性質に応じて、これらの２つのフォーマットのいずれかを、所望のタスクを達成するために、選択できる。しかしながら、このような選択には、注意が必要である。例えば、陰解法ＦＥＡは、連立方程式の系を解くことを要求し、そして、連立方程式の系を解くことは、切り捨て誤差や丸め誤差をもたらす「除算（ディビジョン（ｄｉｖｉｓｉｏｎ））」を伴う多くの浮動小数点演算を含んでいる。したがって、確実に倍精度を選ぶことは重要である。他方では、陽解法ＦＥＡは連立方程式を解くことを要求しない。有効な解を維持しながらより速く実行するために、単精度を用いることもできる。
【発明の概要】
【発明が解決しようとする課題】
【００１１】
これらの２つのフォーマットは、コンピュータアーキテクチャーと関係がある。その一方で、有限要素解析法ソフトウェアのユーザの大多数は機械系技術者である。そのため、ユーザは、不適当な数値精度フォーマットを選択することの結果としての意味合いに気付いてない可能性がある。正しくない選択が、しばしば行われてきた。その結果、貴重な演算リソースが無駄になるか、あるいは、正しくない解析結果が得られる。一連の関連する工学シミュレーションが行なわれるときに、シミュレーションのうちのあるものが一方の数値精度で行われると同時にシミュレーションのうちの他のものが他方の数値精度で行なわれるべき場合、この状況はよりひどくなる。
【００１２】
したがって、一連の序列的に関連している工学シミュレーションのそれぞれにおいて適切な数値精度を有する求解器を選択するシステムおよび方法の改良が、さらに望まれよう。
【課題を解決するための手段】
【００１３】
この章は、本発明のいくつかの側面を要約することを目的とし、いくつかの好ましい態様を簡潔に紹介するものである。簡略化あるいは省略が、この章の目的を損なわないよう、行われている場合がある。このような簡略化あるいは省略は、本発明の範囲を制限するものではない。
【００１４】
一連の序列的に関連している工学シミュレーションのそれぞれにおいて適切な数値精度を有する解法（求解器）を選択するシステムおよび方法を、開示する。本発明の一の側面に関しては、一連の序列的に関連している工学シミュレーションは、一続きの有限要素解析を有しており、これにより、構造的な製品を設計および解析する。例えば、自動車パーツの金属成形は、多数の工学シミュレーションを必要とし、これにより、金属成形のいくつかのフェーズを表わす場合がある。ａ）重力荷重と、ｂ）バインダラッピング（ｂｉｎｄｅｒ  ｗｒａｐｐｉｎｇ）と、ｃ）パンチ降下（ｐｕｎｃｈ  ｌｏｗｅｒｉｎｇ）と、ｄ）スプリングバックのためのバインダ・リリース（ｂｉｎｄｅｒ  ｒｅｌｅａｓｅ）と、ｅ）端部の縁成形（エッジフランジング（ｅｄｇｅ  ｆｌａｎｇｉｎｇ））およびハミング（ｈａｍｍｉｎｇ）と、がそれである。
【００１５】
金属成形プロセスのこれらのフェーズのそれぞれは、異なる機械工学設計考察を必要とする。例えば、重力荷重およびスプリングバックは、倍精度を用いる非線形の静的な陰解法による求解器（解法）を用いて解析されるべき静荷重である。パンチ降下フェーズは、単精度を用いる非線形の陽解法による求解器（解法）を用いて解析されるべきである。一連の工学シミュレーションがより複雑になるにつれ、これらの求解器（解法）選択は、さらに紛らわしくなることになる。手動で求解器（解法）を選択する代わりに、適切な精度を有する適切な求解器（解法）を用いる予め定義されたシーケンスが、ユーザに提供され、これにより、工学シミュレーションの精度を達成することができることを保証する。
【００１６】
本発明の他の側面に関しては、工学シミュレーションの構造的な製品およびタイプを記述する入力ファイルが、受け取られる。それぞれの異なるタイプの工学シミュレーションが、適切な数値精度（つまり、単精度または倍精度）を有するどの求解器（解法）が用いられるかを決定するよう、チェックされる。そしてその後、対応する実行可能なモジュール（例えばＦＥＡ解析ソフトウェアモジュール）が、その工学シミュレーションの解析を行なうために用いられる。工学シミュレーションのすべてがシーケンス全体において行なわれるまで、そのプロセスが繰り返される。任意選択的に、一連の序列的に関連している工学シミュレーションを作動させる単一のシミュレーションシーケンスコマンドが、定義される。
【００１７】
本発明の一の態様に関しては、一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有する有限要素解析法（ＦＥＡ）の求解器（解法）を選択する方法は、少なくとも
（ａ）単精度および倍精度でＦＥＡ実行可能なモジュールの両方がインストールされたコンピュータシステムにおいて入力ファイルを受け取るステップであって、入力ファイルは、一連の序列的に関連している工学シミュレーションの特定の１つの工学シミュレーションに対するものであるステップと、
（ｂ）受け取られた入力ファイルからシミュレーションタイプを抽出ステップと、
（ｃ）シミュレーションタイプおよびＦＥＡモジュールタイプの予め定義された対応関係に従って単精度および倍精度ＦＥＡモジュールのどちらを選択するかを決定するステップと、
（ｄ）一連の序列的に関連している工学シミュレーションのうちの上述の特定の１つのシミュレーションに対して、選択されたＦＥＡモジュールを用いてＦＥＡを行なうステップと、
（ｅ）一連の序列的に関連している工学シミュレーションにおいてすべてのシミュレーションが行なわれるまで、ステップ（ａ）〜（ｄ）を繰り返すステップと、を備えている。方法は、さらに、前記一連の序列的に関連している工学シミュレーションを作動させる（工学シミュレーションのトリガとなる）単一の識別名としてのシミュレーションシーケンスコマンドを、入力ファイルにおいて定義するステップを備える。
【００１８】
本発明の他の目的、特徴および利点は、添付した図面を参照し、以下の本発明の実施の形態の詳細な説明を考察することによって明らかとなろう。
【００１９】
本発明のこれらおよび他の特徴、面および利点は、以下の説明、添付の特許請求の範囲および添付した図面を考慮してより理解されよう。図面は次の通りである。
【図面の簡単な説明】
【００２０】
【図１】図１は、序列的に関連している工学シミュレーションの例示的なグループを示す図である。
【図２Ａ】図２Ａは、集合的に、序列的に関連している一連の工学シミュレーションの二次元図を示す。
【図２Ｂ】図２Ｂは、集合的に、序列的に関連している一連の工学シミュレーションの二次元図を示す。
【図２Ｃ】図２Ｃは、集合的に、序列的に関連している一連の工学シミュレーションの二次元図を示す。
【図２Ｄ】図２Ｄは、集合的に、序列的に関連している一連の工学シミュレーションの二次元図を示す。
【図３】図３は、異なる数値精度を有する２つの実行ファイルがロードされた例示的なコンピュータシステムを示す図である。
【図４】図４は、コンピュータシステムにおける単精度の浮動小数点番号の例示的なデータ構造を示す図である。
【図５】図５は、コンピュータシステムにおける倍精度の浮動小数点番号の例示的なデータ構造を示す図である。
【図６】図６は、一連の序列的に関連している工学シミュレーションにおいて適切な数値精度を有するＣＡＥ解析求解器を選択する例示的なプロセスを示すフローチャートである。
【図７】図７は、本発明を実行可能な例示的なコンピュータを示す機能ブロック図である。
【発明を実施するための形態】
【００２１】
以下の説明においては、本発明の完全な理解を提供するために、多数の具体的で主要ではない部分まで記述する。しかしながら、本発明をこれらの具体的で主要ではない部分までなくとも実現できることは、当業者にとって明らかであろう。ここでの説明および表現は、当該技術で経験のある者すなわち当業者が最も効果的に彼らの仕事を他の当業者に伝えるために用いる通常の手段である。他の場合では、よく知られている方法、手順、部品および回路類は、本発明の面を不必要に不明瞭にすることを回避するために、詳細には説明しない。
【００２２】
ここで言及する「一の実施形態」あるいは「ある実施形態」は、その実施形態に関して説明される特定の特徴、構造あるいは特性を本発明の少なくとも１つの実施形態にも含ませることができるということを意味する。本明細書においてところどころに現れる語「一の実施形態において」は、必ずしも同じ実施形態をすべて言及しているのではなく、また、他の実施形態とは互いに相容れない別のあるいは代替的な実施形態でもない。さらに、本発明の１つ以上の実施形態を表わすプロセスフローチャートすなわちプロセス図におけるブロックの順序は、いかなる特定の順序を本質的に示すものではなく、また、本発明におけるいかなる限定をも含意するものでもない。
【００２３】
本発明の実施形態を、図１乃至図７を参照して、ここに説明する。しかしながら、当業者には、これらの図面に関してここでなされる詳細な説明が、本発明がこれらの限定的な実施形態を越えて広がっていることの解説的な目的のためのものであることが、容易に分かるであろう。
【００２４】
まず、例示的な一連の序列的に関連している工学シミュレーションをリストしている図１を参照する。例示的な一連のものは、金属成形シミュレーション１００である（例えば、シート状金属から自動車パーツを形成する）。金属成形シミュレーション１００は、いくつかのフェーズを有する。１）重力荷重１０２、２）バインダラッピング１０４、３）パンチ降下１０６、４）スプリングバック１０８のためのバインダ・リリース、５）端部の縁成形およびハミング１１０である。
【００２５】
これらのフェーズのうちのいくつかを、図２Ａ乃至図２Ｄに示す。対象を三次元とすることができるが、図示の簡略化のため、図２Ａ乃至図２Ｄに示す図は、二次元の正面図である。重力荷重フェーズ１０２は、ブランクのシート状金属２１４が時間ｔ0で図２Ａに示すパンチ２１０とバインダ２１２との間の金型２１８上部に位置するときである。ブランクのシート状金属２１４上の荷重は、ブランク自体の２１４の質量による重力荷重のみである。重力荷重フェーズ１０２を、陰解法ＦＥＡ求解器（解法）を用いてより高い数値精度（つまり倍精度）で、静的な解によって解析することができる。
【００２６】
図２Ｂは、次のフェーズ−時間ｔ1におけるバインダラッピング１０４を示す。パンチ２１０の周囲においてブランク２１４を押さえつけるよう、バインダ２１２が包まれる（ラッピングされる）ことが、わかるであろう。このバインダラッピングフェーズ１０４は、好ましくは、より低い数値精度（つまり単精度）を用いる陽解法ＦＥＡを用いて解析される。そしてその後、パンチ２１０が、時間ｔ2およびｔ3において図２Ｃおよび図２Ｄにそれぞれ示すように、ブランク２１４へと降下されあるいは押圧される。図２Ｃに示すように、パンチ２１０は、その深さの約半分まで降下している。ブランク２１４が金型２１８の上部で曲げられていることが、見てとれるであろう。パンチ全体２１０が、図２Ｄに示すように、ブランク２１４まで降下すると、ブランク２１４は、金型２１８の所定の形状に成形される。パンチ降下フェーズ１０６も、また、好ましくは、単精度を有する陽解法ＦＥＡを用いて解析される。
【００２７】
そしてその後、金属成形シミュレーション１００の次の２つのフェーズ（つまり図示していないスプリングバック１０８および端部の縁成形１１０）のＦＥＡの解析が、行なわれる。スプリングバックフェーズ１０８は、陰解法ＦＥＡあるいは陽解法ＦＥＡのいずれでも行うことができるが、端部の縁成形１１０は、陽解法ＦＥＡで行われる。これらのシミュレーションは、定義された順に、例えば、重力荷重をバインダラッピングの前に、パンチ降下をスプリングバックの前に、等で、行なわなければならないので、シミュレーションは、序列的に関連づけられている。それぞれのフェーズの終わりにおいて、ブランクのシート状金属２１４の変形された形状は、次のフェーズに対する入力ファイルにおける新しい幾何学的配置になる。ブランクの２１４の最終的な幾何学的配置は、生産に望まれる構造的なパーツあるいは構造体に、理想的には、なるはずである。
【００２８】
次に、ＣＡＥ解析入力ファイル３０２と、ＣＡＥ解析ソフトウェアがインストールされたコンピュータ３１０と、の関係を示す図３を参照する。ＣＡＥ解析入力ファイル３０２は、工学シミュレーションにおいて用いられる構造的な製品（例えば、自動車パーツ）の数値表現を有する。入力ファイル３０２は、一般的に、構造的な製品を表わす有限要素を定義する１セットのノードと、１セットの材料特性と、構造挙動定義する１セットの規則と、などを有する。一般に、シミュレーションの特定タイプも、また、入力ファイルに含まれている。任意選択的に、一連の序列的に関連している工学シミュレーションを作動させる（工学シミュレーションのトリガとなる）単一のシミュレーションシーケンスコマンドを、入力ファイルにおいて、定義することができる。入力ファイル３０２は、まず、ＣＡＥソフトウェアがインストールされたコンピュータ３１０に読み込まれる。ＣＡＥソフトウェアモジュールは、１つ以上のソフトウェアモジュール（例えば、単精度ＣＡＥ解析モジュール３１２と倍精度ＣＡＥ解析モジュール３１４）を有することができる。追加的な他のタイプのソフトウェアモジュールをコンピュータ３１０にインストールすることができる、ことを付言しておく。両方の数値精度のモジュールがインストールされてシミュレーションの際に利用可能であるので、一連の序列的に関連する工学シミュレーションを、コンピュータ３１０上で行なうことができる。
【００２９】
図４は、３２ビットの単精度の浮動小数点式の数のデータ構造を示す図であり、一方、図５は、６４ビットの倍精度のものである。一般的に、より高い数値精度が、陰解法ＦＥＡにおいては、必要である。これにより、十分な数値精度が割り当てられ、その結果、演算の際に発生する切り捨て誤差および丸め誤差に耐える。陽解法ＦＥＡにおいては、連立方程式を解くことがなく、したがって、解析を実行するのに単精度バージョンで十分であろう。
【００３０】
本発明の一の実施形態に関して、一連の序列的に関連している工学シミュレーションのそれぞれにおいて適切な数値精度を有するＣＡＥ求解器（解法）を選択する例示的なプロセス６００のフローチャートを、図６に示す。プロセス６００は、ソフトウェアで実行される。
【００３１】
ステップ６０２において、一連の序列的に関連している工学シミュレーションの第１のシミュレーションの入力ファイルを、コンピュータ（例えば、コンピュータ３１０）において、受け取ることによって、プロセス６００がスタートする。次に、ステップ６０４において、シミュレーションのタイプが入力ファイルから抽出される。例えば、入力ファイル３０２から、重力荷重が、コンピュータ３１０にインストールされたモジュールによって決定される。シミュレーションのタイプが得られると、プロセス６００は、判断６０６へと移行する。陰解法ＦＥＡあるいは陽解法ＦＥＡのいずれをシミュレーションに用いるべきかが判断される。「陰解法（ＩＭＰ）」（ＦＥＡ）に決定された場合、プロセス６００はステップ６１０に移行して、より高い数値精度で実行可能なモジュール（例えば倍精度モジュール３１４）を選択する。そうでなければ、「陽解法（ＥＸＰ）」分岐に続くステップ６１２において、より低い数値精度のモジュール（単精度モジュール３１２）が選択される。判断６０６は、それぞれのタイプのシミュレーションと適切な数値精度を有する対応する求解器（解法）あるいは実行ファイルと対応付けているルックアップテーブルによって、実行される。
【００３２】
次に、ステップ６１４において、入力ファイルにおいて指定された特定のシミュレーションが、選択された実行ファイルモジュールを用いて行なわれる。そしてその後、プロセス６００は、判断６１６において他のシミュレーションをさらに行なわなければならないか否かをチェックする。「ｙｅｓ」の場合、プロセス６００は、対応する入力ファイルに対してステップ６０２へと戻り、判断６１６が「ｎｏ」になるまで、ステップ６０２〜６１４を繰り返す。そして、プロセス６００は、終了する。
【００３３】
一の側面において、本発明は、ここに説明した機能を実行可能な１つ以上のコンピュータシステムに対してなされたものである。コンピュータシステム７００の一例を、図７に示す。コンピュータシステム７００は、プロセッサ７０４など１つ以上のプロセッサを有する。プロセッサ７０４は、コンピュータシステム内部通信バス７０２に接続されている。種々のソフトウェアの実施形態を、この例示的なコンピュータシステムで説明する。この説明を読むと、いかにして、他のコンピュータシステムおよび／またはコンピュータアーキテクチャーを用いて、本発明を実行するかが、関連する技術分野に習熟している者には明らかになるであろう。
【００３４】
コンピュータシステム７００は、また、メインメモリ７０８好ましくはランダムアクセスメモリ（ＲＡＭ）を有しており、また、二次メモリ７１０を有していてもよい。二次メモリ７１０は、例えば、１つ以上のハードディスクドライブ７１２、および／またはフレキシブルディスクドライブ、磁気テープドライブ、光ディスクドライブなどに代表される１つ以上のリムーバブルストレージドライブ７１４を有することができる。リムーバブルストレージドライブ７１４は、よく知られている方法で、リムーバブルストレージユニット６１８から情報を読み取り、および／またはリムーバブルストレージユニット７１８に情報を書き込む。リムーバブルストレージユニット７１８は、リムーバブルストレージドライブ７１４によって読み取り・書き込みされるフレキシブルディスク、磁気テープ、光ディスクなどを表わす。以下にわかるように、リムーバブルストレージユニット７１８は、コンピューターソフトウェアおよび／またはデータを内部に記憶しているコンピュータで使用可能な記憶媒体を有している。
【００３５】
別の実施形態において、二次メモリ７１０は、コンピュータプログラムあるいは他の命令をコンピュータシステム７００にロードすることを可能にする他の同様な手段を有することもできる。そのような手段は、例えば、リムーバブルストレージユニット７２２とインタフェース７２０とを有することができる。そのようなものの例には、プログラムカートリッジおよびカートリッジのインタフェース（ビデオゲーム機に見られるようなものなど）と、リムーバブルメモリチップ（消去可能なプログラマブルＲＯＭ（ＥＰＲＯＭ）、ユニバーサルシリアルバス（ＵＳＢ）フラッシュメモリ、あるいはＰＲＯＭなど）およびそれらに対応するソケットと、ソフトウェアおよびデータをリムーバブルストレージユニット７２２からコンピュータシステム７００に転送することを可能にする他のリムーバブルストレージユニット７２０およびインタフェース７２２と、が含まれうる。一般に、コンピュータシステム７００は、プロセススケジューリング、メモリ管理、ネットワーク管理およびＩ／Ｏサービスなどのタスクを行なうオペレーティングシステム（ＯＳ）ソフトウェアによって、制御され連係される。例示的なＯＳには、Ｌｉｎｕｘ（登録商標）およびＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）が含まれる。
【００３６】
通信用インタフェース７２４も、また、バス７０２に接続することができる。通信用インタフェース７２４は、ソフトウェアおよびデータをコンピュータシステム７００と外部装置との間で転送することを可能にする。通信用インタフェース７２４の例には、モデム、ネットワークインターフェイス（イーサネット（登録商標）・カードなど）、コミュニケーションポート、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ  Ｍｅｍｏｒｙ  Ｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ａｓｓｏｃｉａｔｉｏｎ）スロットおよびカードなど、が含まれうる。通信用インタフェース７２４を介して転送されたソフトウェアおよびデータは、通信用インタフェース７２８によって受信可能な電子信号、電磁気信号、光学信号、あるいは他の信号とできる信号７２４の態様である。コンピュータ７００は、特定の通信手続（つまりプロトコル）に基づいて、データネットワーク上の他の演算装置と通信する。一般的なプロトコルのうちの１つは、インターネットにおいて一般に用いられているＴＣＰ／ＩＰ（Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ／Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）である。一般に、通信インタフェース７２４は、データファイルをデータネットワーク上で伝達される小さいパケットへ分割し、あるいは受信したパケット元のデータファイルへと組み立てる（再構築する）、いわゆるパケットのアセンブル・リアセンブル管理を行う。さらに、通信インタフェース７２４は、正しい宛先に届くようそれぞれのパケットのアドレス部分に対処し、あるいはコンピュータ７００が宛先となっているパケットを他に向かわせることなく確実に受信する。この書類において、「コンピュータプログラム媒体」および「コンピュータで使用可能な媒体」という語は、リムーバブルストレージドライブ７１４および／またはハードディスクドライブ７１２に組み込まれたハードディスクなどの媒体を概ね意味して用いられている。これらのコンピュータプログラム製品は、コンピュータシステム７００にソフトウェアを提供する手段である。本発明は、このようなコンピュータプログラム製品に対してなされたものである。
【００３７】
コンピュータシステム７００は、また、コンピュータシステム７００をアクセスモニタ、キーボード、マウス、プリンタ、スキャナ、プロッタなどとアクセスさせるための入出力（Ｉ／Ｏ）インタフェース７３０を有していてもよい。
【００３８】
コンピュータプログラム（コンピュータ制御ロジックともいう）は、メインメモリ７０８および／または二次メモリ７１０にアプリケーションモジュール７０６として記憶される。コンピュータプログラムを、通信用インタフェース７２４を介して受け取ることもできる。このようなコンピュータプログラムが実行された時、コンピュータプログラムによって、コンピュータシステム７００がここに説明した本発明の特徴を実行することが可能になる。詳細には、コンピュータプログラムが実行された時、コンピュータプログラムによって、プロセッサ７０４が本発明の特徴を実行することが可能になる。したがって、このようなコンピュータプログラムは、コンピュータシステム７００のコントローラを表わしている。
【００３９】
ソフトウェアを用いて発明が実行される実施形態において、当該ソフトウェアは、コンピュータプログラム製品に記憶され、あるいは、リムーバブルストレージドライブ７１４、ハードドライブ７１２あるいは通信用インタフェース７２４を用いてコンピュータシステム７００へとロードされる。アプリケーションモジュール７０６は、プロセッサ７０４によって実行された時、アプリケーションモジュール７０４によって、プロセッサ６０４がここに説明した本発明の機能を実行する。
【００４０】
所望のタスクを実現するために、Ｉ／Ｏインタフェース７３０を介したユーザ入力によって、あるいは、よることなしに、１つ以上のプロセッサ７０８によって実行することができる１つ以上のアプリケーションモジュール７０６を、メインメモリ７０４に、ロードすることもできる。動作においては、少なくとも１つのプロセッサ７０４がアプリケーションモジュール７０６のうちの１つが実行されると、結果が演算されて二次メモリ７１０（つまりハードディスクドライブ７１２）に記憶される。ＣＡＥ解析の状況（例えば特定の工学シミュレーションの進捗）が、テキストあるいはグラフィック表現で、Ｉ／Ｏインタフェース７３０を介してユーザに報告される。
【００４１】
本発明を具体的な実施形態を参照しながら説明したが、これらの実施形態は単なる例示であって、本発明を限定するものではない。開示した例示的な実施形態に対する種々の変更あるいは変形を、当業者は思いつくであろう。例えば、一続きの金属成形シミュレーションを一連の序列的関連する工学シミュレーションの例として示し説明したが、他の工学シミュレーション、例えば、工学製品の一続きの製造工程を、本発明において用いることもできる。さらに、有限要素解析法を応力解析に関して説明し示したが、定差解析、メッシュフリー解析など他のタイプのＣＡＥ解析を用いて同じことを達成することもできる。要約すると、発明の範囲は、ここで開示した具体的で例示的な実施形態に限定されず、当業者が容易に思い付くあらゆる変更が、本願の精神および認識範囲そして添付の特許請求の範囲の権利範囲に含まれる。
【符号の説明】
【００４２】
１００  金属成形シミュレーション
１０２  重力荷重
１０４  バインダラッピング
１０６  パンチ降下
１０８  スプリングバックのためのバインダ離型
１１０  端部の縁付けおよびハミング
２１０  パンチ
２１２  バインダ
２１４  ブランクのシート状金属
２１８  金型
３０２  ＣＡＥ解析入力ファイル
３１０  コンピュータ
３１２  単精度ＣＡＥ解析モジュール
３１４  倍精度ＣＡＥ解析モジュール
７００  コンピュータ
７０２  バス
７０４  プロセッサ
７０６  モジュール
７０８  メインメモリ（ＲＡＭ）
７１０  第２メモリ
７１２  ハードディスクドライブ
７１４  リムーバブルストレージドライブ
７１８  リムーバブルストレージユニット
７２０  インタフェース
７２２  リムーバブルストレージユニット
７２４  通信用インタフェース
７３０  Ｉ／Ｏインタフェース
【図１】
2010020763.tif 000003
【図２Ａ】
2010020763.tif 000004
【図２Ｂ】
2010020763.tif 000005
【図２Ｃ】
2010020763.tif 000006
【図２Ｄ】
2010020763.tif 000007
【図３】
2010020763.tif 000008
【図４】
2010020763.tif 000009
【図５】
2010020763.tif 000010
【図６】
2010020763.tif 000011
【図７】
2010020763.tif 000012