matlab实验2MATLAB基础知识
matlab实验二
北京工业大学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 的变化和解的相对变化。
第2章 MATLAB的基础知识
a=[1 2 1;2 2 1;2 1 2]; b=[1;2;3]; a/b %矩阵右除
运行程序,得到结果:
??? Error using ==> mrdivide Matrix dimensions must agree.
重新输入语句
a\b
%矩阵左除 ans = 1.0000 -0.3333 0.6667
运行程序,得到结果:
c= 0 0 1 1 1 0
说明 对于复数运算,“= =”与“~ =”运算,既比较实部, 又比较虚部。而其他运算仅比较实部。关系运算同样也可用于 常量与矩阵的比较,在这种情况下,该常量与矩阵的每一个元 素进行比较,其结果是一个与矩阵同维数的0、1矩阵。
逻辑操作符
逻辑操作符 说 明 相对应函数
-0.1667 0 0
(3)矩阵特征值运算
矩阵条件数cond( ) 矩阵的秩rank() 矩阵特征值eig ( )
矩阵范数norm( ) 矩阵的迹trace ( ) 矩阵奇异值svd ( )
例2-7 分别计算矩阵a的有关特征参数。输入以下 MATLAB语句
a=[1 2 3;4 5 6;7 8 0] [cond(a),norm(a),rank(a)]
2.MATLAB工作环境
图形窗口“Figure”
M文件窗口
3.MATLAB的M文件
所谓M文件,就是用户把要实现的命令写在一个 以.m为扩展名的文件中
M文件有两种格式(统称为M文件) 函数式M文件 程序式M文件 程序式M文件用于把很多需要在命令窗口输入的命 令放在一起,就是命令的简单叠加 函数式M文件用于把重复的程序段封装成函数供用 户调用。
&
|
逻辑与
逻辑或
and(a,b)
MATLAB实验。
MATLAB实验班级:11电气(2)姓名:幸劲昆学号:201124122201实验一 MATLAB 运算基础(一)一、实验目的1、掌握建立矩阵的方法。
2、掌握MATLAB 各种表达式的书写规则以及各种运算方法。
二、实验内容1、求下列表达式的值。
(1)e=2.73;z1=2*sin((85/360)*2*pi)/(1+e^2) z1 =0.2357 (2)()x x z ++=1ln 212,其中⎢⎣⎡-=45.02x ⎥⎦⎤+521i x=[2 ,1+2i;-0.45,5]x =2.0000 1.0000 + 2.0000i -0.4500 5.0000z2=0.5*log(x+sqrt(1+x)) z2 =0.6585 0.6509 + 0.4013i -0.6162 1.0041 (3)a=[-3.0:0.1:3.0];z3=(exp(0.3*a)-exp(0.2*a))./2.*sin(a+0.3);plot(z3)2、已知⎢⎢⎢⎣⎡=33412A 65734 ⎥⎥⎥⎦⎤-7874 和 ⎢⎢⎢⎣⎡=321B 203- ⎥⎥⎥⎦⎤-731 求下列表达式的值:(1)A+6*B 和A-B+I (其中I 为单位矩阵)。
a=[12 34 -4;34 7 87;3 65 7] b=[1 3 -1;2 0 3;3 -2 7] I=eye(3)a =b = I =12 34 -4 1 3 -1 1 0 02 03 34 7 87 0 1 03 -2 7 3 65 7 0 0 1z1=a+6*b z2=a-b+Iz1 = z2 =18 52 -10 12 31 -346 7 105 32 8 8421 53 49 0 67 1(2)A*B和A.*B。
>> a*b >> a.*bans = ans =68 44 62 12 102 4309 -72 596 68 0 261154 -5 241 9 -130 49(3)A^3和A.^3。
MATLAB基础知识及常用功能介绍
MATLAB基础知识及常用功能介绍第一章:MATLAB简介及安装MATLAB是一种强大且广泛应用的数值计算软件,它提供了许多用于科学计算和工程设计的功能。
MATLAB是矩阵实验室(Matrix Laboratory)的缩写,其主要特点是在操作矩阵和各种数学函数上非常高效。
要安装MATLAB,只需下载安装程序然后按照提示进行安装即可。
第二章:MATLAB基本操作在MATLAB中,可以使用各种命令来进行基本的数学运算,例如加减乘除、幂运算等。
此外,还可以定义变量、矩阵和向量,并进行复杂的数学运算。
提示:使用分号可以取消输出结果。
第三章:MATLAB脚本和函数脚本是一系列MATLAB命令的集合,可以保存并重复执行。
函数是一段具有输入和输出的可执行代码块,可以通过函数名和输入参数来调用。
编写脚本和函数有助于提高代码的可读性和可重复性。
第四章:MATLAB图形化界面MATLAB提供了图形化界面(GUI)工具箱,用于创建交互式应用程序和图形用户界面。
利用GUI工具箱,可以通过拖拽和放置的方式创建界面,并通过设置属性和回调函数实现交互功能。
第五章:MATLAB数据可视化MATLAB拥有丰富的数据可视化功能,可以将数据以各种图表形式呈现出来,如散点图、柱状图、曲线图等。
此外,还可以对图表进行自定义设置,如添加图例、调整轴范围、添加标题等。
第六章:MATLAB图像处理MATLAB提供了强大的图像处理工具箱,可以用于图像的滤波、锐化、模糊、边缘检测等操作。
此外,还可以进行图像的变换和特征提取,用于图像识别和分析。
第七章:MATLAB信号处理MATLAB信号处理工具箱提供了一系列用于处理、分析和合成信号的函数和工具。
可以进行信号滤波、频谱分析、时域分析等操作。
此外,还可以进行数字滤波器设计和滤波器实现。
第八章:MATLAB数学建模MATLAB是数学建模的重要工具,可以用于建立各种数学模型并进行仿真和优化。
可以利用MATLAB解方程、求解微分方程、进行符号计算等,用于解决各种实际问题。
MATLAB实验
MATLAB实验一:MATLAB语言基本概念实验实验目的:1. 熟悉MATLAB语言及使用环境;2.掌握MATLAB的常用命令;3.掌握MATLAB的工作空间的使用;4.掌握MATLAB的获得帮助的途径。
5.掌握科学计算的有关方法,熟悉MATLAB语言及其在科学计算中的运用;6.掌握MATLAB的命令运行方式和M文件运行方式;7.掌握矩阵在MATLAB中的运用。
实验方案分析及设计:本次实验主要目的是了解MATLAB的使用环境,以及常用的一些命令的使用;了解矩阵在MATLAB实验中的具体运用,以及相关的一些符号命令的使用。
实验器材:电脑一台,MATLAB软件实验步骤:打开MATLAB程序,将实验内容中的题目依次输入MATLAB中,运行得到并记录结果,最后再对所得结果进行验证。
实验内容及要求:1.熟悉MATLAB的菜单和快捷键的功能2.熟悉MATLAB的命令窗口的使用3.熟悉常用指令的使用format clc clear help lookfor who whos 4.熟悉命令历史窗口的使用5. 熟悉MATLAB工作空间的功能将工作空间中的变量保存为M文件,并提取该文件中的变量6.熟悉MATLAB获取帮助的途径将所有plot开头的函数列出来,并详细给出plotfis函数的使用方法1. 输入 A=[7 1 5;2 5 6;3 1 5],B=[1 1 1; 2 2 2;3 3 3],在命令窗口中执行下列表达式,掌握其含义:A(2, 3) A(:,2) A(3,:) A(:,1:2:3)A(:,3).*B(:,2) A(:,3)*B(2,:) A*BA.*BA^2 A.^2 B/A B./AA=[7 1 5;2 5 6;3 1 5]7 1 52 5 63 1 5>> B=[1 1 1; 2 2 2;3 3 3]1 1 12 2 23 3 3>> A(2, 3)6>> A(:,2)151>> A(3,:)3 1 5>> A(:,1:2:3)7 52 63 5>> A(:,3).*B(:,2)51215>> A(:,3)*B(2,:)10 10 1012 12 1210 10 10>> A*B24 24 2430 30 3020 20 20>> A.*B7 1 54 10 129 3 15>> A^266 17 6642 33 7038 13 46>> A.^249 1 254 25 369 1 25>> B/A0.1842 0.2105 -0.23680.3684 0.4211 -0.47370.5526 0.6316 -0.7105>> B./A0.1429 1.0000 0.20001.0000 0.4000 0.33331.0000 3.0000 0.60002.输入 C=1:2:20,则 C (i )表示什么?其中 i=1,2,3, (10)1到19差为2,i 代表公差3. 试用 help 命令理解下面程序各指令的含义:cleart =0:0.001:2*pi;subplot(2,2,1);polar(t, 1+cos(t))subplot(2,2,2);plot(cos(t).^3,sin(t).^3)subplot(2,2,3);polar(t,abs(sin(t).*cos(t)))subplot(2,2,4);polar(t,(cos(2*t)).^0.5)4计算矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡897473535与⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡638976242之和。
MATLAB实验二
3. 三维图形
• 三、视点
➢view(az,el)-------------设置观察点方向
az为方位角,el为仰角。 • 方位角为视点位置在XY平面上的投影与X轴形成的角度,
正值表示逆时针,负值表示顺时针。 • 仰角为XY平面的上仰或下俯角,正值表示视点在XY平
面上方,负值表示视点在XY平面下方。
figure grid gtext hold subplot text title xlabel ylabel
创建图形窗口 放置坐标网格线 用鼠标放置文本 保持当前图形窗口内容 创建子图 放置文本 放置图形标题 放置X轴坐标标记 放置Y轴坐标标记
3. 三维图形 • 一、 plot3函数
• 将二维函数plot的功能扩展到三维空间,绘制三维图形。 • 函数格式:plot3(x1,y1,z1,c1,x2,y2,z2,c2,…)
theta=[0:0.01:2*pi];
rho=sin(2*theta).*cos(2*theta);
polar(theta,rho); 绘制极坐标图命令
title('polar plot');
例9、程序:
theta=linspace(0, 2*pi);
r=cos(4*theta);
polar(theta, r);
所组成的画面。
4. 动画设计
• 【例14】 播放一个不断变化的眼球程序段。
• m=moviein(20); 建立一个20个列向量组成的矩阵
• for j=1:20
•
plot(fft(eye(j+10))) %绘制出每一幅眼球图并保存到m矩阵中
• m(:,j)=getframe;
matlab第二章实训报告
佛山科学技术学院《MATLAB教程第二章实训》报告专业姓名成绩班级学号日期一、目的1.学习matlab的数据类型2.矩阵和数组的算术运算3.字符串4.时间和日期5.结构体和元胞数组6.多维数组7.逻辑运算和关系运算8.数组的信息获取9.多项式二、步骤1.学习matlab的数据类型Matlab R2010a定义了15种基本的数据类型,包括整型、浮点型、字符型和逻辑型等。
用户甚至可以定义自己的数据类型。
Matlab内部的任何数据类型,都是按照数组的形式进行储存和运算的。
数值型包括整数和浮点数,其中整数包括有符号数和无符号数,浮点数包括单精度型和双精度型。
在默认情况下,matlab默认将所有数值都按照双精度浮点数类型来存储和操作。
(1)常数和变量Matlab的常数采用十进制表示,可以用带小数点的形式直接表示,也可以用科学记数法。
数值的表示范围是10^-309-10^309。
变量是数值计算的基本单元。
Matlab与其他的高级语言不同,变量使用是无需先定义,其名称就是第一次合法出现时的名称,因此用起来很便捷。
Matlab的变量命名有一定的规则:a.变量区分字母的大小写。
例如,“a”和“A”是不同的变量。
b.变量名不能超过63个字符,第63个字符后的字符会被忽略。
c.变量名必须以字母开头,变量名的组成可以是任意字母、数字或者下划线,但不能有空格和标点符号。
d.关键字(如if\while等)不能作为变量名。
在matlab中的所有表示符号包括函数名、文件名都是遵循变量名的命名规则。
Matlab中有一些自己的特殊变量,是由系统预先自动定义的,例如:ans——运算结果的默认变量名Pi——圆周率πEps——浮点数的相对误差Inf或inf——无穷大Nan或nan——不定值i或j——i=j=-1^1/2,虚数单位Nargin——函数的输入变量数目Nargout——函数的输出变量数目Realmin——最小的可用正实数Realmax——最大的可用正实数(2)整数和浮点数Matlab提供了8种内置的整数类型,为了在使用时提高运行速度和存储空间,应该尽量使用字节少的数据类型,可以使用类型转换函数将各种整数类型强制相互转换。
实验二MATLAB的矩阵操作_参考答案
1
5
>> A(k)
ans =
23
10
(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角 子矩阵构成矩阵D,B与C的乘积构成矩阵E.
>> B=A([1,2,3],:)
B =
23.0000 10.0000 -0.7780 0
41.0000 -45.0000 65.0000 5.0000
32.0000 5.0000 0 32.0000
y =
-128.4271
2.已知 ,
求下列表达式的值:
(1) , (其中I为单位矩阵)
A=[-1,5,-4;0,7,8;3,61,7]
B=[8,3,-1;2,5,3;-3,2,0]
>> A+6*B
ans =
47 23 -10
12 37 26
-15 73 7
&
ans =
-1.2768 -0.4743 0.2411
2.1229 1.3173 -0.2924
3.已知
完成下列操作
(1)输出A在[10,25]范围内的全部元素
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)
(2)
(3)
2.已知 ,
求下列表达式的值:
(1) , (其中I为单位矩阵)
(2)A*B、A.*B和B*A
(3)A/B及B/A
3.已知
完成下列操作
(1)输出A在[10,25]范围内的全部元素
(2)取出A前3行构成矩阵B,前两列构成矩阵C,右下角 子矩阵构成矩阵D,B与C的乘积构成矩阵E.
MATLAB实验报告
MATLAB实验报告姓名:专业:学号:实验一MATLAB环境的熟悉与基本运算一、实验目的:1.熟悉MATLAB开发环境2.掌握矩阵、变量、表达式的各种基本运算二、实验基本知识:1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。
2.掌握MATLAB常用命令3.MATLAB变量与运算符变量命名规则如下:(1)变量名可以由英语字母、数字和下划线组成(2)变量名应以英文字母开头(3)长度不大于31个(4)区分大小写MATLAB中设置了一些特殊的变量与常量,列于下表。
MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符表2MATLAB算术运算符表3MATLAB关系运算符表4MATLAB逻辑运算符表5MATLAB特殊运算4.MATLAB的一维、二维数组的寻访表6子数组访问与赋值常用的相关指令格式5.MATLAB的基本运算表7两种运算指令形式和实质内涵的异同表6.MATLAB的常用函数表8标准数组生成函数表9数组操作函数三、实验内容1、学习安装MATLAB软件。
2、学习使用help命令,例如在命令窗口输入helpeye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)3、学习使用clc、clear,观察commandwindow、commandhistory和workspace等窗口的变化结果。
4、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、exerc2、exerc3……),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。
注意:每一次M-file的修改后,都要存盘。
四、实验结果练习A:(1)helprand,然后随机生成一个2×6的数组,观察commandwindow、commandhistory和workspace等窗口的变化结果。
实验二MATLAB程序设计含实验报告
实验二 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 语句填写上相关注释,说明其含义或功能。
MATLAB实验报告第二章
第二章作业M2_1.利用MATLAB实现下列连续时间信号。
(1)x(t)=u(t)-u(t-2)function y=heaviside(t);y=(t>0);endt=-10:0.001:10;>>xt=heaviside(t)-heaviside(t-2);>>plot(t,xt)>>axis([-10,10,-2,2])(2) x(t)=u(t)function y=heaviside(t);y=(t>0);endt=-10:0.001:10;>>xt=heaviside(t);>>plot(t,xt)>>axis([-10,10,-2,2])(3)xt=10exp(-t)-5exp(-2t)>> A=10;a=-1;>> t=0:0.001:10;>> x1t=A*exp(a*t);>> A=5;a=-2;>> t=0:0.001:10;>> x2t=A*exp(a*t);>>xt=x1t-x2t;>>plot(t,xt)(4)xt=tu(t)>> t=-10:0.001:10;>>xt=t.*heaviside(t);>>plot(t,xt)(5)xt=2|sin(10pit+pi/3)| >> A=2;w0=10*pi;phi=pi/3; >> t=0:0.001:1;>>xt=A*abs(sin(w0*t+phi)); >>plot(t,xt)>>axis([0,1,-4,4])Xt=cost+sin(2pit)>> A=1;w0=1;phi=0; >> t=0:0.002:10;>> x1t=A*cos(w0*t+phi); >> A=2;w0=2*pi;phi=0; >> t=0:0.002:10;>> x2t=A*sin(w0*t+phi); >>xt=x1t+x2t;>>plot(t,xt)(7)xt=4exp(-0.5t)cos(2pit) >> A=5;a=-0.5;>> t=0:0.001:10;>> x1t=A*exp(a*t);>> A=1;w0=2*pi;phi=0; >> t=0:0.001:10;>> x2t=A*cos(w0*t+phi); >>xt=x1t.*x2t;>>plot(t,xt)(8)Sa(pit)cos(30t)A=1;w0=30;phi=0;>> t=0:0.001:3;>> x1t=A*cos(w0*t+phi);>> t=0:0.001:3;>> x2t=sinc(t);>>xt=x1t.*x2t;>>plot(t,xt)M2-3,写出书中图示波形函数,并画出xt,x0.5t,x(2-0.5t)的图像function yt=x2_3(t)yt=t.*(t>=0&t<2)+2*(t>=2&t<3)+(-1)*(t>=3&t<=5); end>> t=0:0.001:5;>>xt=x2_3(t);>>title('x(t)');>>plot(t,xt)>>axis([0,6,-2,3])>> t=0:0.001:10;xt=x2_3(0.5*t); >>plot(t,xt)>>title('x(0.5t)')>>axis([0,10,-2,3])x(0.5t)>> t=-10:0.001:10;>>xt=x2_3(2-0.5*t);>>plot(t,xt)>>title('x(2-0.5t)')>>axis([-10,10,-2,3])M2-4画出图示的奇分量和偶分量。
MATLAB实验报告
实验二MATLAB语言基础一、实验目的基本掌握MA TLAB向量矩阵数组的生成及基本运算(区分数组运算和矩阵预算)、常用的数学函数。
了解字符串的操作。
二、实验内容(1)向量的生成和运算。
(2)矩阵的创建、引用和运算。
(3)多维数组的创建和运算。
(4)字符创的操作。
三、实验步骤1.向量的生成和运算1)向量的生成<1>、直接输入法<2> 冒号表达式法<3> 函数法:Linspace()是线性等分函数,logspace()是对数等分函数。
2)向量的运算1>维数相同的行、列向量之间可以相加减,标量可以与向量直接相乘除。
2>向量的点积与叉积运算E1和E2虽然表达式相同,但E1是标量,E2是矩阵。
2.矩阵的创建、引用和运算1)矩阵的创建和引用矩阵是由m*n元素构成的矩形结构,行向量和列向量是矩阵的特殊形式。
1>直接输入法:2>抽取法:包括单下标抽取和全下表抽取两种方式,且两种方式抽取的元素都必须以小括号括起来。
3>函数法:利用ones(m;n)创建全1矩阵,zeros()创建全0矩阵,eyes()创建单位矩阵等等。
4>拼接法:纵向拼接横向拼接5>利用拼接函数cat()repmat()和变形函数reshape()>> A1=[1 2 3;9 8 7 ;4 5 6];A2=A1.';>> cat(1,A1,A2) 沿行向拼接ans =1 2 39 8 74 5 61 9 42 8 53 7 6>> cat(2,A1,A2) 沿列向拼接ans =1 2 3 1 9 49 8 7 2 8 54 5 6 3 7 6>> repmat(A1,2,2)ans =1 2 3 1 2 39 8 7 9 8 74 5 6 4 5 61 2 3 1 2 39 8 7 9 8 74 5 6 4 5 6> A=linspace(2,18,9)A =2 4 6 8 10 12 14 16 18 >> reshape(A,3,3)ans =2 8 144 10 166 12 182)矩阵的运算练习(1)用矩阵除法求下列方程组的解x=[x1;x2;x3]>> A=[6 3 4;-2 5 7;8 -1 -3];B=[3;-4;-7];X=A\BX =1.0200-14.00009.7200(2)求矩阵的秩A=[6 3 4;-2 5 7;8 -1 -3];>> rank(A)ans =3[X,lamda]=eig(A)X =0.8013 -0.1094 -0.16060.3638 -0.6564 0.86690.4749 0.7464 -0.4719lamda =9.7326 0 00 -3.2928 00 0 1.5602(3)矩阵的开方>> B=sqrtm(A)B =2.2447 + 0.2706i 0.6974 - 0.1400i 0.9422 - 0.3494i -0.5815 + 1.6244i 2.1005 - 0.8405i 1.7620 - 2.0970i1.9719 - 1.8471i -0.3017 + 0.9557i 0.0236 +2.3845i (4)矩阵的指数与对数:> C=expm(A)C =1.0e+004 *1.0653 0.5415 0.63230.4830 0.2465 0.28760.6316 0.3206 0.3745>> logm(C)ans =6.0000 3.0000 4.0000-2.0000 5.0000 7.00008.0000 -1.0000 -3.0000(6)矩阵的转置D=A'D =6 -2 83 5 -14 7 -3(7)矩阵的提取与翻转:通过各种特定函数如triu(A)、tril(A),diag(A)、flipud (A)、fliplr(A)等等。
matlab基础知识实验原理
matlab基础知识实验原理Matlab是一种常用的科学计算软件,它具有强大的矩阵计算能力和丰富的工具箱,广泛应用于信号处理、图像处理、数字信号处理、控制系统设计等领域。
本文将介绍Matlab的基础知识,包括Matlab的环境搭建、基本语法、矩阵操作和图形绘制等内容。
一、Matlab环境搭建要使用Matlab,首先需要安装Matlab软件并激活。
安装完成后,打开Matlab,就可以进入Matlab的开发环境。
Matlab的界面分为命令窗口、编辑器窗口、工作空间窗口和图形窗口等部分。
在命令窗口中可以输入和执行Matlab命令;在编辑器窗口中可以编写和保存Matlab脚本;在工作空间窗口中可以查看和管理变量;在图形窗口中可以显示和编辑图形。
二、Matlab基本语法Matlab的基本语法与其他编程语言有些差异,但也有很多相似之处。
Matlab中的变量不需要事先声明,可以直接赋值使用。
Matlab支持多种数据类型,包括数值型、字符型、逻辑型等。
数值型可以是整数或浮点数,字符型用单引号或双引号括起来,逻辑型只有两个取值:true和false。
Matlab中的运算符包括算术运算符、关系运算符、逻辑运算符等,可以对变量进行加减乘除等运算。
Matlab还支持矩阵运算,可以直接对矩阵进行加减乘除等运算。
Matlab提供了丰富的数学函数,可以对变量或矩阵进行各种数学运算,如sin、cos、log等。
三、矩阵操作Matlab是一种以矩阵为基础的计算软件,因此矩阵的操作是Matlab的重要部分。
Matlab可以方便地定义矩阵、进行矩阵运算和矩阵变换等。
定义矩阵可以使用方括号和分号,方括号表示矩阵的开始和结束,分号表示换行。
Matlab提供了丰富的矩阵运算函数,可以对矩阵进行加减乘除、转置、求逆等运算。
矩阵乘法使用*运算符,矩阵转置使用'运算符,矩阵求逆使用inv函数。
此外,Matlab还提供了一些特殊的矩阵函数,如单位矩阵eye、零矩阵zeros、随机矩阵rand等。
matlab基础知识ppt(全)精心整理
2016/11/25
Application of Matlab Language
19
拟合曲线图
由图可见,三次拟合结果较好。
2016/11/25 Application of Matlab Language 20
2.3 数值表示、变量及表达式
数值的记述
Matlab的数只采用习惯的十进制表示,可以带小数点 和负号;其缺省的数据类型为双精度浮点型(double)。 例如:3 -10 0.001 1.3e10 1.256e-6
Matalb中指数函数exp(x), 常见的表达方式。
Application of Matlab Language
8
2.2 命令窗口 (续)
“clc”清除窗口显示内容的命令。
〘例2.2-4〙计算
y 2sin 0.3 1 5
的值。
>>y=2*sin(0.3*pi)/(1+sqrt(5)) y= 0.5000 〘例2.2-5〙计算 y 的值。 命令行编辑 “↑”键调回已 >>y=2*cos(0.3*pi)/(1+sqrt(5)) 输入过命令。 y= 修改。 0.3633
MATLAB 语言及其应用
Application of Matlab Language
第一讲 Matlab概述
前言 Matlab软件概述
Matlab的桌面环境及入门知识
2016/11/25
Application of Matlab Language
2 功Biblioteka 强大 数值运算优势 符号运算优势(Maple) 强大的2D、3D数据可视化功能 许多具有算法自适应能力的功能函数
1 5
MATLAB程序设计与应用(第二版)课后实验答案
Matlab课后实验题答案实验一 MATLAB运算基础1. 先求下列表达式的值,然后显示MATLAB工作空间的使用情况并保存全部变量。
(1)0 122sin851ze =+(2)21ln(2z x=,其中2120.455ix+⎡⎤=⎢⎥-⎣⎦(3)0.30.330.3sin(0.3)ln, 3.0, 2.9,,2.9,3.0 22a ae e az a a--+=++=--(4)2242011122123t tz t tt t t⎧≤<⎪=-≤<⎨⎪-+≤<⎩,其中t=0:0.5:2.52. 已知:1234413134787,2033657327A B --⎡⎤⎡⎤⎢⎥⎢⎥==⎢⎥⎢⎥⎢⎥⎢⎥-⎣⎦⎣⎦求下列表达式的值:(1) A+6*B 和A —B+I(其中I 为单位矩阵) (2) A*B 和A.*B (3) A^3和A.^3 (4) A/B 及B\A(5) [A,B ]和[A ([1,3],:);B^2] 解:3. 设有矩阵A 和B123453166789101769,111213141502341617181920970212223242541311A B ⎡⎤⎡⎤⎢⎥⎢⎥-⎢⎥⎢⎥⎢⎥⎢⎥==-⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎢⎥⎣⎦⎣⎦(1) 求它们的乘积C 。
(2) 将矩阵C 的右下角3×2子矩阵赋给D 。
(3) 查看MATLAB 工作空间的使用情况。
4. 完成下列操作:(1) 求[100,999]之间能被21整除的数的个数。
(2) 建立一个字符串向量,删除其中的大写字母。
解:(1) 结果:(2).建立一个字符串向量 例如: ch='ABC123d4e56Fg9';则要求结果是:实验二 MATLAB 矩阵分析与处理1。
设有分块矩阵33322322E R A O S ⨯⨯⨯⨯⎡⎤=⎢⎥⎣⎦,其中E 、R 、O 、S 分别为单位矩阵、随机矩阵、零矩阵和对角阵,试通过数值计算验证22E R RS A OS +⎡⎤=⎢⎥⎣⎦。
实验2_连续时间信号的Matlab表示与计算
y=A*exp(a*t) 例如图 1-3 所示指数衰减信号的 MATLAB 源程序如下(取 A=1,a=-0.4): %program7_1 Decaying expponential signal A=1;a=-0.4; t=0:0.01:10; ft=A*exp(a*t); plot(t,ft);grid on; 1.4正弦信号
例如图 1-10 所示周期性矩形脉冲信号和周期性三角波脉冲信号的 MATLAB 源程序如 下:
%program7_8 Periodic pulse generator T=0:1/1E3:1;% 1kHz sample freq for 1 sec D=0:1/3:1;% 3Hz repetition freq Y=pulstran(T,D,'rectpuls',0.1); figure(1);plot(T,Y);grid on;axis([0,1,-0.1,1.1]); T=0:1/1E3:1; % 1kHz sample freq for 1sec D=0:1/3:1;% 3Hz repetition freq Y=pulstran(T,D,'tripuls',0.1,-1); figure(2);plot(T,Y);grid on;axis([0,1,-0.1,1.]);
到-1 线性递减的;在其他周期内依次类推。例如图 1-9 所示的周期性三角波信号的 MATLAB 源程序如下:
%program1-9 Periodic triangular pulse signal
t=-5*pi:pi/10:5*pi;
x=sawtooth(t,0.5);
matlab实验报告实验二
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、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验2 MATLAB基础知识
一、实验目的
1.熟悉MATLAB的数据类型
2.熟悉MATLAB的基本矩阵操作
3.熟悉MATLAB的运算符
4.熟悉MATLAB的字符串处理
二、实验内容
1.创建结构体DataTypes,属性包含MATLAB支持的所有数据类型,并通过赋值构
造结构体二维数组。
DataTypes.char=char([65]);
DataTypes.string='hello';
DataTypes.int=100;
DataTypes.single=1.560
DataTypes =
char: 'A'
string: 'hello'
int: 100
single: 1.5600
>> DataTypes(2).char=char([66]);
DataTypes(2).string='kugou';
DataTypes(2).int=200;
DataTypes(2).single=3.14
DataTypes =
1x2 struct array with fields:
char
string
int
single
2.用满矩阵和稀疏矩阵存储方式分别构造下述矩阵。
A=
答:
A =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
B =
A =
0 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
A =
0 0 0 0
1 1 0 0
0 0 1 0
0 0 0 1
A =
0 1 0 0
1 1 0 0
0 0 1 0
0 0 0 1
A =
0 1 0 0
1 0 0 0
0 0 1 0
0 0 0 1
S=sparse([1,2,3,4],[2,1,3,4],[1,1,1,1],4,5);
D=full(D)
D =
0 1 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 1 0
3.在矩阵A末尾增加一行(元素全为1)得到矩阵B,删除矩阵A的最后一列得到
矩阵C,替换矩阵A的所有非零元素为2得到矩阵D。
分别查看矩阵(A,B,C,D)的长度。
答:
A=eye(4)
B=zeros(4,1)
A(1,1)=0
A(2,1)=1
A(1,2)=1
A(2,2)=0
C=[A B]
A =
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
B =
A =
0 0 0 0
0 1 0 0
0 0 1 0
0 0 0 1
A =
0 0 0 0
1 1 0 0
0 0 1 0
0 0 0 1
A =
0 1 0 0
1 1 0 0
0 0 1 0
0 0 0 1
A =
0 1 0 0
1 0 0 0
0 0 1 0
0 0 0 1
C =
0 1 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 1 0 >> A=C
A =
0 1 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 1 0
B =
1 1 1 1 1 >>
B =
0 1 0 0 0
1 0 0 0 0
0 0 1 0 0
0 0 0 1 0
1 1 1 1 1
C =
0 1 0 0
1 0 0 0
0 0 1 0
0 0 0 1
A<ones(4,5)
ans =
1 0 1 1 1
0 1 1 1 1
1 1 0 1 1
1 1 1 0 1 >> D=ans+ones(4,5)
D =
2 1 2 2 2
1 2 2 2 2
2 2 1 2 2
2 2 2 1 2
>> a=size(A)
b=size(B)
c=size(C)
d=size(D)
a =
4 5
b =
5 5
c =
4 4
d =
4 5
4.给定矩阵E=rand(4,4),计算C+E, C.*E和C\E。
>> E=rand(4,4)
E =
0.9501 0.8913 0.8214 0.9218
0.2311 0.7621 0.4447 0.7382
0.6068 0.4565 0.6154 0.1763
0.4860 0.0185 0.7919 0.4057
>> C+E
ans =
0.9501 1.8913 0.8214 0.9218
1.2311 0.7621 0.4447 0.7382
0.6068 0.4565 1.6154 0.1763
0.4860 0.0185 0.7919 1.4057
>> C.*E
ans =
0 0.8913 0 0
0.2311 0 0 0
0 0 0.6154 0
0 0 0 0.4057
>> C\E
ans =
0.2311 0.7621 0.4447 0.7382
0.9501 0.8913 0.8214 0.9218
0.6068 0.4565 0.6154 0.1763
0.4860 0.0185 0.7919 0.4057
5.将10进制的80转换为二进制的字符串,并从中查找0的个数。
答:
dec2bin(80)
ans =
s='1010000'
n=strfind(s,'0')
s =
n =
2 4 5 6 7
>> length(n)
ans =
5。