(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-26
(45)【発行日】2024-02-05
(54)【発明の名称】物理製品の質量分布を推定するコンピューターに実装される方法
(51)【国際特許分類】
G06F 30/15 20200101AFI20240129BHJP
G06F 30/20 20200101ALI20240129BHJP
【FI】
G06F30/15
G06F30/20
(21)【出願番号】P 2019229608
(22)【出願日】2019-12-19
【審査請求日】2022-12-02
(32)【優先日】2018-12-21
(33)【優先権主張国・地域又は機関】EP
(73)【特許権者】
【識別番号】500102435
【氏名又は名称】ダッソー システムズ
【氏名又は名称原語表記】DASSAULT SYSTEMES
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】アレクサンドル ラロイ
【審査官】松浦 功
(56)【参考文献】
【文献】特開平09-076986(JP,A)
【文献】米国特許出願公開第2007/0282571(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 30/00 -30/28
(57)【特許請求の範囲】
【請求項1】
複数のプロダクトパーツを含む物理製品の質量分布を推定するコンピューターに実装される方法であって、
各プロダクトパーツに対して、前記プロダクト内の前記パーツの位置および向きを表すデータ、前記パーツの質量を表すデータ、および少なくともいくつかのプロダクトパーツに対して、ボクセルフォーマットにおけるパーツジオメトリを表すデータを含むデータ構造を作成するステップと、
同一の軸に直交する複数のスライスに前記物理製品のデジタルモデルを分解するステップであって、各スライスは、前記軸に沿った位置によって識別される、ステップと、
各スライスに対して、前記スライスにより全体的にまたは部分的に重なり合う前記データ構造のプロダクトパーツのセットを識別するために前記データ構造を使用し、前記セットの各プロダクトパーツに対して、前記パーツおよび前記スライスの重なり合う比率を決定するステップと、
それぞれの前記重なり合う比率によって重み付けされる、前記スライスにより重なり合うすべてのプロダクトパーツについての前記質量の合計に対応する質量値を各スライスに属させるステップと
を備えることを特徴とするコンピューターに実装される方法。
【請求項2】
前記データ構造における前記プロダクトパーツの前記位置および向きのデータによって決定される、前記データ構造がジオメトリのデータを含まない少なくとも1つのプロダクトパーツは、単一のスライスにより完全に重なり合っていることを特徴とする請求項1に記載のコンピューターに実装される方法。
【請求項3】
前記データ構造は、ジオメトリのデータを含まない少なくとも1つのプロダクトパーツに対して、
前記プロダクトパーツが属する前記プロダクトのサブセットを識別するデータと、
n-木のボクセルフォーマットにおいて前記プロダクトの前記サブセットの前記ジオメトリを表すデータと
を含み、前記パーツおよび前記スライスの重なり合う比率を決定するステップは、前記プロダクトパーツにより全体的にまたは部分的に重なり合うスライスと、前記プロダクトが属する前記プロダクトの前記サブセットの前記ジオメトリに基づくそれぞれの前記重なり合う比率とを特定するステップを含むことを特徴とする請求項1または2に記載のコンピューターに実装される方法。
【請求項4】
前記データ構造を作成するステップは、ボクセルフォーマットに、プロダクトパーツジオメトリを表すデータを変換するステップを含むことを特徴とする請求項1ないし3のいずれか一項に記載のコンピューターに実装される方法。
【請求項5】
前記ボクセルフォーマットは、n-木の、望ましくは八分木のボクセルフォーマットであることを特徴とする請求項1ないし4のいずれか一項に記載のコンピューターに実装される方法。
【請求項6】
前記スライスの各々を識別する前記軸に沿った前記位置に属する前記質量値を補間し滑らかにすることによって前記軸に沿った前記プロダクトの質量分布を推定するステップをさらに備えることを特徴とする請求項1ないし5のいずれか一項に記載のコンピューターに実装される方法。
【請求項7】
前記データ構造は、少なくとも1つのプロダクトパーツに対して、質量の公差を表すデータをさらに含み、前記スライスにより重なり合うすべてのプロダクトパーツについての前記質量の合計に対応する質量値を各スライスに属させるステップは、前記プロダクトパーツにより重なり合う各スライスを識別する前記軸に沿った前記位置に属する前記質量値に対する公差を計算するステップをさらに含むことを特徴とする請求項1ないし6のいずれか一項に記載のコンピューターに実装される方法。
【請求項8】
前記データ構造を作成するステップは、1つまたは複数の物理製品の設計ファイルからプロダクトパーツのデータを抽出することによって、物理製品の設計プロセスの間、データ構造をインクリメントして作成するステップを含むことを特徴とする請求項1ないし7のいずれか一項に記載のコンピューターに実装される方法。
【請求項9】
請求項1ないし8のいずれか一項に記載の方法をコンピューターシステムに実行させるコンピューター実行可能な命令を含む非一時的なコンピューター読み取り可能なデータ記録媒体に格納されることを特徴とするコンピュータープログラム。
【請求項10】
請求項1ないし8のいずれか一項に記載の方法をコンピューターシステムに実行させるコンピューター実行可能な命令を含むことを特徴とする非一時的なコンピューター読み取り可能なデータ記録媒体。
【請求項11】
コンピューターシステムであって、
非一時的なメモリに、およびグラフィカルユーザーインターフェイスに結合されたプロセッサーと、
請求項1ないし8のいずれか一項に記載の方法を前記コンピューターシステムに実行させるコンピューター実行可能な命令を格納する前記非一時的なメモリと
を備えたことを特徴とするコンピューターシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、CAE(Computer Aided Engineering)の分野に関し、より詳細には、CAD(Computer Aided Design)の分野に関する。本発明は、たくさんのプロダクトパーツ(product part)により構成される物理製品、例えば、船またはボート、航空機、陸上車両、建造物、工作機械などの質量分布を推定するコンピューターに実装される方法に関係する。
【背景技術】
【0002】
質量-ゆえに重量-分布は、全質量/総重量も同様に、物理製品の力学的挙動および機械抵抗に強く影響を及ぼし、極めて重要であることが多い。
【0003】
特に印象的な例は、船の総重量が安定性に影響を及ぼす、海運業によって供給され、不適当な重量分布によって、船体が荒れた海の状態の最中に壊れることさえあり得る。
【0004】
自動車産業において、質量分布は、車軸の近くにおいてピークに達し、車軸の間において極小であることが必要とされ得る。
【0005】
航空機メーカーは、翼に沿った質量-ゆえに慣性-の配分に関心がある。
【0006】
などである。
【0007】
しかしながら、驚いたことに、既存のツールは、数千-または数百万-の、例えば、角材、板、ボルト、歯車、などの個々のプロダクトパーツを含む、複雑な物理製品の質量分布を正確に推定することを許さない。実際に製造する前にそのような製品の全質量を推定することでさえ、挑戦である-計算は、通常、簡単なスプレッドシートを使用して、大きな作業量を必要として、誤差の多い結果を導いて行われる。
【0008】
軸(例えば、船の場合において縦軸のことが多い)に沿った物理製品の質量分布を計算するという、より複雑なタスクは、とても強力な近似に頼って実行されるのみできる。例えば、船の質量分布の非常に粗い近似は、船の単純な幾何学モデリング(geometrical modelling)-例えば、2つの台形にふちどられた長方形によって取得され得る。
【0009】
わずかに正確な推定を、全サブシステムを表す限られた数(数十未満)のマクロパーツ(macro-parts)が考慮される、いわゆる「グループ化手法(grouping methods)」によって取得することができる。最も単純である「バケット法(bucket method)」、隠喩的な「バケット」の線は、船の縦軸の線に沿って配置される。マクロパーツの重力の中心がバケット内に落ちるならば、すべての質量は、バケットに「プット(put)」される。今述べたアプローチが非常に重大な誤りに導くことは、明らかである。例えば、マクロパーツは、ペンキを表すことができ、船の全表面に塗られ、依然として、単一の質量値によって、船の縦軸の中心に向かって位置するバケットにおいてモデル化されるだろう。
【0010】
発明者の最善の知識に対して、船の縦軸の質量分布を計算するための、最も正確な、大量販売として利用可能なソフトウェアツールは、台形を使用してマクロバーツをモデル化する「Shipwright」(http://shipweight.com)である。少数のマクロバーツを含む船の粗いモデル化に頼ることが与える手法の正確さは、それでもやはり低いが、完全なデジタルのモックアップは、数百万の個々のパーツにまで含むことができる。
【0011】
上述した手法は、論文において詳細に説明される(例えば、非特許文献1参照)。
【先行技術文献】
【非特許文献】
【0012】
【文献】David Laurence Hansch、「Methods of determining the longitudinal weight distribution of a ship」、67th Annual conference of the International Society of Allied Weight Engineers、(米国)、Society of Allied Weight Engineers Inc. 、2008年
【発明の概要】
【0013】
本発明は、従来技術の今述べた欠点を克服することに向けられる。より詳細には、本発明は、従来技術よりもより正確に、多数のパーツによって構成される物理製品の質量分布を推定するコンピューターに実装される方法を供給することに向けられるが、受け入れられるレベル(「スケーラビリティ」)において計算上の複雑さを持ち続ける。補完として、本発明はさらに、推定される質量および質量分布に対する公差(tolerance)を定量化する(quantify)ことにおいて、ならびに/または協同の設計を容易にすることにおいて、いくつかのまたはすべてのプロダクトパーツの(例えば、サードパーティーにより供給されるパーツのジオメトリが十分に定義されないことがあり得る)不完全な情報を取り扱うことにも向けられる。
【0014】
本発明に従って、今述べた目的の少なくともいくつかは、プロダクト(product)の詳細なデジタルモックアップの各プロダクトパーツに対して、プロダクト内のパーツの位置および向きを表すデータ、パーツの質量、少なくともいくつかのプロダクトパーツに対して、ボクセル(voxel)フォーマットにおける、望ましくはn-木(n-tree)(通常、八分木)のボクセルフォーマットにおけるパーツジオメトリ(part geometry)を含むデータ構造(「インデックス」)のおかげにより果たされる。パーツジオメトリをモデリングするためのボクセルフォーマットの使用は、プロダクトが非現実的にカット(cut)される複数のスライスのうちの1つ毎による各プロダクトパーツの重なり合う比率(すなわち、スライスにより重なり合うパーツの体積の割合)についての簡単な速い計算を可能にするので、重要である。今述べたことは、結果として、各スライスに、各パーツの質量の適切な分配を割り当てることを可能にする。
【0015】
本発明の対象は、ゆえに、複数のプロダクトパーツを含む物理製品の質量分布を推定することに関するコンピューターに実装される方法であり、方法は、
ステップa)各プロダクトパーツに対して、プロダクト内のパーツの位置および向きを表すデータ、パーツの質量を表すデータ、少なくともいくつかのプロダクトパーツに対して、ボクセルフォーマットにおけるパーツジオメトリを表すデータを含むデータ構造を作成することと、
ステップb)各スライスが軸に沿った位置により識別される、物理製品のデジタルモデルを同じ軸に直交する複数のスライスに分解することと、
ステップc)各スライスに対して、スライスに全体的にまたは部分的に重なり合うデータ構造のプロダクトパーツのセットを識別するためにデータ構造を使用し、セットの各プロダクトパーツに対して、パーツとスライスとの重なり合う比率を決定することと、
ステップd)それぞれの重なり合う比率により重み付けされる、スライスにより重なり合うすべてのプロダクトパーツについての質量の合計に対応する質量値を各スライスに属させることと
を含む。
【0016】
本発明の方法についての特定の実施形態によれば、
・ステップc)において、データ構造におけるプロダクトパーツの位置および向きのデータによって決定される、データ構造がジオメトリのデータを含まない少なくとも1つのプロダクトパーツは、単一のスライスにより完全に重なり合うと考えられることができる。
【0017】
・データ構造は、ジオメトリのデータを含まない少なくとも1つのプロダクトパーツに対して、プロダクトパーツが属するプロダクトのサブセットを識別するデータ、およびn-木のボクセルフォーマットにおけるプロダクトのサブセットのジオメトリを表すデータを含むことができ、ステップc)は、プロダクトパーツが属するプロダクトのサブセットのジオメトリに基づいて、プロダクトパーツにより全体的にまたは部分的に重なり合うスライス、およびそれぞれの重なり合う比率を特定することを含むことができる。
【0018】
・ステップa)は、プロダクトパーツジオメトリ(product part geometry)を表すデータをボクセルフォーマットに変換することを含むことができる。ボクセルフォーマットは、有利には、n-木、望ましくは八分木のボクセルフォーマットである。
【0019】
方法は、
ステップe)軸に沿ったプロダクトの質量分布を、各スライスを識別する軸に沿った位置に属する質量値を補間し滑らかにすることによって推定することをさらに含むことができる。
【0020】
・データ構造はまた、少なくとも1つのプロダクトパーツに対して、質量公差(mass tolerance)を表すデータも含み、ステップd)はさらに、プロダクトパーツにより重なり合う各スライスを識別する軸に沿った位置に属する質量値に対して公差を計算することを含む。
【0021】
・ステップa)はまた、プロダクトパーツのデータを1つまたは複数の物理製品の設計ファイルから抽出することによって物理製品の設計プロセスの間、データ構造をインクリメントして作成することもできる。
【0022】
本発明の別の対象は、コンピューターシステムに、上記の方法を実行することを引き起こすコンピューター実行可能な命令を有する、非一時的なコンピューター読み取り可能なデータ記録媒体に格納される、コンピュータープログラム製品である。
【0023】
本発明の別の対象は、CPT(コンピューター)システムに、上記の方法を実行することを引き起こすコンピューター実行可能な命令を有する、非一時的なコンピューター読み取り可能なデータ記録媒体である。
【0024】
本発明の別の対象は、非一時的なメモリおよびグラフィカルユーザーインターフェイスデバイスに結合されたプロセッサーを含むCAD(Computer Aided Design)システムであり、非一時的なメモリは、CADシステムに、上記の方法を実行することを引き起こすコンピューター実行可能な命令を格納する。
【0025】
本発明の追加の特徴および利点は、添付の図面と共に得られる、後続の説明から明らかになるであろう。
【図面の簡単な説明】
【0026】
【
図1】本発明の一実施形態に係る方法のフローチャートである。
【
図2】データ構造を作成することを含む方法の第1のステップa)の図式的な図である。
【
図3】テッセレート(tessellate)されたジオメトリのボクセライゼーション(voxelisation)を例示する図である。
【
図4】本発明の望ましい実施形態において使用される八分木のボクセルフォーマットを例示する図である。
【
図5】本発明の方法のステップa)において作成されるデータ構造の図式的な図である。
【
図6】物理製品のデジタルモデルを複数のスライスに分解することを含む本発明の方法における第2のステップb)を例示する図である。
【
図7】物理製品のデジタルモデルを複数のスライスに分解することを含む本発明の方法における第3のステップc)および第4のステップd)を例示する図である。
【
図8】ステップd)において計算された離散的な質量分布を補間し滑らかにする本発明の方法における選択可能な第5のステップを例示する図である。
【
図9】本発明の方法を使用して推定された重量分布を表示するグラフィカルユーザーインターフェイスを示す図である。
【
図10】本発明の一実施形態に係る方法を実行するのに適したコンピューターシステムのブロック図である。
【発明を実施するための形態】
【0027】
以下に、「質量」と「重量」とは、同義語と考えられるだろう。実際には、「重量分布」が産業において共通に使用される表現であるが、物理的な観点から、「質量分布」がより正確であろう。
【0028】
本発明は、「ビルド」および「ラン」と呼ばれるであろう、共存する2つのソフトウェアインフラに頼る。有利なことに、両方のインフラは、質量分布が推定される物理製品を設計するために設計者のチームによって使用されるコンピューターとは異なる、専用のハードウェアにより格納され実行される。今述べたことは、質量分布の推定が設計プロセスのスピードを落とさないことを確実なものにする。
【0029】
本発明の第1のステップ、
図1のフローチャートのブロック“a)”は、「ビルド」インフラ(“build” infrastructure)によって実行される。それは、データ構造を、または異なるソース(おそらく異なるフォーマットにおいて、ネットワークの異なるコンピューターに格納されるファイル)から来ることがあり得るプロダクトパーツのデータにインデックスを付ける「キャッシュ」を、作成することにある。今述べたステップは、
図2に図式的に例示され、プロダクトパーツPP1、PP2、およびPP3に関するデータは、データ構造DSに集められ、インデックスを付けられる。
【0030】
インデックスを付けられたデータは、各プロダクトパーツに対して、プロダクト内の(すなわち、プロダクトに貼られるリファレンスフレームにおける)位置および向きを、質量(同等に、重量)も同様に、表す。有利なことに、データはさらに、少なくともいくつかのパーツの質量値に関する公差または不確定も表す。さらにその上、すべてのまたはいくつかのパーツに対して、パーツの形状(「ジオメトリ」)を表すデータも供給される。頻繁に、常にではないが、パーツジオメトリのデータは、テッセレートされた、すなわち、固体のパーツが、三角形であることがよくあるポリゴンにより形成される3次元の表面によって表される、フォーマットにおいて供給される。
【0031】
インデックスを付ける処理の間、データは、再組織化される。特に、代替のジオメトリは、ボクセルベースのフォーマットに、望ましくはn-木のボクセル技術に基づいて、各エレメントにつけられる。
図3は、テッセレートされたジオメトリ(左)の、ボクセルベースのジオメトリ(右)への変換を表す。
【0032】
図4は、n=3(「八分木」)の場合に対するジオメトリのn-木のボクセル表現に関する原理を例示する。表されるプロダクトパーツジオメトリを含む、立方体(図の上部)は、輪郭がはっきり描かれる。立方体は、次に8個のオクタント(より小さい立方体)に分割され、2×2×2の3次元配列(図の中央の部分)に、より一般的には、任意のn-木の表現に配置され、体積は、2
n個のより小さい体積に分割される。ジオメトリの部分を含む立方体は、再び分割され(図の下部)、ジオメトリの部分を含まない立方体は、分割されない。処理は、予め決められた再帰数(例えば、7)の間、再帰的に実行される。処理の終わりに、立方体は、同一のボクセルに基づくよりも、著しく少ないメモリ占有を有する、プロダクトパーツのほぼ正確な表現を形成する。さらにその上、表現は、木ベースのデータ構造において意図的に格納される。無駄のないn-木の表現の使用は、本発明の方法の「スケーラビリティ」(すなわち、大量のパーツを扱う能力)を確実なものにし、計算の負担を容認できる状態にしておくのに重要である。
【0033】
ジオメトリが利用できないパーツに対して、データ構造は、プロダクトパーツが属するプロダクトのサブセットを識別するデータ、および(n-木の)ボクセルフォーマットにおいてプロダクトのサブセットのジオメトリを表すデータを含む。例えば、飛行機のエンジンにおけるタービンの羽根のジオメトリは、あまり知られていないかもしれないが、羽根は、(ボクセルフォーマットにおいても表される)既知のジオメトリを有する、タービンに属することが知られている。今述べたパーツの質量は、プロダクトの対応するサブセット内に一様に広がると考えられる。代替として、ジオメトリがよく知られていないプロダクトパーツは、質点として考えられる-すなわち、質量が、位置データにより特定される、単一の点において集中していると考えられる。
【0034】
図5は、3つのパーツPP1、PP2、PP3を含む物理製品PR(例えば、航空機)を表すデータ構造DSの象徴的な表現である。各パーツは、識別子(PP1_Id、PP2_Id、PP3_Id)、位置/向きのデータ(PP1_PO、PP2_PO、PP3_PO)、質量/重量の値(PP1_m、PP2_m、PP3_m)、およびボクセルベースのジオメトリ(PP1_g、PP2_g、PP3_g)を含むデータ構造のレコードに関連付けられる。オプションとして、レコードはさらに、公差値(図示せず)をさらに含むこともできる。
【0035】
有利なことに、データ構造は、周期的な間隔において更新されることによって、設計プロセスの間、インクリメントして作成される。
【0036】
いつ何時、部分的または全体的に設計されるプロダクトの質量分布の計算(
図1のフローチャートのステップb)~e))を、「ラン」インフラ(“run” infrastructure)を起動することによって実行することができる。データ構造DSによりインクリメントにビルドすることのおかげで、第1の質量分布の計算を、設計プロジェクトの非常に早いときに、プロジェクトの輪郭が依然として十分に練られていないときに行うことができる。今述べたことは、プログラムマネージャーに、非常に早いときから正確な決定をすることを可能にし、したがって、プログラムの費用に大きな影響を与えない。さらにその上、追加の計算を、プロジェクトの進行の間、定期的に行い、設計制約が尊重されることを確実なものにし、出来る限り早く「誤ったトラック(wrong track)」を検出することができる。
【0037】
ユーザー(例えば、「ウエイトマネージャー(weight manager)」)は、ユーザーインターフェイス(「フロントエンド」)上に予め決められた動作を行うことによって、例えば、アイコンをクリックすることによって「ラン」インフラを起動することができる。
【0038】
本発明の方法のステップb)は、物理製品のデジタルモデル(モックアップ)を、互いに平行な、質量分布が計算される軸に沿った「x」軸に直交する、複数のスライスに分解することにある。各スライスは、軸に沿った位置によって識別される。例えば、位置x
1に対応するスライスSL1である。今述べたことを、
図6に例示する。
【0039】
本発明の方法のステップc)は、各スライスにより重なり合うプロダクトパーツおよび対応する重なり合う比率を(単一のスライスに完全に重なり合う質点により表されるパーツも)特定することにある。今述べた操作は、データ構造に格納される位置およびジオメトリのデータを使用して実行される。重なり合う比率の計算は、ジオメトリについてのボクセルベースの表現の使用によって大いに早くなる。
【0040】
本発明の方法のステップd)は、それぞれ重なり合う比率により重み付けされる、スライスにより重なり合う全プロダクトパーツの質量の合計に対応する質量値を、各スライスに属させることにある。今述べた操作は、データ構造に格納される質量データおよびステップc)において計算される重なり合う比率を使用して実行される。結果は、
図7に示されるように、離散的な質量分布である。
【0041】
有利なことに、質量分布についての全体の統計学上の公差はさらに、各パーツに対してデータ構造に格納される公差値に、およびテッセレートされた表現と比べるとボクセルの表現の公差に基づいて、ステップd)の間、計算される。スライスについての質量値の全体の公差は、各要素の質量値に関する公差の2乗の和の平方根である。要素の公差値は、(ジオメトリのボクセライゼーション(voxelization)により導入される体積の「量子化誤差」を説明するために、)一方において、データ構造に格納される「固有の(intrinsic)」公差に、他方において、ボクセルの「エッジ」の数に依存する。
【0042】
滑らかにする、補間のステップe)は次に、線形の質量分布λ(x)の最後の推定を導く。今述べたことは、
図8に表される。
【0043】
図9は、軸に応じた物理製品の線形の質量分布について図を用いた表現を示すスクリーンショットである。曲線λを取り囲む灰色の帯は、計算された公差に対応する。
【0044】
本発明の方法は、コンピューターネットワークを含むことができ、適切なプログラムを非一時的として、例えば、ハードディスク、ソリッドステートディスク(solid state disk)またはCD-ROMなどのコンピューター読み取り可能な媒体に格納し、(複数の)マイクロプロセッサーおよびメモリを使用して上記プログラムを実行する、適切にプログラムされた汎用のコンピューターまたはコンピューターシステムよって行うことができる。
【0045】
本発明の例示的な実施形態に係る方法を実行するのに適したコンピューターCPTを、
図10に関して説明する。
図10において、コンピューターCPTは、実行可能なプログラムを、すなわち、例えば、RAM M1またはROM M2に、またはHDD(ハードディスクドライブ)M3、DVD/CDドライブM4などのメモリデバイス上に格納される、または遠隔に格納されるコンピューター読み取り可能な命令のセットを走らせる間に上述した方法のステップを行うCPU(中央処理装置) Pを含む。さらにその上、本発明の方法のステップa)において作成されるデータ構造DSを、メモリデバイスM1~M4のうちの1つまたは複数に、または遠隔に格納することもできる。
【0046】
請求される発明は、コンピューター読み取り可能な命令および/または本発明の処理のデータ構造が格納されるコンピューター読み取り可能な媒体の種類によって制限されない。例えば、命令およびファイルを、CD、DVD上に、FLASHメモリ、RAM、ROM、PROM、EPROM、EEPROM、ハードディスクまたはコンピューターが伝達する他のあらゆる情報の処理デバイス、例えば、サーバーまたは別のコンピューターなどに、格納することができる。プログラムおよびファイルを、同一のメモリデバイス上に、または異なるメモリデバイス上に格納することができる。
【0047】
さらに、本発明の方法を実行するのに適したコンピュータープログラムを、CPU Pおよび例えば、マイクロソフト(登録商標)VISTA、マイクロソフト(登録商標)ウィンドウズ10、UNIX、ソラリス、LINUX、アップルMAC-OS、当業者に知られている他のシステムなどのオペレーティングシステムと共に実行される、ユーティリティアプリケーション、バックグラウンドデーモンもしくはオペレーティングシステムのコンポーネント、または組合せとして供給することができる。
【0048】
CPU Pは、アメリカのインテル(登録商標)からのXenonプロセッサーまたはアメリカのAMD(登録商標)からのOpteronプロセッサーであり得て、または他のプロセッサータイプ、例えば、フリースケールColdFire、IMX、またはアメリカのフリースケールコーポレーションからのARMプロセッサーなどであり得る。代替として、CPU Pは、例えば、アメリカのインテルコーポレーションからのCore2 Duoなどのプロセッサーであり得て、または当業者が認めるような、FPGA、ASIC、PLD上に、もしくは個別の論理回路(discrete logic circuit)を使用して実装され得る。さらに、CPU Pを、上述した本発明の処理のコンピューター読み取り可能な命令を実行するために、協働して働く複数のプロセッサーとして実装することができる。
【0049】
図10のコンピューターCPTはさらに、ネットワーク、例えば、LAN(ローカルエリアネットワーク)、WAN(ワイドエリアネットワーク)、インターネットなどとのインターフェイス接続のために、ネットワークインターフェイスNI、例えば、アメリカのインテル(登録商標)コーポレーションからのインテルイーサネットPROネットワークインターフェイスカードなども含む。コンピューターはさらに、ディスプレイDY、例えば、ヒューレット・パッカード(登録商標)のHPL2445w LCDモニターなどとのインターフェイス接続のために、ディスプレイコントローラーDC、例えば、アメリカのNVIDIA(登録商標)コーポレーションからのNVIDIA GeForce GTXグラフィックスアダプターなども含む。汎用I/OインターフェイスIFは、キーボードKBおよびポインティングデバイスPD、例えば、ローラーボール、マウス、タッチパッドなどとのインターフェイス接続をする。ディスプレイ、キーボードおよびポインティングデバイスは、ディスプレイコントローラーおよびI/Oインターフェイスとともに、
図9に例示されるように、入力コマンドを供給するためにユーザーによって、および質量分布を表示するためにコンピューターによって使用されるグラフィカルユーザーインターフェイスを形成する。
【0050】
ディスクコントローラーDKCは、HDD M3およびDVD/CD M4を、ISA、EISA、VESA、PCIまたは同様のであり得て、コンピューターのコンポーネントのすべてを相互に連結させるコミュニケーションバスCBSに、連結させる。
【0051】
ディスプレイ、キーボード、ポインティングデバイスについての、ディスプレイコントローラー、ディスクコントローラー、ネットワークインターフェイスおよびI/Oインターフェイスも同様に、一般的な特徴および機能性の説明は、本明細書において、簡潔さのために、今述べた特徴が知られているとして省略する。
【0052】
ネットワークインターフェイスNIは、コンピューターCPTを、管理者システムADSおよび1つまたは複数の他のコンピューターCP1、CP2、…に、ネットワークNWを通じて連結する。コンピューターCP1、CP2は、プロダクトパーツを記述するデータを含む、別々のフォーマットのファイル-F1、F2-を格納する。今述べたデータは、上述したように、質量分布を計算するために使用されるデータ構造を作成するためにコンピューターCPTによって集められる。こうして、コンピューターCP1、CP2のユーザーは、働き-例えば、製品の設計を仕上げ-続けることができる一方、質量分布の計算は、コンピューターCPTによって行われる。
【0053】
代替の実施形態において、コンピューターCPTは、サーバーおよびエンドユーザーコンピューターによって置き換えることができる。サーバーの全体的なアーキテクチャーは、ディスプレイコントローラー、ディスプレイ、キーボード、および/またはポインティングデバイスがサーバーにおいて欠くことができることを除いて、コンピューターCPTに関して上述したのと同じであり得る。エンドユーザーコンピューターは、ユーザーインターフェイスを含む、「ラン」インフラのフロントエンドのセクションを動作し、サーバーは、「ビルド」インフラおよび「ラン」インフラのバックエンドのセクションを動作する。ユーザーインターフェイス上のユーザーの動作は、質量分布の推定アルゴリズムを実行するサーバー(例えば、アパッチサーバー)によって供給されるウェブサービスに対して、クエリ-例えば、RESTクエリ-を起動する。
【0054】
エンドユーザーコンピューターの全体的なアーキテクチャーはまた、エンドユーザーコンピューターのメモリデバイスが実行可能なプログラムEXPおよび/またはデータ構造を格納しないことを除いて、コンピューターCPTに関して上述したのと同じであり得る。しかしながら、エンドユーザーコンピューターは、サーバーの実行可能なプログラムと協働するために設計されたクライアントプログラムを格納する。本実施形態において、質量分布の計算は、サーバーSCによって行われる一方、エンドユーザーコンピューターEUCは、ユーザーに、サーバーと通信をすることを可能にする。
【0055】
ネットワークNWは、公共ネットワーク、例えば、インターネット、または例えば、LANもしくはWANのネットワークなどのプライベートネットワーク、またはあらゆる組み合わせなどであり得て、また、PSTNまたはISDNのサブネットワークを含むことができる。ネットワークNWは、さらに、有線、例えば、イーサネットネットワークなどであり得て、または例えば、EDGE、3Gおよび4Gのワイヤレスセルラーシステムを含むセルラーネットワークなどの無線であり得る。ワイヤレスネットワークはさらに、Wi-Fi、ブルートゥース、または知られている通信のあらゆる他のワイヤレスの形であり得る。したがって、ネットワークNWは、単に例示的であり、決して、本進歩の範囲を制限しない。
【0056】
本明細書において説明されたどんな処理でも、モジュール、セグメント、または処理の特定の論理関数またはステップを実装する1つまたは複数の実行可能な命令を含むコードの部分を表すとして理解されるべきであり、代替の実装は、本発明の例示的な実施形態の範囲内に含まれる。
【符号の説明】
【0057】
PP1 パーツ
PP2 パーツ
PP3 パーツ
DS データ構造
CPT コンピューター
CBS コミュニケーションバス
NW ネットワーク
ADS 管理者システム
CP1 コンピューター
CP2 コンピューター
F1 ファイル
F2 ファイル