MaxVal

Model ElementMaxValは、シミュレーション中にMotionSolve式またはユーザーサブルーチンのおおよその最大値を計算します。

クラス名

MaxVal

説明

最大値は、解析感度を計算できるようにalpha-soft関数によって近似されます。(1)
max ( x ) = 0 T x ( t ) e α x ( t ) d t 0 T e α x ( t ) d t MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaciyBaiaacg gacaGG4bGaaiikaiaadIhacaGGPaGaeyypa0ZaaSaaaeaadaWdXbqa aiaadIhadaqadaqaaiaadshaaiaawIcacaGLPaaacaWGLbWaaWbaaS qabeaacqaHXoqycaWG4bWaaeWaaeaacaWG0baacaGLOaGaayzkaaaa aOGaamizaiaadshaaSqaaiaaicdaaeaacaWGubaaniabgUIiYdaake aadaWdXbqaaiaadwgadaahaaWcbeqaaiabeg7aHjaadIhadaqadaqa aiaadshaaiaawIcacaGLPaaaaaGccaWGKbGaamiDaaWcbaGaaGimaa qaaiaadsfaa0Gaey4kIipaaaaaaa@57F9@

ここで、 α MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqySdegaaa@3796@ は正の定数で、 α = c o e f MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaeqySdeMaey ypa0Jaam4yaiaad+gacaWGLbGaamOzaaaa@3C4D@ を満たします。 c o e f MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqiVu0Je9sqqrpepC0xbbL8F4rqqrFfpeea0xe9Lq=Jc9 vqaqpepm0xbba9pwe9Q8fs0=yqaqpepae9pg0FirpepeKkFr0xfr=x fr=xb9adbaqaaeGaciGaaiaabeqaamaabaabaaGcbaGaam4yaiaad+ gacaWGLbGaamOzaaaa@39A8@ のデフォルト値は10で、ほとんどのユースケースに使用できます。

属性の概要

名前 プロパティ コマンドで変更可能か 設計可能か
label Str ()    
function Function ()  
routine Routine ()    
coef Double ()    
wlen Int ()    
k Int ()    

使用法

#1: MaxVal specified as an expression
MaxVal (function=expressionString))

#2: Defined in a compiled user-subroutine
MaxVal (function=userString, routine=string, optional_attributes)

#3: Defined in a Python function
MaxVal (function=userString, routine=functionPointer, optional_attributes)

属性

式の最小値として定義
function
文字列
関数の最大値を定義するMotionSolve式。
function属性は必須です。
コンパイルされたDLL内のユーザーサブルーチンとして定義
function
有効なユーザー関数MotionSolve式を定義する文字列
データファイルから、MaxValが定義されるユーザー定義のサブルーチンに渡されるパラメータのリスト。
function属性は必須です。
routine
文字列
ユーザーサブルーチンの代替名を指定します。この名前は、“∷”で区切られた情報の2つの部分で構成されます。
1つ目は、ユーザー定義のVariableの応答を計算する関数を含む共有ライブラリへのパス名です。2つ目は、計算を実行する共有ライブラリ内の関数の名前です。
例: routine="/staff/Altair/engine.dllmyMaxVal"
  • "/staff/Altair/engine.dllはDLLです。
  • "myMaxVal"は、計算を実行するこのDLL内の関数です。
属性routineは省略可能です。
指定しない場合、routineはデフォルトでVARSUBになります。
Pythonスクリプト内のユーザーサブルーチンとして定義
function
有効なユーザー関数MotionSolve式を定義する文字列
データファイルから、Variableが定義されるユーザー定義のサブルーチンに渡されるパラメータのリスト。
function属性は必須です。
routine
Python内の呼び出し可能な関数へのポインタ
例:routine= myMaxVal
  • myMaxValは、モデルが存在する場所ならどこからでも呼び出すことが可能なPython関数またはメソッドです。
属性routineは省略可能です。
指定しない場合、routineはデフォルトでVARSUBになります。
オプション属性
label
文字列
MaxValオブジェクトの名前を指定します。
この属性は省略可能です。指定しない場合は、MotionSolveが代わりにラベルを作成します。
coef
倍精度
soft-alpha関数内の係数を指定します。デフォルト値は1.0で、ほとんどのユースケースに使用できます。
wlen
整数
平滑化関数の窓長。この値を増やすことにより、応答に高周波雑音が含まれている場合の最大値を平滑化できます。
k
整数
平滑化関数の次数。デフォルト値は1です。平滑化により真の最大値が失われる場合は、この値を増やすことができます。

例:

# Compute the maximum of the absolute value of the z-acceleration of a Marker
zacc = "ABS(ACCZ({},{}))".format(self.block.cm.id,self.ref.id)
zmax = MaxVal (function=zacc)

コメント

  1. プロパティの概要、使用理由、および拡張方法については、プロパティをご参照ください。
  2. 応答値はHyperGraph内の曲線と比較することで検証できます。高周波信号では、MotionSolveから返される値がHyperGraphと一致しない場合があります。これは、MotionSolveから返される最大値は各積分ステップで計算されますが、HyperGraphは出力ステップでのみ計算するためです。通常、出力ステップは積分ステップより大きいため、一致しません。この差は、MotionSolveから返される出力ステップを減らすことで排除できます。