嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元微信扫码支付:2 元
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
雨流计数法是20世纪50年代由英国的两位工程师M.Matsuishi和T.Endo提出来的。该计数法的主要功能是把实测载荷历程简化为若干个载荷循环,供疲劳寿命估算和编制疲劳试验载荷谱使用。它以双参数法为基础,考虑了动强度(幅值)和静强度(均值)两个变量,符合疲劳载荷本身固有的特性。雨流计数法主要用于工程界,特别在疲劳寿命计算中运用非常广泛。
clear;clc
C=xlsread('load_F');%%%%%%%%%在此修改加载的文件名,数据格式一直才可正确运算%%%
B=C;A=C;
q=length(A);
%三点循环计数法;部分参考SAE ASTM标准
%% 步骤一 %%
%对载荷时间历程进行处理使它只包含峰谷峰谷交替出现
m=q;
for i=2:1:m-1
if A(i-1)<A(i)&&A(i)<A(i 1)
B(i)=NaN;
elseif A(i-1)>A(i)&&A(i)>A(i 1)
B(i)=NaN;
end
end
B(isnan(B))=[];
%% 步骤二 %%
%对载荷时间历程再造,使从最大(小)值拆开,前后拼接,使从最值开始最值结束
[a,b]=max(B);
n=length(B);
B1=B(b:n);
B2=B(1:b);
B=[B1;B2];
%% 步骤三 %%
%再只留波峰波谷,防止拼接处出现不合理的数据
A=B;m=length(B);
for i=2:1:m-1
if A(i-1)<A(i)&&A(i)<A(i 1)
B(i)=NaN;
elseif A(i-1)>A(i)&&A(i)>A(i 1)
B(i)=NaN;
end
end
B(isnan(B))=[];n=length(B);
%%%%%%%%%%%%%%%%%%%%%%%% B为改造后载荷时间历程 n为B中波峰波谷的个数
%% 步骤四 %%
%雨流计数记因素 1幅值F 2均值J 开启无脑循环模式
F=[];J=[];D=B;
while length(B)>=1
n=length(B);
if n==1
break
elseif n>1
for j=1:n-2
s1=abs(B(j 1)-B(j));
s2=abs(B(j 1)-B(j 2));
e3=(B(j) B(j 1))/2;
if s1<=s2
F=[F;s1];
J=[J;e3];
B(j)=[];
B(j)=[];
n=length(B);
break;
else
continue;
end
end
end
continue
end
%% 步骤五 %%
%画图像 三维hist三维图像
X=[J,F];
figure;hist3(X,[30 30]);
xlabel('均值');
title('雨流计数法-三点循环计数运算逻辑');
ylabel('幅值');
zlabel('循环次数');