Benefits

  • Facilitate advanced waveguide layout definitions and optimization tasks via a powerful Python interface

  • Model straight and bent waveguides and fibers made of dispersive, anisotropic, and lossy materials

  • Model multi-mode, multi-core, and photonic crystal optical fibers

  • Model uni- and bidirectional electromagnetic field propagation and scattering matrices for 2D and 3D photonic devices

  • Verify cross-sections and device layouts and analyze results using advanced and highly customizable visualization capabilities

  • Integrate with the circuit-level simulator VPIcomponentMaker Photonic Circuits

Features

  • Powerful Object-Oriented Python Interface

    • Python provides easy to learn and feature-rich object-oriented programming environment

    • User-friendly Jupyter Notebook environment allows combining interactive simulation scripts with results, figures, problem descriptions, and equations

    • Integration with the SciPy – ecosystem of Python open-source libraries enables advanced visualization and mathematical, scientific, and engineering computations
       
       
       
       

    User-friendly Python-based GUI


     

  • Full-Vectorial Finite-Difference Optical Mode Solvers

    • Full-vectorial finite-difference 2D mode solvers for straight and bent anisotropic and isotropic channel waveguides and fibers

    • Specialized finite-difference 1D mode solver for straight and bent planar waveguides

    • Support of nondiagonal anisotropy for straight waveguides

    • Handling of electric field singularities near sharp corners of plasmonic and high-index contrast waveguides

    • Calculation of guided and leaky modes (leakage to substrate, leakage due to bending)

    • Support of perfectly matched layer (PML) boundaries

    • Symmetric perfect electric or magnetic conductor (PEC, PMC) boundary conditions
       
       
       
       
       
       
       
       
       
       


     

  • BPM and EME Solvers for Modeling Photonic Devices

    • Calculation of electromagnetic field propagation in 2D and 3D photonic devices

    • Extraction of scattering matrices for multi-port photonic devices

    • Support of arbitrary excitation sources:
      • Port modes and their superpositions
      • Gaussian beams
      • User-defined fields
       
       
       
       
       


     

  • Beam Propagation Method (BPM)

    • Full-vectorial finite-difference 2D and 3D BPM schemes

    • Uni-directional field propagation

    • Paraxial and wide-angle approximations

    • Absorbing PMLs and transparent boundary conditions

    • Efficient for devices with low refractive index contrast and smoothly varying cross-sections

    • Application examples: tapers, S-bends, directional couplers, Y-splitters
       
       
       
       
       


     

  • Eigenmode Expansion (EME) Method

    • Based on full-vectorial finite-difference mode solvers

    • Bi-directional field propagation handling back reflections

    • Efficient for device length optimization, devices with high refractive index contrast and step-like varying cross-sections

    • Application examples: tapers, S-bends, directional couplers, Y-splitters
       
       
       
       
       
       
       
       
       
       


     

  • Dispersive, Lossy and Anisotropic Optical Materials

    • Single-line definition of dispersionless lossy optical materials

    • Native support of Sellmeier and Lorentz-Drude models of dispersive materials

    • Arbitrary frequency dependence of refractive index or permittivity, loss, and thermo-optic coefficient

    • Anisotropic optical materials (including gyrotropic birefringence and magneto-optic effect)

    • Library of predefined dispersive and thermo-optic materials (Air, Silicon, Silica, Si3N4, InP, LiNbO3, and standard metals)
       
       
       
       
       
       
       


     

  • Customizable Nonuniform Finite-Difference Meshing

    • Built-in adaptive quasi-uniform mesh

    • Uniform, quasi-uniform, and stretched meshes in user-defined layout areas

    • Arbitrary user-defined nonuniform meshes

    • Sub-pixel averaging of discretized dielectric constant
       
       
       
       


     

  • Flexible Layouts for Waveguides, Fibers and 3D Devices

    • Predefined 2D shapes: finite-area (circle, ellipse, rectangle, trapezium, polygon) and infinite-area (plane, half-plane, plane sector, layer, half-layer)

    • Predefined 3D shapes: finite-volume (cuboid, prism, cylinder) and infinite-volume (space, half-space, slab, half-slab)

    • Creating new complex 2D shapes by combining and modifying predefined shapes using Boolean operations, scaling, rotating, and mirroring

    • Creating new 3D shapes by parametric extrusion of finite-area 2D shapes along an arbitrary user-defined path

    • Custom graded-index layout objects for doped fibers and diffused waveguides

    • Advanced visualization of 2D and 3D shapes, layouts, and layout cross-sections
       
       
       
       


     

  • Parametric Modeling with Automated Sweeps

    • New interface class for mode solvers

    • Easy sweeping of wavelength and one more arbitrary model parameter (e.g., waveguide width, bend radius, mesh resolution, or refractive index)

    • Automated fitting or interpolation of sweep results

    • Plotting a mode property vs. the sweep parameter is easy—correct axis labels and legend entries are created automatically
       
       
       
       
       
       
       
       


     

  • Mode Properties Analysis

    • Immediate access to dispersive waveguide properties (group mode index, group velocity dispersion, and dispersion slope) as well as mode attenuation, effective mode area, and vectorial mode fields

    • Easy calculation of mode expansion coefficients, mode overlap integrals, optical coupling efficiency, mode power, and other characteristics

    • Electric and magnetic fields are Python objects natively supporting mathematical operations such as field superposition and scaling, scalar and vector products, etc.
       
       
       
       
       
       
       


     

  • Advanced Plotting Capabilities

    • Built-in field interpolation and visualization

    • Single-line plot methods for a quick overview of results

    • Highly configurable field plots supporting field lines, contour lines, density plots, etc.

    • Access to underlying Matplotlib objects for additional plot customization
       
       
       
       


     

  • Interoperability and Data Export

    • Export guided mode properties and device scattering matrices for use in VPIcomponentMaker Photonic Circuits

    • Save your results (guided modes and fields) to reuse them later without recalculation

    • Utilize Python's power and flexibility to postprocess and export results for the desired target application