MATLAB上机练习(2)

合集下载

matlab习题二带答案

matlab习题二带答案

matlab习题二带答案Matlab习题二带答案Matlab是一种强大的数值计算和科学编程软件,广泛应用于各个领域的科学研究和工程实践中。

掌握Matlab的使用对于科学家和工程师来说至关重要。

为了帮助大家更好地掌握Matlab,下面将介绍一些常见的Matlab习题,并提供相应的答案。

1. 习题一:计算平均值编写一个Matlab函数,输入一个向量,输出该向量的平均值。

答案:```matlabfunction avg = computeAverage(vector)avg = sum(vector) / length(vector);end```2. 习题二:矩阵操作编写一个Matlab函数,输入两个矩阵A和B,输出它们的乘积C。

答案:```matlabfunction C = matrixMultiplication(A, B)[m, n] = size(A);[~, p] = size(B);C = zeros(m, p);for i = 1:mfor j = 1:pfor k = 1:nC(i, j) = C(i, j) + A(i, k) * B(k, j);endendendend```3. 习题三:图像处理编写一个Matlab函数,输入一张彩色图像,输出该图像的灰度图像。

答案:```matlabfunction grayImage = convertToGray(image)grayImage = rgb2gray(image);end```4. 习题四:数据拟合给定一组数据点(x, y),编写一个Matlab函数,拟合这些数据点为一条直线,并返回拟合直线的斜率和截距。

答案:```matlabfunction [slope, intercept] = fitLine(x, y)n = length(x);sx = sum(x);sy = sum(y);sxy = sum(x .* y);sxx = sum(x .* x);slope = (n * sxy - sx * sy) / (n * sxx - sx^2);intercept = (sy - slope * sx) / n;end```5. 习题五:数值积分编写一个Matlab函数,输入一个函数f(x)和积分区间[a, b],输出该函数在该区间上的数值积分结果。

matlab上机习详解_试题答案

matlab上机习详解_试题答案

P 第一次实验答案1. 设要求以0.01秒为间隔,求出y 的151个点,并求出其导数的值和曲线。

clc clearx=0:0.01:1.5;y=sqrt(3)/2*exp(-4*x).*sin(4*sqrt(3)*x+pi/3)y1=diff(y) subplot(2,1,1) plot(x,y)subplot(2,1,2) plot(x(1:150),y1)2绘制极坐标系下曲线(a,b,n 自定数据)clc clear a=10; b=pi/2; n=5;theta=0:pi/100:2*pi; rho=a*cos(b+n*theta); polar(theta,rho)3. 列出求下列空间曲面交线的程序clc clearx=[-5:0.5:5];[X,Y]=meshgrid(x); z1=X.^2-2*Y.^2;z2=X.*2-Y.*3; xlabel('x') ylabel('y') zlabel('z') surf(X,Y,z1) hold onsurf(X,Y,z2)k=find(abs(z1-z2)<0.5); x1=X(k) y1=Y(k)z3=x1.^2-2*y1.^2 hold onplot3(x1,y1,z3,'*')4、设 ⎥⎦⎤⎢⎣⎡++=)1(sin 35.0cos 2x x x y 把x=0~2π间分为101点,画出以x 为横坐标,y为纵坐标的曲线,要求有图形标注。

clc clearx=-2*pi:0.1: 2*pi;y=cos(x).*(0.5+sin(x)*3./(1+x.^2)); plot(x,y,'b*-'); title('绘图'); xlabel('x 坐标'); ylabel('y 坐标'); legend('原函数')gtext('y=cos(x)(0.5+3*sin(x)/(1+x^2))')5、求下列联立方程的解 81025695832475412743-=+-+-=-+-=++-=--+w z y x w z x w z y x w z y xclc cleara=[3,4,-7,-12;5,-7,4,2;1,0,8,-5;-6,5,-2,10];b=[4,-3,9,-8]; c=b/a; x=c(1,1) y=c(1,2) z=c(1,3) w=c(1,4)6. 假设一曲线数据点为x = 0:2:4*pi;y = sin(x).*exp(-x/5);试将x 的间距调成 0.1,采用不同插值方法进行插值,并通过子图的形式将不同插值结果和原始数据点绘制在同一图形窗口。

Matlab上机练习题及答案

Matlab上机练习题及答案

Matlab 上机练习题及答案---------------------------------------------------------------------1、矩阵Y=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡3472123100451150425,给出元素1的全下标和单下标,并用函数练习全下标和单下标的转换,求出元素100的存储位置。

取出子矩阵⎥⎦⎤⎢⎣⎡21301,并求该矩阵的维数。

解:命令为:Y=[5,2,4;0,15,1;45,100,23;21,47,3]Y(2,3)Y(10)sub2ind([43],2,3)[i,j]=ind2sub([43],10)find(Y==100)sub2ind([43],3,2)B=Y(2:2:4,3:-2:1)或B=Y([24],[31])[m n]=size(Y)---------------------------------------------------------------------2、已知矩阵A=[10-1;241;-205],B=[0-10;213;112]求2A+B 、A 2-3B 、A*B 、B*A 、A.*B ,A/B 、A\B 解:命令为:A=[10-1;241;-205]B=[0-10;213;112]E=2*A+B F=A^2-3*B G=A*B H=B*A I=A.*B J=A/B K=A\B---------------------------------------------------------------------3、利用函数产生3*4阶单位矩阵和全部元素都为8的4*4阶矩阵,并计算两者的乘积。

解:命令为:A=eye(3,4)B=8*ones(4)C=A*B---------------------------------------------------------------------4、创建矩阵a=⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡------7023021.5003.120498601,取出其前两列构成的矩阵b ,取出前两行构成矩阵c ,转置矩阵b构成矩阵d ,计算a*b 、c<d ,c&d,c|d ,~c|~d 解:命令为:a=[-1,0,-6,8;-9,4,0,12.3;0,0,5.1,-2;0,-23,0,-7]b=a(:,[12])c=a([12],:)d=b’e=a*b f=c<d g=c&d h=c|d i=~c|~d---------------------------------------------------------------------5、求!201∑=n n 解:命令文件为sum=0;s=1;for n=1:20s=n*s;sum=sum+s;end sum---------------------------------------------------------------------6、求a aa aaa aa a S n ++++=得值,其中a 是一个数字,由键盘输入,表达式中位数最多项a 的个数,也由键盘输入。

matlab上机练习(附答案)

matlab上机练习(附答案)

1.以下两种说法对吗?(1)MATLAB进行数值的表达精度与其指令窗中的数据显示精度相同。

(2)MATLAB指令窗中显示的数据有效位数不超过七位。

2.历史指令窗所记录的内容与diary指令所产生的“日志”内容有什么不同?DIARY filename causes a copy of all subsequent command window inputand most of the resulting command window output to be appended to thenamed file. If no file is specified, the file 'diary' is used.DIARY OFF suspends it.DIARY ON turns it back on.DIARY, by itself, toggles the diary state.Use the functional form of DIARY, such as DIARY('file'),when the file name is stored in a string.3.如何把用户自己的“工作目录”永久地设置在MATLAB的搜索路径上?“位于搜索路径上的目录”与“当前目录”在MATLAB中的功用相同吗?4.如何向MATLAB工作空间输入一个含有100个左右元素的一维或二维数值数组?用直接键入法?用数组编辑器?用M文件编辑器?5.运用数组算术运算符去掉下面程序里的for/end循环:x=11:15for k=1:length(x)z(k)=x(k)^2+2.3*x(k)^0.5;endx=11:15 z1=x.^2+2.3*x.^0.56.不使用数组算术运算符,重写下面的程序代码:x=[2 1 4]z=1./(1+x.^2)x=2;k=1;while i<=4,z2(k)=1/(1+i^2);i=i+1;x=x+1;end7.某公司销售电脑打印机的价格方案如下:()如果顾客只买一台打印机,则一台的基本价格为$150。

天津工业大学matlab上机实验题

天津工业大学matlab上机实验题

“MATLAB及其在通信中的应用”上机实验二1——矩阵操作进阶及图形绘制1.利用基本矩阵产生5*4的单位阵、全1阵、全0阵、[2 5]之间均匀分布随机矩阵。

,正态分布随机矩阵(均值1,方差为9)。

将所编程序截图,填入到下面空白处。

(10分)答案:2.矩阵运算:已知,求矩阵c,MATLAB命令窗口中编写语句,实现下述功能,将所编程序截图,填入到下面空白处。

(1)对c中所有元素求和赋值给SUM。

(2)先令矩阵d=c,仅保留d中主对角线上方第1条对角线元素,d中其他元素赋值0。

(3+7=10分)1完成后以附件形式发送到邮箱commu_matlab2014@。

邮件主题为“班级”加“下划线”加“姓名”3. 编写.m(1) 求出方程组的解,并保存在向量 B(2) 将B 的转置作为行向量,对该行向量进行复制拼接,生成6*4阶矩阵的H(3) 对H 矩阵进行重排,生成3*8阶矩阵K ,删除矩阵K 的第3列,生成3*7阶矩阵J 。

将所编程序和矩阵B 、H 、J 的结果截图,填入到下面空白处。

(6+6+8=20分)答案:4、假设有函数22a b ea --=+,其中1,1.5,2,2.5...,6a =1*2排布的图形子窗口,按要求完成绘图。

子窗口1绘制图1: x 轴用a 为坐标刻度,y 轴用b 为坐标刻度,曲线颜色为绿色,类型为-*,线宽为1,加入栅格线。

加入标题“图1”。

x 轴标注 “a ” ,y 轴标注“b ” 。

x 轴坐标范围[08],y 轴坐标范围[0 58 ]子窗口2绘制图2: x轴用a 为坐标刻度,y 轴用log 10(b)为坐标刻度,曲线颜色为红色,类型为-+,线宽为1.5,加入栅格线。

加入标题“图2”。

x 轴标注 “a ” ,y 轴标注“log10(b)” 。

x 轴坐标范围[0 8],y 轴坐标范围[0 100 ]将所编程序和输出图形截图,填入到下面空白处。

(5+5=10分)答案:5、打开 一个图形窗口, 222x 0*2*32180180180ππππ=,,,,...,,绘制如下图所示的三条曲线:(1)曲线1:y=sin(x); 正弦曲线颜色 红色,线型为 * , 线宽为1 (2)曲线2:y=cos(x); 余弦曲线颜色 蓝色,线型为 -- ,线宽为2(3)曲线3:y=sin(x)+3; 正弦曲线纵轴搬移,曲线颜色 绿色,线型为钻石,线宽为1.5 将所编程序截图,填入到下面空白处。

matlab上机练习及答案

matlab上机练习及答案

第二、三次上机练习:目的:运行课本第四章及课堂上讲过的例子,掌握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上机练习题答案

(完整版)matlab 上机练习题答案1.计算⎥⎦⎤⎢⎣⎡=572396a 与⎥⎦⎤⎢⎣⎡=864142b 的数组乘积>〉 a=[6 9 3;2 7 5]; 〉〉 b=[2 4 1;4 6 8]; 〉〉 a 。

*b ans =12 36 3 8 42 402。

对于B AX =,如果⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=753467294A ,⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=282637B ,求解X 。

〉〉 A=[4 9 2;7 6 4;3 5 7]; 〉> B=[37 26 28]’; >〉 X=A\B X = -0.5118 4.0427 1.33183。

⎥⎦⎤⎢⎣⎡-=463521a ,⎥⎦⎤⎢⎣⎡-=263478b ,观察a 与b 之间的六种关系运算的结果 >〉 a=[1 2 3;4 5 6]; 〉> b=[8 –7 4;3 6 2]; >〉 a 〉b ans =0 1 0 1 0 1 〉> a 〉=b ans =0 1 0 1 0 1 >> a 〈b ans =1 0 1 0 1 0 〉> a<=b ans =1 0 1 0 1 0 >〉 a==b ans =0 0 0 0 0 0 〉〉 a~=b ans =1 1 1 1 1 14计算多项式乘法(x 2+2x +2)(x 2+5x +4)>> c=conv ([1 2 2],[1 5 4]) c =1 7 16 18 8 5计算多项式除法(3x 3+13x 2+6x +8)/(x +4) 〉〉 d=deconv ([3 13 6 8],[1 4]) d =3 1 26求欠定方程组⎥⎦⎤⎢⎣⎡=⎥⎦⎤⎢⎣⎡5865394742x 的最小范数解〉〉 a=[2 4 7 4;9 3 5 6]; 〉> b=[8 5]’; 〉> x=pinv (a )*b x =—0.2151 0.4459 0。

matlab上机练习答案

matlab上机练习答案

实验一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 为管子材料的弹性模量,ɑ为热膨胀系数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、只用一条plot 命令,在同一幅图中绘制下面两个函数的图形:
(1)(2)(4)(5),06(31)(32)(34)(35)(2)(3)(4)(5),06(12)(13)(14)(15)x x x x y x x x x x y x ----=
≤≤--------=≤≤---- 使用两次plot 命令和hold on 重复上述任务。

二、用两种方法绘制如下方程给出的椭圆:22(2)2(1)3x y x -+--=
(1) 把y 看做x 的函数解方程。

这样做将得到两个方程,一个是椭圆的上半部分,
另一个是椭圆的下半部分。

绘制这两个关于x 的方程,得到椭圆。

(2) 将方程看做隐函数绘制图形。

如果用(1)方法绘制图形的过程中出现异常情况,请查明原因并改正。

三、将两个设计参数x 和y 定为0<x <5和0<y <5。

产品的成本为:
22860.150f x x y y xy =-+--+
用mesh 命令绘图,近似地找出使成本最低的最优参数,并写出最低成本值。

四、用contour 命令重做上题。

五、绘制微分方程 dy/dx=xy, y(0)=0.4的斜率场,
并将解曲线画在图中,观察斜率场和解曲线的关系。

附参考程序
clf,t=linspace(0,1.5,20);
x=t.^2;y=(2/3)*t.^3;z=(6/4)*t.^4-(1/3)*t.^3;
plot3(x,y,z,'r.- ','linewidth',1,'markersize',10),hold on
Vx=gradient(x);Vy=gradient(y);Vz=gradient(z);
h=quiver3(x,y,z,Vx,Vy,Vz),set(h,'linewidth',1),grid on
axis([0 1.5 0 1.5 0 40])
xlabel('x'),ylabel('y'),zlabel('z'),box on
六、矩阵分解
[L,U,P]=lu(A) : PA=LU
r=chol(A) : A=L T L
[Q,R]=qr(A),[Q,R]=qr(A,0) : A=QR
[U,S,V]=svd(A) : A=USV T
[Q,R]=schur(A) : Q T AQ=R
[P,H]=hess(A) : PAP=H
pinv(A) : 广义逆A +
自选试验矩阵
七、已知123456789A ⎡⎤⎢⎥=⎢⎥⎢⎥⎣⎦
,求它的条件数和特征值条件数,并就所得结果做出解释。

八、有矩阵7 2.375 1.56250.50.258000002000002000000.50A -----⎡⎤⎢⎥⎢⎥
⎢⎥=⎢⎥⎢⎥⎢⎥⎣⎦
,分别对矩阵A 进行特征值分解和Jordan 标准型分解,并通过验算说明哪个分解是可靠的。

九、方程组的性态与条件数试验
试验目的:理解条件数的定义和方程组的性态对解向量的影响。

试验题:下面两个方程组1A x b =和2A x b =来自插值和最小二乘曲线拟合问题, 其中:
2000211121222221121311121311(1)1
1111(2),1345111(1)1(2)1(21)n n n n n n n n
x x x n x x x n A A x x x x x x n n n n ⎡⎤⎡⎤⎢⎥⎢⎥+⎢⎥⎢⎥⎢⎥⎢⎥+==⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥++-⎣⎦⎣⎦
b 由相应矩阵的元素计算,其计算公式为12111,,,n n n j j nj j j j b a a a ===⎛⎫= ⎪⎝⎭
∑∑∑
试验要求:对1A ,
取10.1,0,1,2,k x kk n =+= ,下面均用MA TLAB 函数\x A b
=计算方程组的解。

(1) 取n=4,6,8,分别求出1A 和2A 的2条件数,判别他们是否是病态阵?随n 的增大,
矩阵性态的变化如何?
(2)取n=5,分别求出两个方程组的解向量612,x x R ∈;
(3)取n=5,b 不变。

对1A 的元素2266a a 和分别加一个摄动1410-,分别求出第一个方程组
的解向量611,x
x R ∈ ; (4)取n=5,b 不变。

对2A 的元素2266a a 和分别加一个摄动7
10-,分别求出第二个方程组的解向量622,x x R ∈ ;A 不变,对b 的元素6b 加一个摄动410-,求出62x R ∈
(5)观察和分析A 和b 的微小摄动对解向量的影响,得出你的结论。

(6)求111||||||||x x x ∞∞- ,222||||||||x x x ∞∞- 和222||||||||x x x ∞∞- 的计算结果和理论估计。

相关文档
最新文档