高校化学物理と線形近似


# ✅ なぜ近似するのか？

| 理由                     | 内容                      |
| ---------------------- | ----------------------- |
| 🎯 **本質が変わらない**        | 物理量が「有効桁数」や「傾向」だけで十分なとき |
| ⚙️ **解けない式を解ける形に変える**  | 非線形 → 線形化して解析可能に        |
| ⏱ **計算を簡単にして素早く結果を出す** | 実験・シミュレーションでの処理速度向上     |
| 💡 **概念的理解を助ける**       | 微小振動・低速運動などの理解に貢献       |

---

# 📌 頻出の近似式まとめ（ラジアン）

| 元の関数           | 近似式（θ ≪ 1）               | 条件・応用            |
| -------------- | ------------------------ | ---------------- |
| $\sin \theta$  | $\theta$                 | 単振動、振り子、回折       |
| $\tan \theta$  | $\theta$                 | 斜面、幾何光学、天文       |
| $\cos \theta$  | $1 - \frac{\theta^2}{2}$ | エネルギー、運動方程式の直線化  |
| $(1 + x)^n$    | $1 + nx$                 | √近似、相対論エネルギー展開など |
| $\sqrt{1 + x}$ | $1 + \frac{x}{2}$        | 距離、運動、重力など       |

---

# 🧮 数学の背景：マクローリン展開（Maclaurin Expansion）

ある関数 $f(x)$ を $x = 0$ まわりに展開する：

$$
f(x) = f(0) + f'(0)x + \frac{f''(0)}{2!}x^2 + \cdots
$$

### 例：$\sin x$

$$
\sin x = x - \frac{x^3}{3!} + \frac{x^5}{5!} - \cdots
\Rightarrow \sin x \approx x \quad (x \ll 1)
$$

---

# 🧠 近似していい理由：誤差評価ができるから

* テイラー展開は、**どれくらい誤差があるか**を数式でコントロールできる
* $|x| \ll 1$ のとき、高次項（例：$x^3, x^5$）は**無視しても十分小さい**






---

## ✅ 【1】力学：斜面上の近似（\$mg\sin\theta \approx mg\cdot\frac{x}{L}\$）

### ● 近似式：

$$
mg\sin\theta \approx mg \cdot \theta \approx mg \cdot \frac{x}{L}
$$

### ● 意味：

角度 \$\theta\$ が小さいとき、\$\sin\theta \approx \theta\$。さらに \$\theta \approx \frac{x}{L}\$ を用いて、斜面上の力成分を水平方向の変位 \$x\$ に比例する形で近似。

### ● 単位：

N（ニュートン）

### ● 背景：

斜面上の小変位 \$x\$ による重力の分力を単振動へ変換可能にする。

### ● 用途：

単振り子、ばね振動、斜面摩擦解析など。

---

## ✅ 【2】力学：垂直抗力の近似（\$mg\cos\theta \approx mg\$）

### ● 近似式：

$$
mg\cos\theta \approx mg
$$

### ● 意味：

小角度 \$\theta\$ のとき、\$\cos\theta \approx 1\$ を適用。垂直抗力を簡略化して \$mg\$ と近似。

### ● 単位：

N（ニュートン）

### ● 背景：

角度が小さく、\$\cos\theta \geq 0.98\$ 程度と変化が小さい。

### ● 用途：

支持力、摩擦力の近似評価、物理基礎問題の簡略化。

---

## ✅ 【3】幾何光学：光路長の近似（\$r = \sqrt{L^2 + x^2} \approx L + \frac{x^2}{2L}\$）

### ● 近似式：

$$
r = \sqrt{L^2 + x^2} = L\sqrt{1 + \left(\frac{x}{L}\right)^2} \approx L + \frac{x^2}{2L}
$$

### ● 意味：

\$\left(\frac{x}{L}\right)^2 \ll 1\$ のとき、二項展開により \$\sqrt{1+\epsilon} \approx 1 + \frac{\epsilon}{2}\$ を適用。距離のずれを \$x^2/2L\$ として線形補正。

### ● 単位：

m（メートル）

### ● 背景：

スクリーンまでの距離 \$L\$ に対して横方向のずれ \$x\$ が小さい。

### ● 用途：

ヤングの干渉、レンズ収差補正、回折計算、波面展開。

---

## ✅ 【4】天体力学：視差角の近似（\$D \approx \frac{r}{\theta}\$）

### ● 近似式：

$$
\tan\theta \approx \theta = \frac{r}{D} \Rightarrow D \approx \frac{r}{\theta}
$$

### ● 意味：

視差角 \$\theta\$ が非常に小さい（rad単位）とき \$\tan\theta \approx \theta\$ を利用して、三角関係を単純化。

### ● 単位：

\$r\$: AUやm, \$D\$: pcやm, \$\theta\$: rad

### ● 背景：

地球の公転による視差から天体までの距離を求める。

### ● 用途：

恒星までの距離推定（年周視差法）、基礎天文測量。

---

## ✅ 【5】化学：弱酸の電離度の近似（\$\alpha \approx \sqrt{\frac{K\_a}{C}}\$）

### ● 近似式：

$$
K_a = \frac{C\alpha^2}{1 - \alpha} \approx C\alpha^2 \Rightarrow \alpha \approx \sqrt{\frac{K_a}{C}}
$$

### ● 意味：

\$\alpha \ll 1\$ のとき \$1 - \alpha \approx 1\$ を用い、式を簡易化。

### ● 単位：

\$K\_a\$: mol/L, \$\alpha\$: 無次元, $\[H^+] = C\alpha\$: mol/L

### ● 背景：

弱酸（酢酸など）はほとんど電離しない（\$\alpha \ll 1\$）。この仮定により、2次方程式の近似解が得られる。

### ● 用途：

pHの初期近似計算、滴定曲線の解析、緩衝液設計。

---

```Python
# Program Name: physics_chemistry_approximations.py  
# Creation Date: 20250605  
# Overview: Demonstrate common approximations in physics and chemistry using formula visualization  
# Usage: Run in a Python environment with matplotlib and numpy installed  

# -------------------- Install Required Libraries --------------------
!pip install numpy matplotlib --quiet

# -------------------- Import Libraries --------------------
import numpy as np
import matplotlib.pyplot as plt

# -------------------- Central Parameters / パラメータ一元管理 --------------------

# --- 力学（斜面）Mechanics (Inclined Plane) ---
g = 9.8                      # [m/s^2] 重力加速度 / gravitational acceleration
m = 1.0                      # [kg] 質量 / mass
theta_range = np.linspace(0, 0.3, 100)  # [rad] 小角の範囲 / small angle range (0~17°)
L_slope = 1.0                # [m] 斜面長 / slope length
x_slope = 0.1                # [m] 斜面上の水平変位 / horizontal displacement on slope

# --- 幾何光学（光路長）Geometrical Optics (Optical Path) ---
L_optical = 1.0             # [m] スクリーンまでの距離 / distance to screen
x_range = np.linspace(-0.2, 0.2, 100)  # [m] 横方向のずれ / lateral shift from center

# --- 天体視差 Astrometry ---
r_au = 1.496e11             # [m] 地球-太陽間距離 / astronomical unit (AU)
theta_arcsec = 1.0          # [arcsec] 視差角 / parallax angle in arcseconds
theta_rad = theta_arcsec * (np.pi / (180 * 3600))  # [rad] ラジアン変換 / convert to rad

# --- 化学（弱酸）Weak Acid Dissociation ---
C_acid = 0.1                # [mol/L] 酸の初濃度 / initial concentration
Ka_acid = 1.8e-5            # [mol/L] 酢酸の酸解離定数 / acetic acid dissociation constant

# -------------------- Plot 1: sinθ vs θ（斜面運動近似） --------------------
plt.figure()
plt.plot(theta_range, np.sin(theta_range), label='sin(θ)')
plt.plot(theta_range, theta_range, '--', label='θ (approx)')
plt.title("Small Angle Approximation: sin(θ) ≈ θ")
plt.xlabel("θ [rad]")
plt.ylabel("Value")
plt.legend()
plt.grid(True)
plt.show()

# -------------------- Plot 2: 光路長の近似 Optical Path Length --------------------
plt.figure()
r_true = np.sqrt(L_optical**2 + x_range**2)
r_approx = L_optical + (x_range**2) / (2 * L_optical)
plt.plot(x_range, r_true, label='√(L² + x²)')
plt.plot(x_range, r_approx, '--', label='L + x²/(2L)')
plt.title("Optical Path Approximation")
plt.xlabel("x [m]")
plt.ylabel("r [m]")
plt.legend()
plt.grid(True)
plt.show()

# -------------------- Print 3: 天体視差の近似 Astrometric Distance --------------------
D_star = r_au / theta_rad  # [m]
print(f"Parallax angle: {theta_arcsec} arcsec = {theta_rad:.2e} rad")
print(f"Estimated distance to star: {D_star:.2e} m ≈ {D_star/3.086e16:.2f} pc")

# -------------------- Print 4: 化学 電離度の近似 Weak Acid Approximation --------------------
alpha = np.sqrt(Ka_acid / C_acid)       # 電離度 α
H_conc = alpha * C_acid                 # [H⁺]濃度
print(f"Approximate ionization degree (α): {alpha:.4f}")
print(f"[H⁺] ≈ √(Ka·C) = {H_conc:.5e} mol/L")

```