# SPEC-005: 水溶液离子平衡与滴定动态仿真实验室 (Acid-Base Titration & Precipitation Interactive Lab)

- **规格编号**：`SPEC-005`
- **标题**：水溶液多平衡体系动态交互实验室工程规格说明书
- **状态**：已批准 (Approved) ✅
- **关联研报**：[`docs/research/RESEARCH-008-水溶液多平衡体系SOTA仿真引擎逆向解构与数值状态机实证研报.md`](../research/RESEARCH-008-水溶液多平衡体系SOTA仿真引擎逆向解构与数值状态机实证研报.md)
- **交付目标产物**：`docs/实验室/滴定与沉淀平衡.html`
- **统一语言遵循**：[`CONTEXT.md`](../../CONTEXT.md)
- **编写时间**：2026年10月

---

## 1. 用户故事 (User Story)

- **作为** 一名正在备考高二期末统考与高考化学的学生或教研员，
- **我希望** 能在一个高度互动的可视化仿真实验室中，自由调节滴定体积与酸碱参数，实时观察滴定突变曲线、指示剂变色、微观粒子浓度动态柱状图以及沉淀溶解平衡转化，
- **以便于** 从本质上透彻理解三大守恒、突变范围确定、缓冲溶液原理及溶度积 Ksp 转化规律，不再死记硬背。

---

## 2. 功能模块与技术实现规格 (Technical Specifications)

实验室页面采用纯原生单页架构，不依赖任何第三方外部库（零网络依赖，离线秒开），内嵌四大功能面板：

```mermaid
flowchart TD
    UserCtrl["交互控制面板<br>(调节加入NaOH体积 / 切换强酸与弱酸)"] --> CalcEngine["纯原生数值平衡引擎<br>(精确求解电荷守恒与物料守恒)"]
    
    CalcEngine --> CurveView["1. SVG 动态滴定曲线视图<br>(绘制0~40mL曲线，高亮当前坐标与切线)"]
    CalcEngine --> ParticleView["2. 微观粒子浓度柱状图<br>(实时动态展示各粒子此消彼长)"]
    CalcEngine --> BeakerView["3. 滴定杯与指示剂变色视图<br>(酚酞与甲基橙颜色连续平滑过渡)"]
    CalcEngine --> PrecipitateView["4. 沉淀溶解与转化对照面板<br>(AgCl -> AgI 沉淀转化与Ksp定量推导)"]
```

### 模块 1：控制参数面板
- **酸类型切换**：
  - 强酸模式：0.100 mol/L 盐酸 HCl (20.00 mL)
  - 弱酸模式：0.100 mol/L 醋酸 CH3COOH (20.00 mL, Ka = 1.75 × 10⁻⁵)
- **滴定剂**：0.100 mol/L 氢氧化钠 NaOH
- **体积交互控制**：
  - 拖动滑块：0.00 mL ~ 40.00 mL，步长 0.05 mL；
  - 微调按钮：步进 ±0.05 mL / ±1.00 mL，支持一键直达“半中和点 (10.00 mL)”与“化学计量点 (20.00 mL)”。

### 模块 2：SVG 动态突变曲线
- 坐标系：横轴为 V(NaOH)/mL (0 ~ 40)，纵轴为 pH (0 ~ 14)；
- 预先渲染背景参考曲线，随着滑块滑动，高亮当前点的大圆点探针与切线；
- 突变范围高亮：用浅蓝色背景带标注 pH 突变范围（强酸突变为 4.30 ~ 9.70，弱酸突变为 7.74 ~ 9.70）；
- 指示剂变色范围线：标注酚酞（8.2 ~ 10.0）与甲基橙（3.1 ~ 4.4）变色阈值。

### 模块 3：微观粒子浓度动态柱状图
- 实时柱状图对比：
  - `[Na⁺]`
  - `[A⁻]`（Cl⁻ 或 CH3COO⁻）
  - `[HA]`（未电离的弱酸分子）
  - `[OH⁻]`
  - `[H⁺]`
- 动态标注四大典型位置的微粒浓度大小排序关系（如半中和点时 `c(CH3COO⁻) > c(Na⁺) > c(H⁺) > c(OH⁻)`）。

### 模块 4：沉淀溶解平衡与转化探索
- 动态演示：向含等物质的量浓度 Cl⁻ 和 I⁻ 混合溶液中逐滴加入 AgNO3 时沉淀析出的先后顺序计算；
- 提供 Ksp(AgCl) = 1.8 × 10⁻¹⁰ 与 Ksp(AgI) = 8.5 × 10⁻¹⁷ 的转化平衡常数定量推导公式。

---

## 3. 验收标准 (Acceptance Criteria)

1. **[AC-1 严密物理化学计算]**：弱酸中和滴定曲线在化学计量点（20.00 mL）附近计算绝对平滑连续，pH 值符合物理化学理论值（20.00 mL 时弱酸 pH 理论约为 8.72），无任何负数或计算异常；
2. **[AC-2 交互与响应性能]**：在移动端或桌面端拖动滑块时，SVG 曲线与柱状图 60fps 流畅重绘，零卡顿；
3. **[AC-3 零外部依赖与纯净原生]**：单文件 HTML/CSS/JS 内联，零外部脚本引用，完全自适应浅色与深色主题，零 LaTeX 残留；
4. **[AC-4 副轨严审通过]**：经 `verify_intent_fidelity.py` 与 `crucible_runner.py` 自检，健康度得分为 100 分。
