Class to setup Lumerical EME Simulation jobs using the MODE engine.
For the tutorial, please check Ansys Lumerical EME tutorial.
geometry: SimulationGeometry, required
The geometrical setup (objects, materials, …) we want to simulate
env: dict, optional
Environment variables to pass when launching the simulation.
headless: ( bool, bool_, bool or int ), optional
Don’t launch Lumerical’s user interface when calculating results
lumerical_exe_path: ( str ), optional, *None allowed*
Path to the Lumerical executable. If not specified then IPKISS will attempt to find the executable using a heuristic.
project_file_basename: str, optional
filename of Lumerical simulation without an extension eg. “my_new_lumerical_project”
project_folder: str, optional
Path to the Lumerical project files
safe_mode: ( ( bool, bool_, bool or int ) ), optional, *None allowed*
Launch Lumerical in safe mode. Only valid for Ansys Lumerical >= 2020.Default is False because safe mode disables writing to files (which we use to store the simulation results).
verbose: ( bool, bool_, bool or int ), optional
Log messages to the Lumerical console
monitors: list, optional
Monitors to capture the fields within a simulation
outputs: list, optional
Outputs of the simulation.
setup_macros: list and List with type restriction, allowed types: (<class ‘ipkiss3.simulation.device._simapi.Macro’>, <class ‘ipkiss3.simulation.device._simapi.MacroFile’>), optional
Tool-specific macros to run as part of the job setup.
solver_material_map: dict, optional
Mapping of ipkiss TECH.MATERIALS items onto names that represent a native material in a electromagnetic solver. If specified, this map is used to reuse the native materials in the solver. Default is empty, which means we use the information available from TECH.MATERIALS to create the different materials in the solver.
The engine to use with the solver
solver: str, locked
Engine used for the simulations
- In Lumerical MODE (EME) the ports need to be on the left or right side of the geometry. Therefore, if the
layout or explicitly bounding box of
i3.all.device_sim.SimulationGeometryextend from the ports, the bounding box will be clipped to the port locations.
- For the same reason, do not set the waveguide_growth property of
- Use the
i3.device_sim.lumerical_macros.eme_setup()macro to conveniently setup the longitudinal discretization (cell groups) in Lumerical MODE
- In Lumerical MODE (EME) the ports need to be on the left or right side of the geometry. Therefore, if the layout or explicitly bounding box of