(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6599460
(24)【登録日】2019年10月11日
(45)【発行日】2019年10月30日
(54)【発明の名称】製造プロセスおよび製品をシミュレーションするためにメッシュを変形するための方法およびシステム
(51)【国際特許分類】
G06F 17/50 20060101AFI20191021BHJP
【FI】
G06F17/50 612J
【請求項の数】16
【全頁数】13
(21)【出願番号】特願2017-525680(P2017-525680)
(86)(22)【出願日】2015年8月3日
(65)【公表番号】特表2017-522684(P2017-522684A)
(43)【公表日】2017年8月10日
(86)【国際出願番号】IB2015055886
(87)【国際公開番号】WO2016016875
(87)【国際公開日】20160204
【審査請求日】2018年5月14日
(31)【優先権主張番号】2480/MUM/2014
(32)【優先日】2014年8月1日
(33)【優先権主張国】IN
(73)【特許権者】
【識別番号】512070816
【氏名又は名称】タタ・コンサルタンシー・サーヴィシズ・リミテッド
(74)【代理人】
【識別番号】100108453
【弁理士】
【氏名又は名称】村山 靖彦
(74)【代理人】
【識別番号】100110364
【弁理士】
【氏名又は名称】実広 信哉
(74)【代理人】
【識別番号】100133400
【弁理士】
【氏名又は名称】阿部 達彦
(72)【発明者】
【氏名】スシャント・エス・ヴァーレ
(72)【発明者】
【氏名】スリーダール・エス・レディ
(72)【発明者】
【氏名】ガウサム・プルショッタム・バサヴァルス
(72)【発明者】
【氏名】アマレンドラ・クマール・シン
(72)【発明者】
【氏名】ラガヴェンドラ・レディ・イェッドゥラ
【審査官】
堀井 啓明
(56)【参考文献】
【文献】
特開2008−243107(JP,A)
【文献】
米国特許出願公開第2003/0060913(US,A1)
【文献】
特開2013−088970(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F17/50
(57)【特許請求の範囲】
【請求項1】
少なくとも1つの製造プロセスおよび少なくとも1つの製品をシミュレーションするためにメッシュを変形するための方法(200)であって、プロセッサによって実施されるステップであって、1つまたは複数の変形ルール(118)を選択するステップと、変形チェーン(122)を獲得するために前記選択された1つまたは複数の変形ルール(118)を実行するステップと、変形エンジン(114)を使用して、変形されたメッシュデータ(124)を獲得するために前記獲得された変形チェーン(122)を実行するステップと、を含む方法(200)。
【請求項2】
前記1つまたは複数の変形ルール(118)が、プロセス、現象、使用されるシミュレーションモデル、および設計される構成要素、からなる群から選択される複数の現在の問題コンテキスト変数に基づいて選択される、請求項1に記載の方法(200)。
【請求項3】
前記1つまたは複数の変形ルール(118)が、メッシュ変形を実行するためのメカニズムを提供する1つまたは複数の変形演算子(120)をさらに含む、請求項1に記載の方法(200)。
【請求項4】
前記1つまたは複数の変形演算子(120)が、予め定められたリポジトリから獲得されるか、または、新しい演算子が1つまたは複数の基本要素演算子に基づいて構成される、請求項3に記載の方法(200)。
【請求項5】
前記1つまたは複数の変形演算子(120)が、現在の問題コンテキスト、1つもしくは複数のルールまたは予め定められた条件に基づいて選択される、請求項3に記載の方法(200)。
【請求項6】
前記1つまたは複数の変形演算子(120)が、分割、押出、平行移動、トリミング、および付加を含む幾何学的変形演算子をさらに含む、請求項3に記載の方法(200)。
【請求項7】
前記1つまたは複数の変形演算子(120)が、メッシュ精緻化演算子および粗大化演算子をさらに含む、請求項3に記載の方法(200)。
【請求項8】
メッシュ領域中のノードおよび要素の数を、前記メッシュ精緻化演算子が増加させ、前記メッシュ粗大化演算子が減少させる、請求項7に記載の方法(200)。
【請求項9】
前記変形チェーン(122)が、前記現在の問題コンテキスト、または複数の製造プロセスステージをシミュレーションするための正確さおよび効率の考慮事項に基づいた順序で並べられた前記1つまたは複数の変形演算子(120)からさらに構成される、請求項5に記載の方法(200)。
【請求項10】
前記変形演算子のどれが複数のシミュレーションモジュール(130-1)、(130-2)、(130-3)...(130-n)によって元来サポートされているのか、およびそのような演算子を前記複数のシミュレーションモジュール(130-1)、(130-2)、(130-3)...(130-n)に委ねるかどうかを判定するステップをさらに含む、請求項9に記載の方法(200)。
【請求項11】
前記変形チェーン(122)が、ボリュームメッシュに対して前記変形エンジン(114)によってさらに実行される、請求項1に記載の方法(200)。
【請求項12】
前記ボリュームメッシュが、前記変形されたメッシュデータ(124)の形式で獲得される、請求項11に記載の方法(200)。
【請求項13】
少なくとも1つの製造プロセスおよび少なくとも1つの製品をシミュレーションするためにメッシュを変形するためのメッシュ変形システム(102)であって、プロセッサ(104)と、インターフェイス(106)と、前記プロセッサ(104)に結合されたメモリ(108)と、変形エンジン(114)および他のモジュール(116)からさらに構成されるモジュール(110)と、1つまたは複数の変形ルール(118)、複数の変形演算子(120)、変形チェーン(122)、変形されたメッシュデータ(124)、および他のデータ(126)からさらに構成されるデータ(112)と、を備える、メッシュ変形システム(102)。
【請求項14】
前記変形エンジン(114)が、前記1つまたは複数の変形ルール(118)を選択すること、前記変形チェーン(122)を獲得するために前記選択された1つまたは複数の変形ルール(118)を実行すること、および前記変形されたメッシュデータ(124)を獲得するために前記獲得された変形チェーン(122)を実行することのために使用される、請求項13に記載のメッシュ変形システム(102)。
【請求項15】
複数のシミュレーションモジュール(130-1)、(130-2)、(130-3)...(130-n)を備える統合シミュレーションシステム(128)にさらに結合され、複数のシミュレーションモジュール(130-1)、(130-2)、(130-3)...(130-n)のうちのシミュレーションモジュール(130-1)が、前記複数のシミュレーションモジュール(130-1)、(130-2)、(130-3)...(130-n)のうちの後続のシミュレーションモジュール(130-2)のための入力ボリュームメッシュとしてさらに使用される、前記変形されたメッシュデータ(124)の形式でボリュームメッシュを出力するために適合される、請求項13に記載のメッシュ変形システム(102)。
【請求項16】
前記他のデータ(126)が、前記モジュール(110)のうちの1つまたは複数のモジュールの実行の結果として処理され、受け取られ、生成されたデータを記憶するように適合される、請求項13に記載のメッシュ変形システム(102)。
【発明の詳細な説明】
【技術分野】
【0001】
関連出願の相互参照および優先権
本出願は、その全体が参照により本明細書に組み込まれる、2014年8月1日出願のインド仮特許出願第2480/MUM/2014号に対する優先権を主張する。
【0002】
本出願は、一般に、製造プロセスのシミュレーションおよび製品データ処理に関する。詳細には、本出願は、製造プロセスおよび製品をシミュレーションするためにメッシュを変形するための方法およびシステムを提供する。
【背景技術】
【0003】
製造プロセスを通して得られる任意の製品または製造品は、完成した物品を得るために原材料が複数のステージまたは単位操作を受けることを伴う。そのようなステージまたは単位操作の例としては、数例をあげると、鍛造、機械加工、浸炭、焼入れ、焼戻し、ショットピーニングがあげられる。製造プロセスを実施する前に、実施されている様々なステージに起因して生じる可能性がある物理的変化および状態変化を正確に確かめ判定するために、数値シミュレーションを実行することができる。そのようなシミュレーションで、材料の選択もしくは他の設計上の検討が適切であるかどうか、またはそれらが何らかの変更をさらに必要とするかについての判定を得ることができる。シミュレーションは、一般的に、物品を表す解析モデルを獲得するステップを含む。そのモデルは、さらに、ボリュームメッシュとも呼ばれる1つまたは複数の有限要素から構成される場合がある。このようなシミュレーションは、非常に計算コストが高い場合がある。これらを効率的に実施するために、分析モデルに関係する情報を処理するための1つまたは複数の仮定を行うことができる。シミュレーション前に、そのような仮定に基づいてボリュームメッシュを変形することで計算負荷を減らすことができる。そのような操作は、典型的には、メッシュ変形と呼ばれる。そのため、製造プロセスおよび製品をシミュレーションするためにメッシュを変形することは、依然として当技術分野の最も大きい課題のうちの1つと考えられている。
【発明の概要】
【課題を解決するための手段】
【0004】
本方法、システム、およびハードウェア実施可能性について記載する前に、本開示中に明示的に説明されない本発明の複数の可能な実施形態が存在する可能性があることから、本発明は記載される特定のシステムおよび方法論に限定されないことを理解されたい。本記載中に使用される用語は、特定のバージョンまたは実施形態のみを説明する目的のためであり、添付される特許請求の範囲によってのみ限定される本発明の範囲を限定することは意図していないことも理解されたい。
【0005】
本出願は、少なくとも1つの製造プロセスおよび少なくとも1つの製品をシミュレーションするためにメッシュを変形するための方法およびシステムを提供する。
【0006】
本出願は、少なくとも1つの製造プロセスおよび少なくとも1つの製品をシミュレーションするためにメッシュを変形するための、コンピュータによって実施される方法(200)を提供し、前記方法は、プロセッサによって実施されるステップであって、変形エンジン(114)を使用して、1つまたは複数の変形ルール(118)を選択するステップと、変形チェーン(122)を獲得するために選択された1つまたは複数の変形ルール(118)を実行するステップと、変形されたメッシュデータ(124)を獲得するために獲得された変形チェーン(122)を実行するステップとを含む。
【0007】
本出願は、少なくとも1つの製造プロセスおよび少なくとも1つの製品をシミュレーションするためにメッシュを変形するためのメッシュ変形システム(102)を提供し、前記メッシュ変形システム(102)が、プロセッサ(104)と、インターフェイス(106)と、プロセッサ(104)に結合されたメモリ(108)と、変形エンジン(114)および他のモジュール(116)からさらに構成されるモジュール(110)と、1つまたは複数の変形ルール(118)、複数の変形演算子(120)、変形チェーン(122)、変形されたメッシュデータ(124)、および他のデータ(126)からさらに構成されるデータ(112)とを備える。
【0008】
詳細な記載は、添付図面を参照して記載される。図では、参照番号の最も左の桁が、その参照番号が最初に現れる図を特定する。同様の特徴および構成要素を指すために、図面を通して同じ番号を使用する。
【図面の簡単な説明】
【0009】
【
図1】本主題の実施形態による、製造プロセスおよび製品のシミュレーションのためにメッシュ変形するためのシステムの図である。
【
図2】本主題の実装形態による、製造プロセスおよび製品のシミュレーションのためにメッシュ変形を実装するための方法の図である。
【発明を実施するための形態】
【0010】
本明細書におけるブロック図はいずれも本主題の原理を具現化する例示的なシステムの概念図を表すことは、当業者であれば理解されよう。同様に、任意のフローチャート、流れ図、状態遷移図、疑似コードなどは、実質的にはコンピュータ可読媒体中に表され、したがって、そのようなコンピュータまたはプロセッサが明示的に示されているか否かに関係なくコンピュータまたはプロセッサが実行できる様々なプロセスを表すことを理解されよう。
【0011】
本発明の全ての特徴を説明する本発明のいくつかの実施形態を、次いで詳細に議論する。
【0012】
「備える(comprising)」、「有する(having)」、「含む(containing)」、および「含む(including)」という単語、ならびにそれらの他の形は、意味において等価であり、これらの単語のうちの任意の1つに続く1つもしくは複数の項目が、そのような1つもしくは複数の項目の網羅的な列挙であることを意味せず、または列挙された1つもしくは複数の項目だけに限定されることを意味しないという点でオープンエンドであることが意図される。
【0013】
本明細書および添付した特許請求の範囲に使用するとき、単数形「a」、「an」、および「the」は、文脈がそうでないと明らかに示さない限り、複数への言及を含むことにも留意されたい。本明細書に記載されるものと同様または等価な任意のシステムおよび方法を、本発明の実施形態の実践または検査で使用できるが、以下では好ましいシステムおよび方法を記載する。
【0014】
開示される実施形態は、様々な形態で具現化できる、本発明の単なる例示である。
【0015】
製造品を製造するための製造、検査、および設計検証プロセスをシミュレーションするための方法およびシステムが記載される。方法は、これに限定するものではないが、製造プロセスの様々なステージと同種の環境をシミュレーションすることができる、デスクトップコンピュータ、サーバ、データ処理マシンなどのコンピューティングデバイスを含むシステム内で実装することができる。特許請求の範囲中に言及される製品およびプロセスは、中間製品および中間製品の製造プロセスを含むことに留意されたい。
【0016】
理解されるように、任意の製造プロセスは、製造品を得るために、原材料を製造プロセスの異なるステージにかけることを伴う。そのようなステージの各々は、物理的な変化を及ぼし、様々なステージ内で処理される材料の状態を変えることになる。物理的な変化および状態変化のタイプは、さらに、製造されるべき物品の設計、または材料の選択、製造プロセスの環境など他の要因に依存する場合がある。
【0017】
製造プロセス期間またはそのような物品が使用される後のステージのいずれかに、そのような変化が物品の構造的な完全性に影響を及ぼさないことも望ましい。様々なステージにより引き起こされるそのような物理的な変化および状態変化を判定し予測するために、全プロセスをシミュレーションする場合がある。製造プロセスのシミュレーションに基づいて、様々な物理的な変化および状態変化に先手を打つことができる。シミュレーションは、製造プロセス期間に、または物品が使用状態に置かれた後にでさえ、物品の構造的な完全性がどのように影響を受けるのかについての情報をもたらすこともできる。
【0018】
そのような製造プロセスのシミュレーションは、一般的に、物品を表す分析モデルを獲得するステップを含む。分析モデルは、製造プロセスの状態を再現することを意図できる様々なパラメータに従う場合がある。さらに、分析モデルは、ボリュームメッシュとも呼ばれる1つまたは複数の有限要素から構成される場合がある。メッシュは、複数のノードを含み、各ノードは、材料または製造される物品の局所的な情報を表す。そのような情報の例としては、限定するものではないが、材料組成、材料構造、および材料特性があげられる。
【0019】
製造プロセスの様々なステージをシミュレーションするには、コンピューティングシステムの使用が必要である。そのようなシステムは、分析モデルに関係する情報を処理し、使用される材料または物品についての製造プロセスの効果を示す出力を提供する。当業者なら理解するように、製造プロセスの様々なステージのシミュレーションは、非常に計算コストが高い場合がある。そのようなプロセスのシミュレーションを効果的に実施するために、分析モデルに関係する情報を処理するための1つまたは複数の仮定を行うことができる。この仮定は、物品が所有することがあるいくつかの特性を考慮して行う。そのような特性の例としては、物品の次元性および対称性があげられる。この例を続けると、シミュレーションの一部として、物品の次元性を3次元から2次元に減少させることができる。その結果、コンピューティングリソースの要件を減少させることができる。同様に、物品の対称性は、幾何形状の一部のみに関係する分析モデルを、所与のシミュレーションについての全部の部分を表すものとして処理することを可能にする。したがって、シミュレーションの結果を、物品全体に展開することができる。
【0020】
全製造プロセスをシミュレーションするために、統合シミュレーションツールを使用する場合がある。統合シミュレーションツールは、さらに複数のシミュレーションモジュールを含む場合がある。シミュレーションモジュールの各々は、製造プロセス内の特定のステージについて状態をシミュレーションするためのものである。動作時に、統合シミュレーションは、1つのステージについての出力ボリュームメッシュを獲得するステップを含む。1つのステージの出力メッシュは、次のシミュレーションモジュールへの入力として提供される。次の、または後続のシミュレーションモジュールに提供される前に、出力メッシュをさらに処理または変形する場合がある。そのような操作は、典型的には、メッシュ変形と呼ばれる。
【0021】
従来型のシミュレーションシステムでは、そのようなメッシュ変形は、人間の専門家が構成する場合がある。メッシュ変形は、典型的には、そのような専門家が作り出す必要がある1つまたは複数のスクリプトを通して影響を受ける。理解されるように、特定のスクリプトを準備し実行して、特定のメッシュ変形を実行することができる。実装されるべきメッシュ変形が複雑である場合には、必要なスクリプトも複雑となる可能性があり、このことが、ひいては、準備に法外な量の時間を必要とする可能性がある。
【0022】
さらに、そのようなメッシュ変形は、基となる現象の物理学、構成要素の対称性、構成要素に働く力、プロセス構成などの複数の基となる要因に基づく可能性がある。考慮されないそのような他の要因がない場合に、シミュレーションは、物理的な変化および状態変化の正確な描写を提供することができない可能性がある。
【0023】
製造プロセスおよび製品のシミュレーションのためにメッシュ変形するためのシステムおよび方法が記載される。上に記載したように、統合シミュレーション環境内の製造プロセスの様々なステージのシミュレーションは、メッシュ変形を含む。そのようなメッシュ変形の一部として、製造プロセスの1つのステージに対応する1つのシミュレーションモジュールからの出力メッシュは、後続のシミュレーションモジュールへの入力として、処理(すなわち変形)され、提供される。一実装形態では、メッシュ変形は、1つまたは複数の変形ルールに基づく。変形ルールは、検討中のメッシュに適用されるべき適切なメッシュ変形を決定する。
【0024】
一実装形態では、1つまたは複数の変形ルールが取り込まれる。変形ルールは、製造されるべき物品または製品に対応する1つまたは複数のボリュームメッシュの変形に影響を及ぼす。変形ルールは、複数の、現在の問題コンテキスト変数に基づく。そのようなコンテキスト変数の例としては、プロセス、現象、使用されるシミュレーションモジュール、設計される構成要素などといった現在の問題特性があげられる。決定される現在の問題コンテキストに応じて、1つまたは複数の変形ルールを獲得することができる。一実装形態では、シミュレーションされるシステムに基づくモデルから、現在の問題コンテキストを獲得することができる。
【0025】
別の実装形態では、変形ルールは、1つまたは複数の変形演算子をさらに含む場合がある。変形演算子は、それに基づいてメッシュ変形が実行される方式またはメカニズムを提供する。変形演算子は、予め定められたリポジトリから獲得することができるか、または新しい演算子を、1つまたは複数の基本要素演算子に基づいて構成することができる。一実装形態では、変形演算子は、現在の問題コンテキストに基づいてシステムによって自動的に選択される。一実装形態では、変形演算子は、1つもしくは複数のルールまたは予め定められた条件に基づいて選択することができる。
【0026】
複雑な変形演算子を構築するために、複数の基本要素演算子を1つまたは複数の組合せで使用することができる。これらの演算子は、後で再使用するためにリポジトリに戻して記憶することができる。別の実装形態では、変形演算子は、分割、押出、回転、平行移動、トリミング、付加などの1つまたは複数の幾何学的演算を実施するために規定することができる。別の実装形態では、変形演算子は、メッシュ精緻化演算子および粗大化演算子を含む場合がある。当業者であれば理解するように、メッシュ領域中のノードおよび要素の数を、メッシュ精緻化演算子は増加させ、メッシュ粗大化演算子は減少させる。メッシュ領域中のノードの数が増加したのか(すなわち、精緻化の結果)、または減少したのか(すなわち、粗大化の結果)に応じて、変形プロセスは、より精度が高くなって高い計算能力を必要とする場合も、または精度が下がり、したがってより低い計算能力を必要とすることになる場合もある。後者は、高い精度が必要でない可能性があるメッシュ領域の部分で採用される場合がある。
【0027】
変形ルールが獲得されると、それらが実行されて、変形チェーンを獲得する。変形チェーンとは、特定の順序で並べられた1つまたは複数の変形演算子を含むものと考えることができる。一実装形態では、変形演算子が並べられる順序は、正確さおよび効率の考慮事項に基づいて導出される。例えば、歯車の歯の切断の場合には、トリミングのための変形動作は、押出動作の前には実行できず、歯車の円板部(鍛造の出力)は、最初に押し出される必要があり、次にトリミングを使用して歯が切断される。同様に、分割化の後に精緻化動作を実施することは、最初に全体を精緻化してから分割するよりも効率的である。1つまたは複数の変形演算子が並べられる順序は、現在の問題コンテキストに基づくことができる。
【0028】
獲得されると、変形チェーンが、ボリュームメッシュに対してさらに実行される。ボリュームメッシュは、シミュレーションモジュールからの出力として獲得されるメッシュであってよい。変形チェーンの実行の結果、出力ボリュームメッシュは、後続のシミュレーションモジュールに好適な入力ボリュームメッシュへと変形される。
【0029】
一実装形態において、変形チェーン内に含まれる変形演算子がシミュレーションモジュールによってサポートされているかどうかを確認するために、さらなる判定を行うことができる。シミュレーションモジュールは、製造品のシミュレーションベースの分析を実施するための入力として変形チェーンの実行の結果を受け取るように構成される。そのような演算子の実行は、同様に、シミュレーションモジュールに委ねることができる。
【0030】
推察されるように、本主題は、メッシュ変形に影響を及ぼす効果的な方式を可能にする。例えば、変形チェーンは、現在のコンテキスト問題に基づいて自動的に生成されて、特定の順序で並べられた一連の変形演算子を提供する。現在のコンテキスト問題に依拠して、メッシュ変形は、知識主導される。さらに、本主題は、変形演算子のどれがシミュレーションモジュールによって元来サポートされているのかも判定し、そのような演算子がシミュレーションモジュールに委ねられることを保証する。
【0031】
以下の開示は、製造プロセスおよび製品のシミュレーションのためのシステムおよび方法を記載する。記載されるシステムおよび方法の態様は、任意の数の様々なコンピューティングシステム、環境、および/または構成で実装することができるが、メッシュ変形システムについての実施形態が、以下の例示的なシステムおよび方法の文脈で記載される。
【0032】
図1は、本主題の実施形態による、製造プロセスおよび製品のシミュレーションのためのメッシュ変形システム(102)を描く。前記実施形態では、メッシュ変形システム(102)はメッシュ変形を実施し、これが、1つまたは複数のボリュームメッシュの変形を可能にする。次に、変形されたボリュームメッシュを、1つまたは複数のシミュレーションモジュールへの入力として提供することができる。
【0033】
一実装形態では、メッシュ変形システム(102)(以後システム(102)と呼ぶ)は、ネットワーク環境内で実装することができる。ネットワーク環境とは、数千台の個々のコンピュータ、ラップトップ、ブレードサーバなどの様々なサーバ、および他のコンピューティングデバイスを含む、公衆ネットワーク環境であってよい。別の実装形態では、ネットワーク環境は、個々のコンピュータ、サーバ、およびラップトップなど限られた数のコンピューティングデバイスを有するプライベートネットワーク環境であってよい。
【0034】
一実装形態では、ネットワークは、ワイヤレスネットワーク、有線ネットワーク、またはそれらの組合せであってよい。ネットワークは、個別のネットワーク、または互いに相互接続されて例えばインターネットもしくはイントラネットといった単一の大きいネットワークとして働く、多くのそのような個別のネットワークの集合であってもよい。ネットワークは、イントラネット、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、インターネットなどの様々なタイプのネットワークのうちの1つとして実装することができる。ネットワークは、専用ネットワークまたは共有ネットワークのいずれかであってよく、これは、互いに通信するために、例えば、ハイパーテキスト転送プロトコル(HTTP)、伝送制御プロトコル/インターネットプロトコル(TCP/IP)などの様々なプロトコルを使用する様々なタイプのネットワークの関連を表す。さらに、ネットワークは、ルータ、ブリッジ、サーバ、コンピューティングデバイス、記憶デバイスなどを含む様々なネットワークデバイスを含むことができる。
【0035】
システム(102)は、ラップトップコンピュータ、デスクトップコンピュータ、ノートブック、ワークステーション、メインフレームコンピュータ、サーバ、ネットワークサーバなどの様々なコンピューティングシステム中に実装することができる。一実装形態によれば、システム(102)は、プロセッサ(104)、インターフェイス(106)、およびプロセッサ(104)に結合されたメモリ(108)を含む。プロセッサ(104)は、1つもしくは複数のマイクロプロセッサ、マイクロコンピュータ、マイクロコントローラ、デジタル信号プロセッサ、中央処理装置、状態機械、論理回路、および/または動作命令に基づいて信号を操作する任意のデバイスとして実装することができる。いくつかの機能の中でも特に、プロセッサ(104)は、メモリ(108)に記憶されたコンピュータ可読命令をフェッチして実行するように構成することができる。
【0036】
メモリ(108)としては、例えば、スタティックランダムアクセスメモリ(SRAM)およびダイナミックランダムアクセスメモリ(DRAM)などの揮発性メモリ、ならびに/または読取り専用メモリ(ROM)、消去可能プログラマブルROM、フラッシュメモリ、ハードディスク、光ディスク、および磁気テープなどの不揮発性メモリを含む、当技術分野で知られている任意のコンピュータ可読媒体をあげることができる。
【0037】
さらに、インターフェイス(106)としては、例えば、製品ボード、マウス、外部メモリ、およびプリンタなどの周辺デバイスのためのインターフェイスといった、様々なソフトウェアおよびハードウェアインターフェイスをあげることができる。加えて、インターフェイス(106)は、ウェブサーバおよび外部リポジトリなどの他のデバイスと通信するために、メッシュ変形システム(102)をイネーブルにすることができる。インターフェイス(106)は、例えば、LAN、ケーブルなどといった有線ネットワークおよびWLAN、セルラ、または衛星などといったワイヤレスネットワークを含む、種々多様なネットワークおよびプロトコルタイプ内で、複数の通信を容易にすることもできる。本目的のために、インターフェイス(106)は、1つまたは複数のポートを含むことができる。
【0038】
メッシュ変形システム(102)は、モジュール(110)およびデータ(112)をも含む。モジュール(110)は、例えば、変形エンジン(114)および他のモジュール(116)を含む。他のモジュール(116)は、メッシュ変形システム(102)により実施されるアプリケーションまたは機能を補うプログラムまたはコード化された命令を含むことができる。データ(112)は、変形ルール(118)、変形演算子(120)、変形チェーン(122)、変形されたメッシュデータ(124)、および他のデータ(126)を含むことができる。他のデータ(126)は、とりわけ、モジュール(110)中の1つまたは複数のモジュールの実行の結果として処理され、受け取られ、または生成されるデータを記憶するためのリポジトリとして働くことができる。
【0039】
データ(112)は、システム(102)の内部に示されているが、当業者であれば、データ(112)はシステム(102)の外部に実装することもでき、その場合、データ(112)は、システム(102)と通信可能に結合されたデータベース内に記憶することができることを理解されよう。システム(102)は、統合シミュレーションシステム(128)にさらに結合することができる。統合シミュレーションシステム(128)は、複数のシミュレーションモジュール(130-1)、(130-2)、(130-n)(集合的にシミュレーションモジュール(130)と呼ぶ)をさらに含むことができる。
【0040】
動作時に、変形エンジン(114)は、知識ベースから1つまたは複数のルールを選択する。ルールは、変形ルール(118)として記憶される。変形ルール(118)は、製造されるべき物品または製品に対応する1つまたは複数のボリュームメッシュの変形に影響を及ぼす。変形ルール(118)は、複数の、現在の問題コンテキスト変数に基づく。そのようなコンテキスト変数の例としては、プロセス、現象、使用されるシミュレーションモジュール、設計される構成要素などといった現在の問題特性があげられる。一実装形態では、コンテキスト変数は、他のデータ(126)として記憶することができる。決定される現在の問題コンテキストに応じて、1つまたは複数の変形ルール(118)を獲得することができる。一実装形態では、シミュレーションされるシステムに基づくモデルから、現在の問題コンテキストを獲得することができる。別の実装形態では、変形ルール(118)は、特定のコンテキストの専門家によって指定される。動作時に、変形エンジン(114)は、1つまたは複数の特定のコンテキストを一般化し、それに応じて、変形ルール(118)を適合させる。
【0041】
別の実装形態では、変形ルール(118)は、変形演算子(120)などの1つまたは複数の演算子をさらに含む場合がある。変形演算子(120)は、それに基づいてメッシュ変形が実行される方式またはメカニズムを提供する。変形演算子(120)は、予め定められたリポジトリから獲得することができるか、または新しい演算子を、1つまたは複数の基本要素演算子に基づいて構成することができる。一実装形態では、変形演算子(120)は、現在の問題コンテキストに基づいて自動的に選択される。一実装形態では、変形演算子は、1つもしくは複数のルールまたは予め定められた条件に基づいて選択することができる。
【0042】
複雑な変形演算子(120)を構築するために、複数の基本要素演算子を1つまたは複数の組合せで使用することができる。これらの演算子は、後で再使用するために、データベース(
図1には図示せず)などのリポジトリに戻して記憶することができる。別の実装形態では、変形演算子(120)は、分割、押出、回転、平行移動、トリミング、付加などの1つまたは複数の幾何学的演算を実装するために規定することができる。別の実装形態では、変形演算子(120)は、メッシュ精緻化演算子および粗大化演算子を含む場合がある。以前に説明したように、メッシュ領域中のノードおよび要素の数を、メッシュ精緻化演算子は増加させ、メッシュ粗大化演算子は減少させる。メッシュ領域中のノードの数が増加したのか(すなわち、精緻化の結果)、または減少したのか(すなわち、粗大化の結果)に依存して、変形プロセスは、より精度が高くなって高い計算能力を必要とする場合も、または精度が下がり、したがってより低い計算能力を必要とすることになる場合もある。
【0043】
変形ルール(118)が獲得されると、それらは、変形チェーン(122)を獲得するために変形エンジン(114)によって実行される。変形チェーン(122)とは、特定の順序で並べられた1つまたは複数の変形演算子(120)を含むものと考えることができる。変形演算子(120)が並べられる順序は、製造プロセスの様々なステージをシミュレーションするためのものである。1つまたは複数の変形演算子(120)が並べられる順序は、現在の問題コンテキストに基づくことができる。一実装形態では、変形演算子が並べられる順序は、正確さおよび効率の考慮事項に基づいて導出される。例えば、歯車の歯の切断の場合には、トリミングのための変形動作は、押出動作の前には実行できず、歯車の円板部(鍛造の出力)は、最初に押し出される必要があり、次にトリミングを使用して歯が切断される。同様に、分割化の後に精緻化動作を実践することは、最初に全体を精緻化してから分割するよりも効率的である。
【0044】
獲得されると、変形チェーン(122)は、ボリュームメッシュに対して変形エンジン(114)によってさらに実行される。ボリュームメッシュは、シミュレーションモジュール(130-1)などのシミュレーションモジュールからの出力として獲得されるメッシュであってよい。変形チェーンの実行の結果、変形されたメッシュデータ(124)の形式で出力ボリュームメッシュが獲得される。変形されたメッシュデータ(124)は、シミュレーションモジュール(130-2)などの、後続のシミュレーションモジュールに好適な入力ボリュームメッシュを形成することができる。
【0045】
一実装形態において、変形チェーン(122)内に含まれる変形演算子(120)が任意の1つまたは複数のシミュレーションモジュール(130)によってサポートされているかどうかを確認するために、さらなる判定を行うことができる。例えば、シミュレーションモジュール(130-2)は、製造品のシミュレーションベースの分析を実施するための入力として、変形チェーン(122)の実行の結果を受け取るように構成される。変形チェーン(122)が実施されたメッシュボリュームが、ひいては、シミュレーションモジュール(130-1)からの出力として獲得されてよい。別の実装形態では、演算子の実行は、シミュレーションモジュール(130)のうちの任意の1つまたは複数に委ねることができる。
【0046】
推察されるように、本主題は、メッシュ変形に影響を及ぼす効果的な方式を可能にする。例えば、変形チェーン(122)は、現在のコンテキスト問題に基づいて自動的に生成されて、特定の順序で並べられた一連の変形演算子(120)を提供する。現在のコンテキスト問題に依拠して、メッシュ変形は、知識主導される。さらに、本主題は、変形演算子のどれがシミュレーションモジュール、例えばシミュレーションモジュール(130-1)によって元来サポートされているのかも判定し、そのような演算子がシミュレーションモジュール(130-1)に委ねられることを保証する。
【0047】
図2は、本主題の実施形態による、製造プロセスおよび製品のシミュレーションのためにメッシュ変形を実装するための方法(200)を描く。方法(200)は、メッシュ変形システム(102)などのコンピューティングデバイス中で実装される。方法は、コンピュータ実行可能命令の一般的な文脈で記載することができる。一般的に、コンピュータ実行可能命令としては、特定の機能を実施するか、または特定の抽象的なデータ型を実装する、ルーチン、プログラム、オブジェクト、構成要素、データ構造、プロシージャ、モジュール、関数などをあげることができる。方法は、通信ネットワークを通してリンクされるリモート処理デバイスによって機能が実施される、分散型コンピューティング環境中でも実施することができる。
【0048】
方法が記載される順序は、限定と解釈されることを意図しておらず、任意の数の記載される方法ブロックは、この方法または代替の方法を実施するために、任意の順序で組み合わせることができる。さらに、方法は、任意の好適なハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せで実施することができる。
【0049】
ブロック202において、1つまたは複数の変形ルールが選択される。例えば、変形エンジン(114)が、1つまたは複数の変形ルール(118)を選択する。変形エンジン(114)は、複数の、現在の問題コンテキスト変数に基づく変形ルール(118)を選択する。別の実装形態では、変形ルール(118)は、変形演算子(120)などの1つまたは複数の演算子をさらに含む場合がある。変形演算子(120)は、それに基づいてメッシュ変形が実行される方式またはメカニズムを提供する。変形演算子(120)は、予め定められたリポジトリから獲得することができるか、または新しい演算子を、1つまたは複数の基本要素演算子に基づいて構成することができる。一実装形態では、変形演算子(120)は、現在の問題コンテキストに基づいて自動的に選択される。一実装形態では、変形演算子は、1つもしくは複数のルールまたは予め定められた条件に基づいて選択することができる。
【0050】
ブロック204において、変形ルールが実行されて変形チェーンを獲得する。例えば、変形ルール(118)が獲得されると、それらは、変形チェーン(122)を獲得するために変形エンジン(114)によって実行される。変形チェーン(122)とは、特定の順序で並べられた1つまたは複数の変形演算子(120)を含むものと考えることができる。変形演算子(120)が並べられる順序は、製造プロセスの様々なステージをシミュレーションするためのものである。1つまたは複数の変形演算子(120)が並べられる順序は、現在の問題コンテキストに基づくことができる。一実装形態では、変形演算子が並べられる順序は、正確さおよび効率の考慮事項に基づいて導出される。
【0051】
ブロック206において、変形チェーンが実行されて、変形された出力メッシュを獲得する。例えば、獲得されると、変形チェーン(122)は、ボリュームメッシュに対して変形エンジン(114)によってさらに実行される。ボリュームメッシュは、シミュレーションモジュール(130-1)などのシミュレーションモジュールからの出力として獲得されるメッシュであってよい。変形チェーンの実行の結果として、変形されたメッシュデータ(124)の形式で出力ボリュームメッシュが獲得される。変形されたメッシュデータ(124)は、シミュレーションモジュール(130-2)などの、後続のシミュレーションモジュールに好適な入力ボリュームメッシュを形成することができる。
【0052】
製造プロセスおよび製品をシミュレーションするためにメッシュ変形するための方法およびシステムについての実施形態が、構造的な特徴および/または方法に特有の術語で記載されてきたが、本発明は、記載された特定の特徴または方法に必ずしも限定されないことを理解されたい。むしろ、特定の特徴および方法は、本主題の例示的な実施形態として開示される。
【符号の説明】
【0053】
102 メッシュ変形システム
104 プロセッサ
106 インターフェイス
108 メモリ
110 モジュール
112 データ
114 変形エンジン
116 他のモジュール
118 変形ルール
120 変形演算子
122 変形チェーン
124 変形されたメッシュデータ
126 他のデータ
128 他のモジュール、統合シミュレーションシステム
130 シミュレーションモジュール
130-1 シミュレーションモジュール
130-2 シミュレーションモジュール
130-3 シミュレーションモジュール
130-N シミュレーションモジュール
200 コンピュータによって実施される方法