tidy3d.MeshOverrideStructure#

class MeshOverrideStructure[source]#

Bases: AbstractStructure

Defines an object that is only used in the process of generating the mesh.

Parameters:
  • attrs (dict = {}) – Dictionary storing arbitrary metadata for a Tidy3D object. This dictionary can be freely used by the user for storing data without affecting the operation of Tidy3D as it is not used internally. Note that, unlike regular Tidy3D fields, attrs are mutable. For example, the following is allowed for setting an attr obj.attrs['foo'] = bar. Also note that Tidy3D` will raise a TypeError if attrs contain objects that can not be serialized. One can check if attrs are serializable by calling obj.json().

  • geometry (Union[Box, Transformed, ClipOperation, GeometryGroup, Sphere, Cylinder, PolySlab, ComplexPolySlabBase, TriangleMesh]) – Defines geometric properties of the structure.

  • name (Optional[str] = None) – Optional name for the structure.

  • dl (Tuple[PositiveFloat, PositiveFloat, 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 of enforce=True, grid size is decided by the last added structure of enforce=True.

Notes

A MeshOverrideStructure is a combination of geometry Geometry, grid size along x, y, z directions, 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

Methods

Inherited Common Usage

dl#
enforce#
__hash__()#

Hash method.