Seminar: Enterprise Application Programming Model Martin Lorenz.
Model seminar koba_and_student_100710_ch2
-
Upload
kazuya-nishina -
Category
Education
-
view
1.718 -
download
0
description
Transcript of Model seminar koba_and_student_100710_ch2
モデル勉強会
Chapter 2 Model Formulation
“A Practical Guide to Ecological Modelling “ 輪読
p.15 ~ 24 : 黒岩恵( M1 )p.24 ~ 31 : 篠塚恵( B4 )p.31 ~ 38 : 柏原千里( M2 )p.38 ~ 47 : 幾谷純子( M2 )p.48 ~ 57 : 深田洋行( M2 )p.58 ~ 63 : 木庭啓介p.63 ~ 69 : 小林嵩丸( B4 )
担当→木庭と木庭弟子<東京農工大>
概念的モデルの構築
STEP1 :モデルの設定 ーモデル成分 ー時間・空間スケール ーカレンシー
STEP2: モデルの概念的な式の構築
STEP3: モデルの無矛盾性チェック
例.湖沼生態系における概念モデル
担当:黒岩 恵( M1 )P.15 ~ 24 2.1
できるだけ単純で、かつ実際を反映したモデルを設定する
② 時間・空間スケールの決定・・・見たいプロセスにあったスケール
③ モデルカレンシーの決定・・・精確さと簡便さを兼ねそろえたカレンシー
STEP1 モデルのフローチャートを書く
STATE 1
STATE 2 STATE 3
forcing function
output variable
flow,interaction
① モデルの成分の決定・・・以下の項目を設定する a) state variables :状態変数 モデルの変数 b) forcing function :強制関数 あらかじめモデルに与えられるデータセット c) output variables :出力変数 モデルの解として出力されるデータ
=状態変数に入る、あるいは出て行く物質の流れのいずれかが生じたときのみ状態変数は時間によって変化する
質量・エネルギー・運動量の状態変数について保存則が成り立つことから、この本で扱う多くのモデルについて保存則が成り立つ。
よって、以下のように記述できる。
これを用いて各状態変数の時間変化を概念的に記述することができる
STEP 2 状態変数の変化を記述するモデルを式で ( 概念的に ) 記述する
STEP3 モデルの無矛盾性チェック
1.保存則が成り立っているか調べる。(マスバランスがとれるか?) ① 外部のソースまたはシンクがないとき→状態変数の時間変化の和=ゼロ
② 外部のシンクまたはソースがあるとき→状態変数の時間変化の和=外部からのインプット−外部へのアウトプット
2.モデル式両辺で次元と単位が同じかを調べる。
「平衡式の両辺は、次元均一であり、一貫した単位を持つ」これが実際に成り立っているかチェックする。
作ったモデルが意味をなすか?正しく解が導かれるかチェックする。
f2
f8
f9
f1
f4
f13
f5
f10
f7
f11
f12
PHYTO
NH4
+ZOO
DETRITUS
BotDET FISH
f6
f3
solar radiation
Chlorophyll
状態変数の時間変化
= ( ボックス入るフローの合計 ) ー ( ボックスを出るフローの合計 )
状態変数の時間変化
= ( ボックス入るフローの合計 ) ー ( ボックスを出るフローの合計 )
例:湖沼生態系における概念的モデル
モデル成分の設定状態変数:6つ強制関数:太陽光放射出力変数:クロロフィルⅡ
スケールの設定時間スケール: 1 日空間スケール:湖全体
カレンシーの設定カレンシー:窒素
植物プランクトン
動物プランクトン
魚
デトライタス
底部デトライタス
アンモニウム
合計がゼロになる=質量が保存されている合計がゼロになる=質量が保存されている
モデル公式を数学的に構築するイントロダクション
P24~31 2.2~2.5.1.3
公式を裏付ける仮説→ 分子Aと分子Bが衝突する可能性はAとBの濃度に比例→ 分子の衝突の総数は[A][B]に比例
Fig2.5 :Chemical reactions and orders and the reaction rate.
2.3.1 化学反応式の構築
担当:篠塚 恵( B4 )
2.3.1 化学反応式の構築
A
B
k1[A]
reaction order 1A
A B
C
k2[A][B]
reaction order 2B
A A B
C
k3[A][A][B]
reaction order 3C
Fig2.5 :Chemical reactions and orders and the reaction rate.
AがBに変化する
AとBが反応
→Cになる
2分子のAと1分子のB→Cになる
2.3.2 化学反応式の構築例:シンプルな化学反応式の構築
Fig2.6 A:Reversible reactions occur in both directions.
2.4 化学反応式の構築例:酵素反応の式の構築
Fig2.6。B:An enzymatic reaction,where the enzyme E reacts with substanceD to forman intermediate substance I.k1k2k3 are the rate coefficients.
2.5 生態学的相互作用の式の構築例:湖の生態系においての植物プランクトンのフロー
①一次反応?
dPHYTO/dt=f1- f2- f8- f9
(f1)一次生産のフラックス(f2)動物性プランクトンによる捕食
(f9)減少や下層デトライタスの形成
(f8)死亡や浮遊性のデトライタスの形成
※currency は窒素
【f1の反応式】
⇒これだけではモデルは「 NH 4+があると植物プランクトンが自然発生する」と勘違い
⇒生物によるフラックスの規制が欠けている
?
f2
f8
f9
f1
f4
f13
f5
f10
f7
f11
f12
PHYTO
NH4
+ZOO
DETRITUS
BotDET FISH
f6
f3
solar radiation
Chlorophyll
2.5 生態学的相互作用の式の構築例:湖の生態系においての植物プランクトンのフロー
②二次反応?
Fig2.7 : Uptake of ammonium by phytoplankton represented as a ”first-order reaction” (A) and as a ”second-order reaction”(B)
NH4+
PHYTO
A
NH4+
PHYTO
PHYTO
B
( A )f1 =a ・[ NH
4+]
この式ではアンモニアが存在すると植物プランクトンが自然発生することに・・・
( B )f1 =a ・[ NH 4+]・ PHYTO ...アンモニアと植物プランクトンをあわせて考えてみる
2.5 生態学的相互作用の式の構築例:湖の生態系においての植物プランクトンのフロー
③速度制限要因の定義
動物プランクトンによる捕食の式、f2も考えてみると・・・
f( NH 4+)の式は
[ NH 4+]= 0で0
アンモニアが十分な時1
G(I)の式は光の制限式光の強度が0の時0光の強度が十分だと1
f’(PHYTO)は
PHYTO=OのときO
PHYTOが十分な時1
f1式に[ NH 4+]の速度制限、光の制限を入れてみ
る。
最大速度と仕事をする要素( WORKER )、必要な場合、速度制限項と阻害項の積で表すことができる。
最大相互作用強度
◇相互作用の最大強度は、仕事をする要素によってコントロールされる
◇多くの場合、環境の影響、あるいは阻害物質の存在によって、相互作用は最大に達しない。
生態学的な相互作用(フロー)の表し方
基本の原理
→ 仕事をする要素の濃度と比例する
→ 速度制限項や阻害項が含まれる
担当:柏原 千里( M2 )P.31 ~ 382.5.2 ~ 2.5.4
例1)消費プロセス
RESOURCE
WORKER
A
PREY
PREDATOR
B
NUTRIENT
ALGAE
C
HOST
PARASITE
D
Fig.2.8 より抜粋。消費者-資源の相互作用を示す
仕事をする要素・・・消費者
速度制限項・・・資源[ 0,1]の範囲をとる
RESOURCE
WORKER
A
PREY
PREDATOR
B
NUTRIENT
ALGAE
C
HOST
PARASITE
D
例2)生化学的変換(細菌が媒介)
例3)損失プロセス : 維持呼吸
仕事をする要素は動物のバイオマス、速度制限項は酸素の関数
RESOURCE
SINK
WORKER
A
SEMILABILE DOC
LABILE DOC
BACTERIA
DOC hydrolysisB
CO2
Carbohydrates
Photosyntheticproteins
PhotosynthesisC
BACTERIA
DOC
VIRUSSES
Bacterial lysisD
不変的に好気的な環境の場合
MaintenanceRespiration = respirationRate ・ BIOMASS
MaintenanceRespiration = respirationRate ・ BIOMASS ・ RateLimitingTerm
細菌はシンクではない!加水分解を触媒する酵素の濃度はバイオマスに比例
加水分解の最大速度はバイオマスに比例
Fig.2.9 より抜粋。
0.0
0.2
0.4
0.6
0.8
1.0
Type I
k
R
k
Type II
R
ks R
ks
Type III
Rp
kspRp
ks
Functional responses
Resource, R
速度制限項の表し方- 1 つの場合
生態学モデルでは速度制限項を資源(ソース)の関数として表し、そのような相関関係を含む式を「機能的反応式」と呼ぶ。
ks ・・半飽和定数 p ・・形状係数
Ⅱ)
Ⅲ)
線形反応
モノーもしくはミカエリス-メンテン反応
シグモイド反応
※生態学的モデルで最もよく使用される
Ⅰ)
速度制限項の表し方-複数の場合
プロセスはたいてい多くの要因によって制限されている。◇リービッヒの最小律成長速度は成長に最も不足している要素ただひとつに依存するという考え方
◇乗法の法則異なる要素が同時に作用する
例)藻類の生長 光の可給性と栄養塩濃度( N,Si )の両方に制限される
⇒ モノー式
2.5.5 阻害項 inhibition term
RESOURCE
WORKER
X INHIBITOR
A
OM NO3
CO2,N2,...
X O2
DenitrificationB
NO3
Algae
X NH3
Nitrate uptakeC
2
2
2 O2 O2
O21Inhibition
O
O
O kin
kin
kin
TERORGANICMATO2NO3
NO3maxationDenitrific
2
2
3
O
O
NO kin
kin
ksr
WORKERinhibitionlimitation
言うなれば、“ 阻害速度”
max rate (NO3
-消費)
例えば
担当:幾谷 純子( M2 )P.38 ~ 47
2.6 結合モデル方程式 coupled model equations
★他のフローの一部分としてのフローモデル
PREY PREDATOR
CO2
DETRITUS
Ingestion Growth
Basal respiration
Defecation
Activity respiration
PREDATORPREY
PREYmaxIngestion
PREYksIngestion
IngestionGrowth
s)1()1(IngestionGrowth
irationGrowthrespDefecationIngestionGrowth
s)1(IngestionirationGrowthresp
)Defecation(IngestionirationGrowthresp
IngestionDefecation
pFaecegrowthCost
pFaecegrowthCost
growthCost
pFaeces
成長効率
←Ingestion に関する式
←Ingestion に伴う、 Defecationや Active respirationも考慮した式
結合モデル方程式の例
PREYPREY
PREYPREDATOR
PREY
PREDATORPREY
PREYPREDATOR
PREDATOR
PREY
PREY
ksg
dt
d
rks
gdt
d
nRespiratioBONORGANICCAR
nRespiratioCO2
nRespiratioPO
nRespiratioNH
nRespiratioO2
4
3
dt
ddt
d
PCdt
d
NCdt
d
OCdt
d
★ソースとシンクの相互作用を見る
★化学量論的に見る
1
16/106
1/106
2.7 モデルの単純化 model simplifications
Prey
Pred
A
Pred
Carrying capacity
A
B
C
D
B
A
B
Mortalityflux
Closure
DETRITUS
DOC
BACTERIA
CO2
C
DETRITUS
CO2
Mineralisation
flux
Shunt
★モデルの単純化・・・ 3種類のパターン
A. 捕食者だけを考える (=環境収容力モデル )
B. 上位の捕食者をまとめてしまう (closure)
C. 関心のない部分を飛ばす
環境収容力のモデル
★環境収容力・・・消費者の成長速度が負になる以上の密度あるいは濃度
例:個体群増加モデル (logistic方程式 or Verhulst モデル )
0 5 10 15 20
-2.0
-1.5
-1.0
-0.5
0.0
density, N
rate
of c
ha
ng
e, d
N/d
t
dN
dtrN1
N
K
A
0 20 40 60 80 100
05
10
15
time
de
nsi
ty, N
K=10r=0.1
B
←どちらも K に近付く
初期値>環境収容力
初期値<環境収容力
Kr
dt
d N1N
N
環境収容力
2章 p.48 ~ p.58 ▽クロージャー項( Closure Terms )●被食者の死亡( mortality )モデル
-①-②
① 捕食速度( k )は一定② 捕食速度( c ・ PREY )は被食者バイオマスに応じて変動モデルの状態を安定化させるというメリットがあると
同時に、意図的なモデルの安定化が、研究の本来の目的を損なう可能性があるというデメリットも存在する∴クロージャー項の取り扱いには細心の注意を払う必要がある
(複数の捕食者達による多段階的な捕食を、消費者-被食者という単純なモデルに近似しているのでクロージャーである)
モデルの安定化??
担当:深田 洋行( M2 )
▽物理的条件のモデルに与える影響代表的な物理量 : 温度、光量、流量、風、海流・乱流( Currents ・ Turbulence )物理量の生態系への影響力は強く、制限関数として課せられることもある<ex.> 光光合成に対する光制限の関数
これらの関数はどのように使いわけられるのでしょうか?
▽ NPZD モデル(水界環境で使われる簡易生態系モデル)
状態変数 : Nutrient (栄養塩)、 Phytoplankton (植物プランクトン)、 Zooplankton (動物プランクトン)、 Detritus(デトリタス)単位 : N が使われる… <ex.> mmol N m-3
・ f1 = 藻類による正味の窒素取り込み
・ f2 = 動物プランクトンの摂食
・ f3 = 動物プランクトンの排泄物の生産・ f4 = 動物プランクトンによる排出
・ f5 = 動物プランクトンの死亡
・ f6 = 懸濁態有機物の無機化 (※)太陽放射 :制限関数、クロロフィル : 出力変数
●モデルの作成手順
① フローチャート(上述)を描く② フローを差し引きして状態変数の変化速度を描く
③ フローを数学的な計算式で描く
④ フローの計算式の精度をチェックする
・単位の一貫性
・マスバランス
⑤ モデルを解く
f3
f4RESERVECarbohydrates
LMWCarbohydrates
Biosynthetic and PhotosyntheticPROTEINS
f5
DIN
f1f2
f6
f7
C C
C,N,Chl
図 2.22 AQUAPHY のフローチャート .
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
AQUAPHY ( Lancelot et al., 1991 )は養分と光に対応した藻類の生長を記述する複雑な生理モデルである。
炭素同化は光強度によって制限され( CO2 は多くの場合、水柱では制限要因とならない)、一方で窒素同化は養分と炭水化物、両方の利用可能性( availability )によって制限される。
担当:木庭啓介
f3
f4RESERVECarbohydrates
LMWCarbohydrates
Biosynthetic and PhotosyntheticPROTEINS
f5
DIN
f1f2
f6
f7
C C
C,N,Chl
図 2.22 AQUAPHY のフローチャート .
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
藻類はある程度まで変化しやすいストイキオメトリーを持つ:藻類の炭素と窒素の比( C:N )は光が強く低養分条件では高く(強い光は光合成を助長し、低養分は窒素同化を弱めるだろう)。しかし、藻類はある生理学的に耐えられる限界範囲の中に自分の C:N比を維持しようと努力もする。結果、もしも余った炭素があれば、光合成を通じた新しい炭素の獲得は下方修正され、一方炭素欠乏状態であれば、光合成はそのときの光環境に応じた最大速度で行われるだろう。 炭素同化と窒素同化の
このような不完全な連結を記述するモデルは、アンバランス成長モデルと呼ばれる。
これらは、より一般的な、窒素と炭素の同化が同時に起こり、固定されたストイキオメトリーを藻類が持つバランス成長モデル、とは異なるものである。
f3
f4RESERVECarbohydrates
LMWCarbohydrates
Biosynthetic and PhotosyntheticPROTEINS
f5
DIN
f1f2
f6
f7
C C
C,N,Chl
図 2.22 AQUAPHY のフローチャート .
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )つくりかたステップ 1 フローチャートを書いてみる(下図)
f1 :光合成( Photosynthesis )、 f2 :滲出( Exudation )、 f3 :貯蔵( Storage )、 f4 :異化( Catabolism )、 f5 :タンパク合成( Protein Synthesis )、 f6 :呼吸( Respiration )、 f7 :死亡による損失( Loss due to mortality )
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
ステップ 2 概念的モデル式をたてる
死亡タンパク合成呼吸貯蔵滲出異化光合成 dt
dLMW
死亡異化貯蔵 dt
dRESERVE
死亡タンパク合成dt
dPROTEIN
NCタンパク 比dt
d 光合成
DINf3
f4RESERVECarbohydrates
LMWCarbohydrates
Biosynthetic and PhotosyntheticPROTEINS
f5
DIN
f1f2
f6
f7
C C
C,N,Chl
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
ステップ 3 実際の数式を書くために、モデルの構成要素であるそれぞれのプロセスについて、状態変数の関数、強制変数(光)の関数として明記する。タンパクがほとんどの仕事を行うために、タンパク濃度の一次反応として多くの速度は表現される。
たとえばFlow 3タンパク合成( flow 3 )は低分子炭水化物( LMW )の相対的な availability によって制限され、 DIN の availability によっても制限される。タンパク合成が止まる LMW と PROTEIN比には限界を設ける( minQuota )
minQuata
ksksmaxSynt
DIN
PROTEIN
LMW
PROTEINDIN
DINthesisProteinSyn
f3
f4RESERVECarbohydrates
LMWCarbohydrates
Biosynthetic and PhotosyntheticPROTEINS
f5
DIN
f1f2
f6
f7
C C
C,N,Chl
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
ステップ 4 次元のチェック、マスバランスのチェック
ステップ 5 R のコードに変換し、シミュレーションを回す
0 50 100 150 200
3.95
4.00
4.05
Chlorophyll
time, hours
µg/
l
0 50 100 150 200
5.95
6.00
6.05
DIN
time, hours
mm
olN
/m3
0 50 100 150 200
0.13
50.
140
0.14
50.
150
NCratio
time, hours
mol
N/m
olC
0 50 100 150 200
0.0
0.5
1.0
1.5
2.0
PhotoSynthesis
time, hours
mm
olC
/m3/
hr
AQUAPHY
図2.23 AQUAPHYを回した結果。明、暗期間は白と陰の部分でそれぞれ表されている。すべての変数について日変化が生じていることに注意。
左図ではモデルは 10 日間回している。 15 時間昼、 9 時間夜のサイクル。培養水からの一定なDIN 流入と流出が認められる(つまり希釈培養。第 3章参照のこと)。
モデル結果は藻類のクロロフィル濃度と DIN濃度の日変化、長期変化を表している。そして藻類の化学量論的 N:C比に対する明暗サイクルの影響は明らかである:藻類の N:C比は炭素が同化される日中に減少し、藻類が光合成を停止するが窒素同化を継続する夜間に増加する。
光が供給されるとすぐに光合成が始まっている。その後すぐに低分子炭水化物の蓄積が光合成を阻害し、光合成速度は低下する。光合成は夜間停止している。
2.9.2 Aquaphy 、藻類のアンバランスな成長に関する生理モデル( P58 )
# load package with the integration routine:
require(deSolve) まず deSolve よみこまないと!
#----------------------## the model equations: # #----------------------#
model<-function(t,state,parameters) 関数の定義(ステップ 3 ) { with(as.list(c(state,parameters)),{ # unpack the state variables, parameters
# PAR, on-off function depending on the hour within a day hourofday <- t%%24 PAR <- ifelse (hourofday < dayLength, parMean , 0)
## the output variables PhytoC <- PROTEIN + RESERVE + LMW # all components contain carbon PhytoN <- PROTEIN * rNCProtein # only proteins contain nitrogen NCratio <- PhytoN / PhytoC Chlorophyll <- PhytoN * rChlN TotalN <- PhytoN + DIN ChlCratio <- Chlorophyll / PhytoC
## the rates, in mmol/hr PartLMW <- LMW / PhytoC Limfac <- max(0,min(1,(maxpLMW -PartLMW)/(maxpLMW-minpLMW))) PhotoSynthesis <- maxPhotoSynt*Limfac*(1-exp(alpha*PAR/maxPhotoSynt)) * PROTEIN Exudation <- pExudation * PhotoSynthesis MonodQuotum <- max(0,LMW / PROTEIN - minQuotum) ProteinSynthesis <- maxProteinSynt*MonodQuotum * DIN / (DIN+ksDIN) * PROTEIN Storage <- maxStorage *MonodQuotum * PROTEIN Respiration <- respirationRate * LMW + pResp*ProteinSynthesis Catabolism <- catabolismRate * RESERVE
## the rates of change of state variables; includes dilution effects (last term) ここは概念的式!(ステップ 2) dLMW <- ( PhotoSynthesis + Catabolism - Exudation - Storage - Respiration - ProteinSynthesis - dilutionRate * LMW)
dRESERVE <- Storage - Catabolism - dilutionRate * RESERVE
dPROTEIN <- ProteinSynthesis - dilutionRate * PROTEIN
dDIN <- -ProteinSynthesis * rNCProtein - dilutionRate * (DIN - inputDIN)
## the output, as a list list(c(dDIN,dPROTEIN,dRESERVE,dLMW), ## the rate of change of state variables c(PAR = PAR, ## the ordinary variables TotalN = TotalN, PhotoSynthesis = PhotoSynthesis, NCratio = NCratio, ChlCratio = ChlCratio, Chlorophyll = Chlorophyll)) }) } # end of model
#-----------------------## the model parameters: # パラメーターを指定してやる#-----------------------#
parameters<-c(maxPhotoSynt =0.125, #molC/molC/hr Maximal protein C-specific rate of photsynthesis at 20 dg rMortPHY =0.001, #/hr Mortality rate of Phytoplankton (lysis and zooplankton grazing) alpha =-0.125/150, # オ Einst/m2/s/hr Light dependency factor pExudation =0.0, #- Part of photosynthesis that is exudated maxProteinSynt =0.136, #molC/molC/hr Maximal Biosynthetic C-specific N-uptake rate ksDIN =1.0, #mmolN/m3 Half-saturation ct of N uptake Phytoplankton minpLMW =0.05, #molC/molC Minimum metabolite/totalC ratio in algae maxpLMW =0.15, #molC/molC Maximum metabolite/totalC ratio in algae minQuotum =0.075, #molC/molC Minimum metabolite/Protein ratio for synthesis maxStorage =0.23, #/h Maximum storage rate for Phytoplankton respirationRate=0.0001, #/h Respiration rate of LMW pResp =0.4, #- Part of protein synthesis that is respired (cost of biosynthesis) catabolismRate =0.06, #/h Catabolism rate of Phytoplankton reserves dilutionRate =0.01, #/h dilution rate in chemostat rNCProtein =0.2, #molN/molC Nitrogen/carbon ratio of proteins inputDIN =10.0, #mmolN/m3 DIN in inflowing water rChlN =1, #gChl/molN Chl to nitrogen ratio parMean =250., # オmolPhot/m2/s PAR during the light phase dayLength =15. #hours Length of illuminated period )
#-------------------------## the initial conditions: # state variable たちの初期値を設定#-------------------------# # assume the amount of reserves = 50% amount of proteins# 10% LMW
state <-c(DIN =6., #mmolN/m3 PROTEIN =20.0, #mmolC/m3 RESERVE =5.0, #mmolC/m3 LMW =1.0) #mmolC/m3
#----------------------## RUNNING the model: # 実際のモデルをどう走らせるか(時間)指定#----------------------#
times <-seq(0,24*10,1)out <-as.data.frame(ode(state,times,model,parameters))
#------------------------## PLOTTING model output: # 表示の仕方(中略)#------------------------#
par(mfrow=c(2,2), oma=c(0,0,3,0)) # set number of plots (mfrow) and margin size (oma)col <- grey(0.9)ii <- 1:length(out$PAR) # output over entire period
plot (times[ii],out$Chlorophyll[ii],type="l",main="Chlorophyll",xlab="time, hours",ylab=" オ g/l")polygon(times[ii],out$PAR[ii]-10,col=col,border=NA);box()lines (times[ii],out$Chlorophyll[ii] ,lwd=2 )
実際に R を使ってモデルを動かしてみよ
う!
text P.63-69担当:小林 嵩丸( B4 )
2.10.1 数式を理解する• R はグラフの作成に非常に適している。• 数式の意味を理解するためには、数式のグラフ化は最も簡単な方法である。
r<-0.1K<-10par(mfrow=c(1,1))par(mar=c(5.1,4.1,4.1,2.1))curve (expr= r*x*(1-x/K),from=0,to=20,lwd=2, xlab="density, N",ylab="rate of change, dN/dt")legend ("topright",c("K=10","r=0.1"))
例:環境容量 K と個体数 N の増加速度パラメータの設定 数式・計算範囲の
設定
凡例の追加 計算なし!とても簡単!
dN
dtrN(1
N
K)
よくわからない…
2.10.2 同じ式でパラメータの値を変える
• 数式を理解するためには、パラメータの値を変えてグラフを描くことがいい。
windows()par(mar=c(5.1,4.1,4.1,2.1))food <- seq(0,30,by=0.1)ks <- seq (1,10, by=2)
foodfun <- outer(food,ks,function(x,y) x /(y +x))
matplot(x=food,foodfun,type="l",lty=1:10, col=1, xlab=“food”,ylab=“-”, main= expression (frac(food ,food+ks)))
legend ("bottomright", as.character(ks), title="ks=”, col=1,lty=1:10)
例:ミカエリス・メンテン式パラメータの設定 数式の
設定
計算結果の表示
凡例の表示
パラメータ ks の値を変えてグラフを描くことで、ミカエリス・メンテン式における ks の影響を理解することができる。
RateLimitingTerm R
R Ks
Ks が大きくなるとどうなるのか?
例題 1 :栄養制限下でのバッチ培養モデル
• 閉鎖系培養ビンにおける植物プランクトンの培養(バッチ培養)をモデル化する。
• 植物プランクトンの成長は溶存無機態窒素( DIN )によってのみ制限されており、他の栄養素や光は決して制限とならない。
PHYTO
DETRITUS
DINf1
f3f2
1. 状態変数を決定する今回は、①PHYTO (植物プランク
トン)②DIN (溶存無機態窒
素)③DETRITUS (デトリタ
ス)の 3 つを選んだ。
2. フローチャートを描くf1 : PHYTO による DIN の吸収
f2 : PHYTO の死亡f3 : DETRITUS の無機化
3. 各状態変数の変化を示す
(変化) = (流入)−(流出)
dPHYTO = f1 − f2
dDETRITUS = f2 − f3
dDIN= f3 − f1
4. フラックスに数式を与える
f1 maxUptakeDIN
DIN ksDIN
f2 mortalityRatePHYTOPHYTO
f3 MineralizationrateDETRITUS
モデルを作る
parameters<-c(maxUptake =1.0, #/day ksDIN =0.5, #μmolN/m3 mortalityRate =0.4, #/(μmolN/m3)/day mineralisationRate =0.1) #/day
state <-c(PHYTO =1, #μmolN/m3 DETRITUS =5, #μmolN/m3 DIN =5, #μmolN/m3 TDN =11) #μmolN/m3
model<-function(t,state,parameters) { with(as.list(c(state,parameters)),{ din <-max(0,DIN) phyto <-max(0,PHYTO) detritus <-max(0,DETRITUS) Nuptake <- maxUptake * din/(din+ksDIN) * phyto Mortality <- mortalityRate * phyto * phyto Mineralisation <- mineralisationRate * detritus dPHYTO <- Nuptake - Mortality #μmolN/m3/day dDETRITUS <- Mortality - Mineralisation #μmolN/m3/day dDIN <- Mineralisation - Nuptake #μmolN/m3/day dTDN <- dPHYTO + dDETRITUS + dDIN #μmolN/m3/day list(c(dPHYTO,dDETRITUS,dDIN,dTDN))})}
times <-seq(0,15,by=0.01) #day0~15 require(deSolve)out <- as.data.frame(ode(y=state,times=times,func=model,parameters))par(mfrow=c(2,2), oma=c(0,0,3,0)) plot (times,out$PHYTO,type="l",lwd=2,main="PHYTO",xlab=“day",ylab=“μmol/m3")plot (times,out$DETRITUS,type="l",lwd=2,main="DETRITUS",xlab=“day",ylab=“μmol/m3")plot (times,out$DIN,type="l",lwd=2,main="DIN",xlab=“day",ylab=“μmol/m3")plot (times,out$TDN,type="l",lwd=2,main="TDN",xlab=“day",ylab=“μmol/m3")mtext(outer=TRUE,side=3,"model",cex=1.5)
コードを入力する!
マスバランス・単位の次元があっているか確認する!
例題 2 :デトリタス分解モデル• 従属栄養微生物による段階的なデトリタ
スの分解をモデル化する。• 系供給された粒子状デトリタス( POC )
は微生物( BACT )によって高分子溶存有機炭素( HMWC )、低分子溶存有機炭素( LMWC )へと順に分解され、 LMWC はBACT によって吸収される。
• BACT は基礎呼吸・活動呼吸を行ったり、または捕食を受けることにより炭素を放出する。
1. 状態変数を決定するテキストにある 4 つを使
う①POC (粒子状デトリタ
ス)②HMWC (高分子溶存有機炭
素)③LMWC (低分子溶存有機炭
素)④BACT (微生物)
2. フローチャートを描くf1 : POC の流入f2 : BACT による POC の加水分
解f3 : BACT による HMWC の加水
分解f4 : BACT による LMWC の摂食f5 : BACT の活動呼吸f6 : BACT に対する補食f7 : BACT の基礎呼吸
3. 各状態変数の変化を示す
(変化) = (流入)−(流出)
dPOC = f1 − f2
dHMWC = f2 − f3
dLMWC = f3 − f4
dBACT = f4 - f5 - f6 - f7
4. フラックスに数式を与える
f1 fluxPOC
f2 KmaxPOCPOC
POC kspocBACT
f1
f2 f3
f4
f5
f6 f7
f3 KmaxHMWCHMWC
HMWC ksHMWCBACT
f4 umMAX LMWC
LMWC k supBACT
f5 pLOSS f4
f6 rClossBACTBACT
f7 rBASBACT
モデルを作る