API wind spectrum

Discuss the effects of turbulence on wind turbines and its simulation.

Moderator: Bonnie.Jonkman

Mhanis.Kamaruddin
Posts: 6
Joined: Tue Nov 05, 2019 9:50 pm
Organization: Harbin Engineering University
Location: Harbin, China Mainland

Re: API wind spectrum

Postby Mhanis.Kamaruddin » Thu Dec 05, 2019 7:49 pm

Dear Dr. Jason,

Noted on the IECturb value and WindProfileType. However, since the API Turbulence model is selected, the RefHt cannot be set to 90 metres because the same warning regarding the RefHt=10 m is required. I try to put any values (80m, 50m and 4m), but still it required to be RefHt=10.
TS_ValidateInput:API model requires a 10-m reference height. Set RefHt = 10.


Besides, even when I set the RefHt = 10 m, TurbSim will be abort due to
Error in Cholesky factorization
.

Maybe you can try/check the given code, and hopefully we can solve this issue.

---------TurbSim v2.00.* Input File------------------------
Example input file for TurbSim.
---------Runtime Options-----------------------------------
False Echo - Echo input data to <RootName>.ech (flag)
1342858 RandSeed1 - First random seed (-2147483648 to 2147483647)
"Ranlux" RandSeed2 - Second random seed (-2147483648 to 2147483647) for intrinsic pRNG, or an alternative pRNG: "RanLux" or "RNSNLW"
False WrBHHTP - Output hub-height turbulence parameters in binary form? (Generates RootName.bin)
False WrFHHTP - Output hub-height turbulence parameters in formatted form? (Generates RootName.dat)
False WrADHH - Output hub-height time-series data in AeroDyn form? (Generates RootName.hh)
True WrADFF - Output full-field time-series data in TurbSim/AeroDyn form? (Generates RootName.bts)
False WrBLFF - Output full-field time-series data in BLADED/AeroDyn form? (Generates RootName.wnd)
False WrADTWR - Output tower time-series data? (Generates RootName.twr)
False WrFMTFF - Output full-field time-series data in formatted (readable) form? (Generates RootName.u, RootName.v, RootName.w)
False WrACT - Output coherent turbulence time steps in AeroDyn form? (Generates RootName.cts)
True Clockwise - Clockwise rotation looking downwind? (used only for full-field binary files - not necessary for AeroDyn)
0 ScaleIEC - Scale IEC turbulence models to exact target standard deviation? [0=no additional scaling; 1=use hub scale uniformly; 2=use individual scales]

--------Turbine/Model Specifications-----------------------
31 NumGrid_Z - Vertical grid-point matrix dimension
31 NumGrid_Y - Horizontal grid-point matrix dimension
0.05 TimeStep - Time step [seconds]
3600 AnalysisTime - Length of analysis time series [seconds] (program will add time if necessary: AnalysisTime = MAX(AnalysisTime, UsableTime+GridWidth/MeanHHWS) )
"ALL" UsableTime - Usable length of output time series [seconds] (program will add GridWidth/MeanHHWS seconds unless UsableTime is "ALL")
90 HubHt - Hub height [m] (should be > 0.5*GridHeight)
145.00 GridHeight - Grid height [m]
145.00 GridWidth - Grid width [m] (should be >= 2*(RotorRadius+ShaftLength))
0 VFlowAng - Vertical mean flow (uptilt) angle [degrees]
0 HFlowAng - Horizontal mean flow (skew) angle [degrees]

--------Meteorological Boundary Conditions-------------------
"API" TurbModel - Turbulence model ("IECKAI","IECVKM","GP_LLJ","NWTCUP","SMOOTH","WF_UPW","WF_07D","WF_14D","TIDAL","API","USRINP","TIMESR", or "NONE")
"unused" UserFile - Name of the file that contains inputs for user-defined spectra or time series inputs (used only for "USRINP" and "TIMESR" models)
"1-Ed3" IECstandard - Number of IEC 61400-x standard (x=1,2, or 3 with optional 61400-1 edition number (i.e. "1-Ed2") )
1.94 IECturbc - IEC turbulence characteristic ("A", "B", "C" or the turbulence intensity in percent) ("KHTEST" option with NWTCUP model, not used for other models)
"NTM" IEC_WindType - IEC turbulence type ("NTM"=normal, "xETM"=extreme turbulence, "xEWM1"=extreme 1-year wind, "xEWM50"=extreme 50-year wind, where x=wind turbine class 1, 2, or 3)
default ETMc - IEC Extreme Turbulence Model "c" parameter [m/s]
"API" WindProfileType - Velocity profile type ("LOG";"PL"=power law;"JET";"H2L"=Log law for TIDAL model;"API";"USR";"TS";"IEC"=PL on rotor disk, LOG elsewhere; or "default")
"unused" ProfileFile - Name of the file that contains input profiles for WindProfileType="USR" and/or TurbModel="USRVKM" [-]
90 RefHt - Height of the reference velocity (URef) [m]
19.611 URef - Mean (total) velocity at the reference height [m/s] (or "default" for JET velocity profile) [must be 1-hr mean for API model; otherwise is the mean over AnalysisTime seconds]
default ZJetMax - Jet height [m] (used only for JET velocity profile, valid 70-490 m)
0.0912 PLExp - Power law exponent [-] (or "default")
default Z0 - Surface roughness length [m] (or "default")

--------Non-IEC Meteorological Boundary Conditions------------
default Latitude - Site latitude [degrees] (or "default")
0.05 RICH_NO - Gradient Richardson number [-]
default UStar - Friction or shear velocity [m/s] (or "default")
default ZI - Mixing layer depth [m] (or "default")
default PC_UW - Hub mean u'w' Reynolds stress [m^2/s^2] (or "default" or "none")
default PC_UV - Hub mean u'v' Reynolds stress [m^2/s^2] (or "default" or "none")
default PC_VW - Hub mean v'w' Reynolds stress [m^2/s^2] (or "default" or "none")

--------Spatial Coherence Parameters----------------------------
default SCMod1 - u-component coherence model ("GENERAL", "IEC", "API", "NONE", or "default")
default SCMod2 - v-component coherence model ("GENERAL", "IEC", "NONE", or "default")
default SCMod3 - w-component coherence model ("GENERAL", "IEC", "NONE", or "default")
default InCDec1 - u-component coherence parameters for general or IEC models [-, m^-1] (e.g. "10.0 0.3e-3" in quotes) (or "default")
default InCDec2 - v-component coherence parameters for general or IEC models [-, m^-1] (e.g. "10.0 0.3e-3" in quotes) (or "default")
default InCDec3 - w-component coherence parameters for general or IEC models [-, m^-1] (e.g. "10.0 0.3e-3" in quotes) (or "default")
default CohExp - Coherence exponent for general model [-] (or "default")

--------Coherent Turbulence Scaling Parameters-------------------
"E:\TurbSim_v2.00.07\CertTest\EventData" CTEventPath - Name of the path where event data files are located
"Random" CTEventFile - Type of event files ("LES", "DNS", or "RANDOM")
true Randomize - Randomize the disturbance scale and locations? (true/false)
1.0 DistScl - Disturbance scale [-] (ratio of event dataset height to rotor disk). (Ignored when Randomize = true.)
0.5 CTLy - Fractional location of tower centerline from right [-] (looking downwind) to left side of the dataset. (Ignored when Randomize = true.)
0.5 CTLz - Fractional location of hub height from the bottom of the dataset. [-] (Ignored when Randomize = true.)
10.0 CTStartTime - Minimum start time for coherent structures in RootName.cts [seconds]

====================================================
! NOTE: Do not add or remove any lines in this file!
====================================================

Thanks and regards,
Hanis

Jason.Jonkman
Posts: 4969
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: API wind spectrum

Postby Jason.Jonkman » Fri Dec 06, 2019 12:38 pm

Dear Hanis,

As you can probably tell, I have little knowledge of the API spectrum and have not run it myself.

But looking at the TurbSim documentation, it is clear that--as you said--RefHt must be set to 10 m when using the API spectrum. I haven't looked at the source code, but I assume you could enable set WindProfileType = "PL" when TurbModel = "API". When using WindProfileType = "PL" with RefHt = 10 m, you'd have to reduce URef to be the wind speed at 10 m that would result in a hub-height (90-m) mean wind speed of 19.6 m/s, i.e.:

u(90) = 19.6 m/s = URef*( ( 90 m )/( 10 m) )^0.0912 --> URef = 16.04 m/s

Do those settings work?

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov

Mhanis.Kamaruddin
Posts: 6
Joined: Tue Nov 05, 2019 9:50 pm
Organization: Harbin Engineering University
Location: Harbin, China Mainland

Re: API wind spectrum

Postby Mhanis.Kamaruddin » Fri Dec 06, 2019 10:12 pm

Hi Dr. Jason,

I've tried to set the URef = 16.04 m/s and "PL" for WindProfileType, unfortunately, the TurbSim abort by giving the same previous warning
CalcFourierCoeffs:CalcFourierCoeffs_API:Error in Cholesky factorization
.

I managed to run another code by changing the Turbulence model to "IECKAI", and maintained the "API" WindProfileType. The results can be referred as following:

Turbulence Simulation Scaling Parameter Summary:

Turbulence model used = IEC Kaimal
Turbulence characteristic = User-specified
IEC standard = IEC 61400-1 Ed. 3: 2005
Mean wind speed at hub height = 19.611 m/s
Characteristic value of standard deviation = 1.942 m/s
Turbulence scale = 42.000 m
u-component integral scale = 340.200 m
Coherency scale = 340.200 m
Characteristic value of hub turbulence intensity = 9.904%
Gradient Richardson number = 0.000

Wind profile type = API
Equivalent power law exponent across rotor disk = 0.121
Mean shear across rotor disk = 0.033 (m/s)/m
Assumed rotor diameter = 140.000 m
Surface roughness length = 0.030 m

Nyquist frequency of turbulent wind field = 10.000 Hz

Number of time steps in the FFT = 72000
Number of time steps output = 72000
Number of points simulated = 961

Hub-Height Simulated Turbulence Statistical Summary:

Type of Wind Min (m/s) Mean (m/s) Max (m/s) Sigma (m/s) TI (%)
---------------- --------- ---------- --------- ----------- ------
Longitudinal (u) 12.18 19.61 26.45 1.873 9.548
Lateral (v) -6.21 0.00 5.77 1.536 7.830
Vertical (w) -4.19 0.00 3.89 0.945 4.821
U component 12.18 19.61 26.45 1.873 9.548
V component -6.21 0.00 5.77 1.536 7.830
W component -4.19 0.00 3.89 0.945 4.821
Horizontal (U&V) 12.21 19.67 26.46 1.869 9.501
Total 12.25 19.69 26.47 1.867 9.481

So, is this result can be considered as an API spectrum since we are using the API wind profile type, eventhough the turbulence model is referring to IEC? If not, then what is the recommendation step to run the "API" turbulence model, instead of TurbSim giving the same error due to Cholesky factorization.

Kindly advise.

Thanks and regards,
Hanis

Jason.Jonkman
Posts: 4969
Joined: Thu Nov 03, 2005 4:38 pm
Location: Boulder, CO
Contact:

Re: API wind spectrum

Postby Jason.Jonkman » Sat Dec 07, 2019 8:05 am

Dear Mhanis,

The JRSE 2013 paper from Coulling et al that you referred to originally called out an NPD (API) spectrum with a power-law profile. This is not the same as a Kaimal spectrum with an API profile.

I honest don't know why you keep getting the Cholesky factorization error when using the API spectrum, but a Cholesky factorization generally results from having too high (i.e., unphysical) spatial coherence. I'm not sure which version of TurbSim you are using, but if you haven't already, you could try upgrading to TurbSim within OpenFAST...where there was a small bug fixed in the coherence formulation: https://github.com/OpenFAST/openfast/. You could also try reducing the number of grid points (NumGrid_Z, NumGrid_Y) so that points in space are not as close together (and coherence is not as strong) or try playing withe spatial coherence parameters.

Otherwise, if you are not too concerned about the actual shape of the turbulence spectra, then you could continue using the Kaimal spectrum.

Best regards,
Jason Jonkman, Ph.D.
Senior Engineer | National Wind Technology Center (NWTC)

National Renewable Energy Laboratory (NREL)
15013 Denver West Parkway | Golden, CO 80401
+1 (303) 384 – 7026 | Fax: +1 (303) 384 – 6901
nwtc.nrel.gov


Return to “Inflow Turbulence”

Who is online

Users browsing this forum: No registered users and 1 guest