Main Content

eisTest

Create test container object for electrochemical impedance spectroscopy test data

Since R2025a

Description

Use eisTest to create an EISTest container object for electrochemical impedance spectroscopy (EIS) test data. Use this object to automatically extract and analyze individual impedance profiles from EIS frequency-based data.

The EISTest object automatically detects every individual EIS profile and tabulates the data only if the test frequencies are the same for every test conducted at different conditions, including state of charge, temperature, remaining capacity, and more.

You can load the test frequency, real impedance, and imaginary impedance into this object by setting the EISData property. The EISData property can be of type double or table. If you specify the EISData property as a double, the column ordering must correspond to the frequency, real impedance, and imaginary impedance. If you specify the EISData property as a table, you must provide a valid column or variable name.

The EISData property must comprise a series of EIS profiles executed at the several frequency breakpoints. The TestSummary property contains a table with all of the individual profiles that the EISTest object automatically detected from the EISData property.

To estimate the parameters of a fractional-order equivalent circuit model for each profile, use this object and a EISModel object as input to the fitEISModel function. This figure shows the typical workflow to estimate the parameters of a fractional-order equivalent circuit model:

Creation

Description

eisExp = eisTest creates a default test container object, eisExp, with default property values.

eisExp = eisTest(EISData,PropertyName=Value) creates a test container object, eisExp, for the electrochemical impedance spectroscopy test data, EISData, and sets properties using one or more name-value arguments.

Input Arguments

expand all

Electrochemical impedance spectroscopy data, specified as a matrix of doubles or table object.

If specify the EISData property as a matrix of doubles, the columns of the matrix must correspond to the frequency, real impedance, and imaginary impedance, in this order.

If you specify the EISData property as a table, you must provide valid column or variable names using the FrequencyVariable, RealImpedanceVariable, and ImaginaryImpedanceVariable arguments.

This argument sets the EISData property.

Properties

expand all

Electrochemical impedance spectroscopy data, specified as a matrix or table object.

If specify the EISData property as a matrix of doubles, the software assumes that the columns of the matrix refer to the frequency, real impedance, and imaginary impedance, in this order.

If you specify the EISData property as a table, you must specify each column or variable name by using the FrequencyVariable, RealImpedanceVariable, and ImaginaryImpedanceVariable arguments.

Data Types: double | table

Frequency cut-off values that the object uses to filter the frequency-based impedance data, specified as a vector.

Data Types: double

Option to remove all high-frequency data points that display inductive behavior, specified as "false", "true", or as numeric or logical 1 (true) or 0 (false).

Data Types: logical

Sign convention for the imaginary impedance relative to the high-frequency inductive behavior, specified as "standard" or "reversed". The default convention treats the high-frequency inductive behavior as positive.

Data Types: string | char

Tolerance value for determining how many unique frequency points are used in the electrochemical impedance spectroscopy test, specified as a scalar.

Data Types: double

Breakpoint name of the first dimension of the test data, specified as a string scalar or character vector.

Data Types: string | char

Breakpoint name of the second dimension of the test data, specified as a string scalar or character vector.

Data Types: string | char

Breakpoint name of the third dimension of the test data, specified as a string scalar or character vector.

Data Types: string | char

Name of the frequency variable in the EISData table, specified as a string scalar or character vector.

Data Types: string | char

Name of the real impedance variable in the EISData table, specified as a string scalar or character vector.

Data Types: string | char

Name of the imaginary impedance variable in the EISData table, specified as a string scalar or character vector.

Data Types: string | char

This property is read-only.

Summary of the test that shows all identified profiles and related data, returned as a table.

This property is read-only.

Indices in the EISData matrix or table where a given EIS profile starts, returned as a vector.

Data Types: double

This property is read-only.

Indices in the EISData matrix or table where a given EIS profile ends, returned as a vector.

Data Types: double

This property is read-only.

Number of EIS profiles inside the EISData matrix or table, returned as a scalar.

Data Types: double

Object Functions

removeProfileRemove data of impedance profile from EISTest object
setVariable1ValuesUpdate values of all elements in Breakpoint1Name column of EISTest object
setVariable2ValuesUpdate values of all elements in Breakpoint2Name column of EISTest object
setVariable3ValuesUpdate values of all elements in Breakpoint3Name column of EISTest object

Version History

Introduced in R2025a