最新第6章 MATLAB数据分析与多项式计算_习题答案
第06章_MATLAB数值计算_参考解答
%可参见教材第 157 页例 6.19
运行结果: dx =
000
%当 x=pi/2 时单独计算 x=pi/2; f=inline('sin(x).^2+cos(x).^2'); dx=diff(f([x, pi]))/(pi/2)
dx = 0
(2) 程序设计: clear all; close all; clc; x=1:3; f=inline('sqrt(x.^2+1)'); dx=diff(f([x, 4]))
运行结果:
U= 1.0e-004 * -0.0675
0.1715
fmin = 1.9920e-010
(2) 程序设计: clear all; close all; clc; f=inline('-sin(x)-cos(x.^2)'); fmax=fminbnd(f, 0, pi)
%用内联函数,求负的最小值 %注意函数名 f 不加单引号'
高教社刘卫国《MATLAB 程序设计与应用》(第二版)习题参考解答
第 6 章:MATLAB 数值计算
教材 P189 习题六
第 6 章 MATLAB 数值计算
1. 利用 MATLAB 提供的 randn 函数生成符合正态分布的 10×5 随机矩阵 A,进行如下操 作:
(1) A 各列元素的均值和标准方差。 (2) A 的最大元素和最小元素。 (3) 求 A 每行元素的和以及全部元素之和。 (4) 分别对 A 的每列元素按升序、每行元素按降序排列。 答:
运行结果: P=
0
15.0000
7.0000 -3.5000
0.5000 -2.0000 -2.0000
实验6答案Matlab数值计算
实验6 Matlab数值计算实验目的:1、掌握数据统计与分析的方法;2、掌握数据插值和曲线拟合的方法及其应用;3、掌握多项式的常用运算。
实验内容:1.利用randn函数生成符合正态分布的10×5随机矩阵A,进行如下操作:(1)求A的最大元素和最小元素;(2)求A的每行元素的和以及全部元素的和;(3)分别对A的每列元素按升序、每行元素按降序排列。
a = randn(10,5)+10;ma = max(max(a))mi = min(min(a))s = sum(a,2)sa = sum(sum(a))p = sort(a)p1 = -sort(-a,2)2.用3次多项式方法插值计算1-100之间整数的平方根。
f = sqrt(n);interp1(n,f,(1:100),'cubic')3.某气象观测站测得某日6:00-18:00之间每隔2h的室内外温度(°C)如下表所示。
使用三次样条插值分别求出该日室内外6:30-17:30之间每隔2h 各点的近似温度,并绘制插值后的温度曲线。
n= 6:2:18;f1 = [18 20 22 25 30 28 24]; f2 = [15 19 24 28 34 32 30]; r = 6.5:2:17.5;w = interp1(n,f1,r,'spline'); w1 = interp1(n,f2,r,'spline'); subplot(211),plot(r,w) subplot(212),plot(r,w1)4. 已知lgx 在[1,101]区间10个整数采样点的函数值如下表所示,试求lgx 的5次拟合多项式p(x),并绘制lgx 和p(x)在[1,101]区间的函数曲线。
x = linspace(1,101,10); y = log(x) /log(10); p = polyfit(x,y,5) y1 = polyval(p,x) plot(x,y,':o',x,y1,'-*') legend('sin(x)','fit')5. 有3个多项式(),(),()P x x x x P x x P x x x =+++=+=++4322123245223,试进行下列操作:(1) 求()()()()P x P x P x P x =+123。
Matlab基础及其应用-数据分析与多项式计算
>> density=[1.1,1.2,1.0,0.9,1.2,1.1,0.9,0.6,1.0,0.9,1.1,0.9,1.1,1,0.7]; >> cruortime=[14,13,15,15,13,14,16,17,14,16,15,16,14,15,17]; >> R=corrcoef(density,cruortime) R=
S = sum(X,dim):当dim为1(默认值)时,该函数等同于
sum(X);当dim为2时,返回一个列向量,其第i个元素是X的
第i行的各元素之和。
数据序列求积的函数是prod
6.1 数据统计处理
MATLAB基础与应用教程
【例6.3】已知
求矩阵A的每行元素之和和全部元素之和。
>> A=[9,10,11,12;100,200,300,400;50,60,50,60];
[R,P]=corrcoef(X):返回矩阵X各列的相关系数,计算时把 矩阵X的每列作为一个观测变量,然后求各列的相关系数。
6.1 数据统计处理
MATLAB基础与应用教程
【例6.7】随机抽取15名健康成人,测定血液的凝血酶浓度 及凝血时间,数据如表6.3所示。分析凝血酶浓度与凝血时 间之间的相关性。
MATLAB基础与应用教程
【例6.5】某次射击选拔比赛中小明与小华的10次射击成绩 (单位:环)如表6.1所示,试比较两人的成绩。
>> hitmark=[7,4,9,8,10,7,8,7,8,7;7,6,10,5,9,8,10,9,5,6]; >> mean(hitmark,2) ans =
7.5000 7.5000 >> std(hitmark,[],2) ans = 1.5811 1.9579
第6章 MATLAB数据分析与多项式计算
第6章 MATLAB数据分析与多项式计算
例6-3 求s=1!+2!+…+6!的值。 命令如下: >> x=cumprod(1:6) x=
1 2 6 24 120 720 >> s=sum(x) s=
873
第6章 MATLAB数据分析与多项式计算
6.1.5 标准差与相关系数
1.求标准差
对于具有n个元素的数据序列x1、x2、x3、…、xn, 标准差的计算公式如下:
第6章 MATLAB数据分析与多项式计算
6.1.3 平均值和中值
数据序列的平均值指的是算术平均值。
所谓中值,是指在数据序列中其值的大小恰好处在 中间的元素。例如,数据序列-2,5,7,9,12的中 值为7,即它的大小恰好处于数据序列各个值的中间, 这是数据序列为奇数个的情况。如果为偶数个,则 中值等于中间的两数之平均值。例如,数据序列-2, 5,6,7,9,12中,处于中间的数是6和7,故其中 值为6.5。
1
2
n
V ( ui , ui , , ui )
i 1
i 1
i 1
1
2
n
W ( ui , ui ,, ui )
i 1
i 1
i 1
称V为U的累加和向量,W为U的累乘积向量。
第6章 MATLAB数据分析与多项式计算
在MATLAB中,使用cumsum和cumprod函数能方便 地求得向量和矩阵元素的累加和与累乘积向量,它们 的调用格式相同,其中cumsum函数的调用格式为: ① cumsum(X):返回向量X累加和向量。 ② cumsum(A):返回一个矩阵,其第i列是A的第i列 的累加和向量。 ③ cumsum(A,dim):当dim为1时,该函数等同于 cumsum(A);当dim为2时,返回一个矩阵,其第i行 是A的第i行的累加和向量。
第6章MATLAB数据分析与多项式计算
第6章MATLAB数据分析与多项式计算MATLAB是一种面向科学和工程计算的计算机语言和环境。
它具有强大的数据分析和多项式计算功能,可以用于数据处理、统计分析、曲线拟合、插值计算、解方程等多种应用。
数据分析是从数据中提取有用信息的过程,其中使用MATLAB可以轻松地进行各种数据操作和分析。
MATLAB提供了各种统计分析函数,可以计算数据的统计特征,如均值、方差、标准差、相关系数等。
同时,它还提供了数据绘图功能,可以将数据以直方图、散点图、折线图等形式展示出来,帮助用户更好地理解数据。
多项式计算是利用多项式进行数值计算的过程。
在MATLAB中,可以使用多种方法进行多项式计算,如多项式加减乘除、多项式求值、多项式插值等。
MATLAB提供了丰富的多项式操作函数,可以方便地进行多项式运算和计算。
在数据分析中,多项式计算经常用于曲线拟合和插值计算。
曲线拟合是根据给定的数据点,找出一个与之最接近的曲线。
MATLAB提供了polyfit函数,可以根据给定的数据点和多项式阶数,自动拟合出最优的多项式曲线。
此外,MATLAB还提供了curvefit函数,可以进行更加复杂的曲线拟合,如指数曲线拟合、对数曲线拟合等。
插值计算是根据已知的数据点,通过插值方法找出在这些数据点之间的未知点的近似值。
MATLAB提供了interp1函数,可以根据给定的数据点和插值方法,自动进行插值计算。
此外,MATLAB还提供了interp2函数,可以进行二维插值计算。
除了数据分析和多项式计算功能,MATLAB还具有其他强大的数值计算功能,如数值积分、数值微分、解线性方程组等。
这些功能使得MATLAB成为科学与工程领域中常用的计算工具。
在使用MATLAB进行数据分析和多项式计算时,需要注意数据的有效性和合理性。
数据分析的结果只能作为参考,不能作为绝对的判断依据。
多项式计算的结果也可能存在误差,需要进行适当的精度控制。
总之,MATLAB是一款功能强大的数据分析和多项式计算工具,可以帮助科学家和工程师快速、准确地进行各种数值计算和分析任务。
第6章 MATLAB数据分析与多项式计算_习题答案教学提纲
第6章M A T L A B数据分析与多项式计算_习题答案精品资料第6章 MATLAB数据分析与多项式计算习题6一、选择题1.设A=[1,2,3,4,5;3,4,5,6,7],则min(max(A))的值是()。
BA.1 B.3 C.5 D.72.已知a为3×3矩阵,则运行mean(a)命令是()。
BA.计算a每行的平均值 B.计算a每列的平均值C.a增加一行平均值 D.a增加一列平均值3.在MATLAB命令行窗口输入下列命令:>> x=[1,2,3,4];>> y=polyval(x,1);则y的值为()。
DA.5 B.8 C.24 D.104.设P是多项式系数向量,A为方阵,则函数polyval(P,A)与函数polyvalm(P,A)的值()。
DA.一个是标量,一个是方阵 B.都是标量C.值相等 D.值不相等5.在MATLAB命令行窗口输入下列命令:>> A=[1,0,-2];>> x=roots(A);则x(1)的值为()。
CA.1 B.-2 C.1.4142 D.-1.41426.关于数据插值与曲线拟合,下列说法不正确的是()。
AA.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]所代表的多项式是。
2x2-1仅供学习与交流,如有侵权请联系网站删除谢谢2精品资料3.为了求ax2+bx+c=0的根,相应的命令是(假定a、b、c已经赋值)。
MATLAB 课后部分答案
P77 第2章1、>> x=2;>> y=power(x,3)+(x-0.98).^2./(x+1.35).^3-5*(x+1./x)>> x=4;>> y=power(x,3)+(x-0.98).^2./(x+1.35).^3-5*(x+1./x)7、>> mat=rand(4,5);>> m=1;>> for i=1:2for j=1:5if mat(i,j)>0.3b(m)=mat(i,j);m=m+1;endendend>> b8、>> V=inv(A)>> A=rand(5,5);10、>> A=[1 4 8 13;-3 6 -5 -9;2 -7 -12 -8];B=[5 4 3 -2;6 -2 3 -8;-1 3 -9 7]; >> C=A*B??? Error using ==> mtimesInner matrix dimensions must agree.>> C=A.*BC =5 16 24 -26-18 -12 -15 72-2 -21 108 -5611、>> x=linspace(0,2*pi,125);>> y=cos((x).*(0.5+3*sin(x)./(1+x.^2)));>> plot(x,y)13、>> x=-2:0.1:2;y=-2:0.1:2;>> [X,Y]=meshgrid(x,y);>> Z=X.^2.*exp(-X.^2-Y.^2);>> mesh(Z)建立一个M函数文件mycos.m,程序如下:function y=mycos(x)clear allx=input('请输入x的值')y=1./((x-2).^2+0.1)+1./((x-3).^3+0.01)在命令窗口输入:mycosP123 第3章1、>> x=[446 714 950 1422 1634];y=[7.04 4.28 3.40 2.54 2.13];>> xi=500:500:1500;>> yi=interp1(x,y,xi,'linear')4、>> p=[3 4 7 2 9 12];>> roots(p)8、>> a=[2 4 9;4 2 4;9 4 18];>> [V,D]=eig(a) %V的列向量是相应的特征向量,对角阵D的对角元素为a的特征值10、>> p1=[-1 4 0];p2=[-1 -4 0];>> A=polyder(p1);B=polyder(p2);>> A1=roots(A);B1=roots(B);>> y=4*A1-4*B1-A1.^2-B1.^213、>> syms x y>> Ex=int(int(x.*12.*y.^2,y,0,x),x,0,1)>> Ey=int(int(y.*12.*y.^2,x,y,1),y,0,1)>> Exy=Ex.*Ey14、>> A=rand(4,4);>> [L,U]=lu(A)>> [Q,R]=qr(A)P183 第4章1、>> n=-2*pi:0.01:2*pi;>> N=12;x=cos(n*pi./6);>> X=fft(x,N)>> nx=((n>=0)&(n<=11)); hx=((n>=0)&(n<=5)); >> xn=0.8*nx;hn=hx;>> y=conv(xn,hn)4、>> n=0:11;h=0:5;>> nx=((n>=0)&(n<=11)); hx=((n>=0)&(n<=5)); >> xn=0.8*nx;hn=hx;>> M=length(xn);N=length(hn);>> L=pow2(nextpow2(M+N-1));>> Xk=fft(xn,L);Hk=fft(hn,L);>> Yk=Xk.*Hk;>> yn=ifft(Yk,L)5、>> num=[2 3 0];den=[1 0.4 1];>> [z,p,k]=tf2zp(num,den)6、>> num=[4 15.6 6 2.4 -6.4];den=[3 2.4 6.3 -11.4 6]; >> [z,p,k]=tf2zp(num,den)>> zplane(z,p)7、>> num=[18 0 0 0];den=[18 3 -4 -1];>> [r,p,k]=residuez(num,den)9、建立一个M函数文件,程序如下:clear allN=10;[z,p,k]=buttap(N);[A,B,C,D]=zp2ss(z,p,k);wc1=100;wc2=200;[At,Bt,Ct,Dt]=lp2bp(A,B,C,D,wc1,wc2);[num1,den1]=ss2tf(At,Bt,Ct,Dt);[num2,den2]=impinvar(num1,den1);dimpulse(num2,den2)10、建立一个M函数文件,程序如下:clear allwp=100*2*pi;ws=200*2*pi;Rp=2;Rs=15;Fs=500;[N,Wc]=buttord(wp,ws,Rp,Rs,'s'); %选择滤波器的最小阶数[z,p,k]=buttap(N);[B,A]=zp2tf(z,p,k);[num,den]=bilinear(B,A,Fs); %模拟滤波器的传递函数转换为数字滤波器的传递函数freqz(num,den)11、建立一个M函数文件,程序如下:clear allN=48;w=[0.35,0.65];B=fir1(N,w,'bandpass'); %返回一个N阶的带通滤波器freqz(B) %绘制滤波器的频率响应曲线12、建立一个M函数文件,程序如下:clear allN=37;wc=0.3*pi;B=fir1(N,wc);freqz(B) %绘制滤波器的频率响应曲线13、建立一个M函数文件,程序如下:clear allN=55;F=[0:1/55:1];A=[ones(1,28),zeros(1,N-27)];B=fir2(N,F,A);freqz(B) %绘制滤波器的频率响应曲线15、建立一个M函数文件,程序如下:clear allwc=0.4*pi/(2*pi);N=12;[B,A]=butter(N,wc);%设计N阶截止频率为wc的Butterworth低通数字滤波器的传递函数模型m=dimpulse(B,A,101);stem(m,'.')P277 第6章2、建立一个M函数文件,程序如下:function [h,l]=huffmancode(P)if length(find(P<0))~=0,error('Not a prod.vector')endif abs(sum(P)-1)>10e-10error('Not a prod.vector')endn=length(P);for i=1:n-1for j=i:nif P(i)<=P(j)p=P(i);P(i)=P(j);P(j)=p;endendenddisp('概率分布'),PQ=P;m=zeros(n-1,n);for i=1:n-1[Q,l]=sort(Q);m(i,:)=[l(1:n-i+1),zeros(1,i-1)];Q=[Q(1)+Q(2),Q(3:n),1];endfor i=1:nc(i,:)=blanks(n*n);endc(n-1,n)='0';c(n-1,2*n)='1';for i=2:n-1c(n-i,1:n-1)=c(n-i+1,n*(find(m(n-i+1,:)==1))-(n-2):n*(find(m(n-i+1,:)==1)));c(n-1,n)='0';c(n-i,n+1:2*n-1)=c(n-i,1:n-1);c(n-i,2*n)='1';for j=1:i-1c(n-i,(j+1)*n+1:(j+2)*n)=c(n-i+1,n*(find(m(n-i+1,:)==j+1)-1)+1:n*find(m(n-i+1,:)==j+1));endendfor i=1:nh(i,1:n)=c(1,n*(find(m(1,:)==i)-1)+1:find(m(1,:)==i)*n);ll(i)=length(find(abs(h(i,:))~=32));endl=sum(P.*ll); %计算平均码长在命令窗口中输入:>> P=[0.20 0.15 0.13 0.12 0.1 0.09 0.08 0.07 0.06];>> [h,l]=huffmancode(P)3、建立一个M函数文件,程序如下:function[sqnr,a_quan,code]=u_pcm(a,n)% U_PCM 一个序列均匀的PCM编码.% n=量化级数的数目(偶数).% sqnr=输入信号量化噪声比(偶数)。
matlab课后习题答案1到6章
习题二1.如何理解“矩阵是MATLAB最基本的数据对象”?答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
因此,矩阵是MATLAB最基本、最重要的数据对象。
2.设A和B是两个同维同大小的矩阵,问:(1)A*B和A.*B的值是否相等?答:不相等。
(2) A./B和B.\A的值是否相等?答:相等。
(3)A/B和B\A的值是否相等?答:不相等。
(4)A/B和B\A所代表的数学含义是什么?答:A/B等效于B的逆右乘A矩阵,即A*inv(B),而B\A等效于B矩阵的逆左乘A矩阵,即inv(B)*A。
3.写出完成下列操作的命令。
(1)将矩阵A第2~5行中第1, 3, 5列元素赋给矩阵B。
答:B=A(2:5,1:2:5); 或B=A(2:5,[1 3 5])(2)删除矩阵A的第7号元素。
答:A(7)=[](3)将矩阵A的每个元素值加30。
答:A=A+30;(4)求矩阵A的大小和维数。
答:size(A);ndims(A);(5)将向量t的0元素用机器零来代替。
答:t(find(t==0))=eps;(6)将含有12个元素的向量x转换成34⨯矩阵。
答:reshape(x,3,4);(7)求一个字符串的ASCII码。
答:abs(‘123’); 或double(‘123’);(8)求一个ASCII码所对应的字符。
答:char(49);4.下列命令执行后,L1、L2、L3、L4的值分别是多少?A=1:9;B=10-A;...L1=A==B;L2=A<=5;L3=A>3&A<7;L4=find(A>3&A<7);答:L1的值为[0, 0, 0, 0, 1, 0,0, 0, 0]L2的值为[1, 1, 1, 1,1, 0, 0, 0, 0]L3的值为[0, 0, 0, 1,1, 1, 0, 0, 0]L4的值为[4, 5, 6]5.已知23100.7780414565532503269.5454 3.14A-⎡⎤⎢⎥-⎢⎥=⎢⎥⎢⎥-⎣⎦完成下列操作:(1)取出A的前3行构成矩阵B,前两列构成矩阵C,右下角32⨯子矩阵构成矩阵D,B与C的乘积构成矩阵E。
matlab课后习题答案1到6章
欢迎共阅习题二1.如何理解“矩阵是MATLAB 最基本的数据对象”? 答:因为向量可以看成是仅有一行或一列的矩阵,单个数据(标量)可以看成是仅含一个元素的矩阵,故向量和单个数据都可以作为矩阵的特例来处理。
(2) 删除矩阵A 的第7号元素。
答:A(7)=[](3) 将矩阵A 的每个元素值加30。
答:A=A+30;(4) 求矩阵A 的大小和维数。
答:size(A);ndims(A);(5) 将向量 t 的0元素用机器零来代替。
答:t(find(t==0))=eps; (6) 将含有12个元素的向量 x 转换成34⨯矩阵。
答:reshape(x,3,4); (7) 求一个字符串的ASCII码。
答:abs(‘123’); 或E 。
答:B=A(1:3,:); C=A(:,1:2); D=A(2:4,3:4);E=B*C;(2) 分别求E<D 、E&D 、E|D 、~E|~D 和find(A>=10&A<25)。
答:E<D=010001⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,E&D=110111⎡⎤⎢⎥⎢⎥⎢⎥⎣⎦,11⎡⎤⎢⎥答:student(1).id='0001';student(1).name='Tom'; student(1).major='computer';student(1).grade=[89,78,67,90,86,85]; 8.建立单元矩阵B 并回答有关问题。
B{1,1}=1;B{1,2}='Brenden';B{2,1}=reshape(1:9,3,3); B{2,2}={12,34,2;54,21,3;4 ,23,67};(1)size(B)和ndims(B)的值分别是多少?答:size(B) 的值为2, 2。
ndims(B) 的值为2。
(2)B(2)和B(4)的值分别是(2)建立5×6随机矩阵A,其元素为[100,200]范围内的随机整数。
matlab作业六参考答案
matlab作业六参考答案Matlab作业六参考答案在本次作业中,我们将探讨一些与Matlab相关的问题,并给出相应的参考答案。
希望这些答案能够帮助大家更好地理解和掌握Matlab的使用。
一、Matlab基础知识1. 什么是Matlab?Matlab是一种高级技术计算语言和环境,用于数值计算、数据分析和可视化。
它提供了丰富的函数库和工具箱,可以用于各种科学和工程计算任务。
2. 如何定义和访问矩阵?在Matlab中,可以使用方括号定义矩阵。
例如,A = [1 2 3; 4 5 6; 7 8 9]定义了一个3x3的矩阵A。
可以使用A(i, j)来访问矩阵中的元素,其中i和j分别表示行和列的索引。
3. 如何进行矩阵运算?Matlab提供了丰富的矩阵运算函数。
例如,可以使用*运算符进行矩阵乘法,A*B表示矩阵A和B的乘积。
还可以使用.+和.-运算符进行矩阵的逐元素相加和相减。
二、Matlab图形化界面1. 如何绘制函数图像?可以使用plot函数来绘制函数的图像。
例如,可以使用x = linspace(0, 2*pi, 100)生成一个包含100个点的从0到2π的等间距向量,然后使用y = sin(x)计算对应的正弦值,最后使用plot(x, y)绘制图像。
2. 如何设置图像的标题和坐标轴标签?可以使用title函数设置图像的标题,xlabel和ylabel函数设置坐标轴的标签。
例如,可以使用title('Sin Function')设置标题,xlabel('x')和ylabel('y')设置坐标轴的标签。
三、Matlab编程1. 如何定义函数?可以使用function关键字定义函数。
例如,可以使用以下语法定义一个计算两个数之和的函数:function sum = add(a, b)sum = a + b;end2. 如何调用函数?可以使用函数名和参数列表调用函数。
第6章_MATLAB数值计算_part2
6.2.2 数值积分
b a b
f ( x)dx p1 ( x)dx (b a )
a
b
f (a ) f (b) 2 ab
( f (a) 4 f ( ) f (b)) 数值积分方法 6 2 n 1 求解定积分的数值方法多种多样, h T f ( a ) f ( b ) 2 f ( a kh ) n 如简单的梯形法、辛普生 2 k 1 (Simpson)• 法、牛顿-柯特斯 h S ( f (x ) 4 f (x ) f ( x 1)) (Newton-Cotes)法等都是经常采 6 用的方法。 h f (a) 4 f ( x ) 2 f ( x ) f (b) 基本思想 6
第6章 MATLAB数值计算
6.1 6.2 6.3 6.4 6.5 数据处理与多项式计算 数值微积分 线性方程组求解 最优化问.1 数值微分(导数) 不关心微分的形式和性质,只关心该微分在一串离散点 的近似值以及所计算的近似值有多大的误差。 MATLAB下求数值导数的两种方法:
I e
0
1
x2
dx
2 被积函数由一个表格定义
在科学实验和工程应用中,函数关系往往是不知道 的,只有实验测定的一组样本点和样本值,这时, 就无法使用quad函数计算其定积分。 在MATLAB中,对由表格形式定义的函数关系的求 定积分问题用trapz(X,Y)函数。 其中向量X、Y定义函数关系Y=f(X)。
值得一提的是,当已知给出的样本数N0不是2 的幂次时,可以取一个N使它大于N0且是2 的幂次,然后利用函数格式fft(X,N)或 fft(X,N,dim)便可进行快速傅立叶变换。这 样,计算速度将大大加快。 相应地,一维离散傅立叶逆变换函数是ifft。 ifft(F)返回F的一维离散傅立叶逆变换; ifft(F,N)为N点逆变换;ifft(F,[],dim)或 ifft(F,N,dim)则由N或dim确定逆变换的点数 或操作方向。
第六章MATLAB数据分析与功能函数
A=
8
1
6
3
5
7
4
9
2
>> [Y,I]=sort(A,2,'descend') Y=
861 753 942 I= 132 321 213
10 点击图形窗口的Tool\Data Statistics,对数据进行分析
6.1.2 用于场论的数据分析函数
1.两个向量点积运算dot 2. 两个向量叉积运算cross
7. 求积与累乘积 (和前面所有的数相乘放在现在的位置)
prod(X):返回向量X各元素的乘积。 prod(A):返回一个行向量,其第i个元素是A的第i列的元素乘积。 prod(A,dim):当dim为1时,该函数等同于prod(A);当dim为2时,返回一个 列向量,其第i个元素是A的第i行的各元素乘积。 cumprod(X):返回向量X累乘积向量。 cumprod(A):返回一个矩阵,其第i列是A的第i列的累乘积向量。 cumprod(A,dim):当dim为1时,该函数等同于cumprod(A);当dim为2时, 返回一个向量,其第i行是A的第i行的累乘积向量。
数据序列求和与求积的函数是sum和prod,其使用方法类似。设X是 一个向量,A是一个矩阵,函数的调用格式为: sum(X):返回向量X各元素的和。 sum(A):返回一个行向量,其第i个元素是A第i列的元素和。 sum(A,dim):当dim为1时,该函数等同于sum(A);当dim为2时,返回一 个列向量,其第i个元素是A的第i行的各元素之和。 cumsum(X):返回向量X累加和向量。 cumsum(A):返回一个矩阵,其第i列是A的第i列的累加和向量。 cumsum(A,dim):当dim为1时,该函数等同于cumsum(A);当dim为2时 ,返回一个矩阵,其第i行是A的第i行的累加和向量。
matlab课后习题参考答案
Matlab课后习题部分参考答案习题二2.student=struct('name',{'zhang','wang','li'},'age',{18,21,[] },'email',{['zh ang@','zhang@'],'',''})5、a=[1 0 0;1 1 0;0 0 1];b=[2 3 4;5 6 7;8 9 10];c=[a b]d=[a;b]c =1 0 023 41 1 0 5 6 70 0 1 8 9 10d =1 0 01 1 00 0 12 3 45 6 78 9 1010、reshape(c,2,9)1 0 1 0 1 5 3 9 71 0 0 02 8 6 4 10 reshape(d,2,9)ans =1 0 5 0 0 6 0 1 71 2 8 1 3 9 0 4 10 (注意:重新排列矩阵,是将原来的矩阵按列排序)11、a.’12、a+b a.*ba\b (即inv(a)*b,考试时,要求能自己手算出a的逆)ans =2 3 43 3 38 9 1013、c=4*ones(3);a>=cb>=c14.strcat('The picture is ','very good')a=['The picture is ','very good']18.double('very good')1.norm(A),det(A),rank(A)2.b=[1 1 1 1 1];c=b';a=[17,24,1,8,50;23,5,7,14,49;4,6,13,20,43;10,12,19,21,62;11,18,25,2,56]; x=a\c习题四1、a=14*rand(1,10)-5;for i=1:9max=i;for j=i+1:10if a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;enda将上述脚本保存为script41.m2、function y=function42(n)3*randn(1,n)+3;for i=1:n-1max=i;for j=i+1:nif a(j)>a(max)max=j;endendtemp=a(i);a(i)=a(max);a(max)=temp;endy=a;将上述函数保存为function42.m 3、r=input(‘please input 1/2: ’);if r= =1script41;elsen=input(‘please input the length: ’);y=funtion42(n);end4.function f=function1(x,y)if y==1f=sin(x);elseif y==2f=cos(x);elsef=sin(x).*cos(x);end在命令窗口调用函数f=function1(1,3) 5.function result=function3(x,n)result=0;for i=1:nresult=result+sin(x.*i)+(-1).^i.*cos(i.*x); endfunction result=function4(n,t)result=0;A=[1 2 3;0 1 2;0 0 1];for i=1:nresult=result+A*i.*exp(A*i.*t);end习题五3.x1=-2:0.01:2;x2=-2:0.01:2;y1=x1.*sin(x2);y2=x2.*cos(x1);plot3(x1,x2,y 1,'-d',x1,x2,y2,'-d')14、x=8*rand(1,100)-2;y=reshape(x,10,10);save mydata.mat yclearclcload mydatak=y>ones(10);totel=0;for i=1:100if k(i)==1totel=totel+1;endend15、x=rand(5); %生成5*5均匀分布的随机矩阵(该处只作举例,未按题目要求)fid=fopen(‘text.txt’,’w’);count=fwrite(fid,x,’int32’); closestatus=fclose(fid);清除内存,关闭所有窗口fid=fopen(‘text.txt’,’r’);x=fread(fid,[5,5],’int32’); closestatus=fclose(fid); inv(x)16.随便生成一个矩阵,x1=-1:0.2:0.8;x2=-1:0.2:0.8;y1=x1.*sin(x2);y2=x2.*cos(x1);a=reshape([y1;y2],10,10);fid=fopen('table.txt','w'); fprintf (fid,‘%f’,a); fclose(fid) ;清除内存,关闭所有窗口a=fscanf('table.txt','%f') ; exp(a) ;fclose(fid) ;习题六1.c=ploy2str(A);B=[2,0,0,1,3,5];2.x=1:10;B=ployval(A,x);。
matlab习题6答案
matlab习题6答案Matlab习题6答案Matlab是一种广泛应用于科学计算和工程领域的高级编程语言和环境。
它以其强大的数值计算和数据可视化功能而闻名于世。
在Matlab的学习过程中,习题是提高编程技能和理解语言特性的重要方式。
在本文中,我将为大家提供Matlab习题6的答案,帮助大家更好地理解和掌握Matlab编程。
习题1:编写一个Matlab函数,计算给定向量的均值和标准差。
函数的输入参数为一个向量,输出为该向量的均值和标准差。
解答:```matlabfunction [mean_value, std_value] = calculate_stats(vector)mean_value = mean(vector);std_value = std(vector);end```习题2:编写一个Matlab函数,计算给定矩阵的特征值和特征向量。
函数的输入参数为一个矩阵,输出为该矩阵的特征值和特征向量。
解答:```matlabfunction [eigenvalues, eigenvectors] = calculate_eigen(matrix)[eigenvectors, eigenvalues] = eig(matrix);end```习题3:编写一个Matlab函数,计算给定矩阵的逆矩阵。
函数的输入参数为一个矩阵,输出为该矩阵的逆矩阵。
解答:```matlabfunction inverse_matrix = calculate_inverse(matrix)inverse_matrix = inv(matrix);end```习题4:编写一个Matlab函数,实现矩阵的转置操作。
函数的输入参数为一个矩阵,输出为该矩阵的转置矩阵。
解答:```matlabfunction transpose_matrix = calculate_transpose(matrix)transpose_matrix = matrix';end```习题5:编写一个Matlab函数,计算给定向量的累积和。
MATLAB编程与工程应用——第6章 MATLAB数据分析与多项式计算
MATLAB数据分析与多项式计算
二、二维数据插值
某实验对一根长10 10米的钢轨进行热源的温度传播测 例6.10 某实验对一根长10米的钢轨进行热源的温度传播测 表示测量点0:2.5:10( 0:2.5:10(米 试。用x表示测量点0:2.5:10(米),用h表示测量时间 0:30:60(秒 表示测试所得各点的温度(℃) (℃)。 0:30:60(秒),用T表示测试所得各点的温度(℃)。试用 线性插值求出在一分钟内每隔20 20秒 钢轨每隔1 线性插值求出在一分钟内每隔20秒、钢轨每隔1米处的温 TI。 度TI。 命令如下: x=0:2.5:10; h=[0:30:60]'; T=[95,14,0,0,0;88,48,32,12,6;67,64,54,48,41]; xi=[0:10]; hi=[0:20:60]'; TI=interp2(x,h,T,xi,hi) exp6_10.m
MATLAB数据分析与多项式计算
6.2 数据插值
二、二维数据插值
z1=interp2(x,y,z,x1,y1,'method') 其中x,y是两个向量,分别描述两个参数的采样点, z是与参数采样点对应的函数值, x1,y1是两个向量或标量,描述欲插值的点。 z1是根据相应的插值方法得到的插值结果。 method的取值与一维插值函数相同。 x,y,z也可以是矩阵形式。 x1,y1的取值范围不能超出x,y的给定范围,否则,会给 出“NaN”错误。
MATLAB数据分析与多项式计算
MATLAB数据分析与多项式计算
一、最大值和最小值
格式3 3. 格式3 U=max(x,y) U=min(x,y) 如果x为标量,则y可为标量、向量或矩阵 如果x为向量或矩阵,则y可为标量或与x同维的向量或 矩阵 x,y是两个同型的向量或矩阵,结果U是与x,y同型的向 量或矩阵,U的每个元素等于x,y对应元素的较大/小者。 如果y是一个标量,结果U是与x同型的向量或矩阵,U 的每个元素等于x对应元素和y中的较大/小者。 例6.3 求两个2×3矩阵x, y所有同一位置上的较大元素 求两个2 矩阵x, y所有同一位置上的较大元素 构成的新矩阵p 构成的新矩阵p。exp6_3.m
第6章 MATLAB数值计算_part2
k =0
k +1/ 2
k =1
k
公式: 公式:
数值积分的实现
1.被积函数是一个解析式 被积函数是一个解析式
quad(filename,a,b,tol,trace) quadl(filename,a,b,tol,trace)
filename:被积函数名;a, b积分区间 被积函数名; 被积函数名 积分区间 tol:积分精度;trace:控制是否展现积分过程 :积分精度; :
DX=diff(X):计算向量X的向前差分,DX(i)=X(i+1)-X(i), :计算向量 的向前差分 的向前差分, , i=1,2,…,n-1。 。 DX=diff(X,n):计算 的n阶向前差分。例如, 阶向前差分。 :计算X的 阶向前差分 例如, diff(X,2)=diff(diff(X))。 。 DX=diff(A,n,dim):计算矩阵 的n阶差分,dim=1时(缺省状态 , 阶差分, 缺省状态), :计算矩阵A的 阶差分 时 缺省状态 计算差分; 计算差分。 按列计算差分;dim=2,按行计算差分。 ,
(1) 建立一个函数文件 建立一个函数文件fxy.m: : function f=fxy(x,y) global ki; ki=ki+1; %ki用于统计被积函数的调用次数 用于统计被积函数的调用次数 f=exp(-x.^2/2).*sin(x.^2+y); (2) 调用dblquad函数求解。 调用dblquad函数求解 函数求解。 global ki;ki=0; I=dblquad('fxy',-2,2,-1,1) ki I= 1.57449318974494 ki = 1038
X、Y是两个等长的向量:X=(x1,x2,…,xn), 、 是两个等长的向量 是两个等长的向量: , Y=(y1,y2,…,yn), , x1<x2<…<xn 积分区间是[x1, 。 积分区间是 ,xn]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
精品好文档,推荐学习交流
第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.在MA TLAB命令行窗口输入下列命令:
>> 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.在MA TLAB命令行窗口输入下列命令:
>> A=[1,0,-2];
>> x=roots(A);
则x(1)的值为()。
C
A.1 B.-2 C.1.4142 D.-1.4142
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]所代表的多项式是。
2x2-1
仅供学习与交流,如有侵权请联系网站删除谢谢1
精品好文档,推荐学习交流
3.为了求ax2+bx+c=0的根,相应的命令是(假定a、b、c已经赋值)。
为了将求得的根代回方程进行验证,相应的命令是。
x=roots([a,b,c]),polyval([a,b,c],x)
4.如果被插值函数是一个单变量函数,则称为插值,相应的MA TLAB函数是。
一维,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)=5x2-x+2,P3(x)=x2-0.5,求:
(1)P(x)=P1(x) P2(x)P3(x)。
(2)P(x)=0的全部根。
(3)计算x i=0.2i(i=0,1,2,…,10)各点上的P(x i)。
第二题:
(1):
p1=[0,3,2];
p2=[5,-1,2];
仅供学习与交流,如有侵权请联系网站删除谢谢2
精品好文档,推荐学习交流
p3=[1,0,-0.5];
p=conv(conv(p1,p2),p3)%先将p1与p2乘,再与p3乘,conv函数只能有两个
(2):
x=roots(p)
(3):
a=0:10;
b=0.2*a;
y=polyval(p,b)
3.按表6-4用3次样条方法插值计算0~90º内整数点的正弦值和0~75º内整数点的正切值,然后用5次多项式拟合方法计算相同的函数值,并将两种计算结果进行比较。
表6-4 特殊角的正弦与正切值表
第三题:
(1):
sin(x)函数:
三次样条方法:
x=0:90;
a=[0,15,30,45,60,75,90];
f=[0,0.2588,0.5,0.7071,0.866,0.9659,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,0.2588,0.5,0.7071,0.866,0.9659,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];
仅供学习与交流,如有侵权请联系网站删除谢谢3
精品好文档,推荐学习交流
f=[0,0.2679,0.5774,1,1.732,3.7320];
interp1(a,f,x,'spline')%spline要加单引号,否则错误
5次多项式拟合方法:
x=0:75;
a=[0,15,30,45,60,75];
f=[0,0.2679,0.5774,1,1.732,3.7320];
p=polyfit(a,f,5);
y=polyval(p,x);
plot(x,ans,':o',x,y,'-*')
4.已知一组实验数据如表6-5所示。
表6-5 一组实验数据
求它的线性拟合曲线。
第三题:
x=[165,123,150,123,141];
y=[187,126,172,125,148];
p=polyfit(x,y,1);
q=polyval(p,x);
plot(x,q) 《劝学》教学设计
【教学内容】《劝学》
【课型】新授课
【教学目标】
1.知识与技能:
①指导学生通过翻译课文,积累重要的文言实词、虚词、词类活用、古今异义、文言句式等;背诵默写全文。
②了解本文的议论结构,学习掌握本文的论证方法:比喻论证、正反对比论证;
2.过程与方法:
教师指导,学生通过自主合作探究,掌握本文的文言知识点,并学习掌握本文比喻论证和正反对比论证的论证方法;
3.情感与价值观:
培养学生养成良好的学习态度和正确的学习方法
【教学重点】
1.指导学生积累重要的文言知识点,背诵默写全文;
仅供学习与交流,如有侵权请联系网站删除谢谢4
精品好文档,推荐学习交流
2.了解本文的议论结构,学会本文比喻论证、正反对比的论证方法。
【教学难点】
1.学习运用本文的比喻论证的方法;
2.劝勉学生勤奋学习;培养学生养成良好的学习态度和正确的学习方法
【教学方法】诵读法、讲授法、讨论法、交流法
【教学工具】多媒体课件
【教学课时】两课时
【教学过程】
【第一课时】教学重点:指导学生疏通文意,掌握积累重要的文言知识点
课前布置预习:
让学生提前疏通文意并分类归纳文章的文言知识点,有不明白的地方标注在课本上。
一.导入:
古乐府诗《长歌行》有云:百川东到海,何时复西归?少壮不努力,老大徒伤悲。
培根说过,知识就是力量。
知识推动了人类社会的发展和物质文明的进步。
那么,获取知识的途径是什么?答案只有一个,就是学习。
可以说,人的一生都处于不断的学习中。
大家有没有想过,我们如何把这种无意识的本能转化为自觉的行为,大幅度地提高学习效率呢?这一点,古人已为我们指明了方向,两千多年前的荀子所作的《劝学》就精辟论述了学习的重要性。
二.作者介绍:
荀子(约公元前313—前238)名况, 字卿,战国末期赵国人,曾游学于齐,当过楚国兰陵令。
后来失官居家著书,死后葬于兰陵。
荀子是孔孟之后最著名的儒家学者,是战国时期的思想家、教育家。
他反对迷信天命鬼神,肯定自然规律是不以人们意志为转移的,并提出“制天命而用之”的人定胜天的思想,认为后天环境和教育可以改变人的本性。
仅供学习与交流,如有侵权请联系网站删除谢谢5。