tidy3d.plugins.smatrix.CoaxialLumpedPort#
- class CoaxialLumpedPort[source]#
Bases:
AbstractLumpedPort,AbstractAxesRHClass representing a single coaxial lumped port.
- Parameters:
name (str) – Unique name for the port.
impedance (Union[complex,
ImpedanceSpec] = 50) – Reference port impedance in ohms. Accepts a plain real number (e.g.50) for a purely resistive load, or anImpedanceSpecfor a complex-valued impedance (which also requires a measurement frequency). Passing a complex scalar with a non-zero imaginary part raises a validation error; useImpedanceSpecinstead.num_grid_cells (Optional[PositiveInt] = 3) – Number of mesh grid cells associated with the port along each direction, which are added through automatic mesh refinement. A value of
Nonewill turn off automatic mesh refinement.enable_snapping_points (bool = True) – When enabled, snapping points are automatically generated to snap grids to key geometric features of the lumped port for more accurate modelling.
center (tuple[float, float, float] = (0.0, 0.0, 0.0)) – [units = um]. Center of object in x, y, and z.
outer_diameter (PositiveFloat) – [units = um]. Diameter of the outer coaxial circle.
inner_diameter (PositiveFloat) – [units = um]. Diameter of the inner coaxial circle.
normal_axis (Literal[0, 1, 2]) – Specifies the axis which is normal to the concentric circles.
direction (Literal['+', '-']) – The direction of the signal travelling in the transmission line. This is needed in order to position the path integral, which is used for computing conduction current using Ampère’s circuital law.
Note
Only purely resistive impedances are supported. Providing an
impedancewith a non-zero imaginary part raises a validation error. For complex impedance support, useLumpedPortinstead.Example
>>> port1 = CoaxialLumpedPort(center=(0, 0, 0), ... outer_diameter=4, ... inner_diameter=1, ... normal_axis=2, ... direction="+", ... name="coax_port_1", ... impedance=50 ... )
Attributes
Required for inheriting from AbstractTerminalPort.
Required for inheriting from AbstractAxesRH.
impedancenum_grid_cellsenable_snapping_pointsnameMethods
compute_current(sim_data)Helper to compute current flowing through the port.
compute_voltage(sim_data)Helper to compute voltage across the port.
to_current_monitor(freqs[, snap_center, grid])Field monitor to compute port current.
to_load([snap_center])Create a load resistor from the lumped port.
to_source(source_time[, snap_center, grid])Create a current source from the lumped port.
to_voltage_monitor(freqs[, snap_center, grid])Field monitor to compute port voltage.
- center#
- outer_diameter#
- inner_diameter#
- normal_axis#
- direction#
- property main_axis#
Required for inheriting from AbstractAxesRH.
- property injection_axis#
Required for inheriting from AbstractTerminalPort.
- to_source(source_time, snap_center=None, grid=None, **kwargs)[source]#
Create a current source from the lumped port.
- to_voltage_monitor(freqs, snap_center=None, grid=None)[source]#
Field monitor to compute port voltage.
- to_current_monitor(freqs, snap_center=None, grid=None)[source]#
Field monitor to compute port current.