main.tex (27566B)
1 \documentclass[runningheads]{llncs} 2 3 \usepackage{amsmath} 4 \usepackage{booktabs} 5 \usepackage{graphicx} 6 \usepackage{url} 7 \usepackage{textcomp} 8 9 \newcommand{\VectorR}[1]{\left[\begin{array}{r}#1\end{array}\right]} 10 \newcommand{\VectorL}[1]{\left[\begin{array}{l}#1\end{array}\right]} 11 \newcommand{\Length}[1]{\big|#1\big|} 12 13 \begin{document} 14 15 \title{Virtual Testbed: Simulation of air flow around ship hull and its effect 16 on ship motions\thanks{Supported by Saint Petersburg State University (grants 17 no.~51129371 and~51129725) and Council for grants of the President of the Russian 18 Federation (grant no.~\mbox{MK-383.2020.9}).}} 19 \author{% 20 Anton Gavrikov\orcidID{0000-0003-2128-8368} \and\\ 21 Alexander Degtyarev\orcidID{0000-0003-0967-2949} \and\\ 22 Denis Egorov\orcidID{0000-0001-5478-2798}\and\\ 23 Ivan Gankevich\textsuperscript{*}\orcidID{0000-0001-7067-6928} \and\\ 24 Artemii Grigorev\orcidID{0000-0003-0501-7656} \and\\ 25 Vasily Khramushin\orcidID{0000-0002-3357-169X} \and\\ 26 Ivan Petriakov\orcidID{0000-0001-5835-9313} 27 } 28 29 \titlerunning{Simulation of air flow around ship hull and its effect on ship motions} 30 \authorrunning{A.\,Gavrikov et al.} 31 32 \institute{Saint Petersburg State University\\ 33 7-9 Universitetskaya Emb., St Petersburg 199034, Russia\\ 34 \email{st047437@student.spbu.ru},\\ 35 \email{a.degtyarev@spbu.ru},\\ 36 \email{st047824@student.spbu.ru},\\ 37 \email{i.gankevich@spbu.ru},\\ 38 \email{st016177@student.spbu.ru},\\ 39 \email{v.khramushin@spbu.ru},\\ 40 \email{st049350@student.spbu.ru}\\ 41 \url{https://spbu.ru/}} 42 43 \maketitle 44 45 \begin{abstract} 46 47 Strong wind causes heavy load on the ship in a seaway bending and pushing it in 48 the direction of the wind. In this paper we investigate how wind can be 49 simulated in the framework of Virtual testbed~--- a near real-time ship motion 50 simulator. We propose simple model that describes air flow around ship hull 51 with constant initial speed and direction which is based on the law of 52 reflection. On the boundary the model reduces to the known model for potential 53 flow around a cylinder, and near the boundary they are not equivalent, but 54 close enough to visualise the effect of the hull on the flow. Then we apply 55 this model to simulate air flow around real-world ship hull and conclude that 56 for any real-world situation ship roll angle and ship speed caused by the wind 57 is small to not cause capsizing, but large enough to be considered in onboard 58 intelligent systems that determine real roll, pitch and yaw angles during ship 59 operation and similar applications. 60 61 \keywords{% 62 wind field 63 \and law of reflection 64 \and flow around cylinder 65 \and uniform translational motion 66 \and OpenMP 67 \and OpenCL 68 \and GPGPU. 69 } 70 \end{abstract} 71 72 \section{Introduction} 73 74 Ship motion simulation studies focus on interaction between the ship and ocean 75 waves~--- a physical phenomena that gives the largest contribution to 76 oscillatory motion~--- however, intelligent onboard systems require taking 77 other forces into account. One of the basic functionality of such a system is 78 determination of initial static ship stability parameters (roll angle, pitch 79 angle and draught) from the recordings of various ship motion parameters, such 80 as instantaneous roll, pitch and yaw angles, and their first and second 81 instantaneous derivatives (e.g.~angular velocity and angular acceleration). 82 During ship operation these initial static ship stability parameters deviate 83 from the original values as a result of moving cargo between compartments, 84 damaging the hull, compartment flooding etc. These effects are especially 85 severe for fishing and military vessels, but can occur with any vessel 86 operating in extreme conditions. 87 88 Intelligent onboard system needs large amount of synchronous recordings of ship 89 motions parameters to operate, mainly angular displacement, velocity and 90 acceleration and draught, but these parameters depend on the shape of the ship 91 hull and obtaining them in model tests is complicated, let alone field tests. 92 Field tests are too expensive to perform and do not allow to simulate 93 particular phenomena such as compartment flooding. Model tests are too 94 time-consuming for such a task and there is no reliable way to obtain all the 95 derivatives for a particular parameter: sensors measure one particular 96 derivative and all other derivatives have to be calculated by numerical 97 differentiation or integration, and integration has low accuracy for time 98 series of measurements~\cite{kok2017sensors}. The simplest way to obtain those 99 parameters is to simulate ship motion on the computer and save all the 100 parameters in the file for future analysis. 101 102 Arguably, the largest contribution to ship motion besides ocean waves is given 103 by wind forces: air has lesser density than water, but air motion acts on the 104 area of ship hull which may be greater than underwater area due to ship 105 superstructure. Steady wind may produce non-nought roll angle, and thus have to 106 be taken into account when determining initial static ship stability 107 parameters. In this paper we investigate how wind velocity field can be 108 simulated on the boundary and near the boundary of the ship hull. We derive a 109 simple mathematical model for uniform translational motion of the air on the 110 above-water boundary of the ship hull. Then we generalise this model to 111 calculate wind velocity near the boundary still taking into account the shape 112 of the above-water part of the ship hull. Finally, we measure the effect of 113 wind velocity on the ship roll angle and carry out computational performance 114 analysis of our programme. 115 116 \section{Related work} 117 118 Studies on the effect of the wind on ship motions mostly focus on capsizing 119 probability~\cite{bulian2004roll,paroka2006wind}, whereas our work focuses on 120 the direct effect of wind on ship motions and on how to incorporate ship roll 121 angle change due to wind in onboard intelligent systems. As a result, we do not 122 use probabilistic methods, but we use direct simulation of air flow. 123 124 Similar simulations can be performed in a wind tunnel~\cite{andersen2013wind} 125 but in the case of onboard intelligent systems we need to gather a lot of 126 statistical data to be able to tune the system for each ship hull shape. 127 Performing large number of simulations in a wind tunnel is time-consuming and a 128 computer programme is the most efficient option for this task. 129 130 \section{Methods} 131 132 \subsection{Analytic representation of wind velocity field} 133 134 Air motion without turbulence can be decomposed into two components: 135 translational motion~--- air particles travel in the same direction with 136 constant velocity, and circular motion~--- air particles travel on a circle. 137 Translational motion describe sea breeze, that occurs on the shore on the 138 sunrise and after the sunset. Circular motion describe storms such as typhoons 139 and hurricanes. Translational motion is a particular case of circular motion 140 when the radius of the circle is infinite. Due to the fact that the scale of 141 circular motion is much larger than the size of a typical ship hull we consider 142 only translational motion in this paper. 143 144 Since there is no rotational component, air flow is described by equations for 145 irrotational inviscid incompressible fluid. In this context fluid velocity 146 \(\vec\upsilon\) is determined as a vector gradient \(\vec\nabla\) of scalar 147 velocity potential \(\phi\) and continuity equation and equation of motion are 148 written as 149 \begin{equation} 150 \label{eq-governing} 151 \begin{aligned} 152 & \Delta\phi = 0; \qquad \vec\upsilon=\vec\nabla\phi; \\ 153 & \rho\frac{\partial\phi}{\partial{}t} + 154 \frac{1}{2}\rho\Length{\vec\nabla\phi}^2 + 155 p + \rho g z = p_0. 156 \end{aligned} 157 \end{equation} 158 Here \(p_0\) is atmospheric pressure, \(g\) is gravitational acceleration, 159 \(\rho\) is air density, \(p\) is pressure. We seek solutions to this system 160 of equations for velocity potential \(\phi\). Continuity equation restricts 161 the type of the function that can be used as the solution, and equation of 162 motion gives the pressure for a particular velocity potential value. 163 164 Ship hull boundary is defined by a parametric surface \(\vec{S}\) and surface 165 normal \(\vec{n}\): 166 \begin{equation*} 167 \vec{S}=\vec{S}\left(a,b,t\right) 168 \qquad 169 a,b\in{}A=[0,1]; 170 \qquad 171 \vec{n}=\frac{\partial\vec S}{\partial a} \times \frac{\partial\vec S}{\partial b} 172 \end{equation*} 173 The simplest parametric surface is infinite plane with constant normal. 174 The computer model of a real ship hull is composed of many triangular panels 175 with different areas and different orientations that approximate continuous 176 surface. On the boundary the projection of wind velocity on the surface normal 177 is nought: 178 \begin{equation} 179 \label{eq-boundary} 180 \vec\nabla\phi\cdot\vec{n} = 0; 181 \qquad 182 \vec{r} = \vec{S}. 183 \end{equation} 184 185 The solutions to the governing system of equations differ in how boundary is 186 incorporated into them: in our model the boundary is taken into account by adding 187 velocity of a reflected air particle in the solution. Velocity 188 \(\vec\upsilon_r\) of the particle that is reflected from the surface with 189 surface normal \(\vec{n}\) is given by the law of reflection 190 (fig.~\ref{fig-law-of-reflection}): 191 \begin{equation} 192 \label{eq-reflected} 193 \vec\upsilon_r = \vec\upsilon - 2\left(\vec\upsilon\cdot\vec{n}\right)\vec{n}. 194 \end{equation} 195 When we add velocity of incident and reflected air particles we get a vector 196 that is parallel to the boundary. As we move away from the boundary its impact 197 on the velocity decays quadratically with the distance. The reason for using 198 the law of reflection to describe 199 air flow on the boundary is that the corresponding solution reduces to the known 200 analytic solution for the potential flow around a cylinder 201 (see~sec.~\ref{sec-cylinder}). Quadratic decay term is borrowed from this known 202 solution. 203 204 \begin{figure} 205 \centering 206 \includegraphics{build/inkscape/law-of-reflection.eps} 207 \caption{The law of reflection diagram for incident and reflected air particle 208 velocities \(\vec\upsilon\) and \(\vec\upsilon_r\) and surface normal 209 \(\vec{n}\).\label{fig-law-of-reflection}} 210 \end{figure} 211 212 In the following subsections we describe the solution that we obtained for the 213 velocity field \emph{on} the boundary and \emph{near} the boundary. 214 215 \subsection{Uniform translational motion on the static body surface} 216 217 On the surface we neglect the impact of neighbouring panels on the velocity 218 field on the ground that the real ship hull surface is smooth, 219 i.e.~neighbouring panels have approximately the same normals. This assumption 220 does not hold for aft and bow of some ships, and, as a result, velocity field 221 near these features has stream lines with sharp edges. We consider this effect 222 negligible for the determination of roll angle caused by the wind, since the 223 area of panels that distort wind field is small compared to the area of all 224 other panels. 225 226 We seek solutions to the governing system of equations~\eqref{eq-governing} with 227 boundary condition~\eqref{eq-boundary} of the form 228 \begin{equation*} 229 \phi = \vec\upsilon\cdot\vec{r} 230 + C \left(\vec\upsilon_r\cdot\vec{r}\right); 231 \qquad 232 \vec{r}=\left(x,y,z\right), 233 \end{equation*} 234 Here \(\vec{r}\) is spatial coordinate, \(C\) is the coefficient, and 235 \(\vec\upsilon_r\) is velocity of reflected air particle defined 236 in~\eqref{eq-reflected}. This solution is independent for each panel. 237 Plugging the solution into boundary condition~\eqref{eq-boundary} gives 238 \begin{equation*} 239 \left(\vec\upsilon + C\vec\upsilon_r\right)\cdot\vec{n} = 0, 240 \end{equation*} 241 hence 242 \begin{equation*} 243 C = -\frac{ \vec\upsilon\cdot\vec{n} }{ \vec\upsilon_r\cdot\vec{n} } = 1 244 \end{equation*} 245 and velocity is written simply as 246 \begin{equation} 247 \label{eq-solution-on-the-boundary} 248 \vec\nabla\phi = \vec\upsilon + \vec\upsilon_r. 249 \end{equation} 250 251 This solution satisfies continuity equation. It gives velocity only at the 252 centre of each ship hull panel, but this is sufficient to calculate pressure 253 and force moments acting on the ship hull. 254 255 \subsection{Uniform translational motion near the static body surface} 256 257 Near the surface there are no neighbouring panels, the impact of which we can 258 neglect, instead we add reflected particle velocities for all the panels and 259 decay the velocity quadratically with the distance to the panel. Here we can 260 neglect panels surface normals of which has large angles with the wind 261 direction for efficiency, but they do not blow up the solution. 262 263 We seek solutions of the form 264 \begin{equation*} 265 \phi = \vec\upsilon\cdot\vec{r} 266 + \iint\limits_{a,b\,\in{}A} 267 C \frac{\vec\upsilon_r\cdot\vec{r}}{1+\Length{\vec{r}-\vec{S}}^2} 268 da\,db, 269 \end{equation*} 270 where \(\Length{\cdot}\) denotes vector length. Plugging the solution into boundary 271 condition and assuming that neighbouring panels do not affect each other (this allows 272 removing the integral) gives the same coefficient \(C=1\), but velocity vector is written 273 differently as 274 \begin{equation} 275 \label{eq-solution-near-the-boundary} 276 \vec\nabla\phi = 277 \vec\upsilon + 278 \iint\limits_{a,b\,\in{}A} 279 \left( 280 \frac{1}{s} \vec\upsilon_r 281 - \frac{2}{s^2} \left(\vec\upsilon_r\cdot\vec{r}\right) \left(\vec{r}-\vec{S}\right) 282 \right) 283 da\,db; 284 \qquad 285 s = 1+\Length{\vec{r}-\vec{S}}^2. 286 \end{equation} 287 Besides the term for reflected air particle velocity that decays quadratically with 288 the distance to the panel, there is a term that decays quaternary with the distance and 289 that can be neglected. 290 291 This solution reduces to the solution on the boundary when \(\vec{r}=\vec{S}\) 292 and takes into account impact of each panel on the velocity direction which decays 293 quadratically with the distance to the panel. 294 295 \section{Results} 296 297 \subsection{Verification of the solution on the example of potential flow around a cylinder} 298 \label{sec-cylinder} 299 300 Potential flow around a cylinder in two dimensions is described by the 301 following well-known formula: 302 \begin{equation*} 303 \phi\left(r,\theta\right) = U r \left( 1 + \frac{R^2}{r^2} \right) \cos\theta. 304 \end{equation*} 305 Here \(r\) and \(\theta\) are polar coordinates, \(R\) is cylinder radius and \(U\) 306 is \(x\) component of the velocity. Cylinder is placed at the origin. To prove that our 307 solution on the boundary~\eqref{eq-solution-on-the-boundary} reduces to this solution 308 we write it in Cartesian form using polar coordinate identities 309 \begin{equation*} 310 r = \sqrt{x^2+y^2}; \qquad \theta = \arccos{\frac{x}{\sqrt{x^2+y^2}}}. 311 \end{equation*} 312 Then in Cartesian coordinates the solution is written as 313 \begin{equation*} 314 \phi(x,y) = U x \left(1 + \frac{R^2}{x^2+y^2}\right) 315 \end{equation*} 316 and the velocity is written as 317 \begin{equation} 318 \label{eq-solution-cylinder} 319 \vec\nabla\phi = \VectorL{U \left(R^2 (y^2-x^2) + (x^2+y^2)^2 \right) \\ 320 -2 R^2 U x y} / (x^2+y^2)^2. 321 \end{equation} 322 On the boundary \(x^2+y^2=R^2\) and the velocity is written as 323 \begin{equation*} 324 \vec\nabla\phi = \frac{2 U}{R^2}\VectorR{y^2 \\ -x y\phantom{^2}}. 325 \end{equation*} 326 Now if we write surface normal as \(\vec{n}=(x/R,y/R)\) and let 327 \(\vec\upsilon=(U,0)\), our solution \eqref{eq-solution-on-the-boundary} 328 quite surprisingly reduces to the same expression. 329 330 To reduce solution near the boundary~\eqref{eq-solution-near-the-boundary} to 331 the solution for potential flow around a cylinder, we let 332 \(s=\Length{\vec{r}}^2/\Length{\vec{S}}^2\) (here \(\vec{r}\) is the radius 333 vector in Cartesian coordinates). Then the solution is written as 334 \begin{equation*} 335 \vec\nabla\phi = \vec\upsilon + \frac{1}{s} \vec\upsilon_r 336 \end{equation*} 337 and reduces to general form of the solution for potential flow around a 338 cylinder given in~\eqref{eq-solution-cylinder}. 339 340 We compared both solutions (see fig.~\ref{fig-verification}) for a cylinder 341 with \(R=27.4429\), and discovered that maximum distance between velocity 342 fields produced from both of them is 11\% of the maximum velocity. Our formula 343 shows slightly smaller decay near the boundary, but this problem cannot be 344 solved by introducing coefficients. Perhaps, comparing our solution to the 345 solution produced by CFD methods may shed light on which one is closer to the 346 reality. On the ship hull boundary the solutions are equivalent. 347 348 \begin{figure} 349 \centering 350 \includegraphics{build/gnuplot/verification.eps} 351 \caption{Wind velocity fields for air flow around a cylinder: left~--- known 352 solution~\eqref{eq-solution-cylinder}, right~--- our 353 solution~\eqref{eq-solution-near-the-boundary}.\label{fig-verification}} 354 \end{figure} 355 356 \subsection{Ship roll angle and velocity} 357 358 Wind causes non-nought force moment and force acting on a ship that bend and 359 move the ship in the direction of the wind. This effect is stronger for the 360 ships with large hull areas exposed to the wind, like fully-loaded 361 containerships, but other ships are also affected. 362 363 We measured how wind speed affects Aurora's transversal velocity and roll 364 angle. For that purpose we made wind blow directly in the starboard of the 365 ship and varied wind speed. We stopped the experiment after 60 seconds and 366 measured maximum roll angle and maximum transversal velocity. We have found 367 that in order to produce 1\textdegree{} static roll angle we need wind speed of 368 \(\approx{}35\) m/s (fig.~\ref{fig-roll-velocity}), and wind with that speed 369 makes the ship move in transversal direction with the speed of \(\approx{}0.2\) 370 m/s. We expect these numbers to be smaller for smaller ships. 371 372 We have found that the law of reflection~\eqref{eq-reflected} in its original 373 form does not allow to calculate the effect of wind on the symmetric ship hull: 374 it happens because the pressure on the leeward and windward side of the ship is 375 the same~--- which is not the case for real-world phenomena where the pressure 376 is different due to turbulence. To overcome this problem we introduce a 377 coefficient \(\alpha\) that controls reflection ratio: 378 \begin{equation*} 379 \vec\upsilon_r = \vec\upsilon - 2 \alpha \left(\vec\upsilon\cdot\vec{n}\right)\vec{n}. 380 \end{equation*} 381 When \(\alpha=1\) this formula equals~\eqref{eq-reflected}, when \(\alpha=0\) there 382 is no reflection and the wind velocity does not change its direction near the 383 ship hull. In our tests we used \(\alpha=0.5\). A better solutions would be to 384 incorporate turbulence in the model which is one of the directions of future research. 385 386 \begin{figure} 387 \centering 388 \includegraphics{build/gnuplot/velocity.eps} 389 \caption{Dependence of Aurora's roll angle on wind speed (left) and 390 dependence of Aurora's transversal velocity on wind speed 391 (right).\label{fig-roll-velocity}} 392 \end{figure} 393 394 \subsection{Computational performance analysis} 395 396 We implemented solutions~\eqref{eq-solution-on-the-boundary} 397 and~\eqref{eq-solution-near-the-boundary} in Virtual testbed wind solver. 398 Virtual testbed is a programme for workstations that simulates ship motions in 399 extreme conditions and physical phenomena that causes them: ocean waves, wind, 400 compartment flooding etc. 401 402 We performed benchmarks for three ships: Diogen, Aurora and MICW. Diogen is a 403 small-size fishing vessel, Aurora is mid-size cruiser and MICW is a large-size 404 ship with small moment of inertia for the current waterline 405 (fig.~\ref{fig-ships}). Ships in our database do not have superstructures, they 406 have only hulls and compartments. The main difference between them that affects 407 benchmarks is the number of panels into which the hull is decomposed. These numbers 408 and sizes are shown in tab.~\ref{tab-ships}. 409 410 \begin{table} 411 \centering 412 \caption{Parameters of ship hulls that were used in the 413 benchmarks.\label{tab-ships}} 414 \begin{tabular}{lrrr} 415 \toprule 416 & Diogen & Aurora & MICW \\ 417 \midrule 418 Length, m & 60 & 126.5 & 260 \\ 419 Beam, m & 15 & 16.8 & 32 \\ 420 Depth, m & 15 & 14.5 & 31 \\ 421 No. of panels & 4346 & 6335 & 9252 \\ 422 \bottomrule 423 \end{tabular} 424 \end{table} 425 426 Benchmarks were performed using three workstations: DarkwingDuck, GPUlab, 427 Capybara. DarkwingDuck is a laptop, GPUlab is a desktop workstation, and 428 Capybara is a desktop with professional graphical accelerator server-grade 429 processor (tab.~\ref{tab-config}). All of the workstations are equipped with 430 graphical accelerators that allow to greatly increase their performance. 431 432 Wind solver was written for both OpenMP and OpenCL to make use of graphical 433 accelerator available on most modern workstations. The solvers use single 434 precision floating point numbers. Benchmark results are presented in 435 tab.~\ref{tab-benchmark}. 436 437 \begin{table} 438 \centering 439 \caption{Hardware configurations for benchmarks. For all benchmarks we 440 used GCC version 9.1.0 compiler and optimisation flags \texttt{-O3 441 -march=native}.\label{tab-config}} 442 \begin{tabular}{lllrr} 443 \toprule 444 & & & \multicolumn{2}{c}{GPU GFLOPS} \\ 445 \cmidrule(r){4-5} 446 Node & CPU & GPU & Single & Double \\ 447 \midrule 448 DarkwingDuck & Intel i7-3630QM & NVIDIA GT740M & 622 & \\ 449 GPUlab & AMD FX-8370 & NVIDIA GTX1060 & 4375 & 137 \\ 450 Capybara & Intel E5-2630 v4 & NVIDIA P5000 & 8873 & 277 \\ 451 \bottomrule 452 \end{tabular} 453 \end{table} 454 455 \begin{table} 456 \centering 457 \caption{Performance benchmarks results. Numbers represent average time in milliseconds 458 that is needed to compute wind field on the ship hull and near the ship 459 hull.\label{tab-benchmark}} 460 \begin{tabular}{l@{\hskip 3mm}r@{\hskip 2mm}r@{\hskip 3mm}r@{\hskip 2mm}r@{\hskip 3mm}r@{\hskip 2mm}r} 461 \toprule 462 & \multicolumn{2}{l}{Diogen} 463 & \multicolumn{2}{l}{Aurora} 464 & \multicolumn{2}{l}{MICW} \\ 465 \cmidrule(r){2-3} 466 \cmidrule(r){4-5} 467 \cmidrule(r){6-7} 468 Node & MP & CL 469 & MP & CL 470 & MP & CL \\ 471 \midrule 472 DarkwingDuck 473 & 114 & 14.00 474 & 164 & 16 475 & 314 & 29 476 \\ 477 GPUlab 478 & 62 & 1.35 479 & 90 & 2 480 & 175 & 3 481 \\ 482 Capybara & 33 & 0.87 483 & 48 & 1 484 & 99 & 6 485 \\ 486 \bottomrule 487 \end{tabular} 488 \end{table} 489 490 \begin{figure} 491 \centering 492 \includegraphics{build/ships/diogen.eps}\hfill 493 \includegraphics{build/ships/aurora.eps}\hfill 494 \includegraphics{build/ships/micw.eps} 495 \caption{Diogen, Aurora and MICW three-dimensional ship hull 496 models.\label{fig-ships}} 497 \end{figure} 498 499 \section{Discussion} 500 501 Solution on the boundary \eqref{eq-solution-on-the-boundary} provides simple 502 explanation of areas with the highest and lowest pressure for potential flow 503 around a cylinder. At left-most and right-most points on the cylinder boundary 504 (fig.~\ref{fig-verification}) velocity is nought because incident and reflected 505 particle velocities have opposite directions and cancel each other out. At 506 top-most and bottom-most points incident and reflected particle velocities have 507 the same direction and total velocity is two times larger than the velocity of 508 the flow. 509 510 In order to be compatible with the surface of any object, solution near the 511 boundary \eqref{eq-solution-near-the-boundary} uses different term \(s\) than 512 the solution for potential flow around a cylinder which makes reflected 513 velocity term reach maximum value for the point on the boundary, and for the 514 point near the boundary the solution includes reflected velocity vectors for 515 each panel. 516 517 Wind speed of 35 m/s that we obtained in ship roll angle experiments matches 518 hurricane with 14 m high waves on the Beaufort scale which would affect the 519 ship more severely than the wind. The main reason for such a large value is 520 that ships in our database do not have superstructures and hence the surface 521 area affected by the wind is much smaller than in reality. Nevertheless, in 522 intelligent onboard systems even small variations in static roll at less severe 523 weather conditions have to be considered for the correct operation of the 524 system. 525 526 The introduction of the coefficient \(\alpha\) that controls reflection ratio 527 is the simplest way of taking turbulence into account. \(\alpha<1\) increases 528 the wind speed on the leeward side of the ship as a result of wind ``going 529 around'' the ship hull. More sophisticated turbulence model would give more 530 accurate results. 531 532 Performance benchmarks showed that performance of both OpenMP and OpenCL 533 solvers increases from the least powerful (DarkwingDuck) workstation to the 534 most powerful one (Capybara). In addition to this, performance of OpenCL is 535 always better than of OpenMP by a factor of 16--58. Our solver uses explicit 536 analytic formula to compute wind field and to compute wind field at each point 537 iterates over all panels of the ship. All panels are stored and accessed 538 sequentially and all points of wind field are stored sequentially and accessed 539 in parallel, which makes the solver easy to implement in OpenCL and allows to 540 achieve high performance on the graphical accelerator. Finally, as expected 541 performance increases and the ratio between OpenCL and OpenMP performance 542 decreases from the large-size to small-size ship. The only exception from the 543 above-mentioned observations is the performance of OpenCL on Capybara for MICW 544 hull. This behaviour requires further investigation. 545 546 547 \section{Conclusion} 548 549 This paper proposes a new simple mathematical model for wind field around the 550 ship hull. On the ship hull boundary this model is equivalent to the known 551 formula for potential flow around a cylinder. Near the boundary this model is 552 close to this formula, but has slightly smaller decay. In both cases the model 553 satisfies boundary conditions and continuity equation (conservation of mass), 554 which makes it suitable for physical simulations. The main advantage of the 555 model is its simplicity, the use of Cartesian coordinates and its applicability 556 to bodies of any form, not just cylinders. 557 558 We applied this model to simulate ship motions under the effect of wind with 559 constant speed and direction (and in the absence of all other effects except 560 buoyancy force), and discovered that to get static roll angle of 1\textdegree{} 561 we need wind speed of a hurricane (12 on the Beaufort scale). Also, simulation 562 of ship motions due to wind is not possible without taking into account 563 turbulence, but in the absence of turbulence model we used the simple 564 coefficient that controls reflection ratio to adapt the model for this kind of 565 simulation. 566 567 From the computational standpoint the proposed model shows high performance on 568 modern processors as well as graphical accelerators due to linear memory access 569 pattern and absence of synchronisation and data transfer between parallel 570 processes. Using any up-to-date workstation is enough to perform real-world 571 simulations. 572 573 Future work is to include stratification and circular motion in the model. 574 Stratification~--- an increase of wind speed with height~--- is known phenomena 575 in atmosphere which affects wind field around tall ships, and thus may improve 576 accuracy of our solver. The motivation behind including circular motion is to 577 better understand air motion around object and the fact that linear motion is a 578 special case of it when the circle radius is infinite. Another possible 579 direction of future work is to use more advanced turbulence model. 580 581 \subsubsection*{Acknowledgements.} 582 Research work is supported by Saint Petersburg State University (grants 583 no.~51129371 and~51129725) and Council for grants of the President of the Russian Federation 584 (grant no.~MK-383.2020.9). 585 586 \bibliographystyle{splncs04} 587 \bibliography{references} 588 589 \end{document}