A Model in Ionworks is a mathematical model configuration that defines the structure and equations used to simulate battery behavior. Models specify:Documentation Index
Fetch the complete documentation index at: https://docs.ionworks.com/llms.txt
Use this file to discover all available pages before exploring further.
- PyBaMM Model Type: The underlying mathematical model (e.g.,
SPM,SPMe,DFN) - Model Options: Configuration options that modify the model’s behavior
- PyBaMM Version: Automatically set to the current PyBaMM version when the model is created (not user-specifiable)
- Cell Compatibility: Whether the model works with full cells, half cells, or both
Models are ImmutableOnce a model is created and used in a parameterized model or simulation, its
configuration (PyBaMM model type, options, version) cannot be changed. This
ensures reproducibility—parameterized models and simulations are permanently
linked to the exact model version that was used.To modify a model’s configuration, you must create a new model. Only the name
and description can be updated after creation.
Creating a Model
Models can be created in two ways:- Use System Models: Ionworks provides pre-created system models for common PyBaMM model types (SPM, SPMe, DFN) in both full-cell and half-cell configurations. These are available to all users and are the recommended starting point for most use cases.
- Create Custom Models: You can create custom models with specific configurations and options. This is useful when you need to customize model options.
System Models: Ionworks automatically includes system models when you list
models in your organization. These include: - Full Cell: SPM, SPMe, DFN,
LumpedSPMR, LumpedSPMeR, ECM, plus SPM Composite, SPMe Composite, and
DFN Composite for blended (two-phase) negative electrodes - Half Cell:
SPM, SPMe, DFN, ECM. You can use these system models directly without creating
your own.
Available Model Types
Ionworks supports several electrochemical models, each offering different levels of detail and computational complexity:PyBaMM Standard Models
SPM (Single Particle Model) : The simplest model that represents each electrode as a single, average-sized spherical particle. It focuses on solid-phase diffusion within particles and assumes uniform electrolyte concentration and potential, neglecting electrolyte dynamics. This model is computationally efficient and suitable for applications where electrolyte variations are minimal. SPMe (Single Particle Model with Electrolyte) : Builds upon the SPM by incorporating electrolyte dynamics, accounting for variations in electrolyte concentration and potential across the cell. This enhancement provides more accurate representation of battery behavior, especially under conditions where electrolyte effects are significant. The SPMe balances computational efficiency with improved accuracy. DFN (Doyle-Fuller-Newman Model) : The most comprehensive model that considers multiple spherical particles within each electrode, solid-phase diffusion, electrolyte dynamics, and Butler-Volmer kinetics. This detailed approach captures intricate interactions within the battery but requires more computational resources. Best for applications requiring high accuracy and detailed understanding of internal processes. SPM Composite, SPMe Composite, DFN Composite (Full Cell) : Variants of SPM, SPMe, and DFN configured for composite (blended) negative electrodes with two particle phases — for example, graphite + silicon anodes. Each model is created with the PyBaMM options:Temperature [degC], Anode potential [V],
Cathode potential [V]) as the standard full-cell models, so existing
parameterized models, optimizations, and validations work without changes.
Ionworks Models
LumpedSPMR (Lumped Single Particle Model with Resistance) : An enhanced single particle model that includes resistance effects and supports thermal modeling. This model represents both electrodes, each as a single spherical particle, and includes lumped resistance terms. It supports thermal options (“isothermal” or “lumped”) and surface temperature options (“ambient” or “lumped”). Available for full cell configurations only. LumpedSPMeR (Lumped Single Particle Model with Electrolyte and Resistance) : Builds upon LumpedSPMR by incorporating electrolyte dynamics. This model adds electrolyte concentration overpotential using a tanks-in-series approach for volume-averaged electrolyte equations, accounting for concentration variations across negative electrode, separator, and positive electrode regions. It provides improved accuracy for conditions where electrolyte effects are significant while maintaining computational efficiency. Supports the same thermal and surface temperature options as LumpedSPMR. Available for full cell configurations only. ECM (Equivalent Circuit Model) : A circuit-based model that represents the battery as an equivalent electrical circuit with an open-circuit voltage (OCV) source and resistance-capacitance (RC) pairs. This model is computationally very efficient and useful for control applications and real-time simulations. Supports configurable RC pairs and thermal modeling options (“isothermal”, “lumped”, or “two-state”). Available for both full cell and half cell configurations.Model Options and Capabilities
Models can be configured with various options to customize their behavior:- Thermal modeling: Some models support “isothermal” (constant temperature), “lumped” (single temperature state), or “two-state” thermal options
- Surface temperature: LumpedSPMR and LumpedSPMeR support “ambient” or “lumped” surface temperature modeling
- RC pairs: ECM supports configurable resistance-capacitance (RC) pairs to capture dynamic polarization behavior
- Parameter dependencies: ECM allows parameters to depend on variables like SOC, current, or temperature
- Working electrode: PyBaMM standard models (SPM, SPMe, DFN) for half-cell configurations use the “positive” working electrode option
Editing Models
Models can have their name and description updated, but the model configuration (PyBaMM model type, options, version) cannot be changed after creation. This immutability ensures reproducibility—any parameterized model or simulation using a model will always reference the exact same model configuration. To modify a model’s configuration, you must create a new model.You can define derived quantities like temperature in Celsius or electrode potentials using Custom Variables.