matlab实验二实验报告及程序

合集下载

实验二MATLAB绘制图形

实验二MATLAB绘制图形

grid on %在所画出的图形坐标中加入栅格
绘制图形如下
50
10
1
0.8
40
10
0.6
0.4
30
10
0.2
0
1020
-0.2
-0.4
1010
-0.6
-0.8
0
10
-1
-2
0
2
-2
0
2
10
10
10
10
10
10
如果在图中不加栅格
程序如下:
clear x=logspace(-1,2);%在10^(-1)到10^2之间产生50个 对数等分的行向量 subplot(121); loglog(x,10*exp(x),'-p') subplot(122); semilogx(x,cos(10.^x))
(2)plot(x,y): 基本格式,x和y可为向量或矩阵. 1. 如果x,y是同维向量,以x元素为横坐标,以y元素 为纵坐标绘图. 2. 如果x是向量,y是有一维与x元素数量相等的矩阵, 则以x为共同横坐标, y元素为纵坐标绘图,曲线数目 为y的另一维数. 3. 如果x,y是同维矩阵,则按列以x,y对应列元素为 横、纵坐标绘图,曲线数目等于矩阵列数.
y=2*exp(-0.5*x).*cos(4*pi*x);
2
plot(x,y)
1.5
1
0.5
0
-0.5
-1
-1.5
-2
0
1
2
3
4
5
6
7
例4 绘制曲线
t=(0:0.1:2*pi);
x=t.*sin(3*t);
y=t.*sin(t).*sin(t);

matlab实验二

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)

程序设计实验报告(matlab)

程序设计实验报告(matlab)实验一: 程序设计基础实验目的:初步掌握机器人编程语言Matlab。

实验内容:运用Matlab进行简单的程序设计。

实验方法:基于Matlab环境下的简单程序设计。

实验结果:成功掌握简单的程序设计和Matlab基本编程语法。

实验二:多项式拟合与插值实验目的:学习多项式拟合和插值的方法,并能进行相关计算。

实验内容:在Matlab环境下进行多项式拟合和插值的计算。

实验方法:结合Matlab的插值工具箱,进行相关的计算。

实验结果:深入理解多项式拟合和插值的实现原理,成功掌握Matlab的插值工具箱。

实验三:最小二乘法实验目的:了解最小二乘法的基本原理和算法,并能够通过Matlab进行计算。

实验内容:利用Matlab进行最小二乘法计算。

实验方法:基于Matlab的线性代数计算库,进行最小二乘法的计算。

实验结果:成功掌握最小二乘法的计算方法,并了解其在实际应用中的作用。

实验六:常微分方程实验目的:了解ODE的基本概念和解法,并通过Matlab进行计算。

实验内容:利用Matlab求解ODE的一阶微分方程组、变系数ODE、高阶ODE等问题。

实验方法:基于Matlab的ODE工具箱,进行ODE求解。

实验结果:深入理解ODE的基本概念和解法,掌握多种ODE求解方法,熟练掌握Matlab的ODE求解工具箱的使用方法。

总结在Matlab环境下进行程序设计实验,使我对Matlab有了更深刻的认识和了解,也使我对计算机科学在实践中的应用有了更加深入的了解。

通过这些实验的学习,我能够灵活应用Matlab进行各种计算和数值分析,同时也能够深入理解相关的数学原理和算法。

这些知识和技能对我未来的学习和工作都将有着重要的帮助。

MATLAB实验报告。张磊涛

MATLAB实验报告。张磊涛

789
>>A=[1 2 3;4 5 6;7 8 9],[i,j]=find(A>=5), for n=1:length(i)
m(n)=A(i(n),j(n)) end M
程序运行结果: m=7 5 8 6 9
a11 a12
5求矩阵A=
的行列式值,逆和特征值。
a21 a22
>> a11=input('a11='),a12=input('a12='),
p1 = 16 12
A = Empty matrix: 1-by-0
ans = 0
3 建立一个字符串矢量,删除其中的大写字母。
>> ch='ABcdefGHd',k=find(ch>='A'&ch<='Z'),ch(k)=[]
ch =ABcdefGHd
k1 2 7 8
ch =Cdefd
123
4 输入矩阵 A= 4 5 6 ,并找出 A 中大于或等于 5 的元素(用行列式表示)。
0.5457*exp(-0.75*x2^2-3.75*x1^2-1.5*x1) x1+x2>1
P(x1,x2)= 0.5457*exp(-0.75*x2^2-3.75*x1^2+1.5*x1) -1<x1+x2<=1
0.7575*exp(-x2^2-6.*x1^2)
x1+x2<=-1
程序: function[p]=ff(x1,x2) if x1+x2>1
实验三
一 实验目地: 1.掌握 if 语句,Switch 语句,try 语句的使用。 2.掌握利用 for 语句,which 语句实现循环结构的方法. 二 实验内容: 1 根据 1+1/3+1/5+……+1/(2n-1),求(1)y<3 时的最大 n 值;(2)与(1)的 n 值对应的 y 值。 程序(1)用 for 循环:

实验二 MATLAB并行计算的配置

实验二 MATLAB并行计算的配置

实验二MATLAB并行计算的配置
一、实验目的
1.通过matlabpool命令启动和配置matlab并行计算池,了解matlabpool的基本使用方法。

2.能够编写parfor程序进行并行环境的测试。

3.完成课堂练习。

二、实验课时:4课时
三、实验原理
第一部分:matlab并行池的启动及matlabpool命令的基本使用
首先,通过matlabpool size命令判断是否已经启动matlabpool。

图1 matlabpool size运行结果图
如果返回0,则表示没有开启matlabpool;如果返回大于0的值,则表示已经开启matlabpool。

然后通过运行matlabpool local;命令启动默认配置,其中的local表示配置项的名称。

图2 matlabpool local运行效果图
在运行此命令时,如果是win 7或者以上版本的系统,会弹出windows安全警报对话框,我们直接点击允许访问就可以了。

图3 windows安全警报图
第二部分:编写用于自动启动matlab并行计算池的函数程序1 startmatlabpool.m如下:
程序2 closematlabpool.m代码如下:
接着,我们可以通过help parfor命令来查看parfor的基本使用方法,然后按要求完成课堂练习的编码工作。

Help parfor允许效果图
四、课堂练习
1.编写一个测试parfor的程序,要求调用以上两个函数;
2.根据下面的公式使用matlab进行计算:
五、实验报告要求
简述实验目的;写出实验内容中解答各个题目所需要的命令及实验结果;简写实验总结与心得体会。

实验二MATLAB程序设计含实验报告

实验二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实验报告

实验二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)等等。

(完整word)Matlab实验报告

(完整word)Matlab实验报告

实验一:Matlab操作环境熟悉一、实验目的1.初步了解Matlab操作环境.2.学习使用图形函数计算器命令funtool及其环境。

二、实验内容熟悉Matlab操作环境,认识命令窗口、内存工作区窗口、历史命令窗口;学会使用format 命令调整命令窗口的数据显示格式;学会使用变量和矩阵的输入,并进行简单的计算;学会使用who和whos命令查看内存变量信息;学会使用图形函数计算器funtool,并进行下列计算:1.单函数运算操作。

求下列函数的符号导数(1)y=sin(x);(2) y=(1+x)^3*(2-x);求下列函数的符号积分(1)y=cos(x);(2)y=1/(1+x^2);(3)y=1/sqrt(1—x^2);(4)y=(x1)/(x+1)/(x+2)求反函数(1)y=(x-1)/(2*x+3); (2) y=exp(x);(3) y=log(x+sqrt(1+x^2));代数式的化简(1)(x+1)*(x-1)*(x-2)/(x-3)/(x—4);(2)sin(x)^2+cos(x)^2;(3)x+sin(x)+2*x—3*cos(x)+4*x*sin(x);2.函数与参数的运算操作。

从y=x^2通过参数的选择去观察下列函数的图形变化(1)y1=(x+1)^2(2)y2=(x+2)^2(3) y3=2*x^2 (4) y4=x^2+2 (5) y5=x^4 (6) y6=x^2/2 3.两个函数之间的操作求和(1)sin(x)+cos(x) (2) 1+x+x^2+x^3+x^4+x^5乘积(1)exp(—x)*sin(x) (2) sin(x)*x商(1)sin(x)/cos(x); (2) x/(1+x^2); (3) 1/(x—1)/(x—2); 求复合函数(1)y=exp(u) u=sin(x) (2) y=sqrt(u) u=1+exp(x^2)(3) y=sin(u) u=asin(x) (4) y=sinh(u) u=-x实验二:MATLAB基本操作与用法一、实验目的1.掌握用MATLAB命令窗口进行简单数学运算。

matlab实验报告

matlab实验报告

实验仿真一:控制系统中的MATLAB编程应用已知单位负反馈的开环传递函数为:G(s)=ωξω(1)假设自然频率ω给定,取五个不同的阻尼比ξ。

试用MATLAB编程,在同一张图中绘制其单位阶跃响应曲线,并分析阻尼比对二阶动态系统的影响。

取ω=2,ξ=0.25, 0.5, 1,2,4由开环传递函数求出闭环传递函数:G(s)=ωξωω将数据带入闭环传递函数得:G(s)=,ξ则随着ξ的值变化,绘制的曲线将不同。

写入MATLAB程序如下:clearclcnum=4;den1=[1 1 4];sys1=tf(num,den1);den2=[1 2 4];sys2=tf(num,den2);den3=[1 4 4];sys3=tf(num,den3);den4=[1 8 4];sys4=tf(num,den4);den5=[1 16 4];sys5=tf(num,den5);step(sys1,'b-',sys2,'g-',sys3,'r-',sys4,'c-',sys5,'y-',20);图1-1 阻尼比不同的单位阶跃响应曲线图阻尼比对二阶动态系统的影响:随着阻尼比ξ的增大,系统超调量逐渐减小。

当阻尼比大于1时,系统响应曲线为单调曲线,已经没有振荡了。

(2)假设阻尼比ξ给定,取五个不同的自然频率ω。

试用MATLAB编程,在同一张图中绘制其单位阶跃响应曲线,并分析自然频率对二阶动态系统的影响。

取ξ=0.5,ω=0.5,1,2,3, 4将数据带入闭环传递函数得:G(s)=ω,ωω则随着ω的值变化,绘制的曲线将不同写入MATLAB程序如下:clearclcnum1=0.25;den1=[1 0.5 0.25];sys1=tf(num1,den1);num2=1;den2=[1 1 1];sys2=tf(num2,den2);num3=4;den3=[1 2 4];sys3=tf(num3,den3);num4=9;den4=[1 3 9];sys4=tf(num4,den4);num5=16;den5=[1 4 16];sys5=tf(num5,den5);step(sys1,'b-',sys2,'g-',sys3,'r-',sys4,'c-',sys5,'y-',20);图1-2 自然频率不同的单位阶跃响应曲线图自然频率对二阶动态系统的影响:随着自然频率的增加,系统的响应速度加快,而响应曲线的峰值保持不变。

数学实验二(matlab中二分法求解方程)

数学实验二(matlab中二分法求解方程)

云南大学数学与统计学实验教学中心实验报告
数学实验(二)
一、实验目的:练习用数值迭代逼近法解非线性方程。

1.区间迭代法:对分法和黄金分割法
2.点的迭代法:简单迭代法
二、实验内容:用二分法(即对分法)编程求解方程。

0123=---x x x
三、实验环境:MATLAB.
四.实验方法:
程序代码:
function X=fan(a,b)
e=1e-2;
ep=1;
x0=a;
xn=b;
x=0;
k=0;
N=100;
while (ep>e)
x=(x0+xn)/2;
f1=x^3-x^2-x-1;
f2=x0^3-x0^2-x0-1;
f3=xn^3-xn^2-xn-1;
if f1*f2<0
x0=a;
xn=x;
elseif f1*f3<0
x0=x;
xn=b;
end
ep=abs(f1);
k=k+1;
if k>N
break;
end
x
ep
实验结果:
fan(a,b)
x =
1.8572
ep =
0.0993
五、实验过程
1实验步骤
2 关键代码及其解释
3 调试过程
六、实验总结
1.遇到的问题及解决过程
2.产生的错误及原因分析
3.体会和收获。

Matlab实验报告_2

Matlab实验报告_2

实验一 Matlab基础知识一、实验目的:1.熟悉启动和退出Matlab的方法。

2.熟悉Matlab命令窗口的组成。

3.掌握建立矩阵的方法。

4.掌握Matlab各种表达式的书写规则以及常用函数的使用。

二、实验内容:1.求[100,999]之间能被21整除的数的个数。

(rem)2.建立一个字符串向量,删除其中的大写字母。

(find)3.输入矩阵,并找出其中大于或等于5的元素。

(find)4.不采用循环的形式求出和式6312ii=∑的数值解。

(sum)三、实验步骤:●求[100,199]之间能被21整除的数的个数。

(rem)1.开始→程序→Matlab2.输入命令:»m=100:999;»p=rem(m,21);»q=sum(p==0)ans=43●建立一个字符串向量,删除其中的大写字母。

(find)1.输入命令:»k=input('’,’s’);Eie48458DHUEI4778»f=find(k>=’A’&k<=’Z’);f=9 10 11 12 13»k(f)=[ ]K=eie484584778●输入矩阵,并找出其中大于或等于5的元素。

(find)1.输入命令:»h=[4 8 10;3 6 9; 5 7 3];»[i,j]=find(h>=5)i=3 j=11 22 23 21 32 3●不采用循环的形式求出和式的数值解。

(sum)1.输入命令:»w=1:63;»q=sum(2.^w)q=1.8447e+019实验二 Matlab 基本程序一、 实验目的:1. 熟悉Matlab 的环境与工作空间。

2. 熟悉M 文件与M 函数的编写与应用。

3. 熟悉Matlab 的控制语句。

4. 掌握if,switch,for 等语句的使用。

二、 实验内容:1. 根据y=1+1/3+1/5+……+1/(2n-1),编程求:y<5时最大n 值以及对应的y 值。

MATLAB实验二

MATLAB实验二

本科实验报告课程名称《MATLAB电子信息应用》实验题目:矩阵和数组的操作实验地点:D001机房专业班级:学号:学生姓名:指导教师:一、实验环境计算机 MATLAB软件二、实验目的1.掌握矩阵和数组的一般操作,包括创建、保存、修改和调用等。

2.学习矩阵和数组的加减法运算与乘法。

3.掌握对数组中元素的寻访与赋值,会对数组进行一般的操作。

三、实验内容和步骤1.用三种方法创建一个3*3矩阵,然后利用矩阵编辑器,将其扩充为4*5矩阵,并保存,试着调用它。

(1)直接输入法如在命令区输入A=[3,2,1;4,5,6;7,8,9]。

(2)直接利用MATLAB提供的函数创建一个3*3矩阵如在命令区输入rand(3,3)即得到一个3*3的随机矩阵(3)利用MATLAB提供的“Matrix Editor”完成输入步骤1 在命令区输入A=1.步骤2 用鼠标单击工具栏的工作区浏览器,MATLAB弹出变量浏览器,选中变量A,鼠标左键双击A,打开矩阵编辑器。

步骤3 在左下角的两个文本框中分别输入希望得到的矩阵的行数和列数:3行3列,即得到一个3*3矩阵。

步骤4 要将上面矩阵改为一个4*5矩阵,只需改变矩阵的行数和列数即可。

如将3行3列改为4行5列,即可得到一个4*5矩阵。

若想修改其中的元素,只需用鼠标选中表格中我们想要修改的元素,将原来的元素修改为我需要的值。

步骤5 要命令区输入save data,即可保存上面例子中创建的矩阵A。

步骤6 在命令区输入 load data 即可把vabaocun在文件中的矩阵读到MATLAB的工作区的内存中来。

2.建立一个等差数列,然后由它产生一个对角阵。

步骤1 在命令区输入a=linspace(0,1.5,5)产生一个等差数列。

步骤2 在命令区输入B=diag(a)产生一个对角阵。

3.利用MATLAB的函数inv(A)求方阵A的逆矩阵。

步骤1 在命令区输入A=[1,2;5,6]得到一个2*2的方阵。

MATLAB实验报告03203

MATLAB实验报告03203

实验报告课程名称 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 90ans =2.0000 1.3333 1.2000 1.1429 1.1111>> a.\bans =0.5000 0.7500 0.8333 0.8750 0.90002.(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 =1.7109-0.1374实验三 MATLAB数值计算(二)一实验目的:1.掌握多项式的创建与运算方法;2. 掌握基本的数据分析方法;二实验装置:计算机三实验内容:1.多项式创建输入系数矢量,创建多项式x^3-2*x^2+5*x+3。

matlab 实验报告

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)

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的图像处理功能,并通过实际案例来展示其应用。

图像处理基础图像处理是指对图像进行数字化处理的过程,其目的是改善图像质量、提取有用信息或实现特定的应用需求。

在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. 图像边缘检测图像边缘检测是指提取图像中物体边缘的过程,常用于目标检测和图像分割。

MATLAB第二章实验报告

MATLAB第二章实验报告

深 圳 大 学 实 验 报 告课程名称: MATLAB实验名称: MATLAB 的数值计算学 院:指导教师:报告人: 组号:学号 实验地点实验时间: 年 月 日提交时间:二、内容和步骤1.创建矩阵(1)直接输入(2)用from:step:to方式(3)用linspace函数:(4)使用特殊矩阵函数,并修改元素(5)获取子矩阵块:.练习:b=logspace(0,4*3.14,20)b =1.0e+12 *1 至17 列0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0001 0.0004 0.0018 0.0082 0.037718 至20 列0.1729 0.7924 3.63082.矩阵运算:(1)利用矩阵除法解线性方程组(2)利用矩阵的基本运算求解矩阵方程练习:(3)计算矩阵的特征值和特征向量。

验证特征值和特征向量与该矩阵的关系练习:将矩阵的乘除运算改为数组的点乘和点除运算:(4)利用数学函数进行矩阵运算w=logspace(-2,1,10)w =0.0100 0.0215 0.0464 0.1000 0.2154 0.4642 1.0000 2.1544 4.6416 10.0000LW=-20*log10(sqrt((2*w).^2 + 1))LW =-0.0017 -0.0081 -0.0373 -0.1703 -0.7396 -2.6993 -6.9897 -12.9151 -19.4040 -26.0314FW=-atan(2*w)*180/piFW =-1.1458 -2.4673 -5.3037 -11.3099 -23.3106 -42.8711 -63.4349 -76.9341 -83.8517 -87.13763.生成多维数组:c(18)=[]c =1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8练习:使用数组c编辑窗口查看变量a,b和c。

密码学 上机实验二报告(Matlab)

密码学 上机实验二报告(Matlab)
end
state = sub_bytes (state, inv_s_box);
% Display intermediate result if requested
ifverbose_mode
disp_hex ('After inv_sub_bytes : ', state)
end
% Extract the current round key (4 x 4 matrix) from the expanded key
程序清单:
程序代码如下所示:
functionplaintext = inv_cipher (ciphertext, w, inv_s_box, inv_poly_mat, vargin)
ifnargin > 0
% Switch the verbose mode flag on
verbose_mode = 1;
信息安全与密码学实验报告
序号
班级
姓名
学号
日期
时间
地点
1
信计1002
王志新
41064035
2012.12.10
18:00-21:00
实验楼102
指导教师:候书会
实验名称:
1、上机实验二
实验内容:
实验四现代对称密码学实验(验证性实验,4学时)
1、AES
A、实验内容:熟悉AES算法,并实现AES;
B、测试数据:任意,并验证加/解密结果。
else
% generate the column vector [16 13 10 7]'
col = (16 : -3 : 7)';
end
% Generate the row vector [0 4 8 12]

MATLAB实验报告二

MATLAB实验报告二

实验二 Matlab语言程序设计一、实验内容:1、编写命令文件:计算 1+2+…+n<2000 时的最大 n 值;>> n=1; %将变量初值设为1sum=0;while((sum+n)<2000) %若s<2000成立,则执行下一条语句,否则结束本循环sum=sum+n; %求和运算n=n+1;endsum,n-1 %显示最终s和nsum =1953ans =622、编写函数文件:分别用 for 和 while 循环结构编写程序,求 2 的 0 到 15 次幂的和。

function xunhuan(x)sum=0;for(i=0:x)sum=sum+2^i;endy=sum>> xunhuan(15)y =65535function whilexun(x)sum=0;i=0;while(i<x)sum=sum+2^i;i=i+1;endy=sum>> whilexun(16)y =655353、如果想对一个变量 x 自动赋值。

当从键盘输入 y 或 Y 时(表示是),x 自动赋为 1;当从键盘输入 n 或 N 时(表示否),x 自动赋为 0;输入其他字符时终止程序。

a=input('输入一个字符:');switch acase 'y'x=1case 'Y'x=1case 'n'x=0case 'N'x=0otherwiseend输入一个字符:'Y'x =1二、实验思考题1.用FOR和WHILE语句有何要求?答:for语句的基本命令格式为for 循环变量=表达式1表达式3表达式2循环语句组End表达式1、表达式3、表达式2的定义和C语言相似即首先执行循环变量的初始值赋成表达式1的值然后判断循环变量的值介于表达式1和表达式2的值之间则执行循环体中的语句否则结束循环语句的执行。

matlab实验报告

matlab实验报告

matlab实验报告引言:Matlab(矩阵实验室)是一款功能强大的数值计算和科学计算软件,广泛应用于工程、科学和经济等领域。

本实验报告将探讨我在使用Matlab进行实验过程中的心得体会和实验结果。

实验一:图像处理在这个实验中,我使用Matlab对一张图像进行了处理,并应用了各种图像处理算法。

这包括图像增强、边缘检测和图像分割等技术。

通过Matlab的图像处理工具箱,我能够轻松调用各种算法函数,并对图像进行快速处理。

实验结果表明,Matlab图像处理工具箱提供了丰富的函数和算法,极大地方便了我们的图像处理工作。

实验二:模拟信号处理模拟信号处理是Matlab中的一个重要应用领域。

在这个实验中,我模拟了一个带噪声的正弦信号,并使用Matlab进行了噪声滤波和频谱分析。

通过使用Matlab的滤波函数,我能够有效地去除信号中的噪声,并还原出原始信号。

同时,Matlab提供了功能强大的频谱分析工具,我可以轻松地对信号的频率特性进行分析和可视化。

实验三:数据分析与统计数据分析与统计是Matlab的另一个重要应用领域。

在这个实验中,我使用Matlab对一组实验数据进行了分析和统计。

通过使用Matlab的统计函数和工具,我能够计算出数据的均值、方差、标准差等统计指标,并绘制出数据的直方图和散点图。

这些统计分析结果对我的实验研究提供了有力的支持,并帮助我更好地理解实验数据。

实验四:数值计算与优化数值计算与优化是Matlab的核心功能之一。

在这个实验中,我使用Matlab进行了一组数值计算和优化实验。

通过使用Matlab的数值计算函数和优化工具箱,我能够快速计算出复杂的数学问题,并找到最优解。

同时,在进行优化实验时,我可以设置各种约束条件和目标函数,从而得到最优解的参数值。

这些数值计算和优化工具极大地提高了我的研究效率和准确度。

结论:通过这些实验,我深刻认识到Matlab的强大功能和广泛应用领域。

无论是图像处理、信号处理、数据分析还是数值计算与优化,Matlab都提供了丰富的函数和工具,让我们能够快速高效地完成实验和研究工作。

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

昆明理工大学信息工程与自动化学院学生实验报告( 2011——2012 学年 第一学期 )课程名称:控制系统计算机辅助设计 开课实验室:信自楼 234 2011年10月28日年级、专业、班 学号 姓名 成绩实验项目名称 实验二 控制系统分析指导教师 胡蓉教师评语该同学是否熟悉实验内容: A.熟悉□ B.比较熟悉□ C.不熟悉□ 该同学的实验能力: A.强 □ B.中等 □ C.差 □ 该同学的实验是否达到要求 : A.达到□ B.基本达到□ C.未达到□ 实验报告是否规范: A.规范□ B.基本规范□ C.不规范□ 实验过程是否详细记录: A.详细□ B.一般 □ C.没有 □注:5个A 为优,5个B 为中,介于二者间为良,5个C 为不及格,3个B以上为及格。

教师签名:年 月 日实验二 控制系统分析一、 实验目的1. 掌握如何使用Matlab 进行系统的时域分析。

2. 掌握如何使用Matlab 进行系统的频域分析。

3. 掌握如何使用Matlab 进行系统的根轨迹分析。

4. 掌握如何使用Matlab 进行系统的稳定性分析。

二、 实验内容1.时域分析(1)典型二阶系统传递函数为:当ζ=0.7, ω取2、4、6、8、10、12的单位阶跃响应。

n程序为:>> num1=4;den1=[1,2.8,4];sys1=tf(num1,den1);>> num2=16;den2=[1,5.6,16];sys2=tf(num2,den2);>> num3=36;den3=[1,8.4,36];sys3=tf(num3,den3);>> num4=64;den4=[1,11.2,64];sys4=tf(num4,den4);>> num5=100;den5=[1,14,100];sys5=tf(num5,den5);>> num6=144;den6=[1,16.8,144];sys6=tf(num6,den6);>> step(sys1,sys2,sys3,sys4,sys5,sys6);运行单位阶跃响应结果图为:(2)典型二阶系统传递函数为:当ω=6, ζ取0.2、0.4、0.6、0.8、1.0、1.5、2.0的单位阶跃响应。

n程序为:>> num4=36;den4=[1,9.2,36];sys4=tf(num4,den4);>> num5=36;den5=[1,12,36];sys5=tf(num5,den5);>> num6=36;den6=[1,18,36];sys6=tf(num6,den6);>> step(sys1,sys2,sys3,sys4,sys5,sys6);运行单位阶跃响应结果图为:2.频域分析(1)典型二阶系统传递函数为:取2、4、6、8、10、12的伯德图。

当ζ=0.7, ωn程序为:>> num1=4;den1=[1, 2.8,4];sys1=tf(num1,den1); >> num2=16;den2=[1, 5.6,16];sys2=tf(num2,den2);>> num3=16;den3=[1, 5.6,16];sys3=tf(num3,den3);>> num5=100;den5=[1, 14,100];sys5=tf(num5,den5);>> num6=144;den6=[1, 16.8,144];sys6=tf(num6,den6);>> bode(sys1,sys2,sys3,sys4,sys5,sys6,{0.001,100});运行伯德图为:(2)典型二阶系统传递函数为:=6, ζ取 0.2、0.4、0.6、0.8、1.0、1.5、2.0的伯德图。

当ωn程序为:>> num1=36;den1=[1,2.4,36];sys1=tf(num1,den1);>> num2=36;den2=[1,4.8,36];sys2=tf(num2,den2);>> num3=36;den3=[1,7.2,36];sys3=tf(num3,den3);>> num4=36;den4=[1,9.6,36];sys4=tf(num4,den4);>> num5=36;den5=[1,12,36];sys5=tf(num5,den5);>> bode(sys1,sys2,sys3,sys4,sys5,sys6,{0.001,100});运行伯德图为:3. 根轨迹分析设系统结构如图1所示。

(1)试绘制该系统的根轨迹;(2)请分别在系统左半平面和右半平面的根轨迹图上选择一点,判断在这两点系统闭环的稳定性。

程序为:由图可知系统的开环传递函数G及根轨迹为:>> sys1=tf(0.2,[0.5,1,0])Transfer function:0.2-----------0.5 s^2 + s>> sys2=5;>> sys=feedback(sys1,sys2,-1) Transfer function:0.2---------------0.5 s^2 + s + 1>> G1=tf(1,[1,0])Transfer function:1-s>> G2=series(G1,sys)Transfer function:0.2-----------------0.5 s^3 + s^2 + s>> rlocus(G2)运行结果图:3(2)A>> [k1,poles1]=rlocfind(G)Select a point in the graphics windowselected_point =-0.4396 + 0.9224ik1 =2.8939poles1 =-1.1364-0.4318 + 0.9122i-0.4318 - 0.9122i系统特征方程的所有根都是负实部的共轭复数,系统是稳定的B>> [k2,poles2]=rlocfind(G)Select a point in the graphics windowselected_point =0.4254 + 2.0776i k2 =32.1320poles2 =-2.86650.4332 + 2.0727i0.4332 - 2.0727i系统特征方程的根有正实部的共轭复数,系统是不稳定的;4.稳定性分析(1)代数法稳定性判据:已知某单位负反馈系统的开环传递函数为:试对系统闭环判别其稳定性。

四(1)程序为:den=[1,5,0,21,1]p=roots(den)i=find(real(p)>0)n=length(i)if(n>0),disp('系统不稳定,不稳定的根的个数')nelse,disp('系统稳定')end程序运行结果:den =1 5 0 21 1p =-5.65190.3497 + 1.8961i0.3497 - 1.8961i-0.0476i =23n =2系统不稳定,不稳定的根的个数n =2(2)Bode图法判断系统稳定性:已知某单位负反馈系统的开环传递函数为:试绘制系统的Bode图和Nyquist曲线,分别用两种方法判断闭环系统的稳定性,并求出系统的频域性能指标ωc、γ与时域性能指标σ%、ts(2)Bode图程序:num=[0.3,1]den=conv([1,0],[1,12,5])g=tf(num,den)bode(g,{0.01,100})[Gm,Pm,Wcg,Wcp]=margin(g)运行结果:num =0.3000 1.0000den =1 12 5 0Transfer function:0.3 s + 1------------------s^3 + 12 s^2 + 5 sGm =InfPm =69.1650Wcg =InfWcp =0.1842运行后Bode图为:(2)Nyquist曲线程序:num=[0.3,1]den=conv([1,0],[1,12,5])g=tf(num,den)Nyquist(g,{0.01,100}) [Gm,Pm,Wcg,Wcp]=margin(g) 程序运行结果:num =0.3000 1.0000den =1 12 5 0Transfer function:0.3 s + 1------------------s^3 + 12 s^2 + 5 sGm =InfPm =69.1650Wcg =InfWcp =0.1842Nyquist曲线为:系统分析:由上图所示的Nyquist曲线图可知,开环系统特征方程的根都在左半s平面,所以开环系统是稳定的。

当频率w由负无穷变到正无穷过程中,奈奎斯特曲线不包围-1+j0点,所以该系统在闭环状态下也是稳定的。

相关文档
最新文档