Skip to main content

A fast FDTD solver

Project description

Tidy3D

PyPI Name PyPI version shields.io Documentation Status Tests License: LGPL-2.1 Ruff Coverage

Notebooks

Tidy3D is a software package for solving extremely large electrodynamics problems using the finite-difference time-domain (FDTD) method. It can be controlled through either an open source python package or a web-based graphical user interface.

This repository contains the python API to allow you to:

  • Programmatically define FDTD simulations.
  • Submit and manage simulations running on Flexcompute's servers.
  • Download and postprocess the results from the simulations.

Installation

Signing up for tidy3d

Note that while this front end package is open source, to run simulations on Flexcompute servers requires an account with credits. You can sign up for an account here. After that, you can install the front end with the instructions below, or visit this page in our documentation for more details.

Quickstart Installation

To install the Tidy3D Python API locally, the following instructions should work for most users.

pip install --user tidy3d
tidy3d configure --apikey=XXX

Where XXX is your API key, which can be copied from your account page in the web interface.

In a hosted jupyter notebook environment (eg google colab), it may be more convenient to install and configure via the following lines at the top of the notebook.

!pip install tidy3d
import tidy3d.web as web
web.configure("XXX")

Advanced installation instructions for all platforms is available in the documentation installation guides.

Authentication Verification

To test the authentication, you may try importing the web interface via.

python -c "import tidy3d; tidy3d.web.test()"

It should pass without any errors if the API key is set up correctly.

To get started, our documentation has a lot of examples for inspiration.

Common Documentation References

API Resource URL
Installation Guide https://docs.flexcompute.com/projects/tidy3d/en/latest/install.html
Documentation https://docs.flexcompute.com/projects/tidy3d/en/latest/index.html
Example Library https://docs.flexcompute.com/projects/tidy3d/en/latest/notebooks/docs/index.html
FAQ https://docs.flexcompute.com/projects/tidy3d/en/latest/faq/docs/index.html

FlexAgent MCP

FlexAgent adds an AI-assisted layer on top of Tidy3D via the Model Context Protocol (MCP); read more about AI-assisted simulation in Tidy3D. Install the tidy3d-mcp server when you want that experience inside an MCP client without the Tidy3D extension for Visual Studio Code and Cursor.

These commands assume uv is installed on your machine.

Register the server with your MCP client - use the block below that matches your CLI.

Codex CLI / IDE
codex mcp add tidy3d -- uvx tidy3d-mcp --api-key "YOUR_TIDY3D_API_KEY"
Claude CLI / Desktop / Code
claude mcp add tidy3d -- uvx tidy3d-mcp --api-key "YOUR_TIDY3D_API_KEY"
Gemini CLI

Create or edit .gemini/settings.json (project) or ~/.gemini/settings.json (global):

{
  "mcpServers": {
    "tidy3d": {
      "command": "uvx",
      "args": ["tidy3d-mcp", "--api-key", "YOUR_TIDY3D_API_KEY"]
    }
  }
}
Cursor CLI / IDE

Cursor reuses the same schema across the editor and cursor-agent. Configure .cursor/mcp.json (per-project) or ~/.cursor/mcp.json (global) and then run cursor-agent mcp list to verify:

{
  "mcpServers": {
    "tidy3d": {
      "command": "uvx",
      "args": ["tidy3d-mcp", "--api-key", "YOUR_TIDY3D_API_KEY"]
    }
  }
}

Related Source Repositories

Name Repository
Source Code https://github.com/flexcompute/tidy3d
Notebooks Source https://github.com/flexcompute/tidy3d-notebooks
FAQ Source Code https://github.com/flexcompute/tidy3d-faq

Issues / Feedback / Bug Reporting

Your feedback helps us immensely!

If you find bugs, file an Issue. For more general discussions, questions, comments, anything else, open a topic in the Discussions Tab.

License

GNU LGPL

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

tidy3d-2.10.2.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

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

tidy3d-2.10.2-py3-none-any.whl (1.4 MB view details)

Uploaded Python 3

File details

Details for the file tidy3d-2.10.2.tar.gz.

File metadata

  • Download URL: tidy3d-2.10.2.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for tidy3d-2.10.2.tar.gz
Algorithm Hash digest
SHA256 8ff4494d6328113829e0c931135e7c46312fcd814c3d461b404f99bbeb57f4c7
MD5 dc622ad7e4d067e7845cf75b1473e5c6
BLAKE2b-256 2c8db27cf95b84d433ee4e4f6a4e929c4fd6350f1b3711e2138db065f1ce3a96

See more details on using hashes here.

File details

Details for the file tidy3d-2.10.2-py3-none-any.whl.

File metadata

  • Download URL: tidy3d-2.10.2-py3-none-any.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.19

File hashes

Hashes for tidy3d-2.10.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a390e7f1b96e9d0b838b6a223913e47b36a50c17f6b96a755acf237913ff48cc
MD5 9d671739203064598df7698be765d9a5
BLAKE2b-256 961c09573cfaa87ca65745f499888853de443c332f0a1d2104ef70dbad993d3c

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