Boundary Element Method for a Fixed Body in Finite Depth

From WikiWaves
Jump to navigationJump to search


Introduction

We show how to solve for the wave scattering by a rigid body in constant Finite Depth using the Boundary Element Method.

Equations

The Standard Linear Wave Scattering Problem in Finite Depth for a fixed body is

[math]\displaystyle{ \begin{align} \Delta\phi &=0, &-h\lt z\lt 0,\,\,\mathbf{x} \in \Omega \\ \partial_z\phi &= 0, &z=-h, \\ \partial_z \phi &= \alpha \phi, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \end{align} }[/math]


(note that the last expression can be obtained from combining the expressions:

[math]\displaystyle{ \begin{align} \partial_z \phi &= -\mathrm{i} \omega \zeta, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \\ \mathrm{i} \omega \phi &= g\zeta, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \end{align} }[/math]

where [math]\displaystyle{ \alpha = \omega^2/g \, }[/math]) The body boundary condition for a rigid body is just

[math]\displaystyle{ \partial_{n}\phi=0,\ \ \mathbf{x}\in\partial\Omega_{\mathrm{B}}, }[/math]

The equation is subject to some radiation conditions at infinity. We assume the following. [math]\displaystyle{ \phi^{\mathrm{I}}\, }[/math] is a plane wave travelling in the [math]\displaystyle{ x }[/math] direction,

[math]\displaystyle{ \phi^{\mathrm{I}}(x,z)=A \phi_0(z) e^{\mathrm{i} k x} \, }[/math]

where [math]\displaystyle{ A }[/math] is the wave amplitude (in potential) [math]\displaystyle{ \mathrm{i} k }[/math] is the positive imaginary solution of the Dispersion Relation for a Free Surface (note we are assuming that the time dependence is of the form [math]\displaystyle{ \exp(-\mathrm{i}\omega t) }[/math]) and

[math]\displaystyle{ \phi_0(z) =\frac{\cosh k(z+h)}{\cosh k h} }[/math]

In two-dimensions the Sommerfeld Radiation Condition is

[math]\displaystyle{ \left( \frac{\partial}{\partial|x|} - \mathrm{i} k \right) (\phi-\phi^{\mathrm{{I}}})=0,\;\mathrm{{as\;}}|x|\rightarrow\infty\mathrm{.} }[/math]

where [math]\displaystyle{ \phi^{\mathrm{{I}}} }[/math] is the incident potential.

Solution Method

We divide the domain into three regions, [math]\displaystyle{ x\lt -l }[/math], [math]\displaystyle{ x\gt r }[/math], and [math]\displaystyle{ -l\lt x\lt r }[/math] so that the body surface is entirely in the finite region.

Solution in the finite region

We use the Boundary Element Method in the finite region.

Solution in the Semi-infinite Domains

We now solve Laplace's equation in the semi-infinite domains. First consider the domain on the left so that [math]\displaystyle{ \Omega = \left\{ x\lt -l,\;-h\leq z\leq 0\right\} }[/math] The equations are

[math]\displaystyle{ \begin{align} \Delta\phi &=0, &-h\lt z\lt 0,\,\,\mathbf{x} \in \Omega \\ \partial_z\phi &= 0, &z=-h, \\ \partial_z \phi &= \alpha \phi, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \end{align} }[/math]


(note that the last expression can be obtained from combining the expressions:

[math]\displaystyle{ \begin{align} \partial_z \phi &= -\mathrm{i} \omega \zeta, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \\ \mathrm{i} \omega \phi &= g\zeta, &z=0,\,\,\mathbf{x} \in \partial \Omega_{\mathrm{F}}, \end{align} }[/math]

where [math]\displaystyle{ \alpha = \omega^2/g \, }[/math]) We have the following explicit boundary conditions

[math]\displaystyle{ \phi =f\left( z\right) ,\;\;x=-\,l }[/math]

and

[math]\displaystyle{ \lim\limits_{x\rightarrow -\infty }\phi \left( x,z\right) = \phi_0 e^{-k_{0}x} +R\phi_0 e^{k_{0}x}, }[/math]

where [math]\displaystyle{ f\left( z\right) }[/math] is an arbitrary continuous function[math]\displaystyle{ . }[/math] Our aim is to find the outward normal derivative of the potential on [math]\displaystyle{ x=-l }[/math] as a function of [math]\displaystyle{ \tilde{\phi}\left( z\right) }[/math]. [math]\displaystyle{ \phi_0 }[/math] and [math]\displaystyle{ k_0 }[/math] will be defined shortly when we separate variables, but are equivalent to the Sommerfeld Radiation Condition.

Since the water depth is constant in these regions we can solve Laplace's equation by separation of variables.

Separation of variables for a free surface

We use separation of variables

We express the potential as

[math]\displaystyle{ \phi(x,z) = X(x)Z(z)\, }[/math]

and then Laplace's equation becomes

[math]\displaystyle{ \frac{X^{\prime\prime}}{X} = - \frac{Z^{\prime\prime}}{Z} = k^2 }[/math]

The separation of variables equation for deriving free surface eigenfunctions is as follows:

[math]\displaystyle{ Z^{\prime\prime} + k^2 Z =0. }[/math]

subject to the boundary conditions

[math]\displaystyle{ Z^{\prime}(-h) = 0 }[/math]

and

[math]\displaystyle{ Z^{\prime}(0) = \alpha Z(0) }[/math]

We can then use the boundary condition at [math]\displaystyle{ z=-h \, }[/math] to write

[math]\displaystyle{ Z = \frac{\cos k(z+h)}{\cos kh} }[/math]

where we have chosen the value of the coefficent so we have unit value at [math]\displaystyle{ z=0 }[/math]. The boundary condition at the free surface ([math]\displaystyle{ z=0 \, }[/math]) gives rise to:

[math]\displaystyle{ k\tan\left( kh\right) =-\alpha \, }[/math]

which is the Dispersion Relation for a Free Surface

The above equation is a transcendental equation. If we solve for all roots in the complex plane we find that the first root is a pair of imaginary roots. We denote the imaginary solutions of this equation by [math]\displaystyle{ k_{0}=\pm ik \, }[/math] and the positive real solutions by [math]\displaystyle{ k_{m} \, }[/math], [math]\displaystyle{ m\geq1 }[/math]. The [math]\displaystyle{ k \, }[/math] of the imaginary solution is the wavenumber. We put the imaginary roots back into the equation above and use the hyperbolic relations

[math]\displaystyle{ \cos ix = \cosh x, \quad \sin ix = i\sinh x, }[/math]

to arrive at the dispersion relation

[math]\displaystyle{ \alpha = k\tanh kh. }[/math]

We note that for a specified frequency [math]\displaystyle{ \omega \, }[/math] the equation determines the wavenumber [math]\displaystyle{ k \, }[/math].

Finally we define the function [math]\displaystyle{ Z(z) \, }[/math] as

[math]\displaystyle{ \chi_{m}\left( z\right) =\frac{\cos k_{m}(z+h)}{\cos k_{m}h},\quad m\geq0 }[/math]

as the vertical eigenfunction of the potential in the open water region. From Sturm-Liouville theory the vertical eigenfunctions are orthogonal. They can be normalised to be orthonormal, but this has no advantages for a numerical implementation. It can be shown that

[math]\displaystyle{ \int\nolimits_{-h}^{0}\chi_{m}(z)\chi_{n}(z) \mathrm{d} z=A_{n}\delta_{mn} }[/math]

where

[math]\displaystyle{ A_{n}=\frac{1}{2}\left( \frac{\cos k_{n}h\sin k_{n}h+k_{n}h}{k_{n}\cos ^{2}k_{n}h}\right). }[/math]

Expansion of the potential

This gives us the following expression for the potential in the region [math]\displaystyle{ \Omega }[/math]

[math]\displaystyle{ \phi \left( x,z\right) = \phi_0(z)e^{-k_0 x} +\sum_{m=0}^{\infty } a_m \phi _{m}\left( z\right) e^{k_{m}\left( x+l\right) } }[/math]

where [math]\displaystyle{ a_m }[/math] can be found from [math]\displaystyle{ \left. \phi \right| _{x=-l} = f(z) }[/math] from the orthogonality of the vertical eigenfunctions. Therefore

[math]\displaystyle{ a_m +\delta_{m0}e^{k_0 l} = \frac{1}{A_m} \int_{-h}^{0} f(z) \phi_m(z) \mathrm{d}z }[/math]

The normal derivative of potential (with the normal outward from the interior region) we obtain

[math]\displaystyle{ \partial_n\left. \phi \right| _{x=-l} = -\partial_x \left. \phi \right| _{x=-l} = k_0 \phi_0(z)e^{k_0 l} - \sum_{m=0}^{\infty } k_m a_m \phi _{m}\left( z\right) }[/math]

If we define [math]\displaystyle{ \mathbf{Q} }[/math] as

[math]\displaystyle{ \mathbf{Q} \left[f\left( z\right) \right]= -\sum_{m=0}^{\infty } \frac{k_{m}}{A_m} \left\{ \int_{-h}^{0} f\left( s\right) \phi _{m}\left( s\right) \mathrm{d}s \right\} \phi _{m}\left( z\right) }[/math]

we can write

[math]\displaystyle{ \partial_n \left. \phi \right| _{x=-l} =\mathbf{Q} \left[ f(z) \right] + 2k_0 \phi_0e^{k_0l}, }[/math]

Similarly, we now consider the potential in the region [math]\displaystyle{ \Omega = \left\{ x\gt r,\;-h\leq z\leq 0\right\} }[/math] which satisfies exactly the equations as before except the boundary condition is

[math]\displaystyle{ \lim\limits_{x\rightarrow \infty }\phi \left( x,z\right) = \phi_0 T e^{-k_{0}x} }[/math]

We solve again by separation of variables and obtain

[math]\displaystyle{ \left. \partial_n \phi \right| _{x=r}= \left. \partial_x \phi \right| _{x=r}=\mathbf{Q}\left[f\left( z\right)\right] , }[/math]

where the outward normal is with respect to the inner domain as before. Note that, if the depth is different on each side then the matrix [math]\displaystyle{ \mathbf{Q} }[/math] will be different (since we need to use a different depth solving the Dispersion Relation for a Free Surface etc.)

Boundary Element Method

We have reduced the problem to Laplace's equation in a finite domain subject to certain boundary conditions. These boundary conditions give the outward normal derivative of the potential as a function of the potential but this is not always a point-wise condition; on some boundaries it is given by an integral equation. We must solve both Laplace's equation and the integral equations numerically. We will solve Laplace's equation by the Boundary Element Method and the integral equations by numerical integration. However, the same discretisation of the boundary will be used for both numerical solutions. We solve Laplace's equation by a modified constant panel method which reduces it to the following matrix equation

[math]\displaystyle{ \frac{1}{2}\vec{\phi}=\partial_n\mathbf{G}\vec{\phi}-\mathbf{G}\partial_n\vec{\phi}. }[/math]

where [math]\displaystyle{ \vec{\phi}\mathcal{\ } }[/math]and [math]\displaystyle{ \partial_n\vec{\phi} }[/math] are vectors which approximate the potential and its normal derivative around the boundary [math]\displaystyle{ \partial \Omega }[/math], and [math]\displaystyle{ \mathbf{G} }[/math] and [math]\displaystyle{ \mathbf{G}_{n} }[/math] are matrices corresponding to the Green function and the outward normal derivative of the Green function respectively. The method used to calculate the elements of the matrices [math]\displaystyle{ \mathbf{G} }[/math] and [math]\displaystyle{ \partial_n\mathbf{G} }[/math] can be found in Boundary Element Method.

The outward normal derivative of the potential, [math]\displaystyle{ \partial_n\vec{\phi}, }[/math] and the potential, [math]\displaystyle{ \vec{\phi}, }[/math] are related by the conditions on the boundary [math]\displaystyle{ \partial \Omega }[/math]. This can be expressed as

[math]\displaystyle{ \partial_n\vec{\phi}=\mathbf{A}\,\vec{\phi}-\vec{f}, }[/math]

where [math]\displaystyle{ \mathbf{A} }[/math] is the block diagonal matrix given by

[math]\displaystyle{ \mathbf{A}\mathbb{=}\left[ \begin{matrix} \mathbf{Q} & & & \\ & \mathbf{Q} & & \\ & & \alpha \,\mathbf{I} & \\ & & & 0 \end{matrix} \right] , }[/math]

where we have separated the boundaries to the semi-infinite domains, the free surface and the sea floor and body boundary. [math]\displaystyle{ \mathbf{Q} }[/math] is a matrix approximation of the integral operator of the same name and [math]\displaystyle{ \vec{f} }[/math] is the vector

[math]\displaystyle{ \vec{f}=\left[ \begin{matrix} -2k_{0}\phi_0 \,e^{k_{0}l } \\ 0 \\ \vdots \\ 0 \end{matrix} \right] . }[/math]

We obtain the following matrix equation for the potential

[math]\displaystyle{ \left( \frac{1}{2}\ \mathbf{I}-\mathbf{G}_{n}+\mathbf{GA}\right) \vec{\phi}=\mathbf{G} \vec{f} }[/math]

which can be solved straightforwardly. The reflection and transmission coefficients are calculated from the solution.

Numerical Calculation of [math]\displaystyle{ \mathbf{Q} }[/math]

We begin by truncating to a finite number ([math]\displaystyle{ N }[/math]) of evanescent modes,

[math]\displaystyle{ \mathbf{Q}\left[ f \right] =-\sum_{m=0}^{N}k_{m}\int_{-h}^{0} f\left( s\right) \phi_{m}\left( s\right) \mathrm{d}s \frac{\phi _{m} \left( z\right)}{A_m} . }[/math]

We calculate the integral with the same panels as we used to approximate the integrals of the Green function and its normal derivative . Similarly, we assume that [math]\displaystyle{ f(s) \, }[/math] is constant over each panel and integrate [math]\displaystyle{ \phi _{m}\left( s\right) }[/math] exactly. This gives us the following matrix factorisation of [math]\displaystyle{ \mathbf{Q} }[/math]

[math]\displaystyle{ \mathbf{Q}[f]=\mathbf{S}\,\mathbf{R}\,[f]. }[/math]

The components of the matrices [math]\displaystyle{ \mathbf{S} }[/math] and [math]\displaystyle{ \mathbf{R} }[/math] are

[math]\displaystyle{ s_{jm} = -k_m\phi _{m}\left( z_{j}\right) , }[/math]
[math]\displaystyle{ r_{mj} = \frac{1}{A_m} \int_{z_{j}-\Delta x/2}^{z_{j}+\Delta x/2}\phi _{m}\left( s\right) \mathrm{d}s }[/math]

Reflection and Transmission Coefficients

Recall that our Sommerfeld radiation condition can be expressed in the form

[math]\displaystyle{ \lim\limits_{x\rightarrow -\infty }\phi \left( x,z\right) = \phi_0 e^{-k_{0}x} +R\phi_0 e^{k_{0}x}, }[/math]

and that the potential in the region [math]\displaystyle{ \Omega }[/math] is of the form

[math]\displaystyle{ \phi \left( x,z\right) = \phi_0(z)e^{-k_0 x} +\sum_{m=0}^{\infty } a_m \phi _{m}\left( z\right) e^{k_{m}\left( x+l\right) }. }[/math]

Note that for this series, if [math]\displaystyle{ m=0 }[/math], then [math]\displaystyle{ k_m }[/math] is imaginary, giving rise to a propagating wave. For [math]\displaystyle{ m \geq 1 }[/math], there is only a local contribution to this propagating wave -- in the extremes, there is no contribution (evanescent modes).


So when looking at the Reflected and Transmitted waves, we only consider [math]\displaystyle{ m=0 }[/math], that is,

[math]\displaystyle{ \begin{align} \lim\limits_{x\rightarrow -\infty }\phi &= \phi_0 e^{-k_{0}x} + a_0 \phi_0 e^{k_0 (x+l)} ,\\ &= \phi_0 e^{-k_{0}x} +R\phi_0 e^{k_{0}x}. \\ \end{align} }[/math]


Consequently, it is straightforward to see that [math]\displaystyle{ R = a_0 e^{k_0 l} }[/math]. Recall from earlier that

[math]\displaystyle{ a_m +\delta_{m0}e^{k_0 l} = \frac{1}{A_m} \int_{-h}^{0} f(z) \phi_m(z) \mathrm{d}z, }[/math]

therefore,

[math]\displaystyle{ a_0= \left[ \frac{1}{A_0} \int_{-h}^{0} f(z) \phi_0(z) \mathrm{d}z - e^{k_0 l} \right]. }[/math]

However, we make use of the fact that [math]\displaystyle{ \mathbf{Q}[f]=\mathbf{S}\,\mathbf{R}\,[f] }[/math], where the components of the matrix [math]\displaystyle{ \mathbf{R} }[/math] is

[math]\displaystyle{ r_{mj} = \frac{1}{A_m} \int_{z_{j}-\Delta x/2}^{z_{j}+\Delta x/2}\phi _{m}\left( s\right) \mathrm{d}s, }[/math]

which admits the representation

[math]\displaystyle{ a_0= \left[ \sum_{j} r_{0j} f(z_j) - e^{k_0 l} \right]. }[/math]


Consequently,

[math]\displaystyle{ R= \left[ \sum_{j} r_{0j} f(z_j) - e^{k_0 l} \right]e^{k_0 l}. }[/math]


So in summary, if we multiply the potential at the left (after subtracting the incident wave) and the right by [math]\displaystyle{ \mathbf{R} }[/math] we can calculate the coefficients in the eigenfunction expansion, and hence determine the reflection and transmission coefficient. where [math]\displaystyle{ z_{j} }[/math] is the value of the [math]\displaystyle{ z }[/math] coordinate in the centre of the panel and [math]\displaystyle{ \Delta x }[/math] is the panel length.

Reflection and Transmission Coefficients

Recall that our Sommerfeld radiation condition can be expressed in the form

[math]\displaystyle{ \lim\limits_{x\rightarrow -\infty }\phi \left( x,z\right) = \phi_0 e^{-k_{0}x} +R\phi_0 e^{k_{0}x}, }[/math]

and that the potential in the region [math]\displaystyle{ \Omega }[/math] is of the form

[math]\displaystyle{ \phi \left( x,z\right) = \phi_0(z)e^{-k_0 x} +\sum_{m=0}^{\infty } a_m \phi _{m}\left( z\right) e^{k_{m}\left( x+l\right) }. }[/math]

Note that for this series, if [math]\displaystyle{ m=0 }[/math], then [math]\displaystyle{ k_m }[/math] is imaginary, giving rise to a propagating wave. For [math]\displaystyle{ m \geq 1 }[/math], there is only a local contribution to this propagating wave -- in the extremes, there is no contribution (evanescent modes).


So when looking at the Reflected and Transmitted waves, we only consider [math]\displaystyle{ m=0 }[/math], that is,

[math]\displaystyle{ \begin{align} \lim\limits_{x\rightarrow -\infty }\phi &= \phi_0 e^{-k_{0}x} + a_0 \phi_0 e^{k_0 (x+l)} ,\\ &= \phi_0 e^{-k_{0}x} +R\phi_0 e^{k_{0}x}. \\ \end{align} }[/math]


Consequently, it is straightforward to see that [math]\displaystyle{ R = a_0 e^{k_0 l} }[/math]. Recall from earlier that

[math]\displaystyle{ a_m +\delta_{m0}e^{k_0 l} = \frac{1}{A_m} \int_{-h}^{0} f(z) \phi_m(z) \mathrm{d}z, }[/math]

therefore,

[math]\displaystyle{ a_0= \left[ \frac{1}{A_0} \int_{-h}^{0} f(z) \phi_0(z) \mathrm{d}z - e^{k_0 l} \right]. }[/math]

However, we make use of the fact that [math]\displaystyle{ \mathbf{Q}[f]=\mathbf{S}\,\mathbf{R}\,[f] }[/math], where the components of the matrix [math]\displaystyle{ \mathbf{R} }[/math] is

[math]\displaystyle{ r_{mj} = \frac{1}{A_m} \int_{z_{j}-\Delta x/2}^{z_{j}+\Delta x/2}\phi _{m}\left( s\right) \mathrm{d}s, }[/math]

which admits the representation

[math]\displaystyle{ a_0= \left[ \sum_{j} r_{0j} f(z_j) - e^{k_0 l} \right]. }[/math]


Consequently,

[math]\displaystyle{ R= \left[ \sum_{j} r_{0j} f(z_j) - e^{k_0 l} \right]e^{k_0 l}. }[/math]


So in summary, if we multiply the potential at the left (after subtracting the incident wave) and the right by [math]\displaystyle{ \mathbf{R} }[/math] we can calculate the coefficients in the eigenfunction expansion, and hence determine the reflection and transmission coefficient. where [math]\displaystyle{ z_{j} }[/math] is the value of the [math]\displaystyle{ z }[/math] coordinate in the centre of the panel and [math]\displaystyle{ \Delta x }[/math] is the panel length.

Singularity Expansion Method

The matrix equation for the potential

[math]\displaystyle{ \left( \frac{1}{2}\ \mathbf{I}-\mathbf{G}_{n}+\mathbf{GA}\right) \vec{\phi}=\mathbf{G} \vec{f} }[/math]

can be rewritten as

[math]\displaystyle{ \mathbf{M}(k) \mathbf{x}=\mathbf{F}(k) }[/math]

where [math]\displaystyle{ \mathbf{x} }[/math] represents the unknown potential values in the new notation. Resonant frequencies (or scattering frequencies) correspond to zero eigenvalues of the matrix [math]\displaystyle{ \mathbf{M}(k) }[/math] for a set of discrete points [math]\displaystyle{ k=k_p }[/math] in the upper half of the complex plane (due to the time dependence). Since

[math]\displaystyle{ \mathbf{x}=\left( \mathbf{M}(k)\right)^{-1}\mathbf{F}(k) }[/math]

then [math]\displaystyle{ \mathbf{x} }[/math] will be singular for these scattering frequencies. Each scattering frequency, corresponding to a zero eigenvalue of [math]\displaystyle{ \mathbf{M}(k) }[/math] will possess a corresponding eigenvector [math]\displaystyle{ \mathbf{u}_{k_p} }[/math] satisfying

[math]\displaystyle{ \mathbf{M}(k_p)\mathbf{u}_{k_p}=0 }[/math]

and also a related conjugate transpose eigenvector [math]\displaystyle{ \mathbf{u}^{*}_{k_p} }[/math] satisfying

[math]\displaystyle{ \mathbf{M}(k_p)^{A}\mathbf{u}^*_{k_p}=0. }[/math]

In the vicinity of a scattering frequency it can be shown that the vector of unknowns satisfies

[math]\displaystyle{ \mathbf{x}(k)\approx \frac{\langle \mathbf{F}(k_p),\mathbf{u}^*_{k^*_p} \rangle}{\langle\mathbf{u}_{k_p},\mathbf{M}'(k_p)\mathbf{u}^*_{k^*_p}\rangle}\frac{1}{k-k_p} }[/math]

and we define a corresponding mode shape as

[math]\displaystyle{ \zeta_{k_p}(x,k_p) =\frac{\langle \mathbf{F}(k_p),\mathbf{u}^*_{k^*_p} \rangle}{\langle\mathbf{u}_{k_p},\mathbf{M}'(k_p)\mathbf{u}^*_{k^*_p}\rangle}U(x) }[/math]

where [math]\displaystyle{ U(x) }[/math] is obtained

Matlab Code

Plot of the panels used to calculate the solution. Red shows the vertical boundaries, blue the surfaces with vanishing normal derivative and green the free surface.
Curve of [math]\displaystyle{ R }[/math] and [math]\displaystyle{ T }[/math] for the geometry shown in the previous figure


  • A program to solve for a fixed body fixed_body_twod.m
  • a program to plot the panels can be found here domainplot.m
  • a program to generate the panels for two circles can be found here semicircles_two.m
  • a program to calculate the solution for a specific geometry (with two plots as output as shown) can be found here wave_bem_example.m

Additional code

This program requires