|
| 1 | +# ADR 004 — Arrhenius-Korrektur für Austauschstromdichte j₀(T) |
| 2 | + |
| 3 | +**Status:** Accepted — implementiert in v0.3 |
| 4 | +**Date:** 2026-04-20 |
| 5 | +**Context:** Die Material-Presets liefern einen festen `j0_a_m2`-Wert, |
| 6 | +gemessen oder extrapoliert auf 80 °C (353.15 K). Die Stromdichte-Formel |
| 7 | +(Tafel/Butler-Volmer) nahm diesen Wert unverändert, unabhängig von der |
| 8 | +Betriebstemperatur. Das verletzt Arrhenius: bei 30 °C ist OER auf IrO₂ |
| 9 | +ca. 20-fach langsamer, bei 100 °C ca. 3-fach schneller als bei 80 °C. |
| 10 | +Ein Temperatur-Sweep im UI zeigte bei 80 °C den korrekten η_act, bei 30 °C |
| 11 | +aber viel zu kleinen Überpotential (weil j₀ bei Raumtemperatur zu hoch war). |
| 12 | + |
| 13 | +## Entscheidung |
| 14 | + |
| 15 | +Wir korrigieren j₀ dynamisch über eine Arrhenius-Beziehung: |
| 16 | + |
| 17 | +``` |
| 18 | +j0(T) = j0_ref · exp( −E_a / R · (1/T − 1/T_ref) ) |
| 19 | +``` |
| 20 | + |
| 21 | +- **j0_ref** = Preset-Wert in `CatalystSpec.j0_a_m2` (bei T_ref = 353.15 K) |
| 22 | +- **E_a** = scheinbare Aktivierungsenergie, neu eingeführt als |
| 23 | + `CatalystSpec.activation_energy_j_mol` |
| 24 | +- **T** = Betriebstemperatur aus UI-Slider [K] |
| 25 | +- **T_ref** = 353.15 K (80 °C, Konvention des Preset-Tabellenwerts) |
| 26 | + |
| 27 | +Die Funktion liegt in `src/electrochemistry.py` als |
| 28 | +`arrhenius_exchange_current_density()`, die UI berechnet `j0_anode(T)` und |
| 29 | +`j0_cathode(T)` direkt vor dem `Electrochemistry.from_engineering(...)`-Aufruf. |
| 30 | + |
| 31 | +## Zugewiesene E_a-Werte |
| 32 | + |
| 33 | +| Katalysator | E_a [kJ/mol] | Quelle | |
| 34 | +|---|---|---| |
| 35 | +| IrO₂ (commercial) | 52 | Suermann et al. (2017), J. Power Sources 365 | |
| 36 | +| IrRuOx | 48 | Ir-Ru Mischoxid-Konsens, leicht reduziert wegen Ru-Stabilisierung | |
| 37 | +| IrO₂-TiO₂ (low-loading) | 56 | TiO₂-Support erhöht Aktivierungsbarriere | |
| 38 | +| Pt/C (commercial) | 25 | Durst et al. (2014), EES 7 | |
| 39 | +| Pt black | 20 | Unsupported Pt HER — literaturbasiert | |
| 40 | +| Pt-alloy (PtCo/C) | 22 | Pt-Legierung senkt E_a leicht | |
| 41 | + |
| 42 | +## Warum Arrhenius und nicht komplexer |
| 43 | + |
| 44 | +- **Standard in der PEM-EC-Literatur.** Carmo et al. (2013) Eq. (9), |
| 45 | + alle Reviews verwenden dieselbe Form. |
| 46 | +- **Ein neuer Parameter pro Katalysator** — kein Overkill. |
| 47 | +- **Gültigkeitsbereich deckt MVP-Szenarien ab** (30–90 °C, |T−T_ref| < 80 K). |
| 48 | +- **Kompatibel mit dem späteren Full-Butler-Volmer** — dort wird j₀(T) |
| 49 | + genauso eingesetzt, nur mit zusätzlichem Rückreaktions-Term. |
| 50 | + |
| 51 | +## Alternativen verworfen |
| 52 | + |
| 53 | +| Alternative | Warum nicht | |
| 54 | +|---|---| |
| 55 | +| **Statisch lassen (kein Update)** | wissenschaftlich falsch: 20× Fehler bei 30 °C für OER | |
| 56 | +| **Eyring-Gleichung (TST)** | genauer, aber braucht ΔS‡ und ΔH‡ separat — nicht in Datenblättern | |
| 57 | +| **Butler-Volmer mit asymmetrischer α(T)** | α-Temperaturabhängigkeit ist zweiter-Ordnung-Effekt; wird in v0.5 evaluiert | |
| 58 | +| **Tabellierte j₀(T)-Punkte** | Interpolation instabil, keine gute Literaturbasis für alle 6 Presets | |
| 59 | + |
| 60 | +## Konsequenzen |
| 61 | + |
| 62 | +### Positiv |
| 63 | +- **Temperatur-Sweep physikalisch korrekt.** η_act(30 °C) steigt realistisch, |
| 64 | + η_act(90 °C) sinkt realistisch — Polarisationskurven stimmen qualitativ mit |
| 65 | + Carmo et al. (2013) Fig. 6 überein. |
| 66 | +- **Material-Vergleiche auf gleichem Temperaturlevel.** Ein User kann zwei |
| 67 | + Katalysatoren bei beliebigem T vergleichen, ohne manuell umrechnen zu müssen. |
| 68 | +- **MODEL_CARD-Gültigkeitsbereich erweitert** von „nur 80 °C" auf 30–90 °C. |
| 69 | +- **Breaking change im Daten-Schema** ist klein — nur ein neues Pflichtfeld |
| 70 | + in `CatalystSpec`, rückwärtskompatibel via Default wäre möglich, wurde aber |
| 71 | + bewusst ohne Default eingeführt, damit keine Spec ohne E_a gebaut werden kann. |
| 72 | + |
| 73 | +### Negativ |
| 74 | +- **Nicht-Ir-Anoden oder Nicht-Pt-Kathoden** (nicht im Preset) müssen E_a |
| 75 | + selbst mitbringen — es gibt keinen neutralen Default. |
| 76 | +- **E_a aus Literatur hat Streuung ±15 %** — für |T−T_ref| > 30 K wird das |
| 77 | + sichtbar (z.B. ±5 % in j₀ bei T = 25 °C). |
| 78 | +- **Gültigkeit bricht außerhalb [293, 373] K** — kalte Elektrolyseur-Starts |
| 79 | + (< 20 °C) sind unrealistisch, aber wir blocken nicht explizit (der 273–423-K- |
| 80 | + Guard in der Funktion greift). |
| 81 | + |
| 82 | +## Tests |
| 83 | + |
| 84 | +Acht neue Unit-Tests in `tests/test_electrochemistry.py`: |
| 85 | +1. Identität: j₀(T_ref) == j₀_ref (exakt) |
| 86 | +2. Monotonie: j₀(T) strikt steigend in T für E_a > 0 |
| 87 | +3. IrO₂-Realismus: j₀(298)/j₀(353) ≈ 0.05 (Faktor 20 Drop) |
| 88 | +4. HER schwächer T-abhängig als OER (vergleichender Test) |
| 89 | +5. Negatives/null j₀_ref → ValueError |
| 90 | +6. Negatives/null E_a → ValueError |
| 91 | +7. T außerhalb [273, 423] K → ValueError |
| 92 | +8. T_ref außerhalb [273, 423] K → ValueError |
| 93 | + |
| 94 | +## Referenzen |
| 95 | + |
| 96 | +- **Carmo, M., Fritz, D. L., Mergel, J., & Stolten, D. (2013).** A comprehensive |
| 97 | + review on PEM water electrolysis. *Int. J. Hydrogen Energy* 38(12), 4901–4934. |
| 98 | + Eq. (9); Fig. 6. |
| 99 | +- **Suermann, M., Bensmann, B., & Hanke-Rauschenbach, R. (2017).** Kinetic |
| 100 | + modeling of the oxygen evolution reaction on IrO₂ in PEM water electrolysis. |
| 101 | + *J. Power Sources* 365, 47–55. |
| 102 | +- **Durst, J., Siebel, A., Simon, C., et al. (2014).** New insights into the |
| 103 | + electrochemical hydrogen oxidation and evolution reaction mechanism. |
| 104 | + *Energy Environ. Sci.* 7, 2255–2260. |
| 105 | + |
| 106 | +## Re-Evaluation |
| 107 | + |
| 108 | +Austausch / Erweiterung empfohlen wenn: |
| 109 | +- v1.0 Full-Butler-Volmer einführt → die α(T)-Kopplung wird relevant |
| 110 | +- Nicht-Edelmetall-Anoden (Ni-Fe-Oxide) ins Preset aufgenommen werden → |
| 111 | + eigene Korrelation nötig, Arrhenius mit konstantem E_a reicht dort nicht |
| 112 | +- Validierung gegen Experiment zeigt > 20 % Abweichung bei T < 40 °C → |
| 113 | + zweite Term (z.B. ΔS‡-abhängig) ergänzen |
0 commit comments