3 个版本
0.1.2 | 2023年8月13日 |
---|---|
0.1.1 | 2023年8月10日 |
0.1.0 | 2023年8月8日 |
在 科学 类别中排名 #724
250KB
630 代码行
crn
crn
可以分别使用 StoCrn
和 DetCrn
模拟随机和确定性的 CRN。
要创建自己的 CRN,首先声明每种分子的初始数量,然后添加反应,每个反应后面可以跟一个速率参数(第一个反应中的 10)
let crn_string = "
a = 10;
b = 5;
c = 0;
a + b -> 2c : 10;
c -> 3b;
";
将整个字符串传递给解析器
let mutcrn= StoCrn::parse(crn_string).unwrap()
现在让我们模拟 3 秒的虚拟时间
let数据=crn.simulate_history(3.0);
在 presets
模块中可以找到一些预制的 CRN。
运行此命令进行图形演示!
cargorun --release --examplegui
注意:确定性模拟在大数情况下往往不稳定——我还在解决这个问题。如果你遇到问题,请尝试缩小所有初始数量(可以是非整数,与随机模拟不同)。
依赖项
~9–25MB
~395K SLoC