breos.battery.update_battery_soh_calendar#

breos.battery.update_battery_soh_calendar(soh_start_fraction, k0_frac, Ea, n, cal_b, T_cell_C=25.0, cumulative_cal_seconds=0.0, dt_days=1.0, mean_soc_absolute=0.5, debug=False)[source]#

Generalized calendar aging using power law physics (Naumann / Lam 2025).

dSOH = k0_frac * Arr * ((t+dt)^b - t^b) * SOC_stress

Parameters:
  • soh_start_fraction (float) – Starting SOH as fraction

  • k0_frac (float) – Rate constant (fraction per second^b)

  • Ea (float) – Activation energy (J/mol)

  • n (float) – SOC exponent

  • cal_b (float) – Time exponent (0.5 for sqrt-time, 0.75 for Lam)

  • T_cell_C (float) – Cell temperature (°C)

  • cumulative_cal_seconds (float) – Total elapsed seconds

  • dt_days (float) – Time step in days

  • mean_soc_absolute (float) – Mean SOC during period

  • debug (bool) – Enable debug output

Return type:

Tuple[float, float, float]

Returns:

Tuple of (soh_after, dsoh_fraction, new_cumulative_seconds)