主要内容

fitEisfomToEisTest

Fit series of electrochemical impedance spectroscopy profiles

Since R2025a

Description

fractionalOrderModel = fitEisfomToEisTest(myFitEISFOM,myEisTest) fits a series of electrochemical impedance spectroscopy (EIS) profiles specified in myEisTest by using the fitting method specified in the FittingMethod property of myFitEISFOM, and returns an EISModel object with the estimated parameters. The function retrieves the EISModel object to fit the EIS data in from the EISFOM property of myFitEISFOM.

example

Examples

collapse all

This example shows how to fit a series of EIS profiles inside an EIS model by using the fitting method of a FitFractionalOrderModel object.

Note

This workflow is not recommended. To fit EIS data inside an EIS model, use the fitEISModel function instead.

Import the package required to use the FitFractionalOrderModel object and its methods.

import simscape.battery.parameters.*;

Open the DownloadBatteryEISData example and load the required electrochemical impedance spectroscopy (EIS) data. This data has been generated from a battery with a nominal capacity of 30/1000 A*Hr at a temperature of 25 °C. This data consists of a 500-by-3 matrix. The columns of the matrix refer to the frequency, real impedance, and imaginary impedance values, respectively.

openExample("simscapebattery/DownloadBatteryEISDataExample")
load("generatedEISData.mat")

Store the EIS data inside an EISTest object by using the eisTest function.

eisExp = eisTest(eisData);

Analyze the TestSummary property of the eisExp object. This property contains a summary of the EIS test that shows all the identified profiles and related data.

eisExp.TestSummary
ans =

  5×7 table

    ProfileID    ImpedanceData    Breakpoint1    Breakpoint2    Breakpoint3    ProfileStartIndex    ProfileEndIndex
    _________    _____________    ___________    ___________    ___________    _________________    _______________

        1        {87×3 double}         1             25              1                  1                 100      
        2        {87×3 double}         2             25              1                101                 200      
        3        {87×3 double}         3             25              1                201                 300      
        4        {87×3 double}         4             25              1                301                 400      
        5        {87×3 double}         5             25              1                401                 500   

Fit the entire EIS data inside the EISTest object to a fractional-order equivalent circuit model by using the fitEisfomToEisTest method of a FitFractionalOrderModel object. The fitEisfomToEisTest function fits the EIS data inside the EISModel object specified in the EISFOM property of the FitFractionalOrderModel object.

fitFom = FitFractionalOrderModel;
fitEis = fitEisfomToEisTest(fitFom,eisExp)
fitEis = 

  EISModel with properties:

     CircuitTopology: "R0+L1+(R1,CPE1)+(R2,CPE2)+CPE3"
       NumParameters: 10
       ParameterList: ["R0"    "L1"    "R1"    "CPE1n"    "CPE1Q"    "R2"    "CPE2n"    "CPE2Q"    "CPE3n"    "CPE3Q"]
     ParameterValues: [0.0671 1.9358e-06 0.0063 0.3209 0.0545 1.5593e-04 0.9973 11.2015 0.9954 10.9842]
    CircuitImpedance: "((((R0 + (i*w*L1)) + ((R1 * (1/(((i*w)^CPE1n)*CPE1Q))) / (R1 + (1/(((i*w)^CPE1n)*CPE1Q))))) + ((R2 * (1/(((i*w)^CPE2n)*CPE2Q))) / (R2 + (1/(((i*w)^CPE2n)*CPE2Q))))) + (1/(((i*w)^CPE3n)*CPE3Q)))"
       ParameterList: ["R0"    "L1"    "R1"    "CPE1n"    "CPE1Q"    "R2"    "CPE2n"    "CPE2Q"    "CPE3n"    "CPE3Q"]
The fitEisfomToEisTest method returns an EISModel object with estimated fitted parameters from all the identified profiles inside the EISTest object.

Input Arguments

collapse all

Fit fractional-order equivalent circuit model, specified as a FitFractionalOrderModel object. This object contains the data that the fitEisfomToEisTest function requires to estimate the parameters of the battery EIS model, including the EISModel object, fitting method, and fitting options.

Series of EIS profiles that the fitEisfomToEisTest function uses to estimate the EIS model parameters from, specified as an EISTest object.

Output Arguments

collapse all

Fractional-order equivalent circuit model with estimated parameters, returned as an EISModel object.

Version History

Introduced in R2025a