|
OpenBEM
Open-source framework for electromagnetic simulation with the boundary element method.
|
Base class for generating RWG-based BEM operator matrices. More...
#include <base.hpp>
Base class for generating RWG-based BEM operator matrices.
| obs_num_dof | - Number of degrees of freedom associated with each observation triangle. |
| src_num_dof | - Number of degrees of freedom associated with each source triangle. |
|
inline |
Constructs an OperatorAssemblerBase for given observation and source meshes.
| [in] | obs_mesh | - Observation triangle mesh for which the operator matrix is to be assembled. |
| [in] | src_mesh | - Source triangle mesh for which the operator matrix is to be assembled. |
| [in] | elem_pairs | - Observation (first row) and source (second row) triangle index pairs for which the operator matrix is to be assembled. |
|
inline |
Constructs an OperatorAssemblerBase for given observation and source meshes.
| [in] | obs_mesh | - Observation triangle mesh for which the operator matrix is to be assembled. |
| [in] | src_mesh | - Source triangle mesh for which the operator matrix is to be assembled. |
|
inline |
Constructs an OperatorAssemblerBase for a given mesh.
| [in] | mesh | - Triangle mesh for which the operator matrix is to be assembled. |
| [in] | elem_pairs | - Observation (first row) and source (second row) triangle index pairs for which the operator matrix is to be assembled. |
|
inline |
Constructs an OperatorAssemblerBase for a given mesh.
| [in] | mesh | - Triangle mesh for which the operator matrix is to be assembled. |
|
inline |
Assembles the operator matrix for a given operator object and source and observation meshes.
| [out] | mat | - Matrix to store the assembled operator coefficients, with columns corresponding to source degrees of freedom, and rows corresponding to observation degrees of freedom. |
| [in] | op | - Operator object that computes the coefficients to be assembled into mat; must inherit from OperatorBase<obs_num_dof, src_num_dof>. |
| [in] | k | - Complex wavenumber. |
|
pure virtual |
Prepares the matrix for assembly (e.g., resizing and preallocation).
| [out] | mat | - Matrix to store the assembled operator coefficients, with columns corresponding to source degrees of freedom, and rows corresponding to observation degrees of freedom. |
Implemented in bem::rwg::EdgeOperatorAssembler, bem::rwg::FaceOperatorAssembler, bem::rwg::FaceEdgeOperatorAssembler, bem::rwg::EdgeFaceOperatorAssembler, and bem::rwg::VectorOperatorsAssembler.
|
pure virtual |
Fills operator values in the matrix based on source and observation meshes and degrees of freedom.
| [out] | mat | - Matrix to store the assembled operator coefficients, with columns corresponding to source degrees of freedom, and rows corresponding to observation degrees of freedom. |
| [in] | elem_pair | - Observation (first entry) and source (second entry) triangle index pair. |
| [in] | values | - Operator values for each pair of observation and source degrees of freedom. |
|
inlinestatic |
Generates all possible pairs of triangle indices for given observation and source triangle meshes.
| [in] | obs_mesh | - Observation triangle mesh. |
| [in] | src_mesh | - Source triangle mesh. |
|
inlinestatic |
Makes all possible pairs of triangle indices for given observation and source triangle indices.
| [in] | obs_elems | - Observation triangle indices. |
| [in] | src_elems | - Source triangle indices. |
|
protected |
|
protected |
|
protected |