# Thermal expansion calculator

- Human page: https://happytails.ai/en/calculators/thermal-expansion-calculator/
- Markdown: https://happytails.ai/en/calculators/thermal-expansion-calculator.md
- Structured JSON: https://happytails.ai/agents/en/calculators/thermal-expansion-calculator/index.json
- Visibility: public

## Tool capabilities

| Property | Value |
| --- | --- |
| Tool ID | `thermal-expansion-calculator` |
| Category | calculators |
| Implementation | Registered implementation. Registration alone is not a production-quality guarantee. |
| Browser execution | Automatic updates after valid input or file selection. |
| Browser processing | Browser; see tool notes for network behavior. |
| HTTP API | Not callable through HTTP. |
| Browser-agent interface | run_current_tool |

### Implementation notes

Estimate unconstrained linear expansion or contraction with a constant coefficient. Temperature limits are 0–10,000 K and calculated length changes are limited to ±10%; those bounds do not establish accuracy for your material. Changing units keeps the entered numbers. All calculations stay on your device. These estimates do not establish structural safety or code compliance.

### Inputs and settings

No free-text input is required. Use the file inputs and/or settings below.

| Setting | Meaning | Control type | Default | Constraints |
| --- | --- | --- | --- | --- |
| `initialLength` | Starting length | number | 1 | min=0 max=1000000000 step=any |
| `lengthUnit` | Length unit | select | "m" | Allowed: mm, cm, m, in, ft |
| `initialTemperature` | Starting temperature | number | 20 | min=-10000 max=20000 step=any |
| `finalTemperature` | Final temperature | number | 80 | min=-10000 max=20000 step=any |
| `temperatureUnit` | Temperature unit | select | "°C" | Allowed: °C, °F, K |
| `coefficient` | Linear expansion coefficient | number | 12 | min=-10000 max=10000 step=any |
| `coefficientUnit` | Coefficient unit | select | "µm/(m·K)" | Allowed: µm/(m·K), µin/(in·°F) |

### Browser-agent workflow

1. Open the human page in a browser that supports WebMCP.
2. Discover the interface exposed by that page; use its actual schema.
3. Select files on the page first when the tool requires files.
4. Call `run_current_tool` with valid input and settings.
5. Inspect the returned result or error and the displayed output. Retrieve files from the displayed download links.

Calls do not automatically copy or download results. Browser permissions still apply. Interface availability alone is not proof of successful execution.

### Planning specification

Temperatures from absolute zero to 10,000 K and calculated linear changes within ±10% of starting length. These calculation bounds do not establish physical accuracy. Only constant-coefficient, unconstrained linear expansion is modeled.

This describes intended requirements. Use the implementation notes, interface schema and observed output to determine current support.

### Complete machine-readable capability record

```json
{
  "id": "thermal-expansion-calculator",
  "category": "calculators",
  "built": true,
  "requirements": "Temperatures from absolute zero to 10,000 K and calculated linear changes within ±10% of starting length. These calculation bounds do not establish physical accuracy. Only constant-coefficient, unconstrained linear expansion is modeled.",
  "implementation": {
    "fields": [
      {
        "key": "initialLength",
        "label": "Starting length",
        "value": 1,
        "type": "number",
        "min": 0,
        "max": 1000000000,
        "step": "any"
      },
      {
        "key": "lengthUnit",
        "label": "Length unit",
        "value": "m",
        "type": "select",
        "values": [
          "mm",
          "cm",
          "m",
          "in",
          "ft"
        ]
      },
      {
        "key": "initialTemperature",
        "label": "Starting temperature",
        "value": 20,
        "type": "number",
        "min": -10000,
        "max": 20000,
        "step": "any"
      },
      {
        "key": "finalTemperature",
        "label": "Final temperature",
        "value": 80,
        "type": "number",
        "min": -10000,
        "max": 20000,
        "step": "any"
      },
      {
        "key": "temperatureUnit",
        "label": "Temperature unit",
        "value": "°C",
        "type": "select",
        "values": [
          "°C",
          "°F",
          "K"
        ]
      },
      {
        "key": "coefficient",
        "label": "Linear expansion coefficient",
        "value": 12,
        "type": "number",
        "min": -10000,
        "max": 10000,
        "step": "any",
        "help": "Use the coefficient for the specific material and temperature range. The value is in millionths per degree."
      },
      {
        "key": "coefficientUnit",
        "label": "Coefficient unit",
        "value": "µm/(m·K)",
        "type": "select",
        "values": [
          "µm/(m·K)",
          "µin/(in·°F)"
        ]
      }
    ],
    "input": false,
    "live": true,
    "presentation": "metrics",
    "note": "Estimate unconstrained linear expansion or contraction with a constant coefficient. Temperature limits are 0–10,000 K and calculated length changes are limited to ±10%; those bounds do not establish accuracy for your material. Changing units keeps the entered numbers. All calculations stay on your device. These estimates do not establish structural safety or code compliance.",
    "experience": {
      "automatic": true,
      "single": false,
      "inputMaxLength": 1000000,
      "inputMode": "text",
      "label": "Your text",
      "placeholder": "Type or paste your input…",
      "help": "Change the input or settings to update your result. Results update as you type. Up to 1,000,000 characters.",
      "action": null
    },
    "mode": "automatic",
    "interactive": false
  },
  "execution": "Browser interface",
  "api": null,
  "browser_agent": {
    "supported": true,
    "name": "run_current_tool",
    "discovery": "WebMCP on the human page in a supporting browser",
    "verification": "See audit/API-AUDIT.md; availability is not verification"
  }
}
```

## Page guide

Estimate expansion or contraction across a temperature change. Supply the linear coefficient for your material and temperature range.

How can we improve this tool?

Report a problem or share an idea.

Please leave out private information. Your message and the tool name go to our team via PostHog.

### How to use Thermal expansion calculator

1. Enter starting length and the initial and final temperatures.
2. Supply a linear coefficient with its own unit.
3. Review expansion or contraction and download the calculation.

## Useful next steps

- [Pipe weight calculator](https://happytails.ai/en/calculators/pipe-weight-calculator/) ([Markdown](https://happytails.ai/en/calculators/pipe-weight-calculator.md))

- [Length](https://happytails.ai/en/unit-converters/length/) ([Markdown](https://happytails.ai/en/unit-converters/length.md))

- [Temperature](https://happytails.ai/en/unit-converters/temperature/) ([Markdown](https://happytails.ai/en/unit-converters/temperature.md))

## Use the linear expansion coefficient

The approximation is change in length = starting length × coefficient × temperature change. Enter the coefficient in millionths per kelvin or millionths per degree Fahrenheit. Coefficient units are independent of the temperature display units. A temperature interval of one kelvin equals one Celsius degree, while a Fahrenheit interval is 5/9 as large.

### Use data for your actual material

The starting coefficient is an editable example. Select a value from the specific material's data over the temperature range being considered. A single constant does not describe every alloy, temperature or phase. Negative coefficients are accepted, and cooling can cause contraction.

### Read signed length changes

Positive change means expansion; negative change means contraction. The calculator shows millimetres, inches, percentage change and final length. For a 1 metre length with a coefficient of 12 millionths/K, warming from 20°C to 80°C gives a 0.72 mm increase under this model.

### Know what the approximation omits

The object is assumed to expand freely and be at a uniform temperature. Stress, restraint, creep, phase changes and expansion-joint design are not calculated. Download CSV, text or JSON with the coefficient, temperature interval and assumptions used.
