24小时热门版块排行榜    

查看: 1949  |  回复: 5

envzwl

银虫 (小有名气)

[求助] Vensim求助

请问各位老师,这个公式可以表示城市需水量 =人口乘以一个表函数吗?
城市需水量 = WITH LOOKUP (城市人口,
([(2000,0)-(2020,80)],(2000,65.7),(2010,71.54),(2020,78.84) ))
Units: billion cubic meters

如果把图和公式改成如下:,
(1)        人口=
100
Units: million person

(2)        人均生活用水定额表(
[[(2000,0)-(2020,80)],(2000,65.7),(2010,71.54),(2020,78.84) ))
Units: billion cubic meters

(3)        人均需水定额=
人均生活用水定额表(Time)
Units: cubic meters per person

(4)        生活需水量=
人口*人均需水定额
Units: billion cubic meters

未命名.jpg
回复此楼

» 猜你喜欢

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

envzwl

银虫 (小有名气)

补充一下,我想问的是这两种表达方式表示的意思一样吗?求详细解释?谢谢
2楼2013-05-08 23:43:32
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

envzwl

银虫 (小有名气)

引用回帖:
2楼: Originally posted by envzwl at 2013-05-08 23:43:32
补充一下,我想问的是这两种表达方式表示的意思一样吗?求详细解释?谢谢

真的没人理我啊
3楼2013-05-09 09:45:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bearman88

铁虫 (初入文坛)

【答案】应助回帖

★ ★ ★
xiegangmai: 金币+3, 鼓励讨论交流! 2013-08-01 23:41:57
太感动了,我不停的寻找,竟然有人和我用同样的工具。说什么也帮你看看啊!

看你的流图,你的意思是不是:1.生活需水量=F(人口,人均需水定额)
                                           2.人均需水定额=F(Time,人均生活用水定额表)ps:(这个感觉有点不科学,表函数一般是趋势外推的吧,采用历史时间来外推人均需水,那么你就设定了随着时间的增加,需求不是增就是涨,不符合现实啊。你这里等于是用表函数简单处理了人均需水定额了。如果你数据够的话,不如把正常人的水需求根据需求继续划分一下,一直划分到底层,然后再用时间等其他影响因素来作用底层。底层汇总以后就是总的人均需水定额了)


城市需水量 = WITH LOOKUP (城市人口,
([(2000,0)-(2020,80)],(2000,65.7),(2010,71.54),(2020,78.84) ))
Units: billion cubic meters ”

好像不对吧 和后面的解释不一样。我的vensim版本似乎和你的不一样,但是with lookup 里面应该是Time,根据你上下文的解释,因为,time=2000~2020。即

城市需水量 = WITH LOOKUP (Time,
([(2000,0)-(2020,80)],(2000,65.7),(2010,71.54),(2020,78.84) ))
Units: billion cubic meters ”

根据说明书:X=WITH LOOKUP(1.5,((0,1),(1,1),(2,2)) is equal to 1.5
把它看成X=WITH LOOKUP(variable1,((X1,Y1),(X1,Y2)……)
.那就是根据variable1 到后面集合中匹配 X=variable1的条件,然后输出对应的Y吧。
从头开始,脚踏实地。系统动力学论坛:www.sdleagues.com
4楼2013-08-01 23:03:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bearman88

铁虫 (初入文坛)

【答案】应助回帖

引用回帖:
4楼: Originally posted by bearman88 at 2013-08-01 23:03:10
太感动了,我不停的寻找,竟然有人和我用同样的工具。说什么也帮你看看啊!

看你的流图,你的意思是不是:1.生活需水量=F(人口,人均需水定额)
                                           2 ...

额,顺便看我的签名,来系统动力学论坛多交流一下吧。需要你这样的爱好者加入。
从头开始,脚踏实地。系统动力学论坛:www.sdleagues.com
5楼2013-08-01 23:04:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bearman88

铁虫 (初入文坛)

【答案】应助回帖

★ ★
xiegangmai: 金币+2, 鼓励讨论交流! 2013-08-01 23:42:06
WITH LOOKUP(x,(l#))
auxiliary WITH LOOKUP of the y value corresponding to x in the xy pairs l#
Top  Previous  Next
Specifies a nonlinear relationship between the input x and the output by passing the input through a series of x,y pairs specified as numbers.  It is the same as L(x) where L is defined by the equation L(L#).
Restrictions:Must appear first on the right hand side of the equation and can not be followed by anything else.
The WITH LOOKUP function is a convenient way to specify a nonlinear relationship without explicitly naming the Lookup function to be used.  This can reduce clutter and be somewhat quicker than naming a separate Lookup variable but is not as flexible.
Units:        WITH LOOKUP(dmnl,#) --> units
Just as for normal Lookup usage the x argument is expected to be dimensionless.  If not, a warning is issued, but not an error.  The output units are those for the left hand side variable.
Example
X=WITH LOOKUP(1.5,((0,1),(1,1),(2,2)) is equal to 1.5.
从头开始,脚踏实地。系统动力学论坛:www.sdleagues.com
6楼2013-08-01 23:08:30
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 学员bLQGY1 的主题更新
信息提示
请填处理意见