表函数引用time影子变量中单位冲突问题

表函数引用time影子变量中单位冲突问题


最近学习vensim的系统动力学仿真软件,建立系统动力学模型进行分析。
其中,设置了一个人口随时间年限变化的变函数(lookup)。
人口=中心城区人口(time),time为影子变量,单位为year,中心城区人口()为lookup的表函数,设置了不同年份的人口数值,单位为人。最后人口单位也人。
但在units check的时候,发现出现
warning:units in equation for - 人口
lookup - 中心城区人口 - used with dimensioned argument year
的错误。
查了经管之家的论坛后,发现该错误不影响模型评价,但单位不一致是表函数无法按照人的思维理解去换算单位,必须是公式左右两边单位相等。所以需要加入单位辅助,尝试增加一个“单位转换”常量,数值为1,单位为fraction/year。
人口=中心城区人口(time*单位转换)
将表函数引用的数据单位变为dmnl,之后再检查units check就不会再有错误了。

原始模型
原始模式(表函数出错)
修改后模型

修改后模型(添加单位转换)

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值