MATLAB Answers

0

how can I perform curve fitting for 3 degree exponential equation?

Asked by Milan Bhakta on 5 Sep 2019
Latest activity Edited by John D'Errico
on 5 Sep 2019
I have data from Li-ion Battery Discharge test. and I am trying to estimate battery parameter from this data. This battery model has 3RC circuits, means 3 exponential terms in the equation. I have been trying with curve fitting toolbox, but its limited to 2 exponential terms. Also, I tried custom function option in curve fitting. That didn't work as well. The equation I am trying to fit in is: Y(t)=V(t)+(a*exp(-b*t))+(c*exp(-d*t))+(f*exp(-g*t))

  0 Comments

Sign in to comment.

1 Answer

Answer by John D'Errico
on 5 Sep 2019
Edited by John D'Errico
on 5 Sep 2019
 Accepted Answer

Fit will do it, sort of. You will need to pose an explicit model for the three terms.
But please consider if you really can do it at all. There is a reason why the toolbox limits the number of exponential terms you can estimate. It does that because it can be practically impossible to estimate all of those terms. You will need VERY accurate data. You will also need very good starting estimates for the parameters.
Do you have those things? I doubt it. And if you don't, then expect complete, random garbage for your parameter estimates. (A symptom of that will be wide confidence intervals on the parameters, as returned from fit.)
Worse, if it is at all possible that there is any contamination in the model, lack of fit, whatever, then this makes it again practially impossible to estimate those parameters with any degree of happiness.
Just because you want to do something, does not mean it is practially possible to do. Even if you really want it. For this to work means you need to get some seriously good data. And you will need a lot of it. 7 or 8 data points? Fugeddabout it. You would be wasting your time then.

  0 Comments

Sign in to comment.