楼主: miralmimi
1641 1

[新手尝试] 求教GAMS程序语言改错 [推广有奖]

  • 0关注
  • 0粉丝

已卖:97份资源

高中生

5%

还不是VIP/贵宾

-

威望
0
论坛币
2468 个
通用积分
7.7639
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
530 点
帖子
12
精华
0
在线时间
29 小时
注册时间
2020-1-10
最后登录
2023-10-1

楼主
miralmimi 发表于 2022-4-17 11:00:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
首先本人对betaEfos(a)进行赋值:
betaEfos(a)$(sam('com2',a) and sam('com3',a))=PEcoal0(a)*Ecoal0(a)**(1-rhofos(a))/(PEcoal0(a)*Ecoal0(a)**(1-rhofos(a))+PEpg0(a)*Epg0(a)**(1-rhofos(a)));
因为在sam('com2',a)及sam('com3',a)会有分别为零的情况,所以给了限制条件$(sam('com2',a) and sam('com3',a)),分模块运行显示在限制条件下,betaEfos(a)没有为0和1的情况;
然后就是我的方程中有一个是这样:
eqEfosfn(a)$(sam('com2',a) and sam('com3',a))..
Efos(a)=e=(betaEfos(a)*Ecoal(a)**rhofos(a)+(1-betaEfos(a))*Epg(a)**rhofos(a))**(1/rhofos(a));

同样的限制条件,程序运行结果显示存在底数为零的情况,但是明明限制条件已经排除了参数以及变量为零的情况,
因为是第一次做CGE,这个问题真的困扰我很久很久,请问有哪位前辈或者有经验的同学帮我解答一下吗?万分感谢!!!
1113706591(1).png
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:GAMS程序 程序语言 gams AMS GAM GAMS程序 CGE 在职研究生

沙发
苟忘风波累0 学生认证  发表于 2022-5-5 12:08:33
你加的限制条件是对于整个方程的,但是你需要仔细检查方程里的每个变量及参数的计算,是不是有0值。另外,也有可能是与之关联的其他方程计算出的值导入这个方程的时候有0值出现,总之需要检查你的方程及变量的计算过程,不仅仅是这一个方程的问题,要逐一进行排查的。

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
扫码
拉您进交流群
GMT+8, 2026-1-31 10:08