Ryan_P2011 发表于 2012-4-17 21:02:37

求助matlab解超越方程组

以下是超越方程组,其中x1min和x2min是要求解的变量,Rou为已知量,其余的量如Proz4、a12、Matrix1等都是循环一次就要变一次的量,每个循环中Pro2从0~360变化,求出每个Pro值对应的x1min和x2min:
eq1=((cos(x2min)+1/2*sin(Proz4+x1min)^2*(1-cos(x2min)))*cos(x1min)+(-1/2*sin(Proz4+x1min)*cos(Proz4+x1min)*(1-cos(x2min))-1/2*2^(1/2)*sin(x2min))*sin(x1min))*Matrix1+(-(cos(x2min)+1/2*sin(Proz4+x1min)^2*(1-cos(x2min)))*sin(x1min)+(-1/2*sin(Proz4+x1min)*cos(Proz4+x1min)*(1-cos(x2min))-1/2*2^(1/2)*sin(x2min))*cos(x1min))*Matrix2+(1/2*sin(Proz4+x1min)*(1-cos(x2min))-1/2*2^(1/2)*cos(Proz4+x1min)*sin(x2min))*Matrix3-sin(Rou)*sin(Pro2)*cos(a12)-sin(Rou)*cos(Pro2)*cos(a22)+cos(Rou)*cos(a32);

eq2=((-1/2*sin(Proz4+x1min)*cos(Proz4+x1min)*(1-cos(x2min))+1/2*2^(1/2)*sin(x2min))*cos(x1min)+(cos(x2min)+1/2*cos(Proz4+x1min)^2*(1-cos(x2min)))*sin(x1min))*Matrix1+(-(-1/2*sin(Proz4+x1min)*cos(Proz4+x1min)*(1-cos(x2min))+1/2*2^(1/2)*sin(x2min))*sin(x1min)+(cos(x2min)+1/2*cos(Proz4+x1min)^2*(1-cos(x2min)))*cos(x1min))*Matrix2+(-1/2*cos(Proz4+x1min)*(1-cos(x2min))-1/2*2^(1/2)*sin(Proz4+x1min)*sin(x2min))*Matrix3-sin(Rou)*sin(Pro2)*cos(b12)-sin(Rou)*cos(Pro2)*cos(b22)+cos(Rou)*cos(b32);
前有用fsolve求解过,但是得出来的解反带回原方程组只有前几个点是正确的,不知道是否与初值的设置有关?如果是,要怎么解决?matlab还有其他解超越方程组的函数吗?
页: [1]
查看完整版本: 求助matlab解超越方程组