反応モデル

KABIRA2011-05-16

  • 反応拡散系の前にまずは反応のみを考える
  • よく混ざっている小さな領域内での分子の動きを想定してみる
  • ルール
  • 気になること
    • ソースの中の補正のところ
    • 全体の結合率への影響しそうな因子
      • 結合する分子を選ぶ時間(dtの幅)
      • 結合する分子の数
      • 結合している時間(tau)
      • などによって単位時間あたりの結合数が変化しそう
N<-50  #分子数
tau<-1  #結合時間の半減期
T<-100  #シミュレーション時間
X<-rep(0,N)   #各分子が結合している時刻をおさめていく

dt<-0.1  #シミュレーションの刻み幅
Nt<-T/dt  #シミュレーション回数
#tau<-tau/dt  #dtで補正?

t<-0
v<-c()   #結合している分子の数をおさめる
for(nt in 1:Nt){
Nfree<-sum(X<=t)  #遊離している分子の数

if(Nfree>=2){
select<-sample(which(X<=t),2,replace=FALSE)   #2分子選ぶ
duration<-rexp(1,rate=1/tau)
X[select]<-duration+t
}

t<-t+dt
v[nt]<-sum(X>t)
}

plot(v,type="l",xlab="time",ylab="combined",col=4,ylim=c(0,N))
#plot(sort(v),xlab="rate",ylab="combined")
#print(summary(v))
#hist(v,breaks=N,col=3,xlab="Number of binding molecles",xlim=c(0,N))