binwidth is not working

6 views (last 30 days)
Mohamed Zied
Mohamed Zied on 2 Jan 2023
Commented: Mohamed Zied on 4 Jan 2023
Hi;
%statistical parameters
STD_Strain = 25;
Mean_strain = 150;
AN=1000;
Stress = 210000*(STD_Strain.*randn(AN,1) + Mean_strain)*10^-6;
%Stress range-rainflow counting
[c,hist,edges,rmm,idx]=rainflow(Stress)
BinWidth=2;
h=histogram('BinEdges',edges','BinCounts',sum(hist,2))
xlabel('Stress Range')
ylabel('Cycle Counts')
The target of this code is to conduct fatigue analysis.
I tried by many ways to specify the bin width. Still, the result is always bin width = 3.
h =
Histogram with properties:
Data: []
Values: [64 54.5000 67 47.5000 36 27 19 6.5000 5 1 1.5000]
NumBins: 11
BinEdges: [0 3 6 9 12 15 18 21 24 27 30 33]
BinWidth: 3
BinLimits: [0 33]
Normalization: 'count'
FaceColor: 'auto'
EdgeColor: [0 0 0]
What is wrong with my code?
Thank you in advance
  3 Comments
Voss
Voss on 4 Jan 2023
My mistake. Thanks for pointing that out.

Sign in to comment.

Answers (1)

Rik
Rik on 2 Jan 2023
Edited: Rik on 3 Jan 2023
You're just creating a variable. You do not use that variable as an input argument, or to modify the histogram object after you create it. How is Matlab supposed to know you meant that?
edit:
Below are the two possible ways you can change the code. However, neither will work, because you manually set the bin counts.
%statistical parameters
STD_Strain = 25;
Mean_strain = 150;
AN=1000;
Stress = 210000*(STD_Strain.*randn(AN,1) + Mean_strain)*10^-6;
%Stress range-rainflow counting
[c,hist,edges,rmm,idx]=rainflow(Stress);
BinWidth=2;
h=histogram('BinEdges',edges','BinCounts',sum(hist,2));
xlabel('Stress Range')
ylabel('Cycle Counts')
if false
% option 1:
h.BinWidth=BinWidth;
% option 2:
h=histogram('BinEdges',edges','BinCounts',sum(hist,2),'BinWidth',BinWidth);
end
  3 Comments
Mohamed Zied
Mohamed Zied on 4 Jan 2023
thank you for you answer.
actually, I am preparing a code to conduct a fatigue analysis based on monitoring. That's why, I generated monitored strain data using the randn function just to verify the code. Later on my research, I intend to conduct monitoring on a real bridge.
I want to control the bin width (stress range) to easily use Miner's rule later.

Sign in to comment.

Categories

Find more on Vibration Analysis in Help Center and File Exchange

Tags

Products


Release

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!