top of page

Features

EMerge is designed to do simulation setup, CAD modelling, meshing, physics setup, solving and post-processing all within Python in a compact efficient human readable design.

What is currently implemented in the EMerge FEM RF solver.

GMSH & OpenCASCADE integration

EMerge uses GMSH for mesh generation, with the OpenCASCADE kernel handling CAD. This functionality is wrapped in EMerge’s own class system, making interaction and manipulation much simpler for the user.

Microwave / RF physics + Heat Conduction

EMerge uses various first and second second-order edge element (rotational and gradient) basis function implementation of the time-harmonic EM wave equation. It can handle both frequency-domain studies and eigenmode analysis.
EMerge also includes a heat-conduction solver with one-way coupled multiphysics.

Boundary Conditions

The boundary condition options in EMerge keep growing. Currently available are: PEC, PMC, Absorbing Boundary, Wave Port, Lumped Port, Periodic Boundaries, Surface Impedance, Scattered Field, Thin Conductor and Floquet Port.

3D view and Post Processing

Solutions from frequency-domain sweeps return scalars like S-parameters and field data, which can be easily interpolated at arbitrary coordinates. Far-field computations are also supported, with or without symmetry planes.

For 3D visualization, EMerge uses PyVista. Its simplified interface makes it easy to add objects, port modes, fields, cut planes, and iso-surfaces to a 3D view.

Multi-core and multi-threaded computing out of the box!

EMerge is built on the linear algebra solvers in SciPy. For direct solvers it relies on SuperLU, Intel’s PARDISO (x86 only), Accelerate, SPARTA, and NVIDIA’s cuDSS, while eigenmode solvers use ARPACK and LAPACK. 

​

Frequency-domain sweeps can be easily distributed across multiple cores or processes.

Geometry

Box, Cylinder, Coax, Horn, Cone, Sphere, Half Sphere, Polygons, Extrusion, Revolution, Pipes, Add, Subtract, Intersect, Embed, Stretch, Change coordinate system, Copy, Mirror

​

Plus advanced features:

 - PCB Layout/route tool

 - PML Box + Layers

 - Automated periodic cells

Boundary conditions

  • PEC

  • PMC

  • Absorbing Boundary (1st, 2nd order)

  • Port (wave, lumped, Floquet, rectangular waveguide, coax, modal with eigenmode solver, user defined)

  • Periodic​

  • Lumped Element

  • Surface Impedance/Material + Hammerstad-Jensen model

  • Thin metal conductor

Others

  • Adaptive mesh refinement.

  • Optimization and parameter sweeps.

  • Detailed manual mesh refinement.

  • Frequency/Coordinate dependent material properties (full tensors)

  • Material library with  300+ materials*

  • S-parameter sweep

  • Vector Fitting

  • Far-field 2D/3D with symmetry plane support

  • E and H field

  • Touchstone Export

  • Scattered field solver (RCS)

​

Performance

Performance matters. While it’s difficult to compete with software that’s been refined for decades, EMerge is still able to keep up in terms of solver performance.

​

EMerge supports both parallel and single threaded sparse direct solvers on all operating systems. It also supports CuDSS through Cupy and AMD and Apple GPUs through SPARTA.

​​

Adaptive mesh refinement since 3.0.0b1 is significantly faster.

Supported Direct Solvers

 

Having sparse direct solvers available on all platforms is crucial! EMerge runs on all platforms and supports other solvers if the appropriate modules are installed.

​

For more information on installing other solvers, check the user manual.

Solver
Windows (10/11, x86)
MacOS (ARM)
Linux (x86)
MacOS (x86)
SuperLU (Scipy)
x
x
x
x
PARDISO
x
x
x
MUMPS
x
UMFPACK
x
x
x
x
CuDSS
x
x
Apple Accellerate
x
SPARTA
x
x
x
x
bottom of page