MATLAB 用solve出错,麻烦帮忙看看哪里错了?

symsp1p2pm;eq1=(((7*p1)/30-7)*(p1-7/2))/2-(p2/30-1)*(p2-4)-((p1-7/2)*(p2-(7*p1)/2+pm+... syms p1 p2 pm;
eq1=(((7*p1)/30 - 7)*(p1 - 7/2))/2 - (p2/30 - 1)*(p2 - 4) - ((p1 - 7/2)*(p2 - (7*p1)/2 + pm + 300))/30 - (p1/30 - 1)*(p2 - (7*p1)/2 + pm + 300);
eq2=(((7*p2)/30 - 7)*(p2 - 4))/2 - (p1/30 - 1)*(p1 - 7/2) - ((p2 - 4)*(p1 - (7*p2)/2 + pm + 300))/30 - (p2/30 - 1)*(p1 - (7*p2)/2 + pm + 300);
[p1,p2]=solve(eq1,eq2,'p1','p2');
展开
 我来答
lhmhz
高粉答主

2020-11-29 · 专注matlab等在各领域中的应用。
lhmhz
采纳数:7264 获赞数:17013

向TA提问 私信TA
展开全部

题主用solve()函数求解方程组的方法并没有错,但得到是一长串字符答案,这主要是缺少一个步骤,即p1=vpa(p1)。

为什么软件给出的答案是一长串不明确的答案,这由于题主给出的方程组是比较复杂,软件则以复数z的形式来表示吧了。

所以,我们在[p1,p2]=solve(eq1,eq2,'p1','p2');这个命令后,增加下列命令即可显而易见的答案了。

p1=vpa(p1)

p2=vpa(p2)

运行结果



已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式