Journal of Electroanalytical Chemistry, Vol.799, 242-248, 2017
Solving CNLS problems by using Levenberg-Marquardt algorithm: A new approach to avoid off-limits values during a fit
Complex nonlinear least square problems (CNLS) are generally solved by using the Levenberg-Marquardt algorithm (LMA), which is utilized in specialized EIS software packages. One of the major drawbacks of LMA is inability to prevent a generation of negative and off-limits values during the fitting process. The problem of negative values is omitted in MEISP/LEVM and EQUICRT fitting engines, since the engines can impose the lower limit on parameters values. However, the problem of off-limits values has not been overcome in EIS specialized software packages yet. The study herein provides an insight and offers recommendations to support the design of a new fitting engine in which the problem of off-limits values was resolved by using limits. The new fitting engine was entirely developed in Python programming language and implemented in free (MIT license) EisPy v.2.01 software. The applicability of the new fitting engine was firmly established by analyzing synthetic and measured data. The EEC parameters values yielded by EisPy v.2.01 were compared to the ones obtained by MEISP/LEVM and EQUIVCRT software packages. The results herein clearly reveal that the new fitting engine is more robust when the limits are applied.