Rz(Type~Tg,State~F) @ 0.0
'Rz_TgDiv' Rz(Type~Tg,State~F) -> Rz(Type~Tg,State~F), Rz(Type~Tg,State~F) @ 0.2
'Rz_WtDiv' Rz(Type~Wt,State~F) -> Rz(Type~Wt,State~F), Rz(Type~Wt,State~F) @ 0.2
'Rz_F_Dth' Rz(Type,State~F) -> @ 0.1
'Rz_S_Dth' Rz(Type,State~S?) -> @ 0.05
'Rz_Sym_1' Rz(Type,State~F), Plnt(S1~F,S2,S3) -> Rz(Type,State~S!1), Plnt(S1~S!1,S2,S3) @ 0.1
'Rz_Sym_2' Rz(Type,State~F), Plnt(S1,S2~F,S3) -> Rz(Type,State~S!1), Plnt(S1,S2~S!1,S3) @ 0.1
'Rz_Sym_3' Rz(Type,State~F), Plnt(S1,S2,S3~F) -> Rz(Type,State~S!1), Plnt(S1,S2,S3~S!1) @ 0.1
'Wt_N_Fix' Rz(Type~Wt,State~S?), Carbon() -> Rz(Type~Wt,State~S?), Nitrogen() @ 0.1
'TG_N_Fix' Rz(Type~Tg,State~S?), Carbon() -> Rz(Type~Tg,State~S?), Nitrogen() @ 0.15
'Plnt_C_P' Plnt(S1,S2,S3) -> Plnt(S1,S2,S3), Carbon() @ 0.1
'Plnt_Rep' Plnt(S1~S,S2~S,S3~S), Carbon(), Nitrogen() -> Plnt(S1~F,S2~F,S3~F), Plnt(S1~F,S2~F,S3~F) @ 0.1
#Initialize
%init: 300 * Rz(Type~Wt,State~F)
%init: 30 * Plnt(S1~F,S2~F,S3~F)
#Observables
%obs: 'Rz_Wt_F' Rz(Type~Wt,State~F)
%obs: 'Rz_Tg_F' Rz(Type~Tg,State~F)
#%obs: 'Rz_Wt_S' Rz(Type~Wt,State~S?)
%obs: 'N_Wt' Nitrogen()
%obs: 'Plant' Plnt(S1?,S2?,S3?)
#%obs: 'Rz_Tg_S' Rz(Type~Tg,State~S?)
#Perturbations
%mod: ['Rz_Wt_F'] > 500 do 'Rz_WtDiv' := 0.1
%mod: ['Rz_Tg_F'] > 500 do 'Rz_TgDiv' := 0.1
%mod: $T > 10 do 'inject' := 1000
%mod: ['Rz_Tg_F'] > 300 do 'inject' := 0]]>