18#ifndef BEM_RWG_INTEQ_NEFIE_H
19#define BEM_RWG_INTEQ_NEFIE_H
57template <
typename MatrixType = EigenDenseMatrix<Complex>>
99 Tr.scale(
J * two_pi *
f * mu);
101 if (base::flip_normals_)
124 if (base::flip_normals_)
169 MatrixType
inc (base::obs_mesh_.num_edges(),
exc.num_excitations());
172 if (!base::flip_normals_)
200 T.scale(-
J * two_pi *
f * mu);
Class defining a general material with a constant (zero or non-zero) electrical conductivity and real...
virtual Complex k(const Float f) const
Returns the frequency-dependent complex wavenumber.
virtual Complex mu() const
Returns the permeability.
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.
Class defining the RWG-based NEFIE.
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.
MatrixType j_projector(const Float f, const Material &material, const PointCloud< 3 > &points)
Returns the projector matrix associated with the electric surface current density.
MatrixType m_matrix(const Float f, const Material &material)
Returns the operator matrix associated with the magnetic surface current density.
MatrixType id_matrix()
Returns the identity operator matrix associated with the magnetic surface current density.
MatrixType exc_matrix(const Float f, const Material &material, ExcitationBase< 3 > &exc)
Returns the excitation matrix for a given excitation operator.
void set_operators(const RotVectorHypersingularOp<> &op_Tr, const RotVectorDoubleLayerPvOp<> &op_Kr)
Sets custom operators for the Nefie object.
void assemble(MatrixBase< Complex > &mat, OperatorType op, const Complex k)
Assembles the operator matrix for a given operator object and source and observation meshes.
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.