ビーク値の時刻歴データからレインフロー計数を行う機能をGitHub上からパッケージとして提供する.パッケージ名はRBM,モジュール名HLrainflowである.アルゴリズムはHLrainflow法に基づく.
[注意]文献[1]に記載されているヒステリシスループ法のアルゴリズムは、実質レインフロー法の評価結果と同じ結果を与えますが、厳密に見ると少しだけ異なっていました.しかし、ヒステリシスループ法のアルゴリズムを部分的に変更するだけで、完全にレインフロー法と合致することを最近見出しました。ここで、提供するアルゴリズムは完全にレインフロー法に合致するはずです。アルゴリズムの詳細は「HLrainflow法アルゴリズム」のページを参照して下さい.
| コマンド | 内容 |
|---|---|
| PeakCalc | 時系列波形からピーク値を算出する |
| HLrainflow | ピーク値データからレインフロー計数結果を出力する |
ASTM E1049-85(2017) Rainflow Counting Example
pk<-c(-2,1,-3,5,-1,3,-4,4,-2)
HLrainflow(Peak=pk)
この結果,ASTMに記載されているのと同じ以下の出力を確認する.
halfR halfM
1 4 1.0
2 4 1.0
3 3 -0.5
4 4 -1.0
5 8 1.0
6 9 0.5
7 8 0.0
8 6 1.0
波形履歴からピーク値を計算後に,レインフロー計数を行う
wave<-c(5e-3,3.2e-2,3.8e-2,-3.3e-2,-1.9e-2,-1e-2,1e-3,-8e-3,-2e-2,1e-2,-1e-3,4e-3,1.1e-2,-1e-3,-7e-3,-2e-3)
pk<-PeakCalc(Wave=wave)
HLrainflow(Peak=pk)
この結果,以下の出力を確認する.
halfR halfM
1 0.02198929 -0.009969643
2 0.02198929 -0.009969643
3 0.01238186 0.004909680
4 0.01238186 0.004909680
5 0.08263671 0.003540413
6 0.04894241 -0.013306734
7 0.01817584 0.002076555