使用法
simulate (type="DYNAMICS", start=0.0, end=None, duration=None,
dtout=None, steps=None, dsa="", start=None, print_increment=None, constraint_tol=None,
implicit_diff_tol=None, onOutputStep =None, returnResults=False, output="on", active_contact_iteration="False")
属性
- type
- 文字列
- 実行する解析のタイプを定義します。以下のいずれかを選択する必要があります:
- "Static"
- "Dynamics"
- "Linear"
- "Assembly"
- typeは省略可能です。指定しない場合、typeは"DYNAMICS"になります。
- start
- 倍精度
- シミュレーションの開始時刻の値を定義します。
- この属性は省略可能です。指定しない場合、startはデフォルトで0.0になります。
- end
- シミュレーションの終了時刻を定義します。
- durationとendは相互排他的です。必ず一方のみを指定する必要があります。
- 0 ≤ start < end
- duration
- 倍精度
- 解析の期間を指定します。つまり、次のようになります: end = start + duration
- durationとendは相互排他的です。必ず一方のみを指定する必要があります。
- duration > 0
- dtout
- 倍精度
- プロットとアニメーション出力のための連続する出力ステップの時間間隔を定義します。
- dtoutは省略可能です。指定しない場合、デフォルトで0.01になります。
- 指定する場合は、dtout > 0です。
- dtoutがHMAXより小さい場合は、最大の積分器ステップサイズ(HMAX)がdtoutに設定されることに注意してください。
- steps
- 整数
- startとendの間の出力ステップの数を定義します。
- stepsとdtoutは相互排他的です。必ず一方のみを指定する必要があります。
- 指定する場合は、steps > 0です。
- dtoutは(end-start)/stepsとして求められます。
- dtoutがHMAXより小さい場合は、最大の積分器ステップサイズ(HMAX)がdtoutに設定されることに注意してください。
- dsa
- 文字列
- 解析と組み合わせて実行する設計感度解析のタイプを定義します。指定する場合は、次のいずれかを選択する必要があります:
- "Auto":MotionSolveは、設計感度を計算するために使用する最適なアルゴリズムを決定します。
- "Adjoint":MotionSolveは、設計感度を計算するために随伴手法を使用します。この手法は、設計変数が多く、応答が少ない場合にお勧めします。
- "Direct":MotionSolveは、設計感度を計算するために直接微分法を使用します。この手法は、設計変数が少なく、応答が多い場合にお勧めします。
- dsaは省略可能です。指定しない場合、設計感度解析は実行されません。設計感度解析は計算コストがかかる可能性があります。そのため、dsaは必要な場合にのみ指定する必要があります。
- start
- 倍精度
- 現時点ではサポートされていません。
- print_increment
- 倍精度
- 積分器が実行しているステップについての出力の頻度を指定します。関数が以下の場合に出力されます:
mod (integration_step_number, print_increment) = 0.
- print_incrementは省略可能です。
- 指定する場合は、print_increment > 0です。
- print_increment = 1の場合は、積分ステップごとに出力が生成されます
- print_increment = nの場合は、n番目の積分ステップごとに出力が生成されます
- constraint_tol
- 倍精度
- シミュレーションがモデル内の拘束(Joint、Jprim、Motionなど)を満たすために必要な精度を指定します。
- constraint_tolは省略可能です。
- implicit_diff_tol
- 倍精度
- モデル内の陰的微分方程式に必要な精度を指定します。これらは、implicit = Trueに設定されたモデル内のDIFFです。
- 引数implicit_diff_tolは省略可能です。指定しない場合は、implicit_diff_tol = 1.0E-5になります。
- onOutputstep
- Python関数
- これは、ソルバーが出力ステップに達したときに呼び出されるコールバック関数です。アニメーションやライブプロットなどに使用できます。
- returnResults
- ブーリアン
- returnResultsは、Trueの場合に、simulateコマンドが結果で満たされたデータ構造を返すブール値です。
- active_contact_iteration
- ブーリアン
- 接触残差が陰解法ソルバーの修正子ステップ中に更新されるかどうかと解析的ヤコビアんが入力されるかどうかを指定します。Trueの値は、残差が更新されることを意味します。
- 属性active_contact_iterationは省略可能です。デフォルト値はFalseです。
例
# Create a model
m = CreateStewartPlatform (output="Stewart-Platform")
# Do a static analysis first
m.simulate (type="Statics", returnResults=True)
# Then do a dynamic analysis
run=m.simulate (type="DYNAMICS", end=1.77, dtout=0.01, returnResults=True)
returnResultsをTrueに定義すると、実行オブジェクトにシミュレーションからの出力データが入力されます。デフォルトでは、ボディ変換、要求および応答変数が、実行オブジェクトに入力される出力を生成します。