专栏
标签
for循环中,不会切换工况
一般问题
发布于 2025-01-03 11:06:42
查看 15过去542天

for x in 1:x-1 loop
Xtt[x]=if x_out[x]>0 and x_out[x]<1
then (x_out[x]/(1-x_out[x]))^0.9*(rhor431a_L/rhor431a_G)^0.5*(yitar431a_G/yitar431a_L)^0.1
elseif x_out[x]>1
then 1
else 0;
在这个循环中x_out[x]最开始是>0的,所以执行了第一个情况,而随着时间推移,x_out[x]会小于0,然而这时这个方程仍然在执行第一个工况,所以报出错误,显示
Error:pow error: pow(zhengqifashengqi_jianhua1.x_out[6]/(1-zhengqifashengqi_jianhua1.x_out[6]), 0.9) = pow(-0.00300755273089675, 0.9)
我想让它在循环中,随着时间推移,自身能够切换工况,这个该如何实现呢

所属专栏:Sysplorer基础平台
产品信息:Sysplorer系统建模仿真环境
系统建模

全部回答 1

发布于 2025-01-03 17:44:12

您好,x_out应该是在系统中参与其他运算了,导致最后出现负数开偶次方的错误出现,建议修改模型。

用户
和原帖交流更多问题细节吧,去
我要发帖 我要发帖
资料中心 资料中心
查看更多>
热门帖子 热门帖子
主要贡献者 主要贡献者
过去7天