Я пытаюсь получить kf kr и kcat из уравнений ОДУ, полученных при выводе уравнения Михаэлиса-Ментена. (https://en.wikipedia.org/wiki/Michaelis%E2%80%93Menten_kinetics).
У меня есть экспериментальные данные из моделирования и приблизительные значения k. Мне нужно получить хорошую подгонку для k, и я не знаю, как это сделать, я пытаюсь с lsqcurvefit, проблема в том, что у меня есть 2 уравнения и слишком много переменных, и я не смог найти ни одного примера с аналогами. Если вы выполняете код, вы можете видеть как графики уравнения, так и экспериментальные, но я не знаю, как их собрать.
Заранее спасибо
(участок взят из кода)
close all; clear all; clc
%Michaelis Menten Kinetics
%Simple Model for Single Substrate Catalyzed Reactions
% Initial Data
global e0 s0 c0 volum
volum=50^3;
e0=10/volum;
s0=500/volum;
c0=0;
% Load experimental data
data=dlmread("rk_output.txt");
% Assign the data vectors
global timeR subs enz compl prod
timeR=data(:,2); % time
subs=data(:,3)/volum; % Substrate
enz=data(:,4)/volum; % Enzyme
compl=data(:,5)/volum; % Complex
prod=data(:,6)/volum; % Product
% Unknown coefficients
global k
k=[1.66, 7.1E-4, 3.5E-4]; %k1 k2 k-1
% Fitting Curves to Data using Nonlinear Regression
fun=@(t,sc) [k(3)*sc(2)-k(1)*sc(1)*(e0-sc(2)); k(1)*sc(1)*(e0-sc(2))-(k(3)+k(2))*sc(2) ];
time_period=linspace(0,1000,500);
initial=[s0,c0];
[t,sc]=ode45(fun,time_period,initial);
% Assign the data vectors
substrate=sc(:,1);
complex=sc(:,2);
enzyme=(e0-complex);
product=(initial(1)-substrate-complex);
% Plot the raw data
figure(1)
plot(timeR,enz,timeR,compl,t,enzyme,t,complex)
xlabel ('time (ns)')
ylabel ('Particles')
title ('Figure 1')
legend('EnzymeReal','ComplexReal','Enzyme','Complex')