応力とひずみとは?材料力学の基本概念をわかりやすく解説

はじめに

構造物を設計するとき、「この部材は壊れないだろうか?」「どれだけ変形するだろうか?」という問いに答えるのが 材料力学 です。航空宇宙分野では機体の軽量化と安全性の両立、建築分野では地震に耐える柱や梁の設計、機械分野ではエンジン部品の疲労寿命評価など、あらゆる工学分野で材料力学の知識が不可欠です。

本記事では、材料力学の最も基礎的な概念である 応力(stress)ひずみ(strain) を丁寧に解説します。定義の式から始めて、フックの法則、ポアソン比、そして応力-ひずみ曲線まで、数式と具体例を交えて理解を深めていきましょう。


前提知識

この記事を読む前に、以下の記事を読んでおくと理解が深まります。

材料力学とは

材料力学(Mechanics of Materials / Strength of Materials)とは、外力が作用した部材の内部に生じる力の分布や変形を解析する学問です。

ニュートン力学では物体を「質点」や「剛体」として扱いますが、材料力学では物体が 変形する ことを正面から取り扱います。具体的には以下のような問題に答えます。

  • 部材に荷重をかけたとき、内部にどのような力が生じるか(応力)
  • 部材がどれだけ伸びたり縮んだりするか(ひずみ・変位)
  • 材料が壊れないための条件は何か(強度設計)

応力(Stress)の定義

垂直応力

断面積 $A$ の棒に外力 $F$ を軸方向に加えたとき、断面に生じる 垂直応力(normal stress) $\sigma$ は次のように定義されます。

$$ \sigma = \frac{F}{A} $$

ここで各記号の意味は以下のとおりです。

記号 意味 SI単位
$\sigma$ 垂直応力 Pa(= N/m$^2$)
$F$ 外力(荷重) N
$A$ 断面積 m$^2$

応力の単位はパスカル(Pa)ですが、工学的には MPa(= $10^6$ Pa)や GPa(= $10^9$ Pa)がよく用いられます。

垂直応力は力の向きによって2種類に分類されます。

  • 引張応力(tensile stress): 部材を引き伸ばす方向に作用する応力(正)
  • 圧縮応力(compressive stress): 部材を縮める方向に作用する応力(負)

せん断応力

断面に対して 平行 に力が作用するとき、せん断応力(shear stress) $\tau$ が生じます。

$$ \tau = \frac{V}{A} $$

ここで $V$ はせん断力(断面と平行な方向の内力)、$A$ はせん断力が作用する断面積です。

せん断応力は、ボルト接合部のせん断破壊や梁のせん断力の評価など、実用上きわめて重要な概念です。


ひずみ(Strain)の定義

垂直ひずみ

元の長さ $L$ の棒が外力によって $\Delta L$ だけ変形したとき、垂直ひずみ(normal strain) $\varepsilon$ は次のように定義されます。

$$ \varepsilon = \frac{\Delta L}{L} $$

ひずみは「長さの変化量」を「元の長さ」で割った量であるため、無次元量(単位なし)です。ただし実用上は $\mu\varepsilon$(マイクロストレイン、$10^{-6}$)や %(パーセント)で表すこともあります。

引張方向の変形であれば $\varepsilon > 0$、圧縮方向であれば $\varepsilon < 0$ となります。

せん断ひずみ

せん断応力によって生じる角度変化を せん断ひずみ(shear strain) $\gamma$ と呼びます。微小変形を仮定すると、せん断ひずみは次のように定義されます。

$$ \gamma = \tan\theta \approx \theta \quad (\theta \ll 1) $$

ここで $\theta$ は、もともと直角であった辺がせん断変形によって傾いた角度(ラジアン)です。


フックの法則(Hooke’s Law)

多くの材料は、ある範囲内の荷重に対して応力とひずみが 線形関係(比例関係) を保ちます。これを フックの法則 といいます。

垂直応力に対するフックの法則

$$ \sigma = E \varepsilon $$

比例定数 $E$ を ヤング率(Young’s modulus) または 縦弾性係数 と呼びます。ヤング率の単位は応力と同じ Pa(通常は GPa)です。

ヤング率は「材料の硬さ(変形しにくさ)」を表す指標であり、代表的な値は以下のとおりです。

材料 ヤング率 $E$ [GPa]
鋼(Steel) 約 200
アルミニウム 約 70
約 110
ガラス 約 70
ゴム 約 0.01

せん断応力に対するフックの法則

$$ \tau = G \gamma $$

比例定数 $G$ を せん断弾性係数(横弾性係数、剛性率) と呼びます。等方性材料では $E$、$G$、ポアソン比 $\nu$ の間に以下の関係が成り立ちます。

$$ G = \frac{E}{2(1 + \nu)} $$


ポアソン比

棒を軸方向に引っ張ると、軸方向には伸びますが、横方向(直交方向)には縮みます。この現象を定量的に表すのが ポアソン比(Poisson’s ratio) $\nu$ です。

軸方向のひずみを $\varepsilon_x$、横方向のひずみを $\varepsilon_y$ とすると、ポアソン比は次のように定義されます。

$$ \nu = -\frac{\varepsilon_y}{\varepsilon_x} $$

横方向のひずみは軸方向と逆符号であるため、マイナスを付けて $\nu > 0$ となるように定義されています。

代表的な材料のポアソン比を以下に示します。

材料 ポアソン比 $\nu$
約 0.30
アルミニウム 約 0.33
約 0.34
ゴム 約 0.50(非圧縮に近い)
コルク 約 0.00

理論的には等方性材料のポアソン比は $-1 \leq \nu \leq 0.5$ の範囲をとります。$\nu = 0.5$ は体積変化を伴わない非圧縮性材料に相当します。


応力-ひずみ曲線

材料の力学的特性を理解するうえで最も重要な図が、応力-ひずみ曲線(stress-strain curve) です。引張試験によって得られるこの曲線には、いくつかの特徴的な点・領域が存在します。

1. 弾性域(Elastic Region)

原点から 比例限度 までの直線的な領域です。この範囲では荷重を取り除くと変形がゼロに戻ります。直線の傾きがヤング率 $E$ です。

$$ E = \frac{\sigma}{\varepsilon} = \text{応力-ひずみ曲線の傾き} $$

2. 降伏点(Yield Point)

弾性限度を超えると、荷重を取り除いても変形が残る 塑性変形 が始まります。この遷移点を 降伏点 といい、そのときの応力を 降伏応力(yield stress) $\sigma_Y$ と呼びます。

明確な降伏点を持たない材料(アルミニウム合金など)では、0.2%のひずみオフセットで定義する 0.2%耐力 を降伏応力の代わりに用います。

3. 引張強さ(Ultimate Tensile Strength)

応力-ひずみ曲線の最大値に対応する応力を 引張強さ $\sigma_u$ と呼びます。

4. 破断(Fracture)

引張強さを超えると、断面積の局所的な減少(ネッキング)が生じ、最終的に 破断 に至ります。


具体例: 鋼材の引張荷重による伸びの計算

直径 $d = 10 \, \mathrm{mm}$ の丸棒(長さ $L = 1 \, \mathrm{m}$)に引張荷重 $F = 50 \, \mathrm{kN}$ を加えたとき、伸び $\Delta L$ を求めましょう。材料は鋼($E = 200 \, \mathrm{GPa}$)とします。

Step 1: 断面積の計算

$$ A = \frac{\pi d^2}{4} = \frac{\pi (0.010)^2}{4} = 7.854 \times 10^{-5} \, \mathrm{m}^2 $$

Step 2: 応力の計算

$$ \sigma = \frac{F}{A} = \frac{50 \times 10^3}{7.854 \times 10^{-5}} = 6.366 \times 10^{8} \, \mathrm{Pa} = 636.6 \, \mathrm{MPa} $$

Step 3: ひずみの計算(フックの法則)

$$ \varepsilon = \frac{\sigma}{E} = \frac{636.6 \times 10^6}{200 \times 10^9} = 3.183 \times 10^{-3} $$

Step 4: 伸びの計算

$$ \Delta L = \varepsilon \cdot L = 3.183 \times 10^{-3} \times 1.0 = 3.183 \times 10^{-3} \, \mathrm{m} \approx 3.18 \, \mathrm{mm} $$

したがって、鋼製の丸棒に 50 kN の引張荷重を加えると、約 3.18 mm 伸びることがわかりました。

一般鋼材の降伏応力は 250 – 400 MPa 程度であるため、$\sigma = 636.6 \, \mathrm{MPa}$ は降伏応力を超えています。実際にはこの荷重では塑性変形が生じるため、線形のフックの法則は厳密には適用できませんが、弾性域での計算手順を示す目的でこの例を取り上げました。


Python で応力-ひずみ曲線を可視化

Python を用いて、軟鋼の典型的な応力-ひずみ曲線を可視化してみましょう。ここでは弾性域・降伏・ひずみ硬化・ネッキング・破断の各段階を近似的にモデル化します。

import numpy as np
import matplotlib.pyplot as plt

# --- パラメータ設定 ---
E = 200e3          # ヤング率 [MPa]
sigma_y = 250      # 降伏応力 [MPa]
sigma_u = 400      # 引張強さ [MPa]
eps_y = sigma_y / E          # 降伏ひずみ
eps_u = 0.15                 # 引張強さに対応するひずみ
eps_f = 0.25                 # 破断ひずみ
sigma_f = 300                # 破断時応力 [MPa]

# --- 各区間のひずみ配列を作成 ---
# (1) 弾性域: 0 ~ eps_y
eps_elastic = np.linspace(0, eps_y, 200)
sigma_elastic = E * eps_elastic  # フックの法則

# (2) 降伏 + ひずみ硬化域: eps_y ~ eps_u
eps_hardening = np.linspace(eps_y, eps_u, 300)
# べき乗則によるひずみ硬化の近似
n = 0.4  # 硬化指数
sigma_hardening = sigma_y + (sigma_u - sigma_y) * (
    (eps_hardening - eps_y) / (eps_u - eps_y)
) ** n

# (3) ネッキング~破断域: eps_u ~ eps_f
eps_necking = np.linspace(eps_u, eps_f, 200)
sigma_necking = sigma_u + (sigma_f - sigma_u) * (
    (eps_necking - eps_u) / (eps_f - eps_u)
)

# --- 全区間を結合 ---
eps_all = np.concatenate([eps_elastic, eps_hardening, eps_necking])
sigma_all = np.concatenate([sigma_elastic, sigma_hardening, sigma_necking])

# --- 描画 ---
fig, ax = plt.subplots(figsize=(9, 6))
ax.plot(eps_all * 100, sigma_all, color="steelblue", linewidth=2)

# 特徴的な点にマーカーを追加
ax.plot(eps_y * 100, sigma_y, "o", color="darkorange", markersize=8,
        label=f"降伏点 ($\\sigma_Y$ = {sigma_y} MPa)")
ax.plot(eps_u * 100, sigma_u, "s", color="crimson", markersize=8,
        label=f"引張強さ ($\\sigma_u$ = {sigma_u} MPa)")
ax.plot(eps_f * 100, sigma_f, "^", color="purple", markersize=8,
        label=f"破断点 ($\\sigma_f$ = {sigma_f} MPa)")

# 弾性域の傾きを示す補助線
eps_guide = np.linspace(0, 0.003, 50)
ax.plot(eps_guide * 100, E * eps_guide, "--", color="gray", linewidth=1,
        label=f"弾性域 (E = {E/1e3:.0f} GPa)")

ax.set_xlabel("ひずみ ε [%]", fontsize=13)
ax.set_ylabel("応力 σ [MPa]", fontsize=13)
ax.set_title("軟鋼の応力-ひずみ曲線(模式図)", fontsize=14)
ax.legend(fontsize=10, loc="lower right")
ax.set_xlim(0, eps_f * 100 + 2)
ax.set_ylim(0, sigma_u + 80)
ax.grid(True, linestyle="--", alpha=0.5)
plt.tight_layout()
plt.savefig("stress_strain_curve.png", dpi=150)
plt.show()

上記のコードを実行すると、弾性域からひずみ硬化を経て破断に至るまでの典型的な応力-ひずみ曲線が描画されます。降伏点・引張強さ・破断点をマーカーで示しているため、各段階の位置関係を視覚的に確認できます。


まとめ

本記事では、材料力学の最も基本的な概念である応力とひずみについて解説しました。要点を整理します。

概念 定義式 物理的意味
垂直応力 $\sigma$ $\sigma = F / A$ 単位面積あたりの内力
せん断応力 $\tau$ $\tau = V / A$ 断面に平行な単位面積あたりの内力
垂直ひずみ $\varepsilon$ $\varepsilon = \Delta L / L$ 元の長さに対する変形量の比
フックの法則 $\sigma = E\varepsilon$ 弾性域での応力-ひずみの線形関係
ポアソン比 $\nu$ $\nu = -\varepsilon_y / \varepsilon_x$ 軸方向と直交方向のひずみ比

材料力学では、これらの基本概念を土台として、曲げ応力、ねじり応力、座屈など、より複雑な問題へと展開していきます。

次の記事では、梁の 曲げ応力断面二次モーメント について解説する予定です。構造部材の設計に不可欠なこれらの概念を、同様に数式と具体例を交えて学んでいきましょう。