# MeshOverrideStructure

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

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.

# Name

name: Optional name for the structure.

Type: string

  • Default: None

# Geometry

geometry: Defines geometric properties of the structure.

Options:

# Override by Medium

background_medium: 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 the Simulation by default to compute the shape derivatives.

Options:

# Override by Grid Size

dl: Grid size along x, y, and z directions.

Type: floating-point numbers

  • Unit: μm
  • Required field

# Enforce Grid Size

enforce: 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.

Type: boolean

  • Default: False

# Shadow

shadow: 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 when shadow=False. If shadow=False, and the structure doesn't refine the mesh, grid snapping to the bounding box of the structure is disabled.

Type: boolean

  • Default: True

# Drop Outside Simulation

drop_outside_sim: If True, structure outside the simulation domain is dropped; if False, structure takes effect along the dimensions where the projections of the structure and that of the simulation domain overlap.

Type: boolean

  • Default: True

# Priority

priority: Priority of the structure applied in the structure overlapping region. The material property in the overlapping region is dictated by the structure of higher priority. For structures of equal priority, the structure added later to the structure list takes precedence. When priority is None, the value is automatically assigned based on structure_priority_mode in the Simulation.

Type: integer

  • Unit: unitless
  • Default: None