m0_57554981 2022-04-05 09:55 采纳率: 71.4%
浏览 365
已结题

matlab如何加入变量的上下界呢

以下程序有五个变量,那么如何把他们的取值范围加入到程序中呢,请指教

%x1取值范围[0 10],x2为[0 3000],x3为[0 1200],x4为[0 122],x5为[0 400],

syms x2
F=0.5;
B=30;
f1=(x2/(2+x2))*(1-x2)*(1-((-5+F+120*(x2/(x2+12)))*((F*(B-x2))/(F/0.2+20))/F/200))*(1-(2+F/0.02+50*(0.6/(F*x2))));
x2=vpasolve(f1,x2,[0,3000]);
x1=(F*(B-x2))./(123+F+50*x2);
x3=(10+F+5*x2).*((F*(B-x2))./(F+5*x2)); 
x4=(-5+F*4+5*(x2./(5*x2+5))).*((4+F/0.1+20*(x2./(x2+10)))); 
x5=(-5+F+(x2./(x2+2))).*(10/F+12./(F*x2)).*((F*(B-x2))./(F+(x2./(x2+B))));
p1=[x1,x2,x3,x4,x5]


  • 写回答

2条回答 默认 最新

  • Mr.Winter` 优质创作者: 人工智能技术领域 2022-04-05 10:15
    关注

    你说的取值范围其实就是可行域的问题,也就是你最后的解p1符不符合要求。针对你这个程序,只要用if..else来判断你的解,超出可行域的判定为不可行就行。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月13日
  • 已采纳回答 4月5日
  • 创建了问题 4月5日