turbulence {bReeze} | R Documentation |
Calculation of turbulence intensity
Description
Calculates turbulence intensity and mean wind speed for each given direction sector.
Usage
turbulence(mast, turb.set, dir.set, num.sectors=12,
bins=c(5, 10, 15, 20), subset, digits=3, print=TRUE)
turb(mast, turb.set, dir.set, num.sectors=12,
bins=c(5, 10, 15, 20), subset, digits=3, print=TRUE)
Arguments
mast |
Met mast object created by |
turb.set |
Set used for turbulence intensity, specified as set number or set name (optional, if |
dir.set |
Set used for wind direction, specified as set number or set name (optional, if |
num.sectors |
Number of wind direction sectors as integer value greater 1. Default is |
bins |
Wind speed bins as numeric vector or |
subset |
Optional start and end time stamp for a data subset, as string vector |
digits |
Number of decimal places to be used for results as numeric value. Default is |
print |
If |
Details
Turbulence can be perceived as wind speed fluctuations on a relatively short time scale and it strongly depends on surface roughness, terrain features, as well as thermal effects. High turbulence should be avoided, since it is a main driver of fatigue loads and might decrease energy output. A measure of the overall level of turbulence, is the turbulence intensity I
, which is defined as:
I = \frac{\sigma}{\bar v}
where \sigma
is the standard deviation of wind speed – usually measured over a 10-minutes period – and \bar v
is the mean wind speed over this period.
Value
Returns a data frame containing:
wind.speed |
Mean wind speed for each direction sector. |
total |
Total turbulence intensity for each direction sector. |
... |
Turbulence intensities per direction sector for each given wind speed bin. |
Optional graphical parameters for plotting
The following graphical parameters can optionally be added to customize the plot:
-
cex
: Numeric value, giving the amount by which text on the plot should be scaled relative to the default (which is 1). -
cex.axis
: Amount by which axis annotations should be scaled, as numeric value. -
cex.lab
: Amount by which axis labels should be scaled, as numeric value. -
circles
: Manual definition of circles to be drawn, as numeric vector of the form c(inner circle, outer circle, interval between the circles). -
col
: Colour to be used for the sectors. -
col.axis
: Colour to be used for axis annotations – default is"gray45"
. -
col.border
: Colour to be used for sector borders – default isNULL
(no border is drawn). -
col.circle
: Colour to be used for circles – default is"gray45"
. -
col.cross
: Colour to be used for axis lines – default is"gray45"
. -
col.lab
: Colour to be used for axis labels – default is"black"
. -
fg
: IfTRUE
, sectors are plotted in foreground (on top of axis lines and circles) – default isFALSE
. -
lty.circle
: Line type of circles – default is"dashed"
. Seepar
for available line types. -
lty.cross
: Line type of axis lines – default is"solid"
. Seepar
for available line types. -
lwd.border
: Line width of the sector borders – default is0.5
. Only used ifcol.border
is set. -
lwd.circle
: Line width of circles, as numeric value – default is0.7
. -
lwd.cross
: Line width of axis lines, as numeric value – default is0.7
. -
pos.axis
: Position of axis labels in degree, as numeric value – default is60
. -
sec.space
: Space between plotted sectors, as numeric value between0
and1
– default is0.2
.
Author(s)
Christian Graul
References
Albers, A. (2010) Turbulence and Shear Normalisation of Wind Turbine Power Curve. Proceedings of the EWEC 2010, Warsaw, Poland
Burton, T., Sharpe, D., Jenkins, N., Bossanyi, E. (2001) Wind Energy Handbook. New York: Wiley
Langreder, W. (2010) Wind Resource and Site Assessment. In: Wei Tong (Ed.), Wind Power Generation and Wind Turbine Design, Chapter 2, p. 49–87, Southampton: WIT Press
See Also
Examples
## Not run:
## load and prepare data
data("winddata", package="bReeze")
set40 <- set(height=40, v.avg=winddata[,2], v.std=winddata[,5],
dir.avg=winddata[,14])
set30 <- set(height=30, v.avg=winddata[,6], v.std=winddata[,9],
dir.avg=winddata[,16])
set20 <- set(height=20, v.avg=winddata[,10], v.std=winddata[,13])
ts <- timestamp(timestamp=winddata[,1])
neubuerg <- mast(timestamp=ts, set40, set30, set20)
neubuerg <- clean(mast=neubuerg)
## calculate turbulence intensity
turbulence(mast=neubuerg, turb.set=1) # default
turbulence(mast=neubuerg, turb.set=1, dir.set=2) # use different datasets
turbulence(mast=neubuerg, turb.set="set1", dir.set="set2") # same as above
turbulence(mast=neubuerg, turb.set=1, num.sectors=4) # change sector number
# calculate turbulence intensity for 1 m/s speed bins and without binning
turbulence(mast=neubuerg, turb.set=1, bins=1:25)
turbulence(mast=neubuerg, turb.set=1, bins=NULL)
# data subset
turbulence(mast=neubuerg, turb.set=1,
subset=c(NA, "2010-01-01 00:00:00"))
# change number of digits and hide results
turbulence(mast=neubuerg, turb.set=1, digits=2)
neubuerg.ti <- turbulence(mast=neubuerg, turb.set=1, print=FALSE)
neubuerg.ti
## plot turbulence intensity object
plot(neubuerg.ti) # default
# change colour, text size etc.
plot(neubuerg.ti, cex.axis=0.7, cex.lab=0.9, circles=c(0.05,0.20,0.05),
col="lightgray", col.axis="darkgray", col.border="gray", col.circle="darkgray",
col.cross="darkgray", col.lab="darkgray", fg=TRUE, lty.circle="dotdash",
lty.cross="longdash", lwd.border=1.2, lwd.circle=1.2, lwd.cross=1.2,
pos.axis=135, sec.space=0.6)
## End(Not run)