|
OpenBEM
Open-source framework for electromagnetic simulation with the boundary element method.
|
Class for computing the scalar Green's function for homogeneous, linear, and isotropic materials, with the singular term(s) explicitly subtracted out. More...
#include <hgf.hpp>
Inheritance diagram for bem::SingularitySubtractedHGF:Class for computing the scalar Green's function for homogeneous, linear, and isotropic materials, with the singular term(s) explicitly subtracted out.
| Complex bem::SingularitySubtractedHGF::kernel | ( | ConstEigRef< EigColVecN< Float, 3 > > | r_obs, |
| ConstEigRef< EigColVecN< Float, 3 > > | r_src, | ||
| const Complex | k | ||
| ) | const |
Computes the kernel for given observation and source points.
| [in] | r_obs | - Observer position vector. |
| [in] | r_src | - Source position vector. |
| [in] | k | - Complex wavenumber. |
Computes
\[ \frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{4\pi|\vec{r} - \vec{r}\,'|} - \frac{1}{4\pi|\vec{r} - \vec{r}\,'|} \]
where \( \vec{r} \) is the observer position vector, \( \vec{r}\,' \) is the source position vector, and \( k \) is the complex wavenumber.
| EigColVecN< Complex, 3 > bem::SingularitySubtractedHGF::grad_kernel | ( | ConstEigRef< EigColVecN< Float, 3 > > | r_obs, |
| ConstEigRef< EigColVecN< Float, 3 > > | r_src, | ||
| const Complex | k | ||
| ) | const |
Computes the gradient of the kernel for given observation and source points.
| [in] | r_obs | - Observer position vector. |
| [in] | r_src | - Source position vector. |
| [in] | k | - Complex wavenumber. |
Computes
\begin{align*} \nabla\left(\frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{4\pi|\vec{r} - \vec{r}\,'|} - \frac{1}{4\pi|\vec{r} - \vec{r}\,'|}\right) &=\\ -(\vec{r} - \vec{r}\,')&\left[\left(1 + jk|\vec{r} - \vec{r}\,'|\right) \frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{4\pi|\vec{r} - \vec{r}\,'|^3} - \frac{1}{4\pi|\vec{r} - \vec{r}\,'|^3} - \left(\frac{1}{2}\right) \frac{k^2}{4\pi|\vec{r} - \vec{r}\,'|}\right] \end{align*}
where \( \vec{r} \) is the observer position vector, \( \vec{r}\,' \) is the source position vector, and \( k \) is the complex wavenumber.
|
pure virtualinherited |
Computes the scalar kernel for given observation and source points.
| [in] | r_obs | - Observer position vector. |
| [in] | r_src | - Source position vector. |
| [in] | k | - Complex wavenumber. |
|
pure virtualinherited |
Computes the gradient of the scalar kernel for given observation and source points.
| [in] | r_obs | - Observer position vector. |
| [in] | r_src | - Source position vector. |
| [in] | k | - Complex wavenumber. |