Hej! Får inte denna matlab-kod att fungera:
clear all
close all
% Stokastisk simulerin av cirkadiska rytmer hos proteiner
% Ordningen på proteinerna
% 1. A
% 2. C
% 3. D_A
% 4. D_A'
% 5. D_R
% 6. D_R'
% 7. M_A
% 8. M_R
% 9. R
% Initiala tillstånd
A0=0; C0=0; DA0=1; DAp0=0; DR0=1; DRp0=0; MA0=0; MR0=0; R0=0;
t0=0; % Starttid
t=t0;
Tfinal=200; % Sluttid
nr=nr_vilar; % Anger förändring i reaktion r
u=u0;
u_save=u0; % Anger initialvärdet i den kommande matris där värden för tillstånd
% lagras vart m:e steg
t_save=t0; % Anger initialvärdet i den kommande vektorn där tiden lagras
% vart m:e steg
i=2; % Index till de värden som ska sparas
m=100; % m anger hur ifta lagringen sker
counterstep=1; % Counterstep anger aktuellt tidssteg i loopen
while t<Tfinal
w=prop_vilar(u); % Propensitetsfunktionerna w
a0=sum(w);
u1=rand; % Genererar slumptal från en likformig fördelning U(0,1)
u2=rand;
T=-log(u1)/a0; % Bestämmer längden av nästa tidssteg
csw=cumsum(w);
r=find((csw>(u2*a0)),1);
u=u+nr(r,
; % Uppdaterar tillstånden
t=t+T; % Uppdaterar tiden
% Sparar värden vart m:e steg
if mod(counterstep,m)==0
u_save(i,
=u;
t_save(i)=t;
i=i+1;
end
counterstep=counterstep+1;
end
subplot(2,1,1)
plot(t_save,u_save(:,1)) % Protein A
title('Tidsvariation av aktivatorprotein A')
xlabel('tid [h]')
ylabel('antal molekyler')
xlim([t0,Tfinal])
subplot(2,1,2)
plot(t_save,u_save(:,9)) % Protein R
title('Tidsvariation av repressorprotein R')
xlabel('tid [h]')
ylabel('antal molekyler')
xlim([t0,Tfinal])
Får detta felmeddelande:
Undefined function or variable 'u0'.
Error in Stokmod (line 26)
u=u0;
clear all
close all
% Stokastisk simulerin av cirkadiska rytmer hos proteiner
% Ordningen på proteinerna
% 1. A
% 2. C
% 3. D_A
% 4. D_A'
% 5. D_R
% 6. D_R'
% 7. M_A
% 8. M_R
% 9. R
% Initiala tillstånd
A0=0; C0=0; DA0=1; DAp0=0; DR0=1; DRp0=0; MA0=0; MR0=0; R0=0;
t0=0; % Starttid
t=t0;
Tfinal=200; % Sluttid
nr=nr_vilar; % Anger förändring i reaktion r
u=u0;
u_save=u0; % Anger initialvärdet i den kommande matris där värden för tillstånd
% lagras vart m:e steg
t_save=t0; % Anger initialvärdet i den kommande vektorn där tiden lagras
% vart m:e steg
i=2; % Index till de värden som ska sparas
m=100; % m anger hur ifta lagringen sker
counterstep=1; % Counterstep anger aktuellt tidssteg i loopen
while t<Tfinal
w=prop_vilar(u); % Propensitetsfunktionerna w
a0=sum(w);
u1=rand; % Genererar slumptal från en likformig fördelning U(0,1)
u2=rand;
T=-log(u1)/a0; % Bestämmer längden av nästa tidssteg
csw=cumsum(w);
r=find((csw>(u2*a0)),1);
u=u+nr(r,
; % Uppdaterar tillståndent=t+T; % Uppdaterar tiden
% Sparar värden vart m:e steg
if mod(counterstep,m)==0
u_save(i,
=u;t_save(i)=t;
i=i+1;
end
counterstep=counterstep+1;
end
subplot(2,1,1)
plot(t_save,u_save(:,1)) % Protein A
title('Tidsvariation av aktivatorprotein A')
xlabel('tid [h]')
ylabel('antal molekyler')
xlim([t0,Tfinal])
subplot(2,1,2)
plot(t_save,u_save(:,9)) % Protein R
title('Tidsvariation av repressorprotein R')
xlabel('tid [h]')
ylabel('antal molekyler')
xlim([t0,Tfinal])
Får detta felmeddelande:
Undefined function or variable 'u0'.
Error in Stokmod (line 26)
u=u0;