(8) 已知0.2510.25??= ?? ?A ,则0k k ∞ ==∑A 。 (9) 设,n ≠∈C s 0则 () 2 T =ss s,s 。 (10) 求解微分方程(0)2u t u u '=-??=?,的Euler 法公式为 ; 绝对稳定区间为 ;改进的Euler 公式为 。 (11) 用A (-2,-3.1)、B (-1,0.9)、C (0,1.0) 、D (1,3.1)、E (2,4.9)拟合一 直线s (x )=a +bx 的法方程组为: 。 (12) 已知多项式()3234321p x x x x =+++,那么求此多项式值的秦九韶算法公为:_ ______。 (13) 给定如下数据表 则均差[1,0,1f -= ,由数据构造出最简插值多项式 ()p x = 。 (14)设???? ? ? ?? +=231311a A ,当a 满足条件 时, A 必有唯一的T LL 分解(其中L 是对角元为正的下三角矩阵)。 (15) 求01)(=--=x e x f x 根的Newton 迭代法至少局部平方收敛 ( ) (16) 若A 为可逆矩阵,则求解A T Ax=b 的Gauss-Seidel 迭代法收敛 ( ) (17) 分段二点三次Hermite 插值多项式∈C 2函数类 ( ) (18) 如果A 为Hermite 矩阵,则A 的奇异值是A 的特征值 ( )
北航数值分析报告第三次大作业
数值分析第三次大作业 一、算法的设计方案: (一)、总体方案设计: x y当作已知量代入题目给定的非线性方程组,求(1)解非线性方程组。将给定的(,) i i
得与(,)i i x y 相对应的数组t[i][j],u[i][j]。 (2)分片二次代数插值。通过分片二次代数插值运算,得到与数组t[11][21],u[11][21]]对应的数组z[11][21],得到二元函数z=(,)i i f x y 。 (3)曲面拟合。利用x[i],y[j],z[11][21]建立二维函数表,再根据精度的要求选择适当k 值,并得到曲面拟合的系数矩阵C[r][s]。 (4)观察和(,)i i p x y 的逼近效果。观察逼近效果只需要重复上面(1)和(2)的过程,得到与新的插值节点(,)i i x y 对应的(,)i i f x y ,再与对应的(,)i i p x y 比较即可,这里求解 (,)i i p x y 可以直接使用(3)中的C[r][s]和k 。 (二)具体算法设计: (1)解非线性方程组 牛顿法解方程组()0F x =的解* x ,可采用如下算法: 1)在* x 附近选取(0) x D ∈,给定精度水平0ε>和最大迭代次数M 。 2)对于0,1, k M =执行 ① 计算() ()k F x 和()()k F x '。 ② 求解关于() k x ?的线性方程组 () ()()()()k k k F x x F x '?=- ③ 若() () k k x x ε∞∞ ?≤,则取*()k x x ≈,并停止计算;否则转④。 ④ 计算(1) ()()k k k x x x +=+?。 ⑤ 若k M <,则继续,否则,输出M 次迭代不成功的信息,并停止计算。 (2)分片双二次插值 给定已知数表以及需要插值的节点,进行分片二次插值的算法: 设已知数表中的点为: 00(0,1,,) (0,1,,)i j x x ih i n y y j j m τ=+=???=+=?? ,需要插值的节点为(,)x y 。 1) 根据(,)x y 选择插值节点(,)i j x y : 若12h x x ≤+ 或12 n h x x ->-,插值节点对应取1i =或1i n =-,
大连理工大学矩阵与数值分析2017年考题
大连理工大学2017年研究生矩阵与数值分析考试 考试日期:2017年6月5日 一、填空题(50分,每空2分) 1.a=0.3000经过四舍五入具有4位有效数字,则 x a a -≤,ln ln x a -≤ 2.已知X=(1,5,12)T ,Y=(1,0,a)T ,则由X 映射到Y 的Householder 矩阵为:,计算||H||2=,cond 2(H)= 3.根据3次样条函数的性质(后面-前面=a (x-x0)3),一个求其中的参数b== 4.2 '3u u t =,写出隐式Euler 格式: 梯形法格式: 5.已知A=XX T ,其中X 为n 维列向量,则||A||2=,||A||F =,矩阵序列的极限:2lim k k A A →∞?? ? ? ?? = 6.A=LU ,其解为x ,写出一步迭代后的改善格式: 7. 531A -?? ? = ? ?-?? ,请问通过幂法与反幂法计算出的特征值分别是, 8.1111A ?? ?= ? ??? ,sin A =,823A A A +-=,At e =,d d At e t =,2 1At e dt ?= 9. ()()()()2 1 2 012f x dx A f A f A f =++?是Newton-cotes 公式,则1 A =,具有代数精度= 10. f(x)=7x 7+6x 6+…+x ,f[20,21,22….,28]= 11. 0.40.200.5A ??= ???,1 k k A ∞=∑= 12.f(0)=1,f(1)=-1,f(2)=1,f(3)=19,请问对该节点进行插值后最高次的系数= 还有2空没有回忆出来,但是比上面题目还简单,因此不用担心。 二、121232352A -?? ?=-- ? ?--??,121b ?? ? = ? ?-?? (1)计算LU 分解 (2)利用LU 求逆矩阵 (3)写出G-S 格式(12分)
北航数值分析大作业第二题精解
目标:使用带双步位移的QR 分解法求矩阵10*10[]ij A a =的全部特征值,并对其中的每一个实特征值求相应的特征向量。已知:sin(0.50.2)() 1.5cos( 1.2)(){i j i j ij i j i j a +≠+== (i,j=1,2, (10) 算法: 以上是程序运作的逻辑,其中具体的函数的算法,大部分都是数值分析课本上的逻辑,在这里特别写出矩阵A 的实特征值对应的一个特征向量的求法: ()[]()() []()[]()111111I 00000 i n n n B A I gause i n Q A I u Bu u λλ-?-?-=-?-?? ?-=????→=??????→= ?? ? 选主元的消元 检查知无重特征值 由于=0i A I λ- ,因此在经过选主元的高斯消元以后,i A I λ- 即B 的最后一行必然为零,左上方变 为n-1阶单位矩阵[]()()11I n n -?-,右上方变为n-1阶向量[]()11n Q ?-,然后令n u 1=-,则 ()1,2,,1j j u Q j n ==???-。
这样即求出所有A所有实特征值对应的一个特征向量。 #include #include #include #define N 10 #define E 1.0e-12 #define MAX 10000 //以下是符号函数 double sgn(double a) { double z; if(a>E) z=1; else z=-1; return z; } //以下是矩阵的拟三角分解 void nishangsanjiaodiv(double A[N][N]) { int i,j,k; int m=0; double d,c,h,t; double u[N],p[N],q[N],w[N]; for(i=0;i矩阵与数值分析_大连理工大学2011试卷
2011级工科硕士研究生 《矩阵与数值分析》课程数值实验题目 一、 对于数列1111 1,,, ,,392781 ,有如下两种生成方式 1、首项为01a =,递推公式为11 ,1,2,3 n n a a n -== ; 2、前两项为011 1,3 a a ==,递推公式为1210,2,3,3n n n a a a n --=-= ; 给出利用上述两种递推公式生成的序列的第50项。 二、 利用迭代格式 1 0,1,2,k x k += = 及Aitken 加速后的新迭代格式求方程324100x x +-=在[1, 1.5]内的根 三、解线性方程组 1.分别Jacobi 迭代法和Gauss-Seidel 迭代法求解线性方程组 12346212425027,208511 3270x x x x -?????? ? ? ? - ? ? ? = ? ? ? -- ? ? ? ???? ?? 迭代法计算停止的条件为:6)() 1(3 110max -+≤≤<-k j k j j x x . 2. 用Gauss 列主元消去法、QR 方法求解如下方程组: 1234221 2141312. 4201123 230x x x x ?????? ? ? ?- ? ? ? = ? ? ? -- ? ? ????? ?? 四、已知一组数据点,编写一程序求解三 次样条插值函数满足
并针对下面一组具体实验数据 求解,其中边界条件为. 五、编写程序构造区间上的以等分结点为插值结点的Newton插值公式,假设结点数为(包括两个端点),给定相应的函数值,插 值区间和等分的份数,该程序能快速计算出相应的插值公式。以 ,为例计算其对应的插值公式,分别取 不同的值并画出原函数的图像以及插值函数的图像,观察当增大 时的逼近效果. 实验须知: (1)所有的数值实验的题目要求用C语言或Matlab编程; (2)实验报告内容应包括问题、程序、计算结果及分析等; (3)12月26日前在本课程网站上提交实验报告; (4)本次实验成绩将占总成绩的10%。 (5)报告上要注明:所在教学班号、任课老师的姓名;报告人所在院系、学号。电子版提交到课程网站ftp://202.118.75.63/中各自老师目录下的homework文件夹内,文件名用学号命名。 《矩阵与数值分析》课程教学组 2011年11月30日
北航数值分析大作业第一题幂法与反幂法
《数值分析》计算实习题目 第一题: 1. 算法设计方案 (1)1λ,501λ和s λ的值。 1)首先通过幂法求出按模最大的特征值λt1,然后根据λt1进行原点平移求出另一特征值λt2,比较两值大小,数值小的为所求最小特征值λ1,数值大的为是所求最大特征值λ501。 2)使用反幂法求λs ,其中需要解线性方程组。因为A 为带状线性方程组,此处采用LU 分解法解带状方程组。 (2)与140k λλμλ-5011=+k 最接近的特征值λik 。 通过带有原点平移的反幂法求出与数k μ最接近的特征值 λik 。 (3)2cond(A)和det A 。 1)1=n λλ2cond(A),其中1λ和n λ分别是按模最大和最小特征值。 2)利用步骤(1)中分解矩阵A 得出的LU 矩阵,L 为单位下三角阵,U 为上三角阵,其中U 矩阵的主对角线元素之积即为det A 。 由于A 的元素零元素较多,为节省储存量,将A 的元素存为6×501的数组中,程序中采用get_an_element()函数来从小数组中取出A 中的元素。 2.全部源程序 #include #include void init_a();//初始化A double get_an_element(int,int);//取A 中的元素函数 double powermethod(double);//原点平移的幂法 double inversepowermethod(double);//原点平移的反幂法 int presolve(double);//三角LU 分解 int solve(double [],double []);//解方程组 int max(int,int); int min(int,int); double (*u)[502]=new double[502][502];//上三角U 数组 double (*l)[502]=new double[502][502];//单位下三角L 数组 double a[6][502];//矩阵A int main() { int i,k; double lambdat1,lambdat2,lambda1,lambda501,lambdas,mu[40],det;
上海大学_王培康_数值分析大作业
数值分析大作业(2013年5月) 金洋洋(12721512),机自系 1.下列各数都是经过四舍五入得到的近似值,试分别指出它 们的绝对误差限, 相对误差限和有效数字的位数。 X1 =5.420, x 2 =0.5420, x 3=0.00542, x 4 =6000, x 5=50.610? 解:根据定义:如果*x 的绝对误差限 不超过x 的某个数位的半个单位,则从*x 的首位非零数字到该位都是有效数字。 显然根据四舍五入原则得到的近视值,全部都是有效数字。 因而在这里有:n1=4, n2=4, n3=3, n4=4, n5=1 (n 表示x 有效数字的位数) 对x1:有a1=5, m1=1 (其中a1表示x 的首位非零数字,m1表示x1的整数位数) 所以有绝对误差限 143 11 (1)101022 x ε--≤ ?=? 相对误差限 31() 0.510(1)0.00923%5.4201 r x x x εε-?= == 对x2:有a2=5, m2=0 所以有绝对误差限 044 11 (2)101022 x ε--≤ ?=? 相对误差限 42() 0.510(2)0.00923%0.54202 r x x x εε-?= == 对x3:有a3=5, m3=-2 所以有绝对误差限 235 11 (3)101022 x ε---≤ ?=? 相对误差限 53() 0.510(3)0.0923%0.005423 r x x x εε-?= == 对x4:有a4=0, m4=4 所以有绝对误差限 4411(4)1022 x ε-≤?= 相对误差限 4() 0.5 (4)0.0083%6000 4 r x x x εε= = = 对x5:有a5=6, m5=5 所以有绝对误差限 514 11(5)101022 x ε-≤ ?=? 相对误差限 45() 0.510(5)8.3%600005 r x x x εε?= ==
数值分析大作业 三、四、五、六、七
大作业 三 1. 给定初值0x 及容许误差 ,编制牛顿法解方程f (x )=0的通用 程序. 解:Matlab 程序如下: 函数m 文件:fu.m function Fu=fu(x) Fu=x^3/3-x; end 函数m 文件:dfu.m function Fu=dfu(x) Fu=x^2-1; end 用Newton 法求根的通用程序Newton.m clear; x0=input('请输入初值x0:'); ep=input('请输入容许误差:'); flag=1; while flag==1 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)while flag1==1 && m<=10^3 x1=x0-fu(x0)/dfu(x0); if abs(x1-x0)=ep flag=0; end end fprintf('最大的sigma 值为:%f\n',sigma); 2.求下列方程的非零根 5130.6651()ln 05130.665114000.0918 x x f x x +?? =- = ?-???解:Matlab 程序为: (1)主程序 clear clc format long x0=765; N=100; errorlim=10^(-5); x=x0-f(x0)/subs(df(),x0); n=1; while nerrorlim n=n+1; else break ; end x0=x; end disp(['迭代次数: n=',num2str(n)]) disp(['所求非零根: 正根x1=',num2str(x),' 负根x2=',num2str(-x)]) (2)子函数 非线性函数f function y=f(x) y=log((513+0.6651*x)/(513-0.6651*x))-x/(1400*0.0918); end
哈尔滨工程大学数值分析大作业2014-附fortran程序
B班大作业要求: 1. 使用统一封皮; 2. 上交大作业内容包含: 一摘要 二数学原理 三程序设计(必须对输入变量、输出变量进行说明;编程无语言要求,但程序要求通过)四结果分析和讨论 五完成题目的体会与收获 3. 提交大作业的时间:本学期最后一次课,或考前答疑;过期不计入成绩; 4. 提交方式:打印版一份;或手写大作业,但必须使用A4纸。 5. 撰写的程序需打印出来作为附录。
课程设计 课程名称: 设计题目: 学号: 姓名: 完成时间:
题目一:非线性方程求根 一 摘要 非线性方程的解析解通常很难给出,因此非线性方程的数值解就尤为重要。本实验通过使用常用的求解方法二分法和Newton 法及改进的Newton 法处理几个题目,分析并总结不同方法处理问题的优缺点。观察迭代次数,收敛速度及初值选取对迭代的影响。 用Newton 法计算下列方程 (1) 310x x --= , 初值分别为01x =,00.45x =,00.65x =; (2) 32943892940x x x +-+= 其三个根分别为1,3,98-。当选择初值02x =时给出结果并分析现 象,当6 510ε-=?,迭代停止。 二 数学原理 对于方程f(x)=0,如果f(x)是线性函数,则它的求根是很容易的。牛顿迭代法实质上是一种线性化方法,其基本思想是将非线性方程f(x)=0逐步归结为某种线性方程来求解。 设已知方程f(x)=0有近似根x k (假定k f'(x )0≠) ,将函数f(x)在点x k 进行泰勒展开,有 k k k f(x)f(x )+f'(x )(x-x )+≈??? 于是方程f(x)=0可近似的表示为 k k k f(x )+f'(x )(x-x )=0 这是个线性方程,记其根为x k+1,则x k+1的计算公式为 k+1k () x =x -'() k k f x f x ,k=0,1,2,… 这就是牛顿迭代法或简称牛顿法。
北航数值分析报告大作业第八题
北京航空航天大学 数值分析大作业八 学院名称自动化 专业方向控制工程 学号 学生姓名许阳 教师孙玉泉 日期2014 年11月26 日
一.题目 关于x , y , t , u , v , w 的方程组(A.3) ???? ?? ?=-+++=-+++=-+++=-+++79 .0sin 5.074.3cos 5.007.1cos sin 5.067.2cos 5.0y w v u t x w v u t y w v u t x w v u t (A.3) 以及关于z , t , u 的二维数表(见表A-1)确定了一个二元函数z =f (x , y )。 表A-1 二维数表 t z u 0 0.4 0.8 1.2 1.6 2 0 -0.5 -0.34 0.14 0.94 2.06 3.5 0.2 -0.42 -0.5 -0.26 0.3 1.18 2.38 0.4 -0.18 -0.5 -0.5 -0.18 0.46 1.42 0.6 0.22 -0.34 -0.58 -0.5 -0.1 0.62 0.8 0.78 -0.02 -0.5 -0.66 -0.5 -0.02 1.0 1.5 0.46 -0.26 -0.66 -0.74 -0.5 1. 试用数值方法求出f (x , y ) 在区域}5.15.0,8.00|), {≤≤≤≤=y x y x D (上的近似表达式 ∑∑===k i k j s r rs y x c y x p 00 ),( 要求p (x , y )以最小的k 值达到以下的精度 ∑∑==-≤-=10020 7210)],(),([i j i i i i y x p y x f σ 其中j y i x i i 05.05.0,08.0+==。 2. 计算),(),,(* ***j i j i y x p y x f (i =1,2,…,8 ; j =1,2,…,5) 的值,以观察p (x , y ) 逼 近f (x , y )的效果,其中j y i x j i 2.05.0,1.0**+==。
大连理工大学矩阵与数值分析上机作业
矩阵与数值分析上机作业 学校:大连理工大学 学院: 班级: 姓名: 学号: 授课老师:
注:编程语言Matlab 程序: Norm.m函数 function s=Norm(x,m) %求向量x的范数 %m取1,2,inf分别表示1,2,无穷范数 n=length(x); s=0; switch m case 1 %1-范数 for i=1:n s=s+abs(x(i)); end case 2 %2-范数 for i=1:n s=s+x(i)^2; end s=sqrt(s); case inf %无穷-范数 s=max(abs(x)); end 计算向量x,y的范数 Test1.m clear all; clc; n1=10;n2=100;n3=1000; x1=1./[1:n1]';x2=1./[1:n2]';x3=1./[1:n3]'; y1=[1:n1]';y2=[1:n2]';y3=[1:n3]'; disp('n=10时'); disp('x的1-范数:');disp(Norm(x1,1)); disp('x的2-范数:');disp(Norm(x1,2)); disp('x的无穷-范数:');disp(Norm(x1,inf)); disp('y的1-范数:');disp(Norm(y1,1)); disp('y的2-范数:');disp(Norm(y1,2)); disp('y的无穷-范数:');disp(Norm(y1,inf)); disp('n=100时'); disp('x的1-范数:');disp(Norm(x2,1));
disp('x的2-范数:');disp(Norm(x2,2)); disp('x的无穷-范数:');disp(Norm(x2,inf)); disp('y的1-范数:');disp(Norm(y2,1)); disp('y的2-范数:');disp(Norm(y2,2)); disp('y的无穷-范数:');disp(Norm(y2,inf)); disp('n=1000时'); disp('x的1-范数:');disp(Norm(x3,1)); disp('x的2-范数:');disp(Norm(x3,2)); disp('x的无穷-范数:');disp(Norm(x3,inf)); disp('y的1-范数:');disp(Norm(y3,1)); disp('y的2-范数:');disp(Norm(y3,2)); disp('y的无穷-范数:');disp(Norm(y3,inf)); 运行结果: n=10时 x的1-范数:2.9290;x的2-范数:1.2449; x的无穷-范数:1 y的1-范数:55; y的2-范数:19.6214; y的无穷-范数:10 n=100时 x的1-范数:5.1874;x的2-范数: 1.2787; x的无穷-范数:1 y的1-范数:5050; y的2-范数:581.6786; y的无穷-范数:100 n=1000时 x的1-范数:7.4855; x的2-范数:1.2822; x的无穷-范数:1 y的1-范数: 500500; y的2-范数:1.8271e+004;y的无穷-范数:1000 程序 Test2.m clear all; clc; n=100;%区间 h=2*10^(-15)/n;%步长 x=-10^(-15):h:10^(-15); %第一种原函数
数值计算大作业
数值计算大作业 题目一、非线性方程求根 1.题目 假设人口随时间和当时人口数目成比例连续增长,在此假设下人口在短期内的增长建立数学模型。 (1)如果令()N t 表示在t 时刻的人口数目,β 表示固定的人口出生率,则人口数目满足微分方程() ()dN t N t dt β=,此方程的解为0()=t N t N e β; (2)如果允许移民移入且速率为恒定的v ,则微分方程变成() ()dN t N t v dt β=+, 此方程的解为 0()=+ (1) t t v N t N e e βββ -; 假设某地区初始有1000000人,在第一年有435000人移入,又假设在第一年年底该地区人口数量1564000人,试通过下面的方程确定人口出生率β,精确到 410-;且通过这个数值来预测第二年年末的人口数,假设移民速度v 保持不变。 435000 1564000=1000000(1) e e βββ + - 2.数学原理 采用牛顿迭代法,牛顿迭代法的数学原理是,对于方程0)(=x f ,如果) (x f 是线性函数,则它的求根是很容易的,牛顿迭代法实质上是一种线性化方法,其基本思想是将非线性方程0)(=x f 逐步归结为某种线性方程来求解。 设已知方程0)(=x f 有近似根k x (假定0)(≠'x f ),将函数)(x f 在点k x 进行泰勒展开,有 . ))(()()(???+-'+≈k k k x x x f x f x f 于是方程0)(=x f 可近似地表示为 ))(()(=-'+k k x x x f x f 这是个线性方程,记其根为1k x +,则1k x +的计算公式为
大连理工大学矩阵大作业
2013级工科硕士研究生 《矩阵与数值分析》课程数值实验报告 大连理工大学 Dalian University of Technology
一、设 6 2 2 10 1 N N j S j = = - ∑,分别编制从小到大和从大到小的顺序程序分别计算 100001000000 , S S 并指出两种方法计算结果的有效位数。 程序代码: 从小到大: function f=s(N); %定义函数s f=0; %初始值为0 for j=N:-1:3 %j从3到n循环(从小到大) ft=1000000/(j^2-1); %Sj f=f+ft; %SN end 从大到小: function f=s(N); %定义函数s f=0; %初始值为0 for j=N:-1:3 %j从3到n循环(从小到大) ft=1000000/(j^2-1); %Sj f=f+ft; %SN end 执行结果: 从小到大: s(10000) ans = 4.16566671666167e+05 s(1000000) ans =
4.166656666671731e+05 有效数字:16,16 从大到小: s(10000) ans = 4.165666716661668e+05 s(1000000) ans = 4.166656666671667e+05 有效数字:16,16 分析: 小数和大数相加时,按照从大到小的顺序和按照从小到大的顺序得出的结果不同,前者由 于舍入误差的影响而使结果不准确,所以应避免大数吃小数的现象。 二、解线性方程组 1.分别利用Jacobi 迭代法和Gauss-Seidel 迭代法求解线性方程组Ax b =,其中常向量为()21n -维随机生成的列向量,系数矩阵A 具有如下形式 1111 11 1122n n n n n n n n T I I I A I I T I --------+-?? ?- ?= ? - ? -+? ? , 其中1 211112n T --?? ? - ?= ?- ? -? ? 为1n -阶矩阵,1n I -为1n -阶单位矩阵,迭代法计算停止的条件为:10 12 10k k x x -+-<,给出10,100,1000n =时的不同迭代步数. 程序代码: