3 个版本

0.1.2 2023年8月13日
0.1.1 2023年8月10日
0.1.0 2023年8月8日

科学 类别中排名 #724

MIT 许可证

250KB
630 代码行

crn

Crates.io Documentation

crn 可以分别使用 StoCrnDetCrn 模拟随机和确定性的 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

注意:确定性模拟在大数情况下往往不稳定——我还在解决这个问题。如果你遇到问题,请尝试缩小所有初始数量(可以是非整数,与随机模拟不同)。

gui demo

依赖项

~9–25MB
~395K SLoC