急求MATLAB 带变量一元多次方程求解方法

syms k a
L=3.3*10^(-6);
C=20*10^(-12);
[w]=solve('k=1/2*sqrt((50^2*(100^2+(w*L-1/(w*C))^2))/(100^2+(w*L-1/(w*C)^2)^2))*cos(a)')
求出结果
w =RootOf(625*C^4*L^2*X1683^6*cos(a)^2 - C^4*L^2*X1683^6*k^2 - 1250*C^3*L*X1683^4*cos(a)^2 + 6250000*C^4*X1683^4*cos(a)^2 - 10000*C^4*X1683^4*k^2 + 2*C^2*L*X1683^3*k^2 + 625*C^2*X1683^2*cos(a)^2 - k^2, X1683)
后来变幻一下式子
syms k a L C
[w]=solve('2*k/(50*cos(a))=sqrt(1/(100^2+(1/(w*C)-w*L)^2))','w')
求出来的结果有四个
w =

((- 10000*C^2*k^2 + 625*C^2*cos(a)^2 + 4*L*C*k^2)^(1/2) + 25*C*(cos(a) - 4*k)^(1/2)*(4*k + cos(a))^(1/2))/(2*C*L*k)
-((- 10000*C^2*k^2 + 625*C^2*cos(a)^2 + 4*L*C*k^2)^(1/2) + 25*C*(cos(a) - 4*k)^(1/2)*(4*k + cos(a))^(1/2))/(2*C*L*k)
((- 10000*C^2*k^2 + 625*C^2*cos(a)^2 + 4*L*C*k^2)^(1/2) - 25*C*(cos(a) - 4*k)^(1/2)*(4*k + cos(a))^(1/2))/(2*C*L*k)
-((- 10000*C^2*k^2 + 625*C^2*cos(a)^2 + 4*L*C*k^2)^(1/2) - 25*C*(cos(a) - 4*k)^(1/2)*(4*k + cos(a))^(1/2))/(2*C*L*k)
但是代数验证证明结果不不对
求高手指导

你是怎样验证结果不对的?应该没问题啊:

>> syms k a L C w
>> eq1=2*k/(50*cos(a))-sqrt(1/(100^2+(1/(w*C)-w*L)^2)) 
eq1 = 
1/25*k/cos(a)-(1/(10000+(1/w/C-w*L)^2))^(1/2) 
 
>> W=solve(eq1,w) 
W = 
  1/2/k/L/C*2^(1/2)*(C*(625*C*cos(a)^2-10000*k^2*C+2*k^2*L+25*(625*C^2*cos(a)^4-20000*C^2*cos(a)^2*k^2+4*C*cos(a)^2*k^2*L+160000*k^4*C^2-64*k^4*C*L)^(1/2)))^(1/2)
 -1/2/k/L/C*2^(1/2)*(C*(625*C*cos(a)^2-10000*k^2*C+2*k^2*L+25*(625*C^2*cos(a)^4-20000*C^2*cos(a)^2*k^2+4*C*cos(a)^2*k^2*L+160000*k^4*C^2-64*k^4*C*L)^(1/2)))^(1/2)
  1/2/k/L/C*2^(1/2)*(C*(625*C*cos(a)^2-10000*k^2*C+2*k^2*L-25*(625*C^2*cos(a)^4-20000*C^2*cos(a)^2*k^2+4*C*cos(a)^2*k^2*L+160000*k^4*C^2-64*k^4*C*L)^(1/2)))^(1/2)
 -1/2/k/L/C*2^(1/2)*(C*(625*C*cos(a)^2-10000*k^2*C+2*k^2*L-25*(625*C^2*cos(a)^4-20000*C^2*cos(a)^2*k^2+4*C*cos(a)^2*k^2*L+160000*k^4*C^2-64*k^4*C*L)^(1/2)))^(1/2) 
 
>> r=simple(subs(eq1,w,W)) 
r = 
 0
 0
 0
 0

我用的方法是把求出的来的解再代回方程,得到结果应该为0,事实也的确如此。就这个方程而言,化简得到的是关于w的四次代数方程,理论上是可以求出解析解来的。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答