磁界過渡応答解析の解析ステップ数の設定では、解析ステップ数を指定するとともに定常状態を判定して解析を終了させる設定ができます。このスクリプトでは電磁力の周波数成分と、回路素子の平均電流値にトレランスを指定する定常判定条件を作成します。
前提条件
- 磁界過渡応答解析スタディ、または効率マップスタディが1つ以上作成されていること
このスクリプト例では、プロジェクトツリー上でアクティブなスタディに対して実行している - タイトルを”Force”とした電磁力の条件が設定されていること
- 回路に電気回路素子が配置されていること
スクリプトにおける設定内容
- 判定対象量の種類を電磁力の周波数成分とする定常判定条件を作成
判定対象量をタイトルがForceの電磁力条件、基本周波数100, 成分を第2成分、判定する調波の次数を2, 振幅トレランスを0.5としている。 - 判定対象量の種類を電流の平均値とする定常判定条件を作成
周期を1/50, トレランスを3としている。
# Copyright (c) 2026 JSOL CORPORATION
#
# 本スクリプトはMITライセンスのもとで公開しています。
# ライセンス全文は以下を参照してください。
# https://www.jmag-international.com/jp/scriptlibrary/jmag_script_library_mit/
def createSteadyConditionsByFrequencyComponent(studyPropStep):
"""周波数成分の定常判定条件を追加する"""
condition = studyPropStep.CreateSubCondition(u"SteadyState", u"FrequencyComponent")
condition.SetValue(u"SteadyStateStopCheckMethod", "Frequency")
condition.SetValue(u"SteadyStateFrequency", 100)
condition.SetValue(u"HarmonicOrder", 2)
condition.SetValue(u"SteadyStateThreshold", 0.5)
condition.SetValue(u"SteadyStateReferenceResultSource", "Force")
condition.SetValue(u"SteadyStateResultComponent", "Second")
condition.SetLinkWithType(u"SteadyStateLinkedForce", u"Force")
def createSteadyConditionsByAverageValue(studyPropStep):
"""平均値の定常判定条件を追加する"""
condition = studyPropStep.CreateSubCondition(u"SteadyState", u"AverageValue")
condition.SetValue(u"SteadyStateStopCheckMethod", "Average")
condition.SetValue(u"SteadyStatePeriodic", u"1/50")
condition.SetValue(u"SteadyStateThreshold", 3)
condition.SetValue(u"SteadyStateReferenceResultSource", "Current")
app = designer.GetApplication()
studyPropStep = app.GetCurrentStudy().GetStep()
studyPropStep.SetValue(u"StopOnSteadyState", "On") # "StopOnSteadyState":定常状態に到達したら解析を終了する
createSteadyConditionsByFrequencyComponent(studyPropStep)
createSteadyConditionsByAverageValue(studyPropStep)


