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
E(v) = \frac{1}{2} \, \rho \, v^3 \, f(v)
where \rho
is the air density, v
is the wind speed and f(v)
is its probability density function, leads to an analytical solution using wind speed bins as:
E(v) = \frac{1}{2} \, \rho \, H \, \sum_{b=1}^{n} \! v_b^3 \, W(v_b)
where H
is the number of hours of the desired period, v_b
is the wind speed bin and W(v_b)
is the probability of that bin estimated by the Weibull distribution. The result for H=8760
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)