%------------------------------------------- % Text S3. Simulate and plot figure 4. %------------------------------------------- %------------------------------------------- % File name: plot_figure4.m %------------------------------------------- % author: Sohyoung Kim % last updated: Jul-24-2009 % matlab 7.2.0.232 (R2006a) was used. % Description: this script generates figure 4 %------------------------------------------- %------------------------------------------- % requirement to run this script. %------------------------------------------- % - need function definition file under current working directory: % mdmx_p53_mdm2_model.m % base_params_early_respose.m % - need directory p53act_mdm2var_mdmxeffect_more_data or make one. %------------------------------------------- % uncomment the following line if the directory has not been created. %!mkdir p53act_mdm2var_mdmxeffect_more_data clear; % intialize params for early response. base_params_early_respose; % load params var. % initial condition x0=zeros(14,1); x0(13)=1; % max promoter limit. % range of basal production rate for Mdm2. k6s=logspace(-3,0,50); % range of k_3_8_17_s=logspace(-3, .7, 40); % index for phosphorylation/dephsophorylation rate, Mdm2, MdmX basal % production rate. phospho_ind=[3,8,17]; dephospho_ind=[4,9,18]; mdm_basal_prod_ind=6; mdmx_basal_prod_ind=15; %------------------------------------------ % simulation of no MdmX in the system. %------------------------------------------ params(mdmx_basal_prod_ind)=0; options=[]; for i=1:length(k6s), % loop to itereate various Mdm2 production rate. %--------------------------- % simulate normal conditions %--------------------------- params(phospho_ind)=0; % no phosphorylation. params(mdm_basal_prod_ind)=k6s(i); [x1, y1]=ode15s('mdmx_p53_mdm2_model',[0 500000], x0, options, params); for j=1:length(k_3_8_17_s), % loop to itereate various phosphorylation rate. params(phospho_ind)=k_3_8_17_s(j); [x2, y2]=ode15s('mdmx_p53_mdm2_model',[0 5], y1(length(x1),:), options, params); [x3, y3]=ode15s('mdmx_p53_mdm2_model',[0 50], y2(length(x2),:), options, params); strfun=strcat('save p53act_mdm2var_mdmxeffect_more_data/mdmx0_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); end; end; %------------------------------------------ % load data and plot figure. %------------------------------------------ k_3_8_17_s=logspace(-3, .7, 40); y1s1=[]; y1s2=[]; y1s3=[]; for i=1:length(k6s), for j=1:length(k_3_8_17_s), strfun=strcat('load p53act_mdm2var_mdmxeffect_more_data/mdmx0_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); y1s1=[y1s1; y1(length(x1),:)]; y1s2=[y1s2; y2(length(x2),:)]; y1s3=[y1s3; y3(length(x3),:)]; end; end; p53_activity_ind=14; ry1=reshape(y1s1(:,p53_activity_ind), 40, 50); ry2=reshape(y1s2(:,p53_activity_ind), 40, 50); ry3_0=reshape(y1s3(:,p53_activity_ind), 40, 50); % plot figure 4-A figure; semilogx(k_3_8_17_s, ry3_0(:,1:8:50)', '-', 'LineWidth', 2); set(gca, 'XTickLabel', [], 'YTickLabel', []) axis([0 5 0 1]); legend('0.001','0.003','0.0095','0.0295','0.091', '0.28','0.87'); % plot figure 4-B figure; semilogx(k6s, ry3_0(1:6:40,:), '-', 'LineWidth', 2) set(gca, 'XTickLabel', [], 'YTickLabel', []) axis([10^-3 10^0 0 1]); legend('0.001','0.0037','0.0138','0.051','0.189', '0.7','2.6'); ylabel('p53 activity (promoter occupancy by p53 tetramer)'); xlabel('Rate of Mdm2 basal production') title({'Mdm2 dependency of p53 during early DNA damage response','with various levels of DNA damage'}) % End of script for Figure 4-A,B. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Generate data for Figure 4-C,D, and plot figures. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear; % intialize params for early response. base_params_early_respose; % load params var. % initial condition x0=zeros(14,1); x0(13)=1; % max promoter limit. % range of basal production rate for Mdm2. k6s=logspace(-3,0,50); % range of k_3_8_17_s=logspace(-3, .7, 40); % index for phosphorylation/dephsophorylation rate, Mdm2, MdmX basal % production rate. phospho_ind=[3,8,17]; dephospho_ind=[4,9,18]; mdm_basal_prod_ind=6; mdmx_basal_prod_ind=15; %------------------------------------------ % simulation of no MdmX in the system. %------------------------------------------ params(mdmx_basal_prod_ind)=0.05; options=[]; for i=1:length(k6s), % loop to itereate various Mdm2 production rate. %--------------------------- % simulate normal conditions %--------------------------- params(phospho_ind)=0; % no phosphorylation. params(mdm_basal_prod_ind)=k6s(i); [x1, y1]=ode15s('mdmx_p53_mdm2_model',[0 500000], x0, options, params); for j=1:length(k_3_8_17_s), % loop to itereate various phosphorylation rate. params(phospho_ind)=k_3_8_17_s(j); [x2, y2]=ode15s('mdmx_p53_mdm2_model',[0 5], y1(length(x1),:), options, params); [x3, y3]=ode15s('mdmx_p53_mdm2_model',[0 50], y2(length(x2),:), options, params); strfun=strcat('save p53act_mdm2var_mdmxeffect_more_data/mdmx05_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); end; end; %------------------------------------------ % load data and plot figure. %------------------------------------------ k_3_8_17_s=logspace(-3, .7, 40); y1s1=[]; y1s2=[]; y1s3=[]; for i=1:length(k6s), for j=1:length(k_3_8_17_s), strfun=strcat('load p53act_mdm2var_mdmxeffect_more_data/mdmx05_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); y1s1=[y1s1; y1(length(x1),:)]; y1s2=[y1s2; y2(length(x2),:)]; y1s3=[y1s3; y3(length(x3),:)]; end; end; p53_activity_ind=14; ry1_05=reshape(y1s1(:,p53_activity_ind), 40, 50); ry2_05=reshape(y1s2(:,p53_activity_ind), 40, 50); ry3_05=reshape(y1s3(:,p53_activity_ind), 40, 50); % plot figure 4-C figure; semilogx(k_3_8_17_s, ry3_05(:,1:8:50)', '-', 'LineWidth', 2, 'MarkerSize', 10); % plot figure 4-D figure; semilogx(k6s, ry3_05(1:5:40,:), '-', 'LineWidth', 2, 'MarkerSize', 10) ylabel('p53 activity (promoter occupancy by p53 tetramer)'); xlabel('Rate of Mdm2 basal production') title({'Mdm2 dependency of p53 during early DNA damage response','with various levels of DNA damage'}) % End of script for Figure 4-C,D. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Generate data for Figure 4-E,F, and plot figures. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% clear; % intialize params for early response. base_params_early_respose; % load params var. % initial condition x0=zeros(14,1); x0(13)=1; % max promoter limit. % range of basal production rate for Mdm2. k6s=logspace(-3,0,50); % range of k_3_8_17_s=logspace(-3, .7, 40); % index for phosphorylation/dephsophorylation rate, Mdm2, MdmX basal % production rate. phospho_ind=[3,8,17]; dephospho_ind=[4,9,18]; mdm_basal_prod_ind=6; mdmx_basal_prod_ind=15; %------------------------------------------ % simulation of no MdmX in the system. %------------------------------------------ params(mdmx_basal_prod_ind)=5; options=[]; for i=1:length(k6s), % loop to itereate various Mdm2 production rate. %--------------------------- % simulate normal conditions %--------------------------- params(phospho_ind)=0; % no phosphorylation. params(mdm_basal_prod_ind)=k6s(i); [x1, y1]=ode15s('mdmx_p53_mdm2_model',[0 500000], x0, options, params); for j=1:length(k_3_8_17_s), % loop to itereate various phosphorylation rate. params(phospho_ind)=k_3_8_17_s(j); [x2, y2]=ode15s('mdmx_p53_mdm2_model',[0 5], y1(length(x1),:), options, params); [x3, y3]=ode15s('mdmx_p53_mdm2_model',[0 50], y2(length(x2),:), options, params); strfun=strcat('save p53act_mdm2var_mdmxeffect/mdmx5_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); end; end; %------------------------------------------ % load data and plot figure. %------------------------------------------ k_3_8_17_s=logspace(-3, .7, 40); y1s1=[]; y1s2=[]; y1s3=[]; for i=1:length(k6s), for j=1:length(k_3_8_17_s), strfun=strcat('load p53act_mdm2var_mdmxeffect_more_data/mdmx05_sim_resulf_mdmx_p53_mdm2_model_i_', num2str(i), '_j_', num2str(j)); eval(strfun); y1s1=[y1s1; y1(length(x1),:)]; y1s2=[y1s2; y2(length(x2),:)]; y1s3=[y1s3; y3(length(x3),:)]; end; end; p53_activity_ind=14; ry1_5=reshape(y1s1(:,p53_activity_ind), 40, 50); ry2_5=reshape(y1s2(:,p53_activity_ind), 40, 50); ry3_5=reshape(y1s3(:,p53_activity_ind), 40, 50); % plot figure 4-E figure; semilogx(k_3_8_17_s, ry3_5(:,1:8:50)', '-', 'LineWidth', 2); set(gca, 'XTickLabel', [], 'YTickLabel', []) axis([0 5 0 1]); legend('0.001','0.003','0.0095','0.0295','0.091', '0.28','0.87'); % plot figure 4-F figure; semilogx(k6s, ry3_5(1:6:40,:), '-', 'LineWidth', 2) set(gca, 'XTickLabel', [], 'YTickLabel', []) axis([10^-3 10^0 0 1]); legend('0.001','0.0037','0.0138','0.051','0.189', '0.7','2.6'); ylabel('p53 activity (promoter occupancy by p53 tetramer)'); xlabel('Rate of Mdm2 basal production')