m0_57554981 2022-04-04 20:13 采纳率: 71.4%
浏览 626
已结题

matlab结果显示为表达式,为何不能计算结果

%想应用matlab求出x2的值,再通过x2与x1,x3,x4,x5的关系式,
求出x1,x3,x4,x5的值,但是matlab输出结果只有x2的值,
x1,x3,x4,x5都是表达式呈现的,没有数值结果。
大致程序如下,请求大家指点


syms x1 x2 x3 x4 x5
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))));
solution=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条回答 默认 最新

  • joel_1993 2022-04-04 21:12
    关注

    你好,把solution改成x2就行拉

    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]
    

    结果:

    p1 =
     
    [                              30/247,   0,                               315,                                -27,                               -Inf]
    [ 0.083573487031700288184438040345821, 1.0, 40.863636363636363636363636363636, -27.045454545454545454545454545455, -4994.4444444444444444444444444444]
    

    可见有5列呢

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 4月5日
  • 已采纳回答 4月5日
  • 修改了问题 4月4日
  • 创建了问题 4月4日

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘