API ๐ป#
Simulation#
| Custom implementation of Maxwellโs equations which represents the physical model to be solved using the FDTD method. | 
Boundary Conditions#
| Specifies boundary conditions on each side of the domain and along each dimension. | |
| Boundary conditions at the minus and plus extents along a dimension. | |
| Electromagnetic boundary condition at a domain edge. | 
Types of Boundaries#
| Periodic boundary condition class. | |
| Perfect electric conductor boundary condition class. | |
| Perfect magnetic conductor boundary condition class. | |
| Specifies a Bloch boundary condition along a single dimension. | 
Absorbing Boundaries#
Types of Absorbers#
| Specifies a standard PML along a single dimension. | |
| Specifies a 'stable' PML along a single dimension. | |
| Specifies an adiabatic absorber along a single dimension. | 
Absorber Parameters#
| Specifies parameters common to Absorbers and PMLs. | |
| Specifies full set of parameters needed for complex, frequency-shifted PML. | 
Geometry#
| Rectangular prism. | |
| Spherical geometry. | |
| Cylindrical geometry with optional sidewall angle along axis direction. | |
| Polygon extruded with optional sidewall angle along axis direction. | |
| Custom surface geometry given by a triangle mesh, as in the STL file format. | |
| A collection of Geometry objects that can be called as a single geometry object. | |
| Class representing the result of a set operation between geometries. | |
| Class representing a transformed geometry. | 
Transformations#
| Rotation of vectors and tensors around a given vector. | 
Mediums#
Non-Dispersive Medium#
Spatially uniform#
| Dispersionless medium. | |
| Perfect electrical conductor class. | |
| Fully anisotropic medium including all 9 components of the permittivity and conductivity tensors. | 
Spatially varying#
| 
 | 
Dispersive Mediums#
Spatially uniform#
| A dispersive medium described by the pole-residue pair model. | |
| A dispersive medium described by the Lorentz model. | |
| A dispersive medium described by the Sellmeier model. | |
| A dispersive medium described by the Drude model. | |
| A dispersive medium described by the Debye model. | 
Spatially varying#
| A spatially varying dispersive medium described by the pole-residue pair model. | |
| A spatially varying dispersive medium described by the Lorentz model. | |
| A spatially varying dispersive medium described by the Sellmeier model. | |
| A spatially varying dispersive medium described by the Drude model. | |
| A spatially varying dispersive medium described by the Debye model. | 
General Mediums (can be both dispersive and non-dispersive)#
Spatially uniform#
| Diagonally anisotropic medium. | |
| 2D diagonally anisotropic medium. | 
Spatially varying#
| Diagonally anisotropic medium with spatially varying permittivity in each component. | 
Medium Specifications (add properties to existing Medium)#
Nonlinear#
| Abstract specification for adding nonlinearities to a medium. | |
| Model for an instantaneous nonlinear chi3 susceptibility. | |
| Model for Kerr nonlinearity which gives an intensity-dependent refractive index of the form \(n = n_0 + n_2 I\). | |
| Model for two-photon absorption (TPA) nonlinearity which gives an intensity-dependent absorption of the form \(\alpha = \alpha_0 + \beta I\). | 
Time Modulation#
| Specification adding space-time modulation to the non-dispersive part of medium including relative permittivity at infinite frequency and electric conductivity. | |
| Space-time modulation applied to a medium, adding on top of the time-independent part. | |
| Class describing modulation with a harmonic time dependence. | |
| The modulation profile with a user-supplied spatial distribution of amplitude and phase. | 
Material Library#
- Material Library- Silver (โAgโ)
- Aluminum (โAlโ)
- Alumina (โAl2O3โ)
- Aluminum Arsenide (โAlAsโ)
- Aluminum Gallium Nitride (โAlGaNโ)
- Aluminum Nitride (โAlNโ)
- Aluminum Oxide (โAlxOyโ)
- Amino Acid (โAminoacidโ)
- Amorphous Silicon (โaSiโ)
- Gold (โAuโ)
- Beryllium (โBeโ)
- N-BK7 Borosilicate Glass (โBK7โ)
- Calcium Fluoride (โCaF2โ)
- Cellulose (โCelluloseโ)
- Chromium (โCrโ)
- Crystalline Silicon (โcSiโ)
- Copper (โCuโ)
- Fused Silica (โFusedSilicaโ)
- Gallium Arsenide (โGaAsโ)
- Germanium (โGeโ)
- Germanium Oxide (โGeOxโ)
- Graphene (โgrapheneโ)- tidy3d.Graphene- Graphene- Graphene.__init__()
- Graphene.mu_c
- Graphene.temp
- Graphene.gamma
- Graphene.scaling
- Graphene.include_interband
- Graphene.interband_fit_freq_nodes
- Graphene.interband_fit_num_iters
- Graphene.medium
- Graphene.intraband_drude
- Graphene.interband_pole_residue
- Graphene.numerical_conductivity()
- Graphene.interband_conductivity()
- Graphene.__hash__()
 
 
 
- tidy3d.Graphene
- Water (โH2Oโ)
- Hafnium Oxide (โHfO2โ)
- Hexamethyldisilazane, or Bis(trimethylsilyl)amine (โHMDSโ)
- Indium Arsenide (โInAsโ)
- Indium Phosphide (โInPโ)
- Indium Tin Oxide (โITOโ)
- Magnesium Fluoride (โMgF2โ)
- Magnesium Oxide (โMgOโ)
- Molybdenum Disulfide (โMoS2โ)
- Molybdenum Diselenide (โMoSe2โ)
- Nickel (โNiโ)
- Palladium (โPdโ)
- Polyetherimide (โPEIโ)
- Polyethylene Naphthalate (โPENโ)
- Polyethylene Terephthalate (โPETโ)
- Poly(methyl Methacrylate) (โPMMAโ)
- Polycarbonate (โPolycarbonateโ)
- Polystyrene (โPolystyreneโ)
- Platinum (โPtโ)
- Polytetrafluoroethylene, or Teflon (โPTFEโ)
- Polyvinyl Chloride (โPVCโ)
- Sapphire (โSapphireโ)
- Silicon Nitride (โSi3N4โ)
- Silicon Carbide (โSiCโ)
- Silicon Mononitride (โSiNโ)
- Silicon Dioxide (โSiO2โ)
- Silicon Oxynitride (โSiONโ)
- Tantalum Pentoxide (โTa2O5โ)
- Titanium (โTiโ)
- Titanium Oxide (โTiOxโ)
- Tungsten (โWโ)
- Tungsten Disulfide (โWS2โ)
- Tungsten Diselenide (โWSe2โ)
- Yttrium Oxide (โY2O3โ)
- Yttrium Aluminium Garnet (โYAGโ)
- Zirconium Oxide (โZrO2โ)
 
Structures#
| Defines a physical object that interacts with the electromagnetic fields. | |
| Defines an object that is only used in the process of generating the mesh. | 
Sources#
Types of Sources#
| Uniform current source with a zero size. | |
| Source in a rectangular volume with uniform time dependence. | |
| Uniform current distribution on an infinite extent plane. | |
| Injects current source to excite modal profile on finite extent plane. | |
| Gaussian distribution on finite extent plane. | |
| The simple astigmatic Gaussian distribution allows both an elliptical intensity profile and different waist locations for the two principal axes of the ellipse. | |
| Implements a source corresponding to an input dataset containing  | |
| Implements a source corresponding to an input dataset containing  | |
| Total-field scattered-field (TFSF) source that can inject a plane wave in a finite region. | 
Source Time Dependence#
| Source time dependence that describes a Gaussian pulse. | |
| Source time dependence that ramps up to continuous oscillation and holds until end of simulation. | |
| Custom source time dependence consisting of a real or complex envelope modulated at a central frequency, as shown below. | 
Monitors#
Monitor Types#
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | 
Apodization Specification#
| Stores specifications for the apodizaton of frequency-domain monitors. | 
Mode Specifications#
| Stores specifications for the mode solver to find an electromagntic mode. | 
Discretization#
| Collective grid specification for all three dimensions. | |
| Specification for non-uniform grid along a given dimension. | |
| Uniform 1D grid. | |
| Custom 1D grid supplied as a list of grid cell sizes centered on the simulation center. | |
| Holds data about a set of x,y,z positions on a grid. | |
| Holds the grid data for a single field. | |
| Holds the yee grid coordinates for each of the E and H positions. | |
| Contains all information about the spatial positions of the FDTD grid. | 
Output Data#
All Data for a Simulation#
| Stores data from a collection of  | 
Collections of Data from single monitor#
| Data associated with a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data for a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data associated with a  | |
| Data for a  | 
Individual Datasets#
| Spatial distribution. | |
| Dataset storing the diagonal components of the permittivity tensor. | |
| Spatial distribution in the frequency-domain. | |
| Spatial distribution of a mode in frequency-domain as a function of mode index. | |
| Spatial distribution in the time-domain. | |
| Forward and backward propagating complex-valued mode amplitudes. | |
| Complex-valued effective propagation index of a mode. | |
| Flux through a surface in the frequency-domain. | |
| Flux through a surface in the time-domain. | |
| Far fields in frequency domain as a function of angles theta and phi. | |
| Far fields in frequency domain as a function of local x and y coordinates. | |
| Far fields in frequency domain as a function of normalized kx and ky vectors on the observation plane. | |
| Diffraction power amplitudes as a function of diffraction orders and frequency. | 
Scene#
| Contains generic information about the geometry and medium properties common to all types of simulations. | 
Logging#
| Custom logger to avoid the complexities of the logging module | |
| 
 | Raise a warning here instead of setting the logging level. | 
| 
 | Set a file to write log to, independently from the stdout and stderr output chosen using  | 
Submitting Simulations#
Through python API#
| 
 | Submits a  | 
| 
 | Upload simulation to server, but do not start running  | 
| 
 | Compute the maximum FlexCredit charge for a given task. | 
| 
 | Get the billed cost for given task after it has been run. | 
| 
 | Return information about a task. | 
| 
 | Start running the simulation associated with task. | 
| 
 | Print the real time task progress until completion. | 
| 
 | Download results of task to file. | 
| 
 | Download and Load simulation results into  | 
| 
 | Delete server-side data associated with task. | 
| 
 | Download the tidy3d log file associated with a task. | 
| 
 | Download the  | 
| Download the  | 
Convenience for Single and Batch#
| Interface for managing the running of a  | |
| Interface for submitting several  | |
| Holds a collection of  | 
Information Containers#
| General information about task. | |
| The statuses that the task can be in. | 
HEAT ๐ฅ#
Simulation#
| Contains all information about heat simulation. | 
Material Thermal Specification#
| Fluid medium. | |
| Solid medium. | 
Thermal Boundary Conditions#
| Heat boundary conditions specification. | 
| Constant temperature thermal boundary conditions. | |
| Convective thermal boundary conditions. | |
| Constant flux thermal boundary conditions. | 
| Placement of boundary conditions between two structures. | |
| Placement of boundary conditions on the structure's boundary. | |
| Placement of boundary conditions between two mediums. | |
| Placement of boundary conditions on the simulation box boundary covered by the structure. | |
| Placement of boundary conditions on the simulation box boundary. | 
Thermal Sources#
| Volumetric heat source. | 
Grid Specification#
| Uniform grid. | |
| Adaptive grid based on distance to material interfaces. | 
Monitors#
| Temperature monitor. | 
Output Data#
Monitor Data#
| Data associated with a  | 
Heat Simulation Data#
| Stores results of a heat simulation. | 
Plugins#
Mode Solver#
| Interface for solving electromagnetic eigenmodes in a 2D plane with translational invariance in the third dimension. | |
| Data associated with a  | 
Dispersive Model Fitting#
| Tool for fitting refractive index data to get a dispersive medium described by  | |
| Advanced fast fitter parameters. | |
| Tool for fitting refractive index data to get a dispersive medium described by  | |
| Advanced fitter parameters | |
| 
 | Execute the data fit using the stable fitter in the server. | 
| Deprecated. | 
Self-intersecting Polyslab#
| Interface for dividing a complex polyslab where self-intersecting polygon can occur during extrusion. | 
Scattering Matrix Calculator#
| Tool for modeling devices and computing scattering matrix elements. | |
| Specifies a port in the scattering matrix. | |
| Scattering matrix elements. | 
Resonance Finder#
| Tool that extracts resonance information from a time series of the form shown below. | 
Adjoint#
| Submits a  | |
| Submits a set of  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| A  | |
| Filter that convolves an image with a conical mask, used for larger feature sizes. | |
| Projects a grayscale image towards min and max values using a smooth  | |
| Computes a penalty for small radius of curvature determined by a fit of points in a 2D plane. | 
Waveguide#
| General rectangular dielectric waveguide | 
Design Space Exploration#
| Parameter containing floats. | |
| Parameter containing integers. | |
| Parameter containing a set of of anything. | |
| Select parameters uniformly on a grid. | |
| Select sampling points using Monte Carlo sampling (Latin Hypercube method). | |
| Select parameters with an object with a user supplied sampler with a  | |
| Select sampling points uniformly at random. | |
| Specification of a design problem / combination of several parameters + algorithm. | 
Constants#
Physical Constants#
| Convert a string or number to a floating point number, if possible. | |
| Convert a string or number to a floating point number, if possible. | |
| Convert a string or number to a floating point number, if possible. | |
| Double-precision floating-point number type, compatible with Python float and C  | |
| Convert a string or number to a floating point number, if possible. | |
| Convert a string or number to a floating point number, if possible. | |
| Convert a string or number to a floating point number, if possible. | 
Tidy3D Special Constants#
| Convert a string or number to a floating point number, if possible. | |
| Perfect electrical conductor class. | 
Tidy3D Configuration#
| configuration of tidy3d | 
Default Absorber Parameters#
| Specifies full set of parameters needed for complex, frequency-shifted PML. | |
| Specifies full set of parameters needed for complex, frequency-shifted PML. | |
| Specifies parameters common to Absorbers and PMLs. | 
Units#
| One cycle per second. | |
| One trillion (10^12) cycles per second. | |
| SI unit of time. | |
| One trillionth (10^-12) of a second. | |
| SI unit of length. | |
| One millionth (10^-6) of a meter. | |
| One billionth (10^-9) of a meter. | |
| SI unit of angle. | |
| Siemens per micrometer. | |
| Relative permittivity. | |
| 2 times vacuum permittivity over time differential step. | |
| One radian per second. | |
| Unit of energy. | |
| SI unit of temperature. | |
| 2 times vacuum permittivity over time differential step. | |
| Cubic centimeter unit of volume. | |
| Unit per centimeter cube. | |
| SI unit of power. | |
| SI unit of electric potential. | |
| Watts per (micrometer Kelvin). | |
| Joules per (kilogram Kelvin). | |
| Watts per square micrometer. | |
| Watts per cube micrometer. | |
| Watts per (square micrometer Kelvin). | 
Precision & Comparator Values#
| Double floating point precision. | |
| Floating point precision. | |
| PEC values for mode solver | |
| Large number used for comparing infinity. | |
| if |np.pi/2 - angle_theta| < GLANCING_CUTOFF in an angled source or in mode spec, raise warning. | 
Abstract Base Models#
Base classes that represent abstractions of the core elements of a Simulation.
| Base class for simulation classes of different solvers. | |
| Abstract base class for steady-state monitors. | |
| Abstract base class for all sources. | |
| Abstract base class for all sources. | |
| Abstract base class for monitors. | 
Abstract Models#
These are some classes that are used to organize the tidy3d components, but arenโt to be used directly in the code. Documented here mainly for reference.
| Base pydantic model that all Tidy3d components inherit from. | |
| Base class for simulation classes of different solvers. | |
| Specifies the generic absorber properties along a single dimension. | |
| Abstract base class, defines where something exists in space. | |
| Geometry with a well defined center. | |
| Geometry with one  | |
| Geometry with circular characteristics (specified by a radius). | |
| A medium within which electromagnetic waves propagate. | |
| A spatially varying medium. | |
| A Medium with dispersion: field propagation characteristics depend on frequency. | |
| A spatially varying dispersive medium. | |
| A basic structure object. | |
| Base class describing the time dependence of a source. | |
| Abstract base class for all sources. | |
| A Source defined by the desired E and/or H fields. | |
| Source implements a current distribution directly. | |
| Abstract source that allows reverse-interpolation along zero-sized dimensions. | |
| A FieldSource defined with an angled direction of propagation. | |
| A source defined on a 2D plane. | |
| A Field source that propagates in a given direction. | |
| A source with frequency dependent field distributions. | |
| A source defined in a 3D  | |
| A source time that ramps up with some  | |
| Abstract base class for monitors. | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| Abstract base class, defines 1D grid generation specifications. | |
| Subclass of  | |
| Abstract base class of objects that store data pertaining to a single  | |
| 
 | Collection of projected fields in spherical coordinates in the frequency domain. | 
| 
 | Collection of electromagnetic fields. | 
| Abstract base class of objects that store data pertaining to a single  | |
| Collection of scalar fields with some symmetry properties. | |
| Dataset storing a collection of the scalar components of E and H fields in the freq. | |
| Dataset storing a collection of the scalar components of E and H fields in the time domain | |
| Dataset storing scalar components of E and H fields as a function of freq. |