18#ifndef BEM_RWG_INTEQ_TMFIE_H
19#define BEM_RWG_INTEQ_TMFIE_H
58template <
typename MatrixType = EigenDenseMatrix<Complex>>
123 T.scale(-(
J * two_pi *
f * eps + sigma));
138 if (base::flip_normals_)
167 MatrixType
inc (base::obs_mesh_.num_edges(),
exc.num_excitations());
220 T.scale(-(
J * two_pi *
f * eps + sigma));
Class defining a general material with a constant (zero or non-zero) electrical conductivity and real...
virtual Complex eps() const
Returns the permittivity.
virtual Complex k(const Float f) const
Returns the frequency-dependent complex wavenumber.
virtual Float sigma() const
Returns the electrical conductivity.
Class for generating excitation matrices for RWG-based BEM systems with RWG testing functions.
Class for generating operator matrices for RWG observation and source functions.
Base class defining an RWG-based integral equation.
void assemble(MatrixBase< Complex > &mat, OperatorType op, const Complex k)
Assembles the operator matrix for a given operator object and source and observation meshes.
Class defining the RWG-based TMFIE.
MatrixType m_matrix(const Float f, const Material &material)
Returns the operator matrix associated with the magnetic surface current density.
MatrixType j_matrix(const Float f, const Material &material)
Returns the operator matrix associated with the electric surface current density.
MatrixType m_projector(const Float f, const Material &material, const PointCloud< 3 > &points)
Returns the projector matrix associated with the magnetic surface current density.
void set_operators(const VectorHypersingularOp<> &op_T, const VectorDoubleLayerPvOp<> &op_K)
Sets custom operators for the Tmfie object.
MatrixType exc_matrix(const Float f, const Material &material, ExcitationBase< 3 > &exc)
Returns the excitation matrix for a given excitation operator.
MatrixType id_matrix()
Returns the identity operator matrix associated with the electric surface current density.
MatrixType j_projector(const Float f, const Material &material, const PointCloud< 3 > &points)
Returns the projector matrix associated with the electric surface current density.
const Complex J
Imaginary unit.
Eigen::Matrix< T, 1, Eigen::Dynamic > EigRowVec
Dynamic-size row vector containing type T.
double Float
Floating point number.
std::complex< Float > Complex
Complex floating point number.
Eigen::Matrix< T, N, 1 > EigColVecN
Fixed-size column vector of size N containing type T.
Namespace for RWG-based BEM functionality.