clear all

% Plot basic Michaelis-Menten speed vs substrate behavior.  
%
% Executes properly on MATLAB version 9.4.0.813654 (R2018a).
% Executes mostly properly on OCTAVE version 4.2.1.
% Joshua C. Vaughan 2/27/2023

Km = 5; % mM
Vmax = 4; % mM/sec
S = linspace(0,20,2^6); % mM

% Michaelis-Menten basic kinetics
v = Vmax*S./(Km+S);

% create basic v vs [S] plot

ax_lw = 2;
pl_lw = 2;
ax_fs = 24;
la_fs = 24;
ti_fs = 24;
fontname = 'Arial';

figure(1); clf; set(gcf,'color',[1 1 1])
plot(S,v,'k-','linewidth',2);
hold on; plot([min(S) max(S)],Vmax*[1 1],'--','linewidth',2,'color',0.5*[1 1 1]); 
plot(Km, Vmax/2,'ro','markersize',8,'linewidth',3)
hold off

set(gca,'fontname',fontname)
set(gca,'tickdir','out')
set(gca,'linewidth',2)
xlabel('[S], mM','fontsize',ax_fs)
ylabel('{\itv} (mM/sec)','fontsize',ax_fs)
set(gca,'fontsize',ax_fs)
xlim([0 max(S)])
ylim([0 4.5])
title('MM Enzyme Kinetics, {\itK}_M=5 mM','fontsize',ti_fs)
