tidy3d.plugins.invdes.design.AbstractInverseDesign#

class AbstractInverseDesign[source]#

Bases: InvdesBaseModel, ABC

Container for an inverse design problem.

Parameters:
  • design_region (TopologyDesignRegion) – Region within which we will optimize the simulation.

  • task_name (str) – Task name to use in the objective function when running the JaxSimulation.

  • verbose (bool = False) – If True, will print the regular output from web functions.

  • metric (Optional[Union[Union[Add, Subtract, Multiply, Divide, Power, Modulus, FloorDivide, MatMul, Negate, Abs], Union[Sin, Cos, Tan, Exp, Log, Log10, Sqrt], Union[Constant, Variable, ModeAmp, ModePower]]] = None) – Serializable expression defining the objective function.

Attributes

initial_simulation

Return a simulation with the initial design region parameters.

design_region

task_name

verbose

metric

Methods

make_objective_fn([post_process_fn, maximize])

Construct the objective function for this InverseDesign object.

run(simulation, **kwargs)

Run a single tidy3d simulation.

run_async(simulations, **kwargs)

Run a batch of tidy3d simulations.

design_region#
task_name#
verbose#
metric#
make_objective_fn(post_process_fn=None, maximize=True)[source]#

Construct the objective function for this InverseDesign object.

property initial_simulation#

Return a simulation with the initial design region parameters.

run(simulation, **kwargs)[source]#

Run a single tidy3d simulation.

run_async(simulations, **kwargs)[source]#

Run a batch of tidy3d simulations.