Agent skill · Data & Analytics

matlab-identify-linear-system

Identify a linear dynamic model from input-output or time-series data using MATLAB System Identification Toolbox. Use when estimating transfer function, state-space, ARX, ARMAX, BJ, OE polynomial or process models from measurement data.

matlabgithub.com/matlabGitHub ↗
claude-codecodexcopilotNOASSERTION
Install
npx skills add matlab/matlab-agentic-toolkit --skill matlab-identify-linear-system --agent claude-code

Same command for any agent — swap --agent for codex, cursor, copilot.

Facts
Files in the skill folder: 8
SKILL.md size: 20 KB
Bundled scripts: none
Version: 1.0
Declared author: MathWorks
Path: skills-catalog/control-systems/matlab-identify-linear-system/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 868
Language: MATLAB

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

Review
written from the skill's own SKILL.md · Aug 5, 2026

What it does

Identifies a linear dynamic model from input-output or time-series data using MATLAB System Identification Toolbox. The skill selects the appropriate model type, determines the model order, estimates parameters, and validates results, following the methodology of a System Identification Toolbox expert.

How it works

  • It guides the user to identify a transfer function, state-space, or process model from I/O data and to determine model order from measurements.
  • It covers converting FRD to a parametric model and comparing multiple model structures (ARX, state-space, transfer function).
  • The execution strategy requires writing a single end-to-end MATLAB script that loads data, splits estimation/validation, estimates delays and structure, runs model estimation, and validates via simulation, printing results.
  • It enforces critical options and conventions during estimation (e.g., InteractiveOrderSelection, Establishing Focus for simulation/prediction, and data handling like InterSample settings) and outlines a comprehensive path from data preparation to model validation.
  • It provides code-style examples for fast-path SISO and MIMO scenarios, including delay hedging, multiple model comparisons, and final selection based on validation fits.
  • Validation is mandatory: the script must perform simulation-based validation with a compare call and report validation fit, plus residual analysis guidance.

When to use it

  • When identifying a transfer function, state-space, or process model from I/O data.
  • When determining model order from measurements.
  • When fitting a parametric model for simulation, prediction, or control design.
  • When converting frequency response data to a parametric model.
  • When comparing model structures (ARX vs state-space vs transfer function) and selecting a model for simulation or control.
  • When performing subspace identification for high-order or MIMO systems, or extracting modal parameters from frequency response.
  • When a data-driven linear model is needed for PID tuning or control design, or when linearization of a Simulink model is impractical.

What it can touch

  • The skill expects MATLAB environments and uses functions like delayest, ssest, tfest, tfestOptions, ssestOptions, and compare. It requires creating/sourcing data, setting InterSample behavior, and handling validation data.

Caveats

  • Nonlinear systems or poor-quality data are outside the scope; nonlinear modeling options are suggested only as alternatives.
  • The approach relies on linear modeling validity and validation via simulation; results depend on data quality and correct option usage.
From the SKILL.md

# Linear Model Identification Estimate a linear dynamic model from measurement data using MATLAB System Identification Toolbox. This skill selects the right model type, determines model order, estimates parameters, and validates results — following the methodology a System Identification Toolbox expert would use. ## When to Use - Identify a transfer function, state-space, or process model from I/O data - Determine model order from measurement data - Fit a parametric model for simulation, prediction, or control design - Convert frequency response data (FRD) to a parametric model - Compare model structures (ARX vs state-space vs transfer function) - Determine frequency response from time-domain data - Determine a plant model for PID tuning or control design - Obtain a data-driven linear model when linearization of a Simulink model is not possible or practical - Tune parameters of a physics-based model (grey-box) using data - Compare multiple models to determine which best fits the data - Simulate or predict system response using the identified model - Perform subspace identification for high-order systems or MIMO systems, or use Eigenvalue Realization Algorithm (ERA) - Extract modal

What's inside
Steps it walks through
  1. When to Use
  2. When NOT to Use
  3. Execution Strategy
  4. Arguments
  5. Design Principles
  6. Fast Path — Use When Problem Is Clear
  7. Deep Path — For Ambiguous or Failed First Attempts
  8. Problem Characterization
  9. Nonlinearity Check (STOP/GO Gate)
  10. Decision
  11. Data Preparation
  12. Model Type Selection
  13. Order Determination
  14. Estimation
Ships with 7 files
  • manifest.yaml
  • references/data-preparation.md
  • references/estimation.md
  • references/model-structures.md
  • references/order-determination.md
  • references/special-topics.md
  • references/validation-and-diagnostics.md
More from matlab-agentic-toolkit
All skills →
About this skill
What does the matlab-identify-linear-system skill do?

Identify a linear dynamic model from input-output or time-series data using MATLAB System Identification Toolbox. Use when estimating transfer function, state-space, ARX, ARMAX, BJ, OE polynomial or process models from measurement data.

How do I install it?

Run `npx skills add matlab/matlab-agentic-toolkit --skill matlab-identify-linear-system --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.

Keep going