FAQ

FAMOS

シーケンス / 関数top

疲労寿命推定

ID.

Q. ダメージ計算:クラスカウント法向け

A.


クラスカウント法の場合、カウント結果は0から始まるインデックスでクラスに分類されています。例としては下図のような状態です。

 

S-N線図では応力Sとして物理単位が使われるため、シーケンスではクラスのインデックスから物理単位に換算して計算を行う必要があります。
ここでは、それぞれ以下の名前を変数として使います。

SN S-N線図、応力Sの単位系はクラスカウント法の対象としたデータと同じ
Result クラスカウント法のカウント結果
_MaxValue カウントしたレンジの上限 (ClsPeak〇関数に使ったパラメータ)
_MinValue カウントしたレンジの下限 (ClsPeak〇関数に使ったパラメータ)
_NumberOfBins 分類されたクラス数 (ClsPeak〇関数に使ったパラメータ)
Damage S-N線図とカウント結果から求められたダメージ
TrialTime 対象データが示す時間、距離など
LifeTime 推定された疲労寿命

シーケンスの記述は以下のようになります。

; S-Nを両対数スケール上で検索するために換算
_xlog = Log(SN.X)
_ylog = Log(SN.Y)

; 1クラスのレンジを計算
_range = (_MaxValue - _MinValue) / _NumberOfBins

; すべてのクラスでループ計算
Damage = 0
_i = 1
While _i <= _NumberOfBins
  ; そのクラスの振幅、応力Sに相当する
  _class = Abs(_MinValue + _range * _i)

  ; 対応する回数NをS-N線図から検索する
  _slog = PosiEx(_ylog, Log(_class))
  _nlog = Value2(_xlog, _slog, 0)
  _N = 10^_nlog

  ; ダメージに換算する
  Damage = Damage + Result[_i] * (1 / _N)

  _i = _i + 1
End

; 疲労寿命の推定
TrialTime = 10 ; 対象データ相当の時間/距離などを指定する
LifeTime = TrialTime / Damage

S-N線図が両対数スケールのため、応力Sから回数Nを検索する手順が少々特殊ですが、要点としては「クラスに対応する応力Sを求める」「応力Sに対応する回数Nを求める」「回数Nをダメージに換算して累計を取る」の3点のみです。


<< 疲労寿命推定に関するFAQ一覧へ戻る