bempp.api.operators.boundary.maxwell
¶
Interfaces to Maxwell operators.
Module Contents¶
Classes¶
Implementation of the OSRC DtN operator. |
Functions¶
|
Assemble the electric field boundary operator. |
|
Assemble the magnetic field boundary operator. |
|
Simplified version of multitrace operator assembly. |
|
|
|
Assemble the OSRC approximation to the NtD operator. |
- bempp.api.operators.boundary.maxwell.electric_field(domain, range_, dual_to_range, wavenumber, parameters=None, assembler='default_nonlocal', device_interface=None, precision=None)¶
Assemble the electric field boundary operator.
- bempp.api.operators.boundary.maxwell.magnetic_field(domain, range_, dual_to_range, wavenumber, parameters=None, assembler='default_nonlocal', device_interface=None, precision=None)¶
Assemble the magnetic field boundary operator.
- bempp.api.operators.boundary.maxwell.multitrace_operator(grid, wavenumber, epsilon_r=1, mu_r=1, target=None, space_type='magnetic_dual', parameters=None, assembler='default_nonlocal', device_interface=None, precision=None)¶
Simplified version of multitrace operator assembly.
Parameters¶
- gridGrid
Bempp grid object.
- wavenumbercomplex
A real or complex wavenumber
- epsilon_rfloat
Relative permittivity with respect to vacuum.
- mu_rfloat
Relative permeability with respect to vacuum.
- targetGrid
The grid for the range spaces. If target is None then target is set to the input grid (that is the domain grid).
- space_typestring
One of “all_rwg”, “all_bc”, “magnetic_dual” (default), “electric_dual”. These lead to the following choices of space, range, and dual_to_range: default - (RWG, RWG), (BC, BC), (SNC, SNC) all_dual - (BC, BC), (RWG, RWG), (RBC, RBC) magnetic_dual - (RWG, BC), (RWG, BC), (RBC, SNC) electric_dual - (BC, RWG), (BC, RWG), (SNC, RBC)
- parametersParameters
An optional parameters object.
- assemblerstring
The assembler type.
- device_interfaceDeviceInterface
The device interface object to be used.
- precisionstring
Either “single” or “double” for single or double precision mode.
Output¶
The Maxwell multitrace operator of the form [[M, E], [-E, M]], where M represens the magnetic and E the electric field boundary operators in the respective spaces defined through space_type. Note that the operators in the first and second row have different discretisations depending on the type of spaces used.
- bempp.api.operators.boundary.maxwell._multitrace_operator_impl(domain, range_, dual_to_range, wavenumber, epsilon_r=1, mu_r=1, parameters=None, assembler='default_nonlocal', device_interface=None, precision=None)¶
- class bempp.api.operators.boundary.maxwell._OsrcMtE(type, domains, ranges, dual_to_ranges, parameters, operator_options, device_interface=None, precision=None)¶
Implementation of the OSRC DtN operator.
- property descriptor¶
Operator descriptor.
- _matvec1(v)¶
- _matvec2(v)¶
- _assemble()¶
Assemble the operator.
- bempp.api.operators.boundary.maxwell.osrc_mte(domains, ranges, dual_to_ranges, wavenumber, npade=2, theta=_np.pi / 2.0, type=1, damped_wavenumber=None, parameters=None, device_interface=None, precision=None)¶
Assemble the OSRC approximation to the NtD operator.