非线性方程解析解-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0 -x0*cos(b)-y0*sin(a)*co

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/21 21:10:52
非线性方程解析解-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*

非线性方程解析解-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0 -x0*cos(b)-y0*sin(a)*co
非线性方程解析解
-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0
-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0
-x0*cos(b)-y0*sin(a)*cos(b)-z0*cos(a)*cos(b)=sqrt(x0^2+y0^2+z0^2)
其中x0,y0,z0已知,但不是某个具体的常数.想解出这个方程的“解析解”,a,b,c用x0,y0,z0的反三角函表示.用matlab或mathmatics具体如何编程,希望给出可以运行的源代码.

非线性方程解析解-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0 -x0*cos(b)-y0*sin(a)*co
-x0*Cos[b]*Cos[c] - y0*(-Sin[a]*Cos[b]*Cos[c] - Cos[a]*Sin[c]) - z0*(-Cos[a]*Cos[b]*Cos[c] + Sin[a]*Sin[c]) == 0,(1)
-x0*Cos[b]*Sin[c] - y0*(-Sin[a]*Cos[b]*Sin[c] + Cos[a]*Cos[c]) - z0*(-Cos[a]*Cos[b]*Sin[c] - Sin[a]*Cos[c]) == 0,(2)
-x0*Cos[b] - y0*Sin[a]*Cos[b] - z0*Cos[a]*Cos[b] == Sqrt[x0^2 + y0^2 + z0^2] (3)
用mathematica直接解是不行的.下面是不借助软件的解答.可以借助软件做一些化简变形工作
分三种情况
记r==Sqrt[x0^2 + y0^2 + z0^2]
第一种情况:cos[c]==0时,sin[c]==1,原方程等价于下面的方程组:
y0* Cos[a] - z0* Sin[a]== 0,
-x0*Cos[b] + y0*Sin[a]*Cos[b] + z0*Cos[a]*Cos[b] == 0,
-x0*Cos[b] - y0*Sin[a]*Cos[b] - z0*Cos[a]*Cos[b] == Sqrt[x0^2 + y0^2 + z0^2]
由第一个方程可得 Tan[a]==y0/z0(假设z0不等于0)
第二个方程加到第三个方程上可得
- 2*x0*Cos[b] == r,容易得到Cos[b] == -r/(2*x0).(假设x0不等于0)
第二种情况:sin[c]==0时,cos[c]==1,原方程等价于下面的方程组:
- x0*Cos[b] + y0*Sin[a]*Cos[b] + z0*Cos[a]*Cos[b] == 0,
- y0*Cos[a] + z0*Sin[a] == 0,
- x0*Cos[b] - y0*Sin[a]*Cos[b] - z0*Cos[a]*Cos[b] == r.
第一个方程加到第三个方程上可得
- 2*x0*Cos[b] == r,容易得到Cos[b] == -r/(2*x0).(假设x0不等于0)
由第二个方程可得 Tan[a]==y0/z0(假设z0不等于0)
第三种情况:sin[c]和cos[c]都不等于0时
我们把原方程组的三个式子分别记为(1),(2),(3)
考虑(1)-(3)*cos[c],(2)-(3)*sin[c],再加上(3),则原方程组等价于
-2*x0*Cos[b]*Cos[c] + y0*Cos[a]*Sin[c] - z0*Sin[a]*Sin[c] == r*Cos[c],(4)
-2*x0*Cos[b]*Sin[c] - y0*Cos[a]*Cos[c] + z0*Sin[a]*Cos[c] == r*Sin[c],(5)
-x0*Cos[b] - y0*Sin[a]*Cos[b] - z0*Cos[a]*Cos[b] == r.
前两个方程分别记为(4),(5).则由(4)^2+(5)^2,(4)*Cos[c]+(5)*Sin[c]可得
(2*x0*Cos[b])^2+(y0*Cos[a]- z0*Sin[a])^2==r^2,(6)
-2*x0*Cos[b]==r (7)
上两式分别记为(6),(7).
(7)代入(6)可得(8)式即y0*Cos[a]- z0*Sin[a]==0,(8)
进而Tan[a]==y0/z0(假设z0不等于0).
由(7)可以直接得到Cos[b] == -r/(2*x0)
把(7)(8)代入(4)(5)(3)可得原方程组进一步等价于r*Cos[c]==r*Cos[c],r*Sin[c]==r*Sin[c],恒成立,即c可取任意值.
把Cos[b] == -r/(2*x0)代入(3)得 y0*Sin[a]+ z0*Sin[a]==x0,记为(9)
(9)^2+(8)^2可得y0^2+z0^2==x0^2
综上,原方程组的解为:
z0==0,y0==0,x0==0时,a,b,c任意
z0==0,y0==0,x0≠0时,a,c任意,Cos[b] == -Sqrt[x0^2 + y0^2 + z0^2]/(2*x0)
z0==0,y0≠0时,无解
z0≠0,y0^2+z0^2==x0^2时,Tan[a]==y0/z0,Cos[b] == -Sqrt[x0^2 + y0^2 + z0^2]/(2*x0),c任意,此时Cos[b]可进一步简化为±Sqrt[2]/2,Cos[b]符号与x0相反
z0≠0,y0^2+z0^2≠x0^2时,无解

a,b,c用x0,y0,z0的反三角函表示???
什么意思

matlab程序很简单,就是这样的
[a,b,c]=solve('-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0','-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-...

全部展开

matlab程序很简单,就是这样的
[a,b,c]=solve('-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0','-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0','-x0*cos(b)-y0*sin(a)*cos(b)-z0*cos(a)*cos(b)=sqrt(x0^2+y0^2+z0^2)','a','b','c');
但是很遗憾的告诉你,matlab没有解出解析解。

收起

这个应该没有解析解吧。
x0,y0,z0得给出具体数值才能算。

什么意思?~~~

非线性方程解析解-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0-x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0 -x0*cos(b)-y0*sin(a)*co 求非线性方程组的“解析解”-x0*cos(b)*cos(c)-y0*(-sin(a)*cos(b)*cos(c)-cos(a)*sin(c))-z0*(-cos(a)*cos(b)*cos(c)+sin(a)*sin(c))=0 -x0*cos(b)*sin(c)-y0*(-sin(a)*cos(b)*sin(c)+cos(a)*cos(c))-z0*(-cos(a)*cos(b)*sin(c)-sin(a)*cos(c))=0 -x0*cos matlab jacobi迭代法求非线性方程的解 运行错误 怎么修改A=[10,-1,-1;-1,10,-2;-2,-1,5];b=[6.2,8.5,3.2];x0=[1,1,1];Tol=0.001;max=100;function [x,k]=jacobi_f(A,b,x0,Tol,max)[n,m]=size(A);xold=x0;C=-A;for i=1:nC(i,i)=0;C(i,:)=C(i,:)/A(i,i matlab 求解非线性三角函数方程组f1=cos(b)*cos(c);f2=cos(a)*cos(c)-sin(a)*sin(b)*sin(c);f3=cos(a)*cos(c);这三个方程的值都可以知道,假设为0.9940, 0.9939 ,0.9999..但是不知道哪个值是哪个方程,如何求解a,b,c 方程2^x+x-2=0的解为x0,则() A.X0∈(-无穷,0) B .X0∈(0,1) C.X0∈(1,2) D.X0∈(2,3) 因为数值方法解非线性方程解非线性方程存在一定的误差,所以解析方法更有效.这句话是对是错? 高分求newton迭代法求解非线性方程的一个根的c/c++程序非线性方程为xe(x)括号的x为e的指数-1=0.要求输入初值x0.和精度tol及最大循环次数N.输出利用newton迭代法解出的近似根.急用.运行通过的话 matlab解非线性方程问题 设x0是方程lnx+x=4的解,则x0属于区间( A.(0,1)B.(1,2)C.(2,3)D.(3,4) 若x0是方程lgx+x=2的解,则x0属于什么区间A.(0,1)B.(1,1.25)C.(1.25,1.5)D.(1.75,2) matlab如何解非线性超标定方程我有一个三个未知数,九个方程的非线性方程组,cos(x3)*sin(x2)*sin(x1)-sin(x3)*cos(x1)=-0.9944 ;sin(x3)*sin(x2)*sin(x1)+cos(x3)*cos(x1)=-0.0870;cos(x2)*sin(x1)=-0.0606;cos(x3)*sin(x2)*cos(x1)+sin( matlab 解一元非线性方程 参数传递疑问在对一组信号做处理时,需要把之前解得的方差、均值等结果,赋值到一个非线性方程中求解,方程如下:log(x/a)-(b/a)^2/(c/d)^2*log(x/d)=0其中,a、b、c、d为之前 编程用二分法解非线性方程补充下 用c语言 如何用matlab解非线性方程? matlab如何解非线性超标定方程 如何用matlab求解下面的一元非线性方程?方程如下:(1899392341*sin(a))/600745 - (55375870*cos(a))/120149 - 47944874479/240298其中a在0到pi/2之间.我用solve,结果显示无解析解.用fsolve,初始值设定为0,也不行结果 y'+2xy=1/x是什么方程A.一阶线性非齐次方程 B.可分离变量方程 C.非线性方程 D.齐次方程 点关于直线对称点求A(x0,y0)关于直线Ax+By+C=0的对称点B令B(x1,y1)则A(x0+x1)/2+B(y0+y1)/2+C=0 A(y1-y0)=B(x1-x0) 解方程即可A(y1-y0)=B(x1-x0)这一步怎么来的?