09级MATLAB上机实验练习题1、给出一个系数矩阵A[2 3 4;5 4 1;1 3 2],U=[1 2 3],求出线性方程组的一个精确解。
2、给出两组数据x=[0 0.3 0.8 1.1 1.6 2.3]’y=[0.82 0.72 0.63 0.60 0.55 0.50]’,我们可以简单的认为这组数据在一条衰减的指数函数曲线上,y=C1+C2e-t通过曲线拟合求出这条衰减曲线的表达式,并且在图形窗口画出这条曲线,已知的点用*表示。
3、解线性方程4、通过测量得到一组数据:5、已知一组测量值6、从某一个过程中通过测量得到:分别采用多项式和指数函数进行曲线拟合。
7、将一个窗口分成四个子窗口,分别用四种方法做出多峰函数的表面图(原始数据法,临近插值法,双线性插值法,二重三次方插值法)8、在同一窗口使用函数作图的方法绘出正弦、余弦、双曲正弦、双曲余弦。
分别使用不同的颜色,线形和标识符。
9、下面的矩阵X表示三种产品五年内的销售额,用函数pie显示每种产品在五年内的销售额占总销售额的比例,并分离第三种产品的切片。
X= 19.3 22.1 51.634.2 70.3 82.4 61.4 82.9 90.8 50.5 54.9 59.1 29.4 36.3 47.010、对应时间矢量t ,测得一组矢量y采用一个带有线性参数的指数函数进行拟合,y=a 0+a 1e -t +a 2te -t ,利用回归方法求出拟合函数,并画出拟合曲线,已知点用圆点表示。
11、请创建如图所示的结构数组(9分)12、创建如图所示的元胞数组。
(9分)13、某钢材厂从1990年到2010年的产量如下表所示,请利用三次样条插值的方法计算1999年该钢材厂的产量,并画出曲线,已知数据用‘*’表示。
要求写出达到题目要求的MATLAB 操作过程,不要求计算结果。
14、在一次化学动力学实验中,在某温度下乙醇溶液中,两种化合物反应的产物浓度与反应时间关系的原始数据如下,请对这组数据进行三次多项式拟合,并画出拟合曲线,已知数据如下。
time=[2.5 5.0 7.5 10.0 13.0 17.0 20.0 30.0 40.0 50.0 60.0 70.0] res=[0.29 0.56 0.77 1.05 1.36 1.52 2.00 2.27 2.81 3.05 3.25 3.56]15、请在-2<x<2,-2<y<2的范围内绘制出函数()22y x xe z +-=形成的曲面网线图。
16、请在同一窗口画出两条曲线,y1=sin(x),y2=cos(x),要求添加网格线,x轴标注Independent Variable X,y轴标注Dependent Variable Y1&Y2,标注标题Sine and Cosine Curve,在(1.5,0.3)处标注cos(x),坐标轴设定在x轴[0,2Π],y轴[-0.9,0.9]。
答案1、>> A=[2 3 4;5 4 1;1 3 2];>> U=[1 2 3]';>> X=A\UX =-0.81481.6667-0.59262、>> t=[0 0.3 0.8 1.1 1.6 2.3]';>> y=[0.82 0.72 0.63 0.60 0.55 0.50]';>> E=[ones(size(t)) exp(-t)];>> C=E\yC =0.47600.3413>> x=0:0.01:2.5;>> z=0.4760+0.3413*exp(-x);>> plot(t,y,'O',x,z,'r:')3、>> A=[3 1 0 5;0 -6 7 3;0 4 3 0;2 -1 2 6];>> Y=[2 4 7 8]';>> X=A\YX =-4.82471.39440.47413.01594、>> t=[1 2 3 4 5 6 7 8 9 10]';>> y=[4.842 4.362 3.754 3.368 3.169 3.083 3.034 3.016 3.012 3.005]'; >> E1=[ones(size(t)) exp(-t)];>> C=E1\yC =3.16215.1961>> E2=[ones(size(t)) t.*exp(-t)];>> D=E2\yD =3.00395.0046>> x=1:0.01:10;>> y1=3.1621+5.1961*exp(-x);>> y2=3.0039+5.0046*x.*exp(-x);>> plot(t,y,'O',x,y1,'r:',x,y2,'b-')>> p1=polyfit(t,y,2)p1 =0.0411 -0.6383 5.3937>> p2=polyfit(t,y,3)p2 =-0.0041 0.1085 -0.9493 5.7443 >> y3=polyval(p1,x);>> y4=polyval(p2,x);>> plot(t,y,'O',x,y3,'r:',x,y4,'b-')123456789106、>> t=[0 0.2 0.4 0.6 0.8 1.0 2.0 5.0]';>> y=[1.0 1.51 1.88 2.13 2.29 2.40 2.60 -4.00]';>> p=polyfit(t,y,4)p =-0.0993 0.7935 -2.2841 2.9882 0.9995>> E=[ones(size(t)) exp(-t)];>> C=E\yC =-0.05652.5674>> x=0:0.001:5;>> y1=-0.0565+2.5674*exp(-x);>> y2=polyval(p,x);>> plot(t,y,'O',x,y1,'r:',x,y2,'b-')00.51 1.52 2.53 3.54 4.557、•001 function compare_interp( )•002 %COMPARE_INTERP 不同插值运算的比较•003•004 % 原始数据•005 [x,y] = meshgrid(?3:1:3);•006 z = peaks(x,y);•007 figure(1); clf•008 surfc(x,y,z);•009 title('原始数据')•010 % 进行插值运算•011 [xi, yi] = meshgrid(?3:0.25:3);•012 zi1 = interp2(x,y,z,xi,yi,'nearest');•013 zi2 = interp2(x,y,z,xi,yi,'linear');•014 zi3 = interp2(x,y,z,xi,yi,'cubic');•015 zi4 = interp2(x,y,z,xi,yi,'spline');•016 % 通过可视化结果比较•017 figure(2)•018 subplot(2,2,1);surf(xi,yi,zi1);•019 title('二维插值- ''nearest''')•020 subplot(2,2,2);surf(xi,yi,zi2);•021 title('二维插值- ''linear''')•022 subplot(2,2,3);surf(xi,yi,zi3)•023 title('二维插值- ''cubic''')•024 subplot(2,2,4);surf(xi,yi,zi4)•025 title('二维插值- ''spline''')•026 % 可视化结果•027 figure(3)•028 subplot(2,2,1);contour(xi,yi,zi1) •029 title('二维插值- ''nearest''')•030 subplot(2,2,2);contour(xi,yi,zi2) •031 title('二维插值- ''linear''')•032 subplot(2,2,3);contour(xi,yi,zi3) •033 title('二维插值- ''cubic''')•034 subplot(2,2,4);contour(xi,yi,zi4) •035 title('二维插值- ''spline'''')•>> x=-pi:pi/4:pi;>> y1=sin(x);>> y2=cos(x); >> y3=sinh(x); >> y4=cosh(x);>>plot(x,y1,'rO:',x,y2,'b*-',x,y3,'gs--',x,y4,'k^-.')-4-3-2-101234-15-10-5510159、>> X=[19.3 22.1 51.6;34.2 70.3 82.4;61.4 82.9 90.8;50.5 54.9 59.1;29.4 39.3 47]; >> x=sum(X) x =194.8000 269.5000 330.9000>> explode=[0 0 1]; >> pie(x,explode)42%10、>> t=[ 0 0.3 0.8 1.1 1.6 2.3]';>> y=[0.5 0.82 1.14 1.25 1.35 1.40]';>> E=[ones(size(t)) exp(-t) t.*exp(-t)]E =1.0000 1.0000 01.0000 0.7408 0.22221.0000 0.4493 0.35951.0000 0.3329 0.36621.0000 0.2019 0.32301.0000 0.1003 0.2306>> A=E\yA =1.3974-0.89880.4097>> x=0:0.01:2.5;>> Y=1.3974-0.8988*exp(-x)+0.4097*x.*exp(-x);>> plot(t,y,'O',x,Y,'r-')00.51 1.52 2.511、A=struct('name',{'江明顺','于越忠','邓拓'},'NO',{'071023','060134','050839'});A(1).level=struct('height','176','weight','82')A =1x3 struct array with fields:nameNOlevel>> A(2).level=struct('height','168','weight','74')A =1x3 struct array with fields:nameNOlevel>> A(3).level=struct('height','182','weight','77')A =1x3 struct array with fields:nameNOlevel12、>> B=cell(1,2);>> B{1,1}=struct('date','2007/06/04','billing',[125.7 389.3;254.9 538.5])B =[1x1 struct] []>> B{1,2}=struct('name','maggie','profession','teacher','hobby','dance')B =[1x1 struct] [1x1 struct]>> cellplot(B)13、>> year = 1990:2:2010;>> product = [75.995 91.972 105.711 123.203 131.669 150.697 179.323 203.212 226.505 249.633 256.344];>>p1999 = interp1(year,product,1999,’spline’)>>x = 1990:1:2010;>>y = interp1(year,product,x,'spline');>>plot(year,product,'*',x,y)14、>>X=[2.5 5.0 7.5 10.0 13.0 17.0 20.0 30.0 40.0 50.0 60.0 70.0]; >>Y=[0.29 0.56 0.77 1.05 1.36 1.52 2.00 2.27 2.81 3.05 3.25 3.56];(>>P=polyfit(X, Y, 3);>>x=2.5:0.1:70;>>y=polyval(P,x)>>plot(X,Y,’O’,x,y)>>gird on15、>>clear>>x=-2:0.2:2;>>y=-2:0.2:2;>> [X,Y]=meshgrid(x,y);>>Z=X.*exp(-X.^2-Y.^2);>>mesh(X,Y,Z)16、》x=0:pi/10:2*pi;》y1=sin(x);》y2=cos(x);》plot(x,y1,x,y2) ;》grid on》xlabel(‘Independent Variable X’);》ylabel(‘Dependent Variable Y1&Y2’);》title(‘Sine and Cosine Curve’)》text(1.5,0.3,’cos(x)’);》axis([0 2*pi -0.9 0.9])。