MATLAB: Parameter Estimation for a System of Differential Equations

chemical kineticsMATLABodeparameter estimation

The following set of ODE's have been previously used in a research paper to produce best fit curves for concentration vs time data for 3 reactants [3], [4] and [5]:
I am trying to reproduce these best fit curves. Usually I would try to solve these ODE's and then take the sum of the square error's of each with the actual y data and then minimze the output in order to solve for k1, k'-1 and k3. However, solving these ODE's has proven to be extremely chaotic (as demonstrated previously by Walter Roberson) and I'm not sure if my whole approach is best given the complexities. Is there another way to go about doing this?
This is the concentration and time data:
%Consider [3] = a, [4] = b and [5] = c
%x values for a & b
t = [0 2.52 4.42 11.99 22.08 32.18 53.00 73.82 99.05 124.92 155.21 191.17 227.13 278.23 380.44];
T = t';
%y values for a
a_ydata = [0.26 0.27 0.27 0.25 0.21 0.17 0.16 0.13 0.10 0.08 0.05 0.04 0.03 0.02 0.01];
A_Ydata = a_ydata';
%y values for b
b_ydata = [0 0 0.01 0.03 0.04 0.05 0.08 0.11 0.14 0.16 0.15 0.17 0.17 0.18 0.18];
B_Ydata = b_ydata';
%x and y values for c
x_c = [0 99.05 124.92 155.21 191.17 227.13 278.23 380.44];
T_C = x_c';
y_c = [0 0.01 0.015 0.018 0.023 0.024 0.028 0.029];
C_Ydata = y_c';
If anyone is able to help me, I would greatly appreciate it!

Best Answer

See the identically-titled Parameter Estimation for a System of Differential Equations for a working solution. You will need to adapt it to your data.