Protein-ligand binding kinetics
Show older comments
Hello,
I'm suffering to plot the equation.
The reaction is that
with forward constant kon and backward constant koff
The equation is
d[AB] / dt = kon [A][B] - koff [AB]
d[A] / dt = -kon [A][B] + koff [AB]
d[B] / dt = -kon [A][B] - koff [AB]
And the boundary conditions are
Initial_antigen_concentration [A0] = 55.37e-12 M
Initial_antibody_concentration [B0] = 19.33e-6 M
kon = 1e+5 M/sec
koff = 1e-2 /sec
My code was that
----------------------------------------------------------------------------------------------------------------
% Initial condition
A0 = 55.37e-12; % Initial antigen concentration
B0 = 19.33e-6; % Initial antibody concentration
AB0 = 0; % Initial antibody-antigen complex concentration
kon = 1e+5; % Forward reaction constant
koff = 1e-3; % Backward reaction constant
% Time range
tspan = [0 1000];
% set the initial condition
initial_conditions = [A0, B0, AB0];
% The equation
ode_system = @(t, y) [
-kon * y(1) * y(2) + koff * y(3); % d[A]/dt
-kon * y(1) * y(2) + koff * y(3); % d[B]/dt
kon * y(1) * y(2) - koff * y(3); % d[AB]/dt
];
[t, concentrations] = ode45(ode_system, tspan, initial_conditions);
% Normalization of the complex concentration to initial antigen concentration
normalized_complex_concentration = concentrations(:, 3) / A0;
% Plot the graph
figure;
plot(t, normalized_complex_concentration, 'g');
xlabel('Time');
ylabel('Complex Concentration / Initial Antigen Concentration');
title('Antigen-Antibody Complex Formation Over Time');
----------------------------------------------------------------------------------------------------------------
The maximum value of [AB] is equal or less than [A0] cause A is less than B.
So that the y axis should be 0 to 1 with normalization.
But the graph is fluctuated with the maximum y value ~ 2 x 10^4
Is the code is wrong to display the graphy? TT
Accepted Answer
More Answers (0)
Categories
Find more on Ordinary Differential Equations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!