%想应用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]
![](https://profile-avatar.csdnimg.cn/2dac8ecab87544cebaca1a5b86e65cc4_m0_57554981.jpg!4)
matlab结果显示为表达式,为何不能计算结果
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
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列呢
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 网络科学导论,网络控制
- ¥15 metadata提取的PDF元数据,如何转换为一个Excel
- ¥15 关于arduino编程toCharArray()函数的使用
- ¥100 vc++混合CEF采用CLR方式编译报错
- ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
- ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
- ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
- ¥50 如何openEuler 22.03上安装配置drbd
- ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
- ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)