Incremental Capacity Analysis (ICA)¶
This document explains Incremental Capacity Analysis and its use in battery degradation modeling.
Overview¶
Incremental Capacity Analysis (ICA) is a powerful technique for analyzing battery degradation by examining the derivative of capacity with respect to voltage (dQ/dV).
Theory¶
dQ/dV Curve¶
The Incremental Capacity (\(dQ/dV\)) is the numerical derivative of battery capacity with respect to the terminal voltage:
Since raw voltage data is often noisy, numerical differentiation can amplify noise. BatteryML uses high-order Savitzky-Golay filters to smooth the signal:
Where \(C_i\) are the filter coefficients and \(2k+1\) is the window size.
Physical Interpretation¶
- Peaks: Correspond to phase transition plateaus in the \(V-Q\) curve (Gibbs Phase Rule).
- Peak positions: Indicate the state of equilibrium potentials where phase transitions occur.
- Peak heights: Proportional to the amount of active material undergoing phase transformation.
Degradation Indicators¶
Loss of Lithium Inventory (LLI)¶
Indicator: Peak shifts in the voltage domain.
If the amount of cyclable lithium decreases due to SEI growth, the corresponding phase transitions occur at different stoichiometry points, leading to a shift:
Loss of Active Material (LAM)¶
Indicator: Peak height decreases
Explanation: Less active material reduces peak magnitude
Example: Peak height decreases from 100 to 80
Impedance Rise¶
Indicator: Peak width increases
Explanation: Higher resistance broadens peaks
Example: Peak FWHM increases from 0.1V to 0.15V
ICA Feature Extraction¶
Peak Detection¶
- Smoothing: Apply Savitzky-Golay filter to reduce noise
- Peak Finding: Use peak detection algorithms
- Peak Characterization: Extract position, height, width, area
Features¶
For each peak:
- Voltage: Peak position (V)
- Height: Peak magnitude (dQ/dV)
- Width: Full-width at half-maximum (FWHM)
- Area: Integrated area under peak
Additional Features¶
- Total area: Total integrated dQ/dV curve
- Number of peaks: Count of detected peaks
- Voltage at max dQ/dV: Voltage at maximum dQ/dV value
Implementation in BatteryML¶
ICAPeaksPipeline¶
The ICAPeaksPipeline extracts ICA features:
from src.pipelines.ica_peaks import ICAPeaksPipeline
pipeline = ICAPeaksPipeline(
sg_window=51, # Smoothing window
sg_order=3, # Polynomial order
num_peaks=3, # Number of peaks to extract
voltage_range=(3.0, 4.2)
)
samples = pipeline.fit_transform({'curves': voltage_curves, 'targets': targets})
Processing Steps¶
- Load voltage curve: 0.1C discharge curve
- Compute dQ/dV: Numerical differentiation
- Smooth: Savitzky-Golay filtering
- Find peaks: Peak detection algorithm
- Extract features: Position, height, width, area
- Normalize: StandardScaler normalization
Interpretation¶
Peak Shifts¶
- To higher voltage: LLI (less lithium)
- To lower voltage: Unusual, may indicate other mechanisms
Peak Height Changes¶
- Decrease: LAM (less active material)
- Increase: Unusual, may indicate measurement issues
Peak Width Changes¶
- Increase: Impedance rise (higher resistance)
- Decrease: Unusual, may indicate improved kinetics
Best Practices¶
- Smoothing: Use appropriate smoothing to reduce noise
- Voltage Range: Focus on relevant voltage range (e.g., 3.0-4.2V)
- Peak Selection: Extract consistent number of peaks
- Validation: Verify peaks correspond to known transitions
- Caching: Cache expensive ICA computations
Limitations¶
- Noise: Sensitive to measurement noise
- Smoothing: May obscure fine details
- Peak Detection: May miss peaks or detect false peaks
- Interpretation: Requires domain knowledge
Applications¶
- Degradation Diagnosis: Identify degradation mechanisms
- Feature Engineering: Extract features for ML models
- Quality Control: Detect manufacturing defects
- Research: Understand battery behavior
References¶
- Battery electrochemistry literature
- ICA analysis papers
- Oxford Battery Intelligence Lab documentation
Next Steps¶
- Battery Degradation - Degradation theory
- ICA Pipeline - Using ICA pipeline
- SHAP Analysis - Interpreting ICA features