energy {bReeze} | R Documentation |
Calculation of total wind energy content
Description
Calculates the total wind energy content per direction sector from Weibull data.
Usage
energy(wb, rho=1.225, bins=c(5, 10, 15, 20),
digits=0, print=TRUE)
en(wb, rho=1.225, bins=c(5, 10, 15, 20),
digits=0, print=TRUE)
## S3 method for class 'energy'
plot(x, show.total=TRUE, ...)
Arguments
wb |
Weibull object created by |
rho |
Air density as numeric value. Default is |
bins |
Wind speed bins as numeric vector or |
digits |
Number of decimal places to be used for results as numeric value. Default is |
print |
If |
x |
Energy object created by |
show.total |
If |
... |
Arguments to be passed to methods. For optional graphical parameters see below. |
Details
The total wind energy content can be perceived as the theoretic energy potential of a particular site. Therefore it is usefull for a resource assessment, independent of the wind turbine.
The power density function
where is the air density,
is the wind speed and
is its probability density function, leads to an analytical solution using wind speed bins as:
where is the number of hours of the desired period,
is the wind speed bin and
is the probability of that bin estimated by the Weibull distribution. The result for
is the available wind energy per square meter and year.
Value
Returns a data frame containing:
total |
Total wind energy content per direction sector. |
... |
Wind energy content per direction sector for each given wind speed bin. |
Optional graphical parameters
The following graphical parameters can optionally be added to customize the plot:
-
border.leg
: Border colour(s) for the legend. One colour for each wind speed bin or a single colour – default is same ascol
. -
bty.leg
: Type of box to be drawn around the legend. Allowed values are"n"
(no box, the default) and"o"
. -
cex
: Amount by which text on the plot should be scaled relative to the default (which is1
), as numeric. To be used for scaling of all texts at once. -
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. -
cex.leg
: Amount by which legend text 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
: Vector of colours – one colour for each wind speed bin or a single colour ifenergy
only contains the total energy per direction sector. -
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"
. -
col.leg
: Colour to be used for legend text – 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
. -
title.leg
: Alternative legend title, as string. -
width.leg
: Widths of legend space relative to plot space, as numeric value between0
and1
. If0
, the legend is omitted, default value is0.2
. -
x.intersp
: Horizontal interspacing factor for legend text, as numeric – default is0.4
. -
y.intersp
: Vertical line distance for legend text, as numeric – default is0.4
.
Author(s)
Christian Graul
References
Fördergesellschaft Windenergie e.V. (2007) Technical Guidelines for Wind Turbines, Part 6: Determination of Wind Potential and Energy Yields, Revision 7
International Organisation for Standardization (1975) ISO 2533:1975 Standard Atmosphere. ISO Standard
Troen, I., Petersen, E.L. (1989) European Wind Atlas. Tønder: Laursen
See Also
Examples
## Not run:
## load and prepare data
data("winddata", package="bReeze")
set1 <- set(height=40, v.avg=winddata[,2], v.std=winddata[,5],
dir.avg=winddata[,14])
set2 <- set(height=30, v.avg=winddata[,6], v.std=winddata[,9],
dir.avg=winddata[,16])
set3 <- set(height=20, v.avg=winddata[,10], v.std=winddata[,13])
ts <- timestamp(timestamp=winddata[,1])
neubuerg <- mast(timestamp=ts, set1, set2, set3)
neubuerg <- clean(mast=neubuerg)
## calculate Energy object
# calculate Weibull object
neubuerg.wb <- weibull(mast=neubuerg, v.set=1, print=FALSE)
# calculate energy
neubuerg.e <- energy(wb=neubuerg.wb)
# calculate energy for 1 m/s speed bins and without binning
energy(wb=neubuerg.wb, bins=0:25)
energy(wb=neubuerg.wb, bins=NULL)
# calculate energy with site specific air density
energy(wb=neubuerg.wb, rho=1.115, bins=NULL)
# change number of digits and hide results
energy(wb=neubuerg.wb, digits=2)
energy(wb=neubuerg.wb, print=FALSE)
## plot energy objects
plot(neubuerg.e) # default
plot(neubuerg.e, show.total=FALSE) # omit total amount
plot(neubuerg.e, col=gray(5:0/5.5), cex=0.8) # change colours/text sizes
plot(neubuerg.e, circles=c(100, 500, 100)) # manual definition of circles
plot(neubuerg.e, fg=TRUE) # plot sectors in foreground
plot(neubuerg.e, pos.axis=135) # change axis label position
plot(neubuerg.e, width.leg=0) # no legend
# freaky
plot(neubuerg.e, border.leg=heat.colors(5), bty.leg="o",
cex.axis=0.5, cex.lab=2, cex.leg=0.5, circles=c(80, 800, 80),
col=rainbow(5), col.axis="green", col.border="orange",
col.circle="purple", col.cross="yellow", col.lab="pink",
col.leg="lightblue", fg=TRUE, lwd.border=2, lwd.circle=3, lwd.cross=4,
lty.circle="52168319", lty.cross="12223242", sec.space=0.6,
title.leg="* WiNd SpEeD *", x.intersp=2, y.intersp=5)
## End(Not run)