八.举例(用 Matlab作计算) 小题1:随机产生一个满足“标准正态分布”的100维数组,记作a.再把 数组a的这10个数的次序完全颠倒,得到一个新数组,记作b, 输出b 小题2:随机产生一个满足“(0,1)内均匀分布”的4×5型矩阵,求出其最大 元素及其所处的位置。 小题3:随机产生一个满足“(1,10)内均匀分布”的20维数组,用起泡法对 20个数由小到大排序.即将相邻两个数比较将小的调到前头.(不准 用so命令)。 小题4:编程求∑n 法一:H=0, 法二:H=1;J=1 for n=1: 20 for n=2: 20 J=1; J =J*n for kl:n H=H+J J=J*k. End H=H+ H 小题5:一球从100米高度自由落下每次落地后反跳回原高度的一半,再落 下.求它在第10次落地时共经过多少米?第10次反弹有多高? 大题1: 汽车头部的车灯,其反射面为一个旋转抛物面,方程为 y2+z2=60(x+15) x∈[-15,66] 灯丝(即:线光源)是一个直线段、长度为4、位于Y轴上且以原点为中 点。设点P(OtO)是线光源上任一点,则t∈[-2,2].设点M(x,y0,=0)是旋 转抛物面任一点。从P到M的射线的反射线与平面x=25000的交点记为 N(25000yz),计算公式为 a=2x0-30d+60 b= yod 25000-x0)+yo c=ad 其中:d_1800+60x0+21y =C0(2500-x)+0 90+y6+
八.举例(用 Matlab 作计算) 小题 1:随机产生一个满足“标准正态分布”的 100 维数组,记作 a . 再把 数组 a 的这 100 个数的次序完全颠倒,得到一个新数组,记作 b, 输出 b . 小题 2:随机产生一个满足“(0,1)内均匀分布”的 45 型矩阵,求出其最大 元素及其所处的位置。 小题 3:随机产生一个满足“(1,10)内均匀分布”的 20 维数组,用起泡法对 20 个数由小到大排序. 即将相邻两个数比较,将小的调到前头(不准 . 用 sort 命令)。 小题 4:编程求 ! . 20 1 n= n 法一: H=0; 法二:H=1;J=1; for n=1:20 for n=2:20 J=1; J=J*n; for k=1:n H=H+J; J=J*k; end End H H=H+J; end H 小题 5: 一球从 100 米高度自由落下,每次落地后反跳回原高度的一半,再落 下. 求它在第 10 次落地时,共经过多少米?第 10 次反弹有多高? 大题 1: 汽车头部的车灯,其反射面为一个旋转抛物面,方程为 − + = + [ 15, 6.6] 60 ( 15) 2 2 x y z x 。 灯丝(即:线光源)是一个直线段、长度为 4、位于 Y 轴上且以原点为中 点。 设点 P(0,t,0)是线光源上任一点,则 t [−2,2]. 设点 M( 0 0 0 x , y ,z )是旋 转抛物面任一点。从 P 到 M 的射线的反射线与平面 x = 25000 的交点记为 N(25000, y, z),计算公式为 + + + + = = = − = − + 2 0 2 0 0 0 0 0 0 900 1800 60 2 2 30 60 y z x t y d c z d b y d t a x d 其中: − + − − = − + − − = 0 0 0 0 0 0 0 0 (25000 ) (25000 ) x z a x c z z x y a x b y y
点P在线光源上遍历,点M在抛物面上遍历,则,对应的点N在平面 x=25000上移动轨迹产生的区域就是反射光亮区 取t以步长0.2从-2到2,x以步长1从-144到66 每固定一个x0,分别再遍历y,=0 60(x0+15),以步长从0 到 yo=rcos(0),=0=rsin(8 20 编程画出反射光亮区。 大题2: Eof 12|1720|2120|18|121016 用 Lagrange插值法,求当x分别取0,0.2,04,06,0.8,,15时,对应的函 数值y,并画出函数y=y(x)的图象 提示: Lagrange插值公式 l(x)=(x-x)…(x-x-1Xx-x)…(x-x) (x, -x)-(x-x -, -x +1)(x-x,), y(x)=>y L(x) (其中,j分别取1,2,3,…,n) 大题3:已知:y=bx2+bx,测试得下面数据 x:0115320452800346640684621513556196152 020406080100120140160183.5 试用“最小二乘法”估计参数b。,并算出节点处的总误差 提示:最小二乘法 已知y=y(x)=b(x)+b(x)+…+b(x),其中r(x)为已知函数,b为待定 x:xx 参数,经测试得数据 ,试估计参数b(Gj=0,2,…,m)的值 算法:构造矩阵A,其元素为a=∑(x)r(x),(,j=0.12…,m) 构造列向量D,其元素为d=∑y(x),(=012…,n) k=0
点 P 在线光源上遍历,点 M 在抛物面上遍历,则,对应的点 N 在平面 x = 25000 上移动轨迹产生的区域就是反射光亮区。 取 t 以步长 0.2 从-2 到 2, 0 x 以步长 1 从-14.4 到 6.6。 每固定一个 0 x ,分别再遍历 y0 , z0 . r = 60(x0 +15), 以步长 20 从 0 到 , cos( ), sin( ) 20 39 0 0 y = r z = r . 编程画出反射光亮区。 大题 2: x 0 3 5 7 9 11 12 13 14 15 y 0 1.2 1.7 2.0 2.1 2.0 1.8 1.2 1.0 1.6 用 Lagrange 插值法,求当 x 分别取 0, 0.2, 0.4, 0.6, 0.8, ……, 15 时,对应的函 数值 y,并画出函数 y=y(x)的图象. 提示:Lagrange 插值公式 ( 1, 2, 3, , ) ( ) ( )( ) ( ) ( ) ( )( ) ( ) ( ) 1 1 1 1 1 1 j n x x x x x x x x x x x x x x x x l x j j j j j j n j j n j 其中, 分别取 − − − − − − − − = − + − + , = = n j j j y x y l x 1 ( ) ( ) 大题 3: 已知: y b x b x1 2 = 0 + ,测试得下面数据 x: 0 1153 2045 2800 3466 4068 4621 5135 5619 6152 y: 0 20 40 60 80 100 120 140 160 183.5. 试用“最小二乘法”估计参数 0 1 b ,b ,并算出节点处的总误差. 提示:最小二乘法 已知 ( ) ( ) ( ) ( ) 0 0 1 1 y y x b r x b r x b r x = = + ++ n n ,其中 r (x) j 为已知函数, j b 为待定 参数,经测试得数据 m m y y y y x x x x 0 1 0 1 : : , 试估计参数 b ( j 0,1,2, ,n) j = 的值。 算法:构造矩阵 A,其元素为 = = m k ij i k j k a r x r x 0 ( ) ( ),(i, j = 0,1,2, ,n) 构造列向量 D,其元素为 = = m k i k i k d y r x 0 ( ) ,(i = 0,1,2, ,n)
则,AD就是参数b(=02…,m)的值, 节点处的总误差为1∑∑b(x)-y 大题4:(数值积分的龙贝格算法)计算∫(x,解法如下 (f(a)+f(b) (k=1,2,3, -=+2)mn4c3 每当算出一个T),就立即按下面公式计算 (m=1,2,…,k) 计算1=a,输出格式为 format1ong,算到7为止。顺便看与准 确值有多大误差? 大题5:求方程x=tanx的最小正根 要求:先观察确定有根区间[a,b],区间宽度不大于02 以下工作由程序来做:用“二分法”把有根区间宽度缩小到001 再启动牛顿迭代公式”计算10次,输出近似根,输出格式为 format 提示:0是整数?(笔误,改正:0是正数?) 方程f(x)=0.一个近似根记为x0,求根的牛顿迭代公式为 f(x) k+1=x f(),k=0,2,3,… 大题6:读文章“计算机模拟
则, A D −1 就是参数 b ( j 0,1,2, ,n) j = 的值, 节点处的总误差为 ( ) . 0 2 0 = = − m k k n j j j k b r x y 大题 4:(数值积分的龙贝格算法)计算 b a f (x)dx ,解法如下: − = − − − − + + − = + + − = 2 1 0 1 ( 1) 0 ( ) 0 (0) 0 1 ( )) 2 0.5 ( 2 2 1 ( ( ) ( )) 2 k i k k k k b a i f a b a T T f a f b b a T (k=1,2,3,……) 每当算出一个 ( ) 0 k T ,就立即按下面公式计算 , ( 1,2, , ) 4 1 1 4 1 4 ( ) 1 ( 1) 1 ( ) T T T m k k m m m k m m m m k m m = − − − = − − − + − − 计算 + 1 0 2 1 4 dx x ,输出格式为 format long , 算到 (0) T8 为止。顺便看看与准 确值 有多大误差? 大题 5: 求方程 x = tan x 的最小正根。 要求:先观察确定有根区间[a,b],区间宽度不大于 0.2 ; 以下工作由程序来做:用“二分法”把有根区间宽度缩小到 0.01, 再启动“牛顿迭代公式”计算 10 次,输出近似根,输出格式为 format long 提示:0 是整数?(笔误,改正:0 是正数?) 方程 f(x)=0. 一个近似根记为 0 x ,求根的牛顿迭代公式为 , 0,1,2,3, ( ) ( ) 1 / + = − k = f x f x x x k k k k . 大题 6:读文章“计算机模拟