OpenBEM
Open-source framework for electromagnetic simulation with the boundary element method.
Loading...
Searching...
No Matches
bem::HGF Class Referenceabstract

Class for computing the scalar Green's function for homogeneous, linear, and isotropic materials. More...

#include <hgf.hpp>

+ Inheritance diagram for bem::HGF:

Detailed Description

Class for computing the scalar Green's function for homogeneous, linear, and isotropic materials.

Definition at line 36 of file hgf.hpp.

Member Function Documentation

◆ kernel() [1/2]

Complex bem::HGF::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.

Parameters
[in]r_obs- Observer position vector.
[in]r_src- Source position vector.
[in]k- Complex wavenumber.
Returns
Kernel value.

Computes

\[ \frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{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.

Definition at line 31 of file hgf.cpp.

◆ grad_kernel() [1/2]

EigColVecN< Complex, 3 > bem::HGF::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.

Parameters
[in]r_obs- Observer position vector.
[in]r_src- Source position vector.
[in]k- Complex wavenumber.
Returns
Components of the gradient of the kernel.

Computes

\[ \nabla\left(\frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{4\pi|\vec{r} - \vec{r}\,'|}\right) = -(\vec{r} - \vec{r}\,')\left(1 + jk|\vec{r} - \vec{r}\,'|\right) \frac{e^{-jk|\vec{r} - \vec{r}\,'|}}{4\pi|\vec{r} - \vec{r}\,'|^3} \]

where \( \vec{r} \) is the observer position vector, \( \vec{r}\,' \) is the source position vector, and \( k \) is the complex wavenumber.

Definition at line 42 of file hgf.cpp.

◆ kernel() [2/2]

virtual Complex bem::ScalarKernelBase< dim >::kernel ( ConstEigRef< EigColVecN< Float, dim > >  r_obs,
ConstEigRef< EigColVecN< Float, dim > >  r_src,
const Complex  k 
) const
pure virtualinherited

Computes the scalar kernel for given observation and source points.

Parameters
[in]r_obs- Observer position vector.
[in]r_src- Source position vector.
[in]k- Complex wavenumber.
Returns
Scalar kernel value.

◆ grad_kernel() [2/2]

virtual EigColVecN< Complex, dim > bem::ScalarKernelBase< dim >::grad_kernel ( ConstEigRef< EigColVecN< Float, dim > >  r_obs,
ConstEigRef< EigColVecN< Float, dim > >  r_src,
const Complex  k 
) const
pure virtualinherited

Computes the gradient of the scalar kernel for given observation and source points.

Parameters
[in]r_obs- Observer position vector.
[in]r_src- Source position vector.
[in]k- Complex wavenumber.
Returns
Components of the gradient of the scalar kernel.

The documentation for this class was generated from the following files: