反応モデル
- 反応拡散系の前にまずは反応のみを考える
- よく混ざっている小さな領域内での分子の動きを想定してみる
- ルール
- 気になること
- ソースの中の補正のところ
- 全体の結合率への影響しそうな因子
- 結合する分子を選ぶ時間(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))