tidy3d.PointDipole#

class PointDipole[source]#

Bases: CurrentSource, ReverseInterpolatedSource

Uniform current source with a zero size. The source corresponds to an infinitesimal antenna with a fixed current density, and is slightly different from a related definition that is used in some contexts, namely an oscillating electric or magnetic dipole. The two are related through a factor of omega ** 2 in the power normalization, where omega is the angular frequency of the oscillation. This is discussed further in our source normalization FAQ page.

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().

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

  • center (Union[tuple[Union[float, autograd.tracer.Box], Union[float, autograd.tracer.Box], Union[float, autograd.tracer.Box]], Box] = (0.0, 0.0, 0.0)) – [units = um]. Center of object in x, y, and z.

  • size (Tuple[Literal[0], Literal[0], Literal[0]] = (0, 0, 0)) – [units = um]. Size in x, y, and z directions, constrained to (0, 0, 0).

  • source_time (Union[GaussianPulse, ContinuousWave, CustomSourceTime]) – Specification of the source time-dependence.

  • interpolate (bool = True) – Handles reverse-interpolation of zero-size dimensions of the source. If False, the source data is snapped to the nearest Yee grid point. If True, equivalent source data is applied on the surrounding Yee grid points to emulate placement at the specified location using linear interpolation.

  • confine_to_bounds (bool = False) – If True, any source amplitudes which, after discretization, fall beyond the bounding box of the source are zeroed out, but only along directions where the source has a non-zero extent. The bounding box is inclusive. Should be set `True when the current source is being used to excite a current in a conductive material.

  • polarization (Literal['Ex', 'Ey', 'Ez', 'Hx', 'Hy', 'Hz']) – Specifies the direction and type of current component.

  • .. – TODO add image of how it looks like based on sim 1.

Example

>>> pulse = GaussianPulse(freq0=200e12, fwidth=20e12)
>>> pt_dipole = PointDipole(center=(1,2,3), source_time=pulse, polarization='Ex')

Attributes

Methods

Inherited Common Usage

size#
__hash__()#

Hash method.