{
  "title": "SourceTime",
  "public_path": "flex_rf.tidy3d.SourceTime",
  "lookup_path": "tidy3d.SourceTime",
  "slug": "flex_rf/tidy3d/SourceTime",
  "public_url": "/rf/latest/autogenerated/flex_rf/tidy3d/sourcetime/",
  "object_kind": "class",
  "introduction": "Base class describing the time dependence of a source.",
  "notes": "",
  "examples": "",
  "references": "",
  "signature": "class SourceTime(AbstractTimeDependence)",
  "source": {
    "path": "flex/public/tidy3d/tidy3d/components/source/time.py",
    "url": "",
    "lineno": 42,
    "endlineno": 147
  },
  "bases": [
    "AbstractTimeDependence"
  ],
  "parameter_rows": [
    {
      "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": "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": "Frequency range within plus/minus `num_fwidth * fwidth` of the central frequency."
    },
    {
      "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."
    },
    {
      "name": "plot_spectrum",
      "kind": "function",
      "signature": "plot_spectrum(times: ArrayFloat1D, num_freqs: int = 101, val: PlotVal = 'real', ax: Ax = None)",
      "description": "Plot the complex-valued amplitude of the source time-dependence. Note: Only the real part of the time signal is used."
    }
  ],
  "group": "flex_rf.tidy3d"
}
