Force: Contact

Model ElementForce_Contactは、2つのボディ間の2Dまたは3D接触力を定義します。

説明

Force_Contactは、2つのボディ間の2Dまたは3D接触力を定義します。剛性またはCMS弾性体を使用できます。剛体は、1つ以上の形状のセット(3-Dメッシュ、解析的に定義されたソリッド、または2D曲線)で表されます。弾性体(CMSベースのみ)は、H3Dファイルで有限要素メッシュを参照するBody_Flexibleで表されます。1つ目のボディの形状が2つ目のボディの形状に貫入している場合は、接触垂直抗力と摩擦力が発生します。垂直抗力は、接触のポイントにおける共通の法線に沿って、モーションを押し戻す傾向があります。摩擦力は、接触ポイントにおける相対滑り速度を低下させる傾向があります。形状が交差しなくなれば、接触力は消失します。

フォーマット

<Force_Contact
     id                             = "integer"   
  [  label                          = "integer"   ]  
  [  full_label                     = "string"    ]
 {   
     num_i_graphics                 = "integer"
     i_graphics_id                  = "integer_list"
 |
     i_flexbody_id                  = "integer"
  [  i_flip_flex                    = { "TRUE" | "FALSE" } ]
 }
 {
     num_j_graphics                 = "integer"
     j_graphics_id                  = "integer_list"
 |
     j_flexbody_id                  = "integer"
  [  j_flip_flex                    = { "TRUE" | "FALSE" ]
 }
     ignore_penetration_larger_than = "real"
     master_surface                 = { "I" | "J" | "I_and_J" | "AUTO" }
     enable_node_mode               = {"AUTO" | "FALSE" } 
     enable_analytical              = {"AUTO" | "FALSE" }
     contact_stability_2d           = "real"
{      
     cnf_type                       = "POISSON"
     penalty                        = "real"
     restitution_coef               = "real"
     normal_trans_vel               = "real"
     |     
     cnf_type                       = "IMPACT"
     stiffness                      = "real"
     exponent                       = "real"
     damping                        = "real"
     dmax                           = "real"             
     |     
     cnf_type                       = "VOLUME"
     i_elastic_modulus              = "real"
     j_elastic_modulus              = "real"
     i_layer_depth                  = "real"
     j_layer_depth                  = "real"
     exponent                       = "real"
     damping                        = "real"
     |     
     cnf_type                       = "USERCNF"
     cnf_param_string               = "USER( [[par_1 [,...][,par_n]] )"
     cnf_fnc_name                   = "string"
   { cnf_dll_name                   = "string"
    |
     script_name                    = "string"     
     interpreter                    = { "PYTHON" | "MATLAB" }
   }
}
{
     cff_type                       = "COULOMB_ON"
     mu_static                      = "real"
     mu_dynamic                     = "real"
     stiction_trans_vel             = "real"
     friction_trans_vel             = "real"
     |
     cff_type                       = "COULOMB_DYNAMICONLY"
     mu_dynamic                     = "real"
     friction_trans_vel             = "real"
    |     
     cff_type                       = "COULOMB_OFF"
    | 
     cff_type                       = "USERCFF"
     cff_param_string               = "USER( [[par_1 [,...][,par_n]] )"
     cff_fnc_name                   = "string"
   { cff_dll_name                   = "string"
    | 
     script_name                    = "string"
     interpreter                    = { "PYTHON" | "MATLAB" }
   }
}
{
     cpost_param_string             = "USER( [[par_1 [,...][,par_n]] )"
     cpost_fnc_name                 = "string"
   { cpost_dll_name                 = "string"
    |     
     cpost_script_name              = "string"
     cpost_interpreter              = "PYTHON"   
   }
}

属性

id
要素識別番号(整数 > 0)。

この番号は、すべてのForce_Contact要素の中で一意であり、要素を一意に特定します。

注: idは、変更するForce_Contact要素を特定するためだけに使用されます。それ自体でidを変更することはできません。
label
Force_Contact要素の名前。この引数は省略可能です。
full_label
Force_Contact要素のフルラベル。この属性は通常、モデル階層に従ってMotionViewによって入力されます。この引数は省略可能です。
num_i_graphics
1つ目のボディが剛性の場合は、この引数によって、接触力を評価する際に考慮される1つ目のボディ上のPost_Graphic要素の数が指定されます。

num_i_graphics > 0。

i_graphics_id
1つ目のボディが剛性の場合は、この引数によって、接触で考慮される1つ目のボディ上のPost_Graphic要素のIDが一覧表示されます。このリスト内のIDの数は、num_i_graphicsで指定されます。
注: すべてのPost_Graphicエンティティが同じボディに属している必要があります。
i_flexbody_id
1つ目のボディが弾性の場合は、この引数によって、接触で考慮される1つ目のボディのBody_FlexibleのIDが指定されます。
i_flip_flex
弾性体I上のサーフェス法線の向きを反転させます。この引数は省略可能です。TRUEまたはFALSEを選択します。

デフォルトはFALSEです。

使用法の詳細については、コメント10をご参照ください。

num_j_graphics
2つ目のボディが剛性の場合は、この引数によって、接触力を評価する際に考慮される2つ目のボディ上のPost_Graphic要素の数が指定されます。
num_j_graphics > 0
j_graphics_id
2つ目のボディが剛性の場合は、この引数によって、接触で考慮される2つ目のボディ上のPost_Graphic要素のIDが一覧表示されます。このリスト内のIDの数は、num_j_graphicsで指定されます。
注: すべてのPost_Graphicエンティティが同じボディに属している必要があります。
j_flexbody_id
2つ目のボディが弾性の場合は、この引数によって、接触で考慮される2つ目のボディのBody_FlexibleのIDが指定されます。
j_flip_flex
弾性体J上のサーフェス法線の向きを反転させます。この引数は省略可能です。TRUEまたはFALSEを選択します。
デフォルトはFALSEです。
使用法の詳細については、コメント10をご参照ください。
ignore_penetration_larger_than
この属性を使用して、接触力の評価でMotionSolveが考慮する最大貫入深さを変更します。このしきい値を超える値は無視されます。
master_surface
貫入深さ、接触ポイント、接触法線などの計算時にマスターサーフェスとして使用するサーフェスを指定します。以下から選択できます:

I:ボディIのサーフェスがマスターサーフェスとして使用されます。

J:ボディJのサーフェスがマスターサーフェスとして使用されます。

I_AND_J:ボディIとボディJの両方のサーフェスがマスターサーフェスとして二者択一的に使用され、結果が合計されます。

AUTO:マスターサーフェスとして使用する形状はMotionSolveによって自動的に決定されます。これが推奨されるデフォルトオプションです。

enable_node_mode
メッシュベースの形状について、垂直抗力が計算される位置が、相互結合された三角形要素の中心なのか(FALSE)、これらの要素の結合節点なのか(TRUE)を指定します。
デフォルトはFALSEです。
enable_analytical
MotionSolveで、可能な限り解析的記述を使用するのかどうかを指定します。TRUEまたはFALSEを選択します。
デフォルトはFALSEです。
使用法の詳細については、コメント1をご参照ください。
contact_stability_2d
2D曲線接触における接触ポイントと貫入深さを計算する際に使用される安定性の値を指定します。
このパラメータのデフォルト値は0.1です。
詳細については、コメント9をご参照ください。
cnf_type
接触垂直抗力の計算に、POISSONIMPACTVOLUME、またはユーザー定義の(USERCNF)力モデルのどれを使用するかを指定します。
接触力は、接触対象として定義された交差する形状間の貫入の関数として計算されます。つまり、形状が交差すると、選択された接触のタイプに基づく反発力が生成されます。
詳細については、コメント2をご参照ください。
penalty(POISSON)
スプリング力の計算に使用する剛性パラメータを指定します。penaltyの値が大きい場合は、2つの接触する形状間で小さい貫入のみが許可され、値が小さい場合は、大きい貫入が許可されます。ソルバーのパフォーマンスを向上させるためには、現実的な変形を捕捉できる範囲で、できるだけ小さいペナルティ値を使用することを検討してください。
penalty ≥ 0
restitution_coef(POISSON)
接触している形状間の反発係数(COR)を定義します。これは、接触力の計算に使用されます。0の値は、2つのボディが接触後に合体することを意味する完全塑性接触を指定します。1の値は、完全弾性接触を指定します。衝突でエネルギーは損失せず、分離の相対速度が接近の相対速度と一致します。
COR = (衝突後の相対速度)/(衝突前の相対速度)
1 ≥ restitution_coef ≥ 0
normal_trans_vel(POISSON)
全減衰が接触力で適用される2つのボディ間の速度制限を定義します。ユーザーがこの値を設定しない場合は、MotionSolveにより1という値が初期設定されます。
normal_trans_vel > 0。
詳細については、コメント4をご参照ください。
stiffness(IMPACT)
接触の剛性パラメータです。これは、IMPACT関数用のものと同じパラメータです。剛性の値が大きい場合は、2つの接触する形状間で小さい貫入のみが許可され、値が小さい場合は、大きい貫入が許可されます。このパラメータは負でない値にする必要があります。ソルバーのパフォーマンスを向上させるためには、正確な変形を捕捉できる範囲で、できるだけ小さい剛性値を使用することを検討してください。
stiffness ≥ 0
exponent(IMPACT)
接触面の力変形特性の指数。硬化スプリング特性の場合は、この値を1.0より大きくする必要があり、軟化スプリング特性の場合は、1.0より小さくする必要があります。
exponent > 0
damping(IMPACT)
最大減衰係数。これは負でない値にする必要があります。
damping ≥ 0
dmax(IMPACT)
全減衰が適用される貫入。正の数にする必要があります。
dmax > 0
i_elastic_modulus(VOLUME)
体積力モデルのボディIに属している形状の弾性係数を指定します。この弾性係数の値は、材料のバルク弾性係数とせん断弾性係数から求めることができます。
i_elastic_modulus > 0
詳細については、コメント5をご参照ください。
j_elastic_modulus(VOLUME)
体積力モデルのボディJに属している形状の弾性係数を指定します。この弾性係数の値は、材料のバルク弾性係数とせん断弾性係数から求めることができます。
j_elastic_modulus > 0
詳細については、コメント5をご参照ください。
i_layer_depth(VOLUME)
ボディIに属する形状の層の深さを指定します。
i_layer_depth > 0
詳細については、コメント5をご参照ください。
j_layer_depth(VOLUME)
ボディJに属する形状の層の深さのサイズを指定します。
j_layer_depth > 0
詳細については、コメント5をご参照ください。
exponent(VOLUME)
接触面の力変形特性の指数。硬化スプリング特性の場合は、この値を1.0より大きくする必要があり、軟化スプリング特性の場合は、1.0より小さくする必要があります。
exponent > 0
damping(VOLUME)
VOLUME力モデルの減衰力を計算するために使用する減衰係数。
damping ≥ 0
cnf_param_string(USERCNF)
データファイルからユーザー作成サブルーチンCNFSUBに渡されるパラメータのリストを指定します。
cnf_dll_name(USERCNF)
接触力計算サブルーチンを含む共有ライブラリのパスと名前を指定します。MotionSolveはこの情報を使用して、実行時にライブラリ内のユーザーサブルーチンを読み込みます。
cnf_fnc_name(USERCNF)
接触垂直抗力サブルーチンの代替名(CNFSUB以外)を指定します。
script_name(USERCNF、USERCFF)
cnf_fnc_nameまたはcff_fnc_nameで指定されたルーチンを含むユーザー作成スクリプトのパスと名前を指定します。
interpreter(USERCNF、USERCFF)
ユーザースクリプトが記述されたインタープリタ型言語を指定します。有効な選択肢は、MATLABまたはPYTHONです。
cff_type

接触摩擦力の計算に使用する摩擦力モデルを指定します。選択できる値は、"COULOMB_ON""COULOMB_OFF""DYNAMIC_ONLY"、または"USERCFF"です。

cff_type = "COULOMB_ON"は、接触位置で摩擦力を計算して適用することを指定します。MotionSolveは、摩擦力にクーロンモデルを使用します。

cff_type = "COULOMB_OFF"は、接触位置で摩擦力を計算または適用しないことを指定します。摩擦は適用しません。

cff_type = "COULOMB_DYNAMICONLY"は、動摩擦のみがアクティブになることを指定します。

cff_type = "USERCFF"は、ユーザー定義の摩擦力モデルを使用するように指定します。

詳細については、コメント7をご参照ください。
mu_static

摩擦が静的状態になっている場合の静摩擦係数を定義します。

MotionSolveは、静摩擦状態と動摩擦状態の間の移行にステップ関数を使用します。

mu_static > 0
詳細については、コメント7をご参照ください。
mu_dynamic
摩擦が動的状態になっている場合の動摩擦係数を定義します。

MotionSolveは、静摩擦状態と動摩擦状態の間の移行にステップ関数を使用します。動摩擦係数は静摩擦係数以下にする必要があります。

mu_staticmu_dynamic > 0
詳細については、コメント7をご参照ください。
stiction_trans_vel
摩擦状態が静摩擦に移行する速度。
詳細については、コメント7をご参照ください。
friction_trans_vel
摩擦状態が動摩擦に移行する速度。
|friction_trans_vel| ≥ |stiction_trans_vel|
詳細については、コメント7をご参照ください。
cff_dll_name(USERCFF)
接触摩擦サブサブルーチンを含む共有ライブラリのパスと名前を指定します。MotionSolveはこの情報を使用して、実行時にライブラリ内のユーザーサブルーチンを読み込みます。
cff_fnc_name(USERCFF)
接触垂直抗力サブルーチンの代替名を指定します。すなわち、CFFSUB以外の名前を指定します。
cff_param_string(USERCFF)
データファイルからユーザー作成サブルーチンCFFSUBに渡されるパラメータのリストを指定します。
cpost_dll_name
接触ポストサブサブルーチンを含む共有ライブラリのパスと名前を指定します。MotionSolveはこの情報を使用して、実行時にライブラリ内のユーザーサブルーチンを読み込みます。
cpost_fnc_name
接触ポストサブルーチンの代替名を指定します。すなわち、CONTACTPOST以外の名前を指定します。
cpost_param_string
データファイルからユーザー作成サブルーチンCONTACTPOSTに渡されるパラメータのリストを指定します。
cpost_interpreter
ユーザースクリプトが記述されたインタープリタ型言語を指定します。現在、CONTACTPOSTサブルーチン用のインタープリタとしてサポートされているのはPythonのみです。
cpost_script_name
cpost_fnc_nameで指定されたルーチンを含むユーザー作成スクリプトのパスと名前を指定します。

モデリングとデバッグのヒント

  • モデルを追加する前に、モデルが接触なしで実行されることを確認します。
  • 接触摩擦をオフにした状態でモデリングを開始し、垂直抗力を有効にした後で接触摩擦を追加します。
  • 現実的かつ安定した結果を得るには通常、接触パラメータを調整するためにある程度の実験が必要です。
  • stiction_trans_velfriction_trans_velの値が小さいと、摩擦係数が大きい場合に、積分器のステップが小さくなりすぎます。積分に問題が生じる場合は、stiction_trans_velの値を大きくしてください。経験上、これにより結果が大きく変化することはありません。
  • ペナルティや剛性の値が大きいと、形状間で許容される貫入が減少しますが、積分器のステップサイズも小さくなる傾向があります。測定しようとしているシステムの挙動を捕捉できる程度の形状の貫入を許容することを検討してください。これはモデルに依存します。(剛性 / ペナルティの値を小さくして)中程度の大きさの貫入を許容すると、一般に接触力の計算はずっとスムーズになります。”0.1mmの貫入でシステムの挙動は変化するか?1mmではどうか?”と自問自答してください。
  • 一般に、接触サーフェス上のメッシュが細かいほど、精度の高い結果を取得できます。ただし、メッシュが細かいと、衝突検出アルゴリズムの計算負荷が増大し、シミュレーション速度が低下する可能性があります。
  • 形状の法線が接触に対して適切に設定されていることを確認してください。三角形メッシュ形状では、メッシュ節点の右手の法則によって法線が決まります。例えば、MotionViewのContactパネルにある法線チェックツールを使用して、法線を表示できます。
  • シミュレーション時に接触が検出されない場合や、互いに貫通する場合は、積分器のステップサイズを小さくする(h_maxなど)、誤差トレランスを小さくする、ペナルティ / 剛性を大きくする(柔らかすぎる場合)、または要素法線を確認するのいずれかを試してください。

    代わりに、MotionViewのContactパネルで接触センサーに対して“ゼロクロッシング”アクションを有効にすることもできます。このようにすることで、MotionSolveは、1つ目の接触のモーメントをより正確に特定しようとします。これにより、この問題が軽減される可能性があります。このセンサーの詳細については、Sensor_Eventに関するドキュメントをご参照ください。

  • 積分器が正常に機能しない場合は、DebugOutputを使用して、接触が問題を引き起こしているかどうかを判断してください。問題を引き起こしている場合は、接触のペナルティ / 剛性や減衰を小さくする(大きすぎる場合)、h_maxを小さくする、積分器の誤差トレランスを大きくする、モデル内の他の剛性エンティティに減衰を追加する、前述のとおり接触摩擦パラメータを調整するのいずれかを試してください。

制限事項

Force_Contactの現在の実装にはいくつかの制限事項があります。
  • スティクションやスティックスリップ現象は、現時点ではサポートされていません。
  • 解析的な円筒-ボックス間接触については、ボックスの辺や頂点と円筒の平坦な面との接触は、現時点ではサポートされていません。

例1:メッシュ間の接触

次の図は、子供のおもちゃで使用される遊星歯車列を示しています。子供が太陽歯車を回すと、他の歯車も回転します。

この歯車列は、2つの接触からなります。1つ目は、太陽歯車と惑星歯車の接触であり、2つ目は、惑星歯車とリング歯車の接触です。これらの歯車は銅製であり、このシステムを滑らかに動かすために多少のオイルが使用されます。


図 1. 子供のおもちゃで使用される遊星歯車列

この例のForce_Contactステートメントを以下に示します。このシステムはSI単位でモデル化されています。

1つ目の接触は、太陽歯車と惑星歯車間の接触です。
<Force_Contact
    id                    = "1"
    num_i_graphics        = "1"
    i_graphics_id         = "82"
    num_j_graphics        = "1"
    j_graphics_id         = "92"
    cnf_type              = "POISSON
    penalty               = "1E6"
    restitution_coef      = "0.52"
    cff_type              = "COULOMB_ON"
    mu_static             = "0.08"
    mu_dynamic            = "0.05"
    stiction_trans_vel    = "0.005"
    friction_trans_vel    = "0.01"
/>
以下の2つ目の接触は、惑星歯車とリング歯車間の接触です。
<Force_Contact
    id                    = "2"
    num_i_graphics        = "1"
    i_graphics_id         = "93"
    num_j_graphics        = "1"
    j_graphics_id         = "73"
    cnf_type              = "POISSON"
    penalty               = "1E6"
    restitution_coef      = "0.52"
    cff_type              = "COULOMB_ON"
    mu_static             = "0.08"
    mu_dynamic            = "0.06"
    stiction_trans_vel    = "0.005"
    friction_trans_vel    = "0.0l"
/>

詳細な例については、チュートリアルMV-1010: Contact Simulation using MotionSolveをご参照ください。

例2:解析的な3D接触

この例では、解析的な3D接触の使用法を示します。MotionViewではユーザー操作に変更はありません。ソルバーの内部では、接触している形状ペアが“シンプル”であると認識され、特殊な解析的接触定式化を使用するように切り替えられます。

このモデルは、平坦なボックス上に配置された円筒からなります。この円筒は、ボックスの上面に平行な軸の周りを回転します。動的シミュレーションが実行されて、このシンプルなケースの接触挙動が評価されます。円筒が回転すると、メッシュ内の三角形が接触したり離れたりします。接触の運動特性に変化はありません。したがって、接触アルゴリズムによって一定の力が報告されることが予測されます。



図 2. 3D解析的接触 - ボックス上で回転する円筒

この問題は、3D解析的接触およびメッシュ間接触を使用して解析されます。接触力を、次のプロットに示します。



図 3. ボックスと円筒の境界面における接触力 - 解析的接触(赤)とメッシュ間接触(青)の比較

解析的接触では、予測どおりの一定の力が報告されています。対照的に、メッシュ間接触表現では小さめの力が報告されています。さらに、メッシュ間の接触では、三角形が接触したり離れたりするのに合わせて、力が変化しています。より細かいテッセレーションを使用することで力の変動は小さくできますが、これにより、シミュレーションの負荷が増大します。

次の図では、解析的接触とメッシュ間接触のパフォーマンスを比較しています。このシンプルなモデルでは、解析的接触(左)はメッシュ間の接触(右)に比べて約21倍高速です。



図 4. 解析的接触とメッシュ間接触 - パフォーマンスの比較

コメント

  1. MotionSolveは、接触しているボディの形状表現を使用して接触力を計算します。ボディのこの形状表現は、そのボディのグラフィックと呼ばれます。MotionSolveは衝突エンジンを使用して、2つのグラフィックス間の交差や貫入を検出します。グラフックスは、剛体と弾性体の3Dソリッドメッシュ、剛体の3D解析形状、および2D剛性曲線にすることができます。

    3D接触については、多くの形状組み合わせが可能です。enable_analyticalTRUEに設定されている場合、MotionSolveは剛体用の解析的表現を使用して、正確で、高速で、滑らかな接触力を計算します。この方法を使用できない場合は、MotionSolveは一般的な3Dメッシュ間接触を使用します。

    次の表では、さまざまな組み合わせのサポートを示します。

    表1:サポートされている形状の接触運動特性の計算方法


    上の表で、各セルのエントリの意味は次のとおりです:
    解析
    接触している各形状は、解析的表現によって表されます。形状間の接触は解析的に特定されます。接触ポイントの位置と法線は、テッセレーション表現を使用せずに計算されます。湾曲形状が正確に表現されます。
    Semi
    形状のいずれかが解析的に表現されます。つまり、細分化されません。ただし、他の接触している形状は細分化され、メッシュとして表現されます。この精度は、テッセレーションの精度に依存します。
    Mesh
    両方の形状が細分化されます。一般的なメッシュ間接触検出手法が使用されます。接触の精度は、メッシュの精度に依存します。メッシュ密度が高いほど、接触検出速度は低下します。言い換えると、細かいメッシュ間の接触運動特性を計算するには、より多くの時間がかかります。

    1つの剛体に複数のグラフィックスを関連付けることはできますが、1つの弾性体には単一のグラフィックスしか関連付けることができません。

    3Dメッシュ表現の使用:剛体のグラフィックスは、三角形要素を使用してメッシュ化する必要があります。弾性体のグラフィックスは、その有限要素メッシュから直接採用されます。メッシュされたグラフィックスは、閉じたソリッドを記述する相互結合された要素のセットです。上記の様子を以下の図に示します。


    図 5. メッシュを使用した形状の3D表現 - 2つのギアボディの形状表現


    図 6. メッシュを使用した形状の3D表現 - 同じギアボディのメッシュ表現
    MotionSolveでは、剛体のグラフィックスのメッシュ化表現に関する特定の条件が規定されています。現実的な接触力を生成するには、これらの条件が満たされる必要があります。これらは次のとおりです。
    • メッシュ表現では、三角形シェル要素のみを使用できます。四角形シェル要素や他のシェル要素は使用できません。
    • メッシュはサーフェスメッシュにする必要があります。つまり、厚みが0の2D三角形シェル要素からなるメッシュです。四面体や六面体などの要素タイプを使用するソリッドメッシュは不要です。
    • メッシュは、ボリュームを囲んでいる必要があります。すなわち、メッシュは閉じている必要があります。言い換えると、メッシュにフリーエッジや亀裂があってはいけません。例えば、体積がゼロの平坦なサーフェスは使用できません。
    • メッシュ内でT接合は許可されません。すなわち、三角形要素の1つの辺を3つ以上の要素で共有することはできません。
    • ボディのグラフィックのメッシュ表現のサーフェス法線は、接触できるサーフェスから外側を向いている必要があります。法線の方向は、対応するグラフィックコンポーネントで定義される必要があります(Post: Graphicをご参照ください)。

    これらの規則の詳細については、MotionSolveで3D接触モデルを実行するための最良の方法をご参照ください。

    剛体のグラフィックはさまざまな方法で定義できます:
    • 球形状の場合、MotionSolveは、接触ポイントや接触法線などの値を計算する際に、形状の解析的記述を使用できます(球の中心位置と半径に基づいて)。ボディIとボディJのどちらかまたはその両方のプリミティブ球形状(Post_Graphictype = "SPHERE"のもの)がMotionSolveで検出された場合は必ず、この手法に従います。球体に対して解析的記述を使用することには、次の2つの利点があります:
      • サーフェスメッシュがないため、三角形メッシュによるサーフェスの近似に起因するエラーは発生しません。つまり、接触力の精度が向上します。
      • 球と一般化された3Dメッシュが関与する接触の場合は、解析時間は一般に大幅に短縮されます。

      球形状のメッシュ表現がMotionSolveで必ず使用されるようにするには、enable_sphere_to_meshFALSEに指定します。こうすることで、MotionSolveはプリミティブ球形状をメッシュし、球のメッシュ表現を使用して接触関連の値を計算するようになります。

    • シンプルな形状については、MotionSolveで用意されている組み込みプリミティブグラフィック(Sphere、Frustum、Boxなど)を使用できます。これらのプリミティブ形状の場合、MotionSolveはサーフェスを内部的にメッシュして(Post: Graphicrefinement_level属性を使用)、メッシュの密度を決定します。

    複雑な形状はCADパッケージ内で定義し、MotionViewのImport CADツールを使用してMotionSolveにインポートできます。このツールを使用してCAD形状をメッシュする方法の詳細については、Import CAD or FEをご参照ください。代わりに、HyperMeshを使用してCADグラフィックをメッシュすることもできます。

    3D解析的表現の使用:2つの接触している剛性形状が“シンプル”な場合、一般的なメッシュ間接触手法は使用されません。シンプルな形状とは、球、ボックス、円筒、錐台などです。この場合は、よりシンプルな解析的計算を使用して、接触ポイントの位置と法線の方向を検知します。これらの形状のテッセレーションは不要であり、使用されません。

    2D表現の使用:MotionSolveでは、2つの剛体を表す2つの曲線間の接触もサポートされています。2D曲線のグラフィックを指定するには、type = "CURVE"Post_Graphicを参照します。以下の場合は、3Dメッシュベースの接触を使用するよりも、2D曲線ベースの接触を使用する方がメリットがある可能性があります:
    1. 定義された曲線に沿ってのみ接触が生じることが事前にわかっている。さらに、2本の曲線が定義されている平面内で接触が生じることが予測される。つまり、面外の接触力が想定されない。
    2. 接触が計算される対象となる曲線が滑らかで、3D形状の湾曲を適切に表している。
    3D細分化形状を使用するより、2D曲線を使用して剛体接触をシミュレートすると、以下のメリットが得られる場合があります:
    1. より正確な結果:離散化に起因するエラーが少ないため、結果がより正確です。3D形状の三角形への離散化は、3つの次元で行われるのに対して、曲線の場合は2つの次元のみです。
    2. 精度の向上が容易:MotionView内で曲線にポイントを追加することで、結果の精度をすばやく高めることができます。3D接触の使用時に結果の精度を高めるには、グラフィックを再インポートして再メッシュするか、MotionView環境外のCADツールにアクセスして再メッシュする必要があります。3D形状の再メッシュは、2D曲線の精緻化より時間がかかります。
    3. シミュレーション時間の短縮:曲線上で接触が生じる形状の場合、曲線間の接触を使用すると、細分化された3D形状を使用する場合よりずっと高速です。後者の場合は、細分化された3D形状の接触を特定するためのソルバーの作業負荷が大きく、全体的なシミュレーション時間が長くなるためです。
    3Dメッシュベースの接触と同様に、以下の制約が適用されます:
    1. 曲線は平坦で、ポスト:グラフィックで指定された参照マーカーを基準にしてx-y平面内で定義される必要があります。
    2. CURSUBルーチンは現在サポートされていません。
    3. すべてのi_graphic_idとすべてのj_graphic_idでは、同じ平面で定義される曲線のグラフィックが指定されている必要があります。
    4. 各グラフィック参照マーカーのz方向は、同じ方向を向いている必要があります。
    5. シミュレーション時にグラフィックが単一の平面内に留まるようにする必要があります。これを実現するには、面内ジョイントをモデルに追加するのが最も簡単です。
    6. 直線のみで表現された2つのボディ間に接触はあり得ません。曲線接触アルゴリズムでは、少なくとも2つの交差ポイントが存在する必要があるためです。
      注: 2D曲線の接触では、nsegポスト:グラフィックで指定)に依存しない、指定された曲線の滑らかな表現が使用されます。
  2. 垂直抗力の計算には、POISSON、IMPACT、VOLUMEの3つの事前定義済み接触力モデルが用意されています。これらのいずれも適さない場合は、ユーザー独自の力モデルをサブルーチンまたはスクリプトとして作成し、これを使用して垂直接触力を計算できます。
    POISSON、IMPACT、VOLUMEの手法で計算される垂直抗力は、弾性スプリング力と散逸減衰力という2つの成分からなります。それぞれの手法では、独自の方法でこれらの力が計算されます。これらの方法については、以降のコメントで説明します。
    F c o n t a c t = F s p r i n g + F d a m p i n g MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadogacaWGVbGaamOBaiaadshacaWGHbGaam4yaiaads haaeqaaKaaGkabg2da9iaadAeakmaaBaaajeaObaGaam4Caiaadcha caWGYbGaamyAaiaad6gacaWGNbaabeaajaaOcqGHRaWkcaWGgbGcda WgaaqcbaAaaiaadsgacaWGHbGaamyBaiaadchacaWGPbGaamOBaiaa dEgaaeqaaaaa@5BA1@
  3. IMPACTモデルでは、接触垂直抗力はIMPACT関数を使用してモデル化されます。貫入の深さと速度が衝突検出アルゴリズムによって計算され、IMPACT関数に渡されます。
    F s p r i n g = K z exp MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadohacaWGWbGaamOCaiaadMgacaWGUbGaam4zaaqaba GccqGH9aqpcaWGlbGaamOEamaaCaaaleqabaGaciyzaiaacIhacaGG Wbaaaaaa@4DFC@
    F d a m p i n g = S T E P ( z , d max , c , 0 , 0 ) d z d t MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadsgacaWGHbGaamyBaiaadchacaWGPbGaamOBaiaadE gaaeqaaOGaeyypa0JaeyOeI0Iaam4uaiaadsfacaWGfbGaamiuamaa bmaabaGaaiOEaiaacYcacqGHsislcaWGKbWaaSbaaSqaaiGac2gaca GGHbGaaiiEaaqabaGccaGGSaGaam4yaiaacYcacaaIWaGaaiilaiaa icdaaiaawIcacaGLPaaadaWcaaqaaiaadsgacaWG6baabaGaamizai aadshaaaaaaa@5E91@
    K MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGlbaaaa@40EB@
    Stiffness
    z MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWG6baaaa@411A@
    接触貫入深さ。
    e x p MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGLbGaamiEaiaa dchaaaa@42F6@
    力変形特性の指数。
    d max MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGKbWaaSbaaSqa aiGac2gacaGGHbGaaiiEaaqabaaaaa@4404@
    全減衰が適用される貫入深さ。
    c MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGJbaaaa@4103@
    減衰係数。
  4. POISSONモデルでは、垂直抗力の弾性スプリング力成分がヘルツ接触理論を使用してモデル化され、減衰力が反発係数とユーザー定義の速度限界を使用して計算されます。この力を定義する方程式を以下に示します。
    F s p r i n g = K z 3 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadohacaWGWbGaamOCaiaadMgacaWGUbGaam4zaaqaba GccqGH9aqpcaWGlbWaaOaaaeaacaWG6bWaaWbaaSqabeaacaaIZaaa aaqabaaaaa@4BEE@
    F d a m p i n g = F s p r i n g ( ( 1 C R 2 1 + C R 2 ) S T E P ( d z d t , v n o r m , t r a n s , 1.0 , v n o r m _ t r a n s , 1.0 ) ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadsgacaWGHbGaamyBaiaadchacaWGPbGaamOBaiaadE gaaeqaaOGaeyypa0JaeyOeI0IaamOramaaBaaaleaacaWGZbGaamiC aiaadkhacaWGPbGaamOBaiaadEgaaeqaaOWaaeWaaeaadaqadaqaam aalaaabaGaaGymaiabgkHiTiaadoeadaWgaaWcbaGaamOuaaqabaGc daahbaWcbeqaaiaaikdaaaaakeaacaaIXaGaey4kaSIaam4qamaaBa aaleaacaWGsbaabeaakmaaCeaaleqabaGaaGOmaaaaaaaakiaawIca caGLPaaacqGHxiIkcaWGtbGaamivaiaadweacaWGqbWaaeWaaeaada WcaaqaaiaadsgacaWG6baabaGaamizaiaadshaaaGaaiilaiabgkHi TiaadAhadaWgaaWcbaGaamOBaiaad+gacaWGYbGaamyBaiaacYcaca WG0bGaamOCaiaadggacaWGUbGaam4CaaqabaGccaGGSaGaeyOeI0Ia aGymaiaac6cacaaIWaGaaiilaiaadAhadaWgaaWcbaGaamOBaiaad+ gacaWGYbGaamyBaiaac+facaWG0bGaamOCaiaadggacaWGUbGaam4C aaqabaGccaGGSaGaaGymaiaac6cacaaIWaaacaGLOaGaayzkaaaaca GLOaGaayzkaaaaaa@852F@
    K
    ペナルティパラメータ(剛性)。
    z
    接触貫入深さ。
    C R MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaGGdbWaaSbaaSqa aiaadkfaaeqaaaaa@41E4@
    反発係数。この値は、完全塑性衝突の場合は0、完全弾性衝突の場合は1です。
    v n o r m , t r a n s MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWG2bWaaSbaaSqa aiaad6gacaWGVbGaamOCaiaad2gacaGGSaGaamiDaiaadkhacaWGHb GaamOBaiaadohaaeqaaaaa@4A83@
    全減衰が適用される法線速度。
    注: 反発係数が0の場合に、2つのボディが正面衝突するとき、dz/dt > vnorm_transであれば、減衰力はスプリング力と等しく、接触垂直抗力の合計はゼロです。

    このモデルでは、エネルギー損失は反発係数を使用してモデル化されます。表2には、いくつかの材料の反発係数を示しています。接触は、同じ材料同士のものとします(真鍮間接触や鋼鉄間接触など)。

    表2:一般的な材料の反発係数
    材料 反発係数
    真鍮 0.30
    青銅 0.52
    0.22
    コルク 0.60
    ニレ 0.48
    ガラス 0.96
    0.67
    象牙 0.78
    0.16
    カエデ 0.65
    ゴム 0.75
    鋼鉄 0.90
  5. VOLUMEモデルでは、垂直抗力の弾性スプリング力成分がIMPACTモデルと同じようにモデル化され、減衰力が減衰係数を使用して計算されます。この力を定義する方程式を以下に示します。
    F s p r i n g = A c o n K z exp MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadohacaWGWbGaamOCaiaadMgacaWGUbGaam4zaaqaba GccqGH9aqpcaWGbbWaaSbaaSqaaiaadogacaWGVbGaamOBaaqabaGc caWGlbGaamOEamaaCaaaleqabaGaciyzaiaacIhacaGGWbaaaaaa@51C7@
    F d a m p i n g = c d z d t MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaajaaOqqaaaaaaOpGqSvxza8qacaWGgbGcdaWg aaqcbaAaaiaadsgacaWGHbGaamyBaiaadchacaWGPbGaamOBaiaadE gaaeqaaOGaeyypa0JaeyOeI0Iaam4yamaalaaabaGaamizaiaadQha aeaacaWGKbGaamiDaaaaaaa@4FA5@
    ここで、
    K
    接触剛性。
    z
    接触貫入深さ。
    e x p MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGLbGaamiEaiaa dchaaaa@42F6@
    力変形特性の指数。
    c MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGJbaaaa@4103@
    減衰係数。
    A c o n MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGbbWaaSbaaSqa aiaadogacaWGVbGaamOBaaqabaaaaa@43DB@
    接触面積。

    VOLUMEモデルでは、両方の衝突ボディがスプリング層で囲まれていると想定します。これらのスプリングの剛性は、材料の弾性係数プロパティとこの層の深さによって決定されます。各ボディ(IとJ)の個々の剛性は次のように計算されます:

    c i = M i d i c j = M j d j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakqaabeqaaabbaaaaaG+acXwDLbWdbiaadogadaWg aaWcbaGaamyAaaqabaGccaWG9aWaaSaaaeaacaWGnbWaaSbaaSqaai aadMgaaeqaaaGcbaGaamizamaaBaaaleaacaWGPbaabeaaaaaakeaa caWGJbWaaSbaaSqaaiaadQgaaeqaaOGaamypamaalaaabaGaamytam aaBaaaleaacaWGQbaabeaaaOqaaiaadsgadaWgaaWcbaGaamOAaaqa baaaaaaaaa@4DDC@
    ここで、
    c i , c j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGJbWaaSbaaSqa aiaadMgaaeqaaOGaaiilaiaadogadaWgaaWcbaGaamOAaaqabaaaaa@44D9@
    それぞれボディIとボディJの剛性パラメータ。
    M i , M j MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGnbWaaSbaaSqa aiaadMgaaeqaaOGaaiilaiaad2eadaWgaaWcbaGaamOAaaqabaaaaa@44AE@
    それぞれボディIとボディJの弾性係数。
    d i , d j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGKbWaaSbaaSqa aiaadMgaaeqaaOGaaiilaiaadsgadaWgaaWcbaGaamOAaaqabaaaaa@44DB@
    それぞれボディIとボディJの層の深さ。

    等価接触剛性は、ボディIとボディJのスプリングが直列に接続されていると想定して計算されます:

    K = c i c j c i + c j MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGlbGaamypamaa laaabaGaam4yamaaBaaaleaacaWGPbaabeaakiaadogadaWgaaWcba GaamOAaaqabaaakeaacaWGJbWaaSbaaSqaaiaadMgaaeqaaOGaey4k aSIaam4yamaaBaaaleaacaWGQbaabeaaaaaaaa@4AC6@
    注: 上記で計算された等価剛性の単位は、立方長さあたりの力となります。VOLUME力手法では、接触面積と貫入深さを使用して、ニュートン単位(または力のモデル単位)で接触力を求めます。

    接触している両方のボディの弾性係数M(P波弾性率とも言う)は、それぞれの材料のバルク弾性係数とせん断弾性係数を使用して計算されます。これらは、MotionViewのContactパネルで指定できます。弾性係数は次のように計算されます。

    M = K + 4 G 3 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGnbGaeyypa0Ja am4saiabgUcaRmaalaaabaGaaGinaiaadEeaaeaacaaIZaaaaaaa@45FB@
    ここで、
    M MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGnbaaaa@40EC@
    弾性係数またはP波弾性率。
    K MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGlbaaaa@40EB@
    バルク弾性係数。
    G MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGhbaaaa@40E6@
    せん断弾性係数。

    均質な等方性材料のバルク弾性係数とせん断弾性係数は、ヤング率とポアソン比に基づいて次のように計算できます。

    G = E 2 ( 1 + υ ) K = E 3 ( 1 2 υ ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakqaabeqaaabbaaaaaG+acXwDLbWdbiaadEeacqGH 9aqpdaWcaaqaaiaadweaaeaacaaIYaWaaeWaaeaacaaIXaGaey4kaS IaeqyXduhacaGLOaGaayzkaaaaaaqaaiaadUeacqGH9aqpdaWcaaqa aiaadweaaeaacaaIZaWaaeWaaeaacaaIXaGaeyOeI0IaaGOmaiabew 8a1bGaayjkaiaawMcaaaaaaaaa@5197@
    ここで、
    E MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacaWGfbaaaa@40E4@
    ヤング率
    υ MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharmqr1ngBPrgitLxBI9gBaerbd9wDYLwzYbItLDharuavP1wz ZbItLDhis9wBH5garqqr1ngBPrgifHhDYfgasaacH8srps0lbbf9q8 WrFfeuY=Hhbbf9v8qqaqFr0xc9pk0xbba9q8WqFfea0=yr0RYxir=J bba9q8aq0=yq=He9q8qqQ8frFve9Fve9Ff0dmeqabeqadiWacaGaae qabaWabqqafaaakeaaqqaaaaaaOpGqSvxza8qacqaHfpqDaaa@41E2@
    ポアソン比

    弾性係数と層の深さの両方によって、等価接触剛性の値が決まります。どの材料についても、弾性係数は一般に定数値であるため、モデル内の適切な貫入を得るには、層の深さを変更します。例えば、2つの鋼鉄ボディが接触しているとします。鋼鉄(G = 160GPa、K = 79GPa)の場合、M = 292.33GPaです。層の深さを100mmと指定すると、接触剛性は1.461E+03N/mm3以下です。この層の深さを10分の1に減らして10mmにすると、接触剛性は10倍に増大して1.461E+04N/mm3以下になります。

    VOLUME力モデルではこのようにして、衝突するボディの物理的な材料プロパティから接触剛性を求めることができます。

  6. 剛性パラメータ(POISSONモデルとIMPACTモデルの両方)の適切な初期推定値を得るには、非粘着接触に対して古典的なヘルツ接触理論を適用します。次の図は、半径がR1とR2の2つの球体間の接触の一般的なケースを示しています。


    図 7. 2つの球オブジェクトのヘルツ接触剛性

    ヘルツ理論は、静的荷重ケースを使用して展開されます。剛性は、接触パッチにおける形状および接触している2つのボディの材料プロパティの関数です。剛性係数は赤色で示しています。

    2つの鋼球が接触しているとします。これらの鋼球の半径は30mmであり、鋼鉄のヤング率とポアソン比はそれぞれ200GPaと0.3です。上記の式を使用すると、接触の剛性係数はK = 1.7945E+10N/m = 1.7945E+07N/mmになります。

    これを、ペナルティ値または剛性値の初期値として扱う必要があります。剛性値が大きいとソルバーのパフォーマンスが低下する可能性があるため、必要に応じてこのパラメータを調整してください。ただし、より小さいペナルティ、ひいてはより多くの貫入を許可しても、システムの全体的な挙動を捕捉できる可能性はあります。

  7. MotionSolveでは、次の2つの摩擦モデルがサポートされています。
    • クーロン摩擦モデル。垂直抗力と摩擦係数の積として摩擦力を算出します。この係数は、以下で説明する滑り速度の関数として計算されます。
    • ユーザー定義の摩擦力モデル。サブルーチンまたはスクリプトの形で実装できます。

      1つ目の手法では、POISSON、IMPACT、VOLUMEの各力モデルについて、接触パッチにおける摩擦力が同じように計算されます。垂直抗力と摩擦係数の積として摩擦力をモデル化するクーロン摩擦則が使用されます。摩擦係数は、滑り速度の関数としてモデル化されます。摩擦力は、以下の式に従って粘性力としてモデル化されます:

    (1)

    ここで、
    V t MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2Caerbd9MBZ9 gBHnharuavP1wzZbItLDhis9wBH5garmWu51MyVXgaruWqVvNCPvMC G4uz3bqee0evGueE0jxyaibaieYlf9irVeeu0dXdh9vqqj=hEeeu0x Xdbba9frFj0=OqFfea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs 0dXdbPYxe9vr0=vr0=vqpWqadiaabmqadmaadaGabiaaeaGaauaaaO qaaabbaaaaaG+acXwDLbWdbiaadAfadaWgaaWcbaGaamiDaaqabaaa aa@3DF2@
    接触ポイントにおける現在の滑り速度
    V s MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOvamaaBa aaleaacaWGZbaabeaaaaa@37F6@

    μ s MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiVd02aaS baaSqaaiaadohaaeqaaaaa@38D1@ の完全な値が摩擦係数に使用される静摩擦遷移滑り速度

    V d MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaamOvamaaBa aaleaacaWGKbaabeaaaaa@37E7@
    μ d MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiVd02aaS baaSqaaiaadsgaaeqaaaaa@38C2@ の完全な値が摩擦係数に使用される動摩擦滑り速度
    μ s MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiVd02aaS baaSqaaiaadohaaeqaaaaa@38D1@
    は、静摩擦係数
    μ d MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqiVd02aaS baaSqaaiaadsgaaeqaaaaa@38C2@
    は、動摩擦係数

    図 8 は、摩擦係数と滑り速度の関数的な関係を示しています。

    青い曲線は、3つすべての状態(静摩擦、滑り摩擦への遷移、滑り摩擦)をカバーしているフル摩擦モデルを示しています。これは、cff_type = "COULOMB_ON"を選択した場合に適用される摩擦モデルです。
    • 静的状態は薄い青で示しています。
    • 静摩擦から動摩擦への遷移は白で示しています。
    • 動摩擦状態は薄いオレンジ色で示しています。

    赤い曲線は、滑り摩擦状態のみをカバーしている摩擦モデルを示しています。これは、cff_type = "DYNAMICS_ONLY"を選択した場合に適用される摩擦モデルです。



    図 8. 滑り速度の関数としての摩擦係数
  8. μは、適用される摩擦係数です。表3に示すとおり、これは滑り速度の関数であり、静摩擦係数と動摩擦係数に依存します。摩擦力は、滑り速度と反対の方向に作用します。次の表に、一般的な材料ペアの静摩擦係数と動摩擦係数を示します。摩擦の値は表面コーティングに応じて大きく変化するため、乾燥状態と油が付着した状態の両方の値を示しています。
    材料1 材料2 摩擦係数
    乾燥時 油付着時
    Static(静的釣り合い解析) 動的 Static(静的釣り合い解析) 動的
    アルミニウム アルミニウム 1.05-1.35 1.4 0.3  
    アルミニウム 軟鋼 0.61 0.47    
    ブレーキ材料 鋳鉄 0.4      
    ブレーキ材料 鋳鉄(湿潤) 0.2      
    真鍮 鋳鉄   0.3    
    レンガ 木材 0.6      
    青銅 鋳鉄   0.22    
    青銅 鋼鉄     0.16  
    カドミウム カドミウム 0.5   0.05  
    カドミウム 軟鋼   0.46    
    鋳鉄 鋳鉄 1.1 0.15   0.07
    鋳鉄 オーク   0.49   0.075
    クロム クロム 0.41   0.34  
    鋳鉄 1.05 0.29    
    1   0.08  
    軟鋼 0.53 0.36   0.18
    鋼鉄   0.8    
    鋼鉄(304ステンレス) 0.23 0.21    
    銅鉛合金 鋼鉄 0.22   -  
    ダイアモンド ダイアモンド 0.1   0.05 - 0.1  
    ダイアモンド 金属 0.1 - 0.15   0.1  
    ガラス ガラス 0.9 - 1.0 0.4 0.1 - 0.6 0.09-0.12
    ガラス 金属 0.5 - 0.7   0.2 - 0.3  
    ガラス ニッケル 0.78 0.56    
    グラファイト グラファイト 0.1   0.1  
    グラファイト 鋼鉄 0.1   0.1  
    グラファイト(真空中) グラファイト(真空中) 0.5 - 0.8      
    ハードカーボン ハードカーボン 0.16   0.12 - 0.14  
    ハードカーボン 鋼鉄 0.14   0.11 - 0.14  
    1   0.15 - 0.2  
    鋳鉄   0.43    
    鋼鉄   1.4    
    皮革 木材 0.3 - 0.4      
    皮革 金属(清浄) 0.6   0.2  
    皮革 金属(湿潤) 0.4      
    皮革 オーク(柾目) 0.61 0.52    
    マグネシウム マグネシウム 0.6   0.08  
    ニッケル ニッケル 0.7-1.1 0.53 0.28 0.12
    ニッケル 軟鋼   0.64   0.178
    ナイロン ナイロン 0.15 - 0.25      
    オーク オーク(柾目) 0.62 0.48    
    オーク オーク(板目) 0.54 0.32   0.072
    プラチナ プラチナ 1.2   0.25  
    プレキシガラス プレキシガラス 0.8   0.8  
    プレキシガラス 鋼鉄 0.4 - 0.5   0.4 - 0.5  
    ポリスチレン ポリスチレン 0.5   0.5  
    ポリスチレン 鋼鉄 0.3-0.35   0.3-0.35  
    ポリエチレン 鋼鉄 0.2   0.2  
    ゴム アスファルト(乾燥)   0.5-0.8    
    ゴム アスファルト(湿潤)   0.25-0.0.75    
    ゴム コンクリート(乾燥)   0.6-0.85    
    ゴム コンクリート(湿潤)   0.45-0.75    
    サファイア サファイア 0.2   0.2  
    1.4   0.55  
    焼結青銅 鋼鉄 -   0.13  
    固体 ゴム 1.0 - 4.0   --  
    鋼鉄 アルミニウム 0.45      
    鋼鉄 真鍮 0.35   0.19  
    鋼鉄(軟) 真鍮 0.51 0.44    
    鋼鉄(軟) 鋳鉄   0.23 0.183 0.133
    鋼鉄 鋳鉄 0.4   0.21  
    鋼鉄 銅鉛合金 0.22   0.16 0.145
    鋼鉄(硬) グラファイト 0.21   0.09  
    鋼鉄 グラファイト 0.1   0.1  
    鋼鉄(軟) 0.95 0.95 0.5 0.3
    鋼鉄(軟) リン化ブロス   0.34   0.173
    鋼鉄 燐化ブロス 0.35      
    鋼鉄(硬) ポリエチレン 0.2   0.2  
    鋼鉄(硬) ポリスチレン 0.3-0.35   0.3-0.35  
    鋼鉄(軟) 鋼鉄(軟) 0.74 0.57   0.09-0.19
    鋼鉄(軟) 鋼鉄(軟) - 0.62    
    鋼鉄(硬) 鋼鉄(硬) 0.78 0.42 0.05 -0.11 0.029-.12
    鋼鉄 亜鉛(鋼鉄上にめっき) 0.5 0.45 - -
    テフロン 鋼鉄 0.04   0.04 0.04
    テフロン テフロン 0.04   0.04 0.04
    スズ 鋳鉄   0.32    
    チタン合金Ti-6Al-4V(グレード5) アルミニウム合金6061-T6 0.41 0.38    
    チタン合金Ti-6Al-4V(グレード5) チタン合金Ti-6Al-4V(グレード5) 0.36 0.3    
    チタン合金Ti-6Al-4V(グレード5) 青銅 0.36 0.27    
    炭化タングステン 炭化タングステン 0.2-0.25   0.12  
    炭化タングステン 鋼鉄 0.4 - 0.6   0.08 - 0.2  
    炭化タングステン 0.35      
    炭化タングステン 0.8      
    木材 木材(清浄) 0.25 - 0.5      
    木材 木材(湿潤) 0.2      
    木材 金属(清浄) 0.2-0.6      
    木材 金属(湿潤) 0.2      
    木材 レンガ 0.6      
    木材 コンクリート 0.62      
    亜鉛 亜鉛 0.6   0.04  
    亜鉛 鋳鉄 0.85 0.21    
  9. 2D曲線接触の場合、接触ポイントは、接触法線方向の最大貫入ポイントとして決定されます。曲線間で深い貫入が生じるコンフィギュレーションの場合は、このポイントが一意に特定されない可能性があります。

    このような場合は、contact_stability_2dパラメータを追加できます。このパラメータを使用すると、重なり合う領域の質量中心の方向に接触ポイントを引っ張る仮想スプリングが、接触ポイントの計算に追加されます。この値が大きいほど、スプリングが強力になり、安定性が高まります。このようにして検出された接触ポイントの法線方向の距離に基づいて、貫入深さが計算されます。

    contact_stability_2dをゼロに設定した場合は、接触ポイントの計算はスキップされ、代わりに重なり合う領域の質量中心が使用されます。この場合、貫入深さは重なり合う領域に基づいて計算されます。この値は通常、実際の貫入深さよりやや小さくなります。

  10. ソリッド弾性体のサーフェス上の法線方向は、常に、外側(ボディ材料から離れる)を指しています。弾性体がシェルで表現される場合は、法線方向がH3Dファイル内のSHELL要素の定義で使用されるGRIDポイントの順に定義されます。i_flip_flexj_flip_flexを使用すれば、シェル要素の反対側からの接触に適合するように法線方向を反転させることができます。