JCMsuite is a software package with a focus on fast and highly accurate electromagnetic simulations. It is based on the Finite Element Method (FEM) and contains following modules:
JCMgeo: Finite Element mesh generator
JCMsolve: Simulation engine
JCMview: Viewer for mesh and computed fields
JCMcontrol: User interface
JCMsolve provides specialized algorithms for solving electromagnetic scattering problems, and for computing waveguide modes and eigenmodes of cavities and resonators. Further, it can be used to solve heat conduction and continuum mechanics projects and to study the interaction between temperature, stress, and electromagnetic fields.
This tutorial contains a collection of examples of electromagnetic simulation setups.
In order to run these examples or other projects,
JCMsuite can be controlled via a number of different environments:
JCMcontrol is a mainly text-based user interface, which is located in the installation directory. It allows to set up basic projects and to perform computations. In order to set up more complex simulation tasks, parameter scans, inverse problems, etc.
JCMsuite offers comfortable interfaces to Matlab, Octave and Python.
JCMsolve can also be used from command line.
Each example project of this tutorial includes a description of the physical and numerical setup. The corresponding project setup is provided for download and can be opened with
JCMcontrol. Some examples include more sophisticated setups, e.g. scans and are run via the Matlab interface.
The collection of examples is grouped according to the corresponding physics/engineering background. We encourage you to start with the Basic Examples which provide the basics of using
Download tutorial examples
Please download the archive EMTutorial.zip which contains the project files for all examples discussed in this tutorial.
The geometry of each simulated structure or device is described in a so-called layout file. The Geometry Tutorial provides a detailed description how to define the geometrical setup.
The tutorials Matlab Interface and Python Interface introduce the usage of
JCMsuite within Matlab and Python in detail.
The complete input tree of all input files is described in the Parameter Reference.