tidy3d.plugins.adjoint.JaxSimulationData#
- class JaxSimulationData[source]#
- Bases: - SimulationData,- JaxObject- A - SimulationDataregistered with jax.- Parameters:
- simulation (JaxSimulation) – The jax-compatible simulation corresponding to the data. 
- data (Tuple[Annotated[Union[tidy3d.components.data.monitor_data.FieldData, tidy3d.components.data.monitor_data.FieldTimeData, tidy3d.components.data.monitor_data.PermittivityData, tidy3d.components.data.monitor_data.ModeSolverData, tidy3d.components.data.monitor_data.ModeData, tidy3d.components.data.monitor_data.FluxData, tidy3d.components.data.monitor_data.FluxTimeData, tidy3d.components.data.monitor_data.FieldProjectionKSpaceData, tidy3d.components.data.monitor_data.FieldProjectionCartesianData, tidy3d.components.data.monitor_data.FieldProjectionAngleData, tidy3d.components.data.monitor_data.DiffractionData], FieldInfo(default=PydanticUndefined, discriminator='type', extra={})], ...]) – List of - MonitorDatainstances associated with the monitors of the original- Simulation.
- log (Optional[str] = None) – A string containing the log information from the simulation run. 
- diverged (bool = False) – A boolean flag denoting whether the simulation run diverged. 
- output_data (Tuple[Union[JaxModeData, JaxDiffractionData, JaxFieldData], ...] = ()) – Tuple of Jax-compatible data associated with output monitors. 
- grad_data (Tuple[FieldData, ...] = ()) – Tuple of monitor data storing fields associated with the input structures. 
- grad_eps_data (Tuple[PermittivityData, ...] = ()) – Tuple of monitor data storing epsilon associated with the input structures. 
- task_id (Optional[str] = None) – Optional field storing the task_id for the original JaxSimulation. 
 
 - Attributes - self.grad_databut with- symmetry_expanded_copyapplied.- self.grad_eps_databut with- symmetry_expanded_copyapplied.- Dictionary of - .output_datamonitor- .nameto the corresponding data.- Dictionary of - .output_datamonitor- .nameto the corresponding data.- Logging for Tidy3d. - Methods - from_sim_data(sim_data, jax_info[, task_id])- Construct a - JaxSimulationDatainstance from a- SimulationData.- make_adjoint_simulation(fwidth, run_time)- Make an adjoint simulation out of the data provided (generally, the vjp sim data). - Make copy of jax_sim_data with grad_data (fields) normalized by adjoint sources. - split_data(mnt_data, jax_info)- Split list of monitor data into data, output_data, grad_data, and grad_eps_data. - split_fwd_sim_data(sim_data, jax_info)- Split a - SimulationDatainto two parts, containing user and gradient data.- output_data#
 - grad_data#
 - grad_eps_data#
 - simulation#
 - task_id#
 - property grad_data_symmetry#
- self.grad_databut with- symmetry_expanded_copyapplied.
 - property grad_eps_data_symmetry#
- self.grad_eps_databut with- symmetry_expanded_copyapplied.
 - property output_monitor_data#
- Dictionary of - .output_datamonitor- .nameto the corresponding data.
 - property monitor_data#
- Dictionary of - .output_datamonitor- .nameto the corresponding data.
 - static split_data(mnt_data, jax_info)[source]#
- Split list of monitor data into data, output_data, grad_data, and grad_eps_data. 
 - classmethod from_sim_data(sim_data, jax_info, task_id=None)[source]#
- Construct a - JaxSimulationDatainstance from a- SimulationData.
 - classmethod split_fwd_sim_data(sim_data, jax_info)[source]#
- Split a - SimulationDatainto two parts, containing user and gradient data.
 - make_adjoint_simulation(fwidth, run_time)[source]#
- Make an adjoint simulation out of the data provided (generally, the vjp sim data). 
 - normalize_adjoint_fields()[source]#
- Make copy of jax_sim_data with grad_data (fields) normalized by adjoint sources. 
 - __hash__()#
- Hash method.