# Specific Heat Calculator

> Computes the heat energy needed to change the temperature of a mass of material by a given amount from Q = m·c·ΔT, using the specific heat capacity of liquid water (4186 J/(kg·K)) by default.

- Calculator id: `specific-heat` · Category: Physics (`physics`) · Tool name: `calculate_specific_heat_energy`
- Canonical page: https://tttkmbb.com/physics/specific-heat · This document: https://tttkmbb.com/physics/specific-heat.md · JSON definition: https://tttkmbb.com/physics/specific-heat.json

## Purpose

Computes the heat energy needed to change the temperature of a mass of material by a given amount from Q = m·c·ΔT, using the specific heat capacity of liquid water (4186 J/(kg·K)) by default.

**Use when:** You need how much energy heats or cools a known mass of water, metal or another substance by a given number of degrees, without a phase change.

**Do not use when:** The substance melts, boils or freezes within the range (latent heat is not included), or you need the final temperature when two bodies are mixed (calorimetry is not implemented).

## Input

| Parameter | Type | Unit | Required | Description |
| --- | --- | --- | --- | --- |
| `mass_kg` | number | kg | required | Mass of the substance in kilograms (1 L of water ≈ 1 kg). (> 0) |
| `specific_heat_j_kg_k` | number | J/(kg·K) | optional, default 4186 | Specific heat capacity: water 4186, ice 2090, steam 2010, aluminium 897, iron 449, copper 385, air ≈ 1005, ethanol 2440. (> 0) |
| `temperature_change_k` | number | K | required | Temperature rise in kelvin (identical to the °C difference); negative when the substance cools and releases heat. |

## Output

| Field | Type | Unit | Description |
| --- | --- | --- | --- |
| `heat_j` | number | J | Q = m × c × ΔT; negative means heat released. |
| `heat_kj` | number | kJ | Heat in kilojoules. |
| `heat_kcal` | number | kcal | Heat in kilocalories (thermochemical calorie, 4184 J). |
| `heat_kwh` | number | kWh | Heat in kilowatt-hours (J ÷ 3,600,000). |

## Formula

`heat_j = mass_kg × specific_heat_j_kg_k × temperature_change_k; kJ = J / 1000; kcal = J / 4184; kWh = J / 3,600,000`

Assumes a constant specific heat over the temperature range and no phase change; water's value varies by under 1 % between 0 and 100 °C.

## Data Sources

- HyperPhysics – Specific heat — http://hyperphysics.phy-astr.gsu.edu/hbase/thermo/spht.html (reference, retrieved 2026-09-23)
- Wikipedia – Table of specific heat capacities — https://en.wikipedia.org/wiki/Table_of_specific_heat_capacities (reference, retrieved 2026-09-23)
- NIST Special Publication 811 – Guide for the Use of the SI, Appendix B (conversion factors) — https://www.nist.gov/pml/special-publication-811 (standard, retrieved 2026-09-23)

Data freshness: `static`. Deterministic formula with fixed constants; results never go stale. Inputs supplied by the caller determine the output.

## API

- `GET https://tttkmbb.com/api/v1/calculate/specific-heat?mass_kg=…&temperature_change_k=…`
- `POST https://tttkmbb.com/api/v1/calculate/specific-heat` with JSON body `{"inputs": {…}}`
- Response: unified envelope (`success`, `request`, `result.values`, `result.units`, `sources`, `freshness`, `timestamp`, `next_actions`, `links`); see https://tttkmbb.com/docs/response-format.md
- Schema: https://tttkmbb.com/api/v1/calculators/specific-heat · OpenAPI operationId `calculate_specific_heat_energy` in https://tttkmbb.com/openapi.json
- Authentication: none. Rate limit: fair use, see https://tttkmbb.com/docs/rate-limits.md.

## MCP

- Server: `https://tttkmbb.com/mcp` (Streamable HTTP, JSON-RPC 2.0, no auth)
- Tool:  `run_calculator` with `{"calculator_id": "specific-heat", "inputs": {…}}`

## Example

- Heat 2 kg of water by 30 K: inputs `{"mass_kg":2,"temperature_change_k":30}` → `{"heat_j":251160,"heat_kj":251.16,"heat_kcal":60.0287,"heat_kwh":0.069767}`
- Heat 0.5 kg of aluminium (897) by 50 K: inputs `{"mass_kg":0.5,"specific_heat_j_kg_k":897,"temperature_change_k":50}` → `{"heat_j":22425,"heat_kj":22.425,"heat_kcal":5.3597}`

```
GET https://tttkmbb.com/api/v1/calculate/specific-heat?mass_kg=2&temperature_change_k=30
```

## Limitations

The substance melts, boils or freezes within the range (latent heat is not included), or you need the final temperature when two bodies are mixed (calorimetry is not implemented). Assumes a constant specific heat over the temperature range and no phase change; water's value varies by under 1 % between 0 and 100 °C. All values are computed from the formula above; no measurement or live data is involved.

## FAQ

**Is a temperature change in °C the same as in K?**

Yes. A difference of 30 °C is a difference of 30 K, so ΔT can be entered from Celsius readings directly.

**How long does heating take with a given heater?**

Divide the heat in joules by the heater power in watts: 251,160 J with a 2000 W kettle takes about 126 s at 100 % efficiency.

## Related

- [Electric Power Calculator](https://tttkmbb.com/physics/electric-power.md) — Energy delivered by an electric heater over time.
- [Energy Converter](https://tttkmbb.com/conversion/energy.md) — Convert the result between J, kcal, kWh and BTU.
- [Temperature Converter](https://tttkmbb.com/conversion/temperature.md) — Convert temperatures between °C, °F and K.
