gds_fdtd is a minimal Python module to assist in setting up FDTD simulations for planar nanophotonic devices using FDTD solvers such as Tidy3D.
- Automated FDTD Setup: Easily set up Tidy3D simulations for devices designed in GDS.
- Integration with gdsfactory: Generate Tidy3D simulations directly from gdsfactory designs by identifying ports and simulation regions from an input technology stack.
- S-Parameter Extraction: Automatically generate and export S-parameters of your photonic devices in standard formats.
- Multimode/Dual Polarization Simulations: Set up simulations that support multimode or dual polarization configurations for advanced device analysis.
You can install gds_fdtd
using the following options:
To install the core functionality of gds_fdtd
, clone the repository and install using pip
:
git clone [email protected]:mustafacc/gds_fdtd.git
cd gds_fdtd
pip install .
For contributing to the development or if you need testing utilities, install with the dev dependencies:
git clone [email protected]:mustafacc/gds_fdtd.git
cd gds_fdtd
pip install -e .[dev]
This will install additional tools like pytest
and coverage
for testing.
If your workflow includes specific dependencies such as gdsfactory or prefab, you can install those optional extras:
with gdsfactory:
pip install -e .[gdsfactory]
Refer to gdsfactory example for usage.
with prefab:
pip install -e .[prefab]
Refer to prefab example for usage.
If you want everything installed for both development and optional features, run the following command:
pip install -e .[dev,gdsfactory,prefab]
If you've installed the dev
dependencies, you can run the test suite with:
pytest