首页 文章

计算AnyLogic中特定时间步

提问于
浏览
0

我正在尝试运行标准的基于SIR代理的模型,其中代理从“易感”转变为“感染”,从“感染”转变为“恢复” . 我现在对计算瞬时发生率,即在给定时间t从“易感”状态转变为“感染”状态的药剂数量感兴趣 .

例如:在第1天(模型时间),2个代理从'易感'过渡到'感染'在第2天(模型时间),5个代理从'易感'过渡到'感染'在第3天(模型时间),7代理人从'易感'转变为'感染' . . .

我能够得到'感染'代理的总数,但我有兴趣知道每个时间步的这个值 . 我正在寻找一个函数,累计累计每个时间步的新感染数 .

有关如何在AnyLogic中执行此操作的任何想法都会非常有用 . 谢谢 .

2 回答

  • 0

    这是一个截图,你需要选择"Other"作为键来手动输入维度"Date()":
    enter image description here

  • 0

    我建议您在Main col_Counter 上创建一个集合,其中键是日期,值是感染数量 . 然后在代理中创建一个名为 e_Counting 的定期事件,从模型开始开始,每24小时重复一次 . 在动作中写道:

    main.col_Counter.add(date(), v_countsToday);

    v_countsToday=0;

    还要在代理中将 v_countsToday 创建为整数变量 . 每当感染发生时添加1 .

    还有很多其他方法,但这会有效 .

    干杯

相关问题