# 熱膨張（線膨張）計算 - 技術根拠

## 対象範囲

単一材料・単一部材が、拘束のない自由膨張（free expansion）の状態で温度変化を受けたときの、線膨張による長さ変化を求める。

- 初期長さ L0
- 線膨張係数 α（ユーザーが直接入力する）
- 初期温度 T0、最終温度 T1
- 温度差 ΔT = T1 − T0
- 長さ変化 ΔL、変化後長さ L1
- 加熱時の伸び（ΔL > 0）、冷却時の縮み（ΔL < 0）

対象外：拘束された部材に生じる熱応力、複合材（異種材料の組合せ、バイメタル等）、温度に依存して変化する線膨張係数、面積膨張・体積膨張、部材内で温度が一様でない場合、クリープ・塑性変形・相変態。

## 採用式

材料力学・機械設計の教科書に一般に掲載される、線膨張の基本式である（例：Shigley, *Mechanical Engineering Design*、および国内の材料力学・機械設計教科書）。特定メーカー・特定規格に固有の式ではない。

```text
ΔT = T1 − T0
ΔL = α × L0 × ΔT
L1 = L0 + ΔL
```

## 前提条件

- 自由膨張（拘束なし）を仮定する。部材が拘束されている場合に生じる熱応力は対象外。
- 線膨張係数αは、対象の温度範囲で一定とみなす（温度依存性は考慮しない）。
- 単一材料・単一部材を対象とし、複合材（異種材料の組合せ）による見かけの膨張係数の変化は対象外。
- 部材内の温度は一様であることを前提とする（非一様温度分布による内部応力・反りは対象外）。
- 線膨張（1次元の長さ変化）のみを対象とし、面積膨張・体積膨張は対象外。

## 単位

- 長さ：mm
- 温度：℃（ΔTの計算にはT1・T0の差のみを用いるため、℃で入力しても絶対温度Kで入力しても差は等しく、結果に影響しない）
- 線膨張係数：1/℃

## 線膨張係数αの扱い

線膨張係数αは、ユーザーが直接入力する形式を基本とする。本ページはα自体の数値を提供・保証しない。α値は材料規格（JIS等）やメーカー技術資料で確認すること。

参考として、検算に用いた値は次の通り（一般に材料力学・機械設計分野で広く紹介される代表値であり、規格値・保証値ではない）。

| 材料の例 | α（代表値、1/℃） |
|---|---|
| 鋼（一般構造用鋼相当） | 約 12×10⁻⁶ |
| アルミニウム（一般的なアルミニウム合金相当） | 約 23×10⁻⁶ |

## 検算値（独立計算による確認）

Pythonで独立に検算した値（丸め誤差以外で不一致がある場合は公開可能扱いにしない、という受入基準に対応）。

| ケース | L0 [mm] | α [1/℃] | T0 [℃] | T1 [℃] | ΔT [℃] | ΔL [mm] | L1 [mm] |
|---|---|---|---|---|---|---|---|
| 加熱例1（鋼相当） | 1000 | 0.000012 | 20 | 120 | 100 | 1.2 | 1001.2 |
| 加熱例2（アルミ相当） | 2000 | 0.000023 | 20 | 70 | 50 | 2.3 | 2002.3 |
| 冷却例 | 1500 | 0.000012 | 80 | 20 | -60 | -1.08 | 1498.92 |

## 対象外・注意事項

- 拘束された部材に生じる熱応力は対象外（別途、拘束条件に応じた熱応力計算が必要）。
- 複合材（異種材料の組合せ）、温度依存の線膨張係数は対象外。
- 面積膨張・体積膨張、部材内の非一様温度分布は対象外。
- クリープ、塑性変形、相変態は対象外。
