{
  "title": "BroadbandPulse",
  "public_path": "flex_rf.tidy3d.BroadbandPulse",
  "lookup_path": "tidy3d.BroadbandPulse",
  "slug": "flex_rf/tidy3d/BroadbandPulse",
  "public_url": "/rf/latest/autogenerated/flex_rf/tidy3d/broadbandpulse/",
  "object_kind": "class",
  "introduction": "A source time injecting significant energy in the entire custom frequency range.",
  "notes": "",
  "examples": "",
  "references": "",
  "signature": "class BroadbandPulse(SourceTime)",
  "source": {
    "path": "flex/public/tidy3d/tidy3d/components/source/time.py",
    "url": "",
    "lineno": 667,
    "endlineno": 735
  },
  "bases": [
    "SourceTime"
  ],
  "parameter_rows": [
    {
      "name": "freq_range",
      "annotation": "FreqBound",
      "default": "",
      "description": "Frequency range where the pulse should have significant energy.",
      "origin": "declared"
    },
    {
      "name": "minimum_amplitude",
      "annotation": "float",
      "default": "0.3",
      "description": "Minimum amplitude of the pulse relative to the peak amplitude in the frequency range.",
      "origin": "declared"
    },
    {
      "name": "offset",
      "annotation": "float",
      "default": "0.0",
      "description": "An automatic time delay of the peak value of the pulse has been applied under the hood to ensure smooth ramping up of the pulse at time = 0. This offfset is added on top of the automatic time delay in units of 1 / [`2pi * (freq_range[1] - freq_range[0])`].",
      "origin": "declared"
    },
    {
      "name": "attrs",
      "annotation": "dict",
      "default": "factory: dict",
      "description": "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.model_dump_json()`.",
      "origin": "inherited"
    },
    {
      "name": "amplitude",
      "annotation": "NonNegativeFloat",
      "default": "1.0",
      "description": "Real-valued maximum amplitude of the time dependence.",
      "origin": "inherited"
    },
    {
      "name": "phase",
      "annotation": "float",
      "default": "0.0",
      "description": "Phase shift of the time dependence.",
      "origin": "inherited"
    }
  ],
  "members": [
    {
      "name": "amp_freq",
      "kind": "function",
      "signature": "amp_freq(freq: float)",
      "description": "Complex-valued source amplitude as a function of frequency."
    },
    {
      "name": "amp_time",
      "kind": "function",
      "signature": "amp_time(time: float | ArrayFloat1D)",
      "description": "Complex-valued source amplitude as a function of time."
    },
    {
      "name": "end_time",
      "kind": "function",
      "signature": "end_time()",
      "description": "Time after which the source is effectively turned off / close to zero amplitude."
    },
    {
      "name": "frequency_range",
      "kind": "function",
      "signature": "frequency_range(num_fwidth: float = DEFAULT_SIGMA)",
      "description": "Delegated to `frequency_range_sigma(sigma=num_fwidth)` for computing the frequency range where the source amplitude is within `exp(-num_fwidth**2/2)` of the peak amplitude."
    },
    {
      "name": "frequency_range_sigma",
      "kind": "function",
      "signature": "frequency_range_sigma(sigma: float = DEFAULT_SIGMA)",
      "description": "Frequency range where the source amplitude is within `exp(-sigma**2/2)` of the peak amplitude."
    }
  ],
  "group": "flex_rf.tidy3d"
}
