hemaybe 发表于 2005-11-11 17:36

求助:关于求解含待定量的非线性方程组

<P>小女子现遇一难题,望得到各位达人相助:</P>
<P>一个T型钢,在定义其截面时要输入其面板、腹板的长度和厚度,依次为b,t+4,h,t,即独立变量共三个。但已知量是截面惯性矩I,最大剖面模数W,和截面总面积A。<BR>现在的难题是用已知量来表示截面输入参数,即把t,b,h写为I,A,W的函数表达式。</P>
<P>老师让我用手推,我笨,推不出,于是我想到用MATLAB来解方程组,增加了两个中间变量,一个是面板厚度b=t+4,还一个是惯性轴距面板边缘的高度z<BR>于是得到下面五个方程<BR>d=t+4<BR>A=(h-d)*t+d*b  <BR>z=(b*d*d/2+(h-d)*t*((h-d)/2+d))/A<BR>I=b*d^3/12+b*d*(z-d/2)^2+t*(h-d)^3/12+(h/2+d/2-z)^2*t*(h-d)<BR>W=I/z </P>
<P>于是我编程如下:</P>
<P>=solve('t+4-d,(h-d)*t+d*b-A,b*d*d/2+(h-d)*t*((h-d)/2+d)-A*z,b*d^3/12+b*d*(z-d/2)^2+t*(h-d)^3/12+(h/2+d/2-z)^2*t*(h-d)-I,I/z-W','b,h,d,t,z')</P>
<P>电脑不给算,还一直报错,点了确定就突然退出了程序。</P>
<P>于是我对A,I,W赋了特定的数值2400,6201000,6201000/46.5,替换掉了这三个待定量,就能算出结果了。h=162,b=100,t=8,d=12,z=46.5这是为什么?</P>

simon21 发表于 2005-11-11 17:48

<P>你这个方程都是显示的啊,直接带入就能全部求出来了</P>
<P>你用matlab算的话变量选的不对</P>

hemaybe 发表于 2005-11-11 20:25

<P>谢谢COOL BOY你的关注</P>
<P>那变量应如何选呢?未知量是h,t,b啊,我只是增加了两个中间变量z,d</P>
<P>我需得到的是关于I,W,A的表达式,而不是具体数值</P>

adminftp 发表于 2005-11-12 12:15

变量应该是I,W,A,z,d

hemaybe 发表于 2005-11-12 17:05

<P>呵,你误会我意思了,I,W,A是作为待定量,已知的,可任意赋值的</P>

hemaybe 发表于 2005-11-12 17:11

<P>现在我用手推算,简化为一个变量的五次方程求解了。但遇到新的难题:</P>
<P>MATLAB可以解含待定量的四次方程,即a*x^4+b*x^3+c*x^2+d*x+e=0这个方程,但却不能解五次的,郁闷</P>

MVH 发表于 2005-11-12 17:20

<P>用matlab,a*x^4+b*x^3+c*x^2+d*x+e=0这个方程式可以求解的</P>
<P>只是解很复杂</P>
<P>你可以试一下“x=solve('a*x^4+b*x^3+c*x^2+d*x+e=0')”</P>

hemaybe 发表于 2005-11-12 20:33

四次方可解出,五次方解不出呀solve('a*x^5+b*x^4+c*x^3+d*x^2+e*x+f')

MVH 发表于 2005-11-12 21:03

<P>5次方就算解出来估计也没什么意义了</P>
<P>还是用数值解吧</P>

hemaybe 发表于 2005-11-12 22:31

<P>老师总算考虑用神经网络了,虽然我不会用,虽然得再花功夫学。</P>
<P>谢谢你们了这两天!</P>
页: [1]
查看完整版本: 求助:关于求解含待定量的非线性方程组