CONSUB

Driver SubroutineMotionSolveシミュレーションを制御するために使用します。

使用

対応するUserProgramControlコマンドの例:

<UserProgramControl
   usrsub_param_string = "USER(5000, 0.0, 0.0, -9810,0)"
   usrsub_dll_name     = "NULL"
/>

フォーマット

Fortranの呼出し構文
SUBROUTINE CONSUB (PAR, NPAR)
C/C++の呼出し構文
voidSTDCALL CONSUB (double*par,int*npar)
Pythonの呼出し構文
def CONSUB(par, npar)
MATLABの呼出し構文
function CONSUB(par, npar)

属性

PAR
[倍精度]
ユーザー定義のUserProgramControlで提供されたリストにある定数引数を含む配列。
NPAR
[整数]
PAR配列のエントリの数。

次のPythonユーザーサブルーチンは、1つ目のパラメータが5000の場合に機能し、重力ベクトルを2つ目、3つ目、および4つ目のパラメータで指定された値に変更して、過渡シミュレーションと擬似静的シミュレーションを実行します。

def CONSUB(par, npar):
    if par[0]==5000:
        commnd =str('ACCGRAV/IGRAV=%11.5f' %par[1])
        istat = py_modify(commnd)
        commnd =str('ACCGRAV/JGRAV=%11.5f' %par[2])
        istat = py_modify(commnd)
        commnd =str('ACCGRAV/KGRAV=%11.5f' %par[3])
        istat= py_modify(commnd)
        istat = py_analys("TRANSIENT", "transient", 0.0, 7.5, 0)
        istat= py_datout()
        istat = py_analys("STATICS", "static", 7.5, 8.0, 0)
return