{
  "node": {
    "id": "block:signal-integrator",
    "type": "Block",
    "label": "Physical signal integrator",
    "properties": {
      "id": "signal-integrator",
      "kind": "studio",
      "name": "Physical signal integrator",
      "summary": "Accumulates a typed rate over native simulation time, starting from its configured initial value.",
      "behavior": "Accumulates a typed rate over native simulation time, starting from its configured initial value.",
      "documentationSlug": "signal-integrator",
      "referenceOnly": true,
      "ports": [
        {
          "name": "Input signal",
          "direction": "input",
          "unit": "W",
          "description": "Input signal is a directed power input to this component, expressed in W. Its binding supplies information; it is not a conserving connection."
        },
        {
          "name": "Typed signal output",
          "direction": "output",
          "unit": "J",
          "description": "Directed output available to compatible consumers: Typed signal output."
        }
      ],
      "parameters": [
        {
          "key": "initial",
          "label": "initial",
          "unit": "declared output quantity",
          "default": 0,
          "description": "Declared authoring field: initial.",
          "min": -1000000000000000,
          "max": 1000000000000000
        },
        {
          "key": "stateScale",
          "label": "stateScale",
          "unit": "characteristic output magnitude",
          "default": 1000000,
          "description": "Declared authoring field: stateScale.",
          "min": 1e-09,
          "max": 1000000000000000
        },
        {
          "key": "rateScale",
          "label": "rateScale",
          "unit": "characteristic rate magnitude",
          "default": 1000,
          "description": "Declared authoring field: rateScale.",
          "min": 1e-09,
          "max": 1000000000000
        }
      ],
      "equations": [],
      "example": {
        "title": "Use this authoring component",
        "text": "Choose this component in the Studio library and configure its declared interface. This reference describes the authoring contract; it does not claim a standalone numerical validation or a measured result.",
        "url": "https://design.lemonergy.com/cosim",
        "label": "Open Studio"
      },
      "limits": [
        "The symbolic diagram describes the component and its declared interface. It is not a solved circuit or simulated output.",
        "Configured parameters and model connections determine the result. Check the complete model before interpreting its outputs."
      ],
      "evidence": [
        "docs/glossary/studio-help-catalog.json"
      ],
      "caseIds": [],
      "sourceRepository": "battery-design",
      "sourceRevision": "0a28f1a0a75a0447903b868cbcc734133a77a847",
      "reviewed": "2026-10-30",
      "type": "signal-integrator",
      "implementationId": "signal-integrator",
      "url": "https://lemonergy.com/learn/glossary/blocks/signal-integrator/",
      "documentationUrl": "https://lemonergy.com/learn/glossary/blocks/signal-integrator/",
      "sourceFile": "studio-help-catalog.json",
      "studioHelp": {
        "type": "signal-integrator",
        "namespace": "physical",
        "slug": "signal-integrator",
        "canonicalSlug": "signal-integrator",
        "existing": false,
        "dynamic": false,
        "scene": {
          "kind": "component",
          "componentId": "reference",
          "type": "signal-integrator",
          "name": "Physical signal integrator",
          "domain": "signal",
          "family": "controller",
          "operation": "Accumulates a typed rate over native simulation time, starting from its configured initial value.",
          "mechanism": [
            "Typed rate input",
            "Native time integration",
            "Accumulated quantity"
          ],
          "ports": [],
          "terms": [
            {
              "type": "signal-filter",
              "label": "Physical signal filter"
            },
            {
              "type": "physical-chart",
              "label": "Physical-network sampled chart"
            }
          ],
          "symbol": [
            {
              "tag": "rect",
              "attrs": {
                "x": 55,
                "y": 15,
                "width": 90,
                "height": 50,
                "rx": 3
              }
            },
            {
              "tag": "path",
              "attrs": {
                "d": "M10 40H55M145 40H190M75 50L90 30L105 50L125 25"
              }
            }
          ],
          "selection": {},
          "commands": [
            {
              "id": "input",
              "label": "Input signal",
              "quantity": "power",
              "unit": "W",
              "active": true,
              "summary": "Input signal is a directed power input to this component, expressed in W. Its binding supplies information; it is not a conserving connection.",
              "source": null,
              "target": null
            }
          ],
          "outputs": [
            {
              "id": "out",
              "quantity": "energy",
              "declared": true,
              "consumers": [],
              "label": "Typed signal output",
              "unit": "J"
            }
          ],
          "parameters": [
            {
              "id": "initial",
              "default": 0,
              "unit": "declared output quantity",
              "min": -1000000000000000,
              "max": 1000000000000000,
              "value": 0
            },
            {
              "id": "stateScale",
              "default": 1000000,
              "unit": "characteristic output magnitude",
              "min": 1e-09,
              "max": 1000000000000000,
              "value": 1000000
            },
            {
              "id": "rateScale",
              "default": 1000,
              "unit": "characteristic rate magnitude",
              "min": 1e-09,
              "max": 1000000000000,
              "value": 1000
            }
          ]
        }
      }
    }
  },
  "incoming": [
    {
      "id": "edge:usesBlock/term:energy/block:signal-integrator",
      "type": "usesBlock",
      "source": "term:energy",
      "target": "block:signal-integrator",
      "properties": {
        "sourceFile": "studio-help-catalog.json",
        "scope": "Declared interface quantity or semantic operation; not a numerical validation claim"
      }
    },
    {
      "id": "edge:usesBlock/term:power/block:signal-integrator",
      "type": "usesBlock",
      "source": "term:power",
      "target": "block:signal-integrator",
      "properties": {
        "sourceFile": "studio-help-catalog.json",
        "scope": "Declared interface quantity or semantic operation; not a numerical validation claim"
      }
    }
  ],
  "outgoing": [],
  "neighbors": [
    {
      "id": "term:energy",
      "type": "Term",
      "label": "Energy",
      "properties": {
        "id": "energy",
        "name": "Energy",
        "section": "topic-units",
        "definition": "What a battery stores and delivers: the integral of power over time, in watt-hours or joules. It is capacity times voltage, which is why two cells with equal ampere-hours can hold different energy.",
        "formula": "E = ∫ V·I dt",
        "unit": "Wh",
        "related": [
          "watt-hour",
          "nominal-energy",
          "energy-density"
        ],
        "lesson": "fundamentals/capacity-and-c-rate/#energy",
        "example": {
          "title": "Integrate a changing power trace",
          "text": "A load that draws 40 W for 15 min and then 20 W for 30 min uses 20 Wh in total. Add the area under each part of the power-versus-time trace."
        },
        "url": "https://lemonergy.com/learn/glossary/energy/",
        "mentions": []
      }
    },
    {
      "id": "term:power",
      "type": "Term",
      "label": "Power",
      "properties": {
        "id": "power",
        "name": "Power",
        "section": "topic-units",
        "definition": "The rate at which a cell delivers or absorbs energy: voltage times current, in watts. Power is limited by internal resistance and temperature long before capacity runs out.",
        "formula": "P = V × I",
        "unit": "W",
        "related": [
          "watt",
          "specific-power",
          "state-of-power",
          "internal-resistance"
        ],
        "example": {
          "title": "Separate power from energy",
          "text": "A 100 W load running for 30 min uses 50 Wh. Power tells you how fast energy is transferred; the duration determines how much energy is transferred."
        },
        "url": "https://lemonergy.com/learn/glossary/power/",
        "mentions": []
      }
    }
  ]
}
