Learning Plan Snapshot: Chapter 2 Complete → Chapter 3 Start
Snapshot Date: 2026-05-25
Completed: Chapter 2 (Diffusion Equation)
Next: Chapter 3 (Butler-Volmer Kinetics)
Overall Progress: 3/8 Weeks Complete
I. Overall Learning Roadmap
| Chapter | Topic | Status |
|---|---|---|
| Ch 1 | Electrochemical Fundamentals & OCV | ✅ Complete |
| Ch 2 | Diffusion Equation (Fick’s Second Law) | ✅ Complete |
| Ch 3 | Butler-Volmer Kinetics | ← Current |
| Ch 4 | Full SPM Implementation & Validation | ⏳ |
| Ch 5 | SPMe Model | ⏳ |
| Ch 6 | P2D Model | ⏳ |
| Ch 7 | Advanced Applications | ⏳ |
II. Chapter 2 Completion Report
2.1 Knowledge Points Reviewed
| # | Knowledge Point | Mastery |
|---|---|---|
| 2.1 | Fick’s First Law (J = −D·∂c/∂r) | ✅ Understand flux driven by concentration gradient |
| 2.2 | Fick’s Second Law (mass conservation → PDE) | ✅ Hand-derived both Cartesian and spherical forms |
| 2.3 | Spherical “onion model” (volume ∝ r²) | ✅ Understand geometric focusing effect |
| 2.4 | Boundary conditions (center symmetry + surface Neumann) | ✅ Master physical meaning of both BCs |
| 2.5 | Spatial discretization (uniform grid, dr) | ✅ Can convert continuous function to array |
| 2.6 | Taylor expansion → finite differences (1st + 2nd order) | ✅ Hand-derived central difference formulas |
| 2.7 | Spherical Laplacian discretization (α_i, β_i, γ_i) | ✅ Hand-derived coefficient combination process |
| 2.8 | Explicit vs. Implicit Euler (CFL condition) | ✅ Verified necessity of implicit with actual parameters |
| 2.9 | L’Hôpital center boundary (origin of 6) | ✅ Hand-derived the complete 3×2=6 chain |
| 2.10 | Tridiagonal matrix + scipy banded storage | ✅ Understand ab[0/1/2] storage mapping |
| 2.11 | Building diffusion solver from scratch | ✅ Matrix difference vs model.py = 0 |
2.2 Core Formulas
- Fick’s First Law:
J = -D · ∂c/∂r - Fick’s Second Law (spherical):
∂c/∂t = D · [∂²c/∂r² + (2/r)·∂c/∂r] - Laplacian Discretization:
∇²c_i = α_i·c_{i-1} + β_i·c_i + γ_i·c_{i+1} - Center Laplacian:
∇²c|₀ = 6(c₁−c₀)/dr² - Implicit Euler Matrix:
(I − DΔt·L)·c_new = c_old
2.3 Code Implementation
| File | Function/Module | Status |
|---|---|---|
diffusion_solver_my.py |
build_diffusion_matrix() |
✅ Self-written, matrix diff = 0 |
diffusion_solver_my.py |
solve_one_step() |
✅ Self-written |
diffusion_solver_my.py |
simulate_diffusion() |
✅ Self-written |
plot_diffusion_results.py |
Simulation result visualization | ✅ |
verify_comparison.py |
Numerical comparison verification | ✅ Diff = 0 |
2.4 Visualization Outputs
| Image | Content |
|---|---|
diffusion_concept.png |
Physical concept diagram (concentration gradient + onion model + discharge distribution) |
diffusion_discretization.png |
Discretization diagram (node grid + tridiagonal matrix + boundary conditions) |
diffusion_simulation.png |
Simulation results (profile evolution + D sensitivity + center vs. surface) |
diffusion_simulation_ref.png |
Reference comparison plot (verification) |
III. Chapter 3 Key Focus Overview
3.1 Learning Objectives
- Understand fundamental concepts of electrochemical interfacial reaction kinetics
- Master forward and reverse forms of the Butler-Volmer equation
- Understand the physical meaning of exchange current density j₀ and its dependencies
- Master overpotential η calculation (arcsinh inverse solution at α=0.5)
- Understand how the BV equation maps “current → overpotential” and ultimately affects terminal voltage
3.2 Core Content
- Electrode Kinetics Overview: Chemical reaction rate of Li⁺ intercalation/deintercalation at particle surface
- Butler-Volmer Equation: j = j₀ · [exp(αFη/RT) − exp(−(1−α)Fη/RT)]
- Exchange Current Density j₀: j₀ = k · c_e^(1-α) · c_s^α · (c_max−c_s)^(1-α)
- Inverse Overpotential (α=0.5): η = 2RT/F · arcsinh(j / 2j₀)
- Connection to Diffusion Equation: Diffusion provides c_s_surf → BV computes η → voltage coupling outputs V_cell
3.3 Key Formulas
$$
j = j_0 \cdot \left[ \exp!\left(\frac{\alpha F \eta}{RT}\right) - \exp!\left(-\frac{(1-\alpha)F \eta}{RT}\right) \right]
$$
$$
\eta = \frac{2RT}{F} \cdot \mathrm{arcsinh}!\left(\frac{j}{2j_0}\right) \quad (\alpha = 0.5)
$$
$$
j_0 = k \cdot c_e^{1-\alpha} \cdot c_s^{\alpha} \cdot (c_{\mathrm{max}} - c_s)^{1-\alpha}
$$
3.4 Expected Outcomes
| Outcome | Description |
|---|---|
| Understand BV equation physical meaning | Understand that exp terms represent oxidation and reduction driving forces respectively |
| Hand-derive arcsinh inverse | Understand why α=0.5 allows analytical inverse solution |
Independently implement bv_overpotential() |
Write BV inverse function from scratch, compare against model.py |
| Generate BV visualization figures | η-j curves at different SOC, j₀ dependency relationships |
| Understand complete voltage chain | Current → j → η → V_cell = OCV ± η |
IV. New Conversation Entry Point
When starting a new conversation in the AI assistant, enter:
1 | Please read learning/learning_notes_03_kinetics/session_03_background.md to begin this session |
Plan Snapshot Date: 2026-05-25
Next Chapter: Course #03 - Butler-Volmer Kinetics