MATLAB第一次上机实验报告
matlab入门实验报告

matlab入门实验报告Matlab入门实验报告引言:Matlab是一种功能强大的数值计算和科学计算软件,广泛应用于工程、科学和金融等领域。
本实验报告旨在分享我在学习和使用Matlab过程中的一些经验和心得,希望对初学者有所帮助。
一、Matlab的基本操作Matlab的基本操作包括变量定义、运算符使用、矩阵操作等。
通过简单的例子,我们可以快速上手Matlab。
首先,我们可以定义一个变量并进行简单的运算。
例如,我们定义一个变量a,并赋值为5,然后进行加法运算。
a = 5;b = a + 3;disp(b);接下来,我们可以进行矩阵的操作。
例如,我们定义一个3x3的矩阵A,并对其进行转置操作。
A = [1 2 3; 4 5 6; 7 8 9];B = A';disp(B);二、Matlab的图形绘制功能Matlab具有强大的图形绘制功能,可以绘制各种类型的图形,如曲线图、散点图、柱状图等。
下面是一个简单的例子,展示了如何使用Matlab绘制曲线图。
首先,我们定义一个自变量x和一个因变量y,并生成一组数据。
x = linspace(0, 2*pi, 100);y = sin(x);然后,我们使用plot函数将数据绘制成曲线图。
plot(x, y);通过设置不同的参数,我们可以对图形进行进一步的美化和定制。
例如,我们可以设置x轴和y轴的标签,并添加图例。
xlabel('x');ylabel('y');legend('sin(x)');三、Matlab的数据分析功能Matlab提供了丰富的数据分析功能,可以进行数据的统计、拟合、回归等操作。
下面是一个简单的例子,展示了如何使用Matlab进行线性回归分析。
首先,我们生成一组随机数据,并假设其满足线性关系。
x = linspace(0, 10, 100);y = 2*x + 3 + randn(size(x));然后,我们使用polyfit函数进行线性回归分析,并得到拟合的系数。
MATLAB入门实验报告

MATLAB实验报告题目:第一次实验报告学生姓名:学院:专业班级:学号:年月MATLAB第一次实验报告————入门第一次上机实验刘老师就MATLAB软件进行了大致的讲解,并讲了如何建立M文件,定义函数数组矩阵,如何绘图。
先就老师讲解及自己学习的情况做汇报。
一、建立M文件<1>M文件建立方法:1. 在MATLAB中,点:File→New →M-file2. 在编辑窗口中输入程序内容3. 点File →Save,存盘,M文件名必须与函数名一致<2>课上实例例:定义函数f(x1,x2)=100(x2-x12)2+(1-x1)2答:建立M文件:fun.mfunction f=fun(x)f=100*(x(2)-x(1)^2)^2+(1-x(1))^2如此便可以直接使用函数fun.m例如计算f(1,2), 只需在MATLAB命令窗口键入命令:x=[1 2]fun(x)得f =100.<3>课下作业题目:有一函数,写一程序,输入自变量的值,输出函数值.解答:建立M文件:zuoye1.mfunction f=zuoye1(x,y)f=x^2+sin(x*y)+2*y命令行输入x=1,y=1zuoye1(x,y)得ans =3.8415经验算答案正确,所以程序正确。
二、定义数组、矩阵<1>说明逗号或空格用于分隔某一行的元素,分号用于区分不同的行. 除了分号,在输入矩阵时,按Enter 键也表示开始新一行. 输入矩阵时,严格要求所有行有相同的列<2>课后作业题目:有一个4x5矩阵,编程求出其最大值及其所处的位置.解答:a=round(10*rand (4,5))[temp I]=max(a)[am II]=max(temp)p=[I(II) II]运行得一随机矩阵a =7 7 7 3 70 8 2 0 38 7 7 1 109 4 0 8 0temp =9 8 7 8 10I =4 2 1 4 3am =10II =5p = 3 5即最大值为10,位置为第三行第五列。
MATLAB上机实习报告

MATLAB上机实习报告中原工学院电子信息学院自动化142高嘉豪MATLAB上机实习报告实习一一、实习目的掌握MATLAB 的启动和退出;熟悉MATLAB 的命令窗口;熟悉其它常用窗口和工具栏。
三、实习内容(1)help rand,查看说明。
然后用rand生成一个2×6的数组,观察并说明command window、command history和workspace等窗口的变化结果。
(2)学习使用who、whos,说明其功能和作用。
Who可以看到用过的一些变量,whos是吧变量以及该变量的存储位置,字节大小等信息都显示出来。
(3)学习使用clc、clear,说明其功能和作用。
clc:是清除当前command区域的命令,表示清空,clear用于清空环境变量,我觉的是相当于复位,数值初始化。
(4)会设置文件路径。
(5)光标位于指令窗口时,按键盘上的↑、↓键,观察结果并给出自己的理解。
实习二一、实习目的1、掌握数组的创建和寻访;2、掌握MATLAB 的矩阵和数组的运算;3、熟悉MATLAB 关系操作和逻辑操作。
三、实习内容(1)在指令窗中输入x=[2 3 pi/2 9];x=[2,3,pi/2,9] 观察结果是否一样?(2)要求在闭区间[0 , 2π]上产生50 个等距采样的一维数组A ,试用两种不同的方法实现。
寻访1 到5 个元素如何实现;寻访7 到最后一个元素如何实现;寻访大于2 的元素如何实现。
给第3,5,9 个元素赋值100 如何实现;在闭区间[0 , 2π]上产生50 个等距采样的一维数组:第一种:第二种:寻访1到5的元素:>> a(1:5)ans =0 0.1282 0.2565 0.3847 0.5129寻访7 到最后一个元素如何实现:寻访大于2 的:给第3,5,9 个元素赋值100 ;运用同样的方法给第五,第九个元素进行赋值。
3)在指令窗中输入A=[1 2 3;4 5 6] 观察结果;分别用“全下标”和“单下标”来寻访第2 行第1 列的元素,并说明二维数组元素的存储顺序。
MATLAB课后上机实验报告

《MATLAB程序设计与应用》实验指导书实验一 matlab 集成环境使用与运算基础1,先求下列表达式的值,然后显示matlab 工作空间的使用情况并保存全部变量。
(1)0122sin851z e =+程序:.>> z1=2*sin(85*pi/180)/(1+exp(2)) 结果: z1 =0.2375(2)22121(0.4552i z In x x +⎡⎤=+=⎢⎥-⎣⎦其中 程序:>> x=[2,1+2*i;-0.45,5];>> z2=0.5*log(x+sqrt(1+x*x)) 结果: z2 =0.7114 - 0.0253i 0.8968 + 0.3658i 0.2139 + 0.9343i 1.1541 - 0.0044i(3)0.3,9.2,8.2,...,8.2,9.2,0.3,23.0)3.0sin(23.03.03---=+++-=-a aIn a e e z a a 提示:利用冒号表达式生成a 向量,求各点函数值时用点乘运算。
程序:>> a=-3.0:0.1:30;>> z3=(exp(0.3*a)-exp(-0.3*a))/2.*sin((a+0.3)*pi/180)+log((0.3+a)/2) 结果: z3 =1.0e+003 *Columns 1 through 40.0003 + 0.0031i 0.0003 + 0.0031i 0.0003 + 0.0031i 0.0002 + 0.0031iColumns 5 through 80.0002 + 0.0031i 0.0001 + 0.0031i 0.0001 + 0.0031i 0.0000 + 0.0031i Columns 9 through 12-0.0000 + 0.0031i -0.0001 + 0.0031i -0.0001 + 0.0031i -0.0002 + 0.0031i Columns 13 through 16-0.0003 + 0.0031i -0.0003 + 0.0031i -0.0004 + 0.0031i -0.0005 + 0.0031i Columns 17 through 20-0.0006 + 0.0031i -0.0007 + 0.0031i -0.0008 + 0.0031i -0.0009 + 0.0031i Columns 21 through 24-0.0010 + 0.0031i -0.0012 + 0.0031i -0.0014 + 0.0031i -0.0016 + 0.0031i Columns 25 through 28-0.0019 + 0.0031i -0.0023 + 0.0031i -0.0030 + 0.0031i -0.0370 Columns 29 through 32-0.0030 -0.0023 -0.0019 -0.0016 Columns 33 through 36-0.0014 -0.0012 -0.0010 -0.0009 Columns 37 through 40-0.0008 -0.0007 -0.0006 -0.0005 Columns 41 through 44-0.0004 -0.0003 -0.0003 -0.0002 Columns 45 through 48-0.0001 -0.0001 -0.0000 0.0000 Columns 49 through 520.0001 0.0001 0.0002 0.0002 Columns 53 through 560.0003 0.0003 0.0003 0.0004 Columns 57 through 600.0004 0.0005 0.0005 0.0005 Columns 61 through 640.0006 0.0006 0.0006 0.0007 Columns 65 through 680.0007 0.0007 0.0008 0.0008 Columns 69 through 720.0008 0.0008 0.0009 0.0009 Columns 73 through 760.0009 0.0010 0.0010 0.0010 Columns 77 through 800.0011 0.0011 0.0011 0.0011 Columns 81 through 840.0012 0.0012 0.0012 0.0013 Columns 85 through 880.0013 0.0013 0.0013 0.0014 Columns 89 through 920.0014 0.0014 0.0015 0.0015 Columns 93 through 960.0015 0.0016 0.0016 0.0016 Columns 97 through 1000.0017 0.0017 0.0017 0.0018 Columns 101 through 1040.0018 0.0018 0.0019 0.0019 Columns 105 through 1080.0020 0.0020 0.0020 0.0021 Columns 109 through 1120.0021 0.0022 0.0022 0.0023 Columns 113 through 1160.0023 0.0024 0.0024 0.0025 Columns 117 through 1200.0025 0.0026 0.0026 0.0027 Columns 121 through 1240.0027 0.0028 0.0029 0.0029 Columns 125 through 1280.0030 0.0031 0.0031 0.0032 Columns 129 through 1320.0033 0.0034 0.0034 0.0035 Columns 133 through 1360.0036 0.0037 0.0038 0.0039 Columns 137 through 1400.0040 0.0041 0.0042 0.0043 Columns 141 through 1440.0044 0.0045 0.0046 0.0047 Columns 145 through 1480.0049 0.0050 0.0051 0.0053 Columns 149 through 1520.0054 0.0056 0.0057 0.0059 Columns 153 through 1560.0060 0.0062 0.0064 0.0066 Columns 157 through 1600.0068 0.0069 0.0071 0.0074 Columns 161 through 1640.0076 0.0078 0.0080 0.0083 Columns 165 through 1680.0085 0.0088 0.0090 0.0093 Columns 169 through 1720.0096 0.0099 0.0102 0.0105 Columns 173 through 1760.0108 0.0112 0.0115 0.0119 Columns 177 through 1800.0123 0.0127 0.0131 0.0135 Columns 181 through 1840.0139 0.0144 0.0148 0.0153 Columns 185 through 1880.0158 0.0163 0.0168 0.0174 Columns 189 through 1920.0180 0.0185 0.0191 0.0198 Columns 193 through 1960.0204 0.0211 0.0218 0.0225 Columns 197 through 2000.0233 0.0241 0.0249 0.0257 Columns 201 through 2040.0265 0.0274 0.0284 0.0293 Columns 205 through 2080.0303 0.0313 0.0324 0.0335 Columns 209 through 2120.0346 0.0358 0.0370 0.0382 Columns 213 through 2160.0395 0.0409 0.0423 0.0437 Columns 217 through 2200.0452 0.0467 0.0483 0.0500 Columns 221 through 2240.0517 0.0534 0.0552 0.0571 Columns 225 through 2280.0591 0.0611 0.0632 0.0654 Columns 229 through 2320.0676 0.0699 0.0723 0.0748 Columns 233 through 2360.0773 0.0800 0.0827 0.0856 Columns 237 through 2400.0885 0.0915 0.0947 0.0979 Columns 241 through 2440.1013 0.1047 0.1083 0.1121 Columns 245 through 2480.1159 0.1199 0.1240 0.1282 Columns 249 through 2520.1326 0.1372 0.1419 0.1467 Columns 253 through 2560.1518 0.1570 0.1624 0.1679 Columns 257 through 2600.1737 0.1796 0.1858 0.1921 Columns 261 through 2640.1987 0.2055 0.2125 0.2198 Columns 265 through 2680.2273 0.2351 0.2431 0.2514 Columns 269 through 2720.2600 0.2689 0.2781 0.2876 Columns 273 through 2760.2974 0.3076 0.3180 0.3289 Columns 277 through 2800.3401 0.3517 0.3637 0.3761 Columns 281 through 2840.3889 0.4021 0.4158 0.4299 Columns 285 through 2880.4446 0.4597 0.4753 0.4915 Columns 289 through 2920.5082 0.5254 0.5433 0.5617 Columns 293 through 2960.5807 0.6004 0.6208 0.6418 Columns 297 through 3000.6636 0.6861 0.7093 0.7333 Columns 301 through 3040.7581 0.7838 0.8103 0.8377 Columns 305 through 3080.8660 0.8952 0.9254 0.9567 Columns 309 through 3120.9890 1.0223 1.0568 1.0924 Columns 313 through 3161.1292 1.1673 1.2066 1.2472Columns 317 through 3201.2892 1.3326 1.3774 1.4237Columns 321 through 3241.4715 1.5210 1.5721 1.6249Columns 325 through 3281.6794 1.7357 1.7940 1.8541Columns 329 through 3311.9163 1.98052.0468(4)⎪⎩⎪⎨⎧=<≤<≤<≤+--=5.2:5.0:0,322110,121,2224t t t t t t t t z 其中提示:用逻辑表达式求分段函数值。
初识MATLAB的实验报告

初识MATLAB的实验报告1. 引言MATLAB(Matrix Laboratory)是一种高级的技术计算环境和编程语言。
它具有强大的矩阵计算能力和丰富的科学和工程绘图功能,被广泛应用于各个领域的科研与工程实践中。
本实验旨在初步了解MATLAB的基本语法和功能,通过实际操作加深对MATLAB编程的理解。
2. 实验目的1. 掌握MATLAB的安装和基本使用方法;2. 学习MATLAB中的常用数学函数和操作;3. 了解MATLAB绘图功能并能够绘制简单的图形。
3. 实验步骤3.1 MATLAB安装首先,在官方网站(3.2 MATLAB入门3.2.1 MATLAB语法MATLAB的语法类似于其他常见的编程语言,每个语句以分号结尾。
在MATLAB 中,可以直接进行基本的数学运算,例如加减乘除、指数、对数等。
通过以下代码可以计算两个变量的和并将结果打印出来:matlaba = 10;b = 20;sum = a + b;disp(sum);3.2.2 MATLAB变量在MATLAB中,可以创建和操作各种类型的变量,例如数值、字符串、矩阵等。
以下代码演示了如何创建一个矩阵:matlabmatrix = [1, 2, 3; 4, 5, 6; 7, 8, 9];disp(matrix);3.2.3 MATLAB函数MATLAB提供了许多内置的数学函数,可以直接调用。
以下代码演示了如何计算正弦函数值并打印结果:matlabx = pi/4;y = sin(x);disp(y);3.3 MATLAB绘图MATLAB具有强大的绘图功能,可以绘制各种图形,如曲线、散点图、柱状图等。
以下代码演示了如何绘制一个简单的正弦曲线:matlabx = linspace(0, 2*pi, 100);y = sin(x);plot(x, y);xlabel('x');ylabel('y');title('Sine Curve');4. 实验结果与分析在完成上述实验步骤后,我们成功安装了MATLAB,并学习了基本的语法、变量和函数的使用方法。
matlab上机实验报告

MATLAB上机指导书上机一 MATLAB编程环境一、上机目的1.熟悉MATLAB的操作环境及基本操作方法2.熟悉MATLAB的通用参数设置3.熟悉 MATLAB的搜索路径及设置方法4.熟悉MATLAB帮助信息的查阅方法二、上机内容和结果1.利用菜单设置MATLAB的Command Window中字体大小,并更改输出格式。
示例:结果:2.在硬盘上创建以自己名字命名的文件夹,将当前路径修改为此文件夹示例:结果:4.完成下列操作:(1)在MATLAB命令窗口输入以下命令>> x=0:pi/10:2*pi;>> y=sin(x);(2)在工作空间选择变量y,在在工作空间窗口选择绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形。
结果:5.利用帮助学习save,load命令的用法,将在工作区中变量全部保存在mypath.mat中,清空工作区,重载变量x,y查看变量信息,并把它们保存在mypath.mat中结果:6. 计算y=1.3^3*sin(pi/3)*sqrt(26)(1)结果用format命令按不同格式输出。
(2)观察在进行上述命令计算后历史窗口的变化,用功能将实现回调刚才的计算语句。
(3)回调计算语句,把sin改为sn运行,观察反馈信息,若回调语句在语句后面加“;”,看输出有何不同结果:上机二 Matlab的计算可视化一、上机目的1、理解MATLAB绘图方法2、掌握绘制二维数据曲线图的方法3、掌握用plot函数和fplot函数绘制曲线的方法4、通过练习掌握绘制二维数据曲线图的方法和plot 函数和fplot 函数的使用5、通过练习熟悉三维曲线和曲面图的绘制方法二、上机内容和步骤1.上机内容(1)绘制下列曲线:①33x x y -= ②2221x e y π= ③64222=+y x1.>> x=0:5; >> y=x-x.^3/3; >> plot(y); >>2.>> x=0:0.3:1;>> y=1/(2*pi)*exp(x.^2/2); >> plot(y);3.>> ezplot('x.^2-2*y.^2-64',[-50 50]);(2)通过用plot 和fplot 函数绘制xy 1sin 的曲线,并分析其区别。
matlab第一次实验报告

一、心得体会在此之前只接触过Matlab一段时间,通过本次上机实验初次体验,体会到Mathematica语法规则简单,操作使用方便,和其他语言交互,编程灵活方便,功能十分强大。
Mathematica和Matlab都可以实现某个方案,不同之处在于对不同的问题,处理的方法繁琐程度不一样。
软件掌握多少都不算多,类似的软件还有MathCAD、Maple等,关键在处理具体问题的时候那种软件更适合,或者那种软件处理问题普遍性强,而Mathematica和Matlab分别代表了符号计算和数据处理(或者数值计算)的两个方面普遍适用的软件。
个人感觉Mathematica符号计算强,便于公式推导和函数式制图。
Mathematica界面的窗口和菜单栏是分离式的,便于边计算边对照查看文档,其公式可以复制为公式格式,可直接粘贴于Word等文本中,也便于以公式的形式输入,但该功能在大量符号计算中可能作用不大,编写代码的执行效率肯定比手动输入公式要高的多。
输入和输出都是在同一个界面,便于查看每条代码的结果。
函数使用方式丰富,调用函数可以编写专门的文件,也可直接在输入界面中调用。
可把想到的代码都写成函数的形式,包括各种形式的代码,便于调用。
将所有的算法最终转化为表达式,以函数的形式体现。
例如绘图将表达式的变量范围指定即可,便于函数制图。
Matlab很强大,处理什么都比较得心应手,是款很好的数学式编程工具与计算工具,修改编辑很方便,但体积比较大。
Mathematica 个人感觉侧重于图像处理,尤其那些多边形,多维空间制图,曲面等很实用,而且软件体积比较少,运行速度快,是款和MATLAB 相辅相成的好工具。
通过以上,我自认为较好的解决方案是数据处理用Matlab ,然后将数据导入Mathematica 可视化处理。
符号计算就是Mathematica 了。
以后还需多进行实验,体会Mathematica 的功能。
二、指令运行关于Mathematica 绘图的基本功能以不同输出格式画曲面2||,2||,)(22≤≤=+-y x e z y x Plot3D[Exp[-(x^2+y^2)],{x,-2,2},{y,-2,2}]螺旋线:x=sint,y=cost,z=t/3的图形ParametricPlot3D[{Sin[t],Cos[t],t/8},{t,0,15},Axes →False]圆环面x=cost(3+cosu),y=sint(3+cosu),z=sinu,u≤t≤2π,0≤u≤2π的图形ParametricPlot3D[{Cos[t](3+Cos[u]),Sin[t](3+Cos[u]),Sin[u]},{t,0,2Pi},{u,0, 2Pi},Axes False]三、问题求解(Help)。
Matlab实验报告(1)

《Matlab语言与应用》课程实验报告*名:**班级:电信114学号:************指导老师:***二〇一三年十一月二十一日Matlab实验报告实验一一、实验问题求[12 + sin(2)×( 22 −4)]÷3^2的算术运算结果。
二、问题的分析该题主要熟悉Matlab环境下的对数学运算的熟悉,如何输入数据、建立函数输出结果。
三、上机实验结果如图四、实验的总结与体会通过本次实验,我学会了用Matlab来计算数学运算中的复杂技术。
我们也可以自己编写一个可以调用的函数,首先我们要了解Matlab语言函数的基本结构,结构如下:Function [返回变量列表]=函数名(输入变量列表)注释说明语句段,由%引导输入、返回变量格式的检测函数体语句例如:输入变量为k,返回的变量为m和s,其中s为前m项的和Function [m,s]=findsum(k)s=0;m=0;while(s<=k),m=m+1;s=s+m;end编写了函数,就可以将其存为findsum.m文件,这样就可以在Matlab环境中对不同的k值调用该函数了。
这样就可以灵活的实现我们想要的数据。
实验二一、实验问题二、问题分析输入矩阵时,空格或逗号表示间隔,分号表示换行,比如上面的矩阵A应写为A=[1,2,3;4,5,6;7,8,9]三、上机实验结果如图四、实验的总结与体会通过对本次上机实验了解到在Matlab中对矩阵的代数运算矩阵转置、矩阵的加减法运算、矩阵乘法、矩阵的左、右除、矩阵翻转、矩阵乘方运算、点运算等。
实验三一、实验要求画图,理解plot函数用法二、代码如下clear; clf;t=0:pi/20:2*pi;R=5;x=R*sin(t); y=R*cos(t);plot(x,y,'b:'), gridhold onrrr=[x;y;x+y];plot(rrr(1,:),'.','MarkerSize',10,'Color','r')plot(rrr(2,:),rrr(3,:),'o','MarkerSize',15,'Color','b'); axis([-8,20,-8,8]), % axis squarehold off三、Matlab运行结果如图实验四一、实验要求二、代码如下t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b') Grid三、Matlab运行结果如图实验五一、实验要求傅里叶频谱分析二、代码及分析(1)首先生成数据,包含50Hz和120Hz频率的正弦波x >>t = 0:.001:.25;>>x = sin(2*pi*50*t) + sin(2*pi*120*t);(2)再生成噪音信号yy = x + 2*randn(size(t));plot(y(1:50))title('Noisy time domain signal')(3)对y进行快速傅里叶变换Y = fft(y,256);(4)计算功率谱Pyy = Y.*conj(Y)/256;f = 1000/256*(0:127);plot(f,Pyy(1:128))title('Power spectral density')xlabel('Frequency (Hz)')(5)只查看200Hz以下频率段plot(f(1:50),Pyy(1:50))title('Power spectral density')xlabel('Frequency (Hz)')三、上机结果如下图实验六一、实验要求FIR数字滤波器设计代码如下clear;close allf=[0,0.6,0.6,1]; m=[0,0,1,1]; % 设定预期幅频响应b=fir2(30,f,m); n=0:30; % 设计FIR 数字滤波器系数subplot(3,2,1),stem(n,b,'.')xlabel('n'); ylabel('h(n)');axis([0,30,-0.4,0.5]),line([0,30],[0,0])[h,w]=freqz(b,1,256);subplot(3,2,2),plot(w/pi,20*log10(abs(h)));gridaxis([0,1,-80,0]),xlabel('w/pi'); ylabel('幅度(dB)');二、上级结果如图实验七二、实验要求用guide实验一个简单的加减乘除计算器二、实验步骤在命令行输入guide命令,进入guide界面新建一个空白guide文件在空白文件中设置好功能模块如图模块建立好后,就要把编写好的加减乘除代码加入到各自的回调函数中,见下图两个被加数代码如下图加模块代码如下图减模块代码如下图乘模块代码如下图除模块代码如下图各模块的回调函数加完后就可以运行了,运行结果如下图总结:Matlab一个高级的距阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。
【原创】MATLAB实验报告-第一次-MATLAB语言程序设计基础-北京交通大学

输入what<目录名>,表示将分类显示所选择目录下的所有相关文件;
输入ver singal,表示列出singal工具箱的版本信息。
2、在命令窗口中输入 命令,执行后用方向 或 键(历史命令)将该命令调出,在行内编辑,将其改为6阶魔术矩阵命令。
输入magic(4),显示4阶魔术矩阵,按上方向键调出magic(4)命令,并将4改为6,便显示出6阶魔术矩阵。
3、用Matlab语言绘制函数 在 内的曲线。
输入>> t=0:0.1:2*pi;y=t.*cos(t);plot(t,y),显示出图像。
4、选择适当的坐标范围,用Matlab语言绘制函数: 的三维曲线。
输入
>> [x,y]=meshgrid(-3:0.1:3);
>> z=(x.^2+y).*exp(-x.^2-y.^2/2);
输入addpath E:\qinmin,将E:\qinmin目录添加到Matlab包含的路径下:
>> addpath E:\qinmin
(3)显示格式
输入format long,表示输出双精度数时小数点后保留14位有效数字,输出单精度数是小数点后保留7位有效数字;
输入format short e,表示输出数字用5位科学技术表示;
>> surf(x,y,z),colorbar
显示三维图像:
三、实验感想
本次Matlab上机实验是我第一次亲自操作Matlab软件并实现一些简单的功能。虽然只是实验了一些基本的命令,显示了魔术矩阵和绘制了简单的函数图像,但是这次实验也使我意识到了Matlab软件的强大。Matlab是著名的数学工具,在各科研领域都具有不可忽视的影响力。作为通信工程的本科生,我们也不可避免地需要使用Matlab来处理一些实验数据,所以熟练使用Matlab也是我们必备的技能之一。
MATLAB 上 机 实 习 报 告

MATLAB上机实习报告学院: 电子信息学院班级:学号:姓名20 年月日Matlab上机实习报告在我们考试的前一周,我们进行了为期一个星期的Matlab上机实习.可能我们的专业与计算机联系比较紧密,以前我从没有听说过Matlab,更没有接触过.也可以说我们都是从零开始的.经过了一个星期的学习,对Matlab有了最基本的了解,Matlab可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
一个星期的时间,我们主要对Matlab的五个内容进行了学习.一、MATLAB基本操作二、数值数组及其运算三、MATLAB图形绘制基础四、STMULINK仿真基础五、句柄图形和图形用户界面制作内容一MATLAB基本操作在内容一中我们主要学习了MA TLAB的启动和退出,熟悉了各种命令窗口和工具栏.进入MATLAN的开发环境的三种方法:1)直接点击桌面上的快捷方式.2)开始→所有程序→MATLAB7.0→MATLAB7.0.EXE.3)点击matlab\bin\win32文件夹下的matlab.exe.我们在实习中最常用的是前两种,因为它比较方便,能快速进入开发环境中.退出MATLAB开发环境的几种方法:1)在MA TLAB命令窗口的”File”菜单下选择”Exit Matlab”;2)快捷键”Ctrl+q”;3)在命令窗口输入”MA TLAB”quit”命令;4)在命令窗口输入”exit”命令;5)用鼠标单击命令窗口右下角的”X”按钮;熟悉MATLAB的desktop的操作桌面:1)熟悉指令窗(command window)2)熟悉当前目录浏览器(Current Directory)3)熟悉工作空间浏览器(Workspace Browser)4)熟悉数组编辑器(Array Editor)5)熟悉脚本文件编辑器及运行一个简单的程序.t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,'-r',t,y0,':b',t,-y0,':b')运行结果:6)设置文件存路径.7)了解MATLAB帮助系统.内容二数值数组及其运算在内容二中我们学习了一维数组和二维数组的创建和寻访,掌握了MATLAB的矩阵和数组的运算和MATLAB的关系操作和逻辑操作.一、常量和变量系统的变量命名规则:变量名区分字母大小写;变量名必须以字母打头,其后可以是任意字母,数字,或下划线的组合.此外,系统内部预先定义了几个有特殊意义和用途的变量.二、数值型向量(矩阵)的输入任何矩阵(向量),可以直接按行方式输入每个元素;同一行中的元素用逗号或者空格符来分隔行行之间用分号分隔。
matlab上机实验心得

MATLAB上机实验心得1. 引言在学习MATLAB课程期间,我们进行了一系列的上机实验。
通过这些实验,我深刻体会到了MATLAB在数学建模和数据分析方面的强大功能。
本文将详细介绍我在实验中的学习心得和体会,并分享一些使用MATLAB进行数据处理和可视化的技巧。
2. 实验一:MATLAB基础在第一次实验中,我们掌握了MATLAB的基本操作和语法。
通过编写简单的脚本,我学会了如何定义变量、进行算术运算、使用条件语句和循环结构等。
我还学会了如何使用MATLAB自带的函数库来解决常见的数学问题。
这次实验让我对MATLAB有了初步的认识,并为后续实验打下了坚实的基础。
3. 实验二:数据处理与可视化在第二次实验中,我们探索了MATLAB在数据处理和可视化方面的能力。
我们使用了一些常见的数据处理函数,如读取文件、筛选数据、计算统计量等。
我们还学习了如何使用plot函数绘制线图、scatter函数绘制散点图以及histogram函数绘制直方图等。
通过这次实验,我意识到MATLAB在数据处理和可视化方面的高效和便捷。
使用MATLAB,我们可以快速地对大量数据进行处理和分析,并通过可视化方式直观地展示数据的特征和规律。
4. 实验三:数学建模第三次实验是最具挑战性的一次,我们需要运用MATLAB解决实际问题并进行数学建模。
在实验中,我们学习了如何将实际问题转化为数学模型,并使用MATLAB求解。
我们通过编写脚本来解决最优化问题、微分方程求解等。
这次实验让我深刻理解了数学建模的重要性,并提高了我的问题解决能力。
MATLAB 的强大计算能力和丰富的函数库为数学建模提供了极大的便利。
5. 实验四:图像处理在第四次实验中,我们学习了MATLAB在图像处理方面的应用。
我们掌握了如何读取、显示、修改和保存图像。
我们还学会了一些常见的图像处理算法,如灰度变换、直方图均衡化、滤波器等。
这次实验让我对图像处理有了初步的认识,并意识到MATLAB在该领域有着广泛应用。
MATLAB - 第一次试验结果

>> Ex01_02
3. 画出衰减振荡曲线 y = e
−
t 3
sin 3t 及其包络线 y 0 = e 3 ,y0 = e 3 。t 值的范围是 [0,4π ] 。
%Ex01_03 function y=Ex01_03
−
t
t
t=0:0.1:4*pi; y=sin(3*t).*exp(-t/3); y00=-exp(-t/3); y01=exp(-t/3); plot(t,y,'-',t,y00,'--',t,y01,'-.'); title('衰减震荡曲线及其包络线'); xlabel('t'); ylabel('y');
实 验 报 告
班级 机械 2 班 学号 081704 姓名 刘鑫 实 验 名 称 Matlab 第一次试验 1.掌握 Matlab 绘制曲线; 实 验 目 的 2.掌握 Matlab 绘制曲面; 3、掌握构造分段函数的方法; 参加实验时间 实 验 地 点 实验结果 − 4 − 2 0 2 4 1.找出数组 A = 中所有绝对值大于 3 的元素。 − 3 − 1 1 3 5
%Ex01_02 function Ex01_02 %画出所表示的三维曲面,用暖色调。 x=[-8:0.1:8]; y=[-8:0.1:8]; [xx,yy]=meshgrid(x,y);%设置栅格坐标矩阵 zz=sin(sqrt(xx.^2+yy.^2))./sqrt(xx.^2+yy.^2); surf(xx,yy,zz);%画三维曲面图 shading interp; colormap(hot);%暖色
-3-
MATLAB上机实验报告_2

4.已知某系统的开环传递函数为, 计算该系统的相位裕度和幅值裕度。
5.已知某系统的闭环传递函数为, 设ζ=0.707,ωn=1:1:5, 画出该系统的单位阶跃响应曲线。
四. 实验设计方案(实验步骤或开发过程)
七. 附录(源程序清单)
1.clear all
closeall
clc
t=0:0.001:3;
u=sin(300*t)+2*cos(200*t);
y=fft(u);
yy=abs(y);
plot(t,yy)
2.d=[1 10 20 30 41 54];
r=roots(d)
3.clear all
closeall
num=1;
den=[12 7 1 0];
bode(num,den)
figure(2)
nyquist(num,den)Байду номын сангаас
4.num=5;
den=conv([1,0],conv([1,4],[1,5]));
sys=tf(num,den);
w=logspace(0,4,50);
bode(sys,w);
grid;
六. 实验结果
五. 实验中存在问题及解决办法
六. 实验结果
六. 实验结果
1. 5、
2.r =
-7.8739
-1.4201 + 0.9942i
-1.4201 - 0.9942i
0.3570 + 1.4679i
0.3570 - 1.4679i由此看出系统不稳定
3.
4.Gm = 36(幅值裕度) Pm =83.5835(相角裕度)
MATLAB上机实习报告

Matlab上机实习实习报告十八周我们进行了本学期的第二次实习——Matlab上机实习。
本次实习一星期,共实习了五个部分。
分别是:一,Matlab基本操作;二,数值数组及其运算;三,Matlab图形绘制基础;四:SIMULINK仿真基础;五:句柄图形和图形用户界面制作。
下面分别介绍各部分内容:实习内容一Matlab基本操作1.实习目的:●掌握Matlab的启动和退出;●熟悉的命令窗口;●熟悉其它常用窗口和工具栏;2.输入一段程序:t=0:pi/50:4*pi;y0=exp(-t/3);y=exp(-t/3).*sin(3*t);plot(t,y,’-r’,t,y0,’:b’,t,-y0,’:b’)输出结果:3.了解文件中的一些功能和指令.例如:clear 清除当前工作区中所有变量clc 清除指令窗内容clf 清除图形窗口cd 设置当前工作目录exit,quit 退出MATLAB实习内容二数值数组及其运算1.实习目的●掌握一维数组的创建和寻访●掌握二维数组的创建和寻访●掌握MATLAB的矩阵和数组的运算●熟悉MATLAB关系操作和逻辑操作2.要求在闭区间[0,2pi]上产生50个等距采样的一维数组A,试用两种不同的指令实现。
要访问1到5元素如何实现;寻访7到最后一个元素如何实现;寻访第2.6.8个元素如何实现;寻访大于2的元素如何实现;给第3.5.9个元素赋值100如何实现:(1)>> A=linspace(0,2*pi,50);>> A=0:(50/49):50;>> AA =Columns 1 through 90 1.0204 2.0408 3.0612 4.0816 5.1020 6.1224 7.1429 8.1633Columns 10 through 189.1837 10.2041 11.2245 12.2449 13.2653 14.2857 15.3061 16.3265 17.3469Columns 19 through 2718.3673 19.3878 20.4082 21.4286 22.4490 23.4694 24.4898 25.5102 26.5306Columns 28 through 3627.5510 28.5714 29.5918 30.6122 31.6327 32.6531 33.6735 34.6939 35.7143Columns 37 through 4536.7347 37.7551 38.7755 39.7959 40.8163 41.8367 42.8571 43.8776 44.8980Columns 46 through 5045.9184 46.9388 47.9592 48.9796 50.0000(2)>> whos A>> A(1:5)ans =0 1.0204 2.0408 3.0612 4.0816(3)>> A(7:50)ans =Columns 1 through 86.12247.14298.16339.1837 10.2041 11.2245 12.2449 13.2653Columns 9 through 1614.2857 15.3061 16.3265 17.3469 18.3673 19.3878 20.4082 21.4286Columns 17 through 2422.4490 23.4694 24.4898 25.5102 26.5306 27.5510 28.5714 29.5918Columns 25 through 3230.6122 31.6327 32.6531 33.6735 34.6939 35.7143 36.7347 37.7551Columns 33 through 4038.7755 39.7959 40.8163 41.8367 42.8571 43.8776 44.8980 45.9184Columns 41 through 4446.9388 47.9592 48.9796 50.0000(4)>> A([2 6 8])ans =1.0204 5.1020 7.1429(5)>> poison=find(A>2)poison =Columns 1 through 143 4 5 6 7 8 9 10 11 12 13 14 15 16Columns 15 through 2817 18 19 20 21 22 23 24 25 26 27 28 29 30Columns 29 through 4231 32 33 34 35 36 37 38 39 40 41 42 43 44Columns 43 through 4845 46 47 48 49 50 (6)>> A([3 5 9])=100 (7)>> A=[1 2 3;4 5 6] A =1 2 3 4 5 63. 在指令窗口输入A=[1 2 3;4 5 6] 观察结果:分别用“全坐标”“单坐标”来寻访第2行第1列的元素,并说明二维数组元素的存储顺序。
Matlab上机实习报告

Matlab上机实习报告一、实习目的本次 Matlab 上机实习的主要目的是让我们熟悉并掌握 Matlab 软件的基本操作和应用,提高我们运用数学工具解决实际问题的能力。
通过实际的编程和计算,深入理解数学算法在计算机中的实现,培养我们的逻辑思维和创新能力。
二、实习环境实习使用的计算机操作系统为 Windows 10,安装的 Matlab 版本为R2020a。
计算机配置为:Intel Core i5 处理器,8GB 内存,512GB 固态硬盘。
三、实习内容1、矩阵运算在 Matlab 中,矩阵是最基本的数据结构。
我们首先学习了矩阵的创建、访问、修改和基本运算,如加法、减法、乘法、转置等。
通过实际的编程练习,掌握了如何利用矩阵运算解决线性方程组、求逆矩阵等问题。
例如,对于线性方程组 Ax = b,其中 A 是系数矩阵,x 是未知向量,b 是常数向量。
我们可以使用 Matlab 中的反斜杠运算符“\”来求解,即 x = A\b。
2、函数绘图Matlab 具有强大的绘图功能,能够直观地展示函数的性质和变化趋势。
我们学习了如何绘制二维和三维图形,包括折线图、散点图、柱状图、曲面图等。
通过调整绘图的参数,如线条颜色、标记形状、坐标轴范围等,可以使图形更加清晰和美观。
例如,绘制函数 y = sin(x) 在区间0, 2π 上的图像,可以使用以下代码:```matlabx = 0:001:2pi;y = sin(x);plot(x, y)```3、数值计算Matlab 提供了丰富的数值计算函数,如求积分、求导数、求解常微分方程等。
我们通过实际的案例,学会了如何运用这些函数来解决科学计算和工程中的问题。
例如,使用数值积分函数“quad”计算函数 f(x) = x^2 在区间 0, 1 上的定积分,可以使用以下代码:```matlabfunction f = myfun(x)f = x^2;endresult = quad(@myfun, 0, 1)```4、程序设计在实习过程中,我们还学习了 Matlab 的程序设计结构,包括顺序结构、选择结构(ifelse 语句)和循环结构(for 循环、while 循环)。
数值分析matlab上机实验报告

数值分析matlab上机实验报告matlab软件实验报告数学上机课实验报告matlab实验报告总结数值分析试卷篇一:《MATLAB与数值分析》第一次上机实验报告标准实验报告(实验)课程名称学生姓名:李培睿学号:2013020904026指导教师:程建一、实验名称《MATLAB与数值分析》第一次上机实验二、实验目的1. 熟练掌握矩阵的生成、加、减、乘、除、转置、行列式、逆、范数等运算操作。
(用.m文件和Matlab函数编写一个对给定矩阵进行运算操作的程序)2. 熟练掌握算术符号操作和基本运算操作,包括矩阵合并、向量合并、符号转换、展开符号表达式、符号因式分解、符号表达式的化简、代数方程的符号解析解、特征多项式、函数的反函数、函数计算器、微积分、常微分方程的符号解、符号函数的画图等。
(用.m 文件编写进行符号因式分解和函数求反的程序)3. 掌握Matlab函数的编写规范。
4、掌握Matlab常用的绘图处理操作,包括:基本平面图、图形注释命令、三维曲线和面的填充、三维等高线等。
(用.m 文件编写在一个图形窗口上绘制正弦和余弦函数的图形,并给出充分的图形注释)5. 熟练操作MATLAB软件平台,能利用M文件完成MATLAB的程序设计。
三、实验内容1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。
并以x,y为坐标显示图像x(n+1) = a*x(n)-b*(y(n)-x(n) ); y(n+1) = b*x(n)+a*(y(n)-x(n) )2. 编程实现奥运5环图,允许用户输入环的直径。
3. 实现对输入任意长度向量元素的冒泡排序的升序排列。
不允许使用sort函数。
四、实验数据及结果分析题目一:①在Editor窗口编写函数代码如下:并将编写的函数文件用“draw.m”储存在指定地址;②在Command窗口输入如下命令:③得到图形结果如下:题目二:①在Editor窗口编写函数代码如下:并将编写的函数文件用“circle.m”储存在指定地址;②再次在Editor窗口编写代码:并将编写的函数文件用“Olympic.m”储存在指定地址;③在Command窗口输入如下指令(半径可任意输入):④按回车执行,将在图形窗口获得五环旗:题目三:①在Editor窗口编写函数代码如下:并用.将编写的函数文件用“qipaofa.m”储存在指定地址;②在Command窗口输入一组乱序数值,则可以得到升序排序结果如下:五、总结及心得体会1. 要熟悉MATLAB编译软件的使用方法,明白有关语法,语句的基本用法,才可以在编写程序的时候游刃有余,不至于寸步难行。
MATLAB上机实验实验报告

MATLAB上机实验一一、实验目的初步熟悉MATLAB 工作环境,熟悉命令窗口,学会使用帮助窗口查找帮助信息; 命令窗口二、实验内容1 熟悉MATLAB 平台的工作环境;2 熟悉MATLAB 的5 个工作窗口;3 MATLAB 的优先搜索顺序;三、实验步骤1. 熟悉MATLAB 的5 个基本窗口①Command Window 命令窗口②Workspace 工作空间窗口③Command History 命令历史记录窗口④Current Directory 当前目录窗口⑤Help Window 帮助窗口1 命令窗口Command Window;在命令窗口中依次输入以下命令:>>x=1>> y=1 2 34 5 67 8 9;>> z1=1:10,z2=1:2:5;>> w=linspace1,10,10;>> t1=ones3,t2=ones1,3,t3=ones3,1>> t4=ones3,t4=eye4x =1z1 =1 2 3 4 5 6 7 8 9 10t1 =1 1 11 1 11 1t2 =1 1 1t3 =111t4 =1 1 11 1 11 1 1t4 =1 0 0 00 1 0 00 0 1 00 0 0 1思考题:①变量如何声明,变量名须遵守什么规则、是否区分大小写;答:1变量声明1.局部变量每个函数都有自己的局部变量,这些变量只能在定义它的函数内部使用;当函数运行时,局部变量保存在函数的工作空间中,一旦函数退出,这些局部变量将不复存在;脚本没有输入输出参数,由一系列MATLAB命令组成的M文件没有单独的工作空间,只能共享调用者的工作空间;当从命令行调用,脚本变量存在基本工作空间中;当从函数调用,脚本变量存在函数空间中;2.全局变量在函数或基本工作空间内,用global声明的变量为全局变量;例如声明a为全局变量:>>global a声明了全局变量的函数或基本工作空间,共享该全局变量,都可以给它曲赋值;如果函数的子函数也要使用全局变量,也必须用global声明;3.永久变量永久变量用persistent声明,只能在M文件函数中定义和使用,只允许声明它的函数存取;当声明它的函数退出时,MATLAB不会从内存中清除它,例如声明a为永久变量:>>persistent a2变量命名规则如下:始于字母,由字母、数字或下划线组成;区分大小写;可任意长,但使用前N个字符;N与硬件有关,由函数namelengthmax返回,一般N=63;不能使用关键字作为变量名关键字在后面给出;避免使用函数名作为变量名;如果变量采用函数名,该函数失效;3区分大小写②试说明分号、逗号、冒号的用法;答:分号:加上分号“;”其作用是将计算机结果存入内存,但不显示在屏幕上,反之,语句结尾若不加“;”,则表示在语句执行后,在将计算结果存入内存的同时,还将运算结果显示出来;逗号:分割列表冒号:从什么到什么,比如1:10意思是——1到10③linspace 称为“线性等分”函数,说明它的用法;可使用help命令,格式如下:>>help linspace④说明函数ones 、zeros 、eye 的用法;答;1ones函数:全部元素都为1的常数矩阵; 2zeros函数:全部元素都为0的矩阵; 3eye函数:单位矩阵;4linspace函数:如a=linspacen1,n2,n3,表示在线性空间上,行矢量的值从n1到n22 工作空间窗口Workspace;单击工作空间窗口右上角的按钮,将其从MATLAB 主界面分离出来;①在工作空间查看各个变量,或在命令窗口用who, whos注意大小写查看各个变量;②在工作空间双击变量,弹出Array Editor 窗口数组编辑器窗口,即可修改变量;③使用save 命令把工作空间的全部变量保存为文件;>>save④输入下列命令:>>clear all %清除工作空间的所有变量观察工作空间的变量是否被清空;使用load 命令把刚才保存的变量载入工作空间;>>load⑤清除命令窗口命令:>>clc3 历史命令窗口Command History;打开历史命令窗口,可以看到每次运行MATLAB 的时间和曾在命令窗口输入过的命令,练习以下几种利用历史命令窗口重复执行输入过的命令的方法;①在历史命令窗口中选中要重复执行的一行或几行命令,右击,出现快捷菜单,选择Copy,然后再Paste 到命令窗口;②在历史命令窗口中双击要执行的一行命令,或者选中要重复执行的一行或几行命令后,用鼠标将其拖动到命令窗口中执行;③在历史命令窗口中选中要重复执行的一行或几行命令,右击,出现快捷菜单,选择Evaluate Selection,也可以执行;④或者在命令窗口使用方向键的上下键得到以前输入的命令;例如,按方向键“↑”一次,就重新将用户最后一次输入的命令调到MATLAB 提示符下;重复地按方向上键“↑”,就会在每次按下的时候调用再往前一次输入的命令;类似地,按方向键“↓”的时候,就往后调用一次输入的命令;按方向键“←”或者方向键“→”就会在提示符的命令中左右移动光标,这样用户就可以用类似于在字处理软件中编辑文本的方法编辑这些命令;4 当前目录命令窗口Current Directory;MATLAB 的当前目录即是系统默认的实施打开、装载、编辑和保存文件等操作时的文件夹;打开当前目录窗口后,可以看到用“save”命令所保存的文件是保存在目录C:\MATLAB6p5\work 下;5 帮助窗口Help Window;单击工具栏的图标,或选择菜单View|Help,或选择菜单Help|MATLAB Help 都能启动帮助窗口;①通过Index 选项卡查找log2函数的用法,在Search index for 栏中输入需要查找的词汇“log2”,在左下侧就列出与之最匹配的词汇条目,选择“log21”,右侧的窗口就会显示相应的内容;②也可以通过Search 选项卡查找log2 函数的用法;Search 选项卡与Index 选项卡不同,Index 只在专用术语表中查找,而Search 搜索的是整个HTML 帮助文件;2. MATLAB 的数值显示格式设置屏幕显示方式有紧凑Compact和松散Loose两种,其中Loose 为默认方式;>>a=ones1,30>>format compact>>a数字显示格式有short、long、short e、long e 等,请参照教材的列表练习一遍;>>format long>>pi>>format short>>pi>>format long>>pi>>format +>>pi>>-pi3. 变量的搜索顺序在命令窗口中输入以下指令:>>pi>>sinpi;>>exist'pi'>>pi=0;>>exist'pi'>>pi>>clear pi>>exist'pi'>>pi思考题:① 3 次执行exist'pi'的结果一样吗如果不一样,试解释为什么答:不一样,pi原来是库存函数,但是如果被赋值则系统默认被赋予的值为pi后来的值,但是当执行clear pi之后所赋的值被清空,因此pi的值又成为②圆周率pi 是系统的默认常量,为什么会被改变为0答:pi原来是库存函数,但是如果被赋值则系统默认被赋予的值为pi后来的值,但是当执行clear pi之后所赋的值被清空,因此pi的值又成为实验二 MATLAB语言基础一、实验目的基本掌握MATLAB向量、矩阵、数组的生成及其基本运算区分数组运算和矩阵运算、常用的数学函数;交接字符串的操作;二、实验内容1 向量的生成和运算;2 矩阵的创建、引用和运算;3 多维数组的创建及运算;4 字符串的操作;三、实验步骤1.向量的生成和运算1 向量的生成直接输入法:A =2 3 4 5 6>> B=1;2;3;4;5B =12345冒号生成发:>> A=1:2:10 ,B=1:10 ,C=10:-1:1A =1 3 5 7 9B =1 2 3 4 5 6 7 8 9 10C =10 9 8 7 6 5 4 3 2 1函数法:Linspace 是线性等分函数,logspace 是对数等分函数;>> A=linspace1,10 ,B=linspace1,30,10A =Columns 1 through 9Columns 10 through 18Columns 19 through 27Columns 28 through 36Columns 37 through 45Columns 46 through 54Columns 55 through 63Columns 64 through 72Columns 73 through 81Columns 82 through 90Columns 91 through 99Column 100B =Columns 1 through 9Column 10>> A=logspace0,4,5A =1 10 100 1000 10000练习:使用logspace 创建1-4 的有10个元素的行向量;答案:>> A=logspace1,10,4piA =+010Columns 1 through 9Columns 10 through 122 向量的运算维数相同的行向量只见可以相加减,维数相同的列向量也可以相加减,标量可以与向量直接相乘除;>> A=1 2 3 4 5, B=3:7,A =1 2 3 4 5B =3 4 5 6 7>> AT=A', BT=B',AT =12345BT =34567>> E1=A+B, E2=A-BE1 =4 6 8 10 12E2 =-2 -2 -2 -2 -2 >> F=AT-BT,F =-2-2-2-2-2>> G1=3A, G2=B/3,G1 =3 6 9 12 15G2 =向量的点积与叉积运算;>> A=ones1,10;B=1:10; BT=B';>> E1=dotA,BE1 =55>> E2=ABTE2 =55>> clear>> A=1:3,B=3:5,A =1 2 3B =3 4 5>> E=crossA,BE =-2 4 -22.矩阵的创建、引用和运算1 矩阵的创建和引用矩阵是由nm 元素构成的矩阵结构,行向量和列向量是矩阵的特殊形式;直接输入法:>> A=1 2 3;4 5 6A =1 2 3 4 5 6 >> B= 1 4 72 5 83 6 9B =1 4 72 5 83 6 9 >> A1ans =1>> A4:endans =5 36 >> B:,1ans =123>> B:ans =123456789>> B5ans =5抽取法>> clear>> A=1 2 3 4;5 6 7 8;9 10 11 12;13 14 15 16A =1 2 3 45 6 7 89 10 11 1213 14 15 16>> B=A1:3,2:3B =2 36 710 11>> C=A1 3,2 4C =2 410 12>> A1 3;2 4ans =1 95 13函数法:>> A=ones3,4A =1 1 1 11 1 1 11 1 1 1>> B=zero3Undefined function or method 'zero' for input arguments of type 'double'. >> B=zeros3B =0 0 00 0 00 0 0>> C=eyes3,2Undefined function or method 'eyes' for input arguments of type 'double'. >> C=eye3,2C =1 00 10 0>> D=magic3D =8 1 63 5 74 9 2拼接法>> clear>> A=ones3,4A =1 1 1 11 1 1 1>> B=zeros3B =0 0 00 0 00 0 0>> C=eye4C =1 0 0 00 1 0 00 0 1 00 0 0 1>> D=A BD =1 1 1 1 0 0 0 1 1 1 1 0 0 0 1 1 1 1 0 0 0 >> F=A;CF =1 1 1 11 1 1 11 1 1 10 1 0 0 0 0 1 0 0 0 0 1 拼接函数和变形函数法:>> clear>> A=0 1;1 1A =0 11 1>> B=2ones2B =2 22 2>> cat 1,A,B,Aans =0 11 12 22 20 11 1>> cat 2 A,B,Acat 2 A,B,AError: Unexpected MATLAB expression.>> cat2,A,B,Aans =0 1 2 2 0 11 12 2 1 1>> repmatA,2,2ans =0 1 0 11 1 1 10 1 0 11 1 1 1>> repmatA,2ans =0 1 0 11 1 1 10 1 0 11 1 1 1练习:使用函数法、拼接法、拼接函数法和变形函数法,按照要求创建以下矩阵:A为43⨯的3⨯的单位矩阵、D为33⨯的0矩阵/C为33⨯的全1矩阵、B为3魔方阵、E由C 和D纵向拼接而成,F抽取E的2---5行元素生成、G由F经变形为46⨯的大3⨯的矩阵而得、以G为子矩阵用复制函数repmat生成8矩阵H;答案:>> A=ones3,4A =1 1 1 11 1 1 11 1 1 1>> B=zeros3,3B =0 0 00 0 00 0 0>> C=eye3C =1 0 00 1 00 0 1>> D=magic3D =8 1 63 5 74 9 2>> E=C;DE =1 0 00 1 00 0 18 1 63 5 74 9 2>> F=2:5,:F=2:5,:Error: Expression or statement is incorrect--possibly unbalanced , {, or . >> F=E2:5,:F =0 1 00 0 18 1 63 5 7>> G=respaceE,3,4Undefined command/function 'respace'.>> G=respaceF,3,4Undefined command/function 'respace'.>> G=reshapeF,3,4G =0 3 1 10 1 5 68 0 0 7>> H=repmatG,2,2H =0 3 1 1 0 3 1 1 0 1 5 6 0 1 5 6 8 0 0 7 8 0 0 7 0 3 1 1 0 3 1 1 0 1 5 6 0 1 5 6 8 0 0 7 8 0 0 7 2)矩阵的运算矩阵的加减、数乘与乘法已知矩阵:>> A=1 23 -1,A =1 23 -1>> B=-1 01 2B =-1 01 2>> A+Bans =0 24 1>> 2Aans =2 46 -2>> 2A-3Bans =5 43 -8>> ABans =1 4-4 -2矩阵的逆矩阵>> format rat;A=1 0 1;2 1 2;0 4 61 0 12 1 2 0 4 6 >> A1=invAA1 =-1/3 2/3 -1/6 -2 1 0 4/3 -2/3 1/6 >> AA1ans =1 0 0 0 1 0 0 0 1 矩阵的除法>> a=1 2 1;3 1 4;2 2 1,b=1 1 2,d=b'a =1 2 1 3 1 42 2 1b =1 1 2112>> c1=binva,c2=b/ac1 =6/7 3/7 -4/7 c2 =6/7 3/7 -4/7 >> c3=invad, c4=a\bc3 =12/7-4/7Error using ==> mldivideMatrix dimensions must agree.>> c3=invad, c4=a\dc3 =12/7-4/7c4 =12/7-4/7练习:按下列要求求出各种的矩阵运算的值求矩阵的秩、特征值和特征向量、矩阵的乘幂与开方;矩阵的指数与对数矩阵的提取与翻转答案:>> A=6 3 4 3-2 5 7 -48 -1 -3 -7A =6 3 4 3-2 5 7 -48 -1 -3 -7>> B=rankAB =3>> rb=rankArb =3>> X,Lamda=eigAError using ==> eigMatrix must be square.>> X,Lamda=eigsAError using ==> eigsA must be a square matrix or a function which computes Ax. >> C=6 3 4-2 5 78 -1 -3C =6 3 4-2 5 78 -1 -3>> X,Lamda=eigsCX =Lamda =0 00 00 0>> X,Lamda=eigCX =Lamda =0 0 0 0 0 0 >> X,Lamda=eigCX =Lamda =0 0 0 0 0 0 >> D=A^2Error using ==> mpower Matrix must be square. >> D=C^2D =34 12 626 22 34>> E=sqrtmCE =+ - -+ - -- + +>> F=expmCF =+004>> G=logmCWarning: Principal matrix logarithm is not defined for A with nonpositive real eigenvalues. A non-principal matrix logarithm is returned.> In funm at 153In logm at 27G =+ - -- + + >> H=fliplrCH =4 3 6 75 -2 -3 -1 8 >> I=triuCI =6 3 4 0 57 0 0 -3 >> J=trilCJ =6 0 0 -2 5 0 8 -1 -3 >> K=diagCK =65-33.多维数组的创建及运算1)多维数组的创建>> A1=1,2,3;4 5 6;7,8,9;A2=reshape10:18,3,3 A2 =10 13 1611 14 1712 15 18>> T1:,:,1=ones3;T1:,:,2=zeros3T1:,:,1 =1 1 11 1 11 1 1T1:,:,2 =0 0 00 0 00 0 0>> T2=ones3,3,2T2:,:,1 =1 1 11 1 11 1 1T2:,:,2 =1 1 11 1 11 1 1>> T3=cat3,A1,A2,T4=repmatA1,1,1,2T3:,:,1 =1 2 34 5 67 8 9T3:,:,2 =10 13 1611 14 1712 15 18T4:,:,1 =1 2 34 5 67 8 9T4:,:,2 =1 2 34 5 67 8 92)多维数组的创建数组运算用小圆点加在运算符的前面表示,以区分矩阵的运算;特点是两个数组相对应的元素进行运算;>> A=1:6;B=ones1,6;>> C1=A+B,C2=A-BC1 =2 3 4 5 6 7C2 =0 1 2 3 4 5 >> C3=A.B,C4=B./A,C5=A.\BC3 =1 2 3 4 5 6C4 =C5 =关系运算或逻辑运算的结果都是逻辑值;>> I=A>3,C6=AII =0 0 0 1 1 1C6 =4 5 6>> A1=A-3,I2=A1&AA1 =-2 -1 0 1 2 3 I2 =1 1 0 1 1 1>> I3=~II3 =1 1 1 0 0 0 4.字符串的操作1 字符串的创建>> S1='Ilike MATLAB'S1 =Ilike MATLAB>> S2='I''m a stuent.'S2 =I'm a stuent.>> S3=S2,'and',S1S3 =I'm a MATLAB2)求字符串长度>> lengthS1ans =12>> sizeS1ans =1 123)字符串与一维数值数组的相互转换>> CS1=absS1CS1 =73 108 105 107 101 32 77 65 84 76 65 66>> CS2=doubleS1CS2 =73 108 105 107 101 32 77 65 84 76 65 66>> charCS2ans =Ilike MATLAB>> setstrCS2ans =Ilike MATLAB练习:用char 和向量生成的方法创建如下字符串AaBbCc......XxYyZz.>> S1=65:90;S2=97:122;>> C=S1;S2;>> C=C:';>> S3=doubleC;charS3ans =AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpRrSsTtUuVvWwXxYyZz实验三 MALTAB数值运算一、实验目的掌握MATLAB的数值运算及其运算中所用到的函数,掌握结构数组和细胞数组的操作;二、实验内容1)多项式运算;2)多项式插值和拟合;3)数值为积分;4)结构数组和细胞数组;三、实验步骤1、多项式运算1)多项式表示;在MATLAB中,多项式表示成向量的形式;如:432S S S+-+在MATLAB中表示为359>> s=1 3 -5 0 92)多项式的加减法相当于向量的加减法,但必须注意阶次要相同;如不同,低阶次的要补0;如多项式23547+-++相加;s s s s++与多项式432239s s>> s1=0 0 2 3 11>> s2=1 2 -5 4 7>> s3=s1+s2答;s1 =0 0 2 3 11s2 =1 2 -5 4 7s3 =1 2 -3 7 183)多项式的乘、除法分别用函数conv和的deconv实现; >> s1=2 3 11>> s2=1 3 -5 4 7>> s3=convs1,s2>> s4=deconvs3,s1答;s1 =2 3 11s2 =1 3 -5 4 7s3 =2 9 10 26 -29 65 77s4 =1 3 -5 4 74)多项式求根用函数roots;>> s1=2 4 2>> rootss1答;s1 =2 4 2ans =-1-15)多项式求值用函数polyval>> s1=2 4 1 -3>> polyvals1,3>> x=1:10>> y=polyvals1,x答;s1 =2 4 1 -3ans =90x =1 2 3 4 5 6 7 8 9 10y =Columns 1 through 84 31 90 193 352 579 886 1285 Columns 9 through 10练习:求23(1)(3)(1)21s s ss s+++++的“商”及余数;>> s1=1 0 1;s2=1 3;s3=1 1;>> s4=1 0 2 1;>> q,r=deconvconvconvs1,s2,s3,s4答;q =1 4r =0 0 2 -5 -12、多项式插值和拟合有一组实验数据如附表1-1所示;附表1-1分别用拟合二阶至三阶和插值线性和三次样条的方法来估算X=时Y的值;以下是实现一阶拟合的语句;>> x=1:10>> y=16 32 70 142 260 436 682 1010 1342 1960>> p1=polyfitx,y,1 %一阶拟合>> y1=polyvalp1, %计算多项式P1在x=的值答;x =1 2 3 4 5 6 7 8 9 10y =Columns 1 through 816 32 70 142 260 436 682 1010Columns 9 through 101342 1960p1 =y1 =+0033、数值微积分1)差分使用diff函数实现;>> x=1:2:9>> diffx答;x =1 3 5 7 9ans =2 2 2 22)可以用因变量和自变量差分的结果相处得到数值微分;>> x=linspace0,2pi,100;>> y=sinx;>> plotx,y>> y1=diffy./diffx;>> plotx1:end-1,y1答;3)cumsum函数求累计积分,trapz函数用梯形法求定积分,即曲线的面积;>> x=ones1,10>> cumsumx>> x=linspace0,pi,100;>> y=sinx;>> trapzx,y>> p=cumsumy;>> p100pi/100-1答;x =1 1 1 1 1 1 1 1 1 1ans =1 2 3 4 5 6 7 8 9 10ans =ans =练习:图A1是瑞士地图,为了算出其国土面积,首先对地图作如下测量:以由西向东方向为X轴,由南向北方向为Y 轴,选择方便的原点,并将从最西边界点到最东边界点在X轴上的区间适当划分为若干段,在每个分点的Y方向测出南边界点和北边界点的Y坐标Y1和Y2,这样就得到表1,根据地图比例尺回到18mm相当于40Km,试由测量数据计算瑞士国km比较;地图的数据见附表1-2单位mm;土近似面积,与其精确值412282附表1-2X 7 13 34 48 56 61 91Y1 44 45 47 50 50 38 30 30 34 36 34 41 45 46续表提示:由高等数学的知识,一条曲线的定积分是它与x轴所围成的面积,那么两条曲线所围成的面积可由两条曲线的定积分相减得到;4、结构数组与细胞数组1)机构数组的创建;>> ='Jack';>> student2.n>> ='Lucy';>> student或者用struct函数创建;>> student=struct'number',{'001','002'},'name',{'Jack','Lucy'};答;student =1x2 struct array with fields:numbername2)机构数组的操作;>> student1.subject= %添加subject域并赋予空值>> student1.score=>> filednamesstudeng>>fieldnamesstudeng>>fieldnamesstudent>> getfieldstudent,{2},'name'>> student=rmfieldstudent,'subject' %删除subject域>> student=setfieldstudent,{1},'score',90;>> student2.score=88; %比较和上一条语句是否效果一样答;student =1x2 struct array with fields:numbernamesubjectstudent =1x2 struct array with fields:numbernamesubjectscoreUndefined function or variable 'studeng'.练习:创建一结构数组stusorce,其域为:No,Name,English,Math,Chinese,Total,Average;结构数组的大小为2×2;3)细胞数组的创建;>> A={'How are you',ones3;1 2;3 4,{'cell'}}; %直接创建>> B1,1={'Hello world'}; %由各个细胞元素创建>> B1,2={magic3};>> B2,1={1 2 3 4};答或者用cell函数先创建空的细胞数组,然后再给各个元素赋值c=cell1,2;>> c1,1={'Hello world'};>> c1,2={magic3};>> c1,3={1 2 3 4};4)细胞数组的操作;>> ans1=A1,1>> ans2=A1,1>> whos ans1 ans2>> celldispA>> a1=A{2,1}1,2>> a2 a3=dealA{1:2}答;ans1 ='How are you'ans2 ='How are you'Name Size Bytes Class Attributesans1 1x1 84 cellans2 1x1 84 cellA{1,1} =How are youA{2,1} =1 23 4A{1,2} =1 1 11 1 11 1 1A{2,2}{1} =cella1 =2a2 =How are youa3 =1 23 4实验四 MALTAB符号运算一、实验目的掌握符号变量和符号表达式的创建,掌握MALTAB的symbol工具箱的一些基本运用;二、实验内容1)符号变量、表达式、方程及函数的表示; 2)符号微积分运算;3)符号表达式的操作和转换;4)符号微分方程求解;三、实验步骤1、符号运算的引入在数值运算中如果求x xxπsinlim→,则可以不断让的让x趋近0,一球的表达式趋近什么数,但终究不能令x=0,因为在数值运算中0不是能作除数的;MATLAB的符号运算能解决这内问题;输入如下命令:>> f=sym'sinpix/x'>> limitf,'x',0答;f =sinpix/xans =pi2、符号常量、符号变量、符号表达式的创建1)使用sym创建输入以下命令,观察Workspace中A、B、f是什么内性的数据,占用多少字节的内存空间;>> A=sym'1' %符号常量>> B=sym'x' %符号变量>> f=sym'2x^2+3x-1' %符号表达式>> clear>> f1=sym'1+2' %有单引号,表示字符串>> f2=sym1+2 %无单引号>> f2=sym1+2>> f4=sym'2x+3' %为什么出错>> x=1>> f4=sym2x+3答;A =1B =x2x^2+3x-1f1 =1+2f2 =3f2 =3f4 =2x+3x =1f4 =5通过看MATLAB的帮助可知,sym的参数可以使字符串或是数值类型,无论是哪种类型都会生成符号类型数据; 2)使用syms创建>> clear>> syms x y z>> x,y,z>> f1=x^2+2x+1>> f2=expy+expz^2>> f3=f1+f2答;x =xy =yz =zf1 =x^2+2x+1f2 =expy+expz^2f3 =x^2+2x+1+expy+expz^23、符号矩阵创建>> syms a1 a2 a3 a4>> A=a1 a2;a3 a4>> A1,A3答;A =a1, a2a3, a4ans =a1a24、符号算术运算1)符号向量相乘、相除符号量相成和数值量相乘一样,分成矩阵乘和数组乘;>> a=sym5;b=sym7;>> c1=ab>> c2=a/b>> a=sym5;B=sym3 4 5;>> C1=aB,C2=a\B>> syms a b>> A=5 a;b 3;B=2a b;2b a;>> C1=AB,C2=A.B>> C3=A\B,C4=A./B答;c1 =35c2 =5/7C1 =15, 20, 25C2 =3/5, 4/5, 1C1 =10a+2ab, 5b+a^22ab+6b, b^2+3aC2 =10a, ab2b^2, 3aC3 =2ab-3/-15+ab, a^2-3b/-15+ab2ba-5/-15+ab, -5a-b^2/-15+abC4 =5/2/a, a/b1/2, 3/a2)符号数值任意精度控制和运算任意精度的VPA运算可以使用命令digits设定默认的精度和vpa对指定对象以新的精度进行计算来实现; >> a1=sym'2sqrt5+pi'>> a=sym'2sqrt5+pi'>> b=sym2sqrt5+pi>> digits>> vpaa>> digits15>> c1=vpaa,56>> c2=vpab,56答a1 =2sqrt5+pia =2sqrt5+pib =Digits = 32ans =ans =c1 =c2 =注意观察c1和c2的数值类型,c1和c2是否相等;3) 符号类型与数值类型的转换使用命令sym 可以把数值型对象转换成有理数性符号对象,命令vpa 可以讲数值型对象转换为任意精度的VPA 型符号对象;使用double,numeric 函数可以将有理数型和VPA 型符号对象转换成数值对象.>> clear>> a1=sym'2sqrt5+pi'>> b1=doublea1 %符号转数值>> b2=isnumericb1 %判断是否转换成了数值>> a2=vpaa1,70 %数值转符号答;a1 =2sqrt5+pib1 =b2 =1a2 =85、 符号表达式的操作和转换1独立变量的确定原则独立变量的确定原则:在符号表达式中默认变量是惟一的;MATLAB 会对单个英文小写字母除i 、j 外进行搜索,且以x 为首选独立变量;如果表达式中字母不唯一,且无x,就选在字母表最接近x 的字母;如果有相连的字母,则选择在字母表中较后的那一个;例如:'*3'z y +中,y 是默认独立变量;)'*sin('b t a +,t 是默认独立变量;输入以下命令,观察并分析结果;>> clear>> f=sym'a+b+i+j+x+y+xz'>> findsymf>> findsymf,1>> findsymf,2>> findsymf,3>> findsymf,4>> findsymf,5>> findsymf,6答;f =a+b+i+j+x+y+xzans =a, b, j, x, xz, yans =xans =x,xzans =x,xz,yans =x,xz,y,jans =x,xz,y,j,bans =x,xz,y,j,b,a2符号表达式的化简符号表达式化简主要包括表达式美化pretty 、合并同类项collcet 、多项式展开expand 、因式分解factor 、化简simple 或simplify 等函数;①合并同类项collect;分别按x 的同幂项和e 指数同幂项合并表达式: 2(1)()t t x xe x e --+++;>> syms x t;>> f=x^2+x^exp-t+1x+exp-t;>> f1=collectf>> f2=collectf,'exp-t'答;f1 =x^3+exp-tx^2+x^exp-t+1x+x^exp-t+1exp-tf2 =x^2+x^exp-t+1exp-t+x^2+x^exp-t+1x②对显示格式加以美化pretty;针对上例,用格式美化函数可以使显示的格式更符合数学书写习惯;>> prettyf1>> prettyf2答;f1 =x^3+exp-tx^2+x^exp-t+1x+x^exp-t+1exp-tf2 =x^2+x^exp-t+1exp-t+x^2+x^exp-t+1x>> prettyf1prettyf23 2 exp-t exp-tx + exp-t x + x + 1 x + x + 1 exp-t2 exp-t 2 exp-tx + x + 1 exp-t + x + x + 1 x注意与直接输出的f1和f2对比;③多项式展开expand;展开12x-成x不同次幂的多项式.(1)>> syms x>> f=x-1^12;>> expandf>> prettyexpandf答;ans =1+x^12-12x^11+66x^10-220x^9+495x^8-792x^7+924x^6-792x^5+495x^4-220x^3+66x^2-12x 12 11 10 9 8 7 6 51 + x - 12 x + 66 x - 220 x + 495 x - 792 x + 924 x - 792 x4 3 2+ 495 x - 220 x + 66 x - 12 x④因式分解factor;将表达式121x-做因式分解;>> syms x;f=x^12-1;>> prettyfactorf答;ans =1+x^12-12x^11+66x^10-220x^9+495x^8-792x^7+924x^6-792x^5+495x^4-220x^3+66x^2-12x 12 11 10 9 8 7 6 51 + x - 12 x + 66 x - 220 x + 495 x - 792 x + 924 x - 792 x4 3 2+ 495 x - 220 x + 66 x - 12 x>> syms x;f=x^12-1;prettyfactorf2 2 2 4 2x - 1 1 + x + x 1 + x 1 - x + x 1 + x x - x + 1⑤化简simple或simplify;将函数f=;>> clear>> syms x;f=1/x^3+6/x^2+12/x+8^1/3;>> g1=simplef>> g2=simplifyf答;g1 =2x+1/xg2 =2x+1^3/x^3^1/36、符号表达式的变量替换subs函数可以对符号表达式中的符号变量进行替换>> clear>> f=sym'x+y^2+4x+10'>> f1=subsf,'x','s' %使用s替换x>> f2=subsf,'x+y','z'答;f =x+y^2+4x+10f1 =s+y^2+4s+10f2 =z^2+4x+107、符号极限、符号积分与微分1)求极限函数的调用格式limitF,x,a %返回符号对象F当x→a时的极限limitF,a %返回符号对象F当独立变量→a时的极限limitF %返回符号对象F当独立变量→0a=0时的极限limitF,x,a,’right’ %返回符号对象F当x→a时的右极限limitF,x,a,’left’ %返回符号对象F当x→a时的左极限例一:>> clear>> f=sym'sinx/x+ax'>> limitf,'x',0 %以x为自变量求极限>> limitf,'a',0 %以a为自变量求极限>> limitf %在默认情况下以x为自变量求极限>> findsymf %得到变量并且按字母表顺序排列答‘f =sinx/x+axans =1ans =sinx/xans =1ans =a, x例二:>> clear>> f=sym'sqrt1+1/n;>> limitf,n,inf %求n趋于无穷大时的极限2)求积分函数的调用格式intF %求符号对象F关于默认变量的不定积分intF,v %求符号对象F关于指定变量v的不定积分intF,a,b %求符号对象F关于默认变量的从a到b的定积分intF,v,a,b %求符号对象F关于指定变量的从a到b的定积分3)求微分方程的调用格式diffF %求符号对象F关于默认变量的微分diffF,v %求符号对象F关于指定变量v的微分diffF,n %求符号对象F关于默认变量的n阶微分,n为自然数1、2、3……diffF,v,n %求符号对象F关于指定变量v的n阶微分8、符号方程求解1常规方程求解函数的调用格式g=solveeq %求方程或表达式或字串eq关于默认变量的解g=solveeq,var %求方程或表达式或字串eq关于指定变量var的解g=solveeq1,eq2,….,eqn,var1,var2,…,varn %求方程或表达式或字串eq1,eq2,eq3,……eqn关于指定变量组var1,var2,……,varn的解求一元二次方程20++=的解;其求解方法有多种形式:ax bx c①seq=solve'ax^2+bx+c'②seq=solve'ax^2+bx+c=0'③eq=’ax^2+bx+c’;④eq=’ax^2+bx+c=0’;seq=solveeq⑤sym x a b ceq=ax^2+bx+cseq=solveeq2常微分方程求解求解常微分方程的函数是dsolve;应用此函数可以求得常微分方程组的通解,以及给定边界条件或初始条件后的特解;常微分方程求解函数的调用格式:r=dsolve’eq1,eq2,…’,’cond1,cond2,…’,’v’r=dsolve’eq1’,’eq2’,…,’cond1’,’cond2’,…,’v’说明:①以上两式均可给出方程eq1,、qeq2对应初始条件cond1、cond2之下的一v 作为解变量的各微分方程的解; ②常微分方程解的默认变量为t;③第二式中最多可接受的输入式是12个;④微分方程的表达方法;在用MATLAB 求解常微分方程时,用大写字母Dy 表示dxdy ,用D2y 表示22d y dx ,依此类推; 边界条件以类似于ya=b 给出;其中y 为因变量,a 、b 为常数.如果初始条件给的不够,求出的解为含有C1、C2等待定常数的通解;例一 求微分方程x dx dy 2=的通解. 练习:1求222132lim x x x x →--+; 2求函数()cos 2sin 2f x x x =-的积分;求函数()g x =3计算定积分60(sin 2)x dx π+⎰ 4求下列线性方程组的解5求解但y0=2,在z0=7时,微分方程组的解;实验五 MATLAB 程序设计一、实验目的掌握MATLAB 程序设计的主要方法,熟练编写MATLAB 函数.二、 实验内容1M 文件的编辑;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章上机实验
一.实验内容
(一)熟悉Matlab的基本命令
(1)工作空间管理:
①Who和whos:显示当前工作空间的变量情况,例如想查询A和B两个变量的空间占用情况,则可以用命令whos A B。
如果只给出whos命令,则将显示工作空间中全部变量的变量名称、大小、内存占用情况及变量类型。
Who命令给出的结果是简单的,只显示当前工作空间中的变量名称。
②clear:删除工作空间中的变量。
Clear A B表示删除A和B两个变量;若只给出clear命令,则将删除工作空间内的所有变量。
③which:显示出某个MATLAB文件所在目录,如which xxure将给出xxure.m 文件所在目录。
④quit:退出
⑤workspace:该命令将打开工作空间浏览器窗口。
(2)路径编辑:
①path:显示MATLAB包含路径。
②cd:返回上一级目录。
③addpath:将一个新的字符串表示的子目录名添加到MATLAB包含的路径下。
④rmpath:从当前MATLAB包含的路径下清除某个字符串表示的子目录。
(3)显示格式:
①format long:双精度数表示小数点后14位有效数字,单精度数表示小数点后7位有效数字。
②short e:5位科学计数表示。
③short g:从format short和format short e中自动选择最佳计数方式(默认设置)
④long g:从format long和format long e中自动选择最佳计数方式
⑤hex:十六进制表示
⑥rat:近似有理数表示
(4)窗口清理:
①clc:命令窗口清屏。
②cla:可以清除当前坐标系下的内容。
③clf:图形窗口清屏。
④close:用于关闭所有的图形窗口。
(5)操作系统命令:
①copyfile:复制文件
②pwd(Identify current directory):显示当前的工作目录名称。
(6)熟悉Matlab的联机帮助命令:
①help:可以达到帮助信息目录。
②helpwin:可进入MATLAB的联机帮助窗口。
③what:可以查询出指定目录下各类文件的性质。
④ver (signal):将列出某个工具箱的版本信息。
(二)在命令窗口中输入magic(4)命令,执行后用方向↑或↓键(历史命令)将该命令调出,在行内编辑,将其改为6阶魔术矩阵命令。
(三)用Matlab 语言绘制函数y =tcos(t)在t ∈[0,2π]内的曲线。
(四)选择适当的坐标范围,用Matlab 语言绘制函数:f (x,y )=(x 2+y )e −x 2−y 22
⁄的三
维曲线。
01234567
-4
-2
2
4
6
8
二.实验感想及疑惑
本次上机实验是学习MATLAB 以来的第一次实验。
通过本次实验,我了解到了MATLAB 软件的基本内容,掌握了基本的命令。
上机实验大大增强了我对于MATLAB 的兴趣,对今后的实验也充满了期待。
但是在实验过程中也发现了一些问题,例如在编辑函数f (x,y )=(x 2+y )e −x
2−y 22
⁄时,
会忘记向量后面加“.”;有些命令不熟悉,导致了编译错误等等。
虽然遇到了很多问题,但是借助同学和老师的帮助下,都顺利解决了。
希望在接下来的实验中,能够进一步熟悉软件使用方法,利用MATLAB 解决更多的问题。
4
-0.6
-0.4
-0.2
0.2
0.4
0.6。