微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

FMU 2.0 交互 - 需要参数值等的并行“容器”?

如何解决FMU 2.0 交互 - 需要参数值等的并行“容器”?

我在 Jupyter notebooks 中使用 pyfmi 来运行模拟,我喜欢交互工作并评估参数的增量变化等。很久以前我发现有必要引入一个字典,作为参数和初始值的“容器” .现在我想知道这里是否有办法摆脱这个“容器”,毕竟它在一定程度上是“模型”的平行结构?

典型的工作流程如下所示:

    create a diagram where results from different simulations below should be shown

    model = load_fmu(fmu_model) 
    parDict['model.x_0'] = 1
    parDict['model.a'] = 2
    for key in parDict.keys(): model.set(key,parDict[key])
    sim_res = model.simulate(10)
    plot results...

    model = load_fmu(fmu_model) 
    parDict['model.x_0'] = 3
    for key in parDict.keys(): model.set(key,parDict[key])
    sim_res = model.simulate(10)
    plot results...

一个函数model.reset()可以在编译时将状态恢复到认值而无需再次加载,但您需要做的不仅仅是以下

    model.reset()
    parDict['model.x_0'] = 3
    for key in parDict.keys(): model.set(key,parDict[key])
    sim_res = model.simulate(10)
    plot results...

所以,这不起作用... 并且毕竟参数和初始值需要带回来,我们仍然需要parDict,但我们可以避免使用load-command。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。