OpenBEM
Open-source framework for electromagnetic simulation with the boundary element method.
Loading...
Searching...
No Matches
bem::rwg::ScalarSingleLayerProj< SrcIntegratorType > Class Template Reference

Class for computing the scalar single-layer potential projector. More...

#include <single_layer.hpp>

+ Inheritance diagram for bem::rwg::ScalarSingleLayerProj< SrcIntegratorType >:

Detailed Description

template<typename SrcIntegratorType = SrcStrategic<>>
class bem::rwg::ScalarSingleLayerProj< SrcIntegratorType >

Class for computing the scalar single-layer potential projector.

Definition at line 97 of file single_layer.hpp.

Constructor & Destructor Documentation

◆ ScalarSingleLayerProj()

template<typename SrcIntegratorType = SrcStrategic<>>
bem::rwg::ScalarSingleLayerProj< SrcIntegratorType >::ScalarSingleLayerProj ( const SrcIntegratorType  src_integrator = SrcStrategic<>())
inline

Constructs a ScalarSingleLayerProj object with a specified integration object.

Parameters
[in]src_integrator- Integration object for the source triangle (optional).

Definition at line 111 of file single_layer.hpp.

Member Function Documentation

◆ compute()

EigMatXN< Complex, 1 > bem::rwg::ScalarSingleLayerProj< SrcIntegratorType >::compute ( const Complex  k,
ConstEigRef< EigMatNX< Float, 3 > >  obs_points,
const Triangle< 3 > &  src_tri 
)
overridevirtual

Computes the scalar single-layer projector.

Parameters
[in]k- Complex wavenumber.
[in]obs_points- Observation coordinates on which to project the generated field.
[in]src_tri- Source triangle.
Returns
Projected field at each observation point, for each source triangle edge.

Computes

\[ \int_{\mathrm{src\_tri}} d\mathcal{S}'\,G(k, \vec{r}, \vec{r}\,')\,h(\vec{r}\,') \]

where \( G(k, \vec{r}, \vec{r}\,') \) is a scalar kernel, and \( h(\vec{r}) \) is the pulse function associated with the source triangle. Rows of the output matrix correspond to observation points.

Implements bem::rwg::ProjectorBase< 1 >.

Definition at line 64 of file single_layer.tpp.

◆ transform_coordinates()

static void bem::rwg::ProjectorBase< src_num_dof >::transform_coordinates ( EigMatNX< Float, 3 > &  obs_points_local,
Triangle< 2 > &  src_tri_local,
ConstEigRef< EigMatNX< Float, 3 > >  obs_points,
const Triangle< 3 > &  src_tri 
)
inlinestaticinherited

Transforms the coordinates of the observation points and source triangle into a local coordinate system defined by the source triangle.

Parameters
[out]obs_points_local- Observation points in the source's local coordinate system.
[out]src_tri_local- Source triangle in its local coordinate system.
[in]obs_points- Original observation points.
[in]src_tri- Original source triangle.

Definition at line 74 of file base.hpp.


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