How to use fitdist or gevfit and force the GEV distribution to a specific type (Type I)

15 views (last 30 days)
I am using annual maxima wind speed data and am trying to model the distribution using GEV Type 1. When I use either fitdist() with 'GeneralizedExtremeValue' or gevfit(), I get a negative k value for my data, but I want to fit the distributing using k = 0 for GEV Type 1. Is it possible to specify the GEV Type or to force k to 0 using either of these functions?
Some sample code is here:
pd_wind_annualmax_GEV = fitdist(WNDSPD_hub_annualmax, 'GeneralizedExtremeValue'); %WNDSPD_hub_annualmax contains 35 years of annual max wind speeds
pd_wind_annualmax_GEV_v2 = gevfit(WNDSPD_hub_annualmax)
These yield the same result but I tried both to see if it is possible to force k to 0 for Type 1 with one of the functions.
The first line yields:
Generalized Extreme Value distribution
k = -0.0646859 [-0.209939, 0.0805676]
sigma = 2.65585 [2.08858, 3.3772]
mu = 31.2358 [30.2828, 32.1888]
The second line yields:
-0.0647 2.6559 31.2358
Thank you for your help!

Accepted Answer

Jeff Miller
Jeff Miller on 10 Sep 2020
I think you want the extreme value type I or Gumbel distribution, which MATLAB seems to call the "ExtremeValue" distribution. So, the command would simply be:
pd_wind_annualmax_GEV = fitdist(WNDSPD_hub_annualmax, 'ExtremeValue');
  1 Comment
Roan A. Gideon
Roan A. Gideon on 13 Sep 2020
Thank you for your help with this, I hadn't realized that there is a separate distribution type for the Gumbel/GEV Type 1. This works!

Sign in to comment.

More Answers (0)

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!