matlab-extract-battery-features
Extract battery features for degradation analysis and health monitoring in MATLAB. Covers cycling test features, differential curves (IC/DV/DT), and measurement statistics. Use when working with battery cycling data, SOH estimation, RUL prediction, or any battery test data analysis in MATLAB. Triggers on battery* functions such as batteryTestDataParser, batteryTestFeatureExtractor, batteryMeasurementFeatures, batteryDifferentialCurves.
npx skills add matlab/matlab-agentic-toolkit --skill matlab-extract-battery-features --agent claude-code
Same command for any agent — swap --agent for codex, cursor, copilot.
Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.
What it does
Extracts battery features for degradation analysis and health monitoring in MATLAB. Uses functions related to battery test data and differential curves to produce statistical, cumulative, and differential-curve features across battery cycling data.
How it works
The skill guides the agent to: collect raw cycling data, parse and segment it with batteryTestDataParser, and create an extractor with batteryTestFeatureExtractor configured for desired feature categories (Statistics, CycleCumulative, CC, CV, CCCV, IC, DV, DT). Then, it runs the extraction to produce a feature table via extract(extractor, parser). It supports steps for CyclingPhase selection by running checkCyclingProtocol (located in scripts/) to assess protocol consistency, and it requires the agent to report mappings, phase, and resulting features. If anomalous cycles are detected or protocol cannot be determined, it prompts the user for decisions before proceeding. The API overview lists five public functions: batteryTestDataParser, batteryTestFeatureExtractor, batteryMeasurementFeatures, batteryDifferentialCurves, batteryDifferentialCurveFeatures, each with specified inputs and outputs. The workflow emphasizes deterministic rule-based extraction, then reporting, not automatic visualization or saving unless requested.
When to use it
Use for any task involving battery test data feature extraction: cycling degradation trending, SOH estimation, RUL prediction, capacity fade analysis; differential curve analysis for electrode degradation; single-segment measurement statistics; or batch processing of multiple cycling files. Suitable when data comes from electrochemical battery tests and you need structured feature tables rather than raw curves.
What it can touch
The skill relies on MATLAB functions and the provided API to parse data, extract features, and compute differential curves. It references and uses functions such as batteryTestDataParser, batteryTestFeatureExtractor, batteryMeasurementFeatures, batteryDifferentialCurves, batteryDifferentialCurveFeatures, and a helper script scripts/checkCyclingProtocol.m. It requires CC=true to enable IC, DV, and DT features since those depend on CC segments.
Caveats
The workflow depends on protocol consistency; if no consistent phase can be determined, a STOP condition is triggered to ask the user which phase to fix before extraction. Anomalous cycles must be handled by user confirmation before excluding them. The CyclingPhase decision is purely based on protocol repeatability and does not consider the stated analysis goal unless surfaced in a separate tension note. The skill notes that variables like TemperatureVariable are optional in the checkCyclingProtocol interface. Some outputs, like differential-curve features, require constant-current segments (CC).
# Battery Feature Extraction ## When to Use - Any task involving battery test data feature extraction: cycling degradation trending, SOH estimation, RUL prediction, capacity fade analysis - Differential curve analysis (IC dQ/dV, DV dV/dQ, DT dT/dV) for electrode degradation diagnosis - Single-segment measurement statistics from partial or full charge/discharge data - Batch processing of multiple battery cycling test files ## When NOT to Use - The task has no battery test data context (no cycling or differential-curve data) - The primary goal is battery simulation, equivalent circuit modeling, or Simulink battery plant models - The task is general signal processing, machine learning model training, or visualization without feature extraction - The data is not from electrochemical battery tests (e.g., fuel cells, supercapacitors, or generic sensor data) This skill covers the 5 released PMT battery feature extraction functions. These functions work natively with MATLAB tables and vectors, handle segmentation and peak detection internally, and are performance-optimized. Prefer these PMT functions over manual feature computation (e.g., hand-coded cumtrapz loops, manual peak finding). Ov
- When to Use
- When NOT to Use
- API Overview
- Interaction Model: Stop or Proceed
- Full Pipeline: Cycling Test Feature Extraction
- CyclingPhase Selection
- Feature Categories (165+ features total)
- Individual Functions
- batteryMeasurementFeatures — Statistics and Cumulative
- batteryDifferentialCurves — IC, DV, DT Curves
- batteryDifferentialCurveFeatures — Peak Features from Curves
- Mappings, Phase, and Next Steps
- Stop After Extraction — Offer Next Steps
- Column Mapping: Ambiguity Resolution
What does the matlab-extract-battery-features skill do?
Extract battery features for degradation analysis and health monitoring in MATLAB. Covers cycling test features, differential curves (IC/DV/DT), and measurement statistics. Use when working with battery cycling data, SOH estimation, RUL prediction, or any battery test data analysis in MATLAB. Triggers on battery* functions such as batteryTestDataParser, batteryTestFeatureExtractor, batteryMeasurementFeatures, batteryDifferentialCurves.
How do I install it?
Run `npx skills add matlab/matlab-agentic-toolkit --skill matlab-extract-battery-features --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.
Where does this skill come from?
From matlab/matlab-agentic-toolkit, a repository with 868 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.
Is a popular skill a good skill?
Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.
