fdtdx.PillarDiscretization

Bases: ParameterTransformation

Constraint module for mapping pillar structures to allowed configurations.

Maps arbitrary pillar structures to the nearest allowed configurations based on material constraints and geometry requirements. Ensures structures meet fabrication rules like single polymer columns and no trapped air holes.

Attributes:
  • axis (int) –

    Axis along which to enforce pillar constraints (0=x, 1=y, 2=z).

  • single_polymer_columns (bool) –

    If True, restrict to single polymer columns.

  • distance_metric (Literal['euclidean', 'permittivity_differences_plus_average_permittivity']) –

    Method to compute distances between material distributions: - "euclidean": Standard Euclidean distance between permittivity values. - "permittivity_differences_plus_average_permittivity": Weighted combination of permittivity differences and average permittivity values, optimized for material distribution comparisons. Defaults to "permittivity_differences_plus_average_permittivity".

  • background_material (str | None) –

    Name of the background material in the materials dictionary of the corresponding device. If None, the material with lowest permittivity is used. Defaults to None.