Skip to main content

An all-in-one photonic electro-optic modulator design tool with complete modularity providing consistent optical mode solving, charge transport simulations, RF mode solving and transmission line analysis for arbitrary materials and cross sections.

Project description

Welcome to the Imodulator's repository

Imodulator is an all-in-one tool for the simulation of electro-optic phase modulators.
Simply define your geometry and materials, and then send the information to the various solvers available — including optical mode solver, RF mode solver with small-signal analysis, charge transport simulations, and electro-optic interaction simulations.

Check out the docs to see how to install and use this package.


Current Limitations

For the moment, the full functionality of the Imodulator package is limited to InGaAsP alloys lattice-matched to InP. However, when we consider the different parts of the simulator, we have various limitations that may or may not be relevant.

  • OpticalSimulatorFEMWELL:
    There is virtually no limitation here. As long as you provide a refractive index for each polygon, you're good to go.

  • OpticalSimulatorMODE:
    There is virtually no limitation here. As long as you provide a refractive index for each polygon, you're good to go.

  • RFSimulatorFEMWELL:
    There is also no limitation in this solver. You need only to input the material properties and it will work.

  • ChargeSimulatorSolcore:
    Solcore has been developed with solar cells in mind, and we have found that the internal library of material parameters was limiting for the purpose of this package.
    Therefore, we have made a connection between Solcore and openbandparams so that we can use arbitrary III–V alloys (excluding strain effects) in solving the Poisson–drift–diffusion equations.
    The limitation here is that we must work with III–V alloys only.
    Furthermore, the mobility values are calculated through Solcore via mobility_solcore, and we are therefore limited to:

    • InGaAs
    • InGaP
    • AlGaAs
    • InAlAs
    • InGaAsP
  • ChargeSimulatorNN:
    There isn’t really a limitation here. We only need to provide materials supported by NextNano.

  • ElectroOpticalModels:
    We have only included a model compatible with electro-optical effects that take place in InGaAsP alloys lattice-matched to InP. However, the software has been written to allow for any model, as long as we provide a

    formula

    function.


Where You Can Contribute

  • Generalization of openbandparams to include other semiconductor compounds such as Si and SiGe.
  • Generalization of mobility_solcore to include other mobility models explored in Sotoodeh et al., 2000.
    Alternatively, one could explore the inclusion of those models directly in openbandparams.
  • Include more electro-optic models.
  • Include surface impedance boundary conditions in the RF mode solver.
  • Include a 2D PDD solver based on sesame integrated with openbandparams
  • Improve the documentation (help wanted!).

If you have any questions please reach out to the Discussions tab and we can brainstorm some ideas.

Acknowledgements

This work was funded by the European Union through the QuGANTIC project and the Dutch National Growth Fund and PhotonDelta. Views and opinions expressed are however those of the author(s) only and do not necessarily reflect those of the European Union or the European Innovation Council. Neither the European Union nor the granting authority can be held responsible for them.

Contributors

  • Duarte Silva (Eindhoven University of Technology)
  • Ali Kaan Sünnetçioğlu (Eindhoven University of Technology)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imodulator-1.0.0.tar.gz (47.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

imodulator-1.0.0-py3-none-any.whl (28.0 kB view details)

Uploaded Python 3

File details

Details for the file imodulator-1.0.0.tar.gz.

File metadata

  • Download URL: imodulator-1.0.0.tar.gz
  • Upload date:
  • Size: 47.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.16

File hashes

Hashes for imodulator-1.0.0.tar.gz
Algorithm Hash digest
SHA256 e59ffe3ec85cd203fbb877a98af2eead294808083f3e4290919fa2605aa89188
MD5 401f841acf6629bd24014c78079b731f
BLAKE2b-256 762c257116eb785cff571ba274e3ae808e7ba9f04ece60680f8d80033f22c216

See more details on using hashes here.

File details

Details for the file imodulator-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: imodulator-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 28.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.16

File hashes

Hashes for imodulator-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a9e63dc79df17c56cb448f0a4dc20a791a40d50d206f441b1a0f6d29bc19e748
MD5 dcc575dcbc45499d400d904d9296d25a
BLAKE2b-256 1b56d52a4c339524bebd5767ab747dc680f937544a5b1e19665a37db63225573

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page