Professional Documents
Culture Documents
simxpert
2014-7-21
Email :smxpert@sina.com
QQ:
......................................................................................................................... 1
. .................................................................................. 1
2.1 .................................................................................. 1
2.2......................................................... 2
2.3.4 ............................................................. 3
2.3.1 ....................................................................................................... 3
2.3.2 4 ....................................................... 4
2.4 .................................................................................... 5
2.5 ...................................................................... 5
2.6 ................................................................................................... 5
C# .............................................................................................. 5
1.MR ............................................................................................................. 6
2.1 ....................................................................................................... 7
2.2 ....................................................................................................... 7
C# Matlab .............................................. 8
3.1 Matlab ....................................................................................... 8
..................................................................................................................... 9
4 ....................................................................... 11
1.C#.............................................................................. 15
Email :smxpert@sina.com
QQ:
II
ASTM E1049-85 C#
ASTM E1049-85
C# Matlab
Matlab
C#
C# matlab
.
()
2.1
matlab 10000
Email:smxpert@sina.com QQ:
2.2
1
()
1.
2 a->b->c->d
b,c d->e->f e
a,d,f,g
3
2.
3.
Email:smxpert@sina.com QQ:
2.3.4
2.3.1
4 3
->-> ->->
3. 4
1).
4
4 4.
4.
4
5.
a) d b d>=b
b) c a c>=a
Email:smxpert@sina.com QQ:
4 2,3,4
2d b a);
3c a b)
4c d a) b)
(d b)c a
2)
6.
a) d b d<=b
b) c a c<=a
(d b)c a
2.3.2 4
2.3.1 4
4
1 4 n1,n2,n3,n4
1) n1,n2,n3,n4 (n2+n3)/2,
abs(n3-n2)/2 n2,n3 n1
n1,n4,n5,n6
2) n1,n2,n3,n4 n2
n2,n3,n4,n5
1) 4
Email:smxpert@sina.com QQ:
2)
ASTM 1),2) 2)
2.4
N G1,G2,GN
(G1, G2),( G2, G3),,( Gi , Gi+1),.,( GN-1, GN)
(Gi +Gi+1)/2 abs( Gi -Gi+1)/2
0.5
2.5
2.6
Nx3
M1 A1 n1
M2 A2 n2
.
Mi Ai ni
..
MN AN nN
(Mi ,Ai ,ni )(Mean) Mi ,(Amplitude) Ai ,
ni (ni 0.5
0.5,1,1.5,2,2.5)Range
Range Amplitude 2
C#
C# MR RFCout
MR RFCount
Email:smxpert@sina.com QQ:
1.MR
MR
M Mean valueR () Range
Range Amplitude
MR 3 ,sMean,sRange,fCount
public class
MR
{
public
double sMean;
double fCount;
Count)
{
sMean = Mean;
sRange = range;
fCount = Count;
}
}
2.RFCount
RFCount
public class RFCount
{
public LinkedList<double> m_data; //store the peak and valley points;
public LinkedList<MR> m_result; //store the calculated stress cyles;
public static double TOL = 1.0e-6;
WriteResultToFile(string strFileName)
Email:smxpert@sina.com QQ:
2.1
RFCount:
public LinkedList<double> m_data;
public LinkedList<MR> m_result;
public static double TOL = 1.0e-6;
LinkedList
m_data
double
m_result
MR
TOL:1.0e-6
2.2
public void GetDataFromArray(double[] array)
public void GetDataFromTextFile(string strFileName)
GetDataFromArray()
GetDataFromTextFile()
public void GetPVPoints()
protected bool ScanForCyle()
public void SearchCyle()
public void FindHalfCyle()
public void CycleCombine(double EPS)
ScanForCycle()
C# Matlab
matlabC#
C#1
3.1 Matlab
Matlab
clc
clear all
lengths=20;
s=10*randn(lengths,1)+rand(lengths,1);//
s=round(s);//
save data.txt s ascii //C#
% or load the signal from file --> s=my_signal;
tp=sig2ext(s); //
rf=rainflow(tp); //Matlab
rf(1,:)=rf(1,:).*2 //2rangeC#
tp=tp' //
Email:smxpert@sina.com QQ:
1
tp:15
rf:matlab
Matlabrfrange
;
Matlab
C#
C#matlabrange
Email:smxpert@sina.com QQ:
2
Matlab
C#
Email:smxpert@sina.com QQ:
10
4
134
1
-15
2
7
3
-18
4
6
5
-7
6
14
7
-5
8 9
10 -8
10
8
11
-2
12
17
13
7
4
Step1: 14114
(1,2,3,4)4
42
Step2: 24(2,3,4,5)
3
Step3: 34(3,4,5,6),
(4,5)Range=abs(5-4
)=13M=(6+(-7))/2=-0.5Count=1
RMC=(13,-0.5,1)
4,5344,5
(3,6,7,8)3(4,5
)6
Step4:64(6,7,8,9)
Range=abs(7-8)=abs(-5-10)=15;M=(7+8)/2=(-5+10)/2=2.5,
Count=1RMC=(15,2.5,1);
Email:smxpert@sina.com QQ:
11
7,864(6,9,10,11)
69.
Step5:94(9,10,11,12)
Range=abs(8-(-2))=10;M=(8+(-2))/2=3Count=1RMC= (10,3,1)
10,11944
(4,5)(7,8)(10,11)(4,5)
3,61,2,3,6,9,12,13(
)
Step6:414(1,2,3,6)
(1,2,3,6)2
Step7:24(2,3,6,9),(2,3,6,9)
3.
Step8:34(3,6,9,12)(3,6,9,12)
(6,9)Range=abs(6-9)=abs(14-(-8))=22;M=(6+
8)/2=(14+(-8))/2=31RMC=(22,3,1)
(6,9)343,12,133
4
81,2,3,12,13(
6,93,12)
Email:smxpert@sina.com QQ:
12
Step9: 5414(1,2,3,12)
2.
Step10:24(2,3,12,13)
4
Step11:(1,2,3,12,13)
(1,2)Range=abs(-15-7)=22;Mean=(-15+7)/2=-4,
Count=0.5;RMC=(22,-4,0.5)
(2,3):Range=abs(7-(-18))=25;Mean=((7-18)/2=-5.5,count=0.5
RMC=(25,-5.5,0.5);
(3,12):Range=abs(-18-17)=35;Mean=(-18+17)/2=-0.5;count=0.5;
RMC=(35,-0.5,0.5)
(12,13):Range=abs(17-7)=10;Mean=(17+7)/2=12;count=0.5;
RMC=(10,12,0.5);
Step12:
step
Email:smxpert@sina.com QQ:
13
(13,-0.5,1)
(15,2.5,1);
(10,3,1)
(22,3,1)
(22,-4,0.5)
(25,-5.5,0.5);
(35,-0.5,0.5)
(10,12,0.5);
C#
Matlab
C#Matlab
Email:smxpert@sina.com QQ:
14
1.C#
class Program
{
static void Main(string[] args)
{
RFCount rf;
rf = new RFCount();
//
rf.GetDataFromTextFile(@"E:\VS_JOB\TestRF\rainflow\data.txt");
rf.GetPVPoints();//
//
Console.WriteLine("The peak valley data points:");
foreach (double e in rf.m_data)
{
Console.Write(e);
Console.Write("
");
}
Console.WriteLine();
Console.WriteLine("Rain flow count results:");
Console.WriteLine("stress range
mean sress
counts");
rf.SearchCyle();//4
rf.FindHalfCyle();//
rf.CycleCombine(0.01);//
//
foreach (MR mr in rf.m_result)
{
Console.Write("
"); Console.Write(mr.sRange);
Console.Write("
"); Console.Write(mr.sMean);
Console.Write("
"); Console.Write(mr.fCount);
Console.WriteLine();
}
Console.Read();
}
}
Email:smxpert@sina.com QQ:
15