求助:请用MATLAB解下面方程组。

[r1,r2,a1,a2,B]=solve('670=(r1+1)*a1+(r2+1)*a2+2*160*cos(B)','sin(B)=(r2-r1)/160','1=... [r1,r2,a1,a2,B]=solve('670=(r1+1)*a1+(r2+1)*a2+2*160*cos(B)','sin(B)=(r2-r1)/160','1=r2/r1','a1+a2=2*pi','a1=pi-2*(r2-r1)/160') 直接解出来结果是: r1 = 0 pi r2 = pi pi a1 = pi pi a2 = -(pi-175)/pi -(pi-495)/pi B = -(pi-175)/pi -(pi-495)/pi 可是用手算的结果是a1=a2=pi,r1=r2=(175-pi)/pi,B=0 不知道啥原因,请高手赐教! 展开
 我来答
百度网友5b3fdcbe8fa
2019-05-14 · TA获得超过3819个赞
知道大有可为答主
回答量:3097
采纳率:33%
帮助的人:412万
展开全部
你的计算结果是没有错的。
solve()函数的解是按先字母顺序后数字顺序排列的,字母是先大写后小写。不能手动指定解的顺历衫序。
改成如下形式即可。
[B,a1,a2,r1,r2]=solve('670=(r1+1)*a1+(r2+1)*a2+2*160*cos(B)','sin(B)=(r2-r1)/160','1=r2/r1','a1+a2=2*pi','a1=pi-2*(r2-r1)/160')
[B,a1,a2,r1,r2]也可以写成[B
a1
a2
r1
r2],效果是一肢袜腔样的。
=========================================
另外也想想你请教个问题:
我的6.5版本的MATLAB,运行你这代码提示“未定义变量pi”,我晕!!!
我好坦的2010a版本倒不会提示“未定义变量pi”,但是计算出的结果全是数值解。
我知道2008a版本开始,其符号计算内核由MAPLE换成了Mupad(Mupad远次于MAPLE,很多积分都无法计算出结果。但是这是Mathworks和MAPLE商业竞争的后果,悲剧的用户。),不知道是不是这个原因,希望你告知你的MATLAB版本。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式