[A, T1, T2, offset, Ssq] = fit_critical_damping( t, y, options )
fitting critically damped oscillations to the equation
y(t) = A (1 + t/T2) exp( -t/T1 ) + offset
where A is the amplitude, T1 is a time constant, T2 is the decay time, along with
the offest. Ssq is the sum of residuals (i.e. fitting error).
options are 'notify' to show progress and 'plot' to give a plot
you can also supply a guess or series of guesses via a row vector or
matrix, m, where size( m, 2 ) = 4 (i.e. there are four columns);
if you just run program without arguments it will do an example
fit_critical_damping( t, y, 'notify', 'plot')
[A, T1, T2, offset, Ssq] = fit_critical_damping( t, y, [1 2 3 4] )
Note: this script uses LMFnlsq from MATLAB central file exchange
Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.