随机载荷模拟及雨流计数方法在matlab中的实现

合集下载

随机车流荷载模拟方法及应用研究

随机车流荷载模拟方法及应用研究
桥为 7 " 2 1 . 5 m。嘉陵江牛角沱大桥为单向四车道 。 对通过嘉陵江牛角沱 大桥 的车辆进行连续 2 4小时的观
测, 得到其车辆通行情况 。 3 . 2模拟车流荷载
( B 3 ’ H 4 ’ . K 3 ) 模拟产生的应 力谱和实测应力谱 ( 如 下图)
对通过嘉陵江牛角沱大桥 的车辆进行统计 ,总共划 分为 六类代表性车型 , 包括小轿车、 小客车 、 大客车、 小货车、 中货 车、 大货车 。每种车型 的特征参数如表 l 所示。
4 5 5 5
4 7 1 0 2 8 0 0
4 0 6 0
6 6 6 0 4 0 0 0
3 5 6 5
7 9 2 0 4 3 0 0
考虑随机车流荷载 的各影响因素 , 通过编制程序 , 基于疲
劳分析的出发 点, 进行车辆类型 的合理简化 , 模拟 的随机车流 满足疲劳分析 的工程精度需求 。 在模拟随机车流的过程 中,考虑到城市道路桥梁和 公路 桥梁的不同,城市道路桥梁受到城市交通运行环境的影响较
3 - 3应 力 谱
将模拟产生的随机车流作用在应力影响线上 ,并应用雨 流计数法 , 对模拟产生的应力时程进行统计 , 对比桥上某杆件
1 4 8

科教导刊 r 电子J 恢 J・ 2 0 1 3年第八期 r 中. ) 一
4结 语
车重标准差(Leabharlann k N) 5 前轴藿量分配 后轴重量分配
车长C a r m) 轴距( m m)
4 5 5 5
3 6 o 0 2 3 2 0
4 5 5 5
4 4 9 0 2 3 0 0
4 5 5 5
1 0 3 7 0 5 0 0 0

对“雨流计数法”介绍

对“雨流计数法”介绍

对“雨流计数法”介绍雨流计数法(Rainflow counting method)是一种用于疲劳寿命预测和疲劳损伤分析的统计方法。

它通过对载荷历程数据进行处理,识别出载荷的循环次数、振幅和平均值,并统计不同振幅下的循环次数。

雨流计数法广泛应用于许多领域,如机械、航空航天、汽车工程、桥梁工程和风力发电等。

在这篇文章中,将详细介绍雨流计数法的原理、应用和计算过程。

1.雨流计数法的原理和背景疲劳是材料或结构在反复加载下逐渐发生的累积损伤。

在实际工程中,由于载荷的不断变化,对结构的疲劳寿命进行预测和分析是非常重要的。

雨流计数法是一种基于峰谷循环的疲劳分析方法,它通过将载荷历程数据进行循环切分和统计得出结构的振幅、平均值等参数,从而得到结构的疲劳损伤。

2.雨流计数法的应用领域雨流计数法被广泛应用于各个领域,如机械工程、航空航天工程、汽车工程和桥梁工程等。

在机械工程领域,雨流计数法用于预测零件的疲劳寿命,从而指导设计和维护;在航空航天工程中,雨流计数法用于分析航空器部件的疲劳损伤,评估其可靠性和安全性;在汽车工程领域,雨流计数法用于评估引擎和变速器等零部件的疲劳性能;在桥梁工程领域,雨流计数法用于分析桥梁结构的疲劳寿命,指导维护和修复工作。

3.雨流计数法的计算过程雨流计数法的计算过程可以分为循环切分和计数两个步骤。

下面将介绍每个步骤的具体操作。

3.1循环切分循环切分是将载荷历程数据切分成许多不同的循环,即找到载荷历程中的峰谷点。

切分规则如下:(1)初始点:选择载荷历程的起点作为初始点。

(2)峰值点:从初始点开始,寻找下一个大于初始点载荷的点作为峰值点。

(3)谷值点:从峰值点开始,寻找下一个小于峰值点载荷的点作为谷值点。

(4)循环结束点:从谷值点开始,寻找下一个大于谷值点载荷的点作为循环结束点。

(5)将以上得到的峰谷点作为一个循环,将循环次数、振幅和平均值记录下来。

3.2循环计数循环计数是统计不同振幅下的循环次数。

疲劳破坏机理

疲劳破坏机理

疲劳破坏机理1、定义材料或构件受到多次重复变化的载荷作用后,即使最大的重复交变应力低于材料的屈服极限,经过一段时间的工作后,最后也会导致破坏,材料或结构的这种破坏就叫做疲劳破坏。

材料科学揭示,由于制造过程中存在不可避免的缺陷,材料中的微裂纹总是存在的,特别是在焊缝处。

这些微裂纹在交变应力作用下扩展和聚合,形成宏观裂纹,宏观裂纹的进一步扩展导致最后的破坏。

疲劳破坏的微观过程是个极其复杂的过程,在宏观上一般来说可分为三个阶段:裂纹的萌生、裂纹的稳定扩展及裂纹的失稳扩展问。

2、疲劳裂纹萌生机理金属材料如果含有缺陷,夹杂物,切口或者其它应力集中源,疲劳裂纹就可能起源于这些地方。

通常将疲劳裂纹的萌生过程称为疲劳裂纹成核。

如果金属材料没有上述各种应力集中源,则裂纹成核往往在构件表面。

因为构件表面应力水平一般比较高,且难免有加工痕迹影响;同时表面区域处于平面应力状态,有利于塑性滑移的进行。

构件在循环载荷作用下经过一定次数应力循环之后,先在部分晶粒的局部出现短而细的滑移线,并呈现相继错动的滑移台阶,又由于往复滑移在表面上形成缺口或突起而产生应力集中。

随着循环次数增加,在原滑移线时近又会出现新滑移线逐渐形成较宽的滑移带,进一步增加应力循环次数,滑移带尺寸及数量均明显增加,疲劳裂纹就在这此滑移量大的滑移中产生。

这些滑移带称为驻留滑移带,标志裂纹在表面形成。

在大量滑移带中,由于原滑移所引起在表面有挤出和侵入槽的出现。

从而在表面下留下相应的空洞成为裂纹源。

随着循环次数提高和应力集中的加剧,会使空洞扩连形成新的较大空洞。

3、疲劳裂纹扩展机理疲劳裂纹在表面处成核,是由最大剪应力控制的,这些微裂纹在最大剪应力方向上。

在单轴加载条件下,微裂纹与加载方向大致呈45 度方向。

在循环载荷的继续作用下,这些微裂纹进一步扩展或互相连接。

其中大多数微裂纹很快就停止扩展,只有少数几条微裂纹能达到几十微米的长度。

此后逐渐偏离原来的方向,形成一条主裂纹而趋向于转变到垂直于加载方向的平面(最大拉应力面)内扩展。

雨流计数法matlab程度源代码

雨流计数法matlab程度源代码

% RAINFLOW cycle counting.% RAINFLOW counting function allows you to extract% cycle from random loading.%% SYNTAX% rf = RAINFLOW(ext)% rf = RAINFLOW(ext, dt)% rf = RAINFLOW(ext, extt)%% OUTPUT% rf - rainflow cycles: matrix 3xn or 5xn dependend on input,% rf(1,:) Cycles amplitude,% rf(2,:) Cycles mean value,% rf(3,:) Number of cycles (0.5 or 1.0),% rf(4,:) Begining time (when input includes dt or extt data),% rf(5,:) Cycle period (when input includes dt or extt data),%% INPUT% ext - signal points, vector nx1, ONLY TURNING POINTS!,% dt - sampling time, positive number, when the turning points% spaced equally,% extt - signal time, vector nx1, exact time of occurrence of turning points. %%% See also SIG2EXT, RFHIST, RFMATRIX, RFPDF3D.% RAINFLOW% Copyright (c) 1999-2002 by Adam Nieslony,% MEX function.function rfdemo1(ext)% function rfdemo1(ext)%% RFDEMO1 shows cycles extracted from signal% using rainflow algoritm.%% INPUT: ext - option, number or vectors with turning% points or time history. Default ext=16.%% OUTPUT: no enable.%% SYNTAX:% >>rfdemo1% >>rfdemo1(10)% >>rfdemo1([2 3 2 4 2 5 1 6])%% By Adam Nies硂ny% Revised, 10-Nov-2009% Visit the MATLAB Central File Exchange for latest version.error(nargchk(0,2,nargin))if nargin==0,% turning points from 16 random numbersext=sig2ext(randn(4));elseif length(ext(:))==1,% turning points from n random numbersext=sig2ext(randn(1,ext));else% turning points from vector extext=sig2ext(ext);enda=rainflow(ext,1);[m n]=size(a);% if n>100,% button = questdlg(['Rainflow found ' num2str(sum(a(3,:))) ' cycles! Do you want to continue?'],...% 'Continue Operation','Yes','No','No');% if strcmp(button,'No')% error('Function aborted by user.')% end% endcol='ymcrgb';plot(0:length(ext)-1,ext,'k.:')hold onwyk=0:0.05:1;for c=1:n,colnr=rem(c-1,6)+1;nr1=round(a(4,c)+1);nr2=round(a(4,c)+1+a(5,c)*a(3,c));if a(3,c)==1.0,if ext(nr1)<ext(nr1+1),plot(wyk.*a(5,c)+a(4,c),cos(pi+wyk.*2*pi)*a(1,c)+a(2,c),col(colnr))text(a(4,c),a(2,c)-a(1,c),[int2str(c) '. Cycle, up'],...'Color',col(colnr),'VerticalAlignment','top')elseplot(wyk.*a(5,c)+a(4,c),cos( wyk.*2*pi)*a(1,c)+a(2,c),col(colnr))text(a(4,c),a(2,c)+a(1,c),[int2str(c) '. Cycle, down'],...'Color',col(colnr),'VerticalAlignment','bottom')endelseif ext(nr1)>ext(nr2),plot(wyk.*a(5,c)*0.5+a(4,c),cos( wyk.*pi)*a(1,c)+a(2,c),col(colnr))text(a(4,c),a(2,c)+a(1,c),[int2str(c) '. Half-cycle, down'],...'Color',col(colnr),'VerticalAlignment','bottom')elseplot(wyk.*a(5,c)*0.5+a(4,c),cos(pi+wyk.*pi)*a(1,c)+a(2,c),col(colnr))text(a(4,c),a(2,c)-a(1,c),[int2str(c) '. Half-cycle, up'],...'Color',col(colnr),'VerticalAlignment','top')endendendxlabel('peaks, counted from 0')ylabel('value')title('Rainflow cycles extracted from signal')legend('peaks from signal',0)hold offdisp('Row 1: amplitude')disp('Row 2: mean')disp('Row 3: number of cycles (cycle or half cycle)')disp('Row 4: begin time of extracted cycle or half cycle')disp('Row 5: period of a cycle')disp(a)。

matlab实验报告随机模拟和统计分析

matlab实验报告随机模拟和统计分析
程序:
function[t,w]=brwnm(t0,t1,h)
t=[t0:h:t1]
x=randn(length(t),2)*sqrt(h);
w(1,1)=0;w(1,2)=0;
fork=1:length(t)-1
w(k+1,1)=w(k,1)+x(k,1);
w(k+1,2)=w(k,2)+x(k,2);
function [t,w]=brwnm(t0,tf,h)
t=t0:h:tf;
x=randn(size(t))*sqrt(h);
w(1)=0;
for k=1:length(t)-1,
w(k+1)=w(k)+x(k);
end
(1)若w1(t), w2(t)都是一维布朗运动且相互独立,那么(w1(t), w2(t))是一个二维布朗பைடு நூலகம்动。试给出二维布朗运动模拟作图程序。
end
clear;[t w1]=brwnm(1,1000,1);
[t w2]=brwnm(1,1000,1);
Corrcoef(w1,w2);
plot(w1,w2)
程序输出的结果:
对实验题目的解答:
这就是二维布朗运动模拟作图程序
改进程序或思考:
明白了要先把函数写成m文件然后再运行程序;
实验总结:通过上述两个实验,我了解并掌握了Matlab软件中有关求数据统计和随机变量分布的指令,并学会了应用编程进行计算机模拟随机现象,从而对一些数学概念,诸如正态分布和随机现象有了更好的理解;
改进程序或思考:
第2题:题目:
(brown运动)brown运动是英国植物学家在观察液体中浮游微粒的运动发现的随机现象,现在已成为随机过程理论最重要的概念之一。下列M函数brwnm.m给出了一维布朗运动(或称维纳过程),使用格式

对“雨流计数法”介绍

对“雨流计数法”介绍

雨流计数法简介0、前言 机械的疲劳失效是机械失效的主要失效方式,因此对机械失效的主要研究是机械疲劳失效是机械疲劳失效. . . 目前目前目前, , , 机械疲劳失效的研究有两个方面机械疲劳失效的研究有两个方面机械疲劳失效的研究有两个方面: : : 一是根据求出的载一是根据求出的载荷谱来确定加载程序在试验室或者试验台上对机械进行疲劳试验, , 得出机械得出机械得出机械((材料)在该工况下的实际寿命在该工况下的实际寿命; ; ; 二是根据机械二是根据机械二是根据机械((材料材料))的特性与载荷谱并且用的特性与载荷谱并且用Miner Miner 准则来估计机械的疲劳寿命准则来估计机械的疲劳寿命. . . 无论是做疲劳试验还是估计疲劳寿命无论是做疲劳试验还是估计疲劳寿命无论是做疲劳试验还是估计疲劳寿命, , , 载荷谱的载荷谱的统计都是问题的关键[1]。

1、雨流计数法简介雨流计数法又可称为“塔顶法”,是由英国的是由英国的Matsuiski Matsuiski Matsuiski和和Endo Endo 两位工程师两位工程师提出的提出的, , , 距今已有距今已有距今已有50 50 50 多年。

雨流计数法主要用于工程界多年。

雨流计数法主要用于工程界多年。

雨流计数法主要用于工程界, , , 特别在疲劳寿命计算特别在疲劳寿命计算中运用非常广泛。

由来请参看图中运用非常广泛。

由来请参看图1, 1, 1, 把应变把应变把应变--时间历程数据记录转过时间历程数据记录转过909090°°,时间坐标轴竖直向下标轴竖直向下, , , 数据记录犹如一系列屋面数据记录犹如一系列屋面数据记录犹如一系列屋面, , , 雨水顺着屋面往下流雨水顺着屋面往下流雨水顺着屋面往下流, , , 故称为雨流故称为雨流计数法[2]。

雨流计数法的基本原理[3]如图如图11所示所示, , , 第一个雨流自第一个雨流自第一个雨流自00点处第一个谷的内侧流下侧流下, , , 从从1点落点落11’后流至后流至5, 5, 5, 然后下落。

雨流法课设报告

课程设计题目:雨流计数法的编程及界面设计院系:轨道交通学院专业:车辆工程班级:车辆〔卓越〕2011-1小组成员:李永强、彭延忠廖希、张翼时间:摘要雨流计数法〔又叫塔顶法〕,是由英国的Matsuiski和 Endo两位工程师提出的,是目前在疲劳设计和疲劳试验中用的最广泛的一种计数方法,是变程计数法的一种。

雨流计数法如果计及平均值和变程对——均值法得到的计数结果完全相同。

雨流计数法与变程对——均值计数法一样具有比较严格的力学基础,计数结果介于峰值法和变程法之间,提供比较符合实际的数据。

雨流法是建立在对封闭的应力——应变迟滞回线逐个计数的基础上,因此,该方法能够比较全面的反映随机载荷的全过程。

由载荷——时间历程得到的应力——应变迟滞回线与造成的疲劳损伤是等效的,因此,工程界认为雨流法反映了材料的应力——应变行为。

而对于雨流计数法的处理方法,由于手工计算只能处理一些相比照较简单的数据,对于比较复杂的数据无法处理,因此要用电脑实现雨流计数法的编程。

本文利用MATLAB编程技术及图形界面设计,以实现数据的简单化处理。

关键词:雨流计数法疲劳编程界面目录一.概念 (4)二.设计思路 (5)1.数据压缩 (5)2.循环数提取 (6)三.设计所用软件 (7)软件 (7)2.Microsoft Visio编流程图软件 (9)软件 (10)四.设计内容 (10)1.程序设计 (10)2.界面设计 (12)五.设计结果 (12)六.结论 (13)参考文献 (14)附录 (15)雨流计数法的编程及界面设计一.概念最早的雨流计数原则出现在“图形法”的应用中。

从外表看上去好象雨流从载荷的峰谷处流下一样 ,凡起始于波谷(峰 )的雨流遇到比它更低的谷(峰 )值便停止 ,即上一段雨流被下一段雨流“截断”而形成一个全循环,这个原则也正是“雨流计数法”命名的由来。

如图 1,把应变-时间历程数据记录转过90° ,时间坐标轴竖直向下 ,数据记录犹如一系列屋面 ,雨水顺着屋面往下流 ,这种方法就称为雨流计数法。

matlab雨流计数法简单讲解

在工程中,特别是机械结构、航空航天等领域,在对应力、载荷进行疲劳分析时,雨流计数法是一种常用的方法。

这种方法可以有效地对载荷数据进行处理,得到疲劳载荷的循环次数,从而进行疲劳寿命的预测。

1. 什么是雨流计数法?雨流计数法是一种用来对载荷数据进行疲劳分析的方法。

它可以将连续的载荷数据序列转换为一系列载荷循环,然后对这些循环进行统计分析。

通过这种方法,我们可以得到载荷循环的幅值和次数,从而可以进一步进行疲劳寿命的预测和分析。

2. 雨流计数法的基本原理雨流计数法的基本原理是将载荷数据序列分解成一系列循环载荷,然后对这些循环进行统计。

在实际应用中,通常使用峰谷识别法来检测载荷数据中的峰值和谷值,然后根据这些峰值和谷值来进行载荷循环的划分。

可以根据载荷循环的幅值和次数进行统计分析,得到疲劳载荷的循环次数。

3. 雨流计数法的优点和局限性雨流计数法的优点在于可以较为准确地对载荷数据进行处理,得到疲劳载荷的循环次数,从而进行疲劳寿命的预测。

但是,这种方法也存在一定的局限性,例如在处理复杂载荷时,可能会出现较大的误差,需要进行一定的修正和优化。

4. 我对雨流计数法的个人观点和理解在我看来,雨流计数法是一种简单而有效的方法,在工程实践中具有广泛的应用前景。

通过对载荷数据进行分解和统计,我们可以更好地理解载荷对结构疲劳寿命的影响,从而有针对性地进行疲劳设计和分析。

但是,在实际应用中,我们也需要注意方法的局限性,结合具体情况进行合理的选择和修正。

总结回顾:通过本文的讲解,我们了解了雨流计数法的基本原理和应用。

这种方法可以帮助我们对载荷数据进行处理,得到疲劳载荷的循环次数,从而进行疲劳寿命的预测和分析。

在工程实践中,雨流计数法具有重要的意义,但同时也需要注意其局限性,进行合理的修正和优化。

希望通过本文的讲解,读者对雨流计数法有了更深入的了解。

在此,我为您撰写了一篇有关“matlab雨流计数法简单讲解”的文章,希望能够对您有所帮助。

随机载荷模拟及雨流计数方法在matlab中的实现

近日来的工作一、仿真随机过程sw=2;A=sqrt(2*sw*detaw)(1)中心频率为10pi,detaw=0.01,带宽为2pi的低频窄带随机过程for n=9:0.01:11;xn=A*sin(n*pi*t+rand(1,1)*2*pi);x=x+xn;end(2)中心频率为100pi,detaw=0.01,带宽为2pi的高频窄带随机过程for n=99:0.01:101;yn=A*sin(n*pi*t+rand(1,1)*2*pi);y=y+yn;end(3)低频与高频组合成的宽带随机过程二、用雨流计数法截取循环(1)得到随机过程x的极点值(储存在矩阵S中)。

n=length(x);s=x(1);for i=2:n-1;if (x(i)>x(i-1))&&(x(i)>x(i+1))||((x(i)<x(i-1))&&(x(i)<x(i+1))); s=[s,x(i)];endendS=[s,x(n)];(2)对极值点间变程进行比较分析,截取循环while i+3<length(S)i=i+1;detaS1=abs(S(i+1)-S(i)); %获得四个极值点间的三段变程detaS2=abs(S(i+2)-S(i+1));detaS3=abs(S(i+3)-S(i+2));if (detaS2<=detaS1)&&(detaS2<=detaS3) %将变程满足截取条件的循环截取出 Ba=[Ba,(S(i+2)-S(i+1))/2]; %截取出循环的幅值Bm=[Bm,(S(i+2)+S(i+1))/2]; %截取出循环的均值Q=[Q;S(i+1),S(i+2)]; %构成截取出循环的极值点存于Q中,即原随机过程抛弃的点S(i+1)=[];S(i+2)=[];i=i-1;endendSr=S; %剩余的极值点存于Sr中(3)分别对低频窄带、高频窄带、宽带进行雨流处理低频窄带高频窄带宽带问题二:由于观察到用雨流法处理这三种随机过程的效果差别比较大,就编程统计计算了雨流处理这三种随机过程抛弃的极值点数(即截取的循环)与原载荷极值点数之比rate。

雨流计数法在结构疲劳损伤计算中的应用

雨流计数法在结构疲劳损伤计算中的应用作者:李彬来源:《科技视界》2015年第16期【摘要】本文针对结构疲劳损伤问题,采用雨流计数法原理运用Matlab编程工具,研究了三点雨流计数法在早结构疲劳损伤计算中的应用,编写了具体实现程序。

采用Goodman曲线得到泵车臂架的二维载荷谱,结合材料的S-N曲线与Palmgren-Miner线性累积损伤理论计算结构的疲劳损伤,可为结构的健康监测和优化设计提供依据。

【关键词】雨流计数;S-N曲线;二维载荷谱;疲劳损伤0 引言大型机械设备拥有更高的施工效率,能够适应巨型建筑施工的需要,可为施工企业创造更高的经济效益,倍受市场青睐。

然而,大型设备成本高,所受工作载荷大,载荷状态也更加复杂,一旦发生断裂失效事故将造成巨大的经济损失以及人员伤亡,因此对结构件的疲劳损伤进行计算,并对其实施健康监测显得尤为重要。

在结构的断裂事故中,疲劳断裂是最主要最危险的原因之一。

所以,本文选用结构的疲劳损伤大小作为对结构健康状态进行监测的主要参数。

在工程实际中,结构的工作载荷是随着设备的工作状况与使用环境的变化而变化的,是随机载荷。

随机载荷是一种不规则的动载荷、是随时间变化的载荷,在进行疲劳损伤分析时只能使用统计分析方法进行计算。

由于载荷幅值和载荷循环次数是使结构件产生疲劳损伤的主要原因,所以常用计数法进行计算。

计数法的种类很多,如峰值计数、雨流计数等,对于同一工况和载荷运用不同的计数方法,得到的计算结果差别可能很大。

雨流计数是根据材料的应力-应变行为进行的,它得到的载荷循环和材料的应力-应变迟滞回线相一致[1],该方法能够准确地反映材料的疲劳损伤。

相对其它计数方法,雨流计数法更为精确,因此被广泛运用。

1 雨流计数法的基本原理[2-3]雨流计数法又被称为“塔顶法”在疲劳寿命计算中应用非常广泛。

该方法由英国的Matsuiski 和Endo两位工程师提出,他们认为材料塑性的存在是疲劳损伤的必要条件,并且应力-应变循环的滞回线(如图1)是塑性性质表现的主要形式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

近日来的工作
一、仿真随机过程
sw=2;
A=sqrt(2*sw*detaw)
(1)中心频率为10pi,detaw=0.01,带宽为2pi的低频窄带随机过程for n=9:0.01:11;
xn=A*sin(n*pi*t+rand(1,1)*2*pi);
x=x+xn;
end
(2)中心频率为100pi,detaw=0.01,带宽为2pi的高频窄带随机过程for n=99:0.01:101;
yn=A*sin(n*pi*t+rand(1,1)*2*pi);
y=y+yn;
end
(3)低频与高频组合成的宽带随机过程
二、用雨流计数法截取循环
(1)得到随机过程x的极点值(储存在矩阵S中)。

n=length(x);
s=x(1);
for i=2:n-1;
if (x(i)>x(i-1))&&(x(i)>x(i+1))||((x(i)<x(i-1))&&(x(i)<x(i+1))); s=[s,x(i)];
end
end
S=[s,x(n)];
(2)对极值点间变程进行比较分析,截取循环
while i+3<length(S)
i=i+1;
detaS1=abs(S(i+1)-S(i)); %获得四个极值点间的三段变程
detaS2=abs(S(i+2)-S(i+1));
detaS3=abs(S(i+3)-S(i+2));
if (detaS2<=detaS1)&&(detaS2<=detaS3) %将变程满足截取条件的循环截取出 Ba=[Ba,(S(i+2)-S(i+1))/2]; %截取出循环的幅值
Bm=[Bm,(S(i+2)+S(i+1))/2]; %截取出循环的均值
Q=[Q;S(i+1),S(i+2)]; %构成截取出循环的极值点存于Q中,即原随机过程抛弃的点
S(i+1)=[];
S(i+2)=[];
i=i-1;
end
end
Sr=S; %剩余的极值点存于Sr中
(3)分别对低频窄带、高频窄带、宽带进行雨流处理
低频窄带
高频窄带
宽带
问题二:由于观察到用雨流法处理这三种随机过程的效果差别比较大,就编程统计计算了雨流处理这三种随机过程抛弃的极值点数(即截取的循环)与原载荷极值点数之比rate。

因为我理解为rate越大,雨流处理效果越好(不知道对不对?)得到的统计结果如下:
首先,每种随机过程都对一个信号雨流处理的结果比较
其次,每种随机过程都对很多个信号雨流处理的统计结果(对100组信号进行统计):
rate
低频窄带随机过程0.0814
频窄带随机过程0.3006
组合宽带随机过程0.3178
这样看的话这种雨流计数法对这三种随机过程的适用性:宽带>高频窄带>低频窄带(自己这么想的,不知是否行的通)
三、对剩余载荷的处理
re=[ZSr,ZSr];
[reside,Ba,Bm,Q]=Rainflow(re);
四、载荷的重构(将循环插入剩余载荷中)
(1)筛选出要插入循环Q中高于门槛值threshold的循环存于S中
[c,r]=size(Q);
S=[];
Abs=[];
for i=1:c
if abs(Q(i,2)-Q(i,1))>threshold
S=[S;Q(i,1),Q(i,2)];
Abs=[Abs,abs(Q(i,2)-Q(i,1))];
end
end
(2)对S中循环按幅值大小降序排列
[Abs,index]=sort(Abs);
index=fliplr(index);
k1=S(:,1);S(:,1)=k1(index);
k2=S(:,2);S(:,2)=k2(index);
(3)按幅值由大到小插入载荷序列中(这部分编出来程序运行没有问题,但结果显示似乎并没有插进去,还在寻找问题中…)
[c,r]=size(S);
no1=[];no2=[];
while m<=c
if S(m,1)<S(m,2) %对于第m个循环
n=length(reside);
rde=[];indexrde=[];
for i=1:n-1
if(reside(i)>=S(m,2))&&(reside(i+1)<=S(m,1)) %筛选出第m
个循环能够插入的序列
rde=[rde;reside(i),reside(i+1)];
indexrde=[indexrde;i,i+1];
end
end
[k,g]=size(rde);
if k==0
m=m+1;
else
chu=randi(k,1,1); %在所有能够插入的序列中随机选取一个插入
p=indexrde(chu,1);
reside=[reside(1:p),S(m,1),S(m,2),reside(p+1:length(reside))]; m=m+1;
end
else
n=length(reside);
rin=[];indexrin=[];
for i=1:n-1
if (reside(i)<=S(m,2))&&(reside(i+1)>=S(m,1))
rin=[rin;reside(i),reside(i+1)];
indexrin=[indexrin;i,i+1];
end
end
[k,g]=size(rin);
if k==0
m=m+1;
else
chu=randi(k,1,1);
p=indexrin(chu,1);
reside=[reside(1:p),S(m,1),S(m,2),reside(p+1:length(reside))]; m=m+1;
end
end
end
问题四:这种以逆雨流法重构载荷的意义就在于去除一些不必要的载荷吗?。

相关文档
最新文档