第6章 MATLAB数据分析与多项式计算
习题6
一、选择题
1.设A=[1,2,3,4,5;3,4,5,6,7],则min(max(A))的值是( )。B A.1 B.3 C.5 D.7
2.已知a为3×3矩阵,则运行mean(a)命令是( )。B A.计算a每行的平均值 B.计算a每列的平均值 C.a增加一行平均值 D.a增加一列平均值 3.在MATLAB命令行窗口输入下列命令: >> x=[1,2,3,4]; >> y=polyval(x,1); 则y的值为( )。 D
A.5 B.8 C.24 D.10
4.设P是多项式系数向量,A为方阵,则函数polyval(P,A)与函数polyvalm(P,A)的值( )。D
A.一个是标量,一个是方阵 B.都是标量 C.值相等 D.值不相等 5.在MATLAB命令行窗口输入下列命令: >> A=[1,0,-2]; >> x=roots(A);
则x(1)的值为( )。 C
A.1 B.-2 C. D. 6.关于数据插值与曲线拟合,下列说法不正确的是( )。A A.3次样条方法的插值结果肯定比线性插值方法精度高。
B.插值函数是必须满足原始数据点坐标,而拟合函数则是整体最接近原始数据点,而不一定要必须经过原始数据点。
C.曲线拟合常常采用最小二乘原理,即要求拟合函数与原始数据的均方误差达到极小。 D.插值和拟合都是通过已知数据集来求取未知点的函数值。 二、填空题
1.设A=[1,2,3;10 20 30;4 5 6],则sum(A)= ,median(A)= 。 [15 27 39],[4 5 6[
2.向量[2,0,-1]所代表的多项式是 。2x-1
3.为了求ax+bx+c=0的根,相应的命令是 (假定a、b、c已经赋值)。为了
2
2
将求得的根代回方程进行验证,相应的命令是 。
x=roots([a,b,c]),polyval([a,b,c],x)
4.如果被插值函数是一个单变量函数,则称为 插值,相应的MATLAB函数是 。一维,interp1
5.求曲线拟合多项式系数的函数是 ,计算多项式在给定点上函数值的函数是 。polyfit,polyval
三、应用题
1.利用MATLAB提供的randn函数生成符合正态分布的10×5随机矩阵A,进行如下操作:
(1)A各列元素的均值和标准方差。 (2)A的最大元素和最小元素。
(3)求A每行元素的和以及全部元素之和。
(4)分别对A的每列元素按升序、每行元素按降序排序。 第一题: (1):
A=randn(10,5) B=mean(A) C=std(A) (2):
mx=max(max(A)) mn=min(min(A)) (3): sm=sum(A,2) sz=sum(sum(A)) (4):
[Y,I]=sort(A,1) [Z,J]=sort(A,2);
rot90(Z,1)'%旋转90度后,再转置便可得到每行按降序排列 2.已知多项式P1(x)=3x+2,P2(x)=5x-x+2,P3(x)=,求: (1)P(x)=P1(x) P2(x)P3(x)。 (2)P(x)=0的全部根。
(3)计算xi=(i=0,1,2,…,10)各点上的P(xi)。 第二题: (1): p1=[0,3,2]; p2=[5,-1,2]; p3=[1,0,];
2
p=conv(conv(p1,p2),p3)%先将p1与p2乘,再与p3乘,conv函数只能有两个 (2): x=roots(p) (3): a=0:10; b=*a;
y=polyval(p,b)
3.按表6-4用3次样条方法插值计算0~90o内整数点的正弦值和0~75o内整数点的正切值,然后用5次多项式拟合方法计算相同的函数值,并将两种计算结果进行比较。
表6-4 特殊角的正弦与正切值表
α(度) sinα tanα 0 15 30 45 60 75 90 0 0 第三题: (1): sin(x)函数: 三次样条方法: x=0:90;
a=[0,15,30,45,60,75,90]; f=[0,,,,,,1];
interp1(a,f,x,'spline')%spline要加单引号,否则错误;还可以用spline(a,f,x)函数
5次多项式拟合方法: x=0:90;
a=[0,15,30,45,60,75,90]; f=[0,,,,,,1]; q=polyfit(a,f,5); y=polyval(q,x); plot(x,p,':o',x,y,'-*') tan(x)函数: 三次样条方法: x=0:75;
a=[0,15,30,45,60,75]; f=[0,,,1,,];
interp1(a,f,x,'spline')%spline要加单引号,否则错误