OpenBEM
Open-source framework for electromagnetic simulation with the boundary element method.
Loading...
Searching...
No Matches
bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof > Class Template Referenceabstract

Base class for generating RWG-based BEM projector matrices. More...

#include <base.hpp>

+ Inheritance diagram for bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >:

Detailed Description

template<uint8_t obs_dim, uint8_t src_num_dof>
class bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >

Base class for generating RWG-based BEM projector matrices.

Template Parameters
obs_dim- Dimension of the projected fields.
src_num_dof- Number of degrees of freedom associated with each source triangle.

Definition at line 289 of file base.hpp.

Constructor & Destructor Documentation

◆ ProjectorAssemblerBase() [1/2]

template<uint8_t obs_dim, uint8_t src_num_dof>
bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::ProjectorAssemblerBase ( const PointCloud< 3 > &  obs_cloud,
const TriangleMesh< 3 > &  src_mesh,
ConstEigRef< EigRowVec< Index > >  elems 
)
inline

Constructs a ProjectorAssemblerBase for given observation points and source mesh.

Parameters
[in]obs_cloud- Observation point cloud on which to project fields.
[in]src_mesh- Source triangle mesh for which the projector matrix is to be assembled.
[in]elems- Source triangle indices for which the projector matrix is to be assembled.

Definition at line 303 of file base.hpp.

◆ ProjectorAssemblerBase() [2/2]

template<uint8_t obs_dim, uint8_t src_num_dof>
bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::ProjectorAssemblerBase ( const PointCloud< 3 > &  obs_cloud,
const TriangleMesh< 3 > &  src_mesh 
)
inline

Constructs a ProjectorAssemblerBase for given observation points and source mesh.

Parameters
[in]obs_cloud- Observation point cloud on which to project fields.
[in]src_mesh- Source triangle mesh for which the projector matrix is to be assembled.

Definition at line 318 of file base.hpp.

Member Function Documentation

◆ assemble()

template<uint8_t obs_dim, uint8_t src_num_dof>
virtual void bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::assemble ( MatrixBase< Complex > &  mat,
ProjectorBase< src_num_dof > &  op,
const Complex  k 
)
pure virtual

Assembles the projector matrix for a given projector object, source mesh, and observation points.

Parameters
[out]mat- Matrix to store the assembled projector coefficients, with columns corresponding to source degrees of freedom, and rows corresponding to observation points.
[in]op- Projector object that computes the coefficients to be assembled into mat.
[in]k- Complex wavenumber.

Member Data Documentation

◆ obs_cloud_

template<uint8_t obs_dim, uint8_t src_num_dof>
const PointCloud<3>& bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::obs_cloud_
protected

Definition at line 343 of file base.hpp.

◆ src_mesh_

template<uint8_t obs_dim, uint8_t src_num_dof>
const TriangleMesh<3>& bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::src_mesh_
protected

Definition at line 344 of file base.hpp.

◆ elems_

template<uint8_t obs_dim, uint8_t src_num_dof>
const EigRowVec<Index> bem::rwg::ProjectorAssemblerBase< obs_dim, src_num_dof >::elems_
protected

Definition at line 345 of file base.hpp.


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