tidy3d.components.source.field.BroadbandSource

tidy3d.components.source.field.BroadbandSource#

class BroadbandSource[source]#

Bases: Source, ABC

A source with frequency dependent field distributions.

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

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

  • size (tuple[Union[NonNegativeFloat, autograd.tracer.Box], Union[NonNegativeFloat, autograd.tracer.Box], Union[NonNegativeFloat, autograd.tracer.Box]]) – [units = um]. Size in x, y, and z directions.

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

  • num_freqs (int = 1) – Number of points used to approximate the frequency dependence of the injected field. A Chebyshev interpolation is used, thus, only a small number of points is typically sufficient to obtain converged results. Note that larger values of ‘num_freqs’ could spread out the source time signal and introduce numerical noise, or prevent timely field decay.

Attributes

frequency_grid

A Chebyshev grid used to approximate frequency dependence.

num_freqs

source_time

size

center

name

num_freqs#
property frequency_grid#

A Chebyshev grid used to approximate frequency dependence.