iccsa-19-vtestbed

git clone https://git.igankevich.com/iccsa-19-vtestbed.git
Log | Files | Refs

commit 7b849fc4d1adb299062925df54b23c1b5c0ca74d
parent 43dd6794db49b1181b0691fc1232fc3b029b31b4
Author: Ivan Gankevich <igankevich@ya.ru>
Date:   Sat, 23 Mar 2019 11:57:26 +0300

Pressure.

Diffstat:
main.tex | 77+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
references.bib | 10++++++++++
2 files changed, 87 insertions(+), 0 deletions(-)

diff --git a/main.tex b/main.tex @@ -1,6 +1,16 @@ \documentclass[runningheads]{llncs} \usepackage{graphicx} +\usepackage{amsmath} + +\newcommand{\WaveVector}{\vec{k}} +\newcommand{\WaveNumber}{\lvert\smash[b]{\WaveVector}\rvert} +\newcommand{\Cosh}[1]{\cosh\left(#1\right)} +\newcommand{\Fourier}[2]{\mathcal{F}_{#2}\!\left\{#1\right\}} +\newcommand{\InverseFourier}[2]{\mathcal{F}^{-1}_{#2}\!\left\{#1\right\}} +% properly aligned version of sqrt for \zeta_y^2 +\newcommand{\SqrtZeta}[1]{\sqrt{\vphantom{\zeta_x^2}\smash[b]{#1}}} +\newcommand{\SqrtZetaXY}{\SqrtZeta{1 + \zeta_x^2 + \zeta_y^2}} \begin{document} @@ -176,7 +186,74 @@ generate it using graphical accelerator, and for other models it is to trivial to discuss. This field is an input for velocity potential solver. \subsection{Velocity potential computation} + +Since wavy surface generator produces discretely given elevation field we may +not use formula from linear wave theory to compute velocity potential; instead, +we derived a formula for arbitrary surface for inviscid incompressible fluid: +\begin{equation} + \label{eq:phi} + \phi(x,y,z,t) = \InverseFourier{ + \frac{ \Cosh{\smash{2\pi \WaveNumber (z+h)}} }{ 2\pi\WaveNumber } + \frac{ \Fourier{ f(x,y,t) }{u,v} } + { \Fourier{\mathcal{D}_3\left( x,y,\zeta\left(x,y\right) \right)}{u,v} } + }{x,y}, +\end{equation} +where +\begin{align*} + f(x,y,t)&=\zeta_t(x,y,t) / \left( i f_1(x,y) + i f_2(x,y) - f_3(x,y) \right),\\ + f_1(x,y)&={\zeta_x}/{\SqrtZetaXY}-\zeta_x, + \quad + \Fourier{\mathcal{D}_3\left(x,y,z\right)}{u,v}=\Cosh{\smash{2\pi\WaveNumber{}z}},\\ + f_2(x,y)&={\zeta_y}/{\SqrtZetaXY}-\zeta_y, + \quad + \WaveNumber = \sqrt{u^2+v^2},\\ + f_3(x,y)&=1/\SqrtZetaXY. +\end{align*} +Here \(\WaveVector\) is wave number, \(\zeta\)~--- wavy surface elevation, +\(h\)~--- water depth, \(\mathcal{F}\)~--- Fourier transform, \(\phi\)~--- +velocity potential. The formula is derived as a solution for continuity +equation with kinematic boundary condition +\begin{align} + & \nabla^2\phi = 0,\nonumber\\ + & \phi_t+\frac{1}{2} |\vec{\upsilon}|^2 + g\zeta=-\frac{p}{\rho}, & \text{at }z=\zeta(x,y,t),\label{eq:problem}\\ + & D\zeta = \nabla \phi \cdot \vec{n}, & \text{at }z=\zeta(x,y,t),\nonumber +\end{align} +without assumptions of linear wave theory (wave length is much larger than wave +height). Hence it can be used for arbitrary-amplitude ocean waves. Here the +first equation is continuity equation, the second is dynamic boundary +condition, and the last one is kinematic boundary condition; \(p\)~--- +pressure, \(\rho\)~--- fluid density, +\(\vec{\upsilon}=(\phi_x,\phi_y,\phi_z)\)~--- velocity vector, \(g\)~--- +acceleration of gravity, and \(D\)~--- substantial (Lagrange) derivative. Since +we solve for \(\phi\), dynamic boundary condition becomes explicit formula for +pressure and is used to compute pressure force acting on a ship hull +(see~sec.~\ref{sec:pressure-force}). + +Formula~\eqref{eq:phi} converges when summation goes over a range of wave +numbers that are actually present in discretely given wavy surface. This range +is determined numerically by finding crests and troughs for each spatial +dimension of the wavy surface with polynomial interpolation and using these +values to determine wave length. For small-amplitude waves this approach gives +the same values of velocity potential field as direct application of the +formula from linear wave theory. + +Formula~\eqref{eq:phi} is particularly suitable for computation on a graphical +acelerator: it contains transcendental mathematical functions (complex +exponents) that help offset slow global memory loads and stores, it is explicit +which makes it easy to compute in parallel and it is written using Fourier +transforms that are efficient to compute on a graphical +accelerator~\cite{volkov2008fft}. + +This paper gives only a short description of the method, please refer +to~\cite{gankevich2018thesis,gankevich2018ocean} for in-depth study. + \subsection{Pressure force computation} +\label{sec:pressure-force} + +Wave pressure at any point under wavy surface is computed using dynamic +boundary condition from~\eqref{eq:problem} as an explicit formula. + +\subsection{Translational and angular motion computation} \section{Results} diff --git a/references.bib b/references.bib @@ -44,6 +44,16 @@ doi = {10.1007/s10055-008-0088-8} } +@TechReport{ volkov2008fft, + title = {Fitting {FFT} onto the {G80} architecture}, + author = {Volkov, Vasily and Kazian, Brian}, + institution = {University of California}, + year = {2008}, + month = {May}, + address = {Berkeley}, + number = {6} +} + @InProceedings{ varela2011interactive, title = {Interactive Simulation of Ship Motions in Random Seas based on Real Wave Spectra.},