Simulation#

Overview#

This page contains information on the different simulation types available in Tidy3D.


Defining a FDTD Simulation#

tidy3d.Simulation

Custom implementation of Maxwell’s equations which represents the physical model to be solved using the FDTD method.


Submitting a Simulation#

tidy3d.web.api.container.Job

Interface for managing the running of a Simulation on server.

tidy3d.web.api.container.Job.run([path])

Run Job all the way through and return data.

tidy3d.web.api.container.Job.estimate_cost([...])

Compute the maximum FlexCredit charge for a given Job.

tidy3d.web.api.container.Job.real_cost([verbose])

Get the billed cost for the task associated with this job.

tidy3d.web.api.container.Job.upload()

Upload this Job.

tidy3d.web.api.container.Job.start()

Start running a Job.

tidy3d.web.api.container.Job.monitor()

Monitor progress of running Job.

tidy3d.web.api.container.Job.download([path])

Download results of simulation.

tidy3d.web.api.container.Job.load([path])

Download job results and load them into a data object.

tidy3d.web.api.container.Job.delete()

Delete server-side data associated with Job.

tidy3d.web.api.container.Job.get_info()

Return information about a Job.

tidy3d.web.api.container.Job.get_run_info()

Return information about the running Job.

tidy3d.web.api.container.Job.to_file(fname)

Exports Tidy3dBaseModel instance to .yaml, .json, or .hdf5 file


Batch Jobs#

tidy3d.web.api.container.Batch

Interface for submitting several Simulation objects to sever.


Other Simulation Types#

tidy3d.plugins.mode.ModeSolver

Interface for solving electromagnetic eigenmodes in a 2D plane with translational invariance in the third dimension.

tidy3d.EMESimulation

EigenMode Expansion (EME) simulation.

tidy3d.HeatSimulation

Contains all information about heat simulation.

tidy3d.HeatChargeSimulation

Defines thermoelectric simulations.

tidy3d.plugins.smatrix.TerminalComponentModeler

Tool for modeling two-terminal multiport devices and computing port parameters with lumped and wave ports.


Logging#

tidy3d.config.logging_level

tidy3d.set_logging_file(fname[, filemode, ...])

Set a file to write log to, independently from the stdout and stderr output chosen using set_logging_level().


Additional Methods#

tidy3d.web.api.webapi.estimate_cost(task_id)

Compute the maximum FlexCredit charge for a given task.

tidy3d.web.api.webapi.run(simulation, task_name)

Submits a Simulation to server, starts running, monitors progress, downloads, and loads results as a WorkflowDataType object.

tidy3d.web.api.webapi.upload(simulation, ...)

Upload simulation to server, but do not start running Simulation.

tidy3d.web.api.webapi.start(task_id[, ...])

Start running the simulation associated with task.

tidy3d.web.api.webapi.real_cost(task_id[, ...])

Get the billed cost for given task after it has been run.

tidy3d.web.api.webapi.get_info(task_id[, ...])

Return information about a task.

tidy3d.web.api.webapi.monitor(task_id[, ...])

Print the real time task progress until completion.

tidy3d.web.api.webapi.download(task_id[, ...])

Download results of task to file.

tidy3d.web.api.webapi.load(task_id[, path, ...])

Download and Load simulation results into SimulationData object.

tidy3d.web.api.webapi.delete(task_id[, versions])

Delete server-side data associated with task.

tidy3d.web.api.webapi.download_log(task_id)

Download the tidy3d log file associated with a task.

tidy3d.web.api.webapi.download_json(task_id)

Download the .json file associated with the Simulation of a given task.

tidy3d.web.api.webapi.load_simulation(task_id)

Download the .json file of a task and load the associated simulation.

tidy3d.web.api.asynchronous.run_async(...[, ...])

Submits a set of Union[Simulation, HeatSimulation, EMESimulation] objects to server, starts running, monitors progress, downloads, and loads results as a BatchData object.

tidy3d.web.core.task_info.TaskInfo

General information about a task.

tidy3d.web.core.task_info.TaskStatus

The statuses that the task can be in.