(57)【特許請求の範囲】
【請求項１】
型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション装置であって、
シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定するマクロ領域設定手段と、
前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定するミクロ領域設定手段と、
前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算する第１演算手段と、
前記第１演算手段による演算結果に基づいて前記ミクロ領域に対して与えるべき初期条件を演算する初期条件演算手段と、
前記初期条件演算手段によって演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算する第２演算手段と、
を有することを特徴とする凝固シミュレーション装置。
【請求項２】
前記第１演算手段および前記第２演算手段は、それぞれの領域のボクセルの中心位置の微小時間経過ごとの温度を演算することによって前記溶融物の凝固過程を演算することを特徴とする請求項１に記載の凝固シミュレーション装置。
【請求項３】
前記初期条件演算手段は、前記マクロ領域と前記ミクロ領域との境界に位置する前記ミクロ領域のボクセルの中心位置の温度を、当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置の温度に基づいて演算することを特徴とする請求項２に記載の凝固シミュレーション装置。
【請求項４】
前記ミクロ領域のボクセルの中心位置の温度は、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置との距離に基づく補完演算によって求めることを特徴とする請求項３に記載の凝固シミュレーション装置。
【請求項５】
前記ミクロ領域のボクセルの中心位置の温度は、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域の１つのボクセルの中心位置とを頂点に含むそれぞれの直方体の体積に基づく補完演算によって求めることを特徴とする請求項３に記載の凝固シミュレーション装置。
【請求項６】
前記初期条件演算手段は、前記第１演算手段によって前記マクロ領域の演算が終了する度に、前記ミクロ領域に対して与えるべき境界条件を更新することを特徴とする請求項１に記載の凝固シミュレーション装置。
【請求項７】
前記マクロ領域のボクセルの大きさは、前記ミクロ領域のボクセルの大きさの整数倍であり、前記マクロ領域のボクセルに設定された３次元座標軸と前記ミクロ領域のボクセルに設定された３次元座標軸とは一致していることを特徴とする請求項４または５に記載の凝固シミュレーション装置。
【請求項８】
型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション方法であって、
シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定する一方、前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定する段階と、
前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算する段階と、
上記凝固過程の演算結果に基づいて前記ミクロ領域に対して与えるべき初期条件を演算する段階と、
前記演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算する段階と、
から成ることを特徴とする凝固シミュレーション方法。
【請求項９】
型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション方法をコンピュータに実行させるためのプログラムであって、
コンピュータに、
シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定させる一方、前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定させる段階と、
前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算させる段階と、
上記凝固過程の演算結果に基づいて前記ミクロ領域に対して与えるべき初期条件を演算させる段階と、
前記演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算させる段階と、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、極めて正確なシミュレーション結果を得ることができる、凝固シミュレーション装置、凝固シミュレーション方法およびその方法をコンピュータに実行させるためのプログラムに関する。
【０００２】
【従来の技術】
従来、たとえば、鋳造の凝固シミュレーションは、つぎの手順で行っている。まず、凝固シミュレーションの対象となる部分の形状を入力し、その形状を微小要素に分解して多数の小さなモデルを作る。つぎに、時間ステップ幅、計算終了時間などの計算条件や、鋳物、鋳型、空気の物性値（密度、比熱、熱伝導率、凝固特性、粘性係数、表面張力）を入力する。さらに、湯口ヘッド相当分の加圧力や流れの物性値、堰との境界条件を入力する。そして、入力された計算条件、物性値および境界条件に基づいて、注湯開始から充填完了までの湯流れ中の圧力や速度および温度の計算を、メインフレーム、ミニコンピュータ、ワークステーションなどのコンピュータによって所定の時間ステップ幅ごとに繰り返し行う。
【０００３】
【発明が解決しようとする課題】
しかしながら、従来の凝固シミュレーションでは、コンピュータの性能との関係でシミュレーションの精度が制限されるという問題がある。
【０００４】
凝固シミュレーションを行う場合、前述のように、対象部分を微小要素に分解して多数の小さなモデルを作らなければならない。高精度のシミュレーション結果を得るためには、その精度に応じて要素の数を増やさなければならない。モデルの数を増やすとコンピュータの演算負荷が比例級数的に増加するので、シミュレーション結果が得られるまでには多大の時間を要する。したがって、一定の時間内でシミュレーション結果を得るためには、対象領域を制限するか、シミュレーション精度を犠牲にするかのいずれかの選択を迫られる。
【０００５】
たとえば、エンジンのシリンダーヘッドの凝固シミュレーションを行う場合、鋳造機を含む対象領域の大きさは、１５００×２５００×１０００ｍｍほど取る必要がある。この大きさの対象領域を、分解能（ピッチ）を１ｍｍとする直交差分法でシミュレーションをするとすれば、モデル数は約３７億個以上になる。膨大なモデル数の対象領域をシミュレーションするには、Ｔ（テラ）バイト単位の記憶容量を持つＴ（テラ）ＦＬＯＰＳ単位の演算速度のコンピュータを用いて、年単位の時間が必要である。したがって、現在は事実上そのシミュレーションを行うことができない。
【０００６】
一方、対象領域の大きさを５００×３００×３００ｍｍに制限すると、モデル数が４５００万個程度になるので、１Ｇ（ギガ）バイト程度の記憶容量のワークステーションでも１週間程度でシミュレーション結果を得ることができる。ところが、対象領域の大きさを制限すると、正確な境界条件を決めることができないため、一定の簡略化した値の入力を余儀なくされる。このため、得られるシミュレーション結果は高精度とは言い難い。
【０００７】
以上のように、従来の凝固シミュレーションでは、１つのモデルの大きさをシミュレーションできる程度にまで大きくしたり、対象領域を局所的にしたりして、ある程度の精度のシミュレーション結果が得られるようにしている。しかし、たとえ対象領域を制限したとしても、数値解析において重要な境界条件を正確に決めることができないため、高精度のシミュレーション結果を得ることは不可能なのである。
【０００８】
本発明は、このような従来の問題点に鑑みて成されたものであり、極めて正確なシミュレーション結果を従来のシミュレーションにかかっている時間と同じくらいの時間で得ることができる、凝固シミュレーション装置、凝固シミュレーション方法およびその方法をコンピュータに実行させるためのプログラムの提供を目的とする。
【０００９】
【課題を解決するための手段】
上記した課題を解決し、目的を達成するため、請求項１に記載の発明にかかる凝固シミュレーション装置は、型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション装置であって、シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定するマクロ領域設定手段と、前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定するミクロ領域設定手段と、前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算する第１演算手段と、前記第１演算手段による演算結果に基づいて前記ミクロ領域に対して与えるべき初期条件を演算する初期条件演算手段と、前記初期条件演算手段によって演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算する第２演算手段と、を有することを特徴とする。
【００１０】
この請求項１に記載の発明では、シミュレーションの対象となる領域を大きなボクセルの集まった領域であるマクロ領域と、小さなボクセルの集まった領域であるミクロ領域とに分け、マクロ領域における凝固シミュレーションは精度を犠牲にして演算時間を優先し、一方、ミクロ領域における凝固シミュレーションは演算時間を犠牲にして精度を優先する。このため、凝固シミュレーションを高精度で行いたい領域をミクロ領域に設定すれば、望む精度の凝固シミュレーション結果を得ることができる。
【００１１】
このようにすれば、通常、高精度のシミュレーション結果が望まれる領域は、シミュレーションの対象となる領域のごく一部であるので、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。
【００１２】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度で行うことができる。
【００１３】
したがって、周囲の外気温に対する溶融物全体の凝固過程とその溶融物の一部分の凝固過程の解析を同時にかつ高精度で行うことができる。
【００１４】
請求項２に記載の発明にかかる凝固シミュレーション装置は、請求項１に記載の凝固シミュレーション装置において、前記第１演算手段および前記第２演算手段は、それぞれの領域のボクセルの中心位置の微小時間経過ごとの温度を演算することによって前記溶融物の凝固過程を演算することを特徴とする。
【００１５】
この請求項２に記載の発明によれば、それぞれのボクセルの中心位置の温度を演算しているので、ボクセル全体（立方体）の温度を演算する場合に比較して、ボクセルの温度を求めるための演算量を少なくすることができる。
【００１６】
請求項３に記載の発明にかかる凝固シミュレーション装置は、請求項２に記載の凝固シミュレーション装置において、前記初期条件演算手段は、前記マクロ領域と前記ミクロ領域との境界に位置する前記ミクロ領域のボクセルの中心位置の温度を、当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置の温度に基づいて演算することを特徴とする。
【００１７】
この請求項３に記載の発明によれば、時々刻々と変化するミクロ領域の境界部分の温度を、演算量を抑えつつも正確に求めることができる。したがって、常に適切な境界条件を得ることができる。
【００１８】
請求項４に記載の発明にかかる凝固シミュレーション装置は、請求項３に記載の凝固シミュレーション装置において、前記ミクロ領域のボクセルの中心位置の温度は、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置との距離に基づく補完演算によって求めることを特徴とする。
【００１９】
この請求項４に記載の発明によれば、時々刻々と変化するミクロ領域の境界部分の温度を、演算量を抑えつつも、さらに正確に求めることができる。したがって、常に適切な境界条件を得ることができる。
【００２０】
請求項５に記載の発明にかかる凝固シミュレーション装置は、請求項３に記載の凝固シミュレーション装置において、前記ミクロ領域のボクセルの中心位置の温度は、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域の１つのボクセルの中心位置とを頂点に含むそれぞれの直方体の体積に基づく補完演算によって求めることを特徴とする。
【００２１】
この請求項５に記載の発明によれば、時々刻々と変化するミクロ領域の境界部分の温度を、正確に求めることができる。したがって、常に正確な境界条件を得ることができる。
【００２２】
請求項６に記載の発明にかかる凝固シミュレーション装置は、請求項１に記載の凝固シミュレーション装置において、前記初期条件演算手段は、前記第１演算手段によって前記マクロ領域の演算が終了する度に、前記ミクロ領域に対して与えるべき境界条件を更新することを特徴とする。
【００２３】
この請求項６に記載の発明によれば、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算が終了する度に動的に更新されるため、ミクロ領域の凝固シミュレーションは常に正確な境界条件に基づいて行われる。したがって、非常に高精度な凝固シミュレーションの結果を得ることができる。
【００２４】
請求項７に記載の発明にかかる凝固シミュレーション装置は、請求項４または５に記載の凝固シミュレーション装置において、前記マクロ領域のボクセルの大きさは、前記ミクロ領域のボクセルの大きさの整数倍であり、前記マクロ領域のボクセルに設定された３次元座標軸と前記ミクロ領域のボクセルに設定された３次元座標軸とは一致していることを特徴とする。
【００２５】
この請求項７に記載の発明によれば、補完演算を行う場合の演算量を少なくでき（座標軸がずれている場合に比較して）、また、補完演算の誤差を最小にすることができる。
【００２６】
請求項８に記載の発明にかかる凝固シミュレーション装置は、型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション方法であって、シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定する一方、前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定する段階と、前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算する段階と、上記凝固過程の演算結果に基づいて前記ミクロ領域に対して与えるべき初期条件を演算する段階と、前記演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算する段階と、から成ることを特徴とする。
【００２７】
この請求項８に記載の発明によれば、請求項１の発明と同様に、凝固シミュレーションを高精度で行いたい領域をミクロ領域に設定すれば、望む精度の凝固シミュレーション結果を得ることができる。また、通常、高精度のシミュレーション結果が望まれる領域は、シミュレーションの対象となる領域のごく一部であるので、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。
【００２８】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度で行われる。
【００２９】
請求項９に記載の発明にかかる凝固シミュレーション方法をコンピュータに実行させるためのプログラムは、型内に流し込まれた溶融物の凝固時間分布を求めるための凝固シミュレーション方法をコンピュータに実行させるためのプログラムであって、コンピュータに、シミュレーションの対象となる領域に複数のボクセルから構成されるマクロ領域を設定させる一方、前記シミュレーションの対象となる領域の一部に前記マクロ領域を構成するボクセルよりも小さい複数のボクセルから構成されるミクロ領域を設定させる段階と、前記マクロ領域に対して与えられた初期条件に基づいて前記マクロ領域における前記溶融物の凝固過程を演算させる段階と、上記凝固過程の演算結果に基づいて、前記ミクロ領域に対して与えるべき初期条件を演算させる段階と、前記演算された初期条件に基づいて前記ミクロ領域における前記溶融物の凝固過程を演算させる段階と、を実行させることを特徴とする。
【００３０】
この請求項９に記載の発明によれば、請求項１の発明と同様に、凝固シミュレーションを高精度で行いたい領域をミクロ領域に設定すれば、コンピュータは、望む精度の凝固シミュレーション結果を演算する。通常、高精度のシミュレーション結果が望まれる領域は、シミュレーションの対象となる領域のごく一部であるので、コンピュータは、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を演算する。
【００３１】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度で行われる。
【００３２】
【発明の効果】
以上説明したように、請求項１に記載の発明によれば、シミュレーションの対象となる領域を大きなボクセルの集まった領域であるマクロ領域と、小さなボクセルの集まった領域であるミクロ領域とに分けたので、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。
【００３３】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度になる。
【００３４】
請求項２に記載の発明によれば、それぞれのボクセルの中心位置の温度を演算するので、ボクセル全体（立方体）の温度を演算する場合に比較して、ボクセルの温度を求めるための演算量を少なくすることができ、高速度の凝固シミュレーションが実現される。
【００３５】
請求項３に記載の発明によれば、マクロ領域と前記ミクロ領域との境界に位置する前記ミクロ領域のボクセルの中心位置の温度を、当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置の温度に基づいて演算するので、演算量を抑えつつも適切な境界条件を得ることができる。
【００３６】
請求項４に記載の発明によれば、前記ミクロ領域のボクセルの中心位置の温度を、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域のボクセルの中心位置との距離に基づく補完演算によって求めたので、演算量を抑えつつも正確な境界条件を得ることができる。
【００３７】
請求項５に記載の発明によれば、ミクロ領域のボクセルの中心位置の温度を、当該ボクセルの中心位置と当該ボクセルの周囲に位置するマクロ領域の１つのボクセルの中心位置とを頂点に含むそれぞれの直方体の体積に基づく補完演算によって求めたので、正確な境界条件を得ることができる。
【００３８】
請求項６に記載の発明によれば、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算が終了する度に動的に更新されるため、ミクロ領域の凝固シミュレーションは常に正確な境界条件に基づいて演算されることになり、非常に高精度な凝固シミュレーションの結果を得ることができる。
【００３９】
請求項７に記載の発明によれば、マクロ領域のボクセルの大きさは、ミクロ領域のボクセルの大きさの整数倍とし、前記マクロ領域のボクセルに設定された３次元座標軸と前記ミクロ領域のボクセルに設定された３次元座標軸とを一致させたので、補完演算を行う場合の演算量を少なくでき、また、補完演算の誤差を最小にすることができる。
【００４０】
請求項８に記載の発明によれば、請求項１に記載の発明と同様、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。
【００４１】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度になる。
【００４２】
請求項９に記載の発明によれば、請求項１に記載の発明と同様、コンピュータにより、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。
【００４３】
また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度になる。
【００４４】
【発明の実施の形態】
以下に添付図面を参照して、本発明にかかる凝固シミュレーション装置、凝固シミュレーション方法およびその方法をコンピュータに実行させるためのプログラムの好適な実施の形態を詳細に説明する。この実施の形態は、（１）凝固シミュレーション装置の構成、（２）凝固シミュレーション方法の概略の手順、（３）凝固シミュレーション方法およびプログラムの詳細な手順、の順番で説明する。
（１）凝固シミュレーション装置の構成
図１は、本発明にかかる凝固シミュレーション装置の概略構成図である。この装置は、入力装置１０２、表示装置１０４、ＲＯＭ１０６、物性値データベース１０８、演算装置１１０、ＲＡＭ１１２、演算結果記憶部１１４を備えている。
【００４５】
入力装置１０２は、凝固シミュレーションに必要な種々の条件を入力するために用いられる。入力される種々の条件には、たとえば、凝固シミュレーションの対象となる部分の形状、マクロ領域およびその領域のボクセルの大きさ、ミクロ領域およびその領域のボクセルの大きさ、マクロ領域およびミクロ領域におけるシミュレーション計算の時間ステップ幅、シミュレーションの計算終了時間、マクロ領域の境界条件がある。
【００４６】
表示装置１０４は、凝固シミュレーションの結果を表示する。シミュレーション結果である凝固時間の分布は、数値または色付けされた画像として表示される。
【００４７】
ＲＯＭ１０６は、本発明にかかる凝固シミュレーション方法をこの装置（コンピュータ）に実行させるためのプログラムを記憶している。この凝固シミュレーション方法とその方法を実行させるためのプログラムは、後ほどフローチャートを用いて詳細に説明する。
【００４８】
物性値データベース１０８は、凝固シミュレーションの対象となる領域に存在する物質の物性値を記憶している。たとえば、鋳物、鋳型、空気の物性値（密度、比熱、熱伝導率、凝固特性）などである。
【００４９】
演算装置１１０は、入力装置１０２によって入力された各種の条件や物性値データベース１０８に記憶されている物性値を入力し、ＲＯＭ１０６に記憶されているプログラムに基づいて凝固シミュレーションのための演算を行い、その演算の結果を表示装置１０４に表示させる。
【００５０】
ＲＡＭ１１２は、演算装置１１０が入力した各種の条件や物性値、または演算装置１１０によって得られたシミュレーション途中の演算結果を一時記憶しておくために用いられる。
【００５１】
演算結果記憶部１１４は、演算装置１１０によって微小時間ごとに演算された凝固シミュレーションの演算結果を時系列に記憶する。最終的な凝固シミュレーションの結果は、ここに記憶されている一連の演算結果を集約させることによって得られる。
（２）凝固シミュレーション方法の概略の手順
つぎに、本発明にかかる凝固シミュレーション方法の概略を、その方法の手順を示したフローチャートに基づいて説明する。
【００５２】
図２は、凝固シミュレーションの概略の手順を示すフローチャートである。
【００５３】
まず、オペレータは、凝固シミュレーションの対象となる領域の画像を表示装置１０４に表示させる。その表示した領域内にマクロ領域を設定し、さらにそのマクロ領域内にミクロ領域を設定する。なお、マクロ領域は指定した大きさの正方体（ボクセル）で分割され、ミクロ領域は、マクロ領域よりも小さい大きさ（たとえばマクロ領域のボクセルの寸法の１／３）のボクセルで分割される（工程１）。
【００５４】
つぎに、オペレータは、凝固シミュレーションの対象となる領域に含まれる物の物性値、凝固シミュレーションを行うための初期条件、境界条件を設定する（工程２）。
【００５５】
以上の工程が終了したら、演算装置１１０は、入力された物性値、初期条件、境界条件に基づいて、マクロ領域を構成するすべてのボクセルの中心位置の温度を演算し、その温度と溶融物の物性値とからマクロ的な固相率の分布を演算する（工程３）。
【００５６】
演算装置１１０は、マクロ領域のボクセルの中心位置の温度に基づいて、ミクロ領域の境界条件を演算する。ミクロ領域はマクロ領域内に存在するので、ミクロ領域の境界位置の温度は時間の経過と共に刻々と変化する。ミクロ領域の境界位置の温度が正確にわからなければ、正確なシミュレーション結果を得るためにマクロ領域よりも細かく細分化したミクロ領域を設ける意味がない。このため、まず大まかなマクロ領域の温度分布を求め、この温度分布に基づいてミクロ領域の正確な境界条件を求めている（工程４）。
【００５７】
つぎに、演算装置１１０は、与えられた境界条件に基づいて、ミクロ領域を構成するすべてのボクセルの中心位置の温度を演算し、その温度と溶融物の物性値とからミクロ的な固相率の分布を演算する（工程５）。
【００５８】
そして、工程３〜工程５までを微小時間ごとに繰り返し、溶融物の凝固時間分布を求める。演算装置１１０は、求められた凝固時間分布から色付けする処理をし、その結果を表示装置１０４に表示させる。この表示を見れば、たとえば鋳造工程で型に流し込まれた湯が、型の内部でどのように固まっていくのかが明確になる（工程６）。
【００５９】
以上のように、本発明の凝固シミュレーション方法では、まず、マクロ領域の温度分布を大雑把に求め、その求めた温度分布に基づいてミクロ領域の境界条件を正確に求め、つぎにその境界条件に基づいてミクロ領域の温度分布を高精度に求める、という工程を微小時間ずつ繰り返し行っている。なお、マクロ領域の微小時間は、ミクロ領域の微小時間より大きく設定することができる。
【００６０】
したがって、精度を要求しない部分をマクロ領域に設定し、特に精度を要求する部分だけをミクロ領域に設定すれば、凝固シミュレーションにかかる時間を抑えつつも精度の高い凝固シミュレーション結果を得ることができるようになる。
（３）凝固シミュレーション方法およびプログラムの詳細な手順
つぎに、本発明の凝固シミュレーション方法およびプログラムを図３以降の図面を参照しながら詳細に説明する。図３および図４は、本発明にかかる凝固シミュレーション方法のメインフローチャートである。
ステップ１
まず、オペレータは、図示されていないＣＡＤ装置からＣＡＤデータを入力し、そのＣＡＤデータに基づいて凝固シミュレーションの対象となる領域の画像を表示装置１０４に表示させる。
【００６１】
表示される画像は、たとえば図７に示すような、鋳造機の構造を含む画像である。この鋳造機は、上型２００、下型２１０、右側パターン２２０、左側パターン２３０を備えている。上型２００、下型２１０、右側パターン２２０、左側パターン２３０が組み合わされると製品の型に相当する空洞が形成される。その空洞内には湯口２４０から湯が注ぎ込まれる。なお、この空洞の内部には、必要に応じて中子と称される砂型２５０が形成される場合がある。
ステップ２
オペレータは、表示装置１０４に表示されている画像に対して、マクロ領域とミクロ領域とを設定する。マクロ領域は、凝固シミュレーションの対象としたい部分に設定する。このマクロ領域では、比較的大雑把な凝固シミュレーション結果が得られる。
【００６２】
オペレータは、設定したマクロ領域の一部にミクロ領域を設定する。ミクロ領域は、高精度の凝固シミュレーション結果を得たい領域に設定する。
【００６３】
たとえば、図７においては、空洞部分を大きく取り囲む図のような領域をマクロ領域Ｍに設定し、空洞部分のごく近傍を取り囲む図のような領域をミクロ領域ｍに設定する。
ステップ３
つぎに、オペレータは、入力装置１０２からマクロ領域内に存在する物の物性値を入力する。マクロ領域内には鋳造機が含まれているので、鋳物、鋳型、空気の物性値（たとえば、密度、比熱、熱伝導率、凝固特性）を入力する。入力された物性値は、物性値データベース１０８に記憶される。つぎに、凝固シミュレーションを行う際の初期条件を入力する。初期条件は、たとえば、鋳物、鋳型、空気の温度である。さらに境界条件および計算条件を入力する。境界条件は、たとえば、鋳物と鋳型との間の熱伝達率、湯口から注がれる溶融物の流速である。計算条件は、たとえば、計算終了時間、時間ステップ幅である。なおこれらは、マクロ領域についてだけではなく、ミクロ領域についても入力する。時間ステップ中は、解析対象の分割と物性値から最大値が計算される。
【００６４】
そして、オペレータは、マクロ領域のボクセルの大きさと、ミクロ領域のボクセルの大きさを入力する。マクロ領域のボクセルの大きさ（一辺の長さ）はミクロ領域のボクセルの大きさの整数倍（たとえば３倍）とする。したがって、マクロ領域のボクセルには２７個分のミクロ領域のボクセルが収まる。凝固シミュレーションは、ボクセル単位で演算されるので、ミクロ領域で得られる凝固シミュレーションの精度は、マクロ領域の精度の２７倍（実際には単純に計算できないが）になる。なお、マクロ領域とミクロ領域の３次元座標軸は、演算装置１１０の演算負荷を軽減させるために同一の座標軸に揃えている。
【００６５】
マクロ領域とミクロ領域の関係、両領域におけるボクセルの大きさの関係、両領域の３次元座標軸の関係を２次元として図示すると図８に示すように表すことができる。
【００６６】
この図の外枠の領域がマクロ領域Ｍであり、マクロ領域を仕切る大きなマスがマクロ領域Ｍのボクセルである。また、マクロ領域内に位置する太枠の領域がミクロ領域ｍである。ミクロ領域のボクセルの大きさは、マクロ領域のボクセルの大きさの１／３である。マクロ領域に設定されている座標軸（Ｘ−Ｙ）と、ミクロ領域に設定されている座標軸（ｘ−ｙ）は一致している。
ステップ４
つぎに、オペレータは、入力装置１０２から鋳型の初期温度を入力し、シミュレーション時間を初期化（ｓｕｍｔｉｍｅ＝０）する。鋳型の初期温度は、鋳型に取り付けられている温度計の検出値に基づいて入力する。
ステップ５
演算装置１１０は、所定回数の鋳込み分の凝固シミュレーションが終了したか否かを判断する。この判断は、入力装置１０２から入力したショット数に基づいて行われる。
【００６７】
演算装置１１０によって凝固シミュレーションが終了したと判断されると、その処理を終了し、終了したと判断されなければ、マクロおよびミクロ領域の型の初期温度を設定し、次のステップの処理を行う。
ステップ６
演算装置１１０は、鋳込み１回分の計算を行うために、ショット数を１だけインクリメントし、湯、中子の初期温度を設定し、解析時間をカウントするカウンタ（ｃｔｉｍｅ）を初期化する。そして、型が閉じた状態での境界条件を設定し、湯と中子の初期温度を設定し、凝固時間分布を初期化する。
ステップ７
そして、さらに演算装置１１０は、ミクロ領域の凝固シミュレーションを行う場合の、湯と中子の初期温度を設定し、凝固時間分布を初期化する。
ステップ８
つぎに、演算装置１１０は、１サイクル分の凝固シミュレーションが終了したか否かを判断する。この判断は、入力装置１０２から入力したサイクルタイムとｃｔｉｍｅに基づいて行われる。１サイクルの凝固シミュレーションとは、溶湯の鋳型への充填から鋳物を取り出して、次の溶湯の鋳型への充填が始まるまでの、鋳込み１回分の凝固シミュレーションを意味する。サイクルタイムとは、鋳込みから次の鋳込みまでの時間である。演算装置１１０によって１サイクルの凝固シミュレーションが終了したと判断されると、ステップ５に戻り、終了したと判断されなければ、次のステップの処理を行う。
ステップ９
演算装置１１０は時間更新処理をする。すなわち、凝固シミュレーション時間をカウントするカウンタｓｕｍｔｉｍｅの値をｄｔ時間インクリメントし、解析時間をカウントするカウンタｃｔｉｍｅの値をＤｔ時間インクリメントする。
ステップ１０
演算装置１１０は、入力装置１０２から入力された物性値、初期条件、境界条件、計算条件などに基づいて、シミュレーションの演算を開始してからｃｔｉｍｅ＋Ｄｔ時間経過した時点でのマクロ領域の温度分布を演算する。マクロ領域の温度分布は、マクロ領域の各ボクセルの中心位置の温度を演算することによって求める。本発明の凝固シミュレーション方法では、図８の黒点で示した、マクロ領域を構成するすべてのボクセルの中心位置の温度を演算している。
【００６８】
この演算は、公知の伝熱解析理論に基づいて行われる。この伝熱解析理論は、熱エネルギーの保存法則に基づくものであり、既知の温度分布（初期条件）と解析すべき系の境界における伝熱条件（境界条件）を与えることによって、熱の出入りを演算し、任意の位置の温度を演算するものである。
ステップ１１
演算装置１１０は、ステップ１０の処理で求められたマクロ領域の温度分布から固相率分布を演算する。固相率とは、全体の体積に対する固相の体積の割合をいう。図７で説明すれば、固相率とは、湯が充填された空洞の体積に対して、湯が固まった部分の体積がどの程度の割合であるかを示すものである。
【００６９】
一般的に、固相率と温度との関係は状態図から知ることができる。ただ、固相率は温度だけでは一義的に決定できない場合がある。より正確な固相率分布を求めるには、実験値に基づく理論値の補正量を求め、その補正量に基づいて実際の固相率を演算する。
ステップ１２
演算装置１１０は、演算された温度分布と固相率分布とに基づいて凝固時間分布を演算し、その凝固時間分布を更新する。凝固時間分布は、マクロ領域における各ボクセルの中心位置の温度と、どのボクセルが固体になったかを示すものである。この凝固時間分布は、演算結果記憶部１１４に逐次記憶される。
【００７０】
以上のステップ１〜ステップ１２までの処理によって、凝固シミュレーションを開始してからｃｔｉｍｅ＋Ｄｔ時間経過したときのマクロ領域の温度分布および固相率分布が求まる。
ステップ１３
演算装置１１０は、ｃｔｉｍｅとｃｔｉｍｅ＋Ｄｔにおけるマクロ領域の温度分布と固相率分布とに基づいて、ミクロ領域における凝固シミュレーションを行う。
【００７１】
この凝固シミュレーションを、ミクロ領域における凝固シミュレーションのフローチャートである、図５のサブルーチンフローチャートに基づいて説明する。
ステップ１５１
演算装置１１０は、ミクロ領域の凝固シミュレーションを開始する時間（ｓｔａｒｔ）を、解析時間をカウントするカウンタ（ｃｔｉｍｅ）にセットする。
ステップ１５２
演算装置１１０は、このカウンタ（ｃｔｉｍｅ）の値がミクロ領域の解析を終了する時間（ｅｎｄ）よりも大きいか否かを判断する。カウンタ（ｃｔｉｍｅ）の値がミクロ領域の解析を終了する時間（ｅｎｄ）よりも大きければ、凝固シミュレーションが終了しているので処理を終了する。一方、カウンタ（ｃｔｉｍｅ）の値がミクロ領域の解析を終了する時間（ｅｎｄ）よりも小さければ、まだ凝固シミュレーションが終了していないのでつぎのステップに進む。なお、ミクロ領域の凝固シミュレーションを開始する時間（ｓｔａｒｔ）とミクロ領域の解析を終了する時間（ｅｎｄ）との間の時間は、マクロ領域の解析時間のＤｔに相当する。
ステップ１５３
ミクロ領域の凝固シミュレーションをするには、マクロ領域とミクロ領域の境界部分（図８の太線の部分）の境界条件を正確に求める必要がある。この境界条件が不正確であると、ミクロ領域の解析精度が著しく悪化し、マクロ領域とミクロ領域とに分けて凝固シミュレーションを行う本発明の意義を失う。この境界条件の求め方は後ほど図６のフローチャートに基づいて詳しく説明する。
【００７２】
このステップでは、演算装置１１０は、ミクロ領域の境界条件を演算し、求められたミクロ領域の境界条件を設定する。
ステップ１５４
演算装置１１０は、解析上の時間を進めるために、解析時間をカウントするカウンタ（ｃｔｉｍｅ）の値をｄｔ時間だけ進めるための演算をする。
ステップ１５５
演算装置１１０は、入力装置１０２から入力された物性値、境界条件、計算条件、および、ステップ１５３で演算されたミクロ領域の境界条件などに基づいて、ミクロ領域の凝固シミュレーションの演算を開始してからｃｔｉｍｅ時間経過した時点でのミクロ領域の温度分布を演算する。ミクロ領域の温度分布もマクロ領域の温度分布を求めたときと同様に、ミクロ領域の各ボクセルの中心位置の温度を演算することによって求める。本発明の凝固シミュレーション方法では、図８の×点で示した、ミクロ領域を構成するすべてのボクセルの中心位置の温度を演算している。
ステップ１５６
演算装置１１０は、ステップ１５５の処理で求められたミクロ領域の温度分布から固相率分布を演算する。
ステップ１５７
演算装置１１０は、演算された温度分布と固相率分布とに基づいて凝固時間分布を演算し、その凝固時間分布を更新する。凝固時間分布は、ミクロ領域における各ボクセルの中心位置の温度と、どのボクセルが固体になったかを示すものである。この凝固時間分布は、演算結果記憶部１１４に逐次記憶される。
ステップ１５８、１５９
演算装置１１０は、入力装置１０２から入力された物性値、境界条件、計算条件、および、ステップ１５３で演算されたミクロ領域の境界条件などに基づいて、シミュレーションの演算を開始してからｃｔｉｍｅ＋ｄｔ時間経過した時点でのミクロ領域の温度分布を演算し、また、ステップ１５５の処理で求められたミクロ領域の温度分布から固相率分布を演算する。
【００７３】
以上のステップ１５１〜ステップ１５９までの処理によって、ミクロ領域の凝固シミュレーションを開始してからｃｔｉｍｅ時間経過したときのミクロ領域の温度分布および固相率分布と、それから微小時間ｄｔ経過したときのミクロ領域の温度分布および固相率分布が求まる。
【００７４】
つぎに、ミクロ領域の境界条件の求め方を、図６のフローチャートに基づいて説明する。
ステップ１５３１
演算装置１１０は、ミクロ領域の解析を開始する時間（ｓｔａｒｔ）、ミクロ領域の解析を終了する時間（ｅｎｄ）、解析時間をカウントするカウンタ（ｃｔｉｍｅ）の値を入力する。なお、ミクロ領域の凝固シミュレーションが行われる時間は、マクロ領域の凝固シミュレーションの１サイクルの時間、すなわち、ｄｔ時間に相当する。
【００７５】
さらに、すでに求められている、ｓｔａｒｔの時間（マクロ領域の凝固シミュレーションに用いられているｃｔｉｍｅに相当）におけるマクロ領域の温度分布とｅｎｄの時間（マクロ領域の凝固シミュレーションに用いられているｃｔｉｍｅ＋Ｄｔに相当）におけるマクロ領域の温度分布を入力する。したがって、入力されるマクロ領域の温度分布は、ｃｔｉｍｅ時間のものとｃｔｉｍｅ＋ｄｔ時間のものである。
ステップ１５３２
演算装置１１０は、マクロ領域とミクロ領域の境界部分の座標、すなわち、図８の太線部分の座標を算出する。マクロ領域の座標軸とミクロ領域の座標軸とは一致しているので、境界部分の座標は容易に把握できる。
ステップ１５３３
演算装置１１０は、ｓｔａｒｔの時間（マクロ領域の凝固シミュレーションに用いられているｃｔｉｍｅに相当）におけるマクロ領域の温度分布に基づいて、境界部分の温度Ｔ０（空間補完値）を求める。境界部分の温度は、ミクロ領域の各ボクセルの中心位置の温度として求める。
【００７６】
たとえば、図９に示すような、境界部分に位置するミクロ領域のボクセル９００の中心位置（×点）の温度は、次のようにして求める。まず、ボクセル９００を取り囲むマクロ領域の４つのボクセル、１０００から１００３の中心位置の温度、Ｔ１０００、Ｔ１００１、Ｔ１００２、Ｔ１００３を入力し、４つのボクセル、１０００から１００３の中心位置からボクセル９００の中心位置までのそれぞれの距離Ｌ１０００、Ｌ１００１、Ｌ１００２、Ｌ１００３を求める。ボクセル９００の中心位置の温度Ｔ９００は、ボクセルの中心位置の温度Ｔ１０００、Ｔ１００１、Ｔ１００２、Ｔ１００３と距離Ｌ１０００、Ｌ１００１、Ｌ１００２、Ｌ１００３とをパラメータとする関数として求めることができる。なお、図９では、理解を容易にするために２次元の例を示したが、実際には、ボクセルの中心は立方体の中心であるので、３次元の計算となる。
【００７７】
また、上記のように距離に基づく演算は非常に複雑になるので、面積比または体積比を用いて計算することもできる。図１０に示すように、４つのボクセル、１０００から１００３の中心位置を頂点とする四角形をつくり、ボクセル９００の中心位置を通るその四角形の各辺に平行な線でその四角形を分割する。この分割によって、Ｓ１からＳ４の面積を持つ４つの四角形が形成される。ボクセル９００の中心位置の温度Ｔ９００は、ボクセルの中心位置の温度Ｔ１０００、Ｔ１００１、Ｔ１００２、Ｔ１００３と面積Ｓ１、Ｓ２、Ｓ３、Ｓ４とをパラメータとする関数として求めることができる。なお、実際には、ボクセルの中心は立方体の中心であるので、３次元の計算となり、ボクセル９００の中心位置とボクセル９００の周囲に位置するマクロ領域の１つのボクセル（ボクセル１０００、１００１、１００２、１００３など）の中心位置とを頂点に含むそれぞれの四角柱の体積に基づく関数としてボクセル９００の中心位置の温度、すなわち境界部分の温度を求めることができる。
ステップ１５３４
演算装置１１０は、ｅｎｄの時間（マクロ領域の凝固シミュレーションに用いられているｃｔｉｍｅ＋ｄｔに相当）におけるマクロ領域の温度分布に基づいて、ステップ１５３３と同様に、境界部分の温度Ｔ１（空間補完値）を求める。
ステップ１５３５
演算装置１１０は、以上のようにして求めたｓｔａｒｔの時間の境界部分の温度Ｔ０とｅｎｄの時間の境界部分の温度Ｔ１に基づいて、最終的な温度Ｔ（時間補完値）を次の式によって算出する。
【００７８】
Ｔ＝Ｔ０＋（Ｔ１−Ｔ０）＊（ｃｔｉｍｅ−ｓｔａｒｔ）／（ｅｎｄ−ｓｔａｒｔ）
以上のように、ミクロ部分の境界位置の温度を、境界部分に位置するミクロ領域のすべてのボクセルの中心位置の温度により求めている。ミクロ領域のボクセルの中心位置の温度は、そのボクセルの周囲を取り囲むマクロ領域のボクセルの中心位置の温度を空間的に補完する演算を行うことによって求め、求めた温度は最終的に時間で補完して境界部分の温度を求めている。
ステップ１５３６
演算装置１１０は、このようにして求めた境界部分の温度を、ミクロ領域の境界条件として設定し、上記したミクロ領域の凝固シミュレーションを行う。
【００７９】
最後に、本発明の凝固シミュレーションの手順を整理して説明する。
【００８０】
まず、オペレータは凝固シミュレーションの対象領域をＣＡＤデータに基づいて表示装置１０４に表示させる。つぎに、その対象領域内に、マクロ領域とミクロ領域とを設定する。あまり精度が要求されない部分はマクロ領域に、精度が要求される部分はミクロ領域に、それぞれ設定する。そして、入力装置１０２から物性値、初期条件、境界条件、計算条件を入力し、また、マクロ領域のボクセルの大きさとミクロ領域のボクセルの大きさを入力する。ボクセルの大きさは小さくするほど凝固シミュレーションの精度は上がるが演算時間がかかるようになるので、最終的に必要となる精度と許容できる演算時間を勘案して最適な大きさに設定する。
【００８１】
凝固シミュレーションを開始するために必要な条件がすべて入力されると、演算装置１１０は、ＲＯＭ１０６に記憶されている演算プログラムにしたがって、凝固シミュレーションを開始する。
【００８２】
まず、与えられた初期値や境界条件に基づいてマクロ領域のボクセルの中心位置の温度を算出する。つぎに、この算出された温度に基づいて湯が固体になったかどうかが演算され、固体となった部分とまだ液体である部分の分布が演算される。そして、Ｄｔ時間経過したときの、マクロ領域のボクセルの中心位置の温度が算出される。つぎに、この算出された温度に基づいて湯が固体になったかどうかが演算され、固体となった部分とまだ液体である部分の分布が演算される。
【００８３】
マクロ領域のＤｔ時間の凝固シミュレーションが終了すると、つぎにミクロ領域の凝固シミュレーションが行われる。ミクロ領域の凝固シミュレーションを開始するときに、ミクロ領域の正確な境界条件を求める。この境界条件は、マクロ領域の凝固シミュレーションで求められた各ボクセルの中心位置の温度を空間的および時間的に補完する補完演算によって求める。求められた境界条件に基づいてミクロ領域の凝固シミュレーションが行われる。
【００８４】
すなわち、まず、与えられた境界条件に基づいてミクロ領域のボクセルの中心位置の温度を算出する。つぎに、この算出された温度に基づいて湯が固体になったかどうかが演算され、固体となった部分とまだ液体である部分の分布が演算される。そして、ｄｔ時間経過したときの、ミクロ領域のボクセルの中心位置の温度が算出される。つぎに、この算出された温度に基づいて湯が固体になったかどうかが演算され、固体となった部分とまだ液体である部分の分布が演算される。ミクロ領域の凝固シミュレーションが終了すると、再度マクロ領域のＤｔ時間の凝固シミュレーションが行われる。そして、このマクロ領域の解析結果に基づいてミクロ領域の境界条件が再度求められ、その境界条件に基づいてミクロ領域の凝固シミュレーションが行われる。
【００８５】
このように、マクロ領域の凝固シミュレーション、ミクロ領域の境界条件算出、ミクロ領域の凝固シミュレーション、という一連の工程（１ショット）が繰り返される。したがって、ミクロ領域の境界条件は、１ショットのミクロ領域の解析が行われるたびに更新される。このため、ミクロ領域の境界条件は常に正確な値が与えられ、ミクロ領域の凝固シミュレーションの精度は非常に高いものとなる。
【００８６】
以上の凝固シミュレーションは、設定された時間分行われ、その間の演算の結果は、すべて演算結果記憶部１１４に記憶される。この記憶されている情報を時系列順に取り出して演算装置１１０に演算させれば、任意の時間の凝固シミュレーションの結果を詳しく調査でき、湯が凝固していく過程を動画のように見ることもできる。
【００８７】
凝固シミュレーションの結果を見れば、製品のどの部分に欠陥が生じやすいかなどが一目瞭然となり、その対策も容易に行うことができるようになる。
【００８８】
最後に、本発明により全体解析を行った凝固シミュレーションの結果と、従来から行われていた一部のみの解析による凝固シミュレーションの結果を、温度推定誤差において比較した。その比較結果を図１１に示す。
【００８９】
この図を見れば明らかなように、製品のどの部分においても推定温度誤差は、本発明の凝固シミュレーションによる場合のほうが格段に小さく、また、誤差のばらつきも小さく安定した結果が得られている。
【００９０】
以上のように、本発明の凝固シミュレーション装置、凝固シミュレーション方法およびその方法をコンピュータに実行させるためのプログラムによれば、全体として、凝固シミュレーションに要する時間を抑えつつも高精度のシミュレーション結果を得ることができるようになる。また、時々刻々と変化するミクロ領域の境界条件が、マクロ領域の演算結果に基づいて常に正確な値に更新されるため、ミクロ領域の凝固シミュレーションは非常に高精度になる。
【００９１】
なお、以上の実施の形態では、マクロ領域の中にミクロ領域を設けた場合について説明したが、ミクロ領域の中にさらに高精度のシミュレーションをするためのミクロ領域を設けることもできる。
【図面の簡単な説明】
【図１】本発明にかかる凝固シミュレーション装置の概略構成図である。
【図２】凝固シミュレーションの概略の手順を示すフローチャートである。
【図３】本発明にかかる凝固シミュレーション方法のメインフローチャートである。
【図４】本発明にかかる凝固シミュレーション方法のメインフローチャートである。
【図５】ミクロ領域における凝固シミュレーションのフローチャートである。
【図６】ミクロ領域における凝固シミュレーションのフローチャートである。
【図７】凝固シミュレーションの対象領域の説明に供する図である。
【図８】マクロ領域とミクロ領域の凝固シミュレーションの説明に供する図である。
【図９】ミクロ領域の境界条件を求めるときの補完演算の説明に供する図である。
【図１０】ミクロ領域の境界条件を求めるときの補完演算の説明に供する図である。
【図１１】本発明と従来のシミュレーションの比較結果を示す図である。
【符号の説明】
１０２…入力装置、
１０４…表示装置、
１０６…ＲＯＭ、
１０８…物性値データベース、
１１０…演算装置、
１１２…ＲＡＭ、
１１４…演算結果記憶部、
２００…上型、
２１０…下型、
２２０…右側パターン、
２３０…左側パターン、
２５０…砂型、
９００…ミクロ領域のボクセル、
１０００〜１００３…マクロ領域のボクセル。
【図１】
0003618698.tif 000002
【図２】
0003618698.tif 000003
【図３】
0003618698.tif 000004
【図４】
0003618698.tif 000005
【図５】
0003618698.tif 000006
【図６】
0003618698.tif 000007
【図７】
0003618698.tif 000008
【図８】
0003618698.tif 000009
【図９】
0003618698.tif 000010
【図１０】
0003618698.tif 000011
【図１１】
0003618698.tif 000012