Skip to main content

emodeconnection

Python interface for EMode, a photonics simulation platform for waveguide mode solving, propagation, and analysis.

Requirements

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.

Metadata

Release files for emodeconnection 1.1.20

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for emodeconnection 1.1.20
File Size Uploaded
emodeconnection-1.1.20.tar.gz 72.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for emodeconnection 1.1.20
File Interpreter ABI Platform
emodeconnection-1.1.20-py3-none-any.whl Python 3 none any Details

Total release size: 113.3 kB

Release files / emodeconnection-1.1.20.tar.gz

Download URL emodeconnection-1.1.20.tar.gz
Size 72.2 kB
Tags Source
SHA-256 checksum
How to use checksums
5fd912109b6fd8206f50ec98f9856f932a5364464218690be8acd970efc3538a
BLAKE2b-256 checksum
How to use checksums
03f565f970f6e690a55a17f3da4bba96ce839457499712e5c22276a9ec3c2324
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release files / emodeconnection-1.1.20-py3-none-any.whl

Download URL emodeconnection-1.1.20-py3-none-any.whl
Size 41.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dd2e215f42f92e934ff1a3af583bc55cd6644cdf328f58afc688ececcabce9e4
BLAKE2b-256 checksum
How to use checksums
ae7cc26e5ef497cf334ecd796fc9870db4b21371c59ecaa1317fb62631f21019
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 2, 2026.

Transparency log

Release history Release notifications | RSS feed

1.1.22

2 release files

1.1.21

2 release files

This release

1.1.20 This release

2 release files

1.1.19

2 release files

1.1.18

2 release files

1.1.14

2 release files

1.1.12

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.10

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page