欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    常州大学数值分析课后习题答案第二章第三章第四章节资料文档格式.docx

    • 资源ID:4487187       资源大小:29.78KB        全文页数:16页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    常州大学数值分析课后习题答案第二章第三章第四章节资料文档格式.docx

    1、x A = 2 -1 3 1 4 2 5 4 1 2 0 7 x = 9 -1 -6 11x1-3x2-2x3=3,(2) -23x1+11x2+1x3=0,x1+2x2+2x3=-1;(2) 解:A=11 -3 -2 3;-23 11 1 0;1 2 2 -1% 消元过程n-1nepsn+1)=returnend% 回代过程x(n)=A(n,n+1)/A(n,n);else1x(i)=(A(i,n+1)-A(i,i+1:xA = 11 -3 -2 3-23 11 1 01 2 2 -1x = 0.2124 0.5492-1.15544、用Cholesky分解法解方程组 3 2 3 x1 5

    2、2 2 0 x2 3 3 0 12 x3 7 解: .A=3 2 3;2 2 0;3 0 12;b=5 3 7;lambda=eig(A);if lambdaeps&isequal(A,A) n,n=size(A);R=chol(A);%解Ry=b y(1)=b(1)/R(1,1);if nfor i=2:y(i)=(b(i)-R(1:i-1,i)*y(1:i-1)/R(i,i);%解Rx=yx(n)=y(n)/R(n,n);x(i)=(y(i)-R(i,i+1:n)x=x;x=;disp(该方法只适用于对称正定的系数矩阵!);R= 1.7321 1.1547 1.7321 0 0.8165

    3、-2.4495 0 0 1.7321y= 2.8868 -0.4082 0.5774x= 1.0000 0.5000 0.33335. 用列主元Doolittle分解法解方程组A=3 4 5; -1 3 4; -2 3 -5; 3 4 5 X1 2b=2,-2 6 -1 3 4 X2 -2L,U,pv=luex(A); -2 3 -5 X3 6y = Lb(pv);x = Uy结果如下:x = 1 1 -114.已知,计算.A=100 99;99 98;cond(A,inf)ans =3.9601e+04cond(A,2)ans =3.9206e+0427.编写LU分解法,改进平方根法,追赶法

    4、的Matlab程序,并进行相关数值试验。LU分解法程序Function L,U=lup(A)%lup: LU factorization%Synopsis:L,U=lup(A)%Input: A=coefficient matrix%Output: L:lower triangular matrix% U upper triangular matrixFormat short m,n=size(A);If m=n,error(A matrix needs to be square);EndPv=(1:n);%LU factorization For i=1:Pivot=A(i,i);For k

    5、=i+1;A(k,i)=A(k,i)/pivot;A(k,i+1;n)=A(k,i+1;n)-A(k,i)*A(i,i+1;n);L=eye(size(A)+tril(A,-1);%extract L and UU=triu(A)改进平方根法程序Functionx=ave(A,b,n)L=zeros(n,n);D=diag(n,0);S=L*D;L(i;i)=1;For i=1;For j=1;If (eig(A)=0)|(A(i,j)=A(j,i)disp(wrong);Break;D(1,1)=A(1,1);For i=2;i-1S(i,j)=A(i,j)-sum(S(i,1;i-1)*L

    6、(j,1;j-1);L(i,1;i-1)=S(i,1;i-1)/D(1;i-1, 1;i-1);D(i,i)=A(i,i)-sum(L(i,1;i-1)*L(i,1;i-1);D(i,i)=A(i,i)-sum(S(i,1;i-1)*D(1;i-1)*y(1;i-1)/D(i,i);Y=zeros(n,1);X=zero(n,1);Y(i)=(b(i)-sum(L(i,1;For i=n;-1;X(i)=y(i)-sum(L(i+1;n,i)*x(i+1;n);追赶法程序Functionx,L,U=Thomas(a,b,c,f)N=length(b);%对A进行分解U(1)=b(1);If(u

    7、(i-1)=0)L(i-1)=a(i-1)/u(i-1);U(i)=b(i)-l(i-1)*c(i-1);ElseL=eye(n)+diag(1,-1);U=diag(u)+diag(c,1);X=zeros(n,1);Y=x;%?求解ly=b?Y(1)=f(1);Y(i)=f(i)-l(i-1)*y(i-1);求解Ux=y?If(u(n)=0)X(n)=y(n)/u(n);For i=n-1;X(i)=(y(i)-c(i)*x(i+1)/u(i);第三章1、设节点x0=0,x1=/8,x2=/4,x3=3/8,x4=/2,适当选取上述节点用Lagrange插值法分别构造cosx在区间0, /

    8、2上的一次,二次和四次插值多项式P1(x)P2(x)和P4(x),并分别计算P1(x),P2(x),P4(x)其中X取/3。A=fliplr(A); Returnx = /8,3/8; y = cos(x); x0 = /3;A,Y = lagrange(x,y,x0); P1 = vpa(poly2sym(A),3) YP1 =1.19x - 0.689 Y =0.4729 x0 = /3; P2=vpa(poly2sym(A),3) YP2 = x2 - 0.109x - 0.336 Y =0.5174x = 0,/8,/4,3/8,/2; y= cos(x);A,Y=lagrange(x

    9、,y,x0); P4=vpa(poly2sym(A),3) YP4 =x4 + 0.00282x3 - 0.514x2 + 0.0232x + 0.0287 Y =0.50017.根据列表函数0.01.02.03.04.0f(x)0.501.252.753.50选取适当的节点,用逐次线性插值法给出三次多项式在2.8处的值。答:Matlab 程序 functionT,y0=aitken(x,y,x0,T0) if nargin=3 T0=; endn0=size(T0,1);m=max(size(x); n=n0+m;T=zeros(n,n+1);T(1:n0,1:n0+1)=T0; T(n0+

    10、1:n,1)=x;T(n0+1:n,2)=y; if n0=0 i0=2; elsei0=n0+1;for i=i0:for j=3:i+1T(i,j)=fun(T(j-2,1),T(i,1),T(j-2,j-1),T(i,j-1),x0); end y0=T(n,n+1); returnfunction y=fun(x1,x2,y1,y2,x) y=y1+(y2-y1)*(x-x1)/(x2-x1);%选取0、1、3、4四个节点,求三次插值多项式 x=0,1,3,4;y=0.5,1.25,3.5,2.75; x0=2.8;T,y0=aitken(x,y,x0)y0 =3.4190000000

    11、000008.根据上题中的列表函数,写出差商表,并写出Newton插值多项式N2(x)和N4(x)。差商表:0.50.751.1250.3750.125-0.250.5625-0.0625-0.218750.03125由Nn(x)=a0+a1(x-x0)+a2(x-x0)(x-x1)+an(x-x0)(x-x1)(x-xn-1)得N2(x) =0.5+0.75(x-0.00) + 0.375(x-0.0)(x-1.0)=0.375x2+0.375x+0.5N4(x) =0.5+0.75(x-0.00) + 0.375(x-0.0)(x-1.0) - 0.25(x-0.0)(x-1.0)(x-2

    12、.0) + 0.03125(x-0.0)(x-2.0)(x-1.0)(x-3.0)=0.03125x4-0.4375x3+1.46875x2-0.3125x+0.516、选取适当的函数y=f(x)和插值节点,编写Matlab程序,分别利用Lagrange插值方法,Newton插值方法确定的插值多项式,并将函数y=f(x)的插值多项式和插值余项的图形画在同一坐标系中,观测节点变化对插值余项的影响。C,D,Y=newpoly(x0,y0,x)%检验输入参数if nargin 3 error(Incorrect Number of Inputsif length(x0)=length(y0) err

    13、or(The length of x0 must be equal to it of y0n=length(x0);D=zeros(n,n);D(:,1)=y0%计算差商表for j=2:n for k=j:if abs(x0(k)-x0(k-j+1)eps error(Divided by Zero,there are two nodes are the sameD(k,j)=(D(k,j-1)-D(k-1,j-1)/(x0(k)-x0(k-j+1); end end%计算Newton插值多项式的系数 C=D(n,n);for k=(n-1):C=conv(C,poly(x0(k); m=l

    14、ength(C);C(m)=C(m)+D(k,k);if nargin=3Y=polyval(C,x);x = 0 1 2 3 4 ;y = 0.5,1.25,2.75,3.5,2.75; x0 = 0 1 2 3 4 ;y0 = 0.5,1.25,2.75,3.5,2.75; %用lagrang插值法计算 A,Y=lagrange(x,y,x0)Lx=vpa(poly2sym(A),4) %用newton插值法计算 C,D,X=newpoly(x0,y0,x) Nx=vpa(poly2sym(C),4) %绘制两者图像 plot(x,Y,b*,x0,X,r-)A=0.5000 -0.3125

    15、 1.4687 -0.4375 0.0313Y=0.5000 1.2500 2.7500 3.5000 2.7500Lx=0.5x4 - 0.3125x3 + 1.469x2 - 0.4375x + 0.03125C=0.5000 -0.3125 1.4688 -0.4375 0.0313D=0.5000 0 0 0 01.2500 0.7500 0 0 02.7500 1.5000 0.3750 0 03.5000 0.7500 -0.3750 -0.2500 02.7500 -0.7500 -0.7500 -0.1250 0.0313X= 0.5000 1.2500 2.7500 3.50

    16、00 2.7500Nx=0.5x4 - 0.3125x3 + 1.469x2 - 0.4375x + 0.0312第四章6、已知列表函数 x 1.0 2.0 3.0 4.0 5.0y 1.222 2.984 5.466 8.902 13.592用最小二乘法求形如y=axebx的拟合函数。Matlab程序 function a,b=ec(x,y) Y=log(y)A=zeros(5,3);for i=1:5 A(i,1)=1;A(i,2)=log(x(i); A(i,3)=i;c=inv(A*A)*(A*Y); a=exp(c(1);b=c(3);5 y=a*x.*exp(b*x);end re

    17、turn x=1 2 3 4 5;y=1.222 2.984 5.466 8.902 13.592;a,b=ec(x,y) 输出结果为:a = 1.000202219673205 b = 0.200293860504786 8、学习Matlab内部的函数lsqcurvefit,并设计数值实验使用lsqcurvefit。Matlab内部函数lsqcurvefit是用来解决非线性拟合的最小二乘问题的。其调用格式为:x= lsqcurvefit(fun,x0,xdata,ydata) x=lsqcurvefit(fun,x0,xdata,ydata,lb,ub) x=lsqcurvefit(fun,

    18、x0,xdata,ydata,lb,ub,options) x,resnorm = lsqcurvefit()x,resnorm,residual=lsqcurvefit() x,resnorm,residual,exitflag= lsqcurvefit() x,resnorm,residual,exitflag,output = lsqcurvefit() x,resnorm,residual,exitflag,output,lambda = lsqcurvefit() x,resnorm,residual,exitflag,output,lambda,jacobian =lsqcurve

    19、fit() 输入参数:fun为待拟合函数,计算x处拟合函数值,其定义为function F=myfun(x,xdata) x0为初始解向量,即拟合参数的初始解; xdata,ydata为满足关系ydata=F(x, xdata)的数据;lb、ub为解向量的下界和上界lbxub,若没有指定界,则lb= ,ub= ; options为指定的优化参数; 输出参数:x为迭代得出解向量,即拟合出的参数; resnorm=sum (fun(x,xdata)-ydata).2),即x处残差平方和,最小二乘式值;residual=fun(x,xdata)-ydata,即在x处的残差;exitflag为终止迭代

    20、的条件; output为输出的优化信息;lambda为解x处的Lagrange乘子;jacobian为解x处拟合函数fun的jacobian矩阵。function F = myfun(x,xdata) F=(x(1).*xdata).*(exp(x(2).*xdata);xdata=1,2,3,4,5;ydata=1.222,2.984,5.466,8.902,13.592; x0=0,0;x,resnorm=lsqcurvefit(myfun,x0,xdata,ydata) 输出结果为:Local minimum found. Optimization completed because the size of the gradient is less than the default value of the function tolerance. x = 0.999958348976391 0.200014132812834 resnorm = 8.067930437509675e-7


    注意事项

    本文(常州大学数值分析课后习题答案第二章第三章第四章节资料文档格式.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开