galpynostatic.make_prediction module

Make predictions using the physics-based heuristic model.

The physics-based heuristic model [1] presented in this package allows to fit State-of-Charge (SOC) battery data as a function of galvanostatic charging rate (C-rate). Once this model has been fitted, the diffusion coefficient, \(D\), and the kinetic rate constant, \(k^0\), parameters of the active material in the electrode remain fixed. The other two parameters of the model, the characteristic diffusion length, \(d\), (particle size) and the C-rate can be varied. In this way, the model can be used to predict both the optimum particle size for a given C-rate and the optimum charging rate for a given particle size to achieve a desired maximum SOC.

References

galpynostatic.make_prediction.optimal_charging_rate(greg, c0=1.0, loaded=0.8, **kwargs)

Predict the optimal C-rate to reach a desired SOC.

The default parameters of this function predict the C-rate required to reach the 80% of the electrode charge.

Parameters:
  • greg (galpynostatic.model.GalvanostaticRegressor) – An already fitted GalvanostaticRegressor.

  • c0 (float, default=4.0) – An initial estimate of the optimal charging rate that should be somewhere near the actual prediction.

  • loaded (float, default=0.8) – Desired maximum SOC, between 0 and 1.

  • **kwargs – Additional keyword arguments that are passed and are documented in scipy.optimize.newton.

Returns:

  • c_rate (float) – The optimal galvanostatic charging rate to charge the electrode to the desired maximum SOC value.

  • c_rate_err (float, optional) – The uncertainty is only returned if greg.dcoeff_err_ and greg.k0_err_ are both defined.

Raises:

ValueError – If the material does not meet the defined criterion given the input parameters or map constraints.

galpynostatic.make_prediction.optimal_particle_size(greg, d0=0.0001, loaded=0.8, c_rate=4.0, cm_to=10000, **kwargs)

Predict the optimal electrode particle size to charge in certain time.

The default parameters of this function define the criteria of reaching 80% of the electrode charge in 15 minutes, which corresponds to a maximum SOC of 0.8 and a C-rate of 4C, which is the USABC (United States Advanced Battery Consortium) standard for fast charging.

Parameters:
  • greg (galpynostatic.model.GalvanostaticRegressor) – A GalvanostaticRegressor already fitted.

  • d0 (float, default=1e-4) – An initial estimate of the optimal particle size rate that should be somewhere near the actual prediction.

  • loaded (float, default=0.8) – Desired maximum SOC value, between 0 and 1.

  • c_rate (int or float, default=4.0) – Desired C-rate to reach the established SOC.

  • cm_to (float, default=10000) – A factor to convert from cm to another unit, in the default case to microns.

  • **kwargs – Additional keyword arguments that are passed and are documented in scipy.optimize.newton.

Returns:

  • particle_size (float) – The optimal particle size to charge the electrode to the desired maximum SOC value in the desired time.

  • particle_size_err (float, optional) – The uncertainty is only returned if greg.dcoeff_err_ is defined.

Raises:

ValueError – If the material does not meet the defined criterion given the input parameters or map constraints.