1、第四章习题解答1、求下列多项式的所有根,并进行验算。(3) 26723585xx(4) 4)(解: p=zeros(1,24); p(1)=5;p(17)=-6;p(18)=8;p(22)=-5; root=roots(p)root =0 0 0.9768 0.9388 + 0.2682i0.9388 - 0.2682i0.8554 + 0.5363i0.8554 - 0.5363i0.6615 + 0.8064i0.6615 - 0.8064i0.3516 + 0.9878i0.3516 - 0.9878i-0.0345 + 1.0150i-0.0345 - 1.0150i-0.4609 +
2、 0.9458i-0.4609 - 0.9458i-0.1150 + 0.8340i-0.1150 - 0.8340i-0.7821 + 0.7376i-0.7821 - 0.7376i-0.9859 + 0.4106i-0.9859 - 0.4106i-1.0416 -0.7927 polyval(p,root)ans =1.0e-012 *0 0 -0.0712 0.0459 - 0.0081i0.0459 + 0.0081i-0.0419 + 0.0444i-0.0419 - 0.0444i0.0509 + 0.0929i0.0509 - 0.0929i-0.2059 + 0.0009i
3、-0.2059 - 0.0009i-0.0340 + 0.0145i-0.0340 - 0.0145i0.1342 + 0.0910i0.1342 - 0.0910i0.0025 + 0.0027i0.0025 - 0.0027i-0.0077 + 0.4643i-0.0077 - 0.4643i-0.3548 - 0.1466i-0.3548 + 0.1466i-0.0251 -0.0073(4) p1=2 3; p=conv(conv(p1,p1),p1)-0 0 0 4; root=roots(p)root =-1.8969 + 0.6874i-1.8969 - 0.6874i-0.70
4、63 polyval(p,root)ans =1.0e-014 *-0.7105 - 0.6217i-0.7105 + 0.6217i0 6、求解下列方程组在区域 内的解1,0.sin2.0co7.,si解:以初值 进行求解)5,(),(0 fun=inline(0.7*sin(x(1)+0.2*cos(x(2)-x(1),0.7*cos(x(1)-0.2*sin(x(2)-x(2); x,f,h=fsolve(fun,0.5 0.5)Optimization terminated: first-order optimality is less than options.TolFun.x =0
5、.5265 0.5079f =1.0e-007 *-0.1680 -0.2712h =1因而,该方程组的近似根为 。5079.,26.08、作出下列函数图形,观察所有的局部极大、局部极小和全局最大、全局最小值点的粗略位置;并用 MATLAB 函数 fminbnd 和 fminsearch 求各极值点的确切位置。(3) .3,|)(23xxf解:首先,画出函数的图形。 f=abs(x.3-x.2-x-2);fplot(f,0,3)0 0.5 1 1.5 2 2.5 302468101214从图形中,我们可以大致地看到函数 f 有两个极小指点大约为 ,和两个极大值点,0x。其中 0 也是最小值点,
6、3 是最大值点。下一步需要给出这些极值点的精确位置。,1x(I) 以 fminbnd 命令求得的结果如下: x,y=fminbnd(f,0,3)x =2.0000y =9.8239e-006(这说明对于非线性函数求解时,必须在精确解附近才能得到正确答案,否则会出现解的遗漏、错误判定的现象!)极小值: x,y=fminbnd(f,0,0.5)x =0y =2 x,y=fminbnd(f,1.5,2.5)x =2.0000y =3.5877e-007极大值: X,Y=fminbnd(-,f,0.8,1.2); X,-Yans =1.0 3.0000 X,Y=fminbnd(-,f,2.5,3);
7、X,-Yans =3 13因而,函数 f 的两个极小指点为 ,对应极小值为0.2,x;两个极大值点为 ,对应极大值点为758.3)0.2(,)( ef 3,0.1x。其中 2.0000 和 3 分别为函数的最小值点和最大值点。1,.1(II) 以 fminsearch 命令求得的结果如下: X1,Y1=fminsearch(- f,1);X2,Y2=fminsearch(- f,3);Exiting: Maximum number of function evaluations has been exceeded- increase MaxFunEvals option.Current fun
8、ction value: -6874996420129107800000000000000000000000000000000000000000000000000000000000000000000000.000000 X1,-Y1,X2,-Y2ans =1 3ans =1.0e+087 *0.0000 6.8750(在端点位置的求解出现的误差,如需要精确解,需要对函数做一适当延拓,在此不深入考虑。)11、 (化学反应平衡)等物质的两的一氧化碳(CO)和氧气 ( )的混合物在 300K 和 Pa 压2O510力下达到平衡,理论反应方程式为 ,实际反应方程式为25.0CO,剩余 CO 比值 x
9、满足化学平衡方程式22 )1()(5.0xxCO,这里 ,求 x。,1)(pKp barpKp5,6.3解:首先,画出函数的图形 f=(1-x)*sqrt(10.52+x)/x/sqrt(1+x)/sqrt(5)-3.06; fplot(f,0 1)0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1-1000100200300400500600700800 fsolve(f,1)Warning: Divide by zero. In inlineeval at 13In inline.feval at 34In optimprivatetrustnleqn at 210In fsolve at 295Optimization terminated: first-order optimality is less than options.TolFun.ans =0.2968因而, 。2968.0x