Python connection for EMode
Project description
emodeconnection
Python interface for EMode — a photonics simulation platform for waveguide mode solving, propagation, and analysis.
Requirements
- Python 3.10 or higher
- An active EMode account and license
- EMode installed on your system (see Installation)
Installation
pip install emodeconnection
Quick Start
import emodeconnection as emc
# Open the EMode login window (only required on first use)
emc.EModeLogin()
## Connect and initialize EMode
em = emc.EMode(save = False)
## Draw shapes
em.shape(name = 'BOX', material = 'SiO2', height = 800)
em.shape(name = 'core', material = 'Si', width = 600, height = 400)
## Run FDM, display results, and close
em.FDM()
em.report()
em.close()
Features
- Simple Python API for EMode simulation sessions
- Automatic login and license management
- Cross-platform: Windows, macOS, Linux
- Command-line installer via
emode-install
Installing EMode
The emodeconnection package includes a command-line tool to download and
install the EMode executable:
emode-install
Options
emode-install # Install latest version
emode-install --help # Show all options
emode-install --list-versions # Show available versions
emode-install --update # Update to the latest version
emode-install --update --version 0.2.5 # Switch to a specific version
emode-install --version 0.2.5 # Install a specific version
emode-install --install-dir /opt/bin # Custom install directory
emode-install --uninstall # Remove EMode
emode-install --uninstall --install-dir /opt/bin # Remove from custom location
Environment variables
| Variable | Description |
|---|---|
EMODE_EULA_ACCEPTED=1 |
Accept the EULA non-interactively (CI/headless) |
EMODE_EMAIL |
Pre-fill login email |
EMODE_PASSWORD |
Pre-fill password (use with caution) |
EMODE_INTERACTIVE=1 |
Use interactive installer GUI |
UNINSTALL_EMODE=y |
Accept the uninstallation non-interactively |
Documentation
Full documentation is available at docs.emodephotonix.com.
License
See LICENSE for details.
MATLAB
A legacy MATLAB interface (emodeconnection.m) is included in this repository
for historical reference. It is no longer supported as of EMode 0.2.5 and may
not work with newer versions. No support is provided for MATLAB usage.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file emodeconnection-1.1.8.tar.gz.
File metadata
- Download URL: emodeconnection-1.1.8.tar.gz
- Upload date:
- Size: 51.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f40f33b7dbe8fe55b7780492308fb7aa46e635c637fe38490ddfbcf2931f7e3
|
|
| MD5 |
b9b80d5952b97c6f15c2d27c18e394eb
|
|
| BLAKE2b-256 |
4946aefc06a79e8f1ee69ae5e250319239f82f7fa80c053eae1c2f1ba619b712
|
File details
Details for the file emodeconnection-1.1.8-py3-none-any.whl.
File metadata
- Download URL: emodeconnection-1.1.8-py3-none-any.whl
- Upload date:
- Size: 22.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.7.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42db22a82c850a92fd12c9863ac35e06cc97466e7dfb8476c7bf1e4868742032
|
|
| MD5 |
728f561f7c78c0ccd443c9fa6ca0a0a2
|
|
| BLAKE2b-256 |
c9356f527c68b974e138707db61dbe392d1f71d4b5f7fd7dcb888550f0517aaf
|