SYSFNC
Utility/Data Access SubroutineSYSFNCユーティリティサブルーチンでは、ユーザーサブルーチン内で、MotionSolveに変位、速度、力など、単一システムの状態を問い合わせることができます。SYSFNCは、適切な入力引数(下記参照)で呼び出す必要があり、対応するシステム状態を返します。
フォーマット
- Fortranの呼出し構文
- CALL SYSFNC (FNCNAM, IPAR, NSIZE, STATE, ERRFLG)
- C/C++の呼出し構文
- c_sysfnc(fncnam, ipar, nsize, state, errflg)
- Pythonの呼出し構文
- [state, errflg] = py_sysfnc(fncnam, ipar)
- MATLABの呼出し構文
- [state, errflg] = m_sysfnc(fncnam, ipar)
属性
- FNCNAM
- SYSFNC呼び出し用の関数の名前を指定する文字列。有効な関数名を以下に示します。
- IPAR
- FNCNAMの入力パラメータを含む実数ベクトル。この配列のサイズはNSIZEにする必要があります。
- NSIZE
- SYSFNC呼び出しのパラメータの数を含むスカラー整数変数。
- STATE
- 関数呼び出しによって抽出された実数値。
- ERRFLG
-
SYSFNC関数呼び出しの成否を表す論理フラグ。
- False/0 - 成功。
- True/ ゼロ以外 - 関数呼び出しでエラー発生。
完全な定義
この関数は、次のような、ユーザー定義のサブルーチンのサブセットでのみ呼び出すことができます:ARYSUB、CONSUB、DIFSUB、GFOSUB、REQSUB、SENSUB、SEVSUB、SFOSUB、TUNSUB、VARSUB、VFOSUB、およびVTOSUB。特に、UCOSUB、COUSUB、COUXX、COUXX2、FIESUB、MOTSUB、GSESUB、GSEXX、GSEXU、GSEYX、およびGSEYUから呼び出すことはできません。上記ルーチンの場合は、システム状態を入力引数として明示的に渡す必要があり、SYSARAYまたはSYSFNC呼び出しを介して抽出することはできません。
下の表は、サポートされている各関数名と必須の引数のサイズを示しています。
関数タイプ | 関数名 | NSIZE |
---|---|---|
Displacement | DM、AX、AY、AZ、YAW、PITCH、ROLL、PSI、PHI、THETA | 1-2 |
DX、DY、DZ | 1-3 | |
INCANG | 3 | |
Q | 2 | |
Velocity | VM、VR | 1-3 |
WM | 1-2 | |
VX、VY、VZ | 1-4 | |
WX、WY、WZ | 1-3 | |
QDOT | 2 | |
Acceleration | ACCM、WDTM | 1-3 |
ACCX、ACCY、ACCZ、WDTX、WDTY、WDTZ | 1-4 | |
QDDOT | 2 | |
Marker Force | FM、TM | 2 |
FX、FY、FZ、TX、TY、TZ | 2-3 | |
Elemental Force | BEAM、BUSH、FIELD、SPDP、COUPLER、MATE、SFORCE、VFORCE、VTORQ、GFORCE、YFORCE、JOINT、JPRIM、MOTION、CVCV、PTCV、CVSF、PTSF、SFSF、CONTACT | 4 |
FRICTION | 2 | |
System Element | DIF、DIF1、VARVAL、SENVAL | 1 |
PINVAL、POUVAL、ARYVAL | 2 | |
Kinetic Energy | KE | 1 |
Proximity | PROXIMITY | 2 |