先谢谢各位了! 麻烦各位高手再帮我看看.
问题是这样的:
一般是几个方程就可以求出几个未知数,在这里我定义了八个变量如下: b1, b2, c, af, L, rv, w, cs0
而有如下的七个方程: 附件
那么我希望用一个变量去表示其它的七个变量,也就是说我将那个变量当成一个常数来看待.
根据需要,我将cs0看成常数.也就是说用cs0来表示其它的几个变量.
那么在MATLAB中求方程组的解析解的程序如下:
[b1,b2,c,af,l,rv,w]=solve('c-l/(rv^2+w^2*l^2)=0','c=(af/(1.4027*100000))*(1+(1.4027-1)*b2^2*(1-b1)/(w^2*b1^2*(1-b1)^2+b2^2))','b1=1.9*1.038/(1.9*1.038+7800*cs0)','b2=0.13*3.1415926*2*sqrt(2*0.02475/(1.9*1.038*w))/(af*1.9*1.038+af*7800*cs0)','l=1.9*(1+1/293)/af','rv=0.02475*175.44*0.0000001/af','af=4*3.1415926*2*0.02475/(1.25*1.038*w*1000)')
而求出的结果却是(不管怎么变动中括号中变量的顺序或者甚至是不管怎样选取变量),结果总是用af表示中括号中的七个变量的:[b1,b2,c,af,L,rv,w]
并且很显然是个错的,因为结果中 .
我的疑惑是:在MATLAB中,是不是用个默认的顺序?问题到底出现在哪里了?
请求各位高人能指点迷津,不甚感激!!
[ 本帖最后由 ChaChing 于 2009-2-12 10:39 编辑 ] |