tidy3d.MeshOverrideStructure#
- class MeshOverrideStructure[source]#
Bases:
AbstractStructureDefines an object that is only used in the process of generating the mesh.
- Parameters:
geometry (Union[
Box,Transformed,ClipOperation,GeometryGroup,GeometryArray,Sphere,Cylinder,PolySlab,ComplexPolySlabBase,TriangleMesh]) – Defines geometric properties of the structure.name (Optional[str] = None) – Optional name for the structure.
background_permittivity (Optional[float] = None) – DEPRECATED: Use
Structure.background_medium. Relative permittivity used for the background of this structure when performing shape optimization with autograd.background_medium (Optional[Union[
MultiPhysicsMedium,Medium,AnisotropicMedium,PECMedium,PMCMedium,PoleResidue,Sellmeier,Lorentz,Debye,Drude,FullyAnisotropicMedium,CustomMedium,CustomPoleResidue,CustomSellmeier,CustomLorentz,CustomDebye,CustomDrude,CustomAnisotropicMedium,PerturbationMedium,PerturbationPoleResidue,LossyMetalMedium,Medium2D,AnisotropicMediumFromMedium2D,FluidSpec,SolidSpec,SolidMedium,FluidMedium,ChargeConductorMedium,ChargeInsulatorMedium,SemiconductorMedium]] = None) – Medium used for the background of this structure when performing shape optimization with autograd. This is required when the structure is embedded in another structure as autograd will use the permittivity of theSimulationby default to compute the shape derivatives.priority (int = 0) – Priority of the structure applied in mesh override structure overlapping region. The priority of internal override structures is
-1.dl (tuple[Optional[PositiveFloat], Optional[PositiveFloat], Optional[PositiveFloat]]) – [units = um]. Grid size along x, y, z directions.
enforce (bool = False) – If
True, enforce the grid size setup inside the structure even if the structure is inside a structure of smaller grid size. In the intersection region of multiple structures ofenforce=True, grid size is decided by the last added structure ofenforce=True.shadow (bool = True) – In structure intersection region, grid size is decided by the latter added structure in the structure list when
shadow=True; or the structure of smaller grid size whenshadow=False. Ifshadow=False, and the structure doesn’t refine the mesh, grid snapping to the bounding box of the structure is disabled.drop_outside_sim (bool = True) – If
True, structure outside the simulation domain is dropped; ifFalse, structure takes effect along the dimensions where the projections of the structure and that of the simulation domain overlap.
Notes
A
MeshOverrideStructureis a combination of geometryGeometry, grid size alongx,y,zdirections, and a boolean on whether the override will be enforced.Example
>>> from tidy3d import Box >>> box = Box(center=(0,0,1), size=(2, 2, 2)) >>> struct_override = MeshOverrideStructure(geometry=box, dl=(0.1,0.2,0.3), name='override_box')
Attributes
geometrynamebackground_permittivitybackground_medium- dl#
- priority#
- enforce#
- shadow#
- drop_outside_sim#