{
  "node": {
    "id": "block:ground-contact",
    "type": "Block",
    "label": "Ground contact",
    "properties": {
      "id": "ground-contact",
      "kind": "studio",
      "name": "Ground contact",
      "summary": "Road-normal contact: on the surface the ground supports what the lift cannot, a one-sided damper arrests a landing and a critically damped spring settles penetration; airborne the lift acts alone. Mode 0 gives the normal acceleration, mode 1 the ground's share.",
      "behavior": "Road-normal contact: on the surface the ground supports what the lift cannot, a one-sided damper arrests a landing and a critically damped spring settles penetration; airborne the lift acts alone. Mode 0 gives the normal acceleration, mode 1 the ground's share.",
      "documentationSlug": "signal-block-ground-contact",
      "referenceOnly": true,
      "ports": [
        {
          "name": "Height above road",
          "direction": "input",
          "unit": "m",
          "description": "Length; Scalar; real. Received from a connected producer."
        },
        {
          "name": "Normal speed",
          "direction": "input",
          "unit": "m/s",
          "description": "Speed; Scalar; real. Received from a connected producer."
        },
        {
          "name": "Lift acceleration",
          "direction": "input",
          "unit": "m/s²",
          "description": "Acceleration; Scalar; real. Received from a connected producer."
        },
        {
          "name": "Normal acceleration",
          "direction": "output",
          "unit": "m/s²",
          "description": "Acceleration; Scalar; real. Produced for connected consumers."
        },
        {
          "name": "Ground share",
          "direction": "output",
          "unit": "m/s²",
          "description": "Acceleration; Scalar; real. Produced for connected consumers."
        }
      ],
      "parameters": [
        {
          "key": "landingTimeConstantS",
          "label": "Landing stroke time constant",
          "unit": "s",
          "default": "0.12",
          "description": "Declared authoring field: Landing stroke time constant."
        },
        {
          "key": "settlingRadPerS",
          "label": "Settling frequency",
          "unit": "rad/s",
          "default": "4.1667",
          "description": "Declared authoring field: Settling frequency."
        },
        {
          "key": "mode",
          "label": "Output (0 normal acceleration, 1 ground share)",
          "unit": "",
          "default": "0",
          "description": "Declared authoring field: Output (0 normal acceleration, 1 ground share)."
        }
      ],
      "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": "e248d21a9902225f1075624f23e7628b54cdb7cc",
      "reviewed": "2026-10-30",
      "type": "ground-contact",
      "implementationId": "ground-contact",
      "url": "https://lemonergy.com/learn/glossary/blocks/signal-block-ground-contact/",
      "documentationUrl": "https://lemonergy.com/learn/glossary/blocks/signal-block-ground-contact/",
      "sourceFile": "studio-help-catalog.json",
      "studioHelp": {
        "type": "ground-contact",
        "namespace": "signal",
        "slug": "signal-block-ground-contact",
        "canonicalSlug": "signal-block-ground-contact",
        "existing": false,
        "dynamic": false,
        "scene": {
          "title": "Ground contact",
          "label": "Ground contact",
          "summary": "Road-normal contact: on the surface the ground supports what the lift cannot, a one-sided damper arrests a landing and a critically damped spring settles penetration; airborne the lift acts alone. Mode 0 gives the normal acceleration, mode 1 the ground's share.",
          "details": [
            "Block type: ground-contact.",
            "3 declared inputs and 2 declared outputs in this model.",
            "Arrows show the direction of signal data. They are not conserving electrical, thermal or mechanical connections."
          ],
          "operation": {
            "kind": "physical-model",
            "symbol": "inputs → equation → response",
            "label": "Reduced vehicle equation",
            "caption": "Road-normal contact: on the surface the ground supports what the lift cannot, a one-sided damper arrests a landing and a critically damped spring settles penetration; airborne the lift acts alone. Mode 0 gives the normal acceleration, mode 1 the ground's share."
          },
          "inputs": [
            {
              "id": "in0",
              "label": "Height above road",
              "quantity": "length",
              "unit": "m",
              "unitDeclared": true,
              "fields": [],
              "quantityLabel": "Length",
              "shapeLabel": "Scalar",
              "elementLabel": "real"
            },
            {
              "id": "in1",
              "label": "Normal speed",
              "quantity": "linear-speed",
              "unit": "m/s",
              "unitDeclared": true,
              "fields": [],
              "quantityLabel": "Speed",
              "shapeLabel": "Scalar",
              "elementLabel": "real"
            },
            {
              "id": "in2",
              "label": "Lift acceleration",
              "quantity": "acceleration",
              "unit": "m/s²",
              "unitDeclared": true,
              "fields": [],
              "quantityLabel": "Acceleration",
              "shapeLabel": "Scalar",
              "elementLabel": "real"
            }
          ],
          "outputs": [
            {
              "id": "out0",
              "label": "Normal acceleration",
              "quantity": "acceleration",
              "unit": "m/s²",
              "unitDeclared": true,
              "fields": [],
              "quantityLabel": "Acceleration",
              "shapeLabel": "Scalar",
              "elementLabel": "real"
            },
            {
              "id": "out1",
              "label": "Ground share",
              "quantity": "acceleration",
              "unit": "m/s²",
              "unitDeclared": true,
              "fields": [],
              "quantityLabel": "Acceleration",
              "shapeLabel": "Scalar",
              "elementLabel": "real"
            }
          ],
          "parameters": [
            {
              "id": "landingTimeConstantS",
              "label": "Landing stroke time constant",
              "unit": "s",
              "value": "0.12"
            },
            {
              "id": "settlingRadPerS",
              "label": "Settling frequency",
              "unit": "rad/s",
              "value": "4.1667"
            },
            {
              "id": "mode",
              "label": "Output (0 normal acceleration, 1 ground share)",
              "unit": "",
              "value": "0"
            }
          ],
          "url": "https://lemonergy.com/learn/glossary/blocks/signal-block-ground-contact/",
          "related": [
            {
              "label": "Road load",
              "url": "https://lemonergy.com/learn/glossary/blocks/signal-block-road-load/"
            },
            {
              "label": "Tyre grip",
              "url": "https://lemonergy.com/learn/glossary/blocks/signal-block-tyre-grip/"
            }
          ],
          "selected": null,
          "connections": []
        }
      }
    }
  },
  "incoming": [],
  "outgoing": [],
  "neighbors": []
}
