modelica - 在 Dymola 的初始化过程中,非线性求解器无法收敛
问题描述
使用 ThermoSysPro 库时,我在初始化过程中遇到错误。
Turbine5.Pe 似乎比 Turbine2.Pe 大,所以结果是否定的。但是我检查了我的参数,应该没有这样的问题。
这是因为非线性求解器无法求解下图中的方程吗?
解决方案
没有足够的信息,我建议在模拟设置>调试>非线性求解器诊断中设置详细信息和/或非线性迭代以获取更多信息。
导致问题的完整表达式是sqrt((Turbine2.Pe^2-Turbine5.Pe^2)/(Turbine2.Cst*Turbine2.proe.T))
由于两个 Pe 值有 fixed=true,因此它们似乎不太可能是错误的,但如果没有完整的模型,就不可能看到。
然而,也有可能要么Cst
是proe.T
负数,要么是基于其他值计算为负值。
没有一个完整的模型是不可能的。
推荐阅读
- angular - 如何在自定义验证器中访问组件变量?
- loops - 带循环的ansible注册
- reactjs - 使用 Material-UI-Picker 在 iOS 设备上错误地显示时间
- arrays - 如何使用firestore根据值检索数组内的数组
- angular - 将材料数据表排序为仅按角度升序排列
- cvxr - 优化变量的最小值小于下限
- apache - 虚拟主机重定向到本地主机
- selenium - 在 TestNG 创建的 JUNIT 报告中禁用堆栈跟踪
- mysql - 条件 where 计算班次
- apache-flink - 如何在 Flink Java API 中的 keyBy() 之后获取 DataStream 密钥