fiteisfom
Description
fits the electrochemical impedance spectroscopy (EIS) profile in
fractionalOrderModel = fiteisfom(myFitEISFOM,eisData,Name=Value)eisData 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.
Examples
This example shows how to fit a single EIS profile 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 Extract the data of a single profile from the loaded EIS data.
singleProfile = eisExp.TestSummary.ImpedanceData{1};Fit the data of the single EIS profile to a fractional-order equivalent circuit
model by using the fiteisfom method of a
FitFractionalOrderModel object. The fiteisfom
function fits the single-profile EIS data inside the EISModel object
specified in the EISFOM property of the
FitFractionalOrderModel object.
fitFom = FitFractionalOrderModel; fitEis = fiteisfom(fitFom,singleProfile)
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.3137 2.8943e-06 4.7315e-07 1.5453e-06 0.1214 3.6973e-06 1.9251e-06 40.1841 0.2146 0.2423]
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"]fiteisfom method returns an EISModel object with
estimated fitted parameters from the single-profile EIS data.Input Arguments
Fit fractional-order equivalent circuit model, specified as a
FitFractionalOrderModel object. This object contains the data that
the fiteisfom function requires to estimate the parameters of the battery EIS model,
including the EISModel object, fitting method, and fitting
options.
EIS data that the fiteisfom function uses to estimate the EIS model parameters from, specified as a matrix or table.
If you specify this argument as a table, you must specify each column or variable
name by using the FrequencyVariable,
RealImpedanceVariable, and
ImaginaryImpedanceVariable name-value arguments.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN, where Name is
the argument name and Value is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Example: FOMobj =
fiteisfom(myFitEISFOM,data,FrequencyVariable="MyFrequencyName")
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
Output Arguments
Fractional-order equivalent circuit model with estimated parameters, returned as an
EISModel object.
Version History
Introduced in R2025a
See Also
FitFractionalOrderModel | fitEisfomToEisTest | eisModel | eisTest
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Website auswählen
Wählen Sie eine Website aus, um übersetzte Inhalte (sofern verfügbar) sowie lokale Veranstaltungen und Angebote anzuzeigen. Auf der Grundlage Ihres Standorts empfehlen wir Ihnen die folgende Auswahl: .
Sie können auch eine Website aus der folgenden Liste auswählen:
So erhalten Sie die bestmögliche Leistung auf der Website
Wählen Sie für die bestmögliche Website-Leistung die Website für China (auf Chinesisch oder Englisch). Andere landesspezifische Websites von MathWorks sind für Besuche von Ihrem Standort aus nicht optimiert.
Amerika
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)