(57)【要約】  構造解析装置（１００）は、モデル情報（１１１）を取得する。構造解析装置（１００）は、取得したモデル情報に基づき、解析対象のモデルの塊度を評価する。構造解析装置（１００）は、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する。構造解析装置（１００）は、例えば、塊度が閾値以上の場合に反復法を選択し、塊度が閾値未満の場合に直接法を選択する。塊度が大きいほど、反復法が選択されやすくなり、解析時間の短縮を図ることができる。
2017077610.tif 000002
【特許請求の範囲】
【請求項１】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【請求項２】
前記塊度は、前記モデルの体積と、前記モデルを覆う最小の球または立方体の体積と、に基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項３】
前記塊度は、前記モデルの体積と前記モデルの質量と前記モデルの主慣性モーメントとに基づき評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項４】
前記塊度は、前記モデルの要素数と節点数とに基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項５】
前記塊度は、前記モデルに含まれる各要素の解析自由度数の総和と前記モデル全体の解析自由度数とに基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項６】
前記塊度は、前記モデルの節点数のうちの前記モデルの表面上にある節点数と、前記モデルの節点数のうち前記モデルの表面上にある節点以外の節点数と、の比に基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項７】
前記塊度は、前記モデルの節点数のうちの前記モデルの表面上にある節点数と、前記モデルの節点数と、の比に基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項８】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記塊度が大きいほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項９】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模を選択に反映させる、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１０】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さが大きいほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１１】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルのモデル規模が大規模であるほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１２】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析に用いるアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模に基づいて、評価して得られた前記塊度に応じたアルゴリズムの選択基準を変更する、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１３】
前記境界条件の強さは、前記境界条件に含まれる拘束条件による前記モデルの拘束面積、拘束自由度に基づいて算出されることを特徴とする請求項１２に記載の構造解析方法。
【請求項１４】
前記モデル規模の評価は、前記モデル情報と前記メッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいて行われる、ことを特徴とする請求項１２に記載の構造解析方法。
【請求項１５】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度及び／又は境界条件の強さ及び／又はモデル規模を評価し、
前記モデルの塊度及び／又は境界条件の強さ及び／又はモデル規模の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【請求項１６】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【請求項１７】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造解析方法、及び構造解析プログラムに関する。
【背景技術】
【０００２】
従来、有限要素法を用いて構造解析を行う技術が公知である。有限要素法を用いた構造解析では、例えば、連立一次方程式を解くことにより構造物の変位や応力を求める。この連立一次方程式の求解は、計算量が多く計算に時間がかかるため、計算機を用いて高速に解くための様々な技術がある。連立一次方程式の解法としては、例えば、大きな分類として直接法や反復法などが挙げられる。直接法は、例えば、係数行列を三角化することで解を直接求める解法であるのに対して、反復法は、反復計算により近似解を求める解法である。【０００３】
直接法や反復法に代表される連立一次方程式求解のアルゴリズムは、計算機をより効率的に使用して、より高速に解くための様々な技術開発が行われてきている。例えば、非特許文献１には疎行列向きの直接法のアルゴリズムが紹介されている。非特許文献２には並列処理に適した反復法のアルゴリズムとその計算例が紹介されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】山本有作:“疎行列連立一次方程式の直接解法”，計算工学，Ｖｏｌ．１１，Ｎｏ．４，ｐｐ．１４−１８（２００６）
【非特許文献２】大原敏靖，川島康弘，藤野清次：“Ｈｙｂｒｉｄ反復法ソルバによるＦＥＭ構造解析の処理時間短縮”，計算工学講演会論文集  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔａｔｉｏｎａｌ  Ｅｎｇｉｎｅｅｒｉｎｇ  ａｎｄ  Ｓｃｅｉｅｎｃｅ  １９，４ｐ，２０１４−０６
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、連立一次方程式の解法には得手不得手があり、全ての問題を確実に、かつ最も速く解く解法は存在しない。したがって、従来、解析対象のモデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを特定の解法として数値解析を行うと、モデルによっては他の解法よりも解析時間が長くなるという問題点がある。例えば直接法は、連立一次方程式の特性により、非ゼロ領域が増えると演算量やメモリ量がより多く必要となり、解析時間が長くなる場合がある。一方、例えば、反復法は、連立一次方程式の特性により解が収束しにくいことがあり、解析時間が長くなる場合がある。【０００６】
１つの側面では、本発明は、解析時間の短縮化を図ることができる構造解析方法、及び構造解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、モデル情報を取得し、取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する構造解析方法、及び構造解析プログラムが提案される。
【発明の効果】
【０００８】
本発明の一態様によれば、解析時間の短縮化を図ることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明にかかる構造解析装置による一動作例を示す説明図である。
【図２】図２は、有限要素法の構造解析に用いる要素と節点を示す説明図である。
【図３】図３は、構造解析装置のハードウェア構成例を示すブロック図である。
【図４】図４は、構造解析装置の機能的構成例を示すブロック図である。
【図５】図５は、モデル情報例を示す説明図である。
【図６】図６は、閾値の導出に用いるモデル例を示す説明図である。
【図７】図７は、要素数が５０００の場合の閾値の導出例を示す説明図である。
【図８】図８は、要素数が１００００の場合の閾値の導出例を示す説明図である。
【図９】図９は、モデル規模に応じた閾値例を示す説明図である。
【図１０】図１０は、塊度の算出例と解法の選択例を示す説明図である。
【図１１】図１１は、拘束条件が片持ちの場合における塊度の閾値の導出例を示す説明図である。
【図１２】図１２は、拘束条件が両端固定の場合における塊度の閾値の導出例を示す説明図である。
【図１３】図１３は、拘束条件の強さによる塊度の閾値の補正及び解法の選択例を示す説明図である。
【図１４】図１４は、解法の選択例を示す説明図である。
【図１５】図１５は、構造解析装置による構造解析処理手順例１を示すフローチャートである。
【図１６】図１６は、構造解析装置による構造解析処理手順例２を示すフローチャートである。
【図１７】図１７は、システム適用例を示す説明図である。
【図１８】図１８は、解析データベース例を示す説明図である。
【図１９】図１９は、システムにおける実績に基づく解法の選択例を示す説明図である。
【図２０】図２０は、サーバの状態とメモリ量の管理例を示す説明図である。
【図２１】図２１は、システムによる構造解析処理手順例を示すフローチャート（その１）である。
【図２２】図２２は、システムによる構造解析処理手順例を示すフローチャート（その２）である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、本発明にかかる構造解析方法、及び構造解析プログラムの実施の形態を詳細に説明する。
【００１１】
図１は、本発明にかかる構造解析装置による一動作例を示す説明図である。構造解析装置１００は、解析対象のＦＥＭ（Ｆｉｎｉｔｅ  Ｅｌｅｍｅｎｔ  Ｍｅｔｈｏｄ：有限要素法）モデルについて有限要素法を用いた構造解析を行うコンピュータである。ここで、有限要素法とは、微分方程式を近似的に解くための数値解析の方法である。構造解析による評価では、例えば、剛性の指標として変位、強度の指標として応力などが評価される。
【００１２】
解析対象のＦＥＭモデルは、以降単にモデル、解析対象モデルなどとも称する。有限要素法では、方程式が定義された領域を小領域に分割し、各小領域における方程式を共通な補間関数で近似する方法である。ここで、小領域を要素１０２と称する。要素１０２は、各頂点などに節点１０３が配置される。有限要素法を用いた構造解析では、方程式が定義された領域が解析対象の構造物である。解析対象モデルは、解析対象の構造物を近似させることによりＦＥＭによる構造解析が可能な状態にしたものであり、シミュレーション空間上に配置されるものである。
【００１３】
シミュレーション空間とは、解析対象の物理的な構造物の内部とその構造物の外部の空間とを含む解析領域をコンピュータ上に表すために設定された空間である。解析対象モデルでは、解析対象の構造物を複数の要素１０２に分割し、要素１０２の集まりとして全体の形状を表す。要素１０２の集まりをメッシュとも称する。メッシュにおける１つの格子のサイズをメッシュサイズとも称する。
【００１４】
１つの要素１０２の形状は、２次元の場合に四角形や三角形などであり、３次元の場合に四面体や五面体や六面体などである。図１では、要素１０２として四面体の二次要素を例に挙げるが、要素１０２の形状の例や要素１０２と節点１０３との関係については図２を用いて詳細に説明する。
【００１５】
開発者は、例えば、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）を用いて構造物をポリゴンで表した３次元形状の立体モデルの立体モデル情報を作成する。立体モデル情報は例えばポリゴンの座標データなどを有する。つぎに、開発者は、ＣＡＥ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）を用いて、設計した構造物が要求性能を満たすかどうかを、実際に構造物を作る前にコンピュータ上でシミュレーションする。ここで、ＣＡＥは、例えばプリプロセッサとソルバーとポストプロセッサと呼ばれる３つのソフトウェアを有する。
【００１６】
まず、ＣＡＥのプリプロセッサは、メッシュ分割や境界条件定義を行うことによりＦＥＭモデルを表すモデル情報を作成することができる。つぎに、ＣＡＥのソルバーは、モデル情報１１１が表すＦＥＭモデルに対して数値解析を行う構造解析ソルバーである。最後に、ＣＡＥのポストプロセッサは、ＣＡＥのソルバーによって得られた解析結果の可視化を行う。
【００１７】
従来、ＦＥＭによる構造解析では、力のつりあい方程式を解くことにより、構造物の変位や応力を求めることができる。力のつりあい方程式は連立一次方程式である。連立一次方程式は「Ｋｕ＝ｆ」とも表す。Ｋは剛性行列である。ｕはそれぞれの節点１０３の自由度ごとの変位を表すベクトルである。ｕは解析で求める未知ベクトルである。ｆは荷重を表すベクトルである。ｆは、荷重条件を設定した場合、各節点１０３の自由度に対応した荷重値である。
【００１８】
従来、連立一次方程式の求解は、計算量が多く計算に時間がかかるため、計算機を用いてより高速に解くための様々な手法が開発されている。連立一次方程式の解法として、直接法や反復法がある。直接法は、例えば、係数行列を三角化することで解を直接求める解法である。直接法としては、例えば、マルチフロンタル法などがある。反復法は、反復計算により近似解を求める解法である。反復法は、例えば、前処理付きＣＧ法などがある。
【００１９】
しかしながら、従来技術では、解析対象モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを特定の解法として数値解析を行うと、モデルによっては他の解法よりも解析時間が長くなるという問題点がある。例えば、一般的に直接法は反復法よりメモリ量が多く必要である。また、直接法は連立一次方程式の特性により、非ゼロ領域が増えると演算量やメモリ量がより多く必要となり、解析時間が長くなる場合がある。例えば、直接法は、解析対象モデルの形状が塊ものの場合に解析時間が長くなることがある。一方、例えば、反復法は、連立一次方程式の特性により解が収束しにくいことがあり、解析時間が長くなる場合がある。例えば、反復法は、解析対象モデルの形状が板梁ものの場合に、解析時間が長くなることがある。
【００２０】
そこで、本実施の形態では、構造解析装置１００は、連立一次方程式の特性として、解析対象モデルの形状を表す情報に基づき解析対象モデルの塊度を評価し、有限要素法を用いた連立一次方程式による解法を、例えば、直接法と反復法とから選択する。これにより、解析モデルの形状が塊ものに近い形状であるか板梁ものに近い形状であるかを判定することができる。したがって、連立一次方程式の特性に応じた解法を選択することができ、解析時間の短縮化を図ることができる。
【００２１】
まず、構造解析装置１００は、モデル情報１１１を取得する。モデル情報１１１は、例えば、解析対象モデル１０１の形状を表す情報を含む。モデル情報１１１の詳細な例は、後述する図５を用いて説明する。
【００２２】
つぎに、構造解析装置１００は、取得したモデル情報１１１に基づき、解析対象モデル１０１の塊度を評価する。
【００２３】
塊度は、例えば、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、厚く寄り集まった形状であるかの指標値である。塊度が高いほど、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、厚く寄り集まった形状である可能性が高いことを示す。塊度が低いほど、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、薄く平たくなった形状である可能性が高いことを示す。
【００２４】
または、塊度は、例えば、モデルによって表される構造物に含まれる材料や部材が形成する構造物の形状が厚く寄り集まった形状であるかの指標値である。塊度が高いほど、構造物に含まれる材料や部材が形成する構造物の形状が厚く寄り集まった形状である可能性が高いことを示す。塊度が低いほど、構造物に含まれる材料や部材が形成する構造物の形状が薄く平たかったり、細かったりする可能性が高いことを示す。ここで、例えば、要素群、材料、または部材が薄く平たかったり、細かったりする形状のモデルや構造物を板梁ものとも称する。また、例えば、要素群、材料または部材が厚く寄り集まった形状のモデルや構造物を塊ものとも称する。
【００２５】
解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１の体積に基づいて評価されてもよい。また、解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１の体積と解析対象モデル１０１の重さに関する情報に基づいて評価されてもよい。解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１に含まれる要素１０２や節点１０３に基づいて評価されてもよい。具体的には、後述する判定方法１〜５などにより解析対象モデル１０１の塊度が評価される。
【００２６】
そして、構造解析装置１００は、解析対象モデル１０１の塊度の評価結果に基づいて、解析対象モデル１０１の有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを、例えば、直接法とするか反復法とするか選択する。構造解析装置１００は、例えば、塊度が閾値以上であれば、反復法を選択し、塊度が閾値未満であれば、直接法を選択する。これにより、塊度が大きいほど、反復法を選択することができる。図１の例では、塊度ａｍが閾値ａｔｈ未満であるため、構造解析装置１００は、直接法を選択する。
【００２７】
上述したように、解析対象モデル１０１が板梁ものであると、反復法において解が収束せず解析に時間がかかる。このため、塊度が小さい場合に、直接法を選択することにより、解析時間の短縮を図ることができる。また、解析対象モデル１０１が塊ものであると、直接法における、係数行列や三角行列の非ゼロ領域が増え解析に時間がかかる。このため、塊度が大きい場合に、反復法を選択することにより、解析時間の短縮を図ることができる。このように、塊度によって解析対象モデル１０１の形状の特徴を判定することで、連立一次方程式の特性を判定し、解析時間の短縮化を図ることができる。
【００２８】
図２は、有限要素法の構造解析に用いる要素と節点を示す説明図である。図２（１）に示すように、構造物は、例えば、連続体である。上述したように、ＣＡＥのプリプロセッサは、３次元のシミュレーション空間上に作成された構造物の立体モデルを近似することによりＦＥＭモデルを作成する。
【００２９】
図２（２）に示すように、要素タイプは、３次元のソリッド要素、２次元のシェル要素、１次元のビーム要素やトラス要素、０次元の質量要素などが挙げられる。ソリッド要素の形状は、六面体、五面体、四面体などがある。シェル要素の形状は、四角形、三角形などがある。また、ビーム要素やトラス要素の形状は、線である。質量要素の形状は、点である。
【００３０】
図２（３）に示すように、例えば、要素形状が四面体の場合、一次要素と二次要素のように節点の定義方法が複数ある。一次要素の場合、要素に含まれる節点は、四面体の頂点である。二次要素の場合、節点は、四面体の頂点と、頂点間を結ぶ線の中心点と、である。このように、要素形状や節点の定義方法により、要素を構成する節点数が異なる。本実施の形態では、要素タイプとして四面体の二次要素を用いて説明する。
【００３１】
ここで、ソリッド要素は、固体要素とも称する。また、シェル要素は、例えば、板要素とも称する。また、ビーム要素は、梁要素とも称する。これらの要素タイプにより、それぞれ後述する構成節点の解析自由度数が異なる。
【００３２】
（構造解析装置１００のハードウェア構成例）
図３は、構造解析装置のハードウェア構成例を示すブロック図である。図３において、構造解析装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０３と、ディスクドライブ３０４と、ディスク３０５と、を有する。また、構造解析装置１００は、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０６と、キーボード３０７と、マウス３０８と、ディスプレイ３０９と、を有する。また、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、ディスクドライブ３０４と、Ｉ／Ｆ３０６と、キーボード３０７と、マウス３０８と、ディスプレイ３０９とは、バス３００によってそれぞれ接続される。
【００３３】
ここで、ＣＰＵ３０１は、構造解析装置１００の全体の制御を司る。ＲＯＭ３０２は、ブートプログラムなどのプログラムを記憶する。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリアとして使用される。ディスクドライブ３０４は、ＣＰＵ３０１の制御にしたがってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、磁気ディスク、光ディスクなどが挙げられる。
【００３４】
Ｉ／Ｆ３０６は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク３１０に接続され、このネットワーク３１０を介して他の装置に接続される。そして、Ｉ／Ｆ３０６は、ネットワーク３１０と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ３０６には、例えばモデムやＬＡＮアダプタなどを採用することができる。
【００３５】
キーボード３０７やマウス３０８は、利用者の操作により、各種データの入力を行うインターフェースである。ディスプレイ３０９は、ＣＰＵ３０１の指示により、データを出力するインターフェースである。
【００３６】
また、図示を省略するが、構造解析装置１００には、カメラから画像や動画を取り込む入力装置やマイクから音声を取り込む入力装置が設けられていてもよい。また、図示を省略するが、構造解析装置１００には、プリンタなどの出力装置が設けられていてもよい。
【００３７】
（構造解析装置１００の機能的構成例）
図４は、構造解析装置の機能的構成例を示すブロック図である。構造解析装置１００は、取得部４０１と、第１評価部４０２と、第２評価部４０３と、第３評価部４０４と、選択部４０５と、補正部４０６と、を有する。取得部４０１から補正部４０６までの制御部の処理は、例えば、図３に示すＣＰＵ３０１がアクセス可能なＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置に記憶されたプログラムにコーディングされている。そして、ＣＰＵ３０１が記憶装置から該プログラムを読み出して、プログラムにコーディングされている処理を実行する。これにより、制御部の処理が実現される。また、制御部の処理結果は、例えば、ＲＡＭ３０３、ＲＯＭ３０２、ディスク３０５などの記憶装置に記憶される。
【００３８】
取得部４０１は、モデル情報１１１を取得する。モデル情報１１１は、解析対象のモデルを表す情報である。モデル情報１１１は、例えば、モデルの形状を表す情報を含む。また、モデルの形状を表す情報は、モデルに含まれる要素の要素情報、要素に含まれる節点及び節点の位置情報などが挙げられる。モデルの形状を表す情報は、例えば、体積、表面積、などの情報であってもよい。また、取得されるモデル情報１１１は、例えば、モデルの材質を表す情報を含んでいてもよい。また、取得されるモデル情報１１１は、例えば、解析時にモデルに設定される境界条件の情報を含んでいてもよい。
【００３９】
図５は、モデル情報例を示す説明図である。図５（１）〜図５（３）には、モデル情報１１１として、モデルに含まれる要素の要素情報、要素に含まれる節点及び節点の位置情報などを示す。また、図５（４）には、モデル情報１１１として、モデルの形状を表す情報やモデルの材質を表す情報や解析時にモデルに設定される境界条件を表す情報などを示す。ここで、境界条件とは、構造物の負荷状態を表すために境界に設定する条件である。境界条件には、例えば、拘束条件と荷重条件の２種類がある。拘束条件は、解析対象の構造物に対して、どの部位をどのように固定するか、どのくらい強制的な変位を与えるか、などの条件のことである。荷重条件はどの部位にどのような方向でどのくらい力を加えるかなどの条件である。
【００４０】
図５（１）では、モデル情報１１１は、モデルＩＤ、要素ＩＤのフィールドを有する。モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。要素ＩＤのフィールドには、解析対象のモデルに含まれる要素を識別する識別情報が設定される。図５（１）の例では、モデルｍａは、例えば、要素ｅｎ１〜ｅｎ３を有する。
【００４１】
つぎに、図５（２）の例では、モデル情報１１１は、要素ＩＤ、節点ＩＤのフィールドを有する。要素ＩＤのフィールドには、要素を識別する識別情報が設定される。節点ＩＤのフィールドには、要素に含まれる節点を識別する識別情報が設定される。図５（２）の例では、要素ｅｎ１は、節点ｎｎ１〜ｎｎ４を有する。
【００４２】
そして、図５（３）の例では、モデル情報１１１は、節点ＩＤ、節点位置情報のフィールドを有する。節点ＩＤのフィールドには、節点を識別する識別情報が設定される。節点位置情報のフィールドには、節点の位置情報が設定される。節点の位置情報は、例えば、節点のｘ軸、ｙ軸、ｚ軸の座標値である。
【００４３】
図５（１）〜（３）に示すモデル情報１１１によって、構造解析装置１００は、モデルの形状を特定可能である。例えば、構造解析装置１００は、モデルの体積、表面積などを算出可能である。
【００４４】
つぎに、図５（４）の例では、モデル情報１１１は、モデルＩＤ、体積、質量、主慣性モーメント、節点数、要素タイプ、メッシュサイズ、要素数、解析自由度数、最小の球の体積、表面積、境界条件などのフィールドを有する。モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。体積のフィールドには、モデルの体積が設定される。質量のフィールドには、モデルの質量が設定される。主慣性モーメントのフィールドには、モデルの主慣性モーメントが設定される。ここで、体積や質量や主慣性モーメントは、モデルの材質や形状から決定される情報である。
【００４５】
要素タイプのフィールドには、図２に示したような要素タイプを識別する情報が設定される。また、解析自由度数のフィールドには、例えば、モデルに含まれる各節点の自由度数の総和が設定される。最終的な解析自由度数は、ＣＡＥのソルバー内部で行われる連立一次方程式の組立が完了しないと判明しない。このため、解析自由度数は、例えば、節点数×１節点あたりの自由度数などによる概算値が設定されてもよい。
【００４６】
メッシュサイズのフィールドには、メッシュ分割する際の代表的な１要素の要素長が設定される。板要素や梁要素などの場合には、板厚や断面積など断面特性の情報があわせて設定されてもよい。
【００４７】
節点数のフィールドには、モデルに含まれる節点の数が設定される。また、要素数のフィールドには、モデルに含まれる要素の数が設定される。要素数については、メッシュサイズと、形状の体積と、要素タイプと、によって予測値を算出することが可能である。また、節点数は、要素数と、要素タイプと、塊度に基づいて予測値を算出することが可能である。また、要素数と節点数とについては、図５（１）〜（３）に示すモデル情報１１１がすでにある場合、当該モデル情報１１１に基づいて特定可能である。
【００４８】
最小の球の体積のフィールドには、モデルを覆う最小の球の体積が設定される。ここでは、最小の球の体積のフィールドがあるが、これに限らず、例えば、モデルを覆う最小の立方体の体積のフィールドがあってもよい。この球の体積または立方体の体積は後述する判定方法１において塊度の算出時に用いられる。
【００４９】
表面積のフィールドには、モデルの表面積が設定される。境界条件のフィールドは、例えば、拘束条件、拘束面積、荷重条件のフィールドを有する。そして、拘束条件のフィールドには、例えば、拘束条件が設定される。拘束条件としては、例えば、片側端面固定、両端固定、全周固定などが挙げられる。拘束面積のフィールドには、モデルの表面積のうち、拘束条件に応じて拘束される面積が設定される。拘束自由度数のフィールドには、例えば、１節点当たりの自由度数のうち拘束される自由度数が設定される。例えば、１節点当たりの自由度が３方向である場合に、３方向のうち何方向を拘束するかが拘束自由度数である。荷重条件のフィールドには、荷重条件が設定される。荷重条件としては、例えば、各方向における重力荷重などが挙げられる。
【００５０】
つぎに、図４に示す第１評価部４０２は、取得部４０１が取得したモデル情報１１１に基づいて、解析対象のモデルの塊度を評価する。そして、選択部４０５は、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する。
【００５１】
本実施の形態では、塊度の評価と塊度による判定について、判定方法１〜判定方法５までを例に挙げる。
【００５２】
（判定方法１）
第１評価部４０２は、判定方法１において、ある空間に対する解析対象のモデルの充填度を塊度として算出する。具体的に、第１評価部４０２は、例えば、解析対象のモデルの体積と、モデルを覆う最小の特定種類の立体の体積と、の比率を塊度として算出する。ここでの特定種類の立体とは、充填に用いることが可能な立体である。充填とは、空間充填や球充填である。充填に用いることが可能な立体とは、例えば、球体、立方体、菱形十二面体などが挙げられる。ここでは、球体を例に挙げる。第１評価部４０２は、例えば、モデルの体積と、モデルを覆う最小の球体の体積と、の比率を塊度として算出する。第１評価部４０２は、例えば、以下式（１）に基づいて塊度を算出する。
【００５３】
塊度＝モデルの体積／モデルを覆う最小の球体の体積・・・式（１）
【００５４】
この判定方法１により、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【００５５】
（判定方法２）
第１評価部４０２は、判定方法２において、解析対象のモデルが重いかどうかの指標を塊度として算出する。具体的に、第１評価部４０２は、例えば、慣性モーメントによって解析対象のモデルの主慣性モーメントと質量と体積とに基づいて塊度を算出する。第１評価部４０２は、例えば、以下の式（２）に基づいて塊度を算出する。
【００５６】
塊度＝１／（（Ｉｘ×Ｉｙ×Ｉｚ）／（Ｍ＾３）／（Ｖ＾２））・・・式（２）
ここで、Ｉｘ、Ｉｙ、Ｉｚはモデルの主慣性モーメント、Ｍはモデルの質量、Ｖはモデルの体積である。
【００５７】
この判定方法２により、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【００５８】
（判定方法３）
第１評価部４０２は、判定方法３において、解析対象モデルの全要素数と全節点数との比を塊度として算出する。具体的に、第１評価部４０２は、以下式（３）によって塊度を算出する。
【００５９】
塊度＝全要素数／全節点数・・・式（３）
【００６０】
ここで、節点は複数の要素により共有されるため、モデル全体の節点数は、要素数×１要素当たりの節点数より少なくなる。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、「全要素数／全節点数」が大きな値であるほど、塊ものである可能性が高くなる。一方、「全要素数／全節点数」が小さな値であるほど、板梁ものである可能性が高くなる。塊度が高いと、共有化される節点が相対的に多くなり、連立一次方程式の係数行列や三角行列の非ゼロ領域が増え、直接法の解析時間が長くなる。このため、塊度が高い場合に、反復法が選択されることにより解析時間の短縮化を図ることができる。また、板梁ものについて反復法を選択すると、収束が遅く、解析時間が長くなる。塊度が低い場合に、直接法が選択されることにより解析時間の短縮化を図ることができる。
【００６１】
（判定方法４）
第１評価部４０２は、判定方法例４において、解析対象モデルの解析自由度数に基づく指標値を塊度として算出する。具体的に、第１評価部４０２は、例えば、要素ごとの解析自由度数のモデル全体での総和と、モデル全体の解析自由度数と、の比を塊度として算出する。第１評価部４０２は、例えば、以下式（４）によって塊度を算出する。
【００６２】
塊度＝要素ごとの解析自由度数のモデル全体での総和／モデル全体の解析自由度数・・・式（４）
【００６３】
要素ごとの解析自由度数のモデル全体での総和は、１要素当たりの解析自由度数の合計値である。より具体的には、要素ごとの解析自由度数のモデル全体での総和は、要素数×１要素当たりの節点数×１節点当たり自由度数である。モデル全体の解析自由度数は、連立一次方程式の次元数であり、未知の場合はモデル全体の節点数×１節点当たり自由度数−モデル全体の拘束自由度数で算出できる。
【００６４】
要素数が５０００であり、１要素当たりの節点数が１０であり、節点数が８０００であり、１節点当たりの自由度数が３を例に挙げる。要素ごとの解析自由度数のモデル全体での総和は、５０００×１０×３である。これに対して、モデル全体の解析自由度数は、モデル全体の拘束自由度数を無視すれば、８０００×３である。そして、塊度は、１５００００／２４０００となる。
【００６５】
上述したように、節点は複数の要素により共有されるため、モデル全体の節点数は、要素数×１要素当たりの節点数より少ない。解析対象のモデルが、塊ものであると、節点が複数の要素により共有される可能性が高くなる。これに対して、解析対象のモデルが板梁ものであると、節点が表面にある可能性が高くなり、節点が複数の要素により共有される数は塊ものよりは相対的に小さくなる。塊度が高いと、共有化される節点が相対的に多くなり、連立一次方程式の係数行列や三角行列の非ゼロ領域が増え、直接法の解析時間が長くなる。このため、塊度が高い場合に、反復法が選択されることにより解析時間の短縮化を図ることができる。また、板梁ものについて反復法を選択すると、収束が遅く、解析時間が長くなる。塊度が低い場合に、直接法が選択されることにより解析時間の短縮化を図ることができる。
【００６６】
また、判定方法４によれば、要素タイプが異なるモデル間であっても塊度の比較を行うことができる。このため、要素タイプが異なっていても同じ閾値で判定を行うことも可能であり、解法の選択を簡単に行うことができる。
【００６７】
（判定方法５）
第１評価部４０２は、判定方法５において、解析対象モデルの表面上の節点数によって塊度を算出する。具体的に、第１評価部４０２は、例えば、モデル全体の節点数とモデル表面上の節点数との比を塊度として算出する。また、第１評価部４０２は、判定方法５において、モデル内部にある節点数と、モデルの表面上にある節点数と、の比を塊度として算出してもよい。また、第１評価部４０２は、判定方法５において、モデルの内部にある節点数と、モデル全体の節点数と、の比を塊度として算出してもよい。モデルの内部にある節点数とは、モデルの表面上にある節点以外の節点の数である。第１評価部４０２は、例えば、以下式（５）によって塊度を算出する。
【００６８】
塊度＝モデル全体の節点数／モデル表面上の節点数・・・式（５）
【００６９】
ここで、第１評価部４０２は、図５（１）〜（３）などに示したモデル情報１１１に基づいて、モデルに含まれる各節点が内部にある節点であるか表面にある節点であるかを特定できる。
【００７０】
上述したように、モデルの形状のタイプが塊ものであると、モデル内部において共有される節点の数が多くなるため、相対的にモデル表面上の節点数が少なくなる。このため、式（５）によると、モデル全体の節点数に対してモデル表面上の節点数が少ないと、塊度が大きくなり、塊ものである可能性が高くなる。これに対して、モデルの形状のタイプが板梁ものであると、モデル内部において共有される節点の数が少なくなり、相対的にモデル表面上の節点数が多くなる。このため、モデル全体の節点数に対してモデル表面上の節点数が多いと、塊度が小さくなり、板梁ものである可能性が高くなる。
【００７１】
また、有限要素法を用いる場合に、有限要素法用に解析対象モデルが作成される。このため、要素数や節点数はモデル情報１１１を参照すれば、簡単に特定可能であり、判定方法３〜５によれば、解析法を簡単に選択することができる。
【００７２】
つぎに、選択部４０５は、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する。選択部４０５は、例えば、塊度が大きいほど、反復法を選択する。具体的に、選択部４０５は、塊度が閾値以上であるか否かによって直接法とするか反復法とするかを選択する。選択部４０５は、例えば、塊度が閾値以上であれば、反復法を選択し、塊度が閾値未満であれば、直接法を選択する。これにより、塊度が大きいほど、反復法が選択されやすくなる。閾値は、予め設定してＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置に記憶させておく。
【００７３】
つぎに、選択部４０５による詳細な選択例の説明の前に、選択部４０５による選択時の閾値の設定方法について説明する。ここでは、閾値の設定方法を構造解析装置１００が行うとして説明するが、これに限らず、例えば、構造解析装置１００と異なる装置が閾値を決定しておき、構造解析装置１００に閾値を提供してもよい。
【００７４】
まず、構造解析装置１００は、例えば、複数のモデルの各々について塊度を算出する。また、構造解析装置１００は、複数のモデルの各々について、直接法及び反復法による数値解析を実行する。構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の塊度を線形補間により求めて閾値とする。
【００７５】
図６は、閾値の導出に用いるモデル例を示す説明図である。モデルｍ１〜モデルｍ４を例に挙げて閾値の導出について説明する。モデルｍ１の寸法は、例えば、１０×１００×１０００であり、形状のタイプは板梁ものである。モデルｍ２の寸法は、例えば、５０×１００×１０００であり、形状のタイプは板梁ものである。モデルｍ３の寸法は、例えば、５０×１００×２００であり、形状のタイプは塊ものである。モデルｍ４の寸法は、例えば、２５０×５００×１０００であり、形状のタイプは塊ものである。
【００７６】
本実施の形態では、モデルｍ１〜モデルｍ４を要素数が５０００程度になるようにメッシュ分割した場合と、要素数が１００００程度となるようにメッシュ分割した場合と、の各々について、各判定方法での塊度と解析時間とによって閾値を設定する例を示す。
【００７７】
図７は、要素数が５０００の場合の閾値の導出例を示す説明図である。図７において（１）〜（１１）には判定方法で用いる各数値と、（１２）と（１３）には解析時間を示す。
【００７８】
まず、構造解析装置１００は、例えば、上述したように、判定方法１を用いて、モデルの体積／モデルを覆う最小の球体の体積によって塊度を求める。モデルの体積は図７（１）に示し、モデルを覆う最小の球体の体積は図７（６）に示す。
【００７９】
例えば、判定方法１を用いたモデルｍ１の塊度は、「１．００Ｅ＋０６／５．３２Ｅ＋０８」によって「１．８８Ｅ−０３」となる。
【００８０】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法２を用いて、「（主慣性モーメントＩｘ×主慣性モーメントＩｙ×主慣性モーメントＩｚ）／（質量＾３）／（モデルの体積＾２）」によって塊度を求める。主慣性モーメントＩｘは図７（３）に示し、主慣性モーメントＩｙは図７（４）に示し、主慣性モーメントＩｚは図７（５）に示す。質量は図７（２）に示す。
【００８１】
例えば、判定方法２を用いたモデルｍ１の塊度は、「１／（（６．５４Ｅ＋０５×６．６１Ｅ＋０５×６．６１Ｅ＋０３）／７．８５＾３／１．００Ｅ＋０６）」によって「１．６９Ｅ−０１」となる。
【００８２】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法３を用いて、「モデルの要素数／モデルの節点数」によって塊度を求める。モデルの要素数は（８）に示し、モデルの節点数は図７（７）に示す。
【００８３】
例えば、判定方法３を用いたモデルｍ１の塊度は、「４６６０／８６９３」によって「５．３６Ｅ−０１」となる。
【００８４】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法４を用いて、「各要素ごとの解析自由度数の総和／解析自由度数」によって塊度を求める。各要素ごとの解析自由度数の総和は、図７（１０）に示す。解析自由度数は、図７（９）に示す。
【００８５】
例えば、判定方法４を用いたモデルｍ１の塊度は、「（４６６０×３×１０）／２５９４４」によって「５．３９」となる。上述したように、各要素ごとの解析自由度数の総和は、要素数×１節点当たりの自由度数×１要素当たりの節点数であり、「４６６０×３×１０」によって「１３９８００」となる。要素タイプは四面体の二次要素である。
【００８６】
そして、構造解析装置１００は、例えば、上述したように、判定方法５を用いて、「モデル全体の節点数／モデル表面上の節点数」によって塊度を求める。モデル全体の節点数は図７（７）に示す。モデル表面上の節点数は図７（１１）に示す。
【００８７】
例えば、判定方法５を用いたモデルｍ１の塊度は、「８６９３／４７３０」によって「１．８４」となる。同様に、モデルｍ２〜モデルｍ４についても判定方法１〜判定方法５を用いて求める。
【００８８】
つぎに、構造解析装置１００は、例えば、モデルｍ１〜ｍ４の各々について、直接法による数値解析と、反復法による数値解析と、を行うことにより解析時間を求める。そして、構造解析装置１００は、直接法による解析時間と反復法による解析時間との比を解析方法の性能比として求める。
【００８９】
図７の例では、モデルｍ２の性能比とモデルｍ３の性能比との間に性能比１がある。そこで、構造解析装置１００は、モデルｍ２の塊度とモデルｍ３の塊度とを線形補間して性能比が１となる場合の塊度を求める。そして、構造解析装置１００は、性能比が１となる場合の塊度を閾値として設定する。例えば、線形補間に限らず、ラグランジュ補間、スプライン補間、最小二乗法によって求めてもよい。
【００９０】
以下に判定方法１における閾値を線形補間によって求める例を示す。
閾値＝モデルｍ２の塊度＋（モデルｍ３の塊度−モデルｍ２の塊度）×（（１−モデル２の性能比）／（モデル３の性能比−モデル２の性能比））
＝（９．３７Ｅ−０３）＋（（１．５９Ｅ−０１）−（９．３７Ｅ−０３））×（（１−０．２４）／（１．４９−０．２４））
＝１．００Ｅ−０１
【００９１】
このようにして、各判定方法における閾値を求めることができる。性能比で示すように、モデルｍ２は反復法による解析時間よりも直接法による解析時間が短い。これに対して、モデルｍ３は直接法による解析時間よりも反復法による解析時間が短い。また、モデルｍ２の塊度は、モデルｍ３の塊度よりも小さい。このため、選択部４０５が、上述したように、第１評価部４０２により算出された塊度が閾値以上である場合に反復法を選択し、塊度が閾値未満である場合に直接法を選択することにより、解析時間の短縮化を図ることができる。
【００９２】
図８は、要素数が１００００の場合の閾値の導出例を示す説明図である。図８では、図７と同様に閾値を求める例であるため、詳細な説明を省略する。
【００９３】
また、図８では、図７に示した例と同様に、モデルｍ２の性能比とモデルｍ３の性能比との間に性能比１があるため、構造解析装置１００は、モデルｍ２の塊度とモデルｍ３の塊度とを線形補間して性能比が１となる場合の塊度を閾値として求める。また、図８の例では、図７に示した例と同様に、モデルｍ２は反復法による解析時間よりも直接法による解析時間が短い。これに対して、モデルｍ２により塊度が大きいモデルｍ３は直接法による解析時間よりも反復法による解析時間が短い。このため、上述したように、選択部４０５は、第１評価部４０２により算出された塊度が閾値以上であれば、反復法を選択し、閾値未満であれば、直接法を選択することにより、解析時間の短縮化を図ることができる。
【００９４】
つぎに、上述したように、図５に示す選択部４０５は、第１評価部４０２が算出した塊度と取得した閾値とを比較する。そして、選択部４０５は、塊度が閾値以上である場合、反復法を選択し、閾値未満である場合、直接法を選択する。
【００９５】
また、選択部４０５は、モデルの塊度の評価結果に基づいて、連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模を選択に反映させる。
【００９６】
選択部４０５は、モデルの塊度の評価結果に基づいて、ＦＥＭを用いる構造解析のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模に基づいて、塊度に応じたアルゴリズムの選択基準を変更する。
【００９７】
このように、直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模を選択に反映させるために、アルゴリズムの選択基準である閾値が補正されてもよいし、塊度が補正されてもよい。
【００９８】
まず、モデル規模について説明し、モデルの境界条件の強さについては、後述する。
【００９９】
解析対象モデル１０１のモデル規模が大きいと、解析する節点１０３の数が多いため、メモリ使用量が多くなる。このため、選択部４０５は、塊度に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、モデルのモデル規模を選択に反映される。モデルのモデル規模は、例えば、上述した、要素数、節点数、解析自由度数であってもよい。また、選択部４０５は、塊度に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、評価したモデル規模と、解析時に使用可能なメモリ使用量と、を選択に反映させてもよい。
【０１００】
具体的に、構造解析装置１００は、例えば、直接法を用いてモデル１０１のモデル規模を解析する場合に使用するメモリ量が、解析時に使用可能なメモリ使用量未満である場合に、直接法を選択する。一方、構造解析装置１００は、例えば、直接法を用いてモデル１０１のモデル規模を解析する場合に使用するメモリ量が、解析時に使用可能なメモリ使用量以上である場合に、反復法を選択する。
【０１０１】
例えば、モデルを解析する場合に使用するメモリ量は、要素タイプや要素数や節点数などから算出されるモデル規模に基づいて推測値を算出可能である。例えば、直接法を用いる場合に要素１つに対してどの程度のメモリ量を使用するかを予め記憶装置などに用意しておいてもよい。そして、構造解析装置１００は、解析対象モデル１０１の要素数に応じて使用するメモリ量を算出してもよい。
【０１０２】
例えば、一般的に直接法による解析の方が反復法による解析よりも精度が高いため、直接法による解析に時間がかからないことが分かる場合に、精度の向上のために、直接法を利用したい場合がある。しかし、上述したように、直接法による解析の場合、メモリの使用量が不足すると、解析に時間がかかる。このため、モデル規模に応じて解析法を選択することで、モデル規模によってメモリの使用量を推定できるため、メモリを不足させずに直接法による解析を行い、精度の向上を図りつつ、解析時間の短縮化を図ることができる。
【０１０３】
また、選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、ＦＥＭを用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルのモデル規模が大規模であるほど、反復法を選択する。
【０１０４】
第２評価部４０３は、例えば、モデル情報１１１とメッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいてモデル規模の評価を行う。例えば、モデル情報１１１が、例えば、モデルの体積などのモデルの形状を表す情報含む場合、第２評価部４０３は、モデルの体積と、メッシュサイズと、要素タイプと、に基づいて要素数を算出する。ここで算出される要素数は予測値である。また、第２評価部４０３は、例えば、モデルの要素数と、要素タイプと、塊度と、に基づいて節点数を算出する。ここで算出される節点数は、予測値となる。また、第２評価部４０３は、例えば、モデルの節点数と、要素タイプと、拘束条件と、に基づいて解析自由度数を算出する。ここで算出される解析自由度数は、予測値となる。
【０１０５】
また、図５（１）〜（３）に示したように、モデル情報１１１にモデルに含まれる要素や節点や解析自由度数の情報などがモデル情報１１１に含まれる場合、第２評価部４０３はモデル情報１１１から要素数や節点数や解析自由度数を特定してもよい。
【０１０６】
また、選択部４０５は、例えば、モデル規模が大規模であるほど、反復法を選択する。具体的に、選択部４０５は、モデルのモデル規模に応じて閾値を取得して、取得した閾値に基づいて反復法と直接法とから解析方法を選択する。
【０１０７】
図９は、モデル規模に応じた閾値例を示す説明図である。閾値テーブル９００は、例えば、判定方法及び要素数ごとに閾値を有する。判定方法は、例えば、上述した判定方法１〜判定方法５である。図９では、モデル規模の評価の一例として、要素数を挙げるが、これに限らず、上述したように節点数や解析自由度数であってもよい。
【０１０８】
閾値テーブル９００例では、要素数は、例えば、３０００、５０００、７０００、１００００である。ここで、判定方法１を例に挙げると、要素数が３０００に対応する閾値ｔｈ１１＞要素数が５０００に対応する閾値ｔｈ１２＞要素数が７０００に対応する閾値ｔｈ１３＞要素数が１００００に対応する閾値ｔｈ１４である。このように、要素数が小さいほど、閾値が大きくなる。これにより、要素数が大きいほど、閾値が小さいため、要素数が大きいほど、反復法が選択されるようになる。モデル規模が大きい場合に、直接法を用いると解析時にメモリの使用量が多く、メモリの使用量が足りなくなり、解析に時間がかかる。このため、モデル規模が大きいときに、反復法が選択されるようになることで、解析時にメモリが不足することを回避でき、解析時間の短縮化を図ることができる。
【０１０９】
選択部４０５は、閾値テーブル９００から要素数に応じた閾値を取得して、算出した塊度と取得した閾値とを比較する。具体的に、選択部４０５は、例えば、解析対象モデルの要素数が４０００以下であれば、要素数が３０００に対応する閾値を取得する。具体的に、選択部４０５は、例えば、解析対象モデルの要素数が４０００より大きく７０００以下であれば、要素数が５０００に対応する閾値を取得する。このように、要素数の範囲を設けてもよい。そして、選択部４０５は、算出した塊度が取得した閾値以上である場合に反復法を選択し、算出した塊度が取得した閾値未満である場合、直接法を選択する。
【０１１０】
ここで、図７及び図８の例では、判定方法３〜５について、要素数が５０００の場合よりも要素数が１００００の場合の方が、閾値が小さくなっている。これは同一のモデルに対して、要素数が５０００の場合よりも要素数が１００００の場合の方が、より小さいメッシュサイズで要素分割を行ったため、モデルの塊度自体が高くなったことが原因である。
【０１１１】
また、補正部４０６が、解析対象のモデルの要素数に対応する閾値を、閾値テーブル９００に含まれる各要素数に対応する閾値に対して線形補間を行うことにより算出してもよい。補正部４０６は、例えば、解析対象のモデルの要素数が７５００であれば、要素数が７０００に対応する閾値と、要素数が１００００に対応する閾値と、を線形補間して、要素数が７５００に対応する閾値を求めてもよい。また、閾値のサンプル点が多い場合、補正部４０６は、ラグランジュ補間やスプライン補間、最小二乗法などを用いて、解析対象モデルの要素数に対応する閾値を求めてもよい。
【０１１２】
これにより、塊度の評価に基づくアルゴリズムの選択時に、モデル規模が大規模であると、反復法が選択されるようになる。
【０１１３】
図１０は、塊度の算出例と解法の選択例を示す説明図である。解析対象モデルは、例えば、寸法が５０×１００×５００である。形状のタイプは不明である。
【０１１４】
第１評価部４０２は、例えば、判定方法１〜５のうちの少なくともいずれかについて、塊度を算出する。詳細な算出方法については上記の通りのため、省略する。図１０の例では、第１評価部４０２は、すべての判定方法１〜５について塊度を算出する。
【０１１５】
そして、第２評価部４０３は、例えば、解析対象モデルについての要素数及び／または節点数及び／または解析自由度数に基づいて解析対象モデルのモデル規模を評価する。ここで、モデル規模の指標値は、例えば、要素数そのものや節点数であってもよい。また、モデル規模の指標値は、例えば解析自由度数であってもよい。
【０１１６】
選択部４０５は、例えば、閾値テーブル９００から評価したモデル規模に応じて閾値を取得する。図１０の例では、要素数が４７２４であるため、選択部４０５は、例えば、閾値テーブル９００から、要素数が５０００に対応する各判定方法の閾値を取得する。要素数が５０００に対応する各判定方法の閾値として、図７の例を用いる。
【０１１７】
図１０の例では、判定方法１において、塊度「３．５５Ｅ−０２」＜閾値「１．００Ｅ−０１」であるため、選択部４０５は、直接法を選択する。
【０１１８】
図１０の例では、判定方法２において、塊度「１．３２Ｅ＋０１」＜閾値「４．０８Ｅ＋０１」であるため、選択部４０５は、直接法を選択する。
【０１１９】
図１０の例では、判定方法３において、塊度「５．９９Ｅ−０１」＜閾値「６．０４Ｅ−０１」であるため、選択部４０５は、直接法を選択する。
【０１２０】
図１０の例では、判定方法４において、塊度「６．１７」＜閾値「６．１８」であるため、選択部４０５は、直接法を選択する。
【０１２１】
図１０の例では、判定方法５において、塊度「２．４９」＜閾値「２．６４」であるため、選択部４０５は、直接法を選択する。
【０１２２】
図１０の例では、各判定方法において直接法が選択されたため、選択部４０５は、直接法を選択して数値解析を実行する。
【０１２３】
つぎに、境界条件の強さについて説明する。図５に示すモデル情報１１１において説明したように、境界条件には、拘束条件と、荷重条件とがある。境界条件の強さは、例えば、拘束条件の強さと荷重条件の弱さとのいずれかであってもよいし、拘束条件の強さと荷重条件の弱さとに基づいて評価されてもよい。
【０１２４】
拘束条件は、拘束の種類や方向、拘束する位置や領域、などが設定される。拘束条件の強さは、例えば、拘束条件に応じて解析対象モデルが拘束される強さである。拘束条件の強さは、例えば、後述するように拘束条件によって解析対象モデルの表面のうち拘束される範囲に相当する領域の面積に基づいて評価される。荷重条件は、荷重の種類、荷重の大きさや方向、荷重をかける位置や領域、などが設定される。荷重条件の弱さは、例えば、荷重条件が剛性に与える影響の大きさの逆数である。荷重条件の弱さは、例えば、荷重条件が剛性に与える影響の大きさの逆数に基づいて評価される。
【０１２５】
ここでは、拘束条件を例に挙げて説明する。選択部４０５は、モデルの塊度の評価結果に基づいて、連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの拘束条件の強さを選択に反映させる。具体的に、第３評価部４０４は、モデルの拘束面積、拘束自由度に基づいて、拘束条件の強さを算出する。拘束面積は、上述したように、拘束条件に応じてモデル内で拘束される部分の面積である。拘束自由度数は、上述したように、１節点当たりの自由度数のうち拘束される自由度数である。より具体的に、第３評価部４０４は、以下式（６）によって拘束条件の強さを算出する。
【０１２６】
拘束条件の強さ＝拘束面積／表面積×（１節点当たりの拘束自由度数／１節点当たりの自由度数）・・・式（６）
モデルに複数の拘束条件が設定されている場合は、これらの総和が、モデル全体での拘束条件の強さとなる。
【０１２７】
そして、選択部４０５は、第３評価部４０４によって算出された拘束条件の強さに基づいて補正された塊度に基づいて、アルゴリズムを選択する。
【０１２８】
選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、アルゴリズムを直接法とするかと反復法とするか選択する際に、モデルの拘束条件の強さに基づいて、評価して得られた塊度に応じたアルゴリズムの選択基準を変更する。具体的に、選択部４０５は、モデルの拘束条件の強さに基づいて補正された閾値を新たな選択基準とする。
【０１２９】
また、例えば、選択部４０５は、モデルの塊度の評価結果に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの拘束条件の強さが小さいほど、直接法を選択するようにする。従来、モデルの拘束条件が不十分な場合、反復法では収束せずに、解が求められなかったり、解析に時間がかかったりするという問題点がある。このようなモデルの場合には、直接法を用いることで、比較的安定的に解を求めることができ、解析時間の短縮化を図ることができる。また、逆にモデルの拘束条件が強い場合には、反復法を用いることで、解析時間の短縮化を図ることができる。
【０１３０】
ここでは、モデルの拘束条件の強さに基づいて閾値を補正する例を説明する。まず、拘束条件の強さに基づいて閾値を補正するために、構造解析装置１００は、拘束条件の強さが異なるモデルによって塊度の閾値を求めておく。そして、補正部４０６は、解析対象モデルの拘束条件の強さと、拘束条件の強さが異なるモデルによって求めた塊度の閾値と、に基づいて閾値を補正する。ここで、拘束条件の強さが異なるモデルによって塊度の閾値を求める処理については構造解析装置１００と異なる装置であってもよい。
【０１３１】
図１１は、拘束条件が片持ちの場合における塊度の閾値の導出例を示す説明図である。図１１には、図６に示したモデルｍ２とモデルｍ３とについて拘束条件が片持ちの場合における塊度と解析時間とを用いて塊度の閾値を求めた例を示す。また、モデルｍ２とモデルｍ３とは、５０００要素の場合を例に挙げる。モデルｍ２とモデルｍ３のハッチングされた箇所が拘束される箇所である。
【０１３２】
判定方法１〜５の各々におけるモデルｍ２とモデルｍ３の塊度の算出例については、図８に示した通りである。
【０１３３】
構造解析装置１００は、式（６）に基づいて、モデルｍ２とモデルｍ３の各々についての拘束条件の強さを算出する。ここで、１節点当たりの拘束自由度数と１節点当たりの自由度数とはいずれも３であるため、省略する。
【０１３４】
拘束条件が片持ちであり、モデルｍ２の寸法が「５０×１００×１０００」である。このため、モデルｍ２の拘束面積は、「５０×１００」によって「５．００Ｅ＋０３」となる。また、拘束条件が片持ちであり、モデルｍ３の寸法が「５０×１００×２００」である。このため、モデルｍ３の拘束面積は、「５０×１００」によって「５．００Ｅ＋０３」となる。
【０１３５】
そして、モデルｍ２についての拘束条件の強さは、「（５．００Ｅ＋０３）／（３．１０Ｅ＋０５）」によって「１．６１Ｅ−０２」となる。また、モデルｍ３についての拘束条件の強さは、「（５．００Ｅ＋０３）／（３．１０Ｅ＋０５）」によって「１．６１Ｅ−０２」となる。
【０１３６】
構造解析装置１００は、モデルｍ２とモデルｍ３との各々について、直接法と反復法との各々の数値解析を行うことにより解析時間を得る。そして、構造解析装置１００は、直接法における解析時間と、反復法における解析時間と、の性能比を算出する。
【０１３７】
モデルｍ２についての性能比は「０．２４」であり、モデルｍ３についての性能比は「１．４９」である。
【０１３８】
つぎに、構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の判定方法１〜５の各々における塊度を線形補間により求めて閾値とする。つぎに、構造解析装置１００は、この塊度の閾値に相当する拘束条件の強さを求める。具体的には、モデルｍ２の拘束条件の強さ及びモデルｍ３の拘束条件の強さと、モデルｍ２の性能比及びモデルｍ３の性能比と、に基づいて性能比が１の場合における拘束条件の強さを線形補間で算出する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１３９】
性能比が１の場合における拘束条件の強さ＝モデルｍ２の拘束条件の強さ＋（モデルｍ３の拘束条件の強さ−モデルｍ２の拘束条件の強さ）×（（１−モデルｍ２の性能比）／（モデルｍ３の性能比−モデルｍ２の性能比））
＝（１．６１Ｅ−０２）＋（（１．６１Ｅ−０２）−（１．６１Ｅ−０２））×（（１−０．２４）／（１．４９−０．２４））
＝４．９７Ｅ−０２
【０１４０】
図１２は、拘束条件が両端固定の場合における塊度の閾値の導出例を示す説明図である。図１２には、図６に示したモデルｍ２とモデルｍ３とについて拘束条件が両端固定の場合における塊度と解析時間とを用いて塊度の閾値を求めた例を示す。また、モデルｍ２とモデルｍ３とは、５０００要素の場合を例に挙げる。モデルｍ２とモデルｍ３のハッチングされた箇所が拘束される箇所である。
【０１４１】
判定方法１〜５の各々におけるモデルｍ２とモデルｍ３の塊度の算出例については、図８に示した通りである。
【０１４２】
構造解析装置１００は、式（６）に基づいて、モデルｍ２とモデルｍ３の各々についての拘束条件の強さを算出する。ここで、１節点当たりの拘束自由度数と１節点当たりの自由度数とはいずれも３であるため、省略する。
【０１４３】
拘束条件が両端固定であり、モデルｍ２の寸法が「５０×１００×１０００」であるため、モデルｍ２の拘束面積は、「５０×１００×２」によって「１．００Ｅ＋０４」となる。また、拘束条件が両端固定であり、モデルｍ３の寸法が「５０×１００×２００」であるため、モデルｍ３の拘束面積は、「５０×１００×２」によって「１．００Ｅ＋０４」となる。
【０１４４】
そして、モデルｍ２についての拘束条件の強さは、「（１．００Ｅ＋０４）／（３．１０Ｅ＋０５）」によって「３．２３Ｅ−０２」となる。また、モデルｍ３についての拘束条件の強さは、「（１．００Ｅ＋０４）／（７．００Ｅ＋０４）」によって「１．４３Ｅ−０１」となる。
【０１４５】
構造解析装置１００は、モデルｍ２とモデルｍ３との各々について、直接法と反復法との各々の数値解析を行うことにより解析時間を得る。そして、構造解析装置１００は、直接法における解析時間と、反復法における解析時間と、の性能比を算出する。
【０１４６】
モデルｍ２についての性能比は「０．３８」であり、モデルｍ３についての性能比は「２．１１」である。
【０１４７】
つぎに、構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の判定方法１〜５の各々における塊度を線形補間により求めて閾値とする。つぎに、構造解析装置１００は、この塊度の閾値に相当する拘束条件の強さを求める。具体的には、モデルｍ２の拘束条件の強さ及びモデルｍ３の拘束条件の強さと、モデルｍ２の性能比及びモデルｍ３の性能比と、に基づいて性能比が１の場合における拘束条件の強さを線形補間により算出する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１４８】
性能比が１の場合における拘束条件の強さ＝モデルｍ２の拘束条件の強さ＋（モデルｍ３の拘束条件の強さ−モデルｍ２の拘束条件の強さ）×（（１−モデルｍ２の性能比）／（モデルｍ３の性能比−モデルｍ２の性能比））
＝（３．２３Ｅ−０２）＋（（１．４３Ｅ−０１）−（３．２３Ｅ−０２））×（（１−０．３８）／（２．１１−０．３８））
＝７．２０Ｅ−０２
【０１４９】
つぎに、補正部４０６は、例えば、第３評価部４０４によって算出された拘束条件の強さに基づいて塊度の閾値を補正する。
【０１５０】
図１３は、拘束条件の強さによる塊度の閾値の補正及び解法の選択例を示す説明図である。補正部４０６は、例えば、上述の性能比が１に対応する拘束条件の強さと、解析対象モデルの拘束条件の強さとを比較して線形補間により閾値を補正する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１５１】
解析対象モデルの拘束条件の強さは、「（１．００Ｅ＋０４）／（１．６０Ｅ＋５）」によって「６．２５Ｅ−０２」となる。
【０１５２】
ここで、判定方法１を例に挙げて閾値の補正について説明する。補正後の閾値は以下のように求めることができる。判定方法１における片持ちの場合の閾値は、図１１に示すように「１．００Ｅ−０１」であり、両端固定の場合の閾値は、図１２に示すように「６．３０Ｅ−０２」である。
補正後の閾値＝片持ちの場合の閾値＋（両端固定の場合の閾値−片持ちの場合の閾値）×（（解析対象モデルの拘束条件の強さ−片持ちの場合における性能比１に対応する拘束条件の強さ）／（両端固定の場合における性能比１に対応する拘束条件の強さ−片持ちの場合における性能比１に対応する拘束条件の強さ））
＝（１．００Ｅ−０１）＋（（６．３０Ｅ−０２）−（１．００Ｅ−０１））×（（（６．２５Ｅ−０２）−（４．９７Ｅ−０２））／（（７．２０Ｅ−０２）−（４．９７Ｅ−０２））
＝７．８８Ｅ−０２
【０１５３】
また、各拘束条件における閾値と拘束条件の強さとに基づいて、解析対象モデルの拘束条件の強さを与えれば補正後の閾値を求めることが可能な関数を作成しておいてもよい。そして、補正部４０６は、関数に解析対象モデルの拘束条件の強さを与えることにより拘束条件の強さに応じた閾値を求めてもよい。
【０１５４】
また、補正部４０６は、判定方法２〜５についても判定方法１と同様に拘束条件の強さに応じた閾値を算出する。そして、選択部４０５は、算出された塊度が補正した閾値以上であるか否かによって直接法と反復法とのうちのいずれかを選択する。
【０１５５】
図１３の例では、判定方法１において、選択部４０５は、直接法を選択する。判定方法２において、選択部４０５は、直接法を選択する。判定方法３において、選択部４０５は、反復法を選択する。判定方法４において、選択部４０５は、反復法を選択する。判定方法５において、選択部４０５は、直接法を選択する。
【０１５６】
また、図１３に示すように、判定方法に応じて選択される解法が異なる場合がある。このため、選択部４０５は、複数の判定方法の各々について解法を選択し、選択結果を出力してもよい。このように、判定方法ごとの選択結果を出力することにより、利用者に最終的な解法の選択をさせてもよい。
【０１５７】
また、選択部４０５は、複数の判定方法の各々について解法を選択し、より多くの判定方法により選択された解法を最終的な解法として選択してもよい。また、選択部４０５は、複数の判定方法のうち一部の判定方法を用いて解法を選択してもよい。
【０１５８】
また、選択部４０５は、例えば、塊度と、モデル規模と、境界条件の強さと、の３つによって解法を選択してもよい。上述したように、境界条件の強さによって閾値を補正したり、モデル規模に応じて閾値を選択するだけでなく、選択部４０５は、塊度と、モデル規模と、境界条件の強さと、の各々について解法を選択してもよい。
【０１５９】
図１４は、解法の選択例を示す説明図である。塊度と、モデル規模と、境界条件の強さとの３つを変数として３次元空間に対して、直接法を選択する領域と、反復法を選択する領域と、の閾値や曲面による境界を予め設定しておいてもよい。そして、選択部４０５は、３次元空間に対して、各算出した判定値がいずれの領域に含まれるかによって直接法と反復法とから解法を選択してもよい。図１４の例では、選択部４０５は、塊度と、モデル規模と、境界条件の強さとの３つの変数のそれぞれが閾値以内である場合に、直接法を選択し、塊度と、モデル規模と、境界条件の強さとの３つの変数のいずれかが閾値以内でない場合、反復法を選択する。
【０１６０】
また、図１４の例では、閾値により境界を設けたが、曲面により境界を設けてもよい。また、塊度と、モデル規模と、境界条件の強さとの各々について複数の評価方法がある場合、選択部４０５は、複数の評価方法のうちの一部の組み合わせによりＮ次元空間として、閾値の境界により直接法と反復法とから解法を選択してもよい。複数の評価方法とは、上述したように、例えば、塊度については、判定方法１〜５、モデル規模については、節点数、要素数、解析自由度数、境界条件の強さについては、拘束条件の強さ、荷重条件の弱さなどが挙げられる。
【０１６１】
また、上述例では、選択部４０５は、反復法と直接法とのいずれかを選択するが、これに限らず、例えば、複数種類の反復法と複数種類の直接法からいずれかの解法を選択してもよいし、閾値を複数設けて複数の解法からいずれかの解法を選択してもよい。また、直接法と反復法とを例として挙げたが、これに限られるものではなく、その他の解法が含まれても良い。選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択する。ここで、閾値の設定方法については、上述した反復法と直接法の選択のための閾値の設定方法と同様に行えばよいため、詳細な説明を省略する。
【０１６２】
（構造解析装置１００による構造解析処理手順例）
図１５は、構造解析装置による構造解析処理手順例１を示すフローチャートである。構造解析装置１００は、解析対象モデルのモデル情報１１１を取得する（ステップＳ１５０１）。
【０１６３】
構造解析装置１００は、解析対象モデルの塊度を評価する（ステップＳ１５０２）。構造解析装置１００は、塊度と閾値とを比較する（ステップＳ１５０３）。
【０１６４】
塊度が閾値未満の場合（ステップＳ１５０３：閾値未満）、構造解析装置１００は、直接法を選択し（ステップＳ１５０４）、ステップＳ１５０６へ移行する。塊度が閾値以上の場合（ステップＳ１５０３：閾値以上）、構造解析装置１００は、反復法を選択し（ステップＳ１５０５）、ステップＳ１５０６へ移行する。つぎに、構造解析装置１００は、選択した解法により数値解析を実行し（ステップＳ１５０６）、一連の処理を終了する。
【０１６５】
図１６は、構造解析装置による構造解析処理手順例２を示すフローチャートである。構造解析装置１００は、解析対象モデルのモデル情報１１１を取得する（ステップＳ１６０１）。
【０１６６】
構造解析装置１００は、拘束条件の強さを評価する（ステップＳ１６０２）。構造解析装置１００は、解析対象モデルの塊度を評価する（ステップＳ１６０３）。構造解析装置１００は、解析対象モデルのモデル規模を評価する（ステップＳ１６０４）。構造解析装置１００は、モデル規模に応じた閾値を取得する（ステップＳ１６０５）。
【０１６７】
構造解析装置１００は、取得した閾値を拘束条件の強さに基づいて補正する（ステップＳ１６０６）。構造解析装置１００は、塊度と閾値とを比較する（ステップＳ１６０７）。塊度が閾値未満である場合（ステップＳ１６０７：閾値未満）、構造解析装置１００は、直接法を選択する（ステップＳ１６０８）。
【０１６８】
塊度が閾値以上である場合（ステップＳ１６０７：閾値以上）、構造解析装置１００は、反復法を選択する（ステップＳ１６０９）。構造解析装置１００は、選択した計算資源で選択した解法により数値解析を実行し（ステップＳ１６１０）、一連の処理を終了する。
【０１６９】
図１７は、システム適用例を示す説明図である。システム１７００は、例えば、クライアント端末装置１７０１と、データセンタ１７０２と、を有する。クライアント端末装置１７０１は、図１７に示すように複数であってもよい。データセンタ１７０２は、例えば、複数のサーバ１７０３を有する。クライアント端末装置１７０１とデータセンタ１７０２とはネットワーク３１０を介して接続される。データセンタ１７０２におけるサーバ１７０３の管理方法については特に限定しない。
【０１７０】
構造解析装置１００は、クライアント端末装置１７０１と、複数のサーバ１７０３と、によって実現されてもよい。例えば、取得部４０１と、第１評価部４０２から第３評価部４０４と、補正部４０６と、についてはクライアント端末装置１７０１によって実現され、選択部４０５についてはサーバ１７０３によって実現されてもよい。ここで、データセンタ１７０２のいずれのサーバ１７０３が選択部４０５による処理を行うかを予め決定していてもよい。
【０１７１】
ここで、クライアント端末装置１７０１とサーバ１７０３のハードウェア構成の詳細例については図示省略するが、図３に示した構造解析装置１００のハードウェア構成と同様であってよい。また、サーバ１７０３は、キーボード３０７マウス３０８やディスプレイ３０９などの入出力装置がなくてもよい。
【０１７２】
サーバ１７０３は、例えば、ＣＡＤとＣＡＥを実行する。そして、クライアント端末装置１７０１は、例えば、ＣＡＥによって作成されたモデル情報１１１を取得して塊度を評価する。そして、クライアント端末装置１７０１は、評価した塊度をサーバ１７０３へ送信する。また、塊度に限らず、クライアント端末装置１７０１は、評価したモデル規模や境界条件の強さをサーバ１７０３へ送信してもよい。そして、サーバ１７０３は、塊度に基づいて反復法と直接法とのいずれかの解法を選択し、選択した解法により数値解析を実行する。ここで、サーバ１７０３は、過去の解析の実績をデータベースに登録してもよい。そして、サーバ１７０３は、クライアント端末装置１７０１から受信した塊度に基づいて解法を選択してもよい。
【０１７３】
図１８は、解析データベース例を示す説明図である。解析データベース１８００は、例えば、モデルＩＤ、塊度１、塊度２、塊度３、塊度４、塊度５、境界条件の強さ、モデル規模、直接法Ａの解析時間、直接法Ｂの解析時間、反復法Ｃの解析時間、反復法Ｄの解析時間のフィールドを有する。各フィールドに情報が設定されることによりレコード（１８０１−１，１８０１−２）として記憶される。解析データベース１８００は、例えば、ＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置によって実現される。
【０１７４】
モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。塊度１のフィールドには、モデルＩＤが示すモデルの判定方法１における塊度が設定される。塊度２のフィールドには、モデルＩＤが示すモデルの判定方法２における塊度が設定される。塊度３のフィールドには、モデルＩＤが示すモデルの判定方法３における塊度が設定される。塊度４のフィールドには、モデルＩＤが示すモデルの判定方法４における塊度が設定される。塊度５のフィールドには、モデルＩＤが示すモデルの判定方法５における塊度が設定される。境界条件の強さのフィールドには、モデルＩＤが示すモデルの境界条件の強さが設定される。例えば、拘束条件の強さが設定される。モデル規模のフィールドには、モデルＩＤが示すモデルのモデル規模が設定される。例えば、要素数が設定される。
【０１７５】
直接法Ａの解析時間のフィールドには、直接法Ａを用いて数値解析した場合の解析時間が設定される。直接法Ｂの解析時間のフィールドには、直接法Ｂを用いて数値解析した場合の解析時間が設定される。反復法Ｃの解析時間のフィールドには、反復法Ｃを用いて数値解析した場合の解析時間が設定される。反復法Ｄの解析時間のフィールドには、反復法Ｄを用いて数値解析した場合の解析時間が設定される。このように、解法には様々な方法があるため、解析時間のフィールドは、準備された様々な解法や前処理の方法毎に用意される。
【０１７６】
また、図１８に示すフィールドに限らず、モデルの寸法、体積、メッシュサイズ、要素タイプなども記憶されていてもよい。また、メモリ量やＣＰＵ数などの解析実行時に割り当てられた計算資源や実際に必要だった実績値としての計算資源の情報も記憶されていてもよい。
【０１７７】
図１９は、システムにおける実績に基づく解法の選択例を示す説明図である。クライアント端末装置１７０１は、例えば、塊度、拘束条件の強さ、モデル規模などの評価結果をサーバ１７０３へ送信する。つぎに、サーバ１７０３は、クライアント端末装置１７０１から受信した評価結果に最も近い評価結果を有するレコードを解析データベース１８００から検索する。具体的に、サーバ１７０３は、評価結果と、解析データベース１８００に含まれるレコード内の評価結果と、を比較して、類似度をスコア化して最も近い評価結果を有するレコードを検出してもよい。
【０１７８】
サーバ１７０３は、例えば、検出したレコードに含まれる解法の解析時間のうち最も短い解析時間の解法を、解析対象モデルの解法として選択する。図１９の例では、反復法Ｃが選択される。サーバ１７０３は、例えば、選択した解法やモデル規模に基づいて、計算資源を決定する。図１９の例では、サーバ１７０３−１とサーバ１７０３−２とを用いて解析が行われる。計算資源の決定例については、例えば、図２０を用いて説明する。
【０１７９】
サーバ１７０３−１とサーバ１７０３−２とが、並列処理により、選択した反復法Ｃを用いて解析対象モデルに対して数値解析を行う。
【０１８０】
つぎに、サーバ１７０３は、解析結果をクライアント端末へ送信する。また、サーバ１７０３は、評価結果と、解析時間と、をレコードとして解析データベース１８００へ登録する。
【０１８１】
また、サーバ１７０３は、計算機資源が空いている場合に、解析対象モデルの解法として選択しなかった解法による数値解析を行い、解析時間を解析データベース１８００へ登録する。
【０１８２】
また、検出された最も近い評価結果について、各類似度が低い場合には、サーバ１７０３は、上述したように塊度と閾値とを比較して解法を選択してもよい。
【０１８３】
図２０は、サーバの状態とメモリ量の管理例を示す説明図である。テーブル２０００は、データセンタ１７０２内にあるサーバ１７０３の状態と資源を管理するための情報を有する。テーブル２０００は、例えば、サーバＩＤ、状態、メモリ量、ＣＰＵ数などのフィールドを有する。
【０１８４】
サーバＩＤのフィールドには、サーバ１７０３を識別する識別情報が設定される。状態のフィールドには、サーバ１７０３の状態を示す情報が設定される。図２０の例では、「使用中」と「未使用」によってサーバ１７０３の状態を表す。また、より詳細に、使用中のＣＰＵ数などによってサーバ１７０３の状態を表してもよい。
【０１８５】
メモリ量のフィールドには、サーバ１７０３が有するＲＡＭ３０３やディスク３０５のメモリ量が設定される。ＣＰＵ数のフィールドには、例えば、サーバ１７０３が有するプロセッサの数が設定される。
【０１８６】
ここで、サーバ１７０３−１〜サーバ１７０３−３については、メモリ量とＣＰＵ数が同じであるが、サーバ１７０３−４は、サーバ１７０３−１〜サーバ１７０３−３よりもメモリ量及びＣＰＵ数が多い場合を例に挙げる。
【０１８７】
解析対象モデルがｘ〜ｚまでの３つの例を挙げる。ここで、解析対象モデルのモデル規模は同程度であるとする。また、解析対象モデルｘの塊度がａｘであり、解析対象モデルｙの塊度がａｙであり、解析対象モデルｚの塊度がａｚとする。塊度の関係はａｘ＞閾値＞ａｙ＞ａｚである。解析対象モデルｘの解法は反復法が選択され、解析対象モデルｙの解法は直接法が選択され、解析対象モデルｚの解法は直接法が選択される。
【０１８８】
ここで、サーバ１７０３は、直接法を選択した場合に、メモリ量が多い計算資源を選択する。サーバ１７０３は、例えば、サーバ１７０３−４を計算資源として選択する。サーバ１７０３は、例えば、反復法の場合、サーバ１７０３−１〜サーバ１７０３−３のいずれかを選択する。また、サーバ１７０３は、例えば、複数の反復法が選択可能な場合、反復法の種類に応じて、サーバ１７０３−１〜サーバ１７０３−３のうちの複数のサーバ１７０３によって同時処理を行うようにしてもよい。また、サーバ１７０３は、複数のサーバを用いた並列処理が可能な解法の場合には、複数の計算資源を選択してもよい。さらに、サーバ１７０３は、モデル情報から、効率的な計算に必要なメモリ量などの計算資源を予め見積もり、その結果に応じて適切な計算資源を選択してもよい。
【０１８９】
例えば、解析対象モデルｘについては、例えば、計算資源としてサーバ１７０３−４が選択される。解析対象モデルｙについては、例えば、計算資源としてサーバ１７０３−１が選択される。解析対象モデルｚについては、例えば、計算資源としてサーバ１７０３−２が選択される。このように、選択部４０５は、それぞれの解析対象モデルについて計算資源を選択する。
【０１９０】
また、計算資源の選択のために、テーブルを用いる例を挙げたが、特に限定しない。
【０１９１】
（システム１７００による構造解析処理手順例を示すフローチャートである。）
図２１及び図２２は、システムによる構造解析処理手順例を示すフローチャートである。ここで、システム１７００は、上述したように、クライアント端末装置１７０１と、サーバ１７０３とを有する。そのため、図２１及び図２２に示す処理については、サーバ１７０３が行ってもよいし、クライアント端末装置１７０１が行ってもよい。
【０１９２】
システム１７００は、クライアント端末装置１７０１によって解析対象モデルのモデル情報１１１を取得する（ステップＳ２１０１）。つぎに、システム１７００は、クライアント端末装置１７０１によって解析対象モデルのモデル規模を評価する（ステップＳ２１０２）。システム１７００は、クライアント端末装置１７０１によって境界条件の強さを評価する（ステップＳ２１０３）。
【０１９３】
つぎに、システム１７００は、クライアント端末装置１７０１によって解析対象モデルの塊度を評価する（ステップＳ２１０４）。システム１７００は、解析データベース１８００から、サーバ１７０３によって、解析対象モデルの評価結果に最も近い評価結果を含むレコードを検索する（ステップＳ２１０５）。システム１７００は、サーバ１７０３によって検索したレコードから最も解析時間の短い解法を選択する（ステップＳ２１０６）。つぎに、システム１７００は、サーバ１７０３によって特定した解法により数値解析を実行する（ステップＳ２１０７）。
【０１９４】
つぎに、システム１７００は、サーバ１７０３によって解析結果を出力する（ステップＳ２２０１）。そして、システム１７００は、サーバ１７０３によって評価結果と解析時間を解析データベース１８００に格納する（ステップＳ２２０２）。システム１７００は、計算機環境の負荷が高いか否かを判定する（ステップＳ２２０３）。計算機環境の負荷が高い場合（ステップＳ２２０３：Ｙｅｓ）、システム１７００は、ステップＳ２２０３へ戻る。計算機環境の負荷が高いとは、例えば、処理のないサーバ１７０３がない状態である。
【０１９５】
計算機環境の負荷が低い場合（ステップＳ２２０３：Ｎｏ）、システム１７００は、サーバ１７０３によってすべての解法で解析実行したか否かを判断する（ステップＳ２２０４）。すべての解法で解析実行していないと判断された場合（ステップＳ２２０４：Ｎｏ）、システム１７００は、未実行の解法のうち検索したレコードの中で最も解析時間が短い解法により数値解析を実行する（ステップＳ２２０５）。そして、システム１７００は、解析時間を解析データベース１８００に格納し（ステップＳ２２０６）、ステップＳ２２０３へ戻る。すべての解法で解析実行したと判断された場合（ステップＳ２２０４：Ｙｅｓ）、システム１７００は、一連の処理を終了する。
【０１９６】
以上説明したように、構造解析装置１００は、解析対象のモデルの形状を表す情報に基づきモデルの塊度を評価し、有限要素法を用いた連立一次方程式による解法を選択する。これにより、モデルの形状の特徴を判定することで、連立一次方程式の特性に応じた解法が選択されるため、解析時間の短縮化を図ることが可能となる。
【０１９７】
また、塊度は、モデルの体積と、モデルを覆う最小の球または立方体の体積と、に基づいて評価される。これにより、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【０１９８】
また、塊度は、モデルの体積とモデルの質量とモデルの主慣性モーメントとに基づき評価される。このように、モデルの形状とモデルの重さとに応じて解法が選択される。これにより、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【０１９９】
また、塊度は、モデルの要素数と節点数とに基づいて評価される。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、全要素数／全節点数が大きな値であれば、塊ものである可能性が高くなり、全要素数／全節点数が小さな値であれば、板梁ものである可能性が高くなる。このため、解析対象モデルが塊ものに対して反復法を選択させ、解析対象モデルが板梁ものに対して直接法を選択させることができ、解析時間の短縮化を図ることができる。また、有限要素法を用いる際の解析対象モデルから要素数や節点数は簡単に特定可能であるため、解法を簡単に決定することができる。
【０２００】
また、塊度は、モデルに含まれる各要素の解析自由度数の総和とモデル全体の解析自由度数とに基づいて評価される。解析自由度数は、例えば、節点数などによって予測値を算出することができる。このため、有限要素法を用いる際の解析対象モデルから解析自由度数を見積もることができ、解法を簡単に決定することができる。また、要素タイプが異なるモデル間で塊度の比較を行うことができるため、汎用性が高い。
【０２０１】
また、塊度は、モデルの節点数のうちのモデルの表面上にある節点の数と、モデルの節点数のうちのモデルの内部にある節点の数と、に基づいて評価される。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、表面上にある節点数と、内部にある節点数との比によって塊ものに近い形状であるか板梁ものに近い形状であるかを判定することができる。したがって、解析時間の短縮化を図ることができる。
【０２０２】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、塊度が大きいほど、反復法が選択されやすくする。解析対象モデルが板梁ものであると、反復法において解が収束せず解析に時間がかかる。このため、塊度が小さい場合に、直接法を選択することにより、解析時間の短縮を図ることができる。また、解析対象モデルが塊ものであると、直接法において演算量が増え解析に時間がかかる。このため、塊度が大きい場合に、反復法を選択することにより、解析時間の短縮化を図ることができる。
【０２０３】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さ及び／又は前記モデルのモデル規模を選択に反映させる。これにより、より連立一次方程式の特性に応じた解法が選択されるため、解析時間の短縮化を図ることができる。
【０２０４】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さが大きいほど、反復法を選択する。従来、モデルの拘束条件が不十分な場合など、モデルが不安定であり、反復法において収束しない場合がある。このため、モデルの境界条件の強さが小さい場合に、直接法が選択されやすくなる。これにより、解析時間の短縮化を図ることができる。また、モデルの境界条件の強さが大きい場合など、モデルが安定している場合に、反復法が選択されやすくなることで、解析時間の短縮化を図ることができる。
【０２０５】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルのモデル規模が大規模であるほど、反復法を選択する。直接法を用いると、メモリの使用量が大きくなる。また、モデルの規模が大きいと、演算量が多いため、メモリの使用量が大きくなる。このため、モデルの規模が大きい場合に、メモリの使用量の少ない反復法が選択されることにより、解析時間の短縮化を図ることができる。
【０２０６】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さ及び／又は前記モデルのモデル規模に基づいて、評価して得られた塊度に応じたアルゴリズムの選択基準を変更する。これにより、モデルのモデル規模が大規模であるほど、反復法が選択されやすくでき、モデルの境界条件の強さが大きいほど、反復法が選択されやすくできる。
【０２０７】
また、構造解析装置１００は、境界条件の強さを、モデルの拘束面積、拘束自由度に基づいて算出する。このように、境界条件の強さを簡単に評価することができるため、判定に要する時間の短縮化を図ることができる。
【０２０８】
また、構造解析装置１００は、モデル規模を、モデル情報とメッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいて評価する。このように、モデル規模を簡単に評価することができるため、判定に要する時間の短縮化を図ることができる。
【０２０９】
構造解析装置１００は、解析対象のモデルの形状や境界条件を表す情報に基づきモデルの塊度及び／又はモデル規模及び／又は境界条件の強さを評価し、モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する。これにより、モデルの形状や境界条件の特徴から、数値解析の特性を判定でき、数値解析の特性に応じた解析方法と計算資源を用いて、解析時間の短縮化を図ることができる。
【０２１０】
なお、本実施の形態で説明した構造解析方法は、予め用意された構造解析プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本構造解析プログラムは、磁気ディスク、光ディスク、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、構造解析プログラムは、インターネット等のネットワークを介して配布してもよい。
【符号の説明】
【０２１１】
１００  構造解析装置
１０１  解析対象モデル
１０２  要素
１０３  節点
１１１  モデル情報
４０１  取得部
４０２  第１評価部
４０３  第２評価部
４０４  第３評価部
４０５  選択部
４０６  補正部
ｍ１，ｍ２，ｍ３，ｍ４  モデル
【図１】
2017077610.tif 000003
【図２】
2017077610.tif 000004
【図３】
2017077610.tif 000005
【図４】
2017077610.tif 000006
【図５】
2017077610.tif 000007
【図６】
2017077610.tif 000008
【図７】
2017077610.tif 000009
【図８】
2017077610.tif 000010
【図９】
2017077610.tif 000011
【図１０】
2017077610.tif 000012
【図１１】
2017077610.tif 000013
【図１２】
2017077610.tif 000014
【図１３】
2017077610.tif 000015
【図１４】
2017077610.tif 000016
【図１５】
2017077610.tif 000017
【図１６】
2017077610.tif 000018
【図１７】
2017077610.tif 000019
【図１８】
2017077610.tif 000020
【図１９】
2017077610.tif 000021
【図２０】
2017077610.tif 000022
【図２１】
2017077610.tif 000023
【図２２】
2017077610.tif 000024
【手続補正書】
【提出日】平成30年4月25日(2018.4.25)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【請求項２】
前記塊度は、前記モデルの体積と、前記モデルを覆う最小の球または立方体の体積と、に基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項３】
前記塊度は、前記モデルの体積と前記モデルの質量と前記モデルの主慣性モーメントとに基づき評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項４】
前記塊度は、前記モデルの要素数と節点数とに基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項５】
前記塊度は、前記モデルに含まれる各要素の解析自由度数の総和と前記モデル全体の解析自由度数とに基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項６】
前記塊度は、前記モデルの節点数のうちの前記モデルの表面上にある節点数と、前記モデルの節点数のうち前記モデルの表面上にある節点以外の節点数と、の比に基づいて評価されることを特徴とする請求項１に記載の構造解析方法。
【請求項７】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記塊度が大きいほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項８】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模を選択に反映させる、ことを特徴とする請求項１に記載の構造解析方法。
【請求項９】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さが大きいほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１０】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルのモデル規模が大規模であるほど、反復法が選択されやすくする、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１１】
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析に用いるアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模に基づいて、評価して得られた前記塊度に応じたアルゴリズムの選択基準を変更する、ことを特徴とする請求項１に記載の構造解析方法。
【請求項１２】
前記境界条件の強さは、前記境界条件に含まれる拘束条件による前記モデルの拘束面積、拘束自由度に基づいて算出されることを特徴とする請求項１１に記載の構造解析方法。
【請求項１３】
前記モデル規模の評価は、前記モデル情報とメッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいて行われる、ことを特徴とする請求項１１に記載の構造解析方法。
【請求項１４】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度及び／又は境界条件の強さ及び／又はモデル規模を評価し、
前記モデルの塊度及び／又は境界条件の強さ及び／又はモデル規模の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【請求項１５】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【請求項１６】
モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する、
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、構造解析方法、及び構造解析プログラムに関する。
【背景技術】
【０００２】
従来、有限要素法を用いて構造解析を行う技術が公知である。有限要素法を用いた構造解析では、例えば、連立一次方程式を解くことにより構造物の変位や応力を求める。この連立一次方程式の求解は、計算量が多く計算に時間がかかるため、計算機を用いて高速に解くための様々な技術がある。連立一次方程式の解法としては、例えば、大きな分類として直接法や反復法などが挙げられる。直接法は、例えば、係数行列を三角化することで解を直接求める解法であるのに対して、反復法は、反復計算により近似解を求める解法である。
【０００３】
直接法や反復法に代表される連立一次方程式求解のアルゴリズムは、計算機をより効率的に使用して、より高速に解くための様々な技術開発が行われてきている。例えば、非特許文献１には疎行列向きの直接法のアルゴリズムが紹介されている。非特許文献２には並列処理に適した反復法のアルゴリズムとその計算例が紹介されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】山本有作:“疎行列連立一次方程式の直接解法”，計算工学，Ｖｏｌ．１１，Ｎｏ．４，ｐｐ．１４−１８（２００６）
【非特許文献２】大原敏靖，川島康弘，藤野清次：“Ｈｙｂｒｉｄ反復法ソルバによるＦＥＭ構造解析の処理時間短縮”，計算工学講演会論文集  Ｐｒｏｃｅｅｄｉｎｇｓ  ｏｆ  ｔｈｅ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔａｔｉｏｎａｌ  Ｅｎｇｉｎｅｅｒｉｎｇ  ａｎｄ  Ｓｃｅｉｅｎｃｅ  １９，４ｐ，２０１４−０６
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、連立一次方程式の解法には得手不得手があり、全ての問題を確実に、かつ最も速く解く解法は存在しない。したがって、従来、解析対象のモデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを特定の解法として数値解析を行うと、モデルによっては他の解法よりも解析時間が長くなるという問題点がある。例えば直接法は、連立一次方程式の特性により、非ゼロ領域が増えると演算量やメモリ量がより多く必要となり、解析時間が長くなる場合がある。一方、例えば、反復法は、連立一次方程式の特性により解が収束しにくいことがあり、解析時間が長くなる場合がある。
【０００６】
１つの側面では、本発明は、解析時間の短縮化を図ることができる構造解析方法、及び構造解析プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一側面によれば、モデル情報を取得し、取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する構造解析方法、及び構造解析プログラムが提案される。
【発明の効果】
【０００８】
本発明の一態様によれば、解析時間の短縮化を図ることができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、本発明にかかる構造解析装置による一動作例を示す説明図である。
【図２】図２は、有限要素法の構造解析に用いる要素と節点を示す説明図である。
【図３】図３は、構造解析装置のハードウェア構成例を示すブロック図である。
【図４】図４は、構造解析装置の機能的構成例を示すブロック図である。
【図５】図５は、モデル情報例を示す説明図である。
【図６】図６は、閾値の導出に用いるモデル例を示す説明図である。
【図７】図７は、要素数が５０００の場合の閾値の導出例を示す説明図である。
【図８】図８は、要素数が１００００の場合の閾値の導出例を示す説明図である。
【図９】図９は、モデル規模に応じた閾値例を示す説明図である。
【図１０】図１０は、塊度の算出例と解法の選択例を示す説明図である。
【図１１】図１１は、拘束条件が片持ちの場合における塊度の閾値の導出例を示す説明図である。
【図１２】図１２は、拘束条件が両端固定の場合における塊度の閾値の導出例を示す説明図である。
【図１３】図１３は、拘束条件の強さによる塊度の閾値の補正及び解法の選択例を示す説明図である。
【図１４】図１４は、解法の選択例を示す説明図である。
【図１５】図１５は、構造解析装置による構造解析処理手順例１を示すフローチャートである。
【図１６】図１６は、構造解析装置による構造解析処理手順例２を示すフローチャートである。
【図１７】図１７は、システム適用例を示す説明図である。
【図１８】図１８は、解析データベース例を示す説明図である。
【図１９】図１９は、システムにおける実績に基づく解法の選択例を示す説明図である。
【図２０】図２０は、サーバの状態とメモリ量の管理例を示す説明図である。
【図２１】図２１は、システムによる構造解析処理手順例を示すフローチャート（その１）である。
【図２２】図２２は、システムによる構造解析処理手順例を示すフローチャート（その２）である。
【発明を実施するための形態】
【００１０】
以下に添付図面を参照して、本発明にかかる構造解析方法、及び構造解析プログラムの実施の形態を詳細に説明する。
【００１１】
図１は、本発明にかかる構造解析装置による一動作例を示す説明図である。構造解析装置１００は、解析対象のＦＥＭ（Ｆｉｎｉｔｅ  Ｅｌｅｍｅｎｔ  Ｍｅｔｈｏｄ：有限要素法）モデルについて有限要素法を用いた構造解析を行うコンピュータである。ここで、有限要素法とは、微分方程式を近似的に解くための数値解析の方法である。構造解析による評価では、例えば、剛性の指標として変位、強度の指標として応力などが評価される。
【００１２】
解析対象のＦＥＭモデルは、以降単にモデル、解析対象モデルなどとも称する。有限要素法では、方程式が定義された領域を小領域に分割し、各小領域における方程式を共通な補間関数で近似する方法である。ここで、小領域を要素１０２と称する。要素１０２は、各頂点などに節点１０３が配置される。有限要素法を用いた構造解析では、方程式が定義された領域が解析対象の構造物である。解析対象モデルは、解析対象の構造物を近似させることによりＦＥＭによる構造解析が可能な状態にしたものであり、シミュレーション空間上に配置されるものである。
【００１３】
シミュレーション空間とは、解析対象の物理的な構造物の内部とその構造物の外部の空間とを含む解析領域をコンピュータ上に表すために設定された空間である。解析対象モデルでは、解析対象の構造物を複数の要素１０２に分割し、要素１０２の集まりとして全体の形状を表す。要素１０２の集まりをメッシュとも称する。メッシュにおける１つの格子のサイズをメッシュサイズとも称する。
【００１４】
１つの要素１０２の形状は、２次元の場合に四角形や三角形などであり、３次元の場合に四面体や五面体や六面体などである。図１では、要素１０２として四面体の二次要素を例に挙げるが、要素１０２の形状の例や要素１０２と節点１０３との関係については図２を用いて詳細に説明する。
【００１５】
開発者は、例えば、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）を用いて構造物をポリゴンで表した３次元形状の立体モデルの立体モデル情報を作成する。立体モデル情報は例えばポリゴンの座標データなどを有する。つぎに、開発者は、ＣＡＥ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ）を用いて、設計した構造物が要求性能を満たすかどうかを、実際に構造物を作る前にコンピュータ上でシミュレーションする。ここで、ＣＡＥは、例えばプリプロセッサとソルバーとポストプロセッサと呼ばれる３つのソフトウェアを有する。
【００１６】
まず、ＣＡＥのプリプロセッサは、メッシュ分割や境界条件定義を行うことによりＦＥＭモデルを表すモデル情報を作成することができる。つぎに、ＣＡＥのソルバーは、モデル情報１１１が表すＦＥＭモデルに対して数値解析を行う構造解析ソルバーである。最後に、ＣＡＥのポストプロセッサは、ＣＡＥのソルバーによって得られた解析結果の可視化を行う。
【００１７】
従来、ＦＥＭによる構造解析では、力のつりあい方程式を解くことにより、構造物の変位や応力を求めることができる。力のつりあい方程式は連立一次方程式である。連立一次方程式は「Ｋｕ＝ｆ」とも表す。Ｋは剛性行列である。ｕはそれぞれの節点１０３の自由度ごとの変位を表すベクトルである。ｕは解析で求める未知ベクトルである。ｆは荷重を表すベクトルである。ｆは、荷重条件を設定した場合、各節点１０３の自由度に対応した荷重値である。
【００１８】
従来、連立一次方程式の求解は、計算量が多く計算に時間がかかるため、計算機を用いてより高速に解くための様々な手法が開発されている。連立一次方程式の解法として、直接法や反復法がある。直接法は、例えば、係数行列を三角化することで解を直接求める解法である。直接法としては、例えば、マルチフロンタル法などがある。反復法は、反復計算により近似解を求める解法である。反復法は、例えば、前処理付きＣＧ法などがある。
【００１９】
しかしながら、従来技術では、解析対象モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを特定の解法として数値解析を行うと、モデルによっては他の解法よりも解析時間が長くなるという問題点がある。例えば、一般的に直接法は反復法よりメモリ量が多く必要である。また、直接法は連立一次方程式の特性により、非ゼロ領域が増えると演算量やメモリ量がより多く必要となり、解析時間が長くなる場合がある。例えば、直接法は、解析対象モデルの形状が塊ものの場合に解析時間が長くなることがある。一方、例えば、反復法は、連立一次方程式の特性により解が収束しにくいことがあり、解析時間が長くなる場合がある。例えば、反復法は、解析対象モデルの形状が板梁ものの場合に、解析時間が長くなることがある。
【００２０】
そこで、本実施の形態では、構造解析装置１００は、連立一次方程式の特性として、解析対象モデルの形状を表す情報に基づき解析対象モデルの塊度を評価し、有限要素法を用いた連立一次方程式による解法を、例えば、直接法と反復法とから選択する。これにより、解析モデルの形状が塊ものに近い形状であるか板梁ものに近い形状であるかを判定することができる。したがって、連立一次方程式の特性に応じた解法を選択することができ、解析時間の短縮化を図ることができる。
【００２１】
まず、構造解析装置１００は、モデル情報１１１を取得する。モデル情報１１１は、例えば、解析対象モデル１０１の形状を表す情報を含む。モデル情報１１１の詳細な例は、後述する図５を用いて説明する。
【００２２】
つぎに、構造解析装置１００は、取得したモデル情報１１１に基づき、解析対象モデル１０１の塊度を評価する。
【００２３】
塊度は、例えば、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、厚く寄り集まった形状であるかの指標値である。塊度が高いほど、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、厚く寄り集まった形状である可能性が高いことを示す。塊度が低いほど、解析対象モデルに含まれる要素群が形成する解析対象モデルの形状が、薄く平たくなった形状である可能性が高いことを示す。
【００２４】
または、塊度は、例えば、モデルによって表される構造物に含まれる材料や部材が形成する構造物の形状が厚く寄り集まった形状であるかの指標値である。塊度が高いほど、構造物に含まれる材料や部材が形成する構造物の形状が厚く寄り集まった形状である可能性が高いことを示す。塊度が低いほど、構造物に含まれる材料や部材が形成する構造物の形状が薄く平たかったり、細かったりする可能性が高いことを示す。ここで、例えば、要素群、材料、または部材が薄く平たかったり、細かったりする形状のモデルや構造物を板梁ものとも称する。また、例えば、要素群、材料または部材が厚く寄り集まった形状のモデルや構造物を塊ものとも称する。
【００２５】
解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１の体積に基づいて評価されてもよい。また、解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１の体積と解析対象モデル１０１の重さに関する情報に基づいて評価されてもよい。解析対象モデル１０１の塊度は、例えば、解析対象モデル１０１に含まれる要素１０２や節点１０３に基づいて評価されてもよい。具体的には、後述する判定方法１〜５などにより解析対象モデル１０１の塊度が評価される。
【００２６】
そして、構造解析装置１００は、解析対象モデル１０１の塊度の評価結果に基づいて、解析対象モデル１０１の有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを、例えば、直接法とするか反復法とするか選択する。構造解析装置１００は、例えば、塊度が閾値以上であれば、反復法を選択し、塊度が閾値未満であれば、直接法を選択する。これにより、塊度が大きいほど、反復法を選択することができる。図１の例では、塊度ａｍが閾値ａｔｈ未満であるため、構造解析装置１００は、直接法を選択する。
【００２７】
上述したように、解析対象モデル１０１が板梁ものであると、反復法において解が収束せず解析に時間がかかる。このため、塊度が小さい場合に、直接法を選択することにより、解析時間の短縮を図ることができる。また、解析対象モデル１０１が塊ものであると、直接法における、係数行列や三角行列の非ゼロ領域が増え解析に時間がかかる。このため、塊度が大きい場合に、反復法を選択することにより、解析時間の短縮を図ることができる。このように、塊度によって解析対象モデル１０１の形状の特徴を判定することで、連立一次方程式の特性を判定し、解析時間の短縮化を図ることができる。
【００２８】
図２は、有限要素法の構造解析に用いる要素と節点を示す説明図である。図２（１）に示すように、構造物は、例えば、連続体である。上述したように、ＣＡＥのプリプロセッサは、３次元のシミュレーション空間上に作成された構造物の立体モデルを近似することによりＦＥＭモデルを作成する。
【００２９】
図２（２）に示すように、要素タイプは、３次元のソリッド要素、２次元のシェル要素、１次元のビーム要素やトラス要素、０次元の質量要素などが挙げられる。ソリッド要素の形状は、六面体、五面体、四面体などがある。シェル要素の形状は、四角形、三角形などがある。また、ビーム要素やトラス要素の形状は、線である。質量要素の形状は、点である。
【００３０】
図２（３）に示すように、例えば、要素形状が四面体の場合、一次要素と二次要素のように節点の定義方法が複数ある。一次要素の場合、要素に含まれる節点は、四面体の頂点である。二次要素の場合、節点は、四面体の頂点と、頂点間を結ぶ線の中心点と、である。このように、要素形状や節点の定義方法により、要素を構成する節点数が異なる。本実施の形態では、要素タイプとして四面体の二次要素を用いて説明する。
【００３１】
ここで、ソリッド要素は、固体要素とも称する。また、シェル要素は、例えば、板要素とも称する。また、ビーム要素は、梁要素とも称する。これらの要素タイプにより、それぞれ後述する構成節点の解析自由度数が異なる。
【００３２】
（構造解析装置１００のハードウェア構成例）
図３は、構造解析装置のハードウェア構成例を示すブロック図である。図３において、構造解析装置１００は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）３０１と、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０３と、ディスクドライブ３０４と、ディスク３０５と、を有する。また、構造解析装置１００は、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）３０６と、キーボード３０７と、マウス３０８と、ディスプレイ３０９と、を有する。また、ＣＰＵ３０１と、ＲＯＭ３０２と、ＲＡＭ３０３と、ディスクドライブ３０４と、Ｉ／Ｆ３０６と、キーボード３０７と、マウス３０８と、ディスプレイ３０９とは、バス３００によってそれぞれ接続される。
【００３３】
ここで、ＣＰＵ３０１は、構造解析装置１００の全体の制御を司る。ＲＯＭ３０２は、ブートプログラムなどのプログラムを記憶する。ＲＡＭ３０３は、ＣＰＵ３０１のワークエリアとして使用される。ディスクドライブ３０４は、ＣＰＵ３０１の制御にしたがってディスク３０５に対するデータのリード／ライトを制御する。ディスク３０５は、ディスクドライブ３０４の制御で書き込まれたデータを記憶する。ディスク３０５としては、磁気ディスク、光ディスクなどが挙げられる。
【００３４】
Ｉ／Ｆ３０６は、通信回線を通じてＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、インターネットなどのネットワーク３１０に接続され、このネットワーク３１０を介して他の装置に接続される。そして、Ｉ／Ｆ３０６は、ネットワーク３１０と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ３０６には、例えばモデムやＬＡＮアダプタなどを採用することができる。
【００３５】
キーボード３０７やマウス３０８は、利用者の操作により、各種データの入力を行うインターフェースである。ディスプレイ３０９は、ＣＰＵ３０１の指示により、データを出力するインターフェースである。
【００３６】
また、図示を省略するが、構造解析装置１００には、カメラから画像や動画を取り込む入力装置やマイクから音声を取り込む入力装置が設けられていてもよい。また、図示を省略するが、構造解析装置１００には、プリンタなどの出力装置が設けられていてもよい。
【００３７】
（構造解析装置１００の機能的構成例）
図４は、構造解析装置の機能的構成例を示すブロック図である。構造解析装置１００は、取得部４０１と、第１評価部４０２と、第２評価部４０３と、第３評価部４０４と、選択部４０５と、補正部４０６と、を有する。取得部４０１から補正部４０６までの制御部の処理は、例えば、図３に示すＣＰＵ３０１がアクセス可能なＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置に記憶されたプログラムにコーディングされている。そして、ＣＰＵ３０１が記憶装置から該プログラムを読み出して、プログラムにコーディングされている処理を実行する。これにより、制御部の処理が実現される。また、制御部の処理結果は、例えば、ＲＡＭ３０３、ＲＯＭ３０２、ディスク３０５などの記憶装置に記憶される。
【００３８】
取得部４０１は、モデル情報１１１を取得する。モデル情報１１１は、解析対象のモデルを表す情報である。モデル情報１１１は、例えば、モデルの形状を表す情報を含む。また、モデルの形状を表す情報は、モデルに含まれる要素の要素情報、要素に含まれる節点及び節点の位置情報などが挙げられる。モデルの形状を表す情報は、例えば、体積、表面積、などの情報であってもよい。また、取得されるモデル情報１１１は、例えば、モデルの材質を表す情報を含んでいてもよい。また、取得されるモデル情報１１１は、例えば、解析時にモデルに設定される境界条件の情報を含んでいてもよい。
【００３９】
図５は、モデル情報例を示す説明図である。図５（１）〜図５（３）には、モデル情報１１１として、モデルに含まれる要素の要素情報、要素に含まれる節点及び節点の位置情報などを示す。また、図５（４）には、モデル情報１１１として、モデルの形状を表す情報やモデルの材質を表す情報や解析時にモデルに設定される境界条件を表す情報などを示す。ここで、境界条件とは、構造物の負荷状態を表すために境界に設定する条件である。境界条件には、例えば、拘束条件と荷重条件の２種類がある。拘束条件は、解析対象の構造物に対して、どの部位をどのように固定するか、どのくらい強制的な変位を与えるか、などの条件のことである。荷重条件はどの部位にどのような方向でどのくらい力を加えるかなどの条件である。
【００４０】
図５（１）では、モデル情報１１１は、モデルＩＤ、要素ＩＤのフィールドを有する。モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。要素ＩＤのフィールドには、解析対象のモデルに含まれる要素を識別する識別情報が設定される。図５（１）の例では、モデルｍａは、例えば、要素ｅｎ１〜ｅｎ３を有する。
【００４１】
つぎに、図５（２）の例では、モデル情報１１１は、要素ＩＤ、節点ＩＤのフィールドを有する。要素ＩＤのフィールドには、要素を識別する識別情報が設定される。節点ＩＤのフィールドには、要素に含まれる節点を識別する識別情報が設定される。図５（２）の例では、要素ｅｎ１は、節点ｎｎ１〜ｎｎ４を有する。
【００４２】
そして、図５（３）の例では、モデル情報１１１は、節点ＩＤ、節点位置情報のフィールドを有する。節点ＩＤのフィールドには、節点を識別する識別情報が設定される。節点位置情報のフィールドには、節点の位置情報が設定される。節点の位置情報は、例えば、節点のｘ軸、ｙ軸、ｚ軸の座標値である。
【００４３】
図５（１）〜（３）に示すモデル情報１１１によって、構造解析装置１００は、モデルの形状を特定可能である。例えば、構造解析装置１００は、モデルの体積、表面積などを算出可能である。
【００４４】
つぎに、図５（４）の例では、モデル情報１１１は、モデルＩＤ、体積、質量、主慣性モーメント、節点数、要素タイプ、メッシュサイズ、要素数、解析自由度数、最小の球の体積、表面積、境界条件などのフィールドを有する。モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。体積のフィールドには、モデルの体積が設定される。質量のフィールドには、モデルの質量が設定される。主慣性モーメントのフィールドには、モデルの主慣性モーメントが設定される。ここで、体積や質量や主慣性モーメントは、モデルの材質や形状から決定される情報である。
【００４５】
要素タイプのフィールドには、図２に示したような要素タイプを識別する情報が設定される。また、解析自由度数のフィールドには、例えば、モデルに含まれる各節点の自由度数の総和が設定される。最終的な解析自由度数は、ＣＡＥのソルバー内部で行われる連立一次方程式の組立が完了しないと判明しない。このため、解析自由度数は、例えば、節点数×１節点あたりの自由度数などによる概算値が設定されてもよい。
【００４６】
メッシュサイズのフィールドには、メッシュ分割する際の代表的な１要素の要素長が設定される。板要素や梁要素などの場合には、板厚や断面積など断面特性の情報があわせて設定されてもよい。
【００４７】
節点数のフィールドには、モデルに含まれる節点の数が設定される。また、要素数のフィールドには、モデルに含まれる要素の数が設定される。要素数については、メッシュサイズと、形状の体積と、要素タイプと、によって予測値を算出することが可能である。また、節点数は、要素数と、要素タイプと、塊度に基づいて予測値を算出することが可能である。また、要素数と節点数とについては、図５（１）〜（３）に示すモデル情報１１１がすでにある場合、当該モデル情報１１１に基づいて特定可能である。
【００４８】
最小の球の体積のフィールドには、モデルを覆う最小の球の体積が設定される。ここでは、最小の球の体積のフィールドがあるが、これに限らず、例えば、モデルを覆う最小の立方体の体積のフィールドがあってもよい。この球の体積または立方体の体積は後述する判定方法１において塊度の算出時に用いられる。
【００４９】
表面積のフィールドには、モデルの表面積が設定される。境界条件のフィールドは、例えば、拘束条件、拘束面積、荷重条件のフィールドを有する。そして、拘束条件のフィールドには、例えば、拘束条件が設定される。拘束条件としては、例えば、片側端面固定、両端固定、全周固定などが挙げられる。拘束面積のフィールドには、モデルの表面積のうち、拘束条件に応じて拘束される面積が設定される。拘束自由度数のフィールドには、例えば、１節点当たりの自由度数のうち拘束される自由度数が設定される。例えば、１節点当たりの自由度が３方向である場合に、３方向のうち何方向を拘束するかが拘束自由度数である。荷重条件のフィールドには、荷重条件が設定される。荷重条件としては、例えば、各方向における重力荷重などが挙げられる。
【００５０】
つぎに、図４に示す第１評価部４０２は、取得部４０１が取得したモデル情報１１１に基づいて、解析対象のモデルの塊度を評価する。そして、選択部４０５は、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する。
【００５１】
本実施の形態では、塊度の評価と塊度による判定について、判定方法１〜判定方法５までを例に挙げる。
【００５２】
（判定方法１）
第１評価部４０２は、判定方法１において、ある空間に対する解析対象のモデルの充填度を塊度として算出する。具体的に、第１評価部４０２は、例えば、解析対象のモデルの体積と、モデルを覆う最小の特定種類の立体の体積と、の比率を塊度として算出する。ここでの特定種類の立体とは、充填に用いることが可能な立体である。充填とは、空間充填や球充填である。充填に用いることが可能な立体とは、例えば、球体、立方体、菱形十二面体などが挙げられる。ここでは、球体を例に挙げる。第１評価部４０２は、例えば、モデルの体積と、モデルを覆う最小の球体の体積と、の比率を塊度として算出する。第１評価部４０２は、例えば、以下式（１）に基づいて塊度を算出する。
【００５３】
塊度＝モデルの体積／モデルを覆う最小の球体の体積・・・式（１）
【００５４】
この判定方法１により、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【００５５】
（判定方法２）
第１評価部４０２は、判定方法２において、解析対象のモデルが重いかどうかの指標を塊度として算出する。具体的に、第１評価部４０２は、例えば、慣性モーメントによって解析対象のモデルの主慣性モーメントと質量と体積とに基づいて塊度を算出する。第１評価部４０２は、例えば、以下の式（２）に基づいて塊度を算出する。
【００５６】
塊度＝１／（（Ｉｘ×Ｉｙ×Ｉｚ）／（Ｍ＾３）／（Ｖ＾２））・・・式（２）
ここで、Ｉｘ、Ｉｙ、Ｉｚはモデルの主慣性モーメント、Ｍはモデルの質量、Ｖはモデルの体積である。
【００５７】
この判定方法２により、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【００５８】
（判定方法３）
第１評価部４０２は、判定方法３において、解析対象モデルの全要素数と全節点数との比を塊度として算出する。具体的に、第１評価部４０２は、以下式（３）によって塊度を算出する。
【００５９】
塊度＝全要素数／全節点数・・・式（３）
【００６０】
ここで、節点は複数の要素により共有されるため、モデル全体の節点数は、要素数×１要素当たりの節点数より少なくなる。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、「全要素数／全節点数」が大きな値であるほど、塊ものである可能性が高くなる。一方、「全要素数／全節点数」が小さな値であるほど、板梁ものである可能性が高くなる。塊度が高いと、共有化される節点が相対的に多くなり、連立一次方程式の係数行列や三角行列の非ゼロ領域が増え、直接法の解析時間が長くなる。このため、塊度が高い場合に、反復法が選択されることにより解析時間の短縮化を図ることができる。また、板梁ものについて反復法を選択すると、収束が遅く、解析時間が長くなる。塊度が低い場合に、直接法が選択されることにより解析時間の短縮化を図ることができる。
【００６１】
（判定方法４）
第１評価部４０２は、判定方法例４において、解析対象モデルの解析自由度数に基づく指標値を塊度として算出する。具体的に、第１評価部４０２は、例えば、要素ごとの解析自由度数のモデル全体での総和と、モデル全体の解析自由度数と、の比を塊度として算出する。第１評価部４０２は、例えば、以下式（４）によって塊度を算出する。
【００６２】
塊度＝要素ごとの解析自由度数のモデル全体での総和／モデル全体の解析自由度数・・・式（４）
【００６３】
要素ごとの解析自由度数のモデル全体での総和は、１要素当たりの解析自由度数の合計値である。より具体的には、要素ごとの解析自由度数のモデル全体での総和は、要素数×１要素当たりの節点数×１節点当たり自由度数である。モデル全体の解析自由度数は、連立一次方程式の次元数であり、未知の場合はモデル全体の節点数×１節点当たり自由度数−モデル全体の拘束自由度数で算出できる。
【００６４】
要素数が５０００であり、１要素当たりの節点数が１０であり、節点数が８０００であり、１節点当たりの自由度数が３を例に挙げる。要素ごとの解析自由度数のモデル全体での総和は、５０００×１０×３である。これに対して、モデル全体の解析自由度数は、モデル全体の拘束自由度数を無視すれば、８０００×３である。そして、塊度は、１５００００／２４０００となる。
【００６５】
上述したように、節点は複数の要素により共有されるため、モデル全体の節点数は、要素数×１要素当たりの節点数より少ない。解析対象のモデルが、塊ものであると、節点が複数の要素により共有される可能性が高くなる。これに対して、解析対象のモデルが板梁ものであると、節点が表面にある可能性が高くなり、節点が複数の要素により共有される数は塊ものよりは相対的に小さくなる。塊度が高いと、共有化される節点が相対的に多くなり、連立一次方程式の係数行列や三角行列の非ゼロ領域が増え、直接法の解析時間が長くなる。このため、塊度が高い場合に、反復法が選択されることにより解析時間の短縮化を図ることができる。また、板梁ものについて反復法を選択すると、収束が遅く、解析時間が長くなる。塊度が低い場合に、直接法が選択されることにより解析時間の短縮化を図ることができる。
【００６６】
また、判定方法４によれば、要素タイプが異なるモデル間であっても塊度の比較を行うことができる。このため、要素タイプが異なっていても同じ閾値で判定を行うことも可能であり、解法の選択を簡単に行うことができる。
【００６７】
（判定方法５）
第１評価部４０２は、判定方法５において、解析対象モデルの表面上の節点数によって塊度を算出する。具体的に、第１評価部４０２は、例えば、モデル全体の節点数とモデル表面上の節点数との比を塊度として算出する。また、第１評価部４０２は、判定方法５において、モデル内部にある節点数と、モデルの表面上にある節点数と、の比を塊度として算出してもよい。また、第１評価部４０２は、判定方法５において、モデルの内部にある節点数と、モデル全体の節点数と、の比を塊度として算出してもよい。モデルの内部にある節点数とは、モデルの表面上にある節点以外の節点の数である。第１評価部４０２は、例えば、以下式（５）によって塊度を算出する。
【００６８】
塊度＝モデル全体の節点数／モデル表面上の節点数・・・式（５）
【００６９】
ここで、第１評価部４０２は、図５（１）〜（３）などに示したモデル情報１１１に基づいて、モデルに含まれる各節点が内部にある節点であるか表面にある節点であるかを特定できる。
【００７０】
上述したように、モデルの形状のタイプが塊ものであると、モデル内部において共有される節点の数が多くなるため、相対的にモデル表面上の節点数が少なくなる。このため、式（５）によると、モデル全体の節点数に対してモデル表面上の節点数が少ないと、塊度が大きくなり、塊ものである可能性が高くなる。これに対して、モデルの形状のタイプが板梁ものであると、モデル内部において共有される節点の数が少なくなり、相対的にモデル表面上の節点数が多くなる。このため、モデル全体の節点数に対してモデル表面上の節点数が多いと、塊度が小さくなり、板梁ものである可能性が高くなる。
【００７１】
また、有限要素法を用いる場合に、有限要素法用に解析対象モデルが作成される。このため、要素数や節点数はモデル情報１１１を参照すれば、簡単に特定可能であり、判定方法３〜５によれば、解析法を簡単に選択することができる。
【００７２】
つぎに、選択部４０５は、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する。選択部４０５は、例えば、塊度が大きいほど、反復法を選択する。具体的に、選択部４０５は、塊度が閾値以上であるか否かによって直接法とするか反復法とするかを選択する。選択部４０５は、例えば、塊度が閾値以上であれば、反復法を選択し、塊度が閾値未満であれば、直接法を選択する。これにより、塊度が大きいほど、反復法が選択されやすくなる。閾値は、予め設定してＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置に記憶させておく。
【００７３】
つぎに、選択部４０５による詳細な選択例の説明の前に、選択部４０５による選択時の閾値の設定方法について説明する。ここでは、閾値の設定方法を構造解析装置１００が行うとして説明するが、これに限らず、例えば、構造解析装置１００と異なる装置が閾値を決定しておき、構造解析装置１００に閾値を提供してもよい。
【００７４】
まず、構造解析装置１００は、例えば、複数のモデルの各々について塊度を算出する。また、構造解析装置１００は、複数のモデルの各々について、直接法及び反復法による数値解析を実行する。構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の塊度を線形補間により求めて閾値とする。
【００７５】
図６は、閾値の導出に用いるモデル例を示す説明図である。モデルｍ１〜モデルｍ４を例に挙げて閾値の導出について説明する。モデルｍ１の寸法は、例えば、１０×１００×１０００であり、形状のタイプは板梁ものである。モデルｍ２の寸法は、例えば、５０×１００×１０００であり、形状のタイプは板梁ものである。モデルｍ３の寸法は、例えば、５０×１００×２００であり、形状のタイプは塊ものである。モデルｍ４の寸法は、例えば、２５０×５００×１０００であり、形状のタイプは塊ものである。
【００７６】
本実施の形態では、モデルｍ１〜モデルｍ４を要素数が５０００程度になるようにメッシュ分割した場合と、要素数が１００００程度となるようにメッシュ分割した場合と、の各々について、各判定方法での塊度と解析時間とによって閾値を設定する例を示す。
【００７７】
図７は、要素数が５０００の場合の閾値の導出例を示す説明図である。図７において（１）〜（１１）には判定方法で用いる各数値と、（１２）と（１３）には解析時間を示す。
【００７８】
まず、構造解析装置１００は、例えば、上述したように、判定方法１を用いて、モデルの体積／モデルを覆う最小の球体の体積によって塊度を求める。モデルの体積は図７（１）に示し、モデルを覆う最小の球体の体積は図７（６）に示す。
【００７９】
例えば、判定方法１を用いたモデルｍ１の塊度は、「１．００Ｅ＋０６／５．３２Ｅ＋０８」によって「１．８８Ｅ−０３」となる。
【００８０】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法２を用いて、「（主慣性モーメントＩｘ×主慣性モーメントＩｙ×主慣性モーメントＩｚ）／（質量＾３）／（モデルの体積＾２）」によって塊度を求める。主慣性モーメントＩｘは図７（３）に示し、主慣性モーメントＩｙは図７（４）に示し、主慣性モーメントＩｚは図７（５）に示す。質量は図７（２）に示す。
【００８１】
例えば、判定方法２を用いたモデルｍ１の塊度は、「１／（（６．５４Ｅ＋０５×６．６１Ｅ＋０５×６．６１Ｅ＋０３）／７．８５＾３／１．００Ｅ＋０６）」によって「１．６９Ｅ−０１」となる。
【００８２】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法３を用いて、「モデルの要素数／モデルの節点数」によって塊度を求める。モデルの要素数は（８）に示し、モデルの節点数は図７（７）に示す。
【００８３】
例えば、判定方法３を用いたモデルｍ１の塊度は、「４６６０／８６９３」によって「５．３６Ｅ−０１」となる。
【００８４】
つぎに、構造解析装置１００は、例えば、上述したように、判定方法４を用いて、「各要素ごとの解析自由度数の総和／解析自由度数」によって塊度を求める。各要素ごとの解析自由度数の総和は、図７（１０）に示す。解析自由度数は、図７（９）に示す。
【００８５】
例えば、判定方法４を用いたモデルｍ１の塊度は、「（４６６０×３×１０）／２５９４４」によって「５．３９」となる。上述したように、各要素ごとの解析自由度数の総和は、要素数×１節点当たりの自由度数×１要素当たりの節点数であり、「４６６０×３×１０」によって「１３９８００」となる。要素タイプは四面体の二次要素である。
【００８６】
そして、構造解析装置１００は、例えば、上述したように、判定方法５を用いて、「モデル全体の節点数／モデル表面上の節点数」によって塊度を求める。モデル全体の節点数は図７（７）に示す。モデル表面上の節点数は図７（１１）に示す。
【００８７】
例えば、判定方法５を用いたモデルｍ１の塊度は、「８６９３／４７３０」によって「１．８４」となる。同様に、モデルｍ２〜モデルｍ４についても判定方法１〜判定方法５を用いて求める。
【００８８】
つぎに、構造解析装置１００は、例えば、モデルｍ１〜ｍ４の各々について、直接法による数値解析と、反復法による数値解析と、を行うことにより解析時間を求める。そして、構造解析装置１００は、直接法による解析時間と反復法による解析時間との比を解析方法の性能比として求める。
【００８９】
図７の例では、モデルｍ２の性能比とモデルｍ３の性能比との間に性能比１がある。そこで、構造解析装置１００は、モデルｍ２の塊度とモデルｍ３の塊度とを線形補間して性能比が１となる場合の塊度を求める。そして、構造解析装置１００は、性能比が１となる場合の塊度を閾値として設定する。例えば、線形補間に限らず、ラグランジュ補間、スプライン補間、最小二乗法によって求めてもよい。
【００９０】
以下に判定方法１における閾値を線形補間によって求める例を示す。
閾値＝モデルｍ２の塊度＋（モデルｍ３の塊度−モデルｍ２の塊度）×（（１−モデル２の性能比）／（モデル３の性能比−モデル２の性能比））
＝（９．３７Ｅ−０３）＋（（１．５９Ｅ−０１）−（９．３７Ｅ−０３））×（（１−０．２４）／（１．４９−０．２４））
＝１．００Ｅ−０１
【００９１】
このようにして、各判定方法における閾値を求めることができる。性能比で示すように、モデルｍ２は反復法による解析時間よりも直接法による解析時間が短い。これに対して、モデルｍ３は直接法による解析時間よりも反復法による解析時間が短い。また、モデルｍ２の塊度は、モデルｍ３の塊度よりも小さい。このため、選択部４０５が、上述したように、第１評価部４０２により算出された塊度が閾値以上である場合に反復法を選択し、塊度が閾値未満である場合に直接法を選択することにより、解析時間の短縮化を図ることができる。
【００９２】
図８は、要素数が１００００の場合の閾値の導出例を示す説明図である。図８では、図７と同様に閾値を求める例であるため、詳細な説明を省略する。
【００９３】
また、図８では、図７に示した例と同様に、モデルｍ２の性能比とモデルｍ３の性能比との間に性能比１があるため、構造解析装置１００は、モデルｍ２の塊度とモデルｍ３の塊度とを線形補間して性能比が１となる場合の塊度を閾値として求める。また、図８の例では、図７に示した例と同様に、モデルｍ２は反復法による解析時間よりも直接法による解析時間が短い。これに対して、モデルｍ２により塊度が大きいモデルｍ３は直接法による解析時間よりも反復法による解析時間が短い。このため、上述したように、選択部４０５は、第１評価部４０２により算出された塊度が閾値以上であれば、反復法を選択し、閾値未満であれば、直接法を選択することにより、解析時間の短縮化を図ることができる。
【００９４】
つぎに、上述したように、図５に示す選択部４０５は、第１評価部４０２が算出した塊度と取得した閾値とを比較する。そして、選択部４０５は、塊度が閾値以上である場合、反復法を選択し、閾値未満である場合、直接法を選択する。
【００９５】
また、選択部４０５は、モデルの塊度の評価結果に基づいて、連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模を選択に反映させる。
【００９６】
選択部４０５は、モデルの塊度の評価結果に基づいて、ＦＥＭを用いる構造解析のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模に基づいて、塊度に応じたアルゴリズムの選択基準を変更する。
【００９７】
このように、直接法とするか反復法とするか選択する際に、モデルの境界条件の強さ及び／又はモデルのモデル規模を選択に反映させるために、アルゴリズムの選択基準である閾値が補正されてもよいし、塊度が補正されてもよい。
【００９８】
まず、モデル規模について説明し、モデルの境界条件の強さについては、後述する。
【００９９】
解析対象モデル１０１のモデル規模が大きいと、解析する節点１０３の数が多いため、メモリ使用量が多くなる。このため、選択部４０５は、塊度に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、モデルのモデル規模を選択に反映される。モデルのモデル規模は、例えば、上述した、要素数、節点数、解析自由度数であってもよい。また、選択部４０５は、塊度に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、評価したモデル規模と、解析時に使用可能なメモリ使用量と、を選択に反映させてもよい。
【０１００】
具体的に、構造解析装置１００は、例えば、直接法を用いてモデル１０１のモデル規模を解析する場合に使用するメモリ量が、解析時に使用可能なメモリ使用量未満である場合に、直接法を選択する。一方、構造解析装置１００は、例えば、直接法を用いてモデル１０１のモデル規模を解析する場合に使用するメモリ量が、解析時に使用可能なメモリ使用量以上である場合に、反復法を選択する。
【０１０１】
例えば、モデルを解析する場合に使用するメモリ量は、要素タイプや要素数や節点数などから算出されるモデル規模に基づいて推測値を算出可能である。例えば、直接法を用いる場合に要素１つに対してどの程度のメモリ量を使用するかを予め記憶装置などに用意しておいてもよい。そして、構造解析装置１００は、解析対象モデル１０１の要素数に応じて使用するメモリ量を算出してもよい。
【０１０２】
例えば、一般的に直接法による解析の方が反復法による解析よりも精度が高いため、直接法による解析に時間がかからないことが分かる場合に、精度の向上のために、直接法を利用したい場合がある。しかし、上述したように、直接法による解析の場合、メモリの使用量が不足すると、解析に時間がかかる。このため、モデル規模に応じて解析法を選択することで、モデル規模によってメモリの使用量を推定できるため、メモリを不足させずに直接法による解析を行い、精度の向上を図りつつ、解析時間の短縮化を図ることができる。
【０１０３】
また、選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、ＦＥＭを用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルのモデル規模が大規模であるほど、反復法を選択する。
【０１０４】
第２評価部４０３は、例えば、モデル情報１１１とメッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいてモデル規模の評価を行う。例えば、モデル情報１１１が、例えば、モデルの体積などのモデルの形状を表す情報含む場合、第２評価部４０３は、モデルの体積と、メッシュサイズと、要素タイプと、に基づいて要素数を算出する。ここで算出される要素数は予測値である。また、第２評価部４０３は、例えば、モデルの要素数と、要素タイプと、塊度と、に基づいて節点数を算出する。ここで算出される節点数は、予測値となる。また、第２評価部４０３は、例えば、モデルの節点数と、要素タイプと、拘束条件と、に基づいて解析自由度数を算出する。ここで算出される解析自由度数は、予測値となる。
【０１０５】
また、図５（１）〜（３）に示したように、モデル情報１１１にモデルに含まれる要素や節点や解析自由度数の情報などがモデル情報１１１に含まれる場合、第２評価部４０３はモデル情報１１１から要素数や節点数や解析自由度数を特定してもよい。
【０１０６】
また、選択部４０５は、例えば、モデル規模が大規模であるほど、反復法を選択する。具体的に、選択部４０５は、モデルのモデル規模に応じて閾値を取得して、取得した閾値に基づいて反復法と直接法とから解析方法を選択する。
【０１０７】
図９は、モデル規模に応じた閾値例を示す説明図である。閾値テーブル９００は、例えば、判定方法及び要素数ごとに閾値を有する。判定方法は、例えば、上述した判定方法１〜判定方法５である。図９では、モデル規模の評価の一例として、要素数を挙げるが、これに限らず、上述したように節点数や解析自由度数であってもよい。
【０１０８】
閾値テーブル９００例では、要素数は、例えば、３０００、５０００、７０００、１００００である。ここで、判定方法１を例に挙げると、要素数が３０００に対応する閾値ｔｈ１１＞要素数が５０００に対応する閾値ｔｈ１２＞要素数が７０００に対応する閾値ｔｈ１３＞要素数が１００００に対応する閾値ｔｈ１４である。このように、要素数が小さいほど、閾値が大きくなる。これにより、要素数が大きいほど、閾値が小さいため、要素数が大きいほど、反復法が選択されるようになる。モデル規模が大きい場合に、直接法を用いると解析時にメモリの使用量が多く、メモリの使用量が足りなくなり、解析に時間がかかる。このため、モデル規模が大きいときに、反復法が選択されるようになることで、解析時にメモリが不足することを回避でき、解析時間の短縮化を図ることができる。
【０１０９】
選択部４０５は、閾値テーブル９００から要素数に応じた閾値を取得して、算出した塊度と取得した閾値とを比較する。具体的に、選択部４０５は、例えば、解析対象モデルの要素数が４０００以下であれば、要素数が３０００に対応する閾値を取得する。具体的に、選択部４０５は、例えば、解析対象モデルの要素数が４０００より大きく７０００以下であれば、要素数が５０００に対応する閾値を取得する。このように、要素数の範囲を設けてもよい。そして、選択部４０５は、算出した塊度が取得した閾値以上である場合に反復法を選択し、算出した塊度が取得した閾値未満である場合、直接法を選択する。
【０１１０】
ここで、図７及び図８の例では、判定方法３〜５について、要素数が５０００の場合よりも要素数が１００００の場合の方が、閾値が小さくなっている。これは同一のモデルに対して、要素数が５０００の場合よりも要素数が１００００の場合の方が、より小さいメッシュサイズで要素分割を行ったため、モデルの塊度自体が高くなったことが原因である。
【０１１１】
また、補正部４０６が、解析対象のモデルの要素数に対応する閾値を、閾値テーブル９００に含まれる各要素数に対応する閾値に対して線形補間を行うことにより算出してもよい。補正部４０６は、例えば、解析対象のモデルの要素数が７５００であれば、要素数が７０００に対応する閾値と、要素数が１００００に対応する閾値と、を線形補間して、要素数が７５００に対応する閾値を求めてもよい。また、閾値のサンプル点が多い場合、補正部４０６は、ラグランジュ補間やスプライン補間、最小二乗法などを用いて、解析対象モデルの要素数に対応する閾値を求めてもよい。
【０１１２】
これにより、塊度の評価に基づくアルゴリズムの選択時に、モデル規模が大規模であると、反復法が選択されるようになる。
【０１１３】
図１０は、塊度の算出例と解法の選択例を示す説明図である。解析対象モデルは、例えば、寸法が５０×１００×５００である。形状のタイプは不明である。
【０１１４】
第１評価部４０２は、例えば、判定方法１〜５のうちの少なくともいずれかについて、塊度を算出する。詳細な算出方法については上記の通りのため、省略する。図１０の例では、第１評価部４０２は、すべての判定方法１〜５について塊度を算出する。
【０１１５】
そして、第２評価部４０３は、例えば、解析対象モデルについての要素数及び／または節点数及び／または解析自由度数に基づいて解析対象モデルのモデル規模を評価する。ここで、モデル規模の指標値は、例えば、要素数そのものや節点数であってもよい。また、モデル規模の指標値は、例えば解析自由度数であってもよい。
【０１１６】
選択部４０５は、例えば、閾値テーブル９００から評価したモデル規模に応じて閾値を取得する。図１０の例では、要素数が４７２４であるため、選択部４０５は、例えば、閾値テーブル９００から、要素数が５０００に対応する各判定方法の閾値を取得する。要素数が５０００に対応する各判定方法の閾値として、図７の例を用いる。
【０１１７】
図１０の例では、判定方法１において、塊度「３．５５Ｅ−０２」＜閾値「１．００Ｅ−０１」であるため、選択部４０５は、直接法を選択する。
【０１１８】
図１０の例では、判定方法２において、塊度「１．３２Ｅ＋０１」＜閾値「４．０８Ｅ＋０１」であるため、選択部４０５は、直接法を選択する。
【０１１９】
図１０の例では、判定方法３において、塊度「５．９９Ｅ−０１」＜閾値「６．０４Ｅ−０１」であるため、選択部４０５は、直接法を選択する。
【０１２０】
図１０の例では、判定方法４において、塊度「６．１７」＜閾値「６．１８」であるため、選択部４０５は、直接法を選択する。
【０１２１】
図１０の例では、判定方法５において、塊度「２．４９」＜閾値「２．６４」であるため、選択部４０５は、直接法を選択する。
【０１２２】
図１０の例では、各判定方法において直接法が選択されたため、選択部４０５は、直接法を選択して数値解析を実行する。
【０１２３】
つぎに、境界条件の強さについて説明する。図５に示すモデル情報１１１において説明したように、境界条件には、拘束条件と、荷重条件とがある。境界条件の強さは、例えば、拘束条件の強さと荷重条件の弱さとのいずれかであってもよいし、拘束条件の強さと荷重条件の弱さとに基づいて評価されてもよい。
【０１２４】
拘束条件は、拘束の種類や方向、拘束する位置や領域、などが設定される。拘束条件の強さは、例えば、拘束条件に応じて解析対象モデルが拘束される強さである。拘束条件の強さは、例えば、後述するように拘束条件によって解析対象モデルの表面のうち拘束される範囲に相当する領域の面積に基づいて評価される。荷重条件は、荷重の種類、荷重の大きさや方向、荷重をかける位置や領域、などが設定される。荷重条件の弱さは、例えば、荷重条件が剛性に与える影響の大きさの逆数である。荷重条件の弱さは、例えば、荷重条件が剛性に与える影響の大きさの逆数に基づいて評価される。
【０１２５】
ここでは、拘束条件を例に挙げて説明する。選択部４０５は、モデルの塊度の評価結果に基づいて、連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの拘束条件の強さを選択に反映させる。具体的に、第３評価部４０４は、モデルの拘束面積、拘束自由度に基づいて、拘束条件の強さを算出する。拘束面積は、上述したように、拘束条件に応じてモデル内で拘束される部分の面積である。拘束自由度数は、上述したように、１節点当たりの自由度数のうち拘束される自由度数である。より具体的に、第３評価部４０４は、以下式（６）によって拘束条件の強さを算出する。
【０１２６】
拘束条件の強さ＝拘束面積／表面積×（１節点当たりの拘束自由度数／１節点当たりの自由度数）・・・式（６）
モデルに複数の拘束条件が設定されている場合は、これらの総和が、モデル全体での拘束条件の強さとなる。
【０１２７】
そして、選択部４０５は、第３評価部４０４によって算出された拘束条件の強さに基づいて補正された塊度に基づいて、アルゴリズムを選択する。
【０１２８】
選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、アルゴリズムを直接法とするかと反復法とするか選択する際に、モデルの拘束条件の強さに基づいて、評価して得られた塊度に応じたアルゴリズムの選択基準を変更する。具体的に、選択部４０５は、モデルの拘束条件の強さに基づいて補正された閾値を新たな選択基準とする。
【０１２９】
また、例えば、選択部４０５は、モデルの塊度の評価結果に基づいてアルゴリズムを直接法とするか反復法とするか選択する際に、モデルの拘束条件の強さが小さいほど、直接法を選択するようにする。従来、モデルの拘束条件が不十分な場合、反復法では収束せずに、解が求められなかったり、解析に時間がかかったりするという問題点がある。このようなモデルの場合には、直接法を用いることで、比較的安定的に解を求めることができ、解析時間の短縮化を図ることができる。また、逆にモデルの拘束条件が強い場合には、反復法を用いることで、解析時間の短縮化を図ることができる。
【０１３０】
ここでは、モデルの拘束条件の強さに基づいて閾値を補正する例を説明する。まず、拘束条件の強さに基づいて閾値を補正するために、構造解析装置１００は、拘束条件の強さが異なるモデルによって塊度の閾値を求めておく。そして、補正部４０６は、解析対象モデルの拘束条件の強さと、拘束条件の強さが異なるモデルによって求めた塊度の閾値と、に基づいて閾値を補正する。ここで、拘束条件の強さが異なるモデルによって塊度の閾値を求める処理については構造解析装置１００と異なる装置であってもよい。
【０１３１】
図１１は、拘束条件が片持ちの場合における塊度の閾値の導出例を示す説明図である。図１１には、図６に示したモデルｍ２とモデルｍ３とについて拘束条件が片持ちの場合における塊度と解析時間とを用いて塊度の閾値を求めた例を示す。また、モデルｍ２とモデルｍ３とは、５０００要素の場合を例に挙げる。モデルｍ２とモデルｍ３のハッチングされた箇所が拘束される箇所である。
【０１３２】
判定方法１〜５の各々におけるモデルｍ２とモデルｍ３の塊度の算出例については、図８に示した通りである。
【０１３３】
構造解析装置１００は、式（６）に基づいて、モデルｍ２とモデルｍ３の各々についての拘束条件の強さを算出する。ここで、１節点当たりの拘束自由度数と１節点当たりの自由度数とはいずれも３であるため、省略する。
【０１３４】
拘束条件が片持ちであり、モデルｍ２の寸法が「５０×１００×１０００」である。このため、モデルｍ２の拘束面積は、「５０×１００」によって「５．００Ｅ＋０３」となる。また、拘束条件が片持ちであり、モデルｍ３の寸法が「５０×１００×２００」である。このため、モデルｍ３の拘束面積は、「５０×１００」によって「５．００Ｅ＋０３」となる。
【０１３５】
そして、モデルｍ２についての拘束条件の強さは、「（５．００Ｅ＋０３）／（３．１０Ｅ＋０５）」によって「１．６１Ｅ−０２」となる。また、モデルｍ３についての拘束条件の強さは、「（５．００Ｅ＋０３）／（３．１０Ｅ＋０５）」によって「１．６１Ｅ−０２」となる。
【０１３６】
構造解析装置１００は、モデルｍ２とモデルｍ３との各々について、直接法と反復法との各々の数値解析を行うことにより解析時間を得る。そして、構造解析装置１００は、直接法における解析時間と、反復法における解析時間と、の性能比を算出する。
【０１３７】
モデルｍ２についての性能比は「０．２４」であり、モデルｍ３についての性能比は「１．４９」である。
【０１３８】
つぎに、構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の判定方法１〜５の各々における塊度を線形補間により求めて閾値とする。つぎに、構造解析装置１００は、この塊度の閾値に相当する拘束条件の強さを求める。具体的には、モデルｍ２の拘束条件の強さ及びモデルｍ３の拘束条件の強さと、モデルｍ２の性能比及びモデルｍ３の性能比と、に基づいて性能比が１の場合における拘束条件の強さを線形補間で算出する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１３９】
性能比が１の場合における拘束条件の強さ＝モデルｍ２の拘束条件の強さ＋（モデルｍ３の拘束条件の強さ−モデルｍ２の拘束条件の強さ）×（（１−モデルｍ２の性能比）／（モデルｍ３の性能比−モデルｍ２の性能比））
＝（１．６１Ｅ−０２）＋（（１．６１Ｅ−０２）−（１．６１Ｅ−０２））×（（１−０．２４）／（１．４９−０．２４））
＝４．９７Ｅ−０２
【０１４０】
図１２は、拘束条件が両端固定の場合における塊度の閾値の導出例を示す説明図である。図１２には、図６に示したモデルｍ２とモデルｍ３とについて拘束条件が両端固定の場合における塊度と解析時間とを用いて塊度の閾値を求めた例を示す。また、モデルｍ２とモデルｍ３とは、５０００要素の場合を例に挙げる。モデルｍ２とモデルｍ３のハッチングされた箇所が拘束される箇所である。
【０１４１】
判定方法１〜５の各々におけるモデルｍ２とモデルｍ３の塊度の算出例については、図８に示した通りである。
【０１４２】
構造解析装置１００は、式（６）に基づいて、モデルｍ２とモデルｍ３の各々についての拘束条件の強さを算出する。ここで、１節点当たりの拘束自由度数と１節点当たりの自由度数とはいずれも３であるため、省略する。
【０１４３】
拘束条件が両端固定であり、モデルｍ２の寸法が「５０×１００×１０００」であるため、モデルｍ２の拘束面積は、「５０×１００×２」によって「１．００Ｅ＋０４」となる。また、拘束条件が両端固定であり、モデルｍ３の寸法が「５０×１００×２００」であるため、モデルｍ３の拘束面積は、「５０×１００×２」によって「１．００Ｅ＋０４」となる。
【０１４４】
そして、モデルｍ２についての拘束条件の強さは、「（１．００Ｅ＋０４）／（３．１０Ｅ＋０５）」によって「３．２３Ｅ−０２」となる。また、モデルｍ３についての拘束条件の強さは、「（１．００Ｅ＋０４）／（７．００Ｅ＋０４）」によって「１．４３Ｅ−０１」となる。
【０１４５】
構造解析装置１００は、モデルｍ２とモデルｍ３との各々について、直接法と反復法との各々の数値解析を行うことにより解析時間を得る。そして、構造解析装置１００は、直接法における解析時間と、反復法における解析時間と、の性能比を算出する。
【０１４６】
モデルｍ２についての性能比は「０．３８」であり、モデルｍ３についての性能比は「２．１１」である。
【０１４７】
つぎに、構造解析装置１００は、直接法による解析時間と、反復法による解析時間との性能比が１となる場合の判定方法１〜５の各々における塊度を線形補間により求めて閾値とする。つぎに、構造解析装置１００は、この塊度の閾値に相当する拘束条件の強さを求める。具体的には、モデルｍ２の拘束条件の強さ及びモデルｍ３の拘束条件の強さと、モデルｍ２の性能比及びモデルｍ３の性能比と、に基づいて性能比が１の場合における拘束条件の強さを線形補間により算出する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１４８】
性能比が１の場合における拘束条件の強さ＝モデルｍ２の拘束条件の強さ＋（モデルｍ３の拘束条件の強さ−モデルｍ２の拘束条件の強さ）×（（１−モデルｍ２の性能比）／（モデルｍ３の性能比−モデルｍ２の性能比））
＝（３．２３Ｅ−０２）＋（（１．４３Ｅ−０１）−（３．２３Ｅ−０２））×（（１−０．３８）／（２．１１−０．３８））
＝７．２０Ｅ−０２
【０１４９】
つぎに、補正部４０６は、例えば、第３評価部４０４によって算出された拘束条件の強さに基づいて塊度の閾値を補正する。
【０１５０】
図１３は、拘束条件の強さによる塊度の閾値の補正及び解法の選択例を示す説明図である。補正部４０６は、例えば、上述の性能比が１に対応する拘束条件の強さと、解析対象モデルの拘束条件の強さとを比較して線形補間により閾値を補正する。線形補間の代わりにラグランジュ補間やスプライン補間、最小二乗法などを用いてもよい。
【０１５１】
解析対象モデルの拘束条件の強さは、「（１．００Ｅ＋０４）／（１．６０Ｅ＋５）」によって「６．２５Ｅ−０２」となる。
【０１５２】
ここで、判定方法１を例に挙げて閾値の補正について説明する。補正後の閾値は以下のように求めることができる。判定方法１における片持ちの場合の閾値は、図１１に示すように「１．００Ｅ−０１」であり、両端固定の場合の閾値は、図１２に示すように「６．３０Ｅ−０２」である。
補正後の閾値＝片持ちの場合の閾値＋（両端固定の場合の閾値−片持ちの場合の閾値）×（（解析対象モデルの拘束条件の強さ−片持ちの場合における性能比１に対応する拘束条件の強さ）／（両端固定の場合における性能比１に対応する拘束条件の強さ−片持ちの場合における性能比１に対応する拘束条件の強さ））
＝（１．００Ｅ−０１）＋（（６．３０Ｅ−０２）−（１．００Ｅ−０１））×（（（６．２５Ｅ−０２）−（４．９７Ｅ−０２））／（（７．２０Ｅ−０２）−（４．９７Ｅ−０２））
＝７．８８Ｅ−０２
【０１５３】
また、各拘束条件における閾値と拘束条件の強さとに基づいて、解析対象モデルの拘束条件の強さを与えれば補正後の閾値を求めることが可能な関数を作成しておいてもよい。そして、補正部４０６は、関数に解析対象モデルの拘束条件の強さを与えることにより拘束条件の強さに応じた閾値を求めてもよい。
【０１５４】
また、補正部４０６は、判定方法２〜５についても判定方法１と同様に拘束条件の強さに応じた閾値を算出する。そして、選択部４０５は、算出された塊度が補正した閾値以上であるか否かによって直接法と反復法とのうちのいずれかを選択する。
【０１５５】
図１３の例では、判定方法１において、選択部４０５は、直接法を選択する。判定方法２において、選択部４０５は、直接法を選択する。判定方法３において、選択部４０５は、反復法を選択する。判定方法４において、選択部４０５は、反復法を選択する。判定方法５において、選択部４０５は、直接法を選択する。
【０１５６】
また、図１３に示すように、判定方法に応じて選択される解法が異なる場合がある。このため、選択部４０５は、複数の判定方法の各々について解法を選択し、選択結果を出力してもよい。このように、判定方法ごとの選択結果を出力することにより、利用者に最終的な解法の選択をさせてもよい。
【０１５７】
また、選択部４０５は、複数の判定方法の各々について解法を選択し、より多くの判定方法により選択された解法を最終的な解法として選択してもよい。また、選択部４０５は、複数の判定方法のうち一部の判定方法を用いて解法を選択してもよい。
【０１５８】
また、選択部４０５は、例えば、塊度と、モデル規模と、境界条件の強さと、の３つによって解法を選択してもよい。上述したように、境界条件の強さによって閾値を補正したり、モデル規模に応じて閾値を選択するだけでなく、選択部４０５は、塊度と、モデル規模と、境界条件の強さと、の各々について解法を選択してもよい。
【０１５９】
図１４は、解法の選択例を示す説明図である。塊度と、モデル規模と、境界条件の強さとの３つを変数として３次元空間に対して、直接法を選択する領域と、反復法を選択する領域と、の閾値や曲面による境界を予め設定しておいてもよい。そして、選択部４０５は、３次元空間に対して、各算出した判定値がいずれの領域に含まれるかによって直接法と反復法とから解法を選択してもよい。図１４の例では、選択部４０５は、塊度と、モデル規模と、境界条件の強さとの３つの変数のそれぞれが閾値以内である場合に、直接法を選択し、塊度と、モデル規模と、境界条件の強さとの３つの変数のいずれかが閾値以内でない場合、反復法を選択する。
【０１６０】
また、図１４の例では、閾値により境界を設けたが、曲面により境界を設けてもよい。また、塊度と、モデル規模と、境界条件の強さとの各々について複数の評価方法がある場合、選択部４０５は、複数の評価方法のうちの一部の組み合わせによりＮ次元空間として、閾値の境界により直接法と反復法とから解法を選択してもよい。複数の評価方法とは、上述したように、例えば、塊度については、判定方法１〜５、モデル規模については、節点数、要素数、解析自由度数、境界条件の強さについては、拘束条件の強さ、荷重条件の弱さなどが挙げられる。
【０１６１】
また、上述例では、選択部４０５は、反復法と直接法とのいずれかを選択するが、これに限らず、例えば、複数種類の反復法と複数種類の直接法からいずれかの解法を選択してもよいし、閾値を複数設けて複数の解法からいずれかの解法を選択してもよい。また、直接法と反復法とを例として挙げたが、これに限られるものではなく、その他の解法が含まれても良い。選択部４０５は、例えば、モデルの塊度の評価結果に基づいて、モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択する。ここで、閾値の設定方法については、上述した反復法と直接法の選択のための閾値の設定方法と同様に行えばよいため、詳細な説明を省略する。
【０１６２】
（構造解析装置１００による構造解析処理手順例）
図１５は、構造解析装置による構造解析処理手順例１を示すフローチャートである。構造解析装置１００は、解析対象モデルのモデル情報１１１を取得する（ステップＳ１５０１）。
【０１６３】
構造解析装置１００は、解析対象モデルの塊度を評価する（ステップＳ１５０２）。構造解析装置１００は、塊度と閾値とを比較する（ステップＳ１５０３）。
【０１６４】
塊度が閾値未満の場合（ステップＳ１５０３：閾値未満）、構造解析装置１００は、直接法を選択し（ステップＳ１５０４）、ステップＳ１５０６へ移行する。塊度が閾値以上の場合（ステップＳ１５０３：閾値以上）、構造解析装置１００は、反復法を選択し（ステップＳ１５０５）、ステップＳ１５０６へ移行する。つぎに、構造解析装置１００は、選択した解法により数値解析を実行し（ステップＳ１５０６）、一連の処理を終了する。
【０１６５】
図１６は、構造解析装置による構造解析処理手順例２を示すフローチャートである。構造解析装置１００は、解析対象モデルのモデル情報１１１を取得する（ステップＳ１６０１）。
【０１６６】
構造解析装置１００は、拘束条件の強さを評価する（ステップＳ１６０２）。構造解析装置１００は、解析対象モデルの塊度を評価する（ステップＳ１６０３）。構造解析装置１００は、解析対象モデルのモデル規模を評価する（ステップＳ１６０４）。構造解析装置１００は、モデル規模に応じた閾値を取得する（ステップＳ１６０５）。
【０１６７】
構造解析装置１００は、取得した閾値を拘束条件の強さに基づいて補正する（ステップＳ１６０６）。構造解析装置１００は、塊度と閾値とを比較する（ステップＳ１６０７）。塊度が閾値未満である場合（ステップＳ１６０７：閾値未満）、構造解析装置１００は、直接法を選択する（ステップＳ１６０８）。
【０１６８】
塊度が閾値以上である場合（ステップＳ１６０７：閾値以上）、構造解析装置１００は、反復法を選択する（ステップＳ１６０９）。構造解析装置１００は、選択した計算資源で選択した解法により数値解析を実行し（ステップＳ１６１０）、一連の処理を終了する。
【０１６９】
図１７は、システム適用例を示す説明図である。システム１７００は、例えば、クライアント端末装置１７０１と、データセンタ１７０２と、を有する。クライアント端末装置１７０１は、図１７に示すように複数であってもよい。データセンタ１７０２は、例えば、複数のサーバ１７０３を有する。クライアント端末装置１７０１とデータセンタ１７０２とはネットワーク３１０を介して接続される。データセンタ１７０２におけるサーバ１７０３の管理方法については特に限定しない。
【０１７０】
構造解析装置１００は、クライアント端末装置１７０１と、複数のサーバ１７０３と、によって実現されてもよい。例えば、取得部４０１と、第１評価部４０２から第３評価部４０４と、補正部４０６と、についてはクライアント端末装置１７０１によって実現され、選択部４０５についてはサーバ１７０３によって実現されてもよい。ここで、データセンタ１７０２のいずれのサーバ１７０３が選択部４０５による処理を行うかを予め決定していてもよい。
【０１７１】
ここで、クライアント端末装置１７０１とサーバ１７０３のハードウェア構成の詳細例については図示省略するが、図３に示した構造解析装置１００のハードウェア構成と同様であってよい。また、サーバ１７０３は、キーボード３０７マウス３０８やディスプレイ３０９などの入出力装置がなくてもよい。
【０１７２】
サーバ１７０３は、例えば、ＣＡＤとＣＡＥを実行する。そして、クライアント端末装置１７０１は、例えば、ＣＡＥによって作成されたモデル情報１１１を取得して塊度を評価する。そして、クライアント端末装置１７０１は、評価した塊度をサーバ１７０３へ送信する。また、塊度に限らず、クライアント端末装置１７０１は、評価したモデル規模や境界条件の強さをサーバ１７０３へ送信してもよい。そして、サーバ１７０３は、塊度に基づいて反復法と直接法とのいずれかの解法を選択し、選択した解法により数値解析を実行する。ここで、サーバ１７０３は、過去の解析の実績をデータベースに登録してもよい。そして、サーバ１７０３は、クライアント端末装置１７０１から受信した塊度に基づいて解法を選択してもよい。
【０１７３】
図１８は、解析データベース例を示す説明図である。解析データベース１８００は、例えば、モデルＩＤ、塊度１、塊度２、塊度３、塊度４、塊度５、境界条件の強さ、モデル規模、直接法Ａの解析時間、直接法Ｂの解析時間、反復法Ｃの解析時間、反復法Ｄの解析時間のフィールドを有する。各フィールドに情報が設定されることによりレコード（１８０１−１，１８０１−２）として記憶される。解析データベース１８００は、例えば、ＲＯＭ３０２、ＲＡＭ３０３、ディスク３０５などの記憶装置によって実現される。
【０１７４】
モデルＩＤのフィールドには、モデルを識別する識別情報が設定される。塊度１のフィールドには、モデルＩＤが示すモデルの判定方法１における塊度が設定される。塊度２のフィールドには、モデルＩＤが示すモデルの判定方法２における塊度が設定される。塊度３のフィールドには、モデルＩＤが示すモデルの判定方法３における塊度が設定される。塊度４のフィールドには、モデルＩＤが示すモデルの判定方法４における塊度が設定される。塊度５のフィールドには、モデルＩＤが示すモデルの判定方法５における塊度が設定される。境界条件の強さのフィールドには、モデルＩＤが示すモデルの境界条件の強さが設定される。例えば、拘束条件の強さが設定される。モデル規模のフィールドには、モデルＩＤが示すモデルのモデル規模が設定される。例えば、要素数が設定される。
【０１７５】
直接法Ａの解析時間のフィールドには、直接法Ａを用いて数値解析した場合の解析時間が設定される。直接法Ｂの解析時間のフィールドには、直接法Ｂを用いて数値解析した場合の解析時間が設定される。反復法Ｃの解析時間のフィールドには、反復法Ｃを用いて数値解析した場合の解析時間が設定される。反復法Ｄの解析時間のフィールドには、反復法Ｄを用いて数値解析した場合の解析時間が設定される。このように、解法には様々な方法があるため、解析時間のフィールドは、準備された様々な解法や前処理の方法毎に用意される。
【０１７６】
また、図１８に示すフィールドに限らず、モデルの寸法、体積、メッシュサイズ、要素タイプなども記憶されていてもよい。また、メモリ量やＣＰＵ数などの解析実行時に割り当てられた計算資源や実際に必要だった実績値としての計算資源の情報も記憶されていてもよい。
【０１７７】
図１９は、システムにおける実績に基づく解法の選択例を示す説明図である。クライアント端末装置１７０１は、例えば、塊度、拘束条件の強さ、モデル規模などの評価結果をサーバ１７０３へ送信する。つぎに、サーバ１７０３は、クライアント端末装置１７０１から受信した評価結果に最も近い評価結果を有するレコードを解析データベース１８００から検索する。具体的に、サーバ１７０３は、評価結果と、解析データベース１８００に含まれるレコード内の評価結果と、を比較して、類似度をスコア化して最も近い評価結果を有するレコードを検出してもよい。
【０１７８】
サーバ１７０３は、例えば、検出したレコードに含まれる解法の解析時間のうち最も短い解析時間の解法を、解析対象モデルの解法として選択する。図１９の例では、反復法Ｃが選択される。サーバ１７０３は、例えば、選択した解法やモデル規模に基づいて、計算資源を決定する。図１９の例では、サーバ１７０３−１とサーバ１７０３−２とを用いて解析が行われる。計算資源の決定例については、例えば、図２０を用いて説明する。
【０１７９】
サーバ１７０３−１とサーバ１７０３−２とが、並列処理により、選択した反復法Ｃを用いて解析対象モデルに対して数値解析を行う。
【０１８０】
つぎに、サーバ１７０３は、解析結果をクライアント端末へ送信する。また、サーバ１７０３は、評価結果と、解析時間と、をレコードとして解析データベース１８００へ登録する。
【０１８１】
また、サーバ１７０３は、計算機資源が空いている場合に、解析対象モデルの解法として選択しなかった解法による数値解析を行い、解析時間を解析データベース１８００へ登録する。
【０１８２】
また、検出された最も近い評価結果について、各類似度が低い場合には、サーバ１７０３は、上述したように塊度と閾値とを比較して解法を選択してもよい。
【０１８３】
図２０は、サーバの状態とメモリ量の管理例を示す説明図である。テーブル２０００は、データセンタ１７０２内にあるサーバ１７０３の状態と資源を管理するための情報を有する。テーブル２０００は、例えば、サーバＩＤ、状態、メモリ量、ＣＰＵ数などのフィールドを有する。
【０１８４】
サーバＩＤのフィールドには、サーバ１７０３を識別する識別情報が設定される。状態のフィールドには、サーバ１７０３の状態を示す情報が設定される。図２０の例では、「使用中」と「未使用」によってサーバ１７０３の状態を表す。また、より詳細に、使用中のＣＰＵ数などによってサーバ１７０３の状態を表してもよい。
【０１８５】
メモリ量のフィールドには、サーバ１７０３が有するＲＡＭ３０３やディスク３０５のメモリ量が設定される。ＣＰＵ数のフィールドには、例えば、サーバ１７０３が有するプロセッサの数が設定される。
【０１８６】
ここで、サーバ１７０３−１〜サーバ１７０３−３については、メモリ量とＣＰＵ数が同じであるが、サーバ１７０３−４は、サーバ１７０３−１〜サーバ１７０３−３よりもメモリ量及びＣＰＵ数が多い場合を例に挙げる。
【０１８７】
解析対象モデルがｘ〜ｚまでの３つの例を挙げる。ここで、解析対象モデルのモデル規模は同程度であるとする。また、解析対象モデルｘの塊度がａｘであり、解析対象モデルｙの塊度がａｙであり、解析対象モデルｚの塊度がａｚとする。塊度の関係はａｘ＞閾値＞ａｙ＞ａｚである。解析対象モデルｘの解法は反復法が選択され、解析対象モデルｙの解法は直接法が選択され、解析対象モデルｚの解法は直接法が選択される。
【０１８８】
ここで、サーバ１７０３は、直接法を選択した場合に、メモリ量が多い計算資源を選択する。サーバ１７０３は、例えば、サーバ１７０３−４を計算資源として選択する。サーバ１７０３は、例えば、反復法の場合、サーバ１７０３−１〜サーバ１７０３−３のいずれかを選択する。また、サーバ１７０３は、例えば、複数の反復法が選択可能な場合、反復法の種類に応じて、サーバ１７０３−１〜サーバ１７０３−３のうちの複数のサーバ１７０３によって同時処理を行うようにしてもよい。また、サーバ１７０３は、複数のサーバを用いた並列処理が可能な解法の場合には、複数の計算資源を選択してもよい。さらに、サーバ１７０３は、モデル情報から、効率的な計算に必要なメモリ量などの計算資源を予め見積もり、その結果に応じて適切な計算資源を選択してもよい。
【０１８９】
例えば、解析対象モデルｘについては、例えば、計算資源としてサーバ１７０３−４が選択される。解析対象モデルｙについては、例えば、計算資源としてサーバ１７０３−１が選択される。解析対象モデルｚについては、例えば、計算資源としてサーバ１７０３−２が選択される。このように、選択部４０５は、それぞれの解析対象モデルについて計算資源を選択する。
【０１９０】
また、計算資源の選択のために、テーブルを用いる例を挙げたが、特に限定しない。
【０１９１】
（システム１７００による構造解析処理手順例を示すフローチャートである。）
図２１及び図２２は、システムによる構造解析処理手順例を示すフローチャートである。ここで、システム１７００は、上述したように、クライアント端末装置１７０１と、サーバ１７０３とを有する。そのため、図２１及び図２２に示す処理については、サーバ１７０３が行ってもよいし、クライアント端末装置１７０１が行ってもよい。
【０１９２】
システム１７００は、クライアント端末装置１７０１によって解析対象モデルのモデル情報１１１を取得する（ステップＳ２１０１）。つぎに、システム１７００は、クライアント端末装置１７０１によって解析対象モデルのモデル規模を評価する（ステップＳ２１０２）。システム１７００は、クライアント端末装置１７０１によって境界条件の強さを評価する（ステップＳ２１０３）。
【０１９３】
つぎに、システム１７００は、クライアント端末装置１７０１によって解析対象モデルの塊度を評価する（ステップＳ２１０４）。システム１７００は、解析データベース１８００から、サーバ１７０３によって、解析対象モデルの評価結果に最も近い評価結果を含むレコードを検索する（ステップＳ２１０５）。システム１７００は、サーバ１７０３によって検索したレコードから最も解析時間の短い解法を選択する（ステップＳ２１０６）。つぎに、システム１７００は、サーバ１７０３によって特定した解法により数値解析を実行する（ステップＳ２１０７）。
【０１９４】
つぎに、システム１７００は、サーバ１７０３によって解析結果を出力する（ステップＳ２２０１）。そして、システム１７００は、サーバ１７０３によって評価結果と解析時間を解析データベース１８００に格納する（ステップＳ２２０２）。システム１７００は、計算機環境の負荷が高いか否かを判定する（ステップＳ２２０３）。計算機環境の負荷が高い場合（ステップＳ２２０３：Ｙｅｓ）、システム１７００は、ステップＳ２２０３へ戻る。計算機環境の負荷が高いとは、例えば、処理のないサーバ１７０３がない状態である。
【０１９５】
計算機環境の負荷が低い場合（ステップＳ２２０３：Ｎｏ）、システム１７００は、サーバ１７０３によってすべての解法で解析実行したか否かを判断する（ステップＳ２２０４）。すべての解法で解析実行していないと判断された場合（ステップＳ２２０４：Ｎｏ）、システム１７００は、未実行の解法のうち検索したレコードの中で最も解析時間が短い解法により数値解析を実行する（ステップＳ２２０５）。そして、システム１７００は、解析時間を解析データベース１８００に格納し（ステップＳ２２０６）、ステップＳ２２０３へ戻る。すべての解法で解析実行したと判断された場合（ステップＳ２２０４：Ｙｅｓ）、システム１７００は、一連の処理を終了する。
【０１９６】
以上説明したように、構造解析装置１００は、解析対象のモデルの形状を表す情報に基づきモデルの塊度を評価し、有限要素法を用いた連立一次方程式による解法を選択する。これにより、モデルの形状の特徴を判定することで、連立一次方程式の特性に応じた解法が選択されるため、解析時間の短縮化を図ることが可能となる。
【０１９７】
また、塊度は、モデルの体積と、モデルを覆う最小の球または立方体の体積と、に基づいて評価される。これにより、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【０１９８】
また、塊度は、モデルの体積とモデルの質量とモデルの主慣性モーメントとに基づき評価される。このように、モデルの形状とモデルの重さとに応じて解法が選択される。これにより、ＣＡＥのプリプロセッサによってメッシュ分割を行う前段階であっても、解法の選択を行うことができ、解法を簡単に決定することが可能となる。
【０１９９】
また、塊度は、モデルの要素数と節点数とに基づいて評価される。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、全要素数／全節点数が大きな値であれば、塊ものである可能性が高くなり、全要素数／全節点数が小さな値であれば、板梁ものである可能性が高くなる。このため、解析対象モデルが塊ものに対して反復法を選択させ、解析対象モデルが板梁ものに対して直接法を選択させることができ、解析時間の短縮化を図ることができる。また、有限要素法を用いる際の解析対象モデルから要素数や節点数は簡単に特定可能であるため、解法を簡単に決定することができる。
【０２００】
また、塊度は、モデルに含まれる各要素の解析自由度数の総和とモデル全体の解析自由度数とに基づいて評価される。解析自由度数は、例えば、節点数などによって予測値を算出することができる。このため、有限要素法を用いる際の解析対象モデルから解析自由度数を見積もることができ、解法を簡単に決定することができる。また、要素タイプが異なるモデル間で塊度の比較を行うことができるため、汎用性が高い。
【０２０１】
また、塊度は、モデルの節点数のうちのモデルの表面上にある節点の数と、モデルの節点数のうちのモデルの内部にある節点の数と、に基づいて評価される。例えば、解析対象モデルが板梁ものであると、節点が解析対象モデルの表面に多くなるため、節点の数が複数の要素により共有化される可能性が低くなる。これに対して、解析対象モデルが塊ものであれば、内部で節点が共有化される可能性が高くなる。このため、表面上にある節点数と、内部にある節点数との比によって塊ものに近い形状であるか板梁ものに近い形状であるかを判定することができる。したがって、解析時間の短縮化を図ることができる。
【０２０２】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、塊度が大きいほど、反復法が選択されやすくする。解析対象モデルが板梁ものであると、反復法において解が収束せず解析に時間がかかる。このため、塊度が小さい場合に、直接法を選択することにより、解析時間の短縮を図ることができる。また、解析対象モデルが塊ものであると、直接法において演算量が増え解析に時間がかかる。このため、塊度が大きい場合に、反復法を選択することにより、解析時間の短縮化を図ることができる。
【０２０３】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さ及び／又は前記モデルのモデル規模を選択に反映させる。これにより、より連立一次方程式の特性に応じた解法が選択されるため、解析時間の短縮化を図ることができる。
【０２０４】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さが大きいほど、反復法を選択する。従来、モデルの拘束条件が不十分な場合など、モデルが不安定であり、反復法において収束しない場合がある。このため、モデルの境界条件の強さが小さい場合に、直接法が選択されやすくなる。これにより、解析時間の短縮化を図ることができる。また、モデルの境界条件の強さが大きい場合など、モデルが安定している場合に、反復法が選択されやすくなることで、解析時間の短縮化を図ることができる。
【０２０５】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルのモデル規模が大規模であるほど、反復法を選択する。直接法を用いると、メモリの使用量が大きくなる。また、モデルの規模が大きいと、演算量が多いため、メモリの使用量が大きくなる。このため、モデルの規模が大きい場合に、メモリの使用量の少ない反復法が選択されることにより、解析時間の短縮化を図ることができる。
【０２０６】
また、構造解析装置１００は、モデルの塊度の評価結果に基づいて、解法を選択する際に、モデルの境界条件の強さ及び／又は前記モデルのモデル規模に基づいて、評価して得られた塊度に応じたアルゴリズムの選択基準を変更する。これにより、モデルのモデル規模が大規模であるほど、反復法が選択されやすくでき、モデルの境界条件の強さが大きいほど、反復法が選択されやすくできる。
【０２０７】
また、構造解析装置１００は、境界条件の強さを、モデルの拘束面積、拘束自由度に基づいて算出する。このように、境界条件の強さを簡単に評価することができるため、判定に要する時間の短縮化を図ることができる。
【０２０８】
また、構造解析装置１００は、モデル規模を、モデル情報とメッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいて評価する。このように、モデル規模を簡単に評価することができるため、判定に要する時間の短縮化を図ることができる。
【０２０９】
構造解析装置１００は、解析対象のモデルの形状や境界条件を表す情報に基づきモデルの塊度及び／又はモデル規模及び／又は境界条件の強さを評価し、モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する。これにより、モデルの形状や境界条件の特徴から、数値解析の特性を判定でき、数値解析の特性に応じた解析方法と計算資源を用いて、解析時間の短縮化を図ることができる。
【０２１０】
なお、本実施の形態で説明した構造解析方法は、予め用意された構造解析プログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本構造解析プログラムは、磁気ディスク、光ディスク、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）フラッシュメモリなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、構造解析プログラムは、インターネット等のネットワークを介して配布してもよい。
【０２１１】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０２１２】
（付記１）モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【０２１３】
（付記２）前記塊度は、前記モデルの体積と、前記モデルを覆う最小の球または立方体の体積と、に基づいて評価されることを特徴とする付記１に記載の構造解析方法。
【０２１４】
（付記３）前記塊度は、前記モデルの体積と前記モデルの質量と前記モデルの主慣性モーメントとに基づき評価されることを特徴とする付記１に記載の構造解析方法。
【０２１５】
（付記４）前記塊度は、前記モデルの要素数と節点数とに基づいて評価されることを特徴とする付記１に記載の構造解析方法。
【０２１６】
（付記５）前記塊度は、前記モデルに含まれる各要素の解析自由度数の総和と前記モデル全体の解析自由度数とに基づいて評価されることを特徴とする付記１に記載の構造解析方法。
【０２１７】
（付記６）前記塊度は、前記モデルの節点数のうちの前記モデルの表面上にある節点数と、前記モデルの節点数のうち前記モデルの表面上にある節点以外の節点数と、の比に基づいて評価されることを特徴とする付記１に記載の構造解析方法。
【０２１８】
（付記７）前記塊度は、前記モデルの節点数のうちの前記モデルの表面上にある節点数と、前記モデルの節点数と、の比に基づいて評価されることを特徴とする付記１に記載の構造解析方法。
【０２１９】
（付記８）前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記塊度が大きいほど、反復法が選択されやすくする、ことを特徴とする付記１に記載の構造解析方法。
【０２２０】
（付記９）前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模を選択に反映させる、ことを特徴とする付記１に記載の構造解析方法。
【０２２１】
（付記１０）前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さが大きいほど、反復法が選択されやすくする、ことを特徴とする付記１に記載の構造解析方法。
【０２２２】
（付記１１）前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルのモデル規模が大規模であるほど、反復法が選択されやすくする、ことを特徴とする付記１に記載の構造解析方法。
【０２２３】
（付記１２）前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析に用いるアルゴリズムを直接法とするか反復法とするか選択する際に、前記モデルの境界条件の強さ及び／又は前記モデルのモデル規模に基づいて、評価して得られた前記塊度に応じたアルゴリズムの選択基準を変更する、ことを特徴とする付記１に記載の構造解析方法。
【０２２４】
（付記１３）前記境界条件の強さは、前記境界条件に含まれる拘束条件による前記モデルの拘束面積、拘束自由度に基づいて算出されることを特徴とする付記１２に記載の構造解析方法。
【０２２５】
（付記１４）前記モデル規模の評価は、前記モデル情報と前記メッシュサイズとから算出された要素数及び／又は節点数及び／又は解析自由度数に基づいて行われる、ことを特徴とする付記１２に記載の構造解析方法。
【０２２６】
（付記１５）モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度及び／又は境界条件の強さ及び／又はモデル規模を評価し、
前記モデルの塊度及び／又は境界条件の強さ及び／又はモデル規模の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する、
処理をコンピュータが実行することを特徴とする構造解析方法。
【０２２７】
（付記１６）モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析ソルバーの連立一次方程式求解のアルゴリズムを直接法とするか反復法とするか選択する、
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【０２２８】
（付記１７）モデル情報を取得し、
取得した前記モデル情報に基づいて、解析対象のモデルの塊度を評価し、
前記モデルの塊度の評価結果に基づいて、前記モデルの有限要素法を用いた構造解析の数値解析アルゴリズムを選択するとともに、数値解析で用いる計算資源を決定する、
処理をコンピュータに実行させることを特徴とする構造解析プログラム。
【符号の説明】
【０２２９】
１００  構造解析装置
１０１  解析対象モデル
１０２  要素
１０３  節点
１１１  モデル情報
４０１  取得部
４０２  第１評価部
４０３  第２評価部
４０４  第３評価部
４０５  選択部
４０６  補正部
ｍ１，ｍ２，ｍ３，ｍ４  モデル
【国際調査報告】
2017077610.tif 000025
2017077610.tif 000026
2017077610.tif 000027
2017077610.tif 000028