MATLAB实验二
- 格式:doc
- 大小:75.50 KB
- 文档页数:5
实验二 MATLAB 图形系统一、实验目的和要求Matlab 提供了强大的图形处理功能,本次实验旨在使学生熟悉和掌握应用Matlab 实现二维图形和三维图形的绘制和控制与表现方法。
二、实验内容1,画出对数和指数函数曲线,并分别加上标题、轴标记和曲线说明。
x=::5;y1=log(x);y2=exp(x);plot(x,y1,x,y2)grid onlegend('\ity=lnx','\ity=e^x')title('y=lnx和y=e^x曲线')xlabel('x');ylabel('y')2,将图形窗口分为两格,分别绘制正割和余割函数曲线,并加上适当的标注。
x=0:pi/50:2*pi;k=[1 26 51 76 101];x(k)=[];subplot(1,2,1)plot(x,sec(x)),grid onlegend('\itsec(x)')title('sec(x)曲线')subplot(1,2,2),plot(x,csc(x)),grid ontitle('csc(x)曲线')legend('\itcsc(x)')3,根据教材节内容,循序渐进的绘制对数和极坐标系图形。
x=:.01:100;y=log10(x);subplot(2,1,1)semilogx(x,y)title(‘\ity=log-{10}(x)inSemi-logcoord inates’)xlabel(‘x’),ylabel(‘y’)num=[1 ];den=[1 2 5 7 4];[z,p,k]=tf2zp(num,den);c1=abs(z);c2=angle(z);c3=abs(p);c4=angle(p);xyy=lnx和y=e x曲线sec(x)曲线csc(x)曲线101010101010y=log-10(x)in Semi-log coordinatesxypolar(c4,c3,'bx')hold on,polar(c2,c1,'ro')gtext('极坐标系中的零极点表示')4,根据教材 节内容,绘制多峰函数和三角函数的多条曲线。
实验二MATLAB的数据类型与基本运算一、实验目的掌握MATLAB中编程语言的表示和运算,了解常用基本数据类型,了解结构、元胞和表等复杂数据类型的基本概念;熟悉矩阵运算,掌握用矩阵求逆法解线性方程组的方法,熟悉多项式运算。
二、实验内容1、一维数组在命令窗口执行下面指令,观察输出结果,体味数组创建和寻访方法,%号后面的为注释,不用输入。
rand('state',0) % 把均匀分布伪随机发生器置为0 状态x=rand(1,5) % 产生(1*5)的均布随机数组x(3) % 寻访数组x 的第三个元素。
x([1 2 5]) % 寻访数组x 的第一、二、五个元素组成的子数组。
x(1:3) % 寻访前三个元素组成的子数组x(3:end) % 寻访除前2 个元素外的全部其他元素。
end 是最后一个元素的下标。
x(3:-1:1) % 由前三个元素倒排构成的子数组x(find(x>0.5)) % 由大于0.5 的元素构成的子数组x([1 2 3 4 4 3 2 1]) % 对元素可以重复寻访,使所得数组长度允许大于原数组。
x(3) = 0 % 把上例中的第三个元素重新赋值为0。
x[3]=[] % 空数组的赋值操作x([1 4])=[1 1] % 把当前x 数组的第一、四个元素都赋值为1。
2、在命令窗口执行下面指令,观察输出结果a=2.7358; b=33/79; % 这两条指令分别给变量 a , b 赋值。
C=[1,2*a+i*b,b*sqrt(a);sin(pi/4),a+5*b,3.5+i] % 这指令用于创建二维组C M_r=[1,2,3;4,5,6],M_i=[11,12,13;14,15,16] % 创建复数数组的另一种方法CN=M_r+i*M_i % 由实部、虚部数组构成复数数组3. 记录下面题目的程序和运行后的结果。
1⎥⎦⎤⎢⎣⎡=654321a ⎥⎦⎤⎢⎣⎡-=531142b ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=201c ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=063258741d下列运算是否合法,为什么?如合法,结果是多少?(1) result1 = a'=[1 4;2 5;3 6] (2) result2 = a * b 不合法(3) result3 = a + b=[3 6 2;5 8 11](4) result4 = b * d=[31 22 22;40 49 13](5) result5 = [b ; c' ] * d=[31 22 22;40 49 13;-5 -8 7] (6) result6 = a . * b=[2 8 -3;4 15 30](7) result7 = a . / b=[0.5000 0.5000 -3.0000;4.000 1.667 1.2000](8) result8 = a . * c 不合法(9) result9 = a . \ b=[2.0000 2.0000 -0.3333;0.2500 0.6000 0.8333] (10) result10 = a . ^2=[1 4 9;16 25 36] (11) result11 = a ^2不合法(12) result11 = 2 . ^ a=[2 4 8;16 32 64]4、设矩阵A =[311212123],B =[11−12−101−11]求(1)2A+B(2)4A 2-3B 2 (3)AB (4)BA (5)AB-BA5、设三阶矩阵A、B满足A-1BA=6A+BA,其中A=[13000140017],求矩阵B。
佛山科学技术学院实验报告课程名称_______________ 数值分析________________________实验项目_______________ 数值积分____________________专业班级机械工程姓名余红杰学号2111505010 指导教师陈剑成绩日期月日一、实验目的b1、理解如何在计算机上使用数值方法计算定积分 a f ""X的近似值;2、学会复合梯形、复合Simpson和龙贝格求积分公式的编程与应用。
3、探索二重积分.11 f (x, y)dxdy在矩形区域D = {( x, y) | a _ x _ b, c _ y _ d}的数值D积分方法。
二、实验要求(1)按照题目要求完成实验内容;(2)写出相应的Matlab程序;(3)给出实验结果(可以用表格展示实验结果);(4)分析和讨论实验结果并提出可能的优化实验。
(5)写出实验报告。
三、实验步骤1、用不同数值方法计算积xln xdx =-- 0 9(1)取不同的步长h,分别用复合梯形及复合辛普森求积计算积分,给出误差中关于h的函数,并与积分精确值比较两公式的精度。
(2)用龙贝格求积计算完成问题(1 )。
2、给出一种求矩形区域上二重积分的复化求积方法,然后计算二重积分..e"y dxdy,其中积分区域D二{0乞x岂1,0岂y乞1}。
1.%lnt_t.m复化梯形:function F = Int_t(x1,x2,n)%复化梯形求积公式% x1,x2为积分起点和中点%分为n个区间,没选用步长可以防止区间数为非整数。
%样点矩阵及其函数值:x = lin space(x1,x2 ,n+1);y = f(x);m = len gth(x);%本题中用Matlab计算端点位置函数值为NaN,故化为零: y(1) = 0;y(m) = 0;%算岀区间长度,步长h:h = (x2 -x1)/n;a = [1 2*o nes(1,m-2) 1];%计算估计的积分值:F = h/2*sum(a.*y);%f.mfun cti on y = f(x)y = sqrt(x).*log(x);%run 11.mclc,clear;%分为10个区间,步长0.1的积分值:F = In t_t(0,1,10);F10 = F%分为100个区间F = In t_t(0,1,100);F100 = F%误差计算W10 = abs((-4/9)-F10);W100 = abs((-4/9)-F100);W = [W10 W100]%复化辛普森:%l nt_s.mfun cti on F = In t_s(x1,x2 ,n)%复化梯形求积公式% x1,x2区间,分为n个区间。
北京工业大学Matlab实验报告**: ***学号: ************: **实验二、Matlab 的基本计算(一)实验目的1.掌握建立矩阵的方法。
2.掌握Matlab 各种表达式的书写规则以及常用函数的使用。
3.能用Matlab 进行基本的数组、矩阵运算。
4.掌握矩阵分析的方法以及能用矩阵运算或求逆法解线性方程组。
5.掌握Matlab 中的关系运算与逻辑运算。
(二)实验环境1.计算机2.MATLAB7.0集成环境(三)实验内容及要求1、熟练操作MATLAB7.0运行环境;2、自主编写程序,必要时参考相关资料;3、实验前应写出程序大致框架或完整的程序代码;4、完成实验报告。
(四)实验程序设计1.利用diag 等函数产生下列矩阵。
⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=032570800a ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=804050702b2.利用reshape 函数将1题中的a 和b 变换成行向量。
3.产生一个均匀分布在(-5,5)之间的随机矩阵(10×2),要求精确到小数点后一位。
4.已知:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=76538773443412A ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡--=731203321B求下列表达式的值:(1) B A K *611+=和I B A K +-=12(其中I 为单位矩阵)(2) B A K *21=和B A K *.22=(3) 331^A K =和3.32^A K =(4) B A K /41=和A B K \42=(5) ],[51B A K =和]2:);],3,1([[52^B A K = 5.下面是一个线性方程组:⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡52.067.095.03216/15/14/15/14/13/14/13/12/1x x x(1)求方程的解(矩阵除法和求逆法)(2)将方程右边向量元素3b 改为0.53,再求解,并比较3b 的变化和解的相对变化。
1、运用funtool对f(x)=sin(x)/x分别进行信号的尺度变换f(2x)、f(0.5x)和信号的移位运算f(x+1)、f(x-1)操作以及f(0.5x+1),分别记录相应波形。
f(x)=sin(x)/x f(x+1)f(2x) f(x-1)f(0.5x) f(0.5x+1)2、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式; 2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。
(设定取样时间间隔为dt )【实验思考】:通过不断改变dt 的取值并对比所得到的实验效果,观察当取样时间dt 为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?3、已知两连续时间信号如下图所示,1)写出信号的函数表达式,并计算f(t)=f1(t)* f2(t)的解析表达式;2)用MATLAB 求f(t)=f1(t)* f2(t),并绘出f(t)的时域波形图。
(设定取样时间间隔为dt)【实验思考】:不断改变dt的取值并对比实验效果,当取样时间dt为多大时,函数conv_cs()的计算结果就是连续时间卷积f(t)=f1(t)* f2(t)的较好近似结果?clear alldt = 0.01;t1 = -3:dt:3;f1 = 2*(u(t1+1) - u(t1-1));figure;stairs(t1,f1);hold allgrid ont2 = -3:dt:3;f2 = u(t2+2)-u(t2-2);stairs(t2,f2)[fn, tn] = conv_cs(f1, t1, f2, t2, dt);plot(tn, fn)grid onlegend('f1', 'f2', 'f1*f2')。
实验二MATLAB语言基础一、实验目的基本掌握MA TLAB向量、矩阵、数组的生成及其基本运算(区分数组运算和矩阵运算)、常用的数学函数。
了解字符串的操作。
二、实验内容1.向量的生成与运算;2.矩阵的创建、引用和运算;3.多维数组的创建及运算;4.字符串的操作。
三、实验步骤1.向量的生成与运算①向量的生成向量的生成有三种方法:直接输入法:生成行向量、列向量;冒号表达式法:变量=初值:间隔(可正可负):终值函数法:使用linspace线性等分函数,logspace对数等分函数。
格式为:linspace(初值,终值,个数)Logspace(初值,终值,个数), 初值及终值均为10的次幂。
②向量的运算A=[1 2 3 4 5],b=3:7,计算两行向量的转置,两行向量人加、减,两列向量的加、减;向量的点积与叉积。
a=[1 2 3 4 5];b=3:7;a =1 2 3 4 5b =3 4 5 6 7at=a',bt=b'at =12345bt =34567e1=a+b,e2=a-be1 =4 6 8 10 12 e2 =-2 -2 -2 -2 -2 f1=at+bt,f2=at-btf1 =4561012f2 =-2-2-2-2-2g1=dot(a,b),g2=a*bt>> g1=dot(a,b),g2=a*btg1 =85g2 =85g4=a.*b>> g4=a.*bg4 =3 8 15 24 35A=1:3;B=4:6;g3=cross(A,B)>> g3=cross(a,b)g3 =-3 6 -3注意:g1和g2的结果是否相同,为什么?g4的结果与g1和g2结果是否一样,为什么?g1和g2的结果相同,因为两者是同一种运算;g4与g1和g2不相同,因为两者一个是点乘一个是叉乘,运算不一样。
2.矩阵的创建、引用和运算矩阵是由n×m元素构成的矩阵结构。
实验二 MATLAB的科学计算一、实验目的1、了解MATLAB的基本计算功能2、符号运算功能二、实验内容(一)基本计算功能例1、求[12+2× (7-4)]÷32的运算结果>>(12+2*(7-4))/3^2ans=2例2、用MATLAB求下面线性方程组的解3x1+ x2 - x3 = 3.6x1+2x2+4x3 = 2.1-x1+4x2+5x3 = -1.4>>A=[3 1 -1;1 2 4;-1 4 5];b=[3.6;2.1;-1.4];>>x=A\bx =1.4818-0.46060.3848例3、求两个矩阵的乘积a=[1 2 3;3 4 5;3 2 1]b=[1 2;3 4; 5 6]c=a*bc =22 2840 5214 20(二)符号运算功能1、求极限通常在MATLAB软件中,用limit 函数来求极限,其用法如表9-5所示:表9-5 limit 函数的用法例1、 求42cos lim 202x x e x -→.>> syms x % 把字符x 定义为符号 >>limit((cos(x)-exp(-x^2/2))/x^4)ans =-1/12例2 求42lim 22--→x x x .>> limit((x-2)/(x^2-4),x,2)ans =1/4例3 求t x t x t )cos()cos(lim 0-+→>> syms t x>> limit((cos(x+t)-cos(x))/t,t,0)ans =-sin(x)2 、求导数MATLAB 软件提供求函数导数的指令是diff ,具体使用格式如下:(1)diff(f, x) 表示对f (这里f 是一个函数表达式)求关于符号变量x 的一阶导数.若x 缺省,则表示求f 对预设独立变量的一阶导数.(2)diff(f, x, n) 表示对f 求关于符号变量x 的n 阶导数.若x 缺省,则表示求f 对预设独立变量的n 阶导数.例9-7 已知,c bx ax x f ++=2)(求)(x f 的一阶、二阶导数.>> syms a b c x>> f='a*x^2+b*x+c'f =a*x^2+b*x+c>> diff(f, x)ans =2*a*x+b>> diff(f,2)ans =2*a3 、求积分MATLAB软件提供求函数积分的指令是int,具体使用格式如下:(1)int(f) 返回f对预设独立变量的积分值;(2)int(f,v) 返回f对独立变量v的积分值;(3)int(f,a,b) 返回f对预设独立变量的积分值,积分区间为[a,b],a和b为数值式;(4)int(f,v,a,b) 返回f对独立变量的积分值,积分区间为[a,b],a和b为数值式;(5)int(f,m,n) 返回f对预设变量的积分值,积分区间为[m,n],m和n为符号式;例1、求下列函数的积分 :例:求不定积分⎰-dxex x23,⎰+12xxdx;>> syms x>> f=sym('x^3*exp(-x^2)') % 或 int('x^3*exp(-x^2)') f =x^3*exp(-x^2)>> int(f)ans =-1/2*x^2/exp(x^2)-1/2/exp(x^2)>> int('1/(x*sqrt(x^2+1))')ans =-atanh(1/(x^2+1)^(1/2))4 、数学表达式的化简例、 将下面表达式进行因式分解. 132-=a f>> f2=sym('a^3-1');>> factor(f2)ans =(a-1)*(a^2+a+1)。
实验二 MATLAB 程序设计一、 实验目的1.掌握利用if 语句实现选择结构的方法。
2.掌握利用switch 语句实现多分支选择结构的方法。
3.掌握利用for 语句实现循环结构的方法。
4.掌握利用while 语句实现循环结构的方法。
5.掌握MATLAB 函数的编写及调试方法。
二、 实验的设备及条件计算机一台(带有MATLAB7.0以上的软件环境)。
M 文件的编写:启动MATLAB 后,点击File|New|M-File ,启动MATLAB 的程序编辑及调试器(Editor/Debugger ),编辑以下程序,点击File|Save 保存程序,注意文件名最好用英文字符。
点击Debug|Run 运行程序,在命令窗口查看运行结果,程序如有错误则改正三、 实验内容1.编写求解方程02=++c bx ax 的根的函数(这个方程不一定为一元二次方程,因c b a 、、的不同取值而定),这里应根据c b a 、、的不同取值分别处理,有输入参数提示,当0~,0,0===c b a 时应提示“为恒不等式!”。
并输入几组典型值加以检验。
(提示:提示输入使用input 函数)2.输入一个百分制成绩,要求输出成绩等级A+、A 、B 、C 、D 、E 。
其中100分为A+,90分~99分为A ,80分~89分为B ,70分~79分为C ,60分~69分为D ,60分以下为E 。
要求:(1)用switch 语句实现。
(2)输入百分制成绩后要判断该成绩的合理性,对不合理的成绩应输出出错信息。
(提示:注意单元矩阵的用法)3.数论中一个有趣的题目:任意一个正整数,若为偶数,则用2除之,若为奇数,则与3相乘再加上1。
重复此过程,最终得到的结果为1。
如:2?13?10?5?16?8?4?2?16?3?10?5?16?8?4?2?1运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。
请为关键的Matlab 语句填写上相关注释,说明其含义或功能。
matlab2022实验2参考答案报告名称:MATLAB试验二符号计算姓名:学号:专业:班级:MATLAB实验二MATLAB符号计算试验报告说明:1做试验前请先预习,并独立完成试验和试验报告。
2报告解答方式:将MATLAB执行命令和最后运行结果从命令窗口拷贝到每题的题目下面,请将报告解答部分的底纹设置为灰色,以便于批阅。
3在页眉上写清报告名称,学生姓名,学号,专业以及班级。
3报告以Word文档书写。
一目的和要求1熟练掌握MATLAB符号表达式的创建2熟练掌握符号表达式的代数运算3掌握符号表达式的化简和替换4熟练掌握符号微积分5熟练掌握符号方程的求解二试验内容1多项式运算(必做)1.1解方程:f(某)=某^4-10某某^3+34某某^2-50某某+25=0%采用数值方法:>>f=[1-1034-5025];>>root(f)%采用符号计算方法:f1=ym('某^4-10某某^3+34某某^2-50某某+25')olve(f1)1.2求有理分式R=(3某^3+某)(某^3+2)/((某^2+2某-2)(5某^3+2某^2+1))的商多项式和余多项式.a1=[3010];a2=[1002];a=conv(a1,a2);b1=[12-2];b2=[5201];b=conv(b1,b2);[p,r]=deconv(a,b);%注意:ab秩序不可颠倒。
%reidue用于实现多项式的部分分式展开,此处用deconv函数报告名称:MATLAB试验二符号计算姓名:学号:专业:班级:%%此题,有同学程序如下:某1=[3010],某2=[1002],某3=[12-2],某4=[5201]某5=conv(某1,某2)[y6,r]=deconv(某5,某3)R=deconv(y6,某4)%%这种方法较第一种解法缺点:在除法运算中,会产生误差,故此题应先将分母的多项式相乘后,再与分子部分的多项式进行运算。
实验2利用MATLAB分析信号频谱及系统的频率特性引言:在信号处理领域,频谱分析是一项常见的任务。
通过分析信号的频谱,可以了解信号的频率特性以及信号中存在的频率成分。
而系统的频率特性是指系统对不同频率信号的响应情况。
本实验使用MATLAB对信号频谱和系统频率特性进行分析。
一、实验目标:本实验的主要目标是掌握使用MATLAB分析信号频谱及系统的频率特性的方法,包括信号频谱的计算、绘制和分析以及系统的频率响应计算和绘制。
二、实验原理:1.信号频谱分析:信号的频谱表示信号在频率域上的分布情况。
在MATLAB中,可以利用快速傅里叶变换(FFT)来计算信号的频谱。
FFT能够将时域信号转换为频域信号,从而得到信号的频谱信息。
频谱可以用幅度谱(或功率谱)和相位谱来表示。
2.系统的频率特性:系统的频率特性是指系统对不同频率信号的响应情况。
在MATLAB中,可以通过计算系统的频率响应来揭示系统的频率特性。
系统的频率响应是系统的输出信号与输入信号之比的幅度谱。
常见的方法包括系统传输函数法和单位冲激响应法。
三、实验步骤:1.生成信号:首先,我们可以使用MATLAB生成一个具有不同频率成分的信号。
例如,可以通过调用sin函数生成一个正弦信号并设置不同的频率参数。
2.信号频谱计算和绘制:利用MATLAB的FFT函数可以计算信号的频谱。
然后,可以使用MATLAB的plot函数将信号的频谱进行绘制。
在绘制频谱时,通常将频谱的幅度谱和相位谱绘制在同一图像上。
3.系统频率响应计算和绘制:对于系统的频率响应计算和绘制,可以采用系统传输函数法和单位冲激响应法。
对于系统传输函数法,可以通过给定系统的传输函数,使用MATLAB的freqz函数来计算系统的频率响应。
对于单位冲激响应法,可以通过给定系统的单位冲激响应,使用MATLAB的fft函数来计算系统的频率响应。
四、实验结果与分析:通过对实验数据进行处理和分析,可以得到信号的频谱和系统的频率特性信息。
实验二报告人:王业成年级:机电131 学号:2013012496实验日期:2015.3.327报告完成日期:2015.3.30一、实验名称熟悉和掌握MA TLAB中关于矩阵变换以及矩阵运算的各种命令。
二、实验目的:熟悉和掌握MA TLAB中关于矩阵变换以及矩阵运算的各种命令。
三、实验内容:1.数、数组、矩阵的输入(1)数的输入a=5b=2-5i(2)数组的输入c=[1,3,5,7,9,11] %元素之间要用逗号用空格分开d=1:2:11e=linspace(1,11,6)体会以上输入有什么区别和联系。
(3)矩阵的输入A=[2,3,5;1,3,5;6,9,4] %行之间要用分别隔开2.矩阵大小的测试和定位A=[3,5,6;,2,5,8;3,5,9;3,7,9][n,m]=size(A)A(1,3)3. 矩阵的块操作A(2,:)A([1,3],:)A(2:3,1:2)问题2.1如何将A的2,3列互换?4.矩阵的四则运算A=[3,5,8;-2,3,6;1,4,9]B=rand(3,3)C=A+BD=A-BE=A*B问题2.2E为矩阵A、B的乘积运算结果,如果要求E的结果为A和B对应元素相乘的结果,应输入什么命令?F=A/B问题2.3 如果要求F为A,B对应元素作除法运算的结果,应输入什么命令?5.矩阵的点运算A=[1 2;3 4];B=[5 6;7 8];A*BA.*BA^2A.^26.矩阵的逻辑运算A=[1 2;3 4]; B=[0 6; 0 8]; A | BA&Bxor(A,B)a=-5;b=-10;(b~=0)&&(a/b>5)(b= =0)||(a/b>0)~a四、回答问题:问题2.1如何将A的2,3列互换?问题2.2 E为矩阵A、B的乘积运算结果,如果要求E的结果为A和B对应元素相乘的结果,应输入什么命令?问题2.3 如果要求F为A,B对应元素作除法运算的结果,应输入什么命令?五、思考题:1.输入一个矩阵A,取出A的第2行第1列的元素;取出A的第1,3,4列的所有元素;让A的第1列和第3列互换;删除A的第二列。
本科实验报告课程名称《MATLAB电子信息应用》实验题目:矩阵和数组的操作实验地点:D001机房专业班级:学号:学生姓名:指导教师:一、实验环境计算机 MATLAB软件二、实验目的1.掌握矩阵和数组的一般操作,包括创建、保存、修改和调用等。
2.学习矩阵和数组的加减法运算与乘法。
3.掌握对数组中元素的寻访与赋值,会对数组进行一般的操作。
三、实验内容和步骤1.用三种方法创建一个3*3矩阵,然后利用矩阵编辑器,将其扩充为4*5矩阵,并保存,试着调用它。
(1)直接输入法如在命令区输入A=[3,2,1;4,5,6;7,8,9]。
(2)直接利用MATLAB提供的函数创建一个3*3矩阵如在命令区输入rand(3,3)即得到一个3*3的随机矩阵(3)利用MATLAB提供的“Matrix Editor”完成输入步骤1 在命令区输入A=1.步骤2 用鼠标单击工具栏的工作区浏览器,MATLAB弹出变量浏览器,选中变量A,鼠标左键双击A,打开矩阵编辑器。
步骤3 在左下角的两个文本框中分别输入希望得到的矩阵的行数和列数:3行3列,即得到一个3*3矩阵。
步骤4 要将上面矩阵改为一个4*5矩阵,只需改变矩阵的行数和列数即可。
如将3行3列改为4行5列,即可得到一个4*5矩阵。
若想修改其中的元素,只需用鼠标选中表格中我们想要修改的元素,将原来的元素修改为我需要的值。
步骤5 要命令区输入save data,即可保存上面例子中创建的矩阵A。
步骤6 在命令区输入 load data 即可把vabaocun在文件中的矩阵读到MATLAB的工作区的内存中来。
2.建立一个等差数列,然后由它产生一个对角阵。
步骤1 在命令区输入a=linspace(0,1.5,5)产生一个等差数列。
步骤2 在命令区输入B=diag(a)产生一个对角阵。
3.利用MATLAB的函数inv(A)求方阵A的逆矩阵。
步骤1 在命令区输入A=[1,2;5,6]得到一个2*2的方阵。
matlab实验报告实验二Matlab实验报告实验二引言Matlab是一种功能强大的数学软件,广泛应用于科学研究和工程实践中。
在实验二中,我们将探索Matlab的图像处理功能,并通过实际案例来展示其应用。
图像处理基础图像处理是指对图像进行数字化处理的过程,其目的是改善图像质量、提取有用信息或实现特定的应用需求。
在Matlab中,我们可以利用各种函数和工具箱来实现图像处理的各种任务,如图像增强、滤波、分割和特征提取等。
实验步骤1. 图像读取与显示在Matlab中,我们可以使用imread函数读取图像文件,并使用imshow函数将图像显示在屏幕上。
例如,我们可以读取一张名为"lena.jpg"的图像,并显示出来:```matlabimg = imread('lena.jpg');imshow(img);```2. 图像灰度化图像灰度化是将彩色图像转换为灰度图像的过程。
在Matlab中,我们可以使用rgb2gray函数将彩色图像转换为灰度图像。
例如,我们可以将上一步读取的图像转换为灰度图像:```matlabgray_img = rgb2gray(img);imshow(gray_img);```3. 图像二值化图像二值化是将灰度图像转换为二值图像的过程,其中只包含黑色和白色两种颜色。
在Matlab中,我们可以使用imbinarize函数将灰度图像二值化。
例如,我们可以将上一步得到的灰度图像二值化:```matlabbinary_img = imbinarize(gray_img);imshow(binary_img);```4. 图像平滑图像平滑是指去除图像中的噪声或细节,使得图像更加平滑和清晰。
在Matlab 中,我们可以使用imfilter函数对图像进行平滑处理。
例如,我们可以对上一步得到的二值图像进行平滑处理:```matlabsmooth_img = imfilter(binary_img, fspecial('average'));imshow(smooth_img);```5. 图像边缘检测图像边缘检测是指提取图像中物体边缘的过程,常用于目标检测和图像分割。
实验二一维二维数组的创建和寻访一、实验目的1、掌握一维数组、二维数组创建和寻访的几种方法。
2、区别数组运算和矩阵运算的差别。
3、熟悉执行数组运算的常用数组操作函数。
4、掌握数组运算中的关系和逻辑操作及常用的关系、逻辑函数。
5、掌握“非数”、“空”数组在MA TLAB中的应用。
二、实验主要仪器与设备装配有MA TLAB7.6软件的计算机三、预习要求做实验前必须认真复习第三章MATLAB的数值数组及向量化运算功能。
四、实验内容及实验步骤1、一维数组的创建方法有哪几种?举例说明。
答:(1)“冒号”生成法;(2)线性(或对数)定点法;(3)逐个元素输入法;(4)运用MA TLAB 函数生成法。
例子:b1=linspace(0,pi,4)b2=logspace(0,3,4)运行结果:b1 =0 1.0472 2.0944 3.1416b2 =1 10 100 10002、根据要求补充输入指令,并写出运行结果。
本例演示:数组元素及子数组的各种标识和寻访格式;冒号的使用;end的作用。
A= zeros(2,6)%创建(2×6)的全零数组A(:)=1:12 %赋值号左边:单下标寻访(2×6) 数组A的全部12个元素%赋值号右边:拥有12个元素的一维数组A( 2,4 ) %双下标:A数组的第2行第4列元素A(8) %单下标:数组A的第8个元素A(: , [1,3]) %双下标:显示A的“第1列和第3列上全部行的元素”A([1, 2, 5, 6]') %单下标:把A数组第1,2,5,6个元素排成列向量A(: , 4:end) %双下标:显示A的“从第4起到最后一列上全部行的元素”%在此end用于“列标识”,它表示“最后一列”A(2,1:2:5)=[-1, -3, -5] %把右边的3个数分别赋向A数组第2行的第1,3,5个元素位置B=A([1, 2, 2, 2], [1, 3, 5]) %取A数组的1,3,5列的第1行元素作为B的第1行%取A数组的1,3,5列的第2行分别作为B的第2,3,4行L=A<3 %产生与A维数相同的“0,1”逻辑数组A(L)=NaN %把逻辑1标识的位置上的元素赋为“非数”运行结果:A =0 0 0 0 0 00 0 0 0 0 0A =1 3 5 7 9 112 4 6 8 10 12ans =8ans =8ans =1 52 6ans =1256ans=7 9 118 10 12A =1 3 5 7 9 11-1 4 -3 8 -5 12B =1 5 9-1 -3 -5-1 -3 -5-1 -3 -5L =1 0 0 0 0 01 0 1 0 1 0A =NaN 3 5 7 9 11NaN 4 NaN 8 NaN 123、补充输入以下指令,写出运行结果并说明reshape,diag,repmat,flipud,fliplr,rot90的作用。
MATLAB 实验二
班级:电子信息工程
学号:20105042005
姓名:贾东升
一、实验目的
1. 掌握MATLAB 数据对象的特点以及数据的运算规则。
2. 掌握MATLAB 中建立矩阵的方法以及矩阵处理的方法。
3. 掌握MATLAB 分析的方法。
二、实验内容
1. 求下列表达式的值。
(2)x=a c b e abc c
b a ++-+++)tan(22
ππ,其中a=3.5, b=5, c=-9.8。
>> a=3.5;
>> b=5;
>> c=-9.8;
>> x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a)
x =
-0.9829
(4)z=21
e t 2ln(t+21t +),其中t=⎢⎣⎡52 ⎥⎦
⎤
--65.031i 。
>> t=[2,1-3i;5,-0.65];
>> z=(1/2)*exp(2*t)*log(t+sqrt(1+t*t))
z =
1.0e+004 *
0.0057 - 0.0007i 0.0049 - 0.0027i
1.9884 - 0.3696i 1.7706 - 1.0539i
2.已知A=⎢⎢⎢⎣⎡-301 6175⎥⎥⎥⎦⎤-784,B=⎢⎢
⎢⎣⎡-328
253 ⎥⎥⎥
⎦
⎤
-031,求下列表达式的值。
(2)A*B 、A.*B 和B*A 。
(4)[A,B]和[A([1,3],:);B^2]
>> A=[-1,5,4;0,7,8;3,61,7];
>> B=[8,3,-1;2,5,3;-3,2,0];
>> A*B
ans =
-10 30 16
-10 51 21
125 328 180
>> A.*B
ans =
-8 15 -4
0 35 24
-9 122 0
>> B*A
ans =
-11 0 49
7 228 69
3 -1 4
>> [A,B]
ans =
-1 5 4 8 3 -1 0 7 8 2 5 3 3 61 7 -3 2 0
>> [A([1,3],:);B^2]
ans =
-1 5 4
3 61 7
73 37 1
17 37 13
-20 1 9
3.已知A=⎢⎢⎢⎢⎣⎡6
324123 54.954510-- 54065778.0- ⎥⎥⎥⎥⎦⎤14.33250完成下列操作: (1)输入A 在[10,25]范围内的全部元素。
(2)取出A 前3行构成矩阵B ,前两列构成矩阵C ,右下角3*2子矩阵构成矩阵D ,B 与C 的乘积构成矩阵E 。
(1)>> A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; >> k=find(A>=10&A<=25)
k =
1
5
>> A(k)
ans =
23
10
(2)>> A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]; >> B=A(1:3,:)
B =
23.0000 10.0000 -0.7780 0
41.0000 -45.0000 65.0000 5.0000
32.0000 5.0000 0 32.0000
>> C=A(:,1:2)
C =
23.0000 10.0000
41.0000 -45.0000
32.0000 5.0000
6.0000 -9.5400
D=
-45.0000 65.0000 5.0000
5.0000 0 32.0000
-9.5400 54.0000 3.1400
>> E=B*C
E =
1.0e+003 *
0.9141 -0.2239
1.2080
2.7123
1.1330 -0.2103
4.产生5阶希尔伯特矩阵H和5阶帕斯卡矩阵P,切求其行列式的值Hh和Hp以及它们的条件数Th和Tp,判断哪个矩阵性能更好,为什么?
>> H=hilb(5)
H =
1.0000 0.5000 0.3333 0.2500 0.2000
0.5000 0.3333 0.2500 0.2000 0.1667
0.3333 0.2500 0.2000 0.1667 0.1429
0.2500 0.2000 0.1667 0.1429 0.1250
0.2000 0.1667 0.1429 0.1250 0.1111
>> Hh=det(H)
Hh =
3.7493e-012
>> Tp=cond(H)
Tp =
4.7661e+005
>>
>> P=pascal(5)
P =
1 1 1 1 1
1 2 3 4 5
1 3 6 10 15
1 4 10 20 35
1 5 15 35 70
>> Hp=det(P)
Hp =
1
>> Tp=cond(P)
Tp =
8.5175e+003
>>
5已知:A=⎢⎢⎢⎣⎡--82029 856 ⎥⎥⎥⎦
⎤
51218求A 的特征值及特征向量,并分析其数学意义。
>> A=[-29,6,18;20,5,12;-8,8,5]; >> [V,D]=eig(A)
V =
0.7130 0.2803 0.2733 -0.6084 -0.7867 0.8725 0.3487 0.5501 0.4050
D =
-25.3169 0 0 0 -10.5182 0 0 0 16.8351。