meow.fde package#

FDE Implementations & Backends

Submodules#

FDE Lumerical Backend

get_sim(**kwargs)[source]#
create_lumerical_geometries(sim, structures, env, unit)[source]#
Parameters:
compute_modes_lumerical(cs, num_modes=10, sim=None, unit=1e-06)[source]#

compute ``Modes` for a given ``FdeSpec` (Lumerical backend)

Parameters:
  • sim – the lumerical simulation object

  • spec – The FDE simulation specification

  • unit (float) – Conversion factor between MEOW unit (probably um) and Lumerical unit (probably m).

  • cs (CrossSection)

  • num_modes (PositiveInt)

set_sim(sim)[source]#

FDE Tidy3d backend (default backend for MEOW)

compute_modes_tidy3d(cs, num_modes=10, target_neff=None, precision='double', pml_mode_threshold=1.0)[source]#

compute Modes for a given CrossSection

Parameters:
  • cs (CrossSection) – The CrossSection to calculate the modes for

  • num_modes (PositiveInt) – Number of modes returned by mode solver.

  • target_neff (PositiveFloat | None) – Guess for initial effective index of the mode.

  • pml_mode_threshold (float) – If the mode has more than pml_mode_threshold part of its energy in the PML, it will be removed. default: 1.0 = 100% = no fitering.

  • precision (Literal['single', 'double'])

Return type:

list[Mode]