Skip to content

flex_rf.tidy3d.SurfaceFieldData

Type: class Base(s): ElectromagneticSurfaceFieldData

Data associated with a SurfaceFieldMonitor: E and H fields on a surface.

from tidy3d import PointDataArray, IndexedSurfaceFieldDataArray, TriangularSurfaceDataset, CellDataArray
import tidy3d as td
old_logging_level = td.config.logging_level
td.config.logging_level = "ERROR"
points = PointDataArray([[0, 0, 0], [0, 1, 0], [1, 1, 1]], dims=["index", "axis"])
cells = CellDataArray([[0, 1, 2]], dims=["cell_index", "vertex_index"])
values = PointDataArray([[1, 0, 0], [0, 1, 0], [0, 0, 1]], dims=["index", "axis"])
field_values = IndexedSurfaceFieldDataArray(np.ones((3, 1, 3, 1)) + 0j, coords={"index": [0, 1, 2], "side": ["outside"],"axis": [0, 1, 2], "f": [1e10]})
field = TriangularSurfaceDataset(points=points, cells=cells, values=field_values)
normal = TriangularSurfaceDataset(points=points, cells=cells, values=values)
monitor = SurfaceFieldMonitor(
size=(2,4,6), freqs=[1e10], name='field', fields=['E', 'H']
)
data = SurfaceFieldData(monitor=monitor, E=field, H=field, normal=normal)
td.config.logging_level = old_logging_level
E [TriangularSurfaceDataset | None] = None

Spatial distribution of the electric field on the one side of the surface.

H [TriangularSurfaceDataset | None] = None

Spatial distribution of the magnetic field on the one side of the surface.

normal [TriangularSurfaceDataset] = ...

Normal direction of the surface oriented outward from the surface.

symmetry [tuple[Symmetry, Symmetry, Symmetry]] = (0, 0, 0)

Symmetry of the original simulation in x, y, and z.

symmetry_center [Coordinate] = (0, 0, 0)

Symmetry center of the original simulation in x, y, and z.

monitor [SurfaceFieldMonitor] = ...

Frequency-domain field monitor associated with the data.

poynting [TriangularSurfaceDataset]

Time-averaged Poynting vector for frequency-domain data.

normalize(source_spectrum_fn: Callable[[float], complex])

Return copy of self after normalization is applied using source spectrum function.