commit a5168e6f2a5b371925195dc6359efb2954661229
parent 6325beb6a8f5e0c8a970c5494a0512e9e6ab4dbf
Author: Ivan Gankevich <i.gankevich@spbu.ru>
Date: Wed, 24 Mar 2021 18:17:25 +0300
Add wind PDF derivation.
Diffstat:
main.bib | | | 58 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
main.tex | | | 70 | ++++++++++++++++++++++++++++++++++++++++++++++++---------------------- |
wind.mathics | | | 18 | ++++++++++++++++-- |
3 files changed, 122 insertions(+), 24 deletions(-)
diff --git a/main.bib b/main.bib
@@ -0,0 +1,58 @@
+
+@Article{ carta2008,
+ title = {Statistical modelling of directional wind speeds using
+ mixtures of von Mises distributions: Case study},
+ journal = {Energy Conversion and Management},
+ volume = {49},
+ number = {5},
+ pages = {897--907},
+ year = {2008},
+ issn = {0196-8904},
+ doi = {10.1016/j.enconman.2007.10.017},
+ url = {https://www.sciencedirect.com/science/article/pii/S0196890407003767},
+ author = {José A. Carta and Celia Bueno and Penélope Ramírez},
+ keywords = {Mixture distributions, Wind direction, Circular normal
+ distributions, von Mises distributions},
+ comment = {Wind direction distribution.}
+}
+
+@Article{ yim2000,
+ title = {A study on the distributions of the measured fluctuating wind
+ velocity components},
+ journal = {Atmospheric Environment},
+ volume = {34},
+ number = {10},
+ pages = {1583--1590},
+ year = {2000},
+ issn = {1352-2310},
+ doi = {10.1016/S1352-2310(99)00414-8},
+ url = {https://www.sciencedirect.com/science/article/pii/S1352231099004148},
+ author = {John Z Yim and Chun-Ren Chou and Wei-Po Huang},
+ keywords = {Turbulent fluctuations, Probability distribution, Gaussian
+ distribution, Gram–Charlier series expansions},
+ comment = {Wind velocity components distributions.}
+}
+
+@Article{ justus1976,
+ author = {C. G. Justus and W. R. Hargraves and Ali Yalcin},
+ title = {Nationwide Assessment of Potential Output from Wind-Powered
+ Generators},
+ journal = {Journal of Applied Meteorology and Climatology},
+ year = {01 Jul. 1976},
+ publisher = {American Meteorological Society},
+ address = {Boston MA, USA},
+ volume = {15},
+ number = {7},
+ doi = {10.1175/1520-0450(1976)015<0673:NAOPOF>2.0.CO;2},
+ pages = {673--678},
+ url = {https://journals.ametsoc.org/view/journals/apme/15/7/1520-0450_1976_015_0673_naopof_2_0_co_2.xml},
+ comment = {Wind speed distribution (Weibull).}
+}
+
+@Book{ box1976time,
+ title = {Time series analysis: forecasting and control},
+ author = {Box, George E. P. and Jenkins, Gwilym M.},
+ year = {1976},
+ publisher = {Holden-Day}
+}
+
diff --git a/main.tex b/main.tex
@@ -11,7 +11,7 @@
\begin{document}
-\title{TODO
+\title{Wind simulation using high-frequency velocity component measurements
\thanks{Supported by Council for grants of the President of the Russian Federation (grant no.~\mbox{MK-383.2020.9}).}}
\author{%
Anton Gavrikov\orcidID{0000-0003-2128-8368} \and\\
@@ -44,6 +44,8 @@
\section{Introduction}
+\cite{yim2000}
+
\section{Methods}
\subsection{Three-axis wind velocity measurements with load cell anemometer}
@@ -116,32 +118,50 @@ proportionality. Therefore, to obtain wind velocity to take square root of the
value measured by the load cell and multiply it by some coefficient determined
empirically during anemometer calibration.
-\subsection{Per-axis probability distribution functions for wind velocity}
-
-
+\subsection{Per-axis probability distribution function for wind velocity}
-
-\subsection{Three-dimensional ACF of wind velocity}
-
-One-dimensinoal wind velocity probability density function that is defined piecewise.
-One piece starts at \(-\infty\) and goes up
-to \(\Mode{x}\), and the second one starts at \(\Mode{x}\) and goes to \(\infty\).
-Both pieces use the formula that is similar to Weibull distribution which does not
-have \(x\) before the exponent and is similar to normal distribution which
-parameterise the power of \(x\). Probability density function is written as
+Scalar wind velocity is described by Weibull disttribution~\cite{justus1976}.
+Weibull probability distribution function is written as
\begin{equation}
- f(x) =
- \begin{cases}
- a_1\exp\left(-\left(b_1\left|x-\Mode{x}\right|\right)^{c_1}\right)
- \qquad \text{if }x < \Mode{x} \\
- a_2\exp\left(-\left(b_2\left|x-\Mode{x}\right|\right)^{c_2}\right)
- \qquad \text{if }x \geq \Mode{x} \\
+ f\left(\upsilon;b,c\right) = b c \left(b \upsilon\right)^{c-1}
+ \exp\left(-\left(b\upsilon\right)^{c}\right).
+\end{equation}
+Here \(\upsilon>0\) is scalar wind velocity, \(b>0\) is scale parameter and \(c>0\)
+is shape parameter. This function is defined for positive wind velocity, since
+scalar wind velocity is a length of wind velocity vector
+\(\upsilon=\sqrt{\smash[b]{\upsilon_x^2+\upsilon_y^2+\upsilon_z^2}}\). However, projection of
+wind velocity vector on \(x\), \(y\) or \(z\) axis may be negative. We could simply
+extend Weibull distribution for negative values, but this may lead to multimodal distribution
+because the maximum value may not be located at \(\upsilon=0\). Our solution to
+this problem is to make substitution \(\upsilon_x'=\left|\upsilon_x-\Mode\upsilon_x\right|\),
+where \(\Mode\upsilon_x\) is the mode of wind velocity projection to the corresponding axis,
+and modulus makes the graph simmetric with respect to \(\upsilon_x'=0\).
+The substitution yields
+\begin{equation}
+ f\left(\upsilon_x';b,c\right) = b c
+ \exp\left(-\left|b\upsilon_x'-g\left(c\right)\right|^{c}\right),
+ \qquad
+ g\left(c\right) = \left(\frac{c-1}{c}\right)^{1/c},
+\end{equation}
+which is the formula for the right side of the distribution. In order to get the
+formula for the left side, we have to use an additional set of parameters \(b\), \(c\).
+Then the final formula for both sides is written as
+\begin{equation}
+ f\left(\upsilon_x';b_1,c_1,b_2,c_2\right) = \begin{cases}
+ b_1 c_1 \exp\left(-\left|b_1\upsilon_x'-g\left(c_1\right)\right|^{c_1}\right)
+ \qquad \text{if } \upsilon_x < \Mode\upsilon_x \\
+ b_2 c_2 \exp\left(-\left|b_2\upsilon_x'-g\left(c_2\right)\right|^{c_2}\right)
+ \qquad \text{if } \upsilon_x \geq \Mode\upsilon_x \\
+
\end{cases}.
\end{equation}
-Here \(a_{1,2}>0\), \(b_{1,2}>0\) and \(c_{1,2}>0\) are parameters of the distribution
-that control the shape of the exponent.
+Here \(b_{1,2}>0\) and \(c_{1,2}>0\) are parameters of the distribution
+that control the scale and the shape.
+
+\subsection{Three-dimensional ACF of wind velocity}
-One-dimensional autocorrelation function is written as
+Usually, autocorrelation is modeled using exponential functions~\cite{box1976time}.
+In this paper we use one-dimensional autocorrelation function written as
\begin{equation}
\rho\left(t\right) = a_3 \exp\left(-\left(b_3 t\right)^{c_3} \right).
\end{equation}
@@ -171,6 +191,12 @@ velocity statistical parameters.
\section{Results}
+\subsection{Verification of wind velocity distribution}
+
+\subsection{Verification of wind direction distribution}
+
+\cite{carta2008}
+
\section{Discussion}
One disadvantage of three-axis anemometer is that the arm for the \(z\) axis is
diff --git a/wind.mathics b/wind.mathics
@@ -1,5 +1,19 @@
+(*
Print[Solve[{ux^2==a1 fx,
uy^2==a2 fy,
uz^2==a3 fz},{ux,uy,uz}]]
-Print[D[x^(k-1) Exp[-x^k], x] // Simplify]
-Print[Integrate[x^(k-1) Exp[-x^k], x] // Simplify]
+Print[D[x^(c-1) Exp[-x^c], x] // Simplify]
+Print[Integrate[x^(c-1) Exp[-x^c], x] // Simplify]
+*)
+
+
+weibullExp = -(x/\[Lambda])^c;
+weibullPDF = (c/\[Lambda]) (x/\[Lambda])^(c-1) Exp[-(x/\[Lambda])^c];
+weibullMode = \[Lambda] ((c-1)/c)^(1/c);
+Print[(weibullExp /. {x -> Abs[x-weibullMode]} /. {\[Lambda] -> 1/b}) // Simplify] ;
+Print[(weibullPDF /. {x -> Abs[x-weibullMode]} /. {\[Lambda] -> 1/b}) // Simplify] ;
+func[c_] := ((-1 + c) / c) ^ (1 / c);
+Print[func[{1, 2, 3}] // N]
+
+
+