tidy3d.plugins.adjoint.JaxBox#

class JaxBox[source]#

Bases: JaxGeometry, Box, JaxObject

A Box registered with jax.

Parameters:
  • center (Tuple[float, float, float] = (0.0, 0.0, 0.0)) โ€“ [units = um]. Center of object in x, y, and z.

  • size (Tuple[NonNegativeFloat, NonNegativeFloat, NonNegativeFloat]) โ€“ [units = um]. Size in x, y, and z directions.

  • center_jax (Tuple[Union[float, NumpyArrayType, Array, JVPTracer, object], Union[float, NumpyArrayType, Array, JVPTracer, object], Union[float, NumpyArrayType, Array, JVPTracer, object]] = (0.0, 0.0, 0.0)) โ€“ [units = um]. Jax traced value for the center of the box in (x, y, z).

  • size_jax (Tuple[Union[float, NumpyArrayType, Array, JVPTracer, object], Union[float, NumpyArrayType, Array, JVPTracer, object], Union[float, NumpyArrayType, Array, JVPTracer, object]]) โ€“ [units = um]. Jax-traced value for the size of the box in (x, y, z).

Attributes

Methods

store_vjp(grad_data_fwd,ย grad_data_adj,ย ...)

Stores the gradient of the box parameters given forward and adjoint field data.

center_jax#
size_jax#
store_vjp(grad_data_fwd, grad_data_adj, grad_data_eps, sim_bounds, wvl_mat, eps_out, eps_in, num_proc=1)[source]#

Stores the gradient of the box parameters given forward and adjoint field data.

__hash__()#

Hash method.