matlab上机练习答案
- 格式:doc
- 大小:102.00 KB
- 文档页数:6
实验一MA TLAB的基本命令与基本函数1已知矩阵a =11 12 13 1421 22 23 2431 32 33 3441 42 43 44求(1) A(:,1) (2) A(2,:)(3) A(:,2:3) (4) A(2:3,2:3)(5) A(:,1:2:3) (6) A(2:3)(7) A(:) (8) A(:,:)(9) ones(2,2) (10) eye(2)(11) [A,[ones(2,2);eye(2)]](12) diag(A) (13) diag(A,1)(14) diag(A,-1) (15) diag(A,2)2(1)输入如下矩阵A0π/3A=π/6 π/2(2) 求矩阵B1,B1中每一元素为对应矩阵A中每一元素的正弦函数(3) 求矩阵B2, B2中每一元素为对应矩阵A中每一元素的余弦函数(4) 求B12+B22(5) 求矩阵A的特征值与特征矢量:称特征矢量为M,而特征值矩阵为L(6) 求Msin(L)M-13已知水的黏度随温度的变化公式为μ=μ0/(1+at+bt2)其中μ0=1.785×10-3,a=0.03368,b=0.000221,求水在0,20,40,80℃时的黏度。
程序如下:miu0=1.785e-3;a=0.03368;b=0.000221;t=0:20:80miu=miu0./ (1+a*t+b*t.^2)(2)一个长管,其内表面半径为a,温度为Ta ;外表面半径为Tb;则其径向和切向应力可分别表示为:⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-⎪⎭⎫ ⎝⎛⎪⎪⎭⎫ ⎝⎛+----=⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-⎪⎭⎫ ⎝⎛⎪⎪⎭⎫ ⎝⎛----=r b a b r b a b a a b v T T E r b a b r b a b a a b v T T E b a t b a r ln ln 11)/ln()1(2)(ln ln 1)/ln()1(2)(2222222222ασασ式中r 为管子的径向坐标,E 为管子材料的弹性模量,ɑ为热膨胀系数。
三、假设已知矩阵A ,试给出相应的MATLAB 命令,将其全部偶数行提取出来,赋给B 矩阵,用magic(8)A =命令生成A 矩阵,用上述命令检验一下结果是不是正确。
>> A=magic(8) A =64 2 3 61 60 6 7 57 9 55 54 12 13 51 50 16 17 47 46 20 21 43 42 24 40 26 27 37 36 30 31 33 32 34 35 29 28 38 39 25 41 23 22 44 45 19 18 48 49 15 14 52 53 11 10 56 8 58 59 5 4 62 63 1 >> B=A(2:2:end,:)B =9 55 54 12 13 51 50 16 40 26 27 37 36 30 31 33 41 23 22 44 45 19 18 48 8 58 59 5 4 62 63 1五、选择合适的步距绘制出下面的图形。
(1))/1sin(t ,其中)1,1(-∈t ; (2))tan(sin )sin(tan t t -,其中),(ππ-∈t 。
1.>> t=[-1:0.0001:1];y=sin(1./t);plot(t,y) Warning: Divide by zero. >>2.>> t=[-pi:0.001:pi];y=sin(tan(t))-tan(sin(t));plot(t,y) >>七、试求出如下极限。
(1)x xx x 1)93(lim +∞→; (2)11lim00-+→→xy xy y x ; (3)22)()cos(1lim222200yx y x ey x y x +→→++-。
(1)>> syms x;f=(3^x+9^x)^(1/x);limit(f,x,inf)ans =9(2)>> syms x y;f=x*y/(sqrt(x*y+1)-1);limit(limit(f,x,0),y,0) ans =2(3)>> syms x y;f=(1-cos(x^2+y^2))/(x^2+y^2)*exp(x^2+y^2);limit(limit(f,x,0),y,0) ans =0九、假设⎰-=xytt ey x f 0d ),(2,试求222222yf yx f xf y x ∂∂+∂∂∂-∂∂。
15、今有多项式P1(x)=x4-2x+1,P2(x)=x2+4x-0.5,要求先求得P(x)=P1(x)+P2(x),然后计算xi=0.2*i各点上的P(xi)(i=0,1,2,…,5)值。
p1=[1.0 0.0 0.0 -2.0 1.0];>> p2=[0.0 0.0 1.0 4.0 -0.5];>> p1x=poly2sym(p1);p2x=poly2sym(p2);>> p=p1x+p2xp =x^4+2*x+1/2+x^2>> x=0:5;>> x.^4+2*x+1/2+x.^2ans =0.5000 4.5000 24.5000 96.5000 280.5000 660.50001、试个MATLAB的工作空间中建立以下2个矩阵:A=[1 2]1234B⎡⎤=⎢⎥⎣⎦,求出矩阵A和B的乘积,并将结果赋给变量C。
>> A=[1 2]A =1 2>> B=[1 23 4]B =1 23 4>> C=A*BC =7 102、利用MATLAB提供的帮助信息,了解inv命令的调用格式,并作简要说明。
help invINV Matrix inverse.INV(X) is the inverse of the square matrix X.A warning message is printed if X is badly scaled ornearly singular.See also SLASH, PINV, COND, CONDEST, LSQNONNEG, LSCOV. Overloaded methodshelp gf/inv.mhelp zpk/inv.mhelp tf/inv.mhelp ss/inv.mhelp lti/inv.mhelp frd/inv.mhelp sym/inv.mhelp idmodel/inv.m3、使用help命令查询函数plot的功能以及调用方法,然后利用plot命令绘制函数y=sin(x)的图形,其中0xπ≤≤。
MATLAB上机实验练习题及答案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、在一次化学动力学实验中,在某温度下乙醇溶液中,两种化合物反应的产物浓度与反应时间关系的原始数据如下,请对这组数据进行三次多项式拟合,并画出拟合曲线,已知数据如下。
第二、三次上机练习:目的:运行课本第四章及课堂上讲过的例子,掌握Matlab 的流程控制语句、函数及脚本文件的编程、调试方法。
作业:1、 完成下列操作:1) 求[100,999]之间能被21整除的个数。
2) 建立一个字符串向量(要求字符串向量中必须包含自己的姓名首字母,大小写均可),删除其中的大写字母2. 编写脚本文件,实现用magic(6)产生一矩阵,用for 循环指令求解其所有元素的和。
3. 定义一个函数文件,求∑=ni m i 1,要求在函数文件中包含能够通过help 查询到的说明;然后调用该函数文件求∑∑∑===++101501210011k k k k k k 的值。
4. 已知)7.1cos(12ln )7.1sin(++++=x xx y π,当x 取-3.0,-2.9,-2.8,…,2.8,2.9,3.0时, 1) 求各点的函数值;2) 求这些数据的平均值;5、求分段函数的值。
222603565231x x x x y x x x x x x x ⎧+-<≠-⎪=-+≤<≠≠⎨⎪--⎩, 且, 0且及, 其它用if 语句实现,分别输出x=-5.0,-3.0,1.0,2.0,2.5时的值。
6、输入一个百分制成绩,要求输出成绩等级A 、B 、C 、D 、E 。
其中90分~100分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。
要求:分别用if 语句和switch 语句实现。
7、根据222221111...,6123n ππ=++++求的近似值。
当n 分别取100、1000、10000时,结果是多少?(要求:分别用循环结构和向量运算来实现)8、已知n=1时,f 1=1;n=2时,f 2=0;n=3时,f 3=1;n>3时,f n =f n-1 -2f n-2+ f n —3; 求f 1~ f 100中,最大值、最小值以及各数之和。
Matlab上机练习⼀答案Matlab 上机练习⼀班级学号姓名按要求完成题⽬,并写下指令和运⾏结果。
(不需要画图)1、求下列联⽴⽅程的解=+-+-=-+=++-=--+41025695842475412743w z y x w z x w z y x w z y x >> a=[3 4 -7 -12;5 -7 4 2;1 0 8 -5;-6 5 -2 10];>> b=[4;4;9;4];>> c=a\bc =5.22264.45701.47181.59942、设 ??++=)1(sin 35.0cos 2x x x y ,把x=0-2π间分为101点,画出以x 为横坐标,y 为纵坐标的曲线。
>> x=linspace(0,2*pi,101);>> y=cos(x)*(0.5+(1+x.^2)\3*sin(x));>> plot(x,y,'r')3、产⽣8×6阶的正态分布随机数矩阵R1, 求其各列的平均值、和、乘积。
并求该矩阵全体数的平均值。
(mean var )a=randn(8,6)mean(a)var(a)k=mean(a)k1=mean(k)i=ones(8,6)i1=i*k1i2=a-i1i3=i2.*i2g=mean(i3)g2=mean(g)或者u=reshape(a,1,48);p1=mean(u)p2=var(u)4、绘制)(222y x e x z +-=在定义域x=[-2,2],y=[-2,2]内的曲⾯。
(利⽤meshgrid )x=-2:2;y=x;[X,Y]= meshgrid(x,y);Z=X^2*exp(-(X^2+Y^2));mesh(X,Y,Z)5、求代数⽅程3x 5+4x 4+7x 3+2x 2+9x+12=0的所有根。
(利⽤roots 函数)p=[3 4 7 2 9 12];roots(p)6、把1开五次⽅,并求其全部五个根。
上机练习一参考解答一、实验目的1、 熟悉Matlab 编程2、 体会数学上恒等,算法上不一定恒等二、实验内容1. Using the Taylor polynomial of degree nine and three-digit rounding arithmetic to find an approximationto 5-e by each of the following methods.(A) ∑=--≈905!)5(n n n e , (B) ∑=-≈=9055!5/11n nn e e An approximate value of 5-e correct to three digits is 31074.6-⨯. Which formula, (A) or (B), gives the most accuracy, and why?1) 算法基础利用x e 的Taylor 公式00!!n nk x n n x x e n n ∞===≈∑∑,x -∞<<+∞ (1)及001/1/1/!!n nk x x n n x x e e n n ∞-====≈∑∑,x -∞<<+∞, (2)其中k 是根据精度要求给定的一个参数。
在本题中将k 取为9, x 取为-5或5即可由公式(1)或(2)得到5-e 的近似计算方法(A )或(B )。
2) 程序下述程序用公式(A )及(B )分别在Matlab 许可精度下及限定在字长为3的算术运算情况下给出5-e的近似计算结果,其中results_1, results_2为用方法(A )在上述两种情况下的计算结果,err_1, err_2为相应的绝对误差;类似的,results_3, results_4为用方法(B )在上述两种情况下的计算结果,err_3, err_4为相应的绝对误差;具体程序如下:% Numerical Experiment 1.1 % by Xu Minghua, May 17, 2008 clc; %Initialize the data x=-5; k=9; m=3; %three-digit rounding arithmetic %------------------------------------ % Compute exp(x) by using Method (A) % with the computer precision results_1=1; power_x=1; for i=1:k factor_x=x/i; power_x=power_x*factor_x; results_1=results_1+power_x; end results_1 err_1=abs(exp(x)-results_1)%------------------------------------% Compute exp(x) by using Method (A) % with the 3-digits precisionresults_2=1;power_x=1;for i=1:kfactor_x=digit(x/i,m);power_x=digit(power_x*factor_x,m); results_2=digit(results_2+power_x,m); endresults_2err_2=abs(exp(x)-results_2)%------------------------------------% Compute exp(x) by using Method (B) % with the computer precisiont=-x;results_3=1;power_x=1;for i=1:kfactor_x=t/i;power_x=power_x*factor_x;results_3=results_3+power_x; endresults_3=1/results_3err_3=abs(exp(x)-results_3)%------------------------------------% Compute exp(x) by using Method (B) % with the 3-digits precisiont=-x; results_4=1;power_x=1;for i=1:kfactor_x=digit(t/i,m);power_x=digit(power_x*factor_x,m);results_4=digit(results_4+power_x,m); endresults_4=digit(1/results_4,m)err_4=abs(exp(x)-results_4)%------------------------------------上述主程序用到一个子程序digit.m, digit(x,m)的作用是将x四舍五入成m位数。
实验一MA TLAB的基本命令与基本函数
1已知矩阵
a =
11 12 13 14
21 22 23 24
31 32 33 34
41 42 43 44
求
(1) A(:,1) (2) A(2,:)
(3) A(:,2:3) (4) A(2:3,2:3)
(5) A(:,1:2:3) (6) A(2:3)
(7) A(:) (8) A(:,:)
(9) ones(2,2) (10) eye(2)
(11) [A,[ones(2,2);eye(2)]]
(12) diag(A) (13) diag(A,1)
(14) diag(A,-1) (15) diag(A,2)
2
(1)输入如下矩阵A
0π/3
A=π/6 π/2
(2) 求矩阵B1,B1中每一元素为对应矩阵A中每一元素的正弦函数
(3) 求矩阵B2, B2中每一元素为对应矩阵A中每一元素的余弦函数
(4) 求B12+B22
(5) 求矩阵A的特征值与特征矢量:称特征矢量为M,而特征值矩阵为L
(6) 求Msin(L)M-1
3已知水的黏度随温度的变化公式为
μ=μ0/(1+at+bt2)
其中μ0=1.785×10-3,
a=0.03368,b=0.000221,
求水在0,20,40,80℃时的黏度。
程序如下:
miu0=1.785e-3;
a=0.03368;
b=0.000221;
t=0:20:80
miu=miu0./ (1+a*t+b*t.^2)
(2)一个长管,其内表面半径为a,温度为T
a ;外表面半径为T
b
;则其径向和
切向应力可分别表示为:
⎥⎦⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-⎪⎭⎫ ⎝⎛⎪⎪⎭⎫ ⎝⎛+----=⎥⎦
⎤⎢⎣⎡⎪⎭⎫ ⎝⎛-⎪⎭⎫ ⎝⎛⎪⎪⎭⎫ ⎝⎛----=r b a b r b a b a a b v T T E r b a b r b a b a a b v T T E b a t b a r ln ln 11)/ln()1(2)(ln ln 1)/ln()1(2)(2222222222ασασ式中r 为管子的径向坐标,E 为管子材料
的弹性模量,ɑ为热膨胀系数。
沿径向管壁的温度分布为:
)
/ln()/ln()(a b r b T T T T b a b -+= 用MATLAB 表达形式写出该方程并用如下值进行验证:
ɑ=1.2x10-5,E=3x107,v=0.3,T a =500,T b =300 ,a=0.25,b=0.5,r=0.375。
[答案:r σ= -8011.5,t σ= 5231.9, T =383.0075]
4 创建符号矩阵
(1) A =
[ a, 2*b]
[3*a, 0]
并利用指令修改A 矩阵为A1
A1 =
[ (c), 2*b]
[ 3*(c), 0]
(2)创建符号表达式f= 2x 3+3x 2-5x; g= x 3+x-7;m=y+2x;
并计算h=f+g ,h1=f-gm
>> syms x ,y
>> f= 2*x^3+3*x^2-5*x, g= x^3+x-7; m=y+2*x;
>>h=f+g; h1=f-g*m
h=3*x^3+3*x^2-4*x-7
h1 =2*x^3+3*x^2-5*x-(x^3+x-7)*(y+2*x)
5﹑A=sym(′[1/x,1/(x+1);1/(x+2),1/(x+3)]′);
B=sym(′[x,1;x+2,0]′);
C=B-A
D=a\b
则显示:
C=
x-1/x 1-1/(x+1)
x+2-1/(x+2)-1/(x+3)
D=
-6*x-2*x^3-7*x^2 1/2*x^3+x+3/2*x^2
6+2*x^3+10*x^2+14*x-2*x^2-3/2*x-1/2*x^3
6
7已知矩阵B=[1.2 3 5 0.9;5 1.7 5 6;3 9 0 1;1 2 3 4],求
(1)B的特征多项式
(2)特征多项式中未知数为2 时的值
(3)特征多项式的根
(4)特征多项式的导数
(1)p=poly (B)
p1=poly2sym (p)
polyval (p,2)
(3)roots(p)
8 求下列函数的极限
(1)lim(x2/sin2(x/3)) x →0
(2)lim((tanx-sinx)/sin3x) x →0
(3)lim(1-2/x)x x →∞
(4)lim(1+cosx) 3secx x →л/2
limit (x^2/(sin(x/3)) ^2,x,0) =9
limit((tan(x)-sin(x))/sin3x)
9 求下列函数的积分
(1)x2/sin2(x/3)
(2)(tanx-sinx)/sin3x
10求下列函数的定积分
(1)(x+sinx)/(1+cosx) [0,pi/2]
(2)ln(1+tanx ) [0,pi/4]
11 解线性方程组
a1x+b1y+c1z=d1
a2x+b2y+c2z=d2
a3x+b3y+d3z=d3
其中a i, b i, c i, d i为常数, x, y, z为变量
程序:syms x y z a1 b1 c1 a2 b2 c2 a3 b3 c3 d1 d2 d3
g1='a1*x+b1*y+c1*z=d1 '
g2='a2*x+b2*y+c2*z=d2 '
g3=' a3*x+b3*y+d3*z=d3'
[x,y,z]=solve(g1,g2,g3)
x =
-(d2*c1*b3-c2*d1*b3-d3*b1*d2+d3*d1*b2+d3*b1*c2-d3*c1*b2)/(a1*b3*c2+b1*a2*d3-b1*a3* c2-a1*d3*b2-c1*a2*b3+c1*a3*b2)
y =
-(-a2*d3*d1+a2*d3*c1+d2*a1*d3-c2*a1*d3-d2*a3*c1+c2*a3*d1)/(a1*b3*c2+b1*a2*d3-b1*a3* c2-a1*d3*b2-c1*a2*b3+c1*a3*b2)
z =
(a1*b3*d2+b1*a2*d3-b1*a3*d2-a1*d3*b2-d1*a2*b3+d1*a3*b2)/(a1*b3*c2+b1*a2*d3-b1*a3*c 2-a1*d3*b2-c1*a2*b3+c1*a3*b2)
12
A=[5 6 0 0 0
1 5 6 0 0
0 1 5 6 0
0 0 1 5 6
0 0 0 1 5];
B=[1 0 0 0 1]';
R_A=rank(A)%求秩
X=A\B%求解
运行后结果如下
R_A=
5
X=
2.2662
-1.7218
1.0571
-0.5940
0.3188
13 求解以下微分方程的通解与特解.
(1) dy/dx=y+sinx y |x= /2=1
>> syms x y
>> S=dsolve('Dy=sin(x)+y','y(pi/2)=1' ,'x')
S =
-1/2*cos(x)-1/2*sin(x)+3/2*exp(x)/(cosh(1/2*pi)+sinh(1/2*pi))
14绘图
使用子图subplot绘制
x = 0:.1:2*pi; y1=sin(x) 红色,点划线
y2=cos(2x)+e x 蓝色实线
y3=e2x 黑色实线
y4=sin(2x)绿色实线
并各自加标题(内容自定)
x=0:0.1:2*pi;
y1=sin (x);
y2=cos(2*x)+exp(x)
y3= exp(2*x)
y4=sin(2x)
subplot (2,2,1), plot (x,y1,'-.r')
subplot (2,2,2), plot (x,y2,'b')
subplot (2,2,3), plot (x,y3,'k')
subplot (2,2,4), plot (x,y4,'g')
2﹑用多项式最小二乘拟合,求电阻R与温度t之间的关系R=at+b.
并且绘制拟合曲线与实验曲线。
t=[20.5 32.5 51 73 95.]; R=[765 826 873 942 1032]。