{
  "title": "AxisAlignedPathIntegral",
  "public_path": "flex_rf.tidy3d.AxisAlignedPathIntegral",
  "lookup_path": "tidy3d.rf.AxisAlignedPathIntegral",
  "slug": "flex_rf/tidy3d/AxisAlignedPathIntegral",
  "public_url": "/rf/latest/autogenerated/flex_rf/tidy3d/axisalignedpathintegral/",
  "object_kind": "class",
  "introduction": "Class for defining the simplest type of path integral, which is aligned with Cartesian axes.",
  "notes": "",
  "examples": "```python\npath = AxisAlignedPathIntegral(\n    center=(0, 0, 1),\n    size=(0, 0, 2),\n    extrapolate_to_endpoints=True,\n    snap_path_to_grid=False,\n)\n```",
  "references": "",
  "signature": "class AxisAlignedPathIntegral(AxisAlignedPathIntegralSpec)",
  "source": {
    "path": "flex/public/tidy3d/tidy3d/components/microwave/path_integrals/integrals/base.py",
    "url": "",
    "lineno": 32,
    "endlineno": 128
  },
  "bases": [
    "AxisAlignedPathIntegralSpec"
  ],
  "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": "center",
      "annotation": "TracedCoordinate",
      "default": "(0.0, 0.0, 0.0)",
      "description": "Center of object in x, y, and z.",
      "origin": "inherited"
    },
    {
      "name": "size",
      "annotation": "TracedSize",
      "default": "",
      "description": "Size in x, y, and z directions.",
      "origin": "inherited"
    },
    {
      "name": "extrapolate_to_endpoints",
      "annotation": "bool",
      "default": "False",
      "description": "If the endpoints of the path integral terminate at or near a material interface, the field is likely discontinuous. When this field is `True`, fields that are outside and on the bounds of the integral are ignored. Should be enabled when computing voltage between two conductors.",
      "origin": "inherited"
    },
    {
      "name": "snap_path_to_grid",
      "annotation": "bool",
      "default": "False",
      "description": "It might be desirable to integrate exactly along the Yee grid associated with a field. When this field is `True`, the integration path will be snapped to the grid.",
      "origin": "inherited"
    }
  ],
  "members": [
    {
      "name": "compute_integral",
      "kind": "function",
      "signature": "compute_integral(scalar_field: EMScalarFieldType)",
      "description": "Computes the defined integral given the input `scalar_field`."
    }
  ],
  "group": "flex_rf.tidy3d"
}
