matlab实验报告(实验6)
基于matlab的实验报告
基于matlab的实验报告实验报告:基于MATLAB 的实验一、实验目的通过使用MATLAB 软件,掌握如何进行数据分析、图像处理、算法实现等一系列实验操作,提高实验者的实践能力和动手能力。
二、实验原理MATLAB 是一种在科学计算和技术开发领域广泛应用的计算机软件。
它能进行矩阵计算、绘制函数和数据图像、实现算法以及进行数据分析等。
通过掌握MATLAB 的使用,能够快速、高效地解决各种科学和工程问题。
三、实验内容1. 数据分析:使用MATLAB 的数据分析工具进行数据的导入、处理和分析。
2. 图像处理:利用MATLAB 的图像处理工具包对图像进行滤波、增强、分割等操作。
3. 算法实现:使用MATLAB 实现常用的算法,如排序、搜索、图像压缩等。
四、实验步骤1. 数据分析:(1)使用MATLAB 的读取数据函数将数据导入MATLAB 环境中。
(2)利用MATLAB 的数据处理函数进行数据清洗和预处理。
(3)使用MATLAB 的统计工具进行数据分析,如求平均值、标准差等。
(4)利用MATLAB 的绘图函数将分析结果可视化。
2. 图像处理:(1)使用MATLAB 的读取图像函数将图像导入MATLAB 环境中。
(2)利用MATLAB 的图像处理工具包进行滤波操作,如均值滤波、中值滤波等。
(3)使用MATLAB 的图像增强函数对图像进行锐化、变换等操作。
(4)利用MATLAB 的图像分割算法对图像进行分割。
3. 算法实现:(1)使用MATLAB 编写排序算法,如冒泡排序、快速排序等。
(2)使用MATLAB 编写搜索算法,如二分查找、线性搜索等。
(3)使用MATLAB 实现图像压缩算法,如离散余弦变换(DCT)。
五、实验结果实验中,我们使用MATLAB 完成了数据分析、图像处理和算法实现的一系列实验操作。
通过数据分析,我们成功导入了数据并对其进行了清洗和预处理,最后得到了数据的统计结果。
在图像处理方面,我们对图像进行了滤波、增强和分割等操作,最终得到了处理后的图像。
MATLAB实验6
1、某次考试成绩,优秀、良好、中等、及格和不及格的人数分别为7、17、23、19、5,试用柱形图和饼图进行成绩统计分析data=[7,17,23,19,5];subplot(121);bar(data);subplot(122);pie(data);legend('优秀','良好','中等','及格','不及格','location','northoutside');2、下图为某公司3类产品的销售额,要求按季度绘制出柱形图,并用饼图分析产品A各季度的产品销售情况。
data=[51,87,34,47;67,78,68,90;78,85,65,50]';subplot(211);bar(data);title('产品全年销售额')xlabel('季度');ylabel('万元');legend('产品A','产品B','产品C','location','eastoutside')subplot(212);pie(data);legend('第一季度','第二季度','第三季度','第四季度','location','eastoutside')3、绘制实心圆(-pi ,pi)并填充颜色t=-pi:0.01:pi;x=sin(t);y=cos(t);fill(x,y,'b');axis off;4、绘制y=sin(2t)cos(2t)的极坐标图(0,2pi)t=0:0.01:2*pi;y=sin(2*t).*cos(2*t);polar(t,y,'k');5、绘制y=e-x对数坐标图和直角坐标图进行比较x=-6:0.001:5;y=exp(-x);subplot(2,1,1);loglog(x,y);subplot(2,1,2);plot(x,y);Warning: Negative data ignored6、绘制三维曲面图z = sin x2 + cos y2,x∈[0,π],y∈[0,π/2]。
程序设计实验报告(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环境下使用几种不同的插值法和拟合两种方法构造函数依据已经知道的某些特殊点来推测实际问题中需要知道但又不便于测量出来的量。
【实验原理】
1.z=interp2(x0,y0,z0,x,y,’method’): 要求x0,y0单调;x, y可取为矩阵, 或x取行向量, y取为列向量, x,y的值分别不能超出x0,y0的范围。
2.分段线性插值与计算量与n无关;n越大, 误差越小.
3.三次样条插值比分段线性插值更光滑。
4.‘linear’ : 分段线性插值;‘spline’ : 三次样条
二、实验内容
问题1 对函数, x([-5,5], 分别用分段线性插值和三次样条插值作插值(其中插值节点不少于20), 并分别作出每种插值方法的误差曲线.
1180 1320 1450 1420 1400 1300 700 900];
mesh(x,y,z)
xi=0:20:2800;
yi=0:20:2400;
zi=interp2(x,y,z,xi',yi,'cubic');
mesh(xi,yi,zi)
3.结果
4.结论及分析
通过实验,结果正确,分析无误。
三、实验小结
1270 1500 1200 1100 1350 1450 1200 1150
1230 1390 1500 1500 1400 900 1100 1060
1180 1320 1450 1420 1400 1300 700 900
MATLAB实验报告
MATLAB实验报告姓名:专业:学号:实验一MATLAB环境的熟悉与基本运算一、实验目的:1.熟悉MATLAB开发环境2.掌握矩阵、变量、表达式的各种基本运算二、实验基本知识:1.熟悉MATLAB环境:MATLAB桌面和命令窗口、命令历史窗口、帮助信息浏览器、工作空间浏览器文件和搜索路径浏览器。
2.掌握MATLAB常用命令3.MATLAB变量与运算符变量命名规则如下:(1)变量名可以由英语字母、数字和下划线组成(2)变量名应以英文字母开头(3)长度不大于31个(4)区分大小写MATLAB中设置了一些特殊的变量与常量,列于下表。
MATLAB运算符,通过下面几个表来说明MATLAB的各种常用运算符表2MATLAB算术运算符表3MATLAB关系运算符表4MATLAB逻辑运算符表5MATLAB特殊运算4.MATLAB的一维、二维数组的寻访表6子数组访问与赋值常用的相关指令格式5.MATLAB的基本运算表7两种运算指令形式和实质内涵的异同表6.MATLAB的常用函数表8标准数组生成函数表9数组操作函数三、实验内容1、学习安装MATLAB软件。
2、学习使用help命令,例如在命令窗口输入helpeye,然后根据帮助说明,学习使用指令eye(其它不会用的指令,依照此方法类推)3、学习使用clc、clear,观察commandwindow、commandhistory和workspace等窗口的变化结果。
4、初步程序的编写练习,新建M-file,保存(自己设定文件名,例如exerc1、exerc2、exerc3……),学习使用MATLAB的基本运算符、数组寻访指令、标准数组生成函数和数组操作函数。
注意:每一次M-file的修改后,都要存盘。
四、实验结果练习A:(1)helprand,然后随机生成一个2×6的数组,观察commandwindow、commandhistory和workspace等窗口的变化结果。
matlab 实验报告
matlab 实验报告Matlab 实验报告引言:Matlab(Matrix Laboratory)是一种强大的科学计算软件,它为科学家、工程师和研究人员提供了一个强大的计算环境。
本实验报告旨在介绍我对Matlab的实验结果和使用体验,以及对其优点和局限性的思考。
一、Matlab的基本功能和特点Matlab是一种高级编程语言和开发环境,它具有广泛的数学和工程计算功能。
通过Matlab,我可以进行矩阵运算、数值计算、数据可视化、算法开发等一系列操作。
Matlab的语法简洁易懂,可以快速实现复杂的计算任务。
此外,Matlab还提供了大量的工具箱,如信号处理、控制系统、图像处理等,使得各种领域的科学研究和工程应用变得更加便捷。
二、实验结果与应用案例在本次实验中,我选择了一个经典的数值计算问题——求解非线性方程。
通过Matlab的数值计算能力,我可以使用不同的迭代方法来求解方程的根。
在实验中,我使用了牛顿迭代法、二分法和割线法来求解方程。
通过对比这些方法的收敛速度和精度,我得出了不同方法的优缺点。
在实际应用中,Matlab可以广泛应用于信号处理、图像处理、数据分析等领域。
例如,在信号处理中,我可以使用Matlab的信号处理工具箱来进行滤波、频谱分析等操作。
在图像处理中,我可以利用Matlab的图像处理工具箱进行图像增强、边缘检测等操作。
这些应用案例充分展示了Matlab在科学计算和工程应用中的重要性和灵活性。
三、Matlab的优点1. 强大的计算功能:Matlab提供了丰富的数学和工程计算函数,可以高效地进行复杂的计算任务。
2. 简洁的语法:Matlab的语法简洁易懂,使得编程变得更加高效和便捷。
3. 丰富的工具箱:Matlab提供了大量的工具箱,覆盖了各种领域的科学计算和工程应用需求。
4. 可视化能力强:Matlab提供了丰富的绘图函数,可以直观地展示数据和计算结果。
四、Matlab的局限性1. 高昂的价格:Matlab是一款商业软件,其价格较高,对于个人用户而言可能不太容易承受。
matlab实验报告
MATLAB程序设计软件实验报告专业及班级____通信中兴131_______姓名____魏增_______________学号_____6102213869________日期_____2015.6.15_________南昌大学实验报告学生姓名: 魏增 学 号: 6102213869 班级: 中兴131班 实验类型:□ 验证 □ 综合 ■ 设计 □ 创新 实验日期: 实验成绩:实验一 MA TLAB 的基本使用一、 实验目的1.了解MA TALB 程序设计语言的基本特点,熟悉MA TLAB 软件的运行环境;2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力;3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。
二、 MATLAB 的基础知识通过本课程的学习,应基本掌握以下的基础知识: 一. MA TLAB 简介二. MA TLAB 的启动和退出 三. MA TLAB 使用界面简介 四. 帮助信息的获取五. MA TLAB 的数值计算功能六. 程序流程控制 七. M 文件八. 函数文件九. MATLAB 的可视化 三、上机练习1. 仔细预习第二部分内容,关于MA TLAB 的基础知识。
2. 熟悉MA TLAB 环境,将第二部分所有的例子在计算机上练习一遍3、已知矩阵⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=123456789,987654321B A 。
求A*B ,A .* B ,比较二者结果是否相同。
并利用MA TLAB 的内部函数求矩阵A 的大小、元素和、长度以及最大值。
解:>> A=[1 2 3;4 5 6;7 8 9]; >> B=[9 8 7;6 5 4;3 2 1];>> A*Bans =30 24 18 84 69 54 138 114 90 >> A.*B ans =9 16 2124 25 2421 16 9 两者结果不同 >> [m,n]=size(A) m =3 n =3 >> b=sum(A) b =12 15 18 >> a=length(A) a = 3 >>max(A)ans =7 8 94、Fibonacci 数组的元素满足Fibonacci 规则:),2,1(,12=+=++k a a a k k k ;且121==a a 。
matlab实验六
自动控制原理课程验证性实验报告
实验名称
六、基于matlab控制系统的根轨迹及其性能分析
实验时间
年日
学生姓名
牛景坤
实验地点
同组人员
专业班级
电技1001B
1、实验目的:
1、熟练掌握使用MATLAB绘制控制系统零极点图和根轨迹图的方法
2、学会分析控制系统根轨迹的一般规律
3、利用根轨迹图进行系统性能分析
2)在根轨迹图上标注分离点和临街开环增益对应的点,显示相关的性能指标。
3)在根轨迹图上各区段取点,使用rlocfind()命令分别在ζ=0,0.25,0.7,1,1.2处,得到相应的开环增益K和闭环极点r,由这两组参量写出系统闭环传递函数,分别绘制其对应系统的阶跃响应曲线,记录系统性能指标,并比较分析。将数据填入实验数据记录表格中
6)偶极子及其处理。如果零、极点之间的距离比它们本身的模值小一个数量级,则她们就构成偶极子。原理原点的偶极子其影响可忽略,反之必须考虑。
7)主导极点。在S平面上,最靠近虚轴而附近又无闭环零点的一些闭环极点,对系统性能影响最大,成为主导极点。凡是比主导极点的实部打3-6倍以上的其他闭环零、极点,其影响课忽略
(4)研究闭环零点、极点对系统性能的影响
范例4.3已知一负反馈系统的开环传递函数为G(s)H(s)=k(s+3)/s(s+2)
(1)绘制其根轨迹图,确定根轨迹分离点及相应增益K,临界增益K
(2)确定系统呈现欠阻尼状态的开环增益范围。
解:当系统呈现欠阻尼状态时,对应的闭环极点应该处于实轴上的两分离点之间的根轨迹上,从根轨迹图上可以测到欠阻尼状态时的开环增益范围为0.539<k<7.45
实验六抽样定理的MATLAB仿真
综合性、设计性实验报告姓名贺鹤学号************专业通信工程班级2013级1班实验课程名称抽样定理的MATLAB仿真指导教师及职称李玲香讲师开课学期2014 至2015 学年第二学期上课时间2015年6 月17、27日湖南科技学院教务处编印4、实验方法步骤及注意事项(1) 设计原理图(2) 编程步骤(仿真实验)① 确定f(t)的最高频率fm 。
对于无限带宽信号,确定最高频率fm 的方法:设其频谱的模降到10-5左右时的频率为fm 。
② 确定Nyquist 抽样间隔T N 。
选定两个抽样时间:T S <T N ,T S >T N 。
③ 滤波器的截止频率确定:ωm <ωC <ωS -ωm 。
④采样信号f(nTs )根据MATLAB 计算表达式的向量表示。
⑤ 重建信号f(t) 的MATLAB 中的计算机公式向量表示。
根据原理和公式,MATLAB 计算为:ft=fs*Ts*wc/pi*sinc((wc/pi)*(ones(length(nTs),1)*t-nTs'*ones(1,length(t))));(3)电路连接原理(硬件实验)5.实验数据处理方法① 自定义输入信号:f1=cos(2*pi*80*t)+2*sin(2*pi*30*t)+cos(2*pi*40*t-pi/3))(t f a )()(t t s S T δ=)(t f s 连续信号取样脉冲信号抽样信号)(ωj H )(0t f 理想低通滤波器恢复信号②改变抽样频率,实现欠抽样、临界抽样和过抽样,调试结果分析:(1)频率sf<max2fm时,为原信号的欠采样信号和恢复,采样频率不满足时域采样定理,那么频移后的各相临频谱会发生相互重叠,这样就无法将他们分开,因而也不能再恢复原信号。
频谱重叠的现象被称为混叠现象。
如图1所示图1.fs=140Hz恢复后信号波形及频谱(2)频率sf=max2fm时,为原信号的临界采样信号和恢复,从下图2恢复后信号和原信号先对比可知,只恢复了低频信号,高频信号未能恢复。
(完整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实验报告6高层绘图
MATLAB实验报告实验名称:高层绘图操作班级土木1403班学号201408020313姓名刘羽航实验日期2015 11 16图1 y函数的曲线图2.已知21xy=,()xy2cos2=,(1)在同一坐标系下用不同的颜色和线型绘制三条曲线。
(2)以子图形式绘制三条曲线。
(3)分别用条形图、阶梯图、杆图和填充图绘制三条曲线(1)源程序x1=1:10; %xy1=x1.^2;y2=cos(2.*x1);y3=y1.*y2;%题2(2)源程序subplot(1,3,1);plot(x1,y1);title('y1');subplot(1,3,2);plot(x1,y2);title('y2');subplot(1,3,3);plot(x1,y3);title('y3');结果与分析%题2(3)源程序subplot(3,4,1);bar(x1,y1,'m');title('bar(x1,y1,"m")'); subplot(3,4,2);stairs(x1,y1,'g');title('stairs(x1,y1,"g")'); subplot(3,4,3);stem(x1,y1,'r');title('stem(x1,y1,"r")'); subplot(3,4,4);fill(x1,y1,'b');title('fill(x1,y1,"b")'); subplot(3,4,5);bar(x1,y2,'m');title('bar(x1,y2,"m")'); subplot(3,4,6);stairs(x1,y2,'g');title('stairs(x1,y2,"g")'); subplot(3,4,7);stem(x1,y2,'r');title('stem(x1,y2,"r")'); subplot(3,4,8);fill(x1,y2,'b');title('fill(x1,y2,"b")'); subplot(3,4,9);bar(x1,y3,'m');title('bar(x1,y3,"m")'); subplot(3,4,10);stairs(x1,y3,'g');title('stairs(x1,y3,"g")'); subplot(3,4,11);stem(x1,y3,'r');title('stem(x1,y3,"r")');5.绘制函数的曲面图和等高线。
MATLAB数值计算
实验报告实验6: 数值计算(2)该实验作业设计教会学生基本的数值计算方法。
一、实验目的:1.通过完成实验,掌握MATLAB的数值计算2.熟悉浮点数相等的判断方法、了解截断误差;3.熟悉数值拟合的实际运用;4.熟悉牛顿法求方程的根。
二、实验内容1.1) 设 delta = 5 - 4.8; 用关系运算查看 delta 是否等于 0.2;利用format longE 查看delta究竟是多少,注意,由于计算机在浮点运算时,总存在舍入误差,故理想的判断相等的方法是使用 eps,即 abs(delta - 0.2) < eps2)尝试利用 roundn(delta,-5)四舍五入到小数点后面5位后,再利用关系运算查看其是否等于 0.2。
注意拷贝时勿跳坑!delta=5-4.8;%定义delta的值if delta==0.2%判断delta是否等于0.2disp('yes')endformat longE;%设置数值精度deltadelta =2.000000000000002e-01if abs(delta-0.2)<epsdisp('yes')endyesroundn(delta,-5)ans =2.000000000000000e-01%将delta四舍五入到小数点后面5位if roundn(delta,-5)==0.2disp('yes')end2. 利用符号计算 taylor(f, x, 'Order', n) 对符号函数f进行n阶截断展开,绘图观察对分别进行3阶、8阶、12阶截断的泰勒展开,并利用fplot( [ 三阶截断, 8阶截断, 12阶截断, 真实值] ) 绘图,要求x轴限制在-5 到5,坐标轴紧贴图形,并显示如fplot中的图例以方便观察。
查看不同截断阶数造成的误差。
clf;syms f(t)f(t)=exp(t);format short;y1=taylor(f,t,'Order',3);%对符号函数f进行n阶截断展开y2=taylor(f,t,'Order',8);y3=taylor(f,t,'Order',12);ax.XTick = [-5,5];fplot (y1,'y-',[-5,5]);axis 'tight'hold on;fplot (y2,'r-',[-5,5]);hold on;fplot (y3,'g-',[-5,5]);hold on;fplot (f,'bo-',[-5,5]);xlim([-5,5])%要求x轴限制在 -5 到 53. x = 0:5; 实验测得 y = [15, 10, 9, 6, 2, 0]; 请就y对x进行线性回归,说说其拟合的基本原理。
MATLAB实验六(精品)
第二节 逐点比较法逐点比较法的基本原理是,在刀具按要求轨迹运动加工零件轮廓的过程中,不断比较刀具与被加工零件轮廓之间的相对位置,并根据比较结果决定下一步的进给方向,使刀具沿着坐标轴向减小偏差的方向进给,且只有一个方向的进给。
也就是说,逐点比较法每一步均要比较加工点瞬时坐标与规定零件轮廓之间的距离,依此决定下一步的走向,如果加工点走到轮廓外面去了,则下一步要朝着轮廓内部走;如果加工点处在轮廓的内部, 则下一步要向轮廓外面走,以缩小偏差,周而复始,直至全部结束,从而获得一个非常接近于数控加工程序规定轮廓的刀具中心轨迹。
逐点比较法既可实现直线插补,也可实现圆弧插补。
其特点是运算简单直观,插补过程的最大误差不超过一个脉冲当量,输出脉冲均匀,而且输出脉冲速度变化小,调节方便,但不易实现两坐标以上的联动插补。
因此,在两坐标数控机床中应用较为普遍。
一般来讲,逐点比较法插补过程每一步都要经过如图3-1所示的四个工作节拍:(1)偏差判别 判别刀具当前位置相对于给定轮廓的偏差情况,即通过偏差值符号确定加工点处在理想轮廓的哪一侧,并以此决定刀具进给方向。
(2)坐标进给 根据偏差判别结果,控制相应坐标轴进给一步,使加工点向理想轮廓靠拢,从而减小其间的偏差。
(3)偏差计算 刀具进给一步后,针对新的加工点计算出能反映其偏离理想轮廓的新偏差,为下一步偏差判别提供依据。
(4)终点判别 每进给一步后都要判别刀具是否达到被加工零件轮廓的终点,若到达了则结束插补,否则继续重复上述四个节拍的工作,直至终点为止。
一、逐点比较法I 象限直线插补(一)基本原理设第一象限直线OE ,起点为坐标原点O(0,0),终点为E (X e ,Y e ),另有一个动点为N (X i ,Y i ),如图3-2所示。
其中,各个坐标值均是以脉冲当量为单位的整数,以便于后面的推导与讲解,并且在脉冲增量式插补算法中都是这样约定的。
ee i i X Y X Y = (3-1a ) 即 X e Y i —X i Y e =0 (3-1b ) 当动点N 处于直线OE 的下方N ′处时,直线N O '的斜率小于直线OE 的斜率,从而有ii X Y <e e X Y (3-2a )即 X e Y i —X i Y e <0 (3-2b ) 当动点N 处于直线OE 的上方N ″处时,直线N O ''的斜率大于直线OE 的斜率,从而有ee i i X Y X Y > (3-3a ) 即 X e Y i —X i Y e >0 (3-3b ) 由上述关系可以看出,表达式(X e Y i —X i Y e )的符号就能反映出动点N 相对直线OE 的偏离情况,为此取偏差函数F 为F =X e Y i —X i Y e (3-4)根据上述过程可以概括出如下关系:当F =0时,动点N (X i ,Y i )正好处在直线OE 上;当F >0时,动点N (X i ,Y i )落在直线OE 上方区域;当F <0时,动点N (X i ,Y i )落在直线OE 下方区域。
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函数绘制了信号的时频图。
通过对信号的频谱和时频图的观察,我可以更好地理解信号的频率和时域特性。
实验6 MATLAB的程序结构
MATLAB的利用MATLAB软件进 行程序设计的方法。会利用循环、分支等结构来设 计MATLAB程序。
二、相关知识
在MATLAB中,程序结构一般可分为顺序结构、循 环结构、分支结构三种。顺序结构是指程序顺序逐 条执行,循环结构与分支结构都有其特定的语句, 这样可以增强程序的可读性。 (一)FOR循环结构 for i=初值:增量:终值 循环体 end
并计算其和的开方。(注:程序运行中即时输入数
据,用input()函数即可实现。)
5.完成实验报告。
将其存放在一个规定的目录下,如E:\abc,接着在 MATLAB主窗口中加入路径,即在主窗口的File菜
单中选取Set Path...,然后把E:\abc加入MATLAB
Search Path,按Save钮,关闭Set Path窗口。然后 在命令窗口中,键入fractorial(4),就可计算4!了。
三、实验内容
1.设计一段程序,分别用for循环和while循环求 1+2+3+…+100的和。
x0 ,试定义这个函 x0
x 2 2.设有函数 f ( x) 3 x
数,并绘制出在区间[-4,4]上的图形。 N 1 1 3.已知级数 发散,求N使得 恰好大于9。 n 1 n n 1 n 4.通过即时输入10个数,将其中大于10的数求和,
例5:请考虑下列程序及其运行结果,理解break与 continue的区别。
EPS=1; for num=1:1000 EPS=EPS/2; if (1+EPS)<=1 EPS=EPS*2 break end end
MATLAB实验报告
MATLAB实践报告2016/2017学年第一学期专业:电气工程及其自动化班级:学号:姓名:2017年 2 月目录第1章绪论 (1)1.1 Matlab简介 (1)1.2 Matlab语言特点及优势 (1)1.2.1 语言特点 (1)1.2.2 优势 (2)1.3 Matlab的功能 (5)第2章Matlab实践任务 (6)2.1实验一Matlab环境语法、基本运算及绘图 (6)2.1.1实验目的 (6)2.1.2实验原理 (6)2.1.3实验内容 (6)2.2实验二Matlab数值运算 (10)2.2.1实验目的 (10)2.2.2实验原理 (10)2.2.3实验内容 (10)2.3实验三Matlab的符号计算 (19)2.3.1实验目的 (19)2.3.2实验内容 (19)2.4实验四Matlab基本编程方法 (23)2.4.1实验目的 (23)2.4.2实验内容 (23)第3章小结 (27)参考文献 (28)第1章绪论1.1 Matlab简介Matlab是“Matrix Laboratory”的缩写,意为“矩阵实验室”,是当今美国很流行的科学计算软件.信息技术、计算机技术发展到今天,科学计算在各个领域得到了广泛的应用.在许多诸如控制论、时间序列分析、系统仿真、图像信号处理等方面产生了大量的矩阵及其相应的计算问题.自己去编写大量的繁复的计算程序,不仅会消耗大量的时间和精力,减缓工作进程,而且往往质量不高.美国Mathwork软件公司推出的Matlab软件就是为了给人们提供一个方便的数值计算平台而设计的.Matlab是一个交互式的系统,它的基本运算单元是不需指定维数的矩阵,按照IEEE的数值计算标准(能正确处理无穷数Inf(Infinity)、无定义数NaN(not-a-number)及其运算)进行计算。
系统提供了大量的矩阵及其它运算函数,可以方便地进行一些很复杂的计算,而且运算效率极高。
Matlab命令和数学中的符号、公式非常接近,可读性强,容易掌握,还可利用它所提供的编程语言进行编程完成特定的工作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
学生实验报告
一、实验目的
1、掌握SIMULINK组件模块操作的基本方法;
2、掌握常用连续系统模块的使用方法;
3、掌握连续系统建模的基本方法;
4、理解SIMULINK仿真的基本配置方法与内在运行机制。
二、实验原理
Simulink是MATLAB的重要组成部分,提供建立系统模型、选择仿真参数和数值算法、启动仿真程序对该
系统进行仿真、设置不同的输出方式来观察仿真结果等功能。
1、Simulink的基本模块
Simulink的模块库提供了大量模块。
单击模块库浏览器中Simulink前面的“+”号,将看到Simulink模块库
中包含的子模块库,单击所需要的子模块库,在右边的窗口中将看到相应的基本模块,选择所需基本模块,可
用鼠标将其拖到模型编辑窗口。
同样,在模块库浏览器左侧的Simulink栏上单击鼠标右键,在弹出的快捷菜单
中单击Open the ‘Simulink’ Libray 命令,将打开Simulink基本模块库窗口。
单击其中的子模块库图标,打开子
模块库,找到仿真所需要的基本模块。
Simulink中几乎所有模块的参数都允许用户进行设置,只要双击要设置的模块或在模块上按鼠标右键并在
弹出的快捷菜单中选择相应模块的参数设置命令就会弹出模块参数对话框。
该对话框分为两部分,上面一部分
是模块功能说明,下面一部分用来进行模块参数设置。
同样,先选择要设置的模块,再在模型编辑窗口Edit
菜单下选择相应模块的参数设置命令也可以打开模块参数对话框。
一个Simulink仿真模型的基本模块包括信源、信宿以及系统三个部分。
其中,信源可以是常数、正弦波、
阶梯波等信号源,信宿可以是示波器、图形记录仪等,系统则是被研究系统的SIMULINK方框图。
系统、信
源、信宿,可以从SIMULINK模块库中直接获得,也可以根据用户意愿用库中的模块构建而成。
2、连续系统的建模与仿真
连续系统指的是可以用微分方程来描述的系统。
用于建模连续系统的模块:Simulink模块组中的Continous、
Math以及Nonlinear模块库中。
利用Simulink进行系统仿真的步骤如下:
(1) 建立系统仿真模型,这包括添加模块、设置模块参数以及进行模块连接等操作。
(2) 设置仿真参数。
(3) 启动仿真并分析仿真结果。
三、实验内容
1、搭建观察使用示波器观察正弦波信号的基本仿真模型,其中正弦波频率为100rad/s,幅度为-2V~2V。
2、 利用SIMULINK 求解dx e I x ⎰-=102。
3、 利用SIMULINK 求解微分方程0)1(2222=+--x dt dx x dt
x d 在初始条件1)0(=x , 0)0(=dt
dx 情况下的解,并图示。
(提示:使用积分模块中的Initial Condition 进行初始条件的设置)
4、 利用SIMULINK 仿真标准AM 调制解调过程,即实现001f(t)=(A +sin(t))sin (t)ωω,并使用示波器观察原始
信号0sin(t)ω、调制信号f(t)以及解调信号的波形。
设05/rad s ω=,120/rad s ω=,0A 1=。
参考仿真模型如下,自行利用MATLAB 帮助系统查阅关于参考模型中各个模块的有关说明,以及设置适当的低通滤波器参数。
Sine Wave 2Sine Wave 1Sine Wave
Scope Product 1Product Constant 1
Analog Filter Design butter
Add
四、 实验报告要求
1、简述实验目的、实验原理及其要点;
2、附上实验内容的SIMULINK 仿真图及运行结果(用插入图片方式),并对所得结果进行分析和解释。
另附
上SIMULINK 程序。
3、总结实验中的主要结论。
五、心得体会 Matlab 有许多地方与c 语言很相似,同样是操作命令。
但同时我们也需要细心找出其中的不同点,区分两种语言,归纳总结。
比如:百分号% 在c 语言中的意义为:(1)、取模运算符;(2)、转义符。
但在matlab 语言中则是注释说明的符号。
而在c 语言中,注释说明所用符号为/* */ 又比如,分号“;”在matlab 中有抑制计算结果显示的作用,而在c 语言中并无此作用。
在做matlab 的时候,要极其注意细节,即使只是一个标点符号的错漏,也会造成计算结果的错误。
SIMULINK 可用于仿真试验,在这个环境中,无需书写大量程序,只需直观简单的鼠标操作,选取适当的
库模块,就可构造出复杂的仿真模型。