How to Calculate the 1% value of using gevfit

4 views (last 30 days)
James
James on 14 Oct 2021
Edited: Star Strider on 15 Oct 2021
I am by no means a statistician, so please bear with me.
I have been asked by a reviewer of one of my projects to use a GEV distribution to determine the annual 1-percent chance value for wave runup. My dataset consists of a maxima for each year of 50 years-worth of wave run-up for the area of concern. I have used gevfit to determine a GEV distribution for the dataset. What I cannot figure out is how to determine the upper 1% of that distribution. What function will tell me what the 1% value is?
Appreciate the help.

Answers (1)

Star Strider
Star Strider on 14 Oct 2021
Edited: Star Strider on 15 Oct 2021
The gevinv funciton will likely do what you want, given the parameters.
Copying from the image —
X = gevinv([0.01 0.99], -0.2722, 1.2475, 17.3216)
X = 1×2
14.9594 20.5944
This produces values for 1% and 99%.
Do those values appear reasonable? Given the histogram, they appear to be appropriate.
EDIT — (15 Oct 2021 at 1:58)
Added plot —
Xv = linspace(X(1)-1, X(2)+1);
P = gevpdf(Xv, -0.2722, 1.2475, 17.3216);
figure
plot(Xv, P)
hold on
patch([Xv(Xv<=X(1)) fliplr(Xv(Xv<=X(1)))], [P(Xv<=X(1)) zeros(size(Xv(Xv<=X(1))))], 'g', 'EdgeColor','none', 'FaceAlpha',0.5)
patch([Xv(Xv>=X(2)) fliplr(Xv(Xv>=X(2)))], [P(Xv>=X(2)) zeros(size(Xv(Xv>=X(2))))], 'g', 'EdgeColor','none', 'FaceAlpha',0.5)
hold off
grid
ylim([0 0.4])
xlabel('X')
ylabel('Probability')
legend('Probability Density Distribution Curve', 'Upper & Lower 1%', 'Location','best')
.

Categories

Find more on Predictive Maintenance Toolbox in Help Center and File Exchange

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!