Index

Docstrings

JuliaSimBatteries

JuliaSimBatteries.DFNType
DFN(chemistry; options...)
DFN()

The Doyle-Fuller-Newman (`DFN`) model is an advanced pseudo-2D battery model. It accurately represents electrochemical processes within a lithium-ion battery, including diffusion, reactions, and concentration gradients in both electrodes. This model offers high-fidelity simulations, enabling analysis and optimization of battery performance under various operating conditions.
source
JuliaSimBatteries.SPMType
SPM(chemistry; options...)
SPM()

The Single-Particle Model (`SPM`) model is a simplified version of the `SPMe` model, commonly used by technical battery engineers for quick and computationally efficient simulations. It represents the battery as single particles in both electrodes without considering the electrolyte dynamics. While less detailed than the `DFN` or `SPMe` models, the `SPM` model is effective for initial assessments, rapid battery analysis, and large-scale pack simulations.
source
JuliaSimBatteries.SPMeType
SPMe(chemistry; options...)
SPMe()

The Single-Particle Model with electrolyte (`SPMe`) is a popular model to understand lithium-ion battery behavior. It simplifies the battery into a single particle for each electrode, considering electrolyte dynamics within the cell. This model allows for efficient simulations and provides valuable insights into cell-level behavior and degradation mechanisms.
source
JuliaSimBatteries.NCAMethod
NCA()

Default parameters for a lithium nickel cobalt aluminum oxide (NCA) cell [1].

[1] Kim, G. H., Smith, K., Lee, K. J., Santhanagopalan, S., & Pesaran, A.
(2011). Multi-domain modeling of lithium-ion batteries encompassing
multi-physics in varied length scales. Journal of The Electrochemical
Society, 158(8), A955-A969.
source
JuliaSimBatteries.chargeMethod
charge(input; time, bounds)

Setup for a charge experiment.

Arguments:

  • input: Current input with units of A or C (C-rate) or power input with units of W.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.charge_currentMethod
charge_current(input; time, bounds)

Setup for a current experiment to charge the battery.

Arguments:

  • input: Current input with units of A or C (C-rate).
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.charge_powerMethod
charge_power(input; time, bounds)

Setup for a power experiment to charge the battery.

Arguments:

  • input: Power input with units of W.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.dischargeMethod
discharge(input; time, bounds)

Setup for a discharge experiment.

Arguments:

  • input: Current input with units of A or C (C-rate) or power input with units of W.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.discharge_currentMethod
discharge_current(input; time, bounds)

Setup for a current experiment to discharge the battery.

Arguments:

  • input: Current input with units of A or C (C-rate).
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.discharge_powerMethod
discharge_power(input; time, bounds)

Setup for a power experiment to discharge the battery.

Arguments:

  • input: Power input with units of W.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.powerMethod
power(input; time, bounds)

Setup for a power experiment. By convention, positive power is discharging and negative power is charging.

Arguments:

  • input: Power input with units of W.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.restMethod
rest(; time, bounds)

Setup for a rest experiment. This is a special case of a current experiment where the current is zero.

Arguments:

  • time: Required argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source
JuliaSimBatteries.voltageMethod
voltage(input; time, bounds)

Setup for a voltage experiment.

Arguments:

  • input: Voltage input with units of V.
  • time: Optional argument to set a maximum experiment time.
  • bounds: Optional argument to denote experiment-specific stop conditions.
source