MATLAB实验报告II
MATLAB实验报告
MATLAB实验报告江苏科技⼤学《MATLAB实践》实验报告学号:1341901111姓名:符⾸夫计算机科学与⼯程学院2016.5.31实验⼀ MATLAB的基本使⽤⽅法实验⽬的和要求:通过完成实验⼀,掌握MATLAB的基本使⽤⽅法。
实验内容:(⼀)练习数据和符号输⼊法,将前⾯的命令在命令窗⼝中执⾏通过。
1)>>52)>>x=[1 2 3 4]3)>>g=[1 2 3 4];h=[4 3 2 1]>>s1=g+h, s2=g.*h, s3=g.^hS1=5 5 5 5S2=4 6 6 4S3=1 8 9 4(⼆)输⼊A=[715;256;315],B=[111;222;333],在命令窗⼝中执⾏下列表达式,掌握其含义。
源程序:>>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(:,1:2:3) % A数组中第⼀列和第三列>>A(3,:) %A数组中第三⾏>>A(:,3).*B(:,2) %A中第三列和B中第⼆列相乘>> A(:,3)*B(2,:) %A中第三列和B中第⼆⾏相乘竖着排,形成3*3矩阵>>A*B %A 与B数组相乘>>A.*B>>A^2>>A.^2 % A中所有数平⽅>>B/A %B矩阵除以A矩阵>>B./A % B中数除以A中对应位置数(三) 输⼊C=.1:2:20,则C (i )表⽰什么?其中i=1,2,3…10;源程序:>>c=1:2:20; >>c(1) >>c(10)实验⼆ MATLAB的数值计算实验⽬的和要求:通过完成实验⼆,掌握MATLAB的数值计算。
实验内容:(⼀) ⽤⼆分法计算多项式⽅程X^3-2X-5=0在[0,3]内的⼀个根。
MATLAB实验报告
MATLAB实验报告实验报告课程名称 MATLAB基础及应用专业班级电子xxxx姓名学号电气与信息学院实验二 MATLAB 数值计算(一)一实验目的:1.掌握数组的创建与运算方法;2. 掌握矩阵的创建与运算方法;3. 掌握数组的运算方法和矩阵运算方法的区别;4.掌握线性方程的求解方法二实验装置:计算机三实验内容:1.数组的创建和运算创建两个含5个元素的一维数组,并求这两个数组的四则运算。
2.矩阵的创建和运算(1)创建两个3×3的矩阵,并求这两个矩阵的四则运算。
(2)创建一个4×4的矩阵,并求这个矩阵的行列式值。
(3)线性方程的求解解方程组=6613753467294x 。
四实验要求:写出实验程序与仿真结果。
1. >> a=linspace(2,10,5) a =2 4 6 8 10>> b=linspace(1,9,5) b =1 3 5 7 9>> a+bans =3 7 11 15 19>> a-bans =1 1 1 1 1>> a.*bans =2 12 30 56 90>> a./bans =2.0000 1.3333 1.2000 1.1429 1.1111 >> a.\b ans =0.5000 0.7500 0.8333 0.8750 0.9000 2.(1) >> a=[1 1 1;2 2 2;3 3 3];>> b=[4 4 4;5 5 5;6 6 6];>> a+bans =5 5 57 7 79 9 9>> a-bans =-3 -3 -3-3 -3 -3-3 -3 -3>> a*bans =15 15 1530 30 3045 45 45>> a/bWarning: Matrix is singular to working precision. ans =NaN NaN NaNNaN NaN NaNNaN NaN NaN>> a\bWarning: Matrix is singular to working precision. ans =NaN NaN NaNNaN NaN NaNInf Inf Inf(2).>> a=[1 1 1 1;2 2 2 2;3 3 3 3;4 4 4 4];>> det(a)ans =(3).>> a=[4 9 2;7 6 4;3 5 7];>> b=[13;6;6];>> x=inv(a)*bx =-0.53081.7109-0.1374实验三 MATLAB数值计算(二)一实验目的:1.掌握多项式的创建与运算方法;2. 掌握基本的数据分析方法;二实验装置:计算机三实验内容:1.多项式创建输入系数矢量,创建多项式x^3-2*x^2+5*x+3。
matlab实验报告
Matlab实验报告实验二图像处理一、实验目的(1)通过应用MA TLAB语言编程实现对图像的处理,进一步熟悉MATLAB软件的编程及应用;(2)通过实验进一步掌握图像处理的基本技术和方法。
二、实验内容及代码㈠.应用MA TLAB语言编写显示一幅灰度图像、二值图像、索引图像及彩色图像的程序,并进行相互之间的转换首先,在matlab页面中的current directory下打开存放图像的文件夹。
1.显示各种图像⑴显示彩色图像:①代码:>> mousetif=imread('tif.TIF');>> image(mousetif)显示截图:②代码:>> mousetif=imread('tif.TIF');>> imshow(mousetif)显示截图:③代码:mousetif=imread('tif.TIF');subimage(mousetif)显示截图:显示截图:⑵显示二值图像①代码:>> I=imread('单色bmp.bmp');>> imagesc(I,[0 2])显示截图:②代码:>> I=imread('单色bmp.bmp');>> imshow(I,2)显示截图:③代码:>> I=imread('单色bmp.bmp');>> subimage(I)显示截图:⑶显示灰度图像①代码:>> I1=imread('256bmp.bmp');>> imagesc(I1,[0,256])显示截图:代码:>> I1=imread('256bmp.bmp');>> colormap(gray);>> subplot(1,2,1);>> imagesc(I1,[0,256]);>> title('灰度级为[0 256]的mouse.bmp图');>> subplot(1,2,2);>> imagesc(I1,[0,64]);>> colormap(gray);>> title('灰度级为[0 64]的mouse.bmp图');显示截图:⑷显示索引图像代码:>> mousetif=imread('tif.TIF');>> [x,map]=rgb2ind(mousetif,0.7);>> subplot(1,2,1);>> imshow(mousetif);>> title('彩色图像');>> subplot(1,2,2);>> imshow(x,map);>> title('索引图');截图显示:彩色图像索引图2.图像之间的转换⑴索引图像转灰度图像代码:>> II1=ind2gray(x,map);>> imshow(x,map);>> title('索引图像');>> imshow(II1);>> title('灰度图像');截图显示:索引图像灰度图像⑵ 索引图像转彩色图像⑶ 索引图像转二值图像⑷ 灰度图像转索引图像代码:>> I1=imread('256bmp.bmp');>> subplot(1,2,1);>> imagesc(I1,[0,256]); >> colormap(gray); >> title('灰度图');>> [x,map]=gray2ind(I1,256); >> subplot(1,2,2); >> image(x);>> colormap(map); >> title('索引图');显示截图:灰度图2004006008001000100200300400500600索引图2004006008001000100200300400500600⑸灰度图像转彩色图像⑹灰度图像转二值图像⑺彩色图像转灰度图像⑻彩色图像转索引图像代码:>> mousetif=imread('tif.TIF');>> [x,map]=rgb2ind(mousetif,0.7);>> subplot(1,2,1);>> imshow(mousetif);>> title('彩色图像');>> subplot(1,2,2);>> imshow(x,map);>> title('索引图');显示截图:彩色图像索引图⑼彩色图像转二值图像⑽二值图像转索引图像⑾二值图像转彩色图像⑿二值图像转灰度图像㈡应用MA TLAB工具箱演示一幅图像的傅里叶变换、离散余弦变换,观察其频谱图。
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 的变化和解的相对变化。
MATLAB实验报告(1-4)
信号与系统MATLAB第一次实验报告一、实验目的1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。
2.学会运用MATLAB表示常用连续时间信号的方法3.观察并熟悉一些信号的波形和特性。
4.学会运用MATLAB进行连续信号时移、反折和尺度变换。
5.学会运用MATLAB进行连续时间微分、积分运算。
6.学会运用MATLAB进行连续信号相加、相乘运算。
7.学会运用MATLAB进行连续信号的奇偶分解。
二、实验任务将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。
三、实验内容1.MATLAB软件基本运算入门。
1). MATLAB软件的数值计算:算数运算向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。
2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn 为结束值。
矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开;矩阵的不同行之间必须用分号”;”或者ENTER分开。
2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。
3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。
举例:计算一个函数并绘制出在对应区间上对应的值。
2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名”2.MATLAB软件简单二维图形绘制1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y)2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p)3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin])4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’)5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’)6).输出:grid on举例1:举例2:3.matlab程序流程控制1).for循环:for循环变量=初值:增量:终值循环体End2).while循环结构:while 逻辑表达式循环体End3).If分支:(单分支表达式)if 逻辑表达式程序模块End(多分支结构的语法格式)if 逻辑表达式1程序模块1Else if 逻辑表达式2程序模块2…else 程序模块nEnd4).switch分支结构Switch 表达式Case 常量1程序模块1Case 常量2程序模块2……Otherwise 程序模块nEnd4.典型信号的MATLAB表示1).实指数信号:y=k*exp(a*t)举例:2).正弦信号:y=k*sin(w*t+phi)3).复指数信号:举例:4).抽样信号5).矩形脉冲信号:y=square(t,DUTY) (width默认为1)6).三角波脉冲信号:y=tripuls(t,width,skew)(skew的取值在-1~+1之间,若skew取值为0则对称)周期三角波信号或锯齿波:Y=sawtooth(t,width)5.单位阶跃信号的MATLAB表示6.信号的时移、反折和尺度变换:Xl=fliplr(x)实现信号的反折7.连续时间信号的微分和积分运算1).连续时间信号的微分运算:语句格式:d iff(function,’variable’,n)Function:需要进行求导运算的函数,variable:求导运算的独立变量,n:求导阶数2).连续时间信号的积分运算:语句格式:int(function,’variable’,a,b)Function:被积函数variable:积分变量a:积分下限b:积分上限(a&b默认是不定积分)8.信号的相加与相乘运算9.信号的奇偶分解四、小结这一次实验让我能够教熟悉的使用这个软件,并且能够输入简单的语句并输出相应的结果和波形图,也在一定程度上巩固了c语言的一些语法。
MATLAB实验报告2
实验二用MATLAB实现线性系统的时域分析[实验目的]1.研究线性系统在典型输入信号作用下的暂态响应;2.熟悉线性系统的暂态性能指标;3.研究二阶系统重要参数阻尼比ξ对系统动态性能的影响;4.熟悉在MATLAB下判断系统稳定性的方法;5.熟悉在MATLAB下求取稳态误差的方法。
[实验原理]MATLAB中有两类用于求解系统时域响应的方法。
一、用MATLAB函数(命令)进行暂态响应分析1 求取线性连续系统的单位阶跃响应的函数——step基本格式为:step(sys)、step(num,den)、step(A,B,C,D)、step(sys,t) 、step(sys1,sys2,…,t) 、y=step(sys,t)、[y,t]=step(sys)、[y,t,x]=step(sys)其中模型对象的类型如下:sys = tf(num,den) 多项式模型、sys = zpk(z,p,k) 零点极点模型、sys = ss(a,b,c,d) 状态空间模型参数无t,表示时间向量t的范围自动设定。
参数有t,表示给定时间向量t,应该有初值,时间增量,末值,如t=0:0.01:2。
前5种函数可以绘出阶跃响应曲线;后3种函数不绘阶跃响应曲线,而是返回响应变量y,时间向量t,以及状态变量x。
2 求取线性连续系统的单位脉冲响应的函数——impulse基本格式为:impulse(sys)、impulse(num,den) 、impulse (sys,tf)、impulse (sys,t) 、impulse (sys1,sys2,…,t) 、y=impulse(sys,t) 、[y,t]=impulse(sys) 、[y,t,x]=impulse (sys)3 求取线性连续系统的单位斜坡响应MATLAB没有直接求系统斜坡响应的功能函数。
在求取控制系统的斜坡响应时,通常用阶跃响应函数step()求取传递函数为G (s)/s的系统的阶跃响应,则其结果就是原系统G (s)的斜坡响应。
MATLAB试验报告
实验二初试MATLAB一、实验目的1.熟悉视窗下的MATLAB环境;2.掌握MATLAB软件的基本使用方法;3.应用MATLAB命令建立系统数学模型;4.掌握利用MATLAB软件进行控制系统模型转换的方法。
二、实验属性(验证性)三、实验仪器设备及器材1.硬件要求基于IBM-PC或与之完全相兼容的带有中央处理器的奔腾及其以上机器至少64KB内存,推荐使用128KB以上内存。
2.软件要求安装有MATLAB,并且有Microsoft Word7.0(office95)以上支持的操作系统。
四、实验要求实验前要求熟悉相关MATLAB函数并预习实验的相关内容,写出预习报告。
实验时要按要求完成上机实验内容并且检验和调整程序,观察并记录仿真结果。
实验后写出实验报告,并对仿真实验结果进行分析、讨论。
五、实验内容与步骤1.双击MATLAB6.5的图标,运行MATLAB时,展示在用户面前的为桌面环境的缺省界面窗口,如图2-1所示。
图2-1 MATLAB的桌面环境要求熟悉视窗下的MATLAB环境,分别观察和熟悉菜单项、工具栏、历史命令窗口、命令窗口、当前目录浏览器、工作空间浏览器、目录分类窗口、M文件编辑器/调试器、超文本帮助浏览器。
2.单击工具栏中帮助按钮(或者单击Help菜单中的MATLAB Help),打开MATLAB6.5的帮助系统,练习和熟悉MATLAB6.5的帮助系统的使用。
3.应用MATLAB命令编写相应M文件,建立图2-2系统的数学模型——闭环传递函数。
图2-2 调速系统g1=tf(1,[0.01,1]);g2=tf([0.17,1],[0.085,0]);g3=g1;g4=tf([0.15,1],[0.05,0]);g5=tf(70,[0.0067,1]);g6=tf(0.21,[0.15,1]);g7=tf(130,[1,0]);g11=feedback(g6,0.01*g4*g5*g1);g22=feedback(g1*g7,0.212);g33=feedback(g2*g3*g4*g5*g22,0.0044*g1);g=g1*g33Transfer function:2.321 s^3 + 261.2 s^2 + 3003 s + 9100--------------------------------------------------------------- 2.848e-013 s^8 + 1.564e-010 s^7 + 3.487e-008 s^6 + 4.042e-006 s^5 + 0.0002572 s^4 + 0.01876 s^3 + 1.266 s^2+ 13.21 s + 40.04实验三 基于MATLAB 的系统时域分析一、实验目的1.熟悉MATLAB 的各种绘图命令;2.掌握基于MATLAB 的控制系统时域分析方法。
matlab计算机实验报告
matlab计算机实验报告Matlab计算机实验报告引言Matlab是一种强大的计算机软件,广泛应用于科学计算、数据分析和工程设计等领域。
本实验报告旨在介绍我对Matlab的实验研究和应用。
通过实验,我深入了解了Matlab的功能和特点,并通过实际案例展示了其在科学计算和数据处理中的应用。
实验一:基本操作和语法在本实验中,我首先学习了Matlab的基本操作和语法。
通过编写简单的程序,我熟悉了Matlab的变量定义、赋值、运算符和条件语句等基本语法。
我还学习了Matlab的矩阵操作和向量化计算的优势。
通过实例演示,我发现Matlab在处理大规模数据时具有高效性和便捷性。
实验二:数据可视化数据可视化是Matlab的重要应用之一。
在本实验中,我学习了如何使用Matlab绘制各种图表,如折线图、散点图、柱状图和饼图等。
我了解了Matlab 的绘图函数和参数设置,并通过实例展示了如何将数据转化为直观的图形展示。
数据可视化不仅可以帮助我们更好地理解数据,还可以用于数据分析和决策支持。
实验三:数值计算和优化Matlab在数值计算和优化方面具有强大的功能。
在本实验中,我学习了Matlab 的数值计算函数和工具箱,如数值积分、微分方程求解和线性代数运算等。
通过实例研究,我发现Matlab在求解复杂数学问题和优化算法方面具有出色的性能。
这对于科学研究和工程设计中的数值分析和优化问题非常有用。
实验四:图像处理和模式识别Matlab在图像处理和模式识别领域也有广泛的应用。
在本实验中,我学习了Matlab的图像处理工具箱和模式识别算法。
通过实例演示,我了解了如何使用Matlab进行图像滤波、边缘检测和特征提取等操作。
我还学习了一些常见的模式识别算法,如支持向量机和神经网络等。
这些技术在计算机视觉和模式识别中具有重要的应用价值。
实验五:信号处理和系统建模Matlab在信号处理和系统建模方面也有广泛的应用。
在本实验中,我学习了Matlab的信号处理工具箱和系统建模工具。
南华大学《MATLAB及应用》实验报告2
核科学技术学院实验报告实验项目名称MATLAB符号计算所属课程名称MATLAB及应用实验类型上机实验实验日期12月日指导教师谢芹班级学号姓名成绩一、实验名称MATLAB符号计算二、实验目的(1)掌握定义符号对象的方法(2)掌握符号表达式的运算法则以及符号矩阵运算(3)掌握求符号函数极限及导数的方法(4)掌握求符号函数定积分和不定积分的方法三、实验原理1. 函数极限及导数的方法(1)函数极限:limit(F,x,a) 求符号函数f(x)的极限值。
即计算当变量x趋近于常数a时,f(x)函数的极限值。
(2)limit(f):求符号函数f(x)的极限值。
符号函数f(x)的变量为函数findsym(f)确定的默认变量;没有指定变量的目标值时,系统默认变量趋近于0,即a=0的情况。
(3)limit(f,x,a,'right'):求符号函数f的极限值。
'right'表示变量x从右边趋近于a。
(4)limit(f,x,a,‘left’):求符号函数f的极限值。
‘left’表示变量x从左边趋近于a。
2. 微分:diff(s):没有指定变量和导数阶数,则系统按findsym函数指示的默认变量对符号表达式s求一阶导数。
diff(s,'v'):以v为自变量,对符号表达式s求一阶导数。
diff(s,n):按findsym函数指示的默认变量对符号表达式s求n阶导数,n为正整数。
diff(s,'v',n):以v为自变量,对符号表达式s求n阶导数。
3. 函数定积分和不定积分的方法:int(s):没有指定积分变量和积分阶数时,系统按findsym函数指示的默认变量对被积函数或符号表达式s求不定积分。
int(s,v):以v为自变量,对被积函数或符号表达式s求不定积分。
int(s,v,a,b):求定积分运算。
a,b分别表示定积分的下限和上限。
梯形法:trapz(x,y):x为分割点构成的向量,y为被积函数在分割点上的函数值构成的向量;抛物线法:quad(f,a,b,tol),f 是被积函数,[a,b]是积分区间,tol 是精度。
MATLAB实验报告2
MATLAB实验报告2成绩:______实课程名称:实验名称:院(系):专业班级:姓名:学号:指导教师:验报告现代控制理论基础线性系统理论上机实验信控学院自动化1001 嵇启春年月日实验一:matlab运算基础日期: 2011 年 3月 9日评分:_________ 批阅教师签字:________ 班级:自动化1001 姓名:韩永龙学号:100610106一、实验目的1.2.3.4. 熟悉启动和退出matlab的方法。
熟悉matlab命令窗口的组成。
掌握建立矩阵的方法。
掌握matlab各种表达式的书写规则以及常用函数的使用。
二、实验环境matlab 6.5 开发平台三、实验内容1. 先求下列表达式的值,然后显示matlab工作空间的使用情况并保存全部变量。
(1)z1=1?2i??22sin8512?x(2)z=ln(x+) , 其中x=??0.45? 251?e22?? e0.3a?e?0.3a0.3?a(3)z3=sin(a+0.3)+ln ,a=-3.0,-2.9,-2.8,…,2.8,2.9,3.022 (提示:利用冒号表达式生成a向量,求个点的函数值时用点乘运算。
) ?t20?t?1?(4)z4= ?t2?11?t?2 ?t2?2t?12?t?3?求分段函数值。
)2. 已知:,其中t=0:0.5:2.5(提示:用逻辑表达式1234?4??13?1 3 a=34787 b=20??3657???3?27??求下列表达式的值:(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和b1234?6789?a=?11121314??16171819212223245??3016??17?69?1015?b=?023?4? ???20?970???25???41311??(1) 求它们的乘积c。
实验二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实验报告二
Matlab 程序设计实验报告一.实验目的1. 掌握MATLAB 数据对象的特点和运算规则。
2. 掌握MATLAB 中建立矩阵的方法和矩阵的处理方法。
二.实验内容23100.7780414565532503269.5454 3.14A -⎡⎤⎢⎥-⎢⎥=⎢⎥⎢⎥-⎣⎦,0.434328.9421B ⎡⎤=⎢⎥-⎣⎦ 1. 将矩阵A 的某个元素用机器零代替>> A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]23.0000 10.0000 -0.7780 041.0000 -45.0000 65.0000 5.000032.0000 5.0000 0 32.00006.0000 -9.5400 54.0000 3.1400>> A(3,2)ans =5>> A(3,2)=epsA =23.0000 10.0000 -0.7780 041.0000 -45.0000 65.0000 5.000032.0000 0.0000 0 32.00006.0000 -9.5400 54.0000 3.1400>>2.将A转化为2x8的矩阵,转化成1x16、16x1的向量>> reshape(A,2,8)ans =23.0000 32.0000 10.0000 0.0000 -0.7780 0 0 32.000041.0000 6.0000 -45.0000 -9.5400 65.0000 54.0000 5.0000 3.1400 >> reshape(A,1,16)ans =Columns 1 through 923.0000 41.0000 32.0000 6.0000 10.0000 -45.0000 0.0000 -9.5400 -0.7780Columns 10 through 16>> reshape(A,16,1)ans =23.000041.000032.00006.000010.0000-45.00000.0000-9.5400-0.778065.000054.00005.000032.00003.140065.0000 0 54.0000 0 5.0000 32.0000 3.14003.自定义一个字符串,求其ASCII>> zifu='abcd 12345ABCD'zifu =abcd 12345ABCD>> abs(zifu)ans =97 98 99 100 32 49 50 51 52 53 65 66 67 68>>4.产生和A一样大小的0矩阵和1矩阵>> A=[23,10,-0.778,0;41,-45,65,5;32,5,0,32;6,-9.54,54,3.14]A =23.0000 10.0000 -0.7780 041.0000 -45.0000 65.0000 5.000032.0000 5.0000 0 32.00006.0000 -9.5400 54.0000 3.1400>> ndims(A)ans =2>> size(A)ans =4 4>> zeros(size(A))ans =0 0 0 00 0 0 00 0 0 00 0 0 0>> ones(size(A))ans =1 1 1 11 1 1 11 1 1 11 1 1 1>>5.从A提取主对角线元素,构成对角阵>> diag(diag(A))ans =23.0000 0 0 00 -45.0000 0 00 0 0 00 0 0 3.1400>>6.产生均值为3,方差为1的500个正态分布的随机序列,写入表达式>> y=3+sqrt(1)*rand(10,50)y =Columns 1 through 93.9501 3.6154 3.0579 3.0153 3.8381 3.1934 3.4966 3.7271 3.79483.2311 3.7919 3.3529 3.7468 3.0196 3.6822 3.8998 3.3093 3.95683.6068 3.9218 3.8132 3.4451 3.6813 3.3028 3.8216 3.8385 3.52263.4860 3.7382 3.0099 3.9318 3.3795 3.5417 3.6449 3.5681 3.88013.8913 3.1763 3.1389 3.4660 3.8318 3.1509 3.8180 3.3704 3.17303.7621 3.4057 3.2028 3.4186 3.5028 3.6979 3.6602 3.7027 3.97973.4565 3.9355 3.1987 3.8462 3.7095 3.3784 3.3420 3.5466 3.27143.0185 3.9169 3.6038 3.5252 3.4289 3.8600 3.2897 3.4449 3.25233.8214 3.4103 3.2722 3.2026 3.3046 3.8537 3.3412 3.6946 3.87573.4447 3.8936 3.1988 3.6721 3.1897 3.5936 3.5341 3.6213 3.7373Columns 10 through 183.1365 3.5828 3.2091 3.4154 3.2140 3.6833 3.4514 3.6085 3.08413.0118 3.4235 3.3798 3.3050 3.6435 3.2126 3.0439 3.0158 3.45443.8939 3.5155 3.7833 3.8744 3.3200 3.8392 3.0272 3.0164 3.44183.1991 3.3340 3.6808 3.0150 3.9601 3.6288 3.3127 3.1901 3.35333.2987 3.4329 3.4611 3.7680 3.7266 3.1338 3.0129 3.5869 3.15363.6614 3.2259 3.5678 3.9708 3.4120 3.2071 3.3840 3.0576 3.67563.2844 3.5798 3.7942 3.9901 3.7446 3.6072 3.6831 3.3676 3.69923.4692 3.7604 3.0592 3.7889 3.2679 3.6299 3.0928 3.6315 3.72753.0648 3.5298 3.6029 3.4387 3.4399 3.3705 3.0353 3.7176 3.47843.9883 3.6405 3.0503 3.4983 3.9334 3.5751 3.6124 3.6927 3.5548Columns 19 through 273.1210 3.2319 3.4398 3.9342 3.1370 3.4225 3.2974 3.3759 3.19393.4508 3.2393 3.3400 3.2644 3.8188 3.8560 3.0492 3.0099 3.90483.7159 3.0498 3.3142 3.1603 3.4302 3.4902 3.6932 3.4199 3.56923.8928 3.0784 3.3651 3.8729 3.8903 3.8159 3.6501 3.7537 3.63183.2731 3.6408 3.3932 3.2379 3.7349 3.4608 3.9830 3.7939 3.23443.2548 3.1909 3.5915 3.6458 3.6873 3.4574 3.5527 3.9200 3.54883.8656 3.8439 3.1197 3.9669 3.3461 3.4507 3.4001 3.8447 3.93163.2324 3.1739 3.0381 3.6649 3.1660 3.4122 3.1988 3.3678 3.33523.8049 3.1708 3.4586 3.8704 3.1556 3.9016 3.6252 3.6208 3.65553.9084 3.9943 3.8699 3.0099 3.1911 3.0056 3.7334 3.7313 3.3919Columns 28 through 363.6273 3.7165 3.1146 3.3603 3.4319 3.7327 3.3567 3.6700 3.90903.6991 3.5113 3.6649 3.5485 3.6343 3.4222 3.4983 3.2009 3.59623.3972 3.7764 3.3654 3.2618 3.8030 3.9614 3.4344 3.2731 3.32903.4136 3.4893 3.1400 3.5973 3.0839 3.0721 3.5625 3.6262 3.47823.6552 3.1859 3.5668 3.0493 3.9455 3.5534 3.6166 3.5369 3.59723.8376 3.7006 3.8230 3.5711 3.9159 3.2920 3.1133 3.0595 3.16143.3716 3.9827 3.6739 3.7009 3.6020 3.8580 3.8983 3.0890 3.82953.4253 3.8066 3.9994 3.9623 3.2536 3.3358 3.7546 3.2713 3.95613.5947 3.7036 3.9616 3.7505 3.8735 3.6802 3.7911 3.4091 3.59553.5657 3.4850 3.0589 3.7400 3.5134 3.0534 3.8150 3.4740 3.0287Columns 37 through 453.8121 3.9566 3.1879 3.2460 3.2859 3.7241 3.8289 3.3663 3.22193.6101 3.1472 3.4906 3.5874 3.3941 3.2816 3.1663 3.3025 3.70373.7015 3.8699 3.4093 3.5061 3.5030 3.2618 3.3939 3.8518 3.52213.0922 3.7694 3.4635 3.4648 3.7220 3.7085 3.5208 3.7595 3.93293.4249 3.4442 3.6109 3.5414 3.3062 3.7839 3.7181 3.9498 3.71343.3756 3.6206 3.0712 3.9423 3.1122 3.9862 3.5692 3.5579 3.22803.1662 3.9517 3.3143 3.3418 3.4433 3.4733 3.4608 3.0142 3.44963.8332 3.6400 3.6084 3.4018 3.4668 3.9028 3.4453 3.5962 3.17223.8386 3.2473 3.1750 3.3077 3.0147 3.4511 3.0877 3.8162 3.96883.4516 3.3527 3.6210 3.4116 3.6641 3.8045 3.4435 3.9771 3.3557Columns 46 through 503.0490 3.2093 3.1998 3.5979 3.99953.7553 3.4551 3.0495 3.9492 3.21203.8948 3.0811 3.5667 3.2888 3.49843.2861 3.8511 3.1219 3.8888 3.29053.2512 3.5620 3.5221 3.1016 3.67283.9327 3.3193 3.1171 3.0653 3.95803.1310 3.3749 3.7699 3.2343 3.76663.9408 3.8678 3.3751 3.9331 3.66613.7019 3.3722 3.8234 3.0631 3.13093.8477 3.0737 3.0466 3.2642 3.09547.求A和B的上三角矩阵、下三角矩阵、逆矩阵、行列式的值、秩、范数、条件数、迹A =23.0000 10.0000 -0.7780 041.0000 -45.0000 65.0000 5.000032.0000 5.0000 0 32.00006.0000 -9.5400 54.0000 3.1400>> B=[0.43,43,2;-8.9,4,21]B =0.4300 43.0000 2.0000-8.9000 4.0000 21.0000triu(A)ans =23.0000 10.0000 -0.7780 00 -45.0000 65.0000 5.00000 0 0 32.00000 0 0 3.1400tril(A)ans =23.0000 0 0 041.0000 -45.0000 0 032.0000 5.0000 0 06.0000 -9.5400 54.0000 3.1400>> inv(A)ans =0.0307 0.0090 -0.0004 -0.01040.0297 -0.0210 0.0008 0.02570.0039 -0.0044 -0.0017 0.0238-0.0353 -0.0057 0.0315 0.0064>> Pinv(B)Warning: Could not find an exact (case-sensitive) match for 'Pinv'. C:\MATLAB701\toolbox\matlab\matfun\pinv.m is a case-insensitive match and will be used instead. You can improve the performance of your code by using exact name matches and we therefore recommend that you update your usage accordingly. Alternatively, you can disable this warning using warning('off','MATLAB:dispatcher:InexactMatch').ans =0.0022 -0.01750.0234 -0.0017-0.0035 0.0405>> det(A)ans =1.8965e+006>> rank(A)ans =4>> norm(A,1)ans =119.7780>> cond(A,1)ans =11.9307>> trace(A)ans =-18.8600>>8.A=[34,NaN,Inf,-Inf,-pi,eps,0],对A求all、any、isnan、isinf、isfinite函数的值A=[34,NaN,Inf,-Inf,-pi,eps,0]A =34.0000 NaN Inf -Inf -3.1416 0.0000 0>> all(A)ans =>> any(A)ans =1>> isnan(A)ans =0 1 0 0 0 0 0>> isinf(A)ans =0 0 1 1 0 0 0>> isfinite(A)ans =1 0 0 0 1 1 1>>9.建立结构矩阵,并索引其中的元素a.x1=10; a.x2='abc'; a(2).x1=12; a(2).x2='wang';10.建立单元矩阵,并索引其中的元素。
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数学实验报告2
MATLAB数学实验报告姓名:李帆班级:机械(硕)21学号:2120104008第一次数学实验报告——线性规划问题一,实验问题1,某饲养场饲养动物出售,设每头动物每天至少需要700g蛋白质,30g矿物质,100mg 维生素。
现有五种饲料可供选择,各种饲料的每千克营养成分含量和单价如下表。
是确定既能满足动物生长的营养需要,游客是费用最省的选用饲料方案。
2,某工厂生产甲、乙、丙三种产品,单位产品所需工时分别为2、3、1个;单位产品所需原料分别为3、1、5公斤;单位产品利润分别为2、3、5元。
工厂每天可利用的工时为12个,可供应的原料为15公斤。
为使总利润为最大,试确定日生产计划和最大利润。
二,问题分析1,1)该题属于采用线性规划的方式求出最优解的数学问题。
该题有以下特点,1.目标函数有线性,是求目标函数的最小值;2.约束条件为线性方程组;3.未知变量都有非负限制。
1,2)求解该类问题的方法有图解法,理论解法和软件解法。
图解法常用于解变量较少的线性规划问题。
理论解法要构建完整的理论体系。
目前用于解线性规划的理论解法有:单纯形法,椭球算法等。
在此,我们采用单纯形法的MATLAB软件解法来求解该问题。
1,3)此题中,要求既要满足动物生长的营养需要,又要使费用最省,则使每种饲料的选用量为变量,以总费用的最小值为所求量,同时每种饲料的使用量要符合营养成分的要求。
1,4)在此,首先确定建立线性规划模型。
设饲料i选用量为xi公斤,i=1,2,3,4,5.则有模型:Minz=0.2x1+0.7x2+0.4x3+0.3x4+0.8x5s.t.{3x1+2x2+6x4+18x5>=700;x1+0.5x2+0.2x3+2x4+0.5x5>=300.5x1+x2+0.2x3+2x4+0.8x5>=100Xj>=0,j=1,2,3,4,5解之得:x1=x2=x3=0X4=39.74359X5=25.14603Zmin=32.435902,1)该问题与第一题分析步骤相似,故只在此写出其线性规划模型Z=2x+3y+5z2x+3y+z<=123x+y+5z<=15三,程序设计流程图第一题:c=[0.2,0.7,0.4,0.3,0.8]A=[3,2,1,6,18;1,0.5,0.2,2,0.5;0.5,1,0.2,2,0.8;1,0,0,0,0;0,1, 0,0,0;0,0,1,0,0;0,0,0,1,0;0,0,0,0,1]b=[700,30,100,0,0,0,0,0][x,fval]=linprog(c,-A,-b)c=0.20000.70000.40000.30000.8000A=3.0000 2.0000 1.0000 6.000018.00001.00000.50000.20002.00000.50000.5000 1.00000.2000 2.00000.80001.000000000 1.000000000 1.000000000 1.000000000 1.0000b=7003010000000Optimization terminated.x=0.0000-0.00000.000039.743625.6410fval=32.4359第二题c=[-2-3-5]A=[231;315]b=[12;15]lb=[000][x,Z,exitflag,output]=linprog(c,A,b,[],[],lb,[])将上述程序输入matlab。
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实验报告一二三
2015秋2013级《MATLAB程序设计》实验报告实验一班级:软件131 姓名:付云雷学号:132872一、实验目的:1、了解MATLAB程序设计的开发环境,熟悉命令窗口、工作区窗口、历史命令等窗口的使用。
2、掌握MATLAB常用命令的使用。
3、掌握MATLAB帮助系统的使用。
4、熟悉利用MATLAB进行简单数学计算以及绘图的操作方法。
二、实验内容:1、启动MATLAB软件,熟悉MATLAB的基本工作桌面,了解各个窗口的功能与使用。
图1 MATLAB工作桌面2、MATLAB的常用命令与系统帮助:(1)系统帮助help:用来查询已知命令的用法。
例如已知inv是用来计算逆矩阵,键入help inv即可得知有关inv命令的用法。
lookfor:用来寻找未知的命令。
例如要寻找计算反矩阵的命令,可键入lookfor inverse,MATLAB即会列出所有和关键字inverse相关的指令。
找到所需的命令後,即可用help进一步找出其用法。
(2)数据显示格式:常用命令:说明format short 显示小数点后4位(缺省值)format long 显示15位format bank 显示小数点后2位format + 显示+,-,0format short e 5位科学记数法format long e 15位科学记数法format rat 最接近的有理数显示(3)命令行编辑:键盘上的各种箭头和控制键提供了命令的重调、编辑功能。
具体用法如下:↑----重调前一行(可重复使用调用更早的)↓----重调后一行→----前移一字符←----后移一字符home----前移到行首end----移动到行末esc----清除一行del----清除当前字符backspace----清除前一字符(4)MATLAB工作区常用命令:who--------显示当前工作区中所有用户变量名whos--------显示当前工作区中所有用户变量名及大小、字节数和类型disp(x) -----显示变量X的内容clear -----清除工作区中用户定义的所有变量save文件名-----保存工作区中用户定义的所有变量到指定文件中load文件名-----载入指定文件中的数据3、在命令窗口执行命令完成以下运算,观察workspace的变化,记录运算结果。
MATLAB第二章实验报告
MATLAB数据及基本操作班级:11电信一班姓名:何得中学号:20111060108实验目的:1.熟悉MATLAB的组体成体系及工作环境;2.了解MATLAB的帮助系统;3.掌握MATLAB的数据类型及变量的基本操作;4.掌握矩阵建立的基本方法及其运算;5.掌握矩阵索引与分析方法;6.熟悉字符串单元及结构数据的建立及基本操作。
实验仪器:MA TLAB软件,电脑实验数据:>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 34 5 67 8 9>> A=[1 2 34 5 67 8 9]A = 1 2 34 5 67 8 9>> x=0:pi/8:2*pi;>> y=cos(x)y = Columns 1 through 101.0000 0.9239 0.7071 0.3827 0.0000 -0.3827 -0.7071 -0.9239 -1.0000 -0.9239Columns 11 through 17-0.7071 -0.3827 -0.0000 0.3827 0.7071 0.9239 1.0000>> B=ones(3,5)B = 1 1 1 1 11 1 1 1 11 1 1 1 1>> zeros(3)ans = 0 0 00 0 00 0 0>> C=rand(3,4)C = 0.9501 0.4860 0.4565 0.44470.2311 0.8913 0.0185 0.61540.6068 0.7621 0.8214 0.7919>> D=randn(2,3)D = -0.4326 0.1253 -1.1465-1.6656 0.2877 1.1909>> eye(3)ans = 1 0 00 1 00 0 1>> M=magic(4)M = 16 2 3 135 11 10 89 7 6 124 14 15 1>> T=toeplitz(1:5,1:6)T = 1 2 3 4 5 62 1 234 53 2 1 2 3 44 3 2 1 2 35 4 3 2 1 2>> H=hilb(5)H = 1.0000 0.5000 0.33330.2500 0.20000.5000 0.3333 0.2500 0.2000 0.16670.3333 0.2500 0.2000 0.1667 0.14290.2500 0.2000 0.1667 0.1429 0.12500.2000 0.1667 0.1429 0.1250 0.1111>> a=3:18a =3 4 5 6 7 8 9 10 1112 13 14 15 16 17 18>> b=1:0.2:6b =Columns 1 through 91.0000 1.2000 1.4000 1.600 1.80002.0000 2.2000 2.4000 2.6000 Columns 10 through 182.80003.0000 3.2000 3.40003.6000 3.80004.0000 4.2000 4.4000 Columns 19 through 264.6000 4.80005.0000 5.20005.4000 5.6000 5.80006.0000>> linspace(1,15,10)ans =Columns 1 through 91.00002.5556 4.1111 5.6667 7.2222 8.7778 10.3333 11.8889 13.4444Column 1015.0000>> y=[0.9 0.3 0.4 0.1 0.5 0.6 0.2 ]; >> [sorted,index]=sort(y)sorted =0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.9000 index =4 7 2 3 5 6 1>> A=rand(4,5)A = 0.9218 0.9355 0.0579 0.13890.27220.7382 0.9169 0.3529 0.2028 0.19880.1763 0.4103 0.8132 0.1987 0.01530.4057 0.8936 0.0099 0.6038 0.7468>> [a,b]=min(A)a =0.1763 0.4103 0.0099 0.13890.0153b = 3 3 4 1 3>> min(A(:))ans = 0.0099>> V=[1 2 3 4]V = 1 2 3 4>> norm(V,2)ans =5.4772>> norm(V,1)ans = 10>> norm(V,inf)ans = 4>> V=[2 5 6 8 4 9]V = 2 5 6 8 4 9>> min(V)ans = 2>> V=[4 9 6;7 8 9;4 5 6]V = 4 9 67 8 94 5 6>> min(V)ans = 4 5 6>> max(V)ans = 7 9 9>> mean(V)ans = 5.0000 7.3333 7.0000>> median(V)ans = 4 8 6>> std(V)ans = 1.7321 2.0817 1.7321>> diff(V)ans =3 -1 3-3 -3 -3>> sort(V)ans =4 5 64 8 67 9 9>> length(V)ans = 3>> norm(V)ans =19.9125>> sum(V)ans = 15 22 21>> prod(V)ans =112 360 324>> cumsum(V)ans = 4 9 611 17 1515 22 21 >> cumprod(V)ans = 4 9 628 72 54112 360 324>> V=[1 2 8]V = 1 2 8>> U=[3; 4;7]U = 347>> dot(V,U)ans =67>> cross(V,U)ans =-18 17 -2>> A=[5 6 4;7 8 9;4 5 6]A = 5 6 47 8 94 5 6>> B=[6 2 7 ;7 5 8;4 6 8]B = 6 2 77 5 84 6 8>> C=A-BC = -1 4 -30 3 10 -1 -2>> C=A*BC = 88 64 115134 108 18583 69 116>> C1=A\BC1 =0.6667 -6.4444 -7.66670.6667 4.8889 7.3333-0.3333 1.2222 0.3333>> C2=B/AC2 = -3.0000 8.3333 -9.3333-1.6667 5.5556 -5.88890.0000 -1.3333 3.3333>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 34 5 67 8 9>> D=A^2D = 30 36 4266 81 96102 126 150>> E=A^0.1E = 0.8466 + 0.2270i 0.3599 + 0.0579i -0.0967 - 0.1015i0.4015 + 0.0216i 0.4525 + 0.0133i 0.4432 - 0.0146i-0.0134 - 0.1740i 0.4848 - 0.0509i 1.0132 + 0.0820i>> A=[1+2*i 3;4 2+i]A =1.0000 + 2.0000i 3.00004.0000 2.0000 + 1.0000i>> A'ans = 1.0000 - 2.0000i 4.00003.0000 2.0000 - 1.0000i>> A=[1 2 3;4 5 6;7 8 9]A = 1 2 34 5 67 8 9>> B=[3 4 6;7 9 8;5 2 01]B = 3 4 67 9 85 2 1>> C=A.*BC = 3 8 1828 45 4835 16 9>> D=A./BD = 0.3333 0.5000 0.50000.5714 0.5556 0.75001.4000 4.0000 9.0000>> E=A.\BE = 3.0000 2.0000 2.00001.7500 1.8000 1.33330.7143 0.2500 0.1111>> A=[1+2*i 3;4 2+i]A = 1.0000 + 2.0000i 3.00004.0000 2.0000 + 1.0000i>> A.^2ans = -3.0000 + 4.0000i 9.000016.0000 3.0000 + 4.0000i>> A.'ans = 1.0000 + 2.0000i 4.00003.0000 2.0000 + 1.0000i>> x=0.1:0.1:0.8x =0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000>> y=sin(2*x).*cos(2*x)y =0.1947 0.3587 0.4660 0.4998 0.4546 0.3377 0.1675 -0.0292>> y=sin(x)y =0.0998 0.1987 0.2955 0.3894 0.4794 0.5646 0.6442 0.7174>> y=cos(x)y =0.9950 0.9801 0.9553 0.9211 0.8776 0.8253 0.7648 0.6967>> y=tan(x)y =0.1003 0.2027 0.3093 0.4228 0.5463 0.6841 0.8423 1.0296>> y=cot(x)y =9.9666 4.9332 3.2327 2.3652 1.8305 1.4617 1.1872 0.9712>> y=sec(x)y = 1.0050 1.0203 1.0468 1.0857 1.1395 1.2116 1.3075 1.4353>> y=csc(x)y = 10.0167 5.0335 3.3839 2.5679 2.0858 1.7710 1.5523 1.3940>> y=asin(x)y = 0.1002 0.2014 0.3047 0.4115 0.5236 0.6435 0.7754 0.9273>> y=acos(x)y = 1.4706 1.3694 1.2661 1.1593 1.0472 0.9273 0.7954 0.6435>> y=atan(x)y =0.0997 0.1974 0.2915 0.3805 0.4636 0.5404 0.6107 0.6747>> y=acot(x)y = 1.4711 1.3734 1.2793 1.1903 1.1071 1.0304 0.9601 0.8961>> y=asec(x)y =Columns 1 through 60 + 2.9932i 0 + 2.2924i0 + 1.8738i 0 + 1.5668i 0 +1.3170i 0 + 1.0986iColumns 7 through 80 + 0.8956i 0 + 0.6931i>> y=sinh(x)y =0.1002 0.2013 0.3045 0.4108 0.5211 0.6367 0.7586 0.8881>> y=cosh(x)y =1.0050 1.0201 1.0453 1.0811 1.1276 1.1855 1.2552 1.3374>> y=tanh(x)y = 0.0997 0.1974 0.2913 0.3799 0.4621 0.5370 0.6044 0.6640>> y=coth(x)y = 10.0333 5.0665 3.4327 2.6319 2.1640 1.8620 1.6546 1.5059>> y=sech(x)y = 0.9950 0.9803 0.9566 0.9250 0.8868 0.8436 0.7967 0.7477>> y=csch(x)y = 9.9834 4.9668 3.2839 2.4346 1.9190 1.5707 1.3182 1.1260>> y=asinh(x)y = 0.0998 0.1987 0.2957 0.3900 0.4812 0.5688 0.6527 0.7327>> y=acosh(x)y =Columns 1 through 60 + 1.4706i 0 + 1.3694i0 + 1.2661i 0 + 1.1593i 0 +1.0472i 0 + 0.9273iColumns 7 through 80 + 0.7954i 0 + 0.6435i>> y=atanh(x)y = 0.1003 0.2027 0.3095 0.4236 0.5493 0.6931 0.8673 1.0986>> y=acoth(x)y = Columns 1 through 60.1003 + 1.5708i 0.2027 + 1.5708i 0.3095 + 1.5708i 0.4236 + 1.5708i 0.5493 + 1.5708i 0.6931 + 1.5708i Columns 7 through 80.8673 + 1.5708i 1.0986 + 1.5708i >> y=asech(x)y = 2.9932 2.2924 1.8738 1.5668 1.3170 1.0986 0.8956 0.6931>> y=acsch(x)y = 2.9982 2.3124 1.9189 1.6472 1.4436 1.2838 1.1545 1.0476>> y=log(x)y =-2.3026 -1.6094 -1.2040 -0.9163 -0.6931 -0.5108 -0.3567 -0.2231>> y=log10(x)y = -1.0000 -0.6990 -0.5229 -0.3979 -0.3010 -0.2218 -0.1549 -0.0969>> y=log2(x)y =-3.3219 -2.3219 -1.7370 -1.3219 -1.0000 -0.7370 -0.5146 -0.3219>> c=complex(a,b)c = 0.1763 + 3.0000i 0.4103 + 3.0000i0.0099 + 4.0000i 0.1389 + 1.0000i 0.0153 + 3.0000i>> zc=conj(x)zc =0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000>> b=imag(x)b = 0 0 0 0 0 00 0>> a=real(x)a = 0.1000 0.2000 0.3000 0.40000.5000 0.6000 0.7000 0.8000>> y=fix(x)y = 0 0 0 0 0 0 0 0>> y=floor(x)y =0 0 0 0 0 0 0 0 >> y=ceil(x)y = 1 1 1 1 1 1 1 1>> y=round(x)y = 0 0 0 0 1 1 1 1>> y=sign(x)y = 1 1 1 1 1 1 1 1>> S=rats(x)S =1/10 1/5 3/10 2/5 1/2 3/5 7/10 4/5>> [N,D]=rat(x)N = 1 1 3 2 1 37 4D = 10 5 10 5 2 510 5>> A=[2 4 6;3 5 7;8 10 9]A = 2 4 63 5 78 10 9>> B=[4 1 5;7 5 0;9 3 6]B = 4 1 57 5 09 3 6>> A>Bans = 0 1 10 0 10 1 1>> A<Bans = 1 0 01 0 01 0 0>> A>=Bans = 0 1 10 1 10 1 1>> A<=Bans = 1 0 01 1 01 0 0>> A==Bans = 0 0 00 1 00 0 0>> A~=Bans =1 1 11 0 11 1 1>> A&Bans = 1 1 11 1 01 1 1>> A|Bans = 1 1 11 1 11 1 1>> ~Aans = 0 0 00 0 00 0 0>> ~Bans = 0 0 00 0 10 0 0>> x=0:pi/100:3*pi;>> y=sin(x);>> plot(x,y);>> y1=(x<pi|x>2*pi).*y;>> figure,plot(x,y1);>> r=(x>pi/3&x<2*pi/3)|(x>7*pi/3&8*pi/3);>> rn=~r;>> y2=r*sin(pi/3)+rn.*y1;>> figure,plot(x,y2)>> x=[0 4 5 9 8 6 74 85 7 4 85 8 4 5 8]x =0 4 5 9 8 6 74 85 7 4 85 8 4 5 8>> all(x)ans =0>> any(x)ans = 1>> find(x)ans =2 3 4 5 6 7 8 9 10 11 12 13 14 15>> isempty(x)ans =>> isglobal(x)Warning: isglobal is obsolete and will be discontinued. Type "help isglobal" for more details.ans =0>> isinf(x)ans =0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>> isnan(x)ans =0 0 0 0 0 0 0 0 0 0 0 0 0 0 0>> isfinite(x)ans =1 1 1 1 1 1 1 1 1 1 1 1 1 1 1>> issparse(x)ans = 0>> isstr(x)ans =0>> not(x)ans =1 0 0 0 0 0 0 0 0 0 0 0 0 0 0>> y=[59 46 78 2 3 98 1 2 3 57 9 5 66 8 900 5]y =59 46 78 2 3 98 1 2 3 57 9 5 66 8 900 5>> y=[59 46 78 2 3 98 1 2 3 57 9 5 66 8 900 5]y = 59 46 78 2 3 98 1 2 3 57 9 5 66 8 900 5>> x=[0 4 5 9 8 6 74 85 7 4 85 8 4 5 8]x = 0 4 5 9 8 6 74 85 7 4 85 8 4 5 8>> A=[4 -40 2; 23 50 17;18 29 14]A = 4 -40 223 50 1718 29 14>> [r,c]=find(A>=20&A<=30)r = 23c = 12>> bitand(12,6)ans = 4>> bitshift(12,1)ans = 24>> bitxor(12,1)ans =13>> bitset(12,1)ans = 13 >> bitget(12,1)ans =0>> A =[ 87 59 56 85 66 21 12 35 62 64 69 88 99 81]A =87 59 56 85 66 21 1235 62 64 69 88 99 81>> A(2)ans =59>> A([1,2,8])ans =87 59 35>> A([9,6,2])ans =62 21 59>> A([end-4:end])ans =64 69 88 99 81>> A([1:5,5:-1:1])ans = 87 59 56 85 66 66 85 56 59 87>> A(3)=-1A = 87 59 -1 85 66 2112 35 62 64 69 88 99 81>> A(15)=-8A =87 59 -1 85 66 2112 35 62 64 69 88 99 81 -8>> A(20)=-1A = Columns 1 through 1687 59 -1 85 66 21 12 35 62 64 69 88 99 81 -8 0Columns 17 through 200 0 0 -1>> A=rand(8)A = 0.9501 0.8214 0.9355 0.13890.4451 0.8381 0.3046 0.37840.2311 0.4447 0.9169 0.2028 0.9318 0.0196 0.1897 0.86000.6068 0.6154 0.4103 0.1987 0.4660 0.6813 0.1934 0.85370.4860 0.7919 0.8936 0.6038 0.4186 0.3795 0.6822 0.59360.8913 0.9218 0.0579 0.2722 0.8462 0.8318 0.3028 0.49660.7621 0.7382 0.3529 0.1988 0.5252 0.5028 0.5417 0.89980.4565 0.1763 0.8132 0.0153 0.2026 0.7095 0.1509 0.82160.0185 0.4057 0.0099 0.7468 0.6721 0.4289 0.6979 0.6449>> A(3,3)ans =0.4103>> A(8)ans =0.0185>> sub2ind(size(A),3,3)ans =19>> [i,j]=ind2sub(size(A),19)i =3j =3>> A(:,4)ans =0.13890.20280.19870.60380.27220.19880.01530.7468>> A(3,:)ans =0.6068 0.6154 0.4103 0.1987 0.4660 0.6813 0.1934 0.8537>> A(end,:)ans =0.0185 0.4057 0.0099 0.7468 0.6721 0.4289 0.6979 0.6449>> A(3:4,5:6)ans =0.4660 0.68130.4186 0.3795>> A(2:2:4,1:2:5)ans =0.2311 0.9169 0.93180.4860 0.8936 0.4186>> A=reshape(A,5,5)A = 1 6 11 16 212 7 12 17 223 8 13 18 234 9 14 19 245 10 15 20 25>> A(:)'ans =Columns 1 through 161 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16Columns 17 through 2517 18 19 20 21 22 23 24 25>> A(:,1:2:5)=[]A = 6 167 178 189 1910 20>> A=[9 8 7;6 5 4;3 2 1];>> D=diag(A)D =951>> D1=diag(A,1)D1 =84>> D2=diag(A,-1)D2 =62>> V=[1 2 3 4];>> diag(V)ans = 1 0 0 00 2 0 00 0 3 00 0 0 4>> diag(1:3,-1)ans = 0 0 0 01 0 0 00 2 0 00 0 3 0>>A=[17,1,0,15;5,7,14,16;4,0,13,0;10,12,19,21]; >> D=diag(4:-1:1);>> D*Aans = 68 4 0 6015 21 42 488 0 26 010 12 19 21>> triu(A)ans =17 1 0 150 7 14 160 0 13 00 0 0 21>> triu(A,1)ans = 0 1 0 150 0 14 160 0 0 00 0 0 0>> B=A'B =17 5 4 101 7 0 120 14 13 1915 16 0 21>> rot90(A)ans =15 16 0 210 14 13 191 7 0 1217 5 4 10>> rot90(A,3)ans =10 4 5 1712 0 7 119 13 14 021 0 16 15>> B=fliplr(A)B = 15 0 1 1716 14 7 50 13 0 421 19 12 10>> B=flipud(A)B = 10 12 19 214 0 13 05 7 14 1617 1 0 15>> A=[4 5 6 9;7 8 9 5;4 5 6 9;7 8 9 5]; >> det(A)ans =0>> rank(A)ans =2>> cond(A)ans =1.0968e+017>> inv(A)Warning: Matrix is singular to working precision.ans = Inf Inf Inf InfInf Inf Inf InfInf Inf Inf InfInf Inf Inf Inf>> A=[4 8 9;8 2 7;6 3 8];>> inv(A)ans = 0.0568 0.4205 -0.43180.2500 0.2500 -0.5000-0.1364 -0.4091 0.6364>> [V,D]=eig(A)V = -0.6438 -0.7444 -0.5061-0.5467 0.6392 -0.5515-0.5354 0.1931 0.6631D = 18.2776 0 00 -5.2030 00 0 0.9254>> [U,S,D]=svd(A)U = -0.6378 0.7375 -0.2220-0.5426 -0.6348 -0.5500-0.5465 -0.2304 0.8051S = 18.9278 0 00 5.2884 00 0 0.8791D = -0.5374 -0.6639 -0.5200-0.4135 0.7449 -0.5236-0.7350 0.0663 0.6749>> [L,U]=lu(A)L = 0.5000 1.0000 01.0000 0 00.7500 0.2143 1.0000U = 8.0000 2.0000 7.00000 7.0000 5.50000 0 1.5714>> [Q,R]=qr(A)Q = -0.3714 0.9114 -0.1774-0.7428 -0.4063 -0.5322-0.5571 -0.0659 0.8278 R =-10.7703 -6.1279 -12.99870 6.2808 4.83140 0 1.3009>> a=1234a = 1234>> class(a)ans =double>> size(a)ans = 1 1>> b='1234'b =1234>> class(b)ans =char>> size(b)ans = 1 4>> 'I am astudent'ans =I am astudent>> a='This is No.2.23 Example!'a =This is No.2.23 Example!>> b=a(1:7)b =This is>> c=a(12:end)c =2.23 Example!>> a='Good';>> b='Noon';>> length(a)==length(b)ans = 1>> c=[a,'',b]c =GoodNoon>> d=[a;b]d =GoodNoon>> size(c)ans = 1 8>> size(d)ans = 2 4>> a='Good Noon';>> b=double(a)b = 71 111 111 100 32 78 111 111 110>> c='再见!'c =再见!>> c='再见!'>> d=double(c)d = 20877 35265 65281>> char(d)ans =再见!>> a='The first string';>> b='The second string';>> c=strcmp(a,b)c =0>> d=strncmp(a,b,4)d =1>> X='A friend in need is a friend indeed'; >> Y='friend';>> a=findstr(Y,X)a = 3 23>> b=strfind(Y,X)b = []>> S=['1 2 3';'2 3 4'];>> A=str2num(S)A = 1 2 32 3 4>> B=str2num('6-8i')B = 6.0000 - 8.0000i>> D=num2str(rand(2,3),6)D =0.950129 0.606843 0.8912990.231139 0.485982 0.762097>> d=189;>> h=dec2hex(d)h =BD>> c=dec2base(d,7)c =360>> b=dec2bin(d)b =10111101>> bin2dec(b)ans = 189>> A={ones(3,3,3),'Welcome';30.34,1:200} A = [3x3x3 double] 'Welcome'[ 30.3400] [1x200 double]>>B=[{ones(3,3,3)},{'Welcome'};{30.34},{1:20 0}]B = [3x3x3 double] 'Welcome'[ 30.3400] [1x200 double]>> C={5}C = [5]>> C(2,3)={7}C = [5] [] [][] [] [7]>> isequal(A,B)ans =1>> A={ones(3,3,3),'Welcome';30.34,1:200}; >> b=A(1,2)b = 'Welcome'>> class(B)ans =cell>> C=A{1,2}C =Welcome>> class Cans =char>> D=A{1,2}(6)D =m>> E=A{2,2}([end:-1:190])E =200 199 198 197 196 195 194 193 192 191 190>> class(E)ans =double>> N=A{3}([1 3 5 7])N =Wloe>> A={ones(3,3,3),'Welcome';30.34,1:200}; >> B=cell(2);>> B(:,1)={char('Good','Morning');1:10}B = [2x7 char ] [][1x10 double] []>> C=[A,B]C = [3x3x3 double] 'Welcome' [2x7 char ] [][ 30.3400] [1x200 double] [1x10 double] []>> D=[A,B;C]D = [3x3x3 double] 'Welcome' [2x7 char ] [][ 30.3400] [1x200 double] [1x10 double] [][3x3x3 double] 'Welcome' [2x7 char ] [][ 30.3400] [1x200 double] [1x10 double] []>> D(4,:)=[]D = [3x3x3 double] 'Welcome' [2x7 char ] [][ 30.3400] [1x200 double] [1x10 double] [][3x3x3 double] 'Welcome' [2x7 char ] []>> E=reshape(D,2,3,2)E(:,:,1) = [3x3x3 double] [3x3x3 double] [1x200 double][ 30.3400] 'Welcome' 'Welcome'E(:,:,2) = [2x7 char ] [2x7 char] [][1x10 double] [] []>>A={randn(3,3,2),'Good',pi;29,4+7*i,zeros(4)} A = [3x3x2 double] 'Good' [ 3.1416][ 29] [4.0000+ 7.0000i] [4x4 double]>> B=cellfun('isreal',A)B = 1 1 11 0 1>> C=cellfun('length',A)C = 3 4 11 1 4>> Member.code='09021';>> ='Liu';>> Member.age=22;>> Member.grade=uint16(3);>> MemberMember =code: '09021'name: 'Liu'age: 22grade: 3>> Member(4).name='Wang';>> Member(4).grade=2;>> Member(2)ans = code: []name: []age: []grade: []>>Memebr=struct('code','09021','name','Liu','a ge',22,'grade',uint16(3))Memebr = code: '09021'name: 'Liu'age: 22grade: 3>>Member=struct('code',{'09021','09034'},'name' ,{'Liu','Wamg'},'age',{22,24},'grade',{2,3}) Member = 1x2 struct array with fields:codenameagegrade>>Member=struct('code',{},'name',{},'age',{},'gr ade',{})Member = 0x0 struct array with fields:codenameagegrade>>Member=struct('code',{'09021','09034'},'na me',{'Liu','Wang'},'age',{22,24},'grade',{2,3},' score',{[78 89;90 68],[91 76;89 97]}) Member = 1x2 struct array with fields:codenameagegradescore>> Member(1).scoreans =78 8990 68>> Member(2).score(2,:)ans =89 97>> Member.codeans =09021ans =09034>> Member.('name')ans =Liuans =Wang>> ='Liu';M.ID=1;>> M(2,2).name='Wang';M(2,2).ID=2; >> M2=setfield(M,{2,1},'name','Zhang'); >> ans =Liuans =[]ans = []ans =Wang>> ans =Liuans =Zhangans = []ans =Wang>> fieldnames(M)ans = 'name''ID'>> M3=orderfields(M)M3 = 2x2 struct array with fields:IDname。
matlab 实验报告
matlab 实验报告Matlab实验报告引言:Matlab是一种强大的数值计算和可视化软件,广泛应用于科学、工程和经济等领域。
本实验报告将介绍我在使用Matlab进行实验过程中的一些经验和结果。
实验一:矩阵运算在这个实验中,我使用Matlab进行了矩阵运算。
首先,我创建了一个3x3的矩阵A和一个3x1的矩阵B,并进行了矩阵相乘运算。
通过Matlab的矩阵乘法运算符*,我得到了一个3x1的结果矩阵C。
接着,我对矩阵C进行了转置操作,得到了一个1x3的矩阵D。
最后,我计算了矩阵C和矩阵D的点积,并将结果输出。
实验二:数据可视化在这个实验中,我使用Matlab进行了数据可视化。
我选择了一组实验数据,包括时间和温度两个变量。
首先,我将数据存储在一个矩阵中,并使用Matlab的plot函数将时间和温度之间的关系绘制成曲线图。
接着,我使用Matlab的xlabel、ylabel和title函数添加了横轴、纵轴和标题。
最后,我使用Matlab的legend函数添加了图例,以便更好地理解图表。
实验三:数值积分在这个实验中,我使用Matlab进行了数值积分。
我选择了一个函数f(x)进行积分计算。
首先,我使用Matlab的syms函数定义了符号变量x,并定义了函数f(x)。
接着,我使用Matlab的int函数对函数f(x)进行积分计算,并将结果输出。
为了验证结果的准确性,我还使用了Matlab的diff函数对积分结果进行了求导操作,并与原函数f(x)进行了比较。
实验四:信号处理在这个实验中,我使用Matlab进行了信号处理。
我选择了一个音频文件,并使用Matlab的audioread函数读取了该文件。
接着,我使用Matlab的fft函数对音频信号进行了傅里叶变换,并将结果绘制成频谱图。
为了进一步分析信号的特征,我还使用了Matlab的spectrogram函数绘制了信号的时频图。
通过对信号的频谱和时频图的观察,我可以更好地理解信号的频率和时域特性。
MATLAB实验报告 (2)
广西大学实验报告纸姓名:徐律1002100405电气工程学院自动化102班2012年12月27日【实验名称】MATLAB的图形绘制【实验要求】1、学习MATLAB图形绘制的基本方法;2、熟悉和了解MATLAB图形绘制程序编辑的基本指令;3、熟悉掌握利用MATLAB图形编辑窗口编辑和修改图形界面,并添加图形的各种标注;4、掌握plot、subplot的指令格式和语法。
【实验基本知识】1、plot(x,y)------绘制由x,y所确定的曲线;2、多组变量绘图:plot(x1, y1, 选项1, x2, y2, 选项2, ……);3、双Y轴绘图:plotyy()函数;4、图形窗口的分割;5、图形编辑窗口的使用。
【实验内容】【1】二维曲线绘图基本指令演示。
本例运作后,再试验plot(t), plot(Y), plot(Y,t) ,以观察产生图形的不同。
t=(0:pi/50:2*pi)';k=0.4:0.1:1;Y=cos(t)*k;plot(t,Y)plot(t,Y); plot(t);plot(Y);plot(Y,t); %图形如下图所示【2】用图形表示连续调制波形Y=sin(t)sin(9t)及其包络线。
t=(0:pi/100:pi)';y1=sin(t)*[1,-1];y2=sin(t).*sin(9*t);t3=pi*(0:9)/9;y3=sin(t3).*sin(9*t3);plot(t,y1,'r:',t,y2,'b',t3,y3,'bo')axis([0,pi,-1,1])【3】在一个图形窗口绘制正弦和余弦曲线,要求给图形加标题“正弦和余弦曲线”,X轴Y轴分别标注为“时间t”和“正弦、余弦”,在图形的某个位置标注“sin(t)”“cos(t)”,并加图例,显示网格,坐标为正方形坐标系。
实验程序:实验结果:Sin(t)Cos(t)【4】绘制向量x=[1 3 0.5 2.5 2]的饼形图,并把3对应的部分分离出来。
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)。
实验四SIMULINK仿真模型的建立及仿真
一、实验目的:
1、熟悉SIMULINK模型文件的操作。
2、熟悉SIMULINK建模的有关库及示波器的使用。
3、熟悉Simulink仿真模型的建立。
4、掌握用不同的输入、不同的算法、不同的仿真时间的系统仿真。
二、实验内容
例7.1-1
SIMULINK仿真模型:
结果:
例7.1-2
SIMULINK仿真模型:
程序:%exm070102_1.m
[A,B,C,D]=linmod2('exm070102');
STF=tf(minreal(ss(A,B,C,D)))
[Num,Den]=tfdata(STF);
Num{:},Den{:}
t0=(0:0.1:5)';
[y,t]=step(STF,t0);
plot(t,y,'LineWidth',3)
grid on
axis([0,5,0,0.4])
xlabel('t'),ylabel('y')结果:
例7.2-1
SIMULINK仿真模型:
结果:
SIMULINK仿真模型:
结果:
三、模型建立方法:
1,建立理论数学模型;
2,打开SIMULINK模块库,引出SIMULINK工作环境;3,开启空白(新建)模型窗;
4,从模块库复制所需模块到空白(新建)模型窗;5,新建模型窗中的模型再复制;
6,模块间信号线的连接;
7,根据理论数学模型设置模块参数;
8,对仿真解算器和仿真终止时间进行设置;
9,给新建模型起适当的名字进行保存;
10,运行SIMULINK,并根据情况进行适当的调试;四、示波器的使用方法:
先进行纵坐标设置
在时间范围进行所需的修改。