24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1044  |  回复: 8
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

langdd007

新虫 (初入文坛)

[求助] 请教这个2次方程组如何求解

X1=L1*cos( Ө )
Y1=L1*sin( Ө )
(x2-x1)^2+(y2-y1)^2=L2^2; ①
(x2-xc)^2+(y2-yc)^2=L3^2; ②
(x3-x1)^2+(y3-y1)^2=L4^2; ③
(x3-x2)^2+(y3-y2)^2=L5^2; ④
(x4-x3)^2+(y4-y3)^2=L6^2; ⑤
这上面的方程组有5个未知数外加一个参数Ө,分别是X2,Y2,X3,Y3,Y4。别的所有未已知值。
给出的①②③④⑤方程,我想解出来随着Ө的变化5个未知数的值(参考图片),如果能够用matlab画出来随着Ө变化,各个值得变化图更好了


我在matlab上面用solve函数直接写上述5个方程进去得出来的解不能满足全部方程。
然后我就用两个方程分开解,然后参考图片去掉不符合图片的解。最终得到唯一解(Ө假设为30度的情况下)

请教这个2次方程组如何求解
的.png
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

langdd007

新虫 (初入文坛)

我试着把θ换成t参数,然后求出来带有参数X2,Y2的解
然后再把X2,Y2的解直接带入3,4方程里面为什么解出来的一直有y3这个未知数?我想要的是只有参数t的解

syms t x3 y3;
>> x2= (320*cos(t)^2 + 320*sin(t)^2 - (sin(t)*(55*sin(t) - 4*cos(t)*(-(25*(64*cos(t)^2 + 64*sin(t)^2 - 1)*(64*cos(t)^2 + 64*sin(t)^2 - 121))/16)^(1/2) + 320*sin(t)^3 + 320*cos(t)^2*sin(t)))/(cos(t)^2 + sin(t)^2) + 55)/(8*cos(t));
>> y2=(55*sin(t) + 4*cos(t)*(-(25*(64*cos(t)^2 + 64*sin(t)^2 - 1)*(64*cos(t)^2 + 64*sin(t)^2 - 121))/16)^(1/2) + 320*sin(t)^3 + 320*cos(t)^2*sin(t))/(8*(cos(t)^2 + sin(t)^2));
>> [y3]=solve('((5675-y3*(80-2*y2))/(80*3^0.5-2*x2)-40*3^0.5)^2+(y3-40)^2=45^2');
7楼2016-06-14 14:55:05
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 9 个回答

bjc1987

新虫 (著名写手)

首先数学上,这不可能解出来。必须方程个数与未知数个数相等,才能在matlab上得到唯一解。否则就只能手算带参数的表达式解了

发自小木虫Android客户端
3楼2016-06-13 22:33:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

langdd007

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by bjc1987 at 2016-06-13 22:33:22
首先数学上,这不可能解出来。必须方程个数与未知数个数相等,才能在matlab上得到唯一解。否则就只能手算带参数的表达式解了

方程式对的的
有5个方程
5个未知数x2,y2,x3,y3,y4这5个
另外X1,X2,XC,YC,L1,L2....都是已知数,其实方程组分开,两个两个求很简单,就是二元二次方程组,用公式都可以做出来,但是我想用matlab直接5个一起求,然后得到所有可能的解,再套进去参数角θ,然后做出每个点的左边与θ的关系图。(如果直接用plot命令他会说不能有多项解重叠画图)
4楼2016-06-14 08:39:13
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bjc1987

新虫 (著名写手)

别忘了你的theta也是一个未知参数

发自小木虫Android客户端
5楼2016-06-14 09:46:56
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见