GTCMAT
Utility/Data Access SubroutineGTCMATは、MotionSolveモデル内の“N”個のREFERENCE_MARKER間のコンプライアンスマトリクスを計算します。
使用
GTCMATは、通常、REQSUBユーザーサブルーチンから呼び出されます。
フォーマット
- Fortranの呼出し構文
- CALL GTCMAT (NM, MKID, NC, CMAT, ISTAT)
- C/C++の呼出し構文
- c_gtcmat(nm, mkid, nc, cmat, istat)
- Pythonの呼出し構文
- [cmat, istat] = py_gtcmat(mkid)
属性
- NM
- 整数
- MKID
- 整数
- NC
- 整数
出力
- CMAT
- 倍精度
- ISTAT
- 整数
例
単位 | プロパティ | 形状 |
---|---|---|
長さ = mm 質量 = Kg 時間 = 秒 力 = ニュートン |
Tの質量プロパティ 質量 = 170.1587874 Kg 慣性 = 1.607495985E+007、1.181530722E+007、4.33055212E+006 B1、B2、およびB3における剛性特性: K = 200、200、200 KT = 2.291831181E+005、2.864788976E+005、3.437746771E+005 |
![]() 図 1. 円環Aに掛けられた三角形T |
コンプライアンスマトリクスを計算するために、REQSUBを記述します。REQSUBでは、GTCMATが適切なパラメータを使用して呼び出されます。REQSUBはコンプライアンスマトリクスを取得してそれをファイルに書き込みます。このファイルの内容を以下に示します。
ファイルには、便宜上6x6のブロックに分割された18x18のマトリクスが含まれています。
COMPLIANCE MATRIX
=================
IM = B1 JM = B1
Row Range = 1 -- 6
Col Range = 1 -- 6
2.78486E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 -2.79544E-06
0.00000E+00 1.66667E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 3.49751E-03 4.57714E-06 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 4.57711E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
-2.79548E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B1 JM = B2
Row Range = 1 -- 6
Col Range = 7 --12
1.10757E-03 8.38643E-04 0.00000E+00 0.00000E+00 0.00000E+00 -2.79544E-06
0.00000E+00 1.66667E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 7.51245E-04 4.57714E-06 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 -2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B1 JM = B3
Row Range = 1 -- 6
Col Range = 13 --18
1.10757E-03 -8.38643E-04 0.00000E+00 0.00000E+00 0.00000E+00 -2.79543E-06
0.00000E+00 1.66667E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 7.51245E-04 4.57714E-06 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 -3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B2 JM = B1
Row Range = 7 --12
Col Range = 1 -- 6
1.10757E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
8.38643E-04 1.66667E-03 0.00000E+00 0.00000E+00 0.00000E+00 -2.09658E-06
0.00000E+00 0.00000E+00 7.51245E-04 -2.28857E-06 3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 4.57711E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
-2.79548E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B2 JM = B2
Row Range = 7 --12
Col Range = 7 --12
1.94621E-03 -4.19322E-04 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
-4.19322E-04 2.29565E-03 0.00000E+00 0.00000E+00 0.00000E+00 -2.09658E-06
0.00000E+00 0.00000E+00 3.18019E-03 -2.28857E-06 3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 -2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B2 JM = B3
Row Range = 7 --12
Col Range = 13 --18
1.94621E-03 4.19322E-04 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
-4.19322E-04 1.03768E-03 0.00000E+00 0.00000E+00 0.00000E+00 -2.09658E-06
0.00000E+00 0.00000E+00 1.06856E-03 -2.28857E-06 3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 -3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B3 JM = B1
Row Range = 13 --18
Col Range = 1 -- 6
1.10757E-03 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
-8.38643E-04 1.66667E-03 0.00000E+00 0.00000E+00 0.00000E+00 2.09658E-06
0.00000E+00 0.00000E+00 7.51245E-04 -2.28857E-06 -3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 4.57711E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
-2.79548E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B3 JM = B2
Row Range = 13 --18
Col Range = 7 --12
1.94621E-03 -4.19322E-04 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
4.19322E-04 1.03768E-03 0.00000E+00 0.00000E+00 0.00000E+00 2.09658E-06
0.00000E+00 0.00000E+00 1.06856E-03 -2.28857E-06 -3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 -2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
IM = B3 JM = B3
Row Range = 13 --18
Col Range = 13 --18
1.94621E-03 4.19322E-04 0.00000E+00 0.00000E+00 0.00000E+00 1.39772E-06
4.19322E-04 2.29565E-03 0.00000E+00 0.00000E+00 0.00000E+00 2.09658E-06
0.00000E+00 0.00000E+00 3.18019E-03 -2.28857E-06 -3.51938E-06 0.00000E+00
0.00000E+00 0.00000E+00 -2.28855E-06 0.00000E+00 0.00000E+00 0.00000E+00
0.00000E+00 0.00000E+00 -3.51939E-06 0.00000E+00 0.00000E+00 0.00000E+00
1.39774E-06 2.09661E-06 0.00000E+00 0.00000E+00 0.00000E+00 0.00000E+00
18x18のマトリクスは、下の図のように、6x6のブロックに分けられています。互いに入れ替えられているブロックに同じ色が付けられています。

図 2. コンプライアンスマトリクスCMATのブロック定義。
コメント
- GTCMATは、ユーザー作成サブルーチンから呼び出されます。GTCMATは、呼び出し元のユーザーサブルーチンでIFLAG = TRUEと指定されているときに呼び出す必要があります。
- コンプライアンスマトリクスは、静的平衡状態で計算されたシステムの伝達関数です。伝達関数には入力と出力が必要です。コンプライアンスマトリクスの計算では、これらが次のように定義されます:
- は、線形化されたシステムへの入力を表します。これはサイズが6*NMの配列です。各成分 は、“NM”個のREFERENCE_MARKERにおける6つの方向のいずれかで作用する力またはトルクです。
- は、線形化されたシステムからの出力を表します。これは次元が6*NMの配列です。各成分 は、“NM”個のREFERENCE_MARKERにおける6つの方向のいずれかで作用する並進または回転変位です。
- 静的平衡状態では、入力が
で出力が
のシステムの伝達関数を次のように表すことができます:
(1) 上記方程式内の数量は、次のように定義されます:- は、ラプラス領域変数を表します。 は減衰、 は振動状態の周波数で、 です。
- は、適切な次元の定数値マトリクスです。これらは、作用点におけるシステムの状態マトリクスと呼ばれています。
- は、6NM x 6NMマトリクスです。
- システム内の、注目するi番目のREFERENCE_MARKER、Iでは、6つの入力が次のように定義されます:
- 全体座標系のx軸に沿って作用するIの原点における単位力。
- 全体座標系のy軸に沿って作用するIの原点における単位力。
- 全体座標系のz軸に沿って作用するIの原点における単位力。
- 全体座標系のx軸周りに作用するIでの単位トルク。
- 全体座標系のy軸周りに作用するIでの単位トルク。
- 全体座標系のz軸周りに作用するIでの単位トルク。
- システム内の、注目するj番目のREFERENCE_MARKER、Jでは、出力が次のように定義されます:
- 入力 による、全体座標系のx軸に沿って測定されたJの原点の並進変位。
- 入力 による、全体座標系のy軸に沿って測定されたJの原点の並進変位。
- 入力 による、全体座標系のz軸に沿って測定されたJの原点の並進変位。
- 全体座標系のx軸周りに測定された、入力 による、Jの回転の小角度近似。
- 全体座標系のy軸周りに測定された、入力 による、Jの回転の小角度近似。
- 全体座標系のy軸周りに測定された、入力 による、Jの回転の小角度近似。
- コンプライアンスマトリクスの計算は、特に、サスペンションの弾性運動学的評価に有益です。複数のサスペンション設計要素をコンプライアンスマトリクス内の数量の関数として表現できます。
例えば、鉛直方向のホイールレートは、ホイール中心に適用された鉛直荷重による、ホイール中心における鉛直変位量の逆数として定義されます。
サスペンションホイール中心に配置された2つのマーカー間のコンプライアンスマトリクスが計算済みであると仮定すると、鉛直ホイールレートが次のように表されることは一目瞭然です:
- 左鉛直ホイールレート =
- 右鉛直ホイールレート =
ここで、コンプライアンスマトリクスに入力されるさまざまな項は次のとおりです:
- = 左ホイールに適用された単位鉛直力による左ホイールの鉛直変位。
- = 右ホイールに適用された単位鉛直力による左ホイールの鉛直変位。
- = 左ホイールに適用された単位鉛直力による右ホイールの鉛直変位。
- = 右ホイールに適用された単位鉛直力による右ホイールの鉛直変位。
- 代表的なコンプライアンスマトリクスの用途には、他にスプリングとダンパのモーション比率の計算もあります。スプリングのモーション比率は、スプリングの軸に沿った相対変位と、上側と下側のスプリングシート間に適用された相対荷重間の比率として定義されます。この量は、下側のスプリングシートに配置されたマーカーと上側のスプリングシートに配置されたマーカー間のコンプライアンスマトリクスを計算することによって簡単に取得できます。