广州大学学生实验报告1 matlab 程序设计

合集下载

MATLAB实验报告1

MATLAB实验报告1
5.编写例1的M脚本文件,并运行之。
【例1】画出 所表示的三维曲面。 的取值范围是 。以下是程序所用语句。
clear;x=-8:0.5:8;y=x';
X=ones(size(y))*x;Y=y*ones(size(x));
R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;
mesh(X,Y,Z);
2.运算函数
fix(x):无论正负,舍去小数至相邻整数
floor(x):下取整,即舍去正小数至相邻整数
ceil(x):上取整,即加入正小数至相邻整数
rat(x):将实数x化为多项分数展开
rats(x):将实数x化为分数表示
sign(x):符号函数(Signum function)。
当x<0时,sign(x)=-1
colormap(hot)
xlabel('x'),ylabel('y'),zlabel('z')
三、使用仪器、材料
一台装有matlab的计算机
四、实验过程原始记录(程序、数据、图表、计算等)
1.求 的算术运算结果。
2.简单矩阵 的输入步骤。
3.复数 ,表达及计算
4.指令窗中指令行操作练习。
(1)计算 的值,依次键入以下字符
广州大学学生实验报告
开课学院及实验室:2013年月日
学院
年级、专业、班
姓名
学号
实验课程名称
成绩
实验项目名称
指导老师
一、实验目的
二、实验内容
三、使用仪器、材料
四、实验过程原始记录(程序、数据、图表、计算等)
五、实验结果及分析
一、实验目的

matlab程序设计实验报告

matlab程序设计实验报告

实验报告课程名称:可视化计算机语言实验项目名称:matlab程序设计学院:信息工程学院专业:电子信息工程指导教师:报告人:学号:班级:实验时间:实验报告提交时间:教务部制一、实验目的与要求:1、熟练掌握matlab的程序流程控制结构..2、熟悉掌握M文件的结构和函数调用..3、掌握内联函数和函数句柄的使用..4、了解程序性能剖析窗口..二、内容和步骤:MATLAB的语法规则简洁;编程效率高;作为一个完整的程序语言;MATLAB也有各种程序流程控制;文件格式和函数调用的规则;通过对函数的调用就能够组成庞大的程序;完成复杂的功能..1.使用程序流程控制Fibonacci数列的各元素为:1、1、2、3、5、8、...满足一下关系F1=1 F2=1 F n=F n-1+F n-2用M函数文件实现;数列的元素个数为输入变量..(1)按M函数文件格式创建文件开头..function f=shiyan0501n%SHIYAN0501%Fibonacci数列%n 元素个数%f 构成Fibonacci数列向量%%copyright 2015-11-25(2)用while循环实现程序功能f1=1;f2=1;i=2;while i<=nfi+1=fi-1+fi;i=i+1;End运行后;输入参数10;运行结果如下所示:(3)使用for循环实验for i=2:nfi+1=fi-1+fi;end运行结果如下所示:(4)当某个元素大于50时;退出循环结构;程序修改如下:for i=2:nif fi>10breakelsefi+1=fi-1+fi;endend当某个元素大于50;程序便退出循环结构当n=10;最后一个元素刚好是大于50的;正好退出循环结构当n=12时;第十个元素对应的fi大于50;于是退出循环结构;不再运行f11;f12了..(5)将该.m文件生成P码文件>> pcode shiyan0501将shiyan0501.m删除;重新运行该文件夹;结果如下所示:练习:将该M文件函数改为M脚本文件;将数列元素个数通过键盘输入;程序应该如何修改①将M文件函数另存为M脚本文件;②在函数前加n=input'please input a num:'便可通过键盘键入文件f=mf;endk=f1/2^2n1f^22n1+1;end调用程序shiyan0502;运行结果如下所示:>> y=shiyan05020.7y =0.7754运行结果与使用子函数factorial的运行结果一致..(4)使用程序性能剖析..选择菜单‘view’->‘profile’命令;或使用在命令窗口输入‘profile viewer’命令都可以打开程序性能剖析窗口..在程序性能剖析窗口的‘命令输入栏’中输入需要剖析的命令;‘y=shiyan05020.7’;然后单击‘start profiling’按钮;查看剖析报告..(5)程序的调试..当有多个函数调用时;由于函数变量的工作空间是独立的;被调用的函数执行结束后变量消失;因此调试时要使用matlab调试器查看运行过程中的变量值..①设置断点..在需要查看的程序的地方设置断点;>> shiyan05020.7K>> yy =0.7000K>> x=0.5x =0.5000在K>>输入x=0.5即可将x的值从0.7修改为0.5.去除断点;查看结果:ans =0.7236结果与x值为0.7时不一致;当x=0.7时;y =0.7754;由此可知;x的值已被修改..②单步运行>> shiyan05020.79 n=n+1;K>>按单步运行键:可看到箭头不断的移动:6使用函数句柄..在命令窗口使用函数句柄调用函数..>> h_shiyan0502=shiyan0502h_shiyan0502 =shiyan0502>> y=fevalh_shiyan0502;0.5y =0.5236(7)使用全局变量..Matlabe的编程不提倡使用全局变量;本例中的程序主要是为了查看全局变量的概念..将n 作为全局变量;子函数factorial不修改;子函数cal程序和主函数shiyan0502修改如下:function y=shiyan0502x%shiyan0502 arcsinxglobal n;n=1;if absx<1y=x;while caln>0.0001y=y+calnx^2n+1;n=n+1;endelsedisp'输入错误';y=0;returnendfunction k=caln1global nfor m=1:nk=factorial2n/2^2nfactorialn^222n+1;Endglobal为设置的全局变量;子函数没有输入变量;而用全局变量n传递..在全局变量前设置断点;然后运行程序;当程序运行到断点处停止;接着不断使用单步运行调试;结果如下所示:|||练习:使用单步运行调试;查看全局变量n的变化;并在工作空间查看n;3、利用泛函命令实现数值分析①创建函数shiyan0503实现上述表达式关系..function y=shiyan0503t%shiyan0503 y=sint.^2.expat-babsta=0.1;b=0.5;y=sint.^2.expat-babst;②查看该函数的输出波形;如下图所示:注:1、报告内的项目或内容设置;可根据实际情况加以调整和补充..2、教师批改学生实验报告时间应在学生提交实验报告时间后10日内..。

广州大学-数学实验-实验报告一

广州大学-数学实验-实验报告一

广州大学学生实验报告开课学院及实验室:2015年03月17 日学院数学与信息科学学院年级、专业、班数学122 姓名方正学号12151000001实验课程名称数学实验成绩实验项目名称预备实验-MATLAB使用指导老师一、实验目的初步掌握MATLAB的基本使用。

二、使用仪器、材料计算机、matlab软件三、实验步骤四、实验过程原始记录(数据、图标、计算等)五、实验结果及分析1、直接输入矩阵a=[1,2,3;4,5,6;7,8,9];得到3*3矩阵a程序:a1=[1,2,3;4,5,6;7,8,9];a1结果:a1 =1 2 34 5 67 8 92、分别建立3×3、3×2和与矩阵A同样大小的零矩阵。

(1) 建立一个3×3零矩阵。

zeros(3)程序:b2=zeros(3,3);b2结果:b2 =0 0 00 0 00 0 0(2) 建立一个3×2零矩阵。

zeros(3,2)程序:c2=zeros(3,2);c2结果:c2 =0 00 00 0(3) 设A为2×3矩阵,则可以用zeros(size(A))建立一个与矩阵A同样大小零矩阵。

A=[1 2 3;4 5 6]; %产生一个2×3阶矩阵Azeros(size(A)) %产生一个与矩阵A同样大小的零矩阵程序:A=[1,2,3;4,5,6];B=zeros(size(A));AB结果:A =1 2 34 5 6B =0 0 00 0 03、建立随机矩阵:(1) 在区间[20,50]内均匀分布的5阶随机矩阵。

程序:x3=20+(50-20)*rand(5);x3结果:x3 =25.9741 21.9434 30.0185 35.8947 40.425428.9617 49.6500 32.9872 39.2158 33.832939.8433 37.4838 26.7785 26.2721 37.034928.5323 32.7049 37.3942 31.3946 43.826334.0767 35.4654 42.8110 43.4999 21.7755(2) 均值为0.6、方差为0.1的5阶正态分布随机矩阵。

MATLAB程序设计实验报告

MATLAB程序设计实验报告

MATLAB实验报告一、实验名称实验4图形绘制(1)二、实验目的:熟悉和掌握MA TLAB基本的二维图形绘制函数。

三、实验内容:1.绘制简单的二维图形2.一个坐标系绘制多幅图形3.图形标识和坐标控制4.交互式图形指令四、回答问题:(本次实验未预留问题)五、遇到的问题及解决:遇到了求y=lnx时,输入“y=ln(x)”不被软件识别的问题,查看常用数学函数表后改为y=log(x)成功解决。

在求10x时不知道用什么函数,函数表里也查不到,在老师的点拨下用“y=10.^x”解决。

在绘图时发现默认线型不够明显,查表后使用尖三角、叉号代替默认线型。

六、体会:本次实验我学会了利用MATLAB绘制图形的基本方法,以及相应的备注方法。

难点是了解各种函数的具体作用并熟练掌握。

体会是:多学多练,孰能生巧,日积月累,必有提高。

思考题:1.在同一坐标系绘制t3,-t2,t2sint在[0,2π]内的曲线图。

x=0:pi/50:2*pi;y1=t.*t.*t;y2=-t.*t;y3=t.*t.*sin(t);plot(t,y1,'^k',t,y2,'.k',t,y3,'xk');legend('\ity=t^3','\ity=-t^2','\itt^2*sint');2.在一幅图中画出4幅子图,分别绘制sin2x,tanx,lnx,10x的图形,并加上适当的图形注释。

注意:把函数变成MATLAB对应的形式。

x=0:pi/50:2*pi;y1=sin(2*t);y2=tan(x);y3=log(x);y4=10.^x;subplot(2,2,1)plot(x,y1);legend('y=sin2x');subplot(2,2,2)plot(x,y2)legend('y=tanx');subplot(2,2,3)plot(x,y3)legend('y=lnx') subplot(2,2,4) plot(x,y4) legend('y=10^x')。

MATLAB实验报告

MATLAB实验报告

MATLAB实验报告实验一:MATLAB 软件平台与程序设计实验1. 编程实现以下数列的图像,用户能输入不同的初始值以及系数。

并以x ,y 为坐标显示图像x(n+1) = a*x(n)-b*(y(n)-x(n)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2);【实验程序】clear;a=input('a='); b=input('b=');x(1)=input('x(1)='); y(1)=input('y(1)='); n=input('n='); i=1;while i<=nx(i+1) = a*x(i)-b*(y(i)-x(i)^2); y(i+1) = b*x(i)+a*(y(i)-x(i)^2); i=i+1; plot(x,y) end【实验结果及分析】 当输入: a=0.1b=0.2 运行结果如右图所示: x(1)=0.3 y(1)=0.4 n=5【实验心得与体会】本题主要考察输入及基本绘图命令,实验中应注意matlab 向量处理与C 语言数组处理的区别。

同时应加强绘图的训练。

-0.050.050.10.150.20.250.3-0.0500.050.10.150.20.250.30.350.42. 编程实现奥运5环图像,允许用户输入环的直径。

【实验程序】clear;R=input('请输入直径D=')/2;N=1000;theta=linspace(0,2*pi,N);xb = R*cos(theta);yb = R*sin(theta);xy = R*cos(theta)+1.2*R;yy = R*sin(theta)-1.2*R;xk = R*cos(theta)+2.4*R;yk = R*sin(theta);xg = R*cos(theta)+3.6*R;yg = R*sin(theta)-1.2*R;xr = R*cos(theta)+4.8*R;yr = R*sin(theta);hold onplot(xb,yb,'b','linewidth',5);plot(xy,yy,'y','linewidth',5);plot(xk,yk,'k','linewidth',5);plot(xg,yg,'g','linewidth',5);plot(xr,yr,'r','linewidth',5);axis off【实验结果及分析】当输入直径D=5时,显示图像如右图所示:【实验心得与体会】本题主要考察plot画图及对图形的修饰。

程序设计实验报告(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实验报告1

matlab实验报告1

matlab实验报告1MATLAB实验报告1摘要:本实验使用MATLAB软件进行了一系列的实验,主要包括数据处理、图像处理和信号处理。

通过实验,我们掌握了MATLAB软件在科学计算和工程领域的应用,深入了解了MATLAB在数据处理、图像处理和信号处理方面的强大功能。

一、数据处理实验在数据处理实验中,我们使用MATLAB对一组实验数据进行了分析和处理。

首先,我们导入了实验数据并进行了数据清洗和预处理,然后利用MATLAB的统计分析工具对数据进行了描述性统计分析,包括均值、方差、标准差等指标的计算。

接着,我们利用MATLAB的绘图工具绘制了数据的直方图和散点图,直观地展现了数据的分布规律和相关性。

二、图像处理实验在图像处理实验中,我们使用MATLAB对一幅图像进行了处理和分析。

首先,我们读取了图像并进行了灰度化处理,然后利用MATLAB的图像滤波工具对图像进行了平滑和锐化处理,最后利用MATLAB的图像分割工具对图像进行了分割和特征提取。

通过实验,我们深入了解了MATLAB在图像处理领域的应用,掌握了图像处理的基本原理和方法。

三、信号处理实验在信号处理实验中,我们使用MATLAB对一组信号进行了处理和分析。

首先,我们生成了一组模拟信号并进行了频域分析,利用MATLAB的信号滤波工具对信号进行了滤波处理,然后利用MATLAB的频谱分析工具对信号的频谱特性进行了分析。

通过实验,我们深入了解了MATLAB在信号处理领域的应用,掌握了信号处理的基本原理和方法。

综上所述,本实验通过对MATLAB软件的应用实验,使我们对MATLAB在数据处理、图像处理和信号处理方面的功能有了更深入的了解,为我们今后在科学计算和工程领域的应用奠定了良好的基础。

MATLAB软件的强大功能和广泛应用前景,将为我们的学习和科研工作提供有力的支持和帮助。

matlab程序设计实验报告

matlab程序设计实验报告

matlab程序设计实验报告《MATLAB程序设计实验报告》摘要:本实验报告旨在介绍MATLAB程序设计的基本原理和实践操作,通过实验演示和分析,展示了MATLAB在工程领域的应用和重要性。

本报告详细介绍了MATLAB程序设计的基本语法和常用函数,以及如何利用MATLAB进行数据处理、图像处理、信号处理等工程应用。

通过本报告的学习,读者将能够掌握MATLAB程序设计的基本技能,为工程实践提供有力的支持。

1. 引言MATLAB是一种用于算法开发、数据可视化、数据分析和数值计算的高级技术计算语言和交互式环境。

它具有强大的数学计算功能和丰富的绘图工具,广泛应用于工程、科学和金融等领域。

本实验报告将介绍MATLAB程序设计的基本原理和实践操作,帮助读者快速掌握MATLAB的基本技能。

2. 实验目的本实验的主要目的是让读者了解MATLAB程序设计的基本语法和常用函数,掌握MATLAB在工程领域的应用和重要性。

通过实验演示和分析,展示MATLAB 在数据处理、图像处理、信号处理等方面的应用。

3. 实验内容(1)MATLAB程序设计的基本语法和常用函数(2)利用MATLAB进行数据处理的实验演示(3)利用MATLAB进行图像处理的实验演示(4)利用MATLAB进行信号处理的实验演示4. 实验步骤(1)学习MATLAB程序设计的基本语法和常用函数(2)编写MATLAB程序,实现数据处理、图像处理、信号处理等功能(3)进行实验演示和分析,展示MATLAB在工程领域的应用和重要性5. 实验结果与分析通过本实验的学习,读者将能够掌握MATLAB程序设计的基本技能,包括数据处理、图像处理、信号处理等方面的应用。

通过实验演示和分析,读者将了解MATLAB在工程领域的重要性,为工程实践提供有力的支持。

6. 结论MATLAB程序设计是一种强大的工程工具,具有广泛的应用前景。

通过本实验报告的学习,读者将能够掌握MATLAB程序设计的基本技能,为工程实践提供有力的支持。

MATLAB程序设计实验报告

MATLAB程序设计实验报告

MATLAB 程序设计实验报告一、实验目的1. 通过实验熟悉MATLAB 仿真软件的使用方法;2. 掌握用MATLAB 对连续信号时域分析、频域分析和s 域分析的方法,利用绘图命令绘制出典型信号的波形,了解这些信号的基本特征;3. 掌握用MATLAB 对离散信号时域分析、频域分析和z 域分析的方法,利用绘图命令绘制出典型信号的波形,了解这些信号的基本特征;4. 通过绘制信号运算结果的波形,了解这些信号运算对信号所起的作用。

二、实验设备1. 计算机:2. MATLAB R2007a 仿真软件三、实验原理对系统的时域分析信号的时域运算包括信号的相加、相乘,信号的时域变换包括信号的平移、反折、倒相及信号的尺度变换。

(1)信号的相加和相乘:已知信号)(1t f 和)(2t f ,信号相加和相乘记为)()(1t f t f =)(2t f +;)()(1t f t f =)(2t f *。

(2)信号的微分和积分:对于连续时间信号,其微分运算是用diff 函数来完成的,其语句格式为:diff(function,’variable’,n),其中function 表示需要进行求导运算的信号,或者被赋值的符号表达式;variable 为求导运算的独立变量;n 为求导的阶数,默认值为求一阶导数。

连续信号的积分运算用int 函数来完成,语句格式为:diff(function,’variable’,a,b),其中function 表示需要进行被积信号,或者被赋值的符号表达式;variable 为求导运算的独立变量;a,b 为积分上、下限,a 和b 省略时为求不定积分。

(3)信号的平移、翻转和尺度变换信号的平移包含信号的左移与右移,信号的翻转包含信号的倒相与折叠,平移和翻转信号不会改变信号)(t f 的面积和能量。

信号的尺度变换是对信号)(t f 在时间轴上的变化,可使信号压缩或扩展。

)(at f 将原波形压缩a 倍,)/(a t f 将原波形扩大a 倍。

实验3-Matlab程序设计1实验报告

实验3-Matlab程序设计1实验报告

实验3-Matlab程序设计1实验报告
实验3-Matlab程序设计1实验报告。

自查人,[学生姓名]
自查日期,[自查日期]
自查内容:
1. 实验报告标题是否符合要求?
2. 实验报告是否按照要求结构化,包括引言、实验目的、实验原理、实验步骤、实验结果与分析、实验总结等部分?
3. 实验报告中的实验目的是否明确?
4. 实验报告中的实验原理是否准确、清晰?
5. 实验报告中的实验步骤是否详细、完整?
6. 实验报告中的实验结果是否与实验目的相符?
7. 实验报告中的实验结果是否进行了充分的分析和讨论?
8. 实验报告中的实验总结是否准确、全面?
自查结果:
1. 实验报告标题符合要求。

2. 实验报告按照要求结构化,包括引言、实验目的、实验原理、实验步骤、实验结果与分析、实验总结等部分。

3. 实验报告中的实验目的明确。

4. 实验报告中的实验原理准确、清晰。

5. 实验报告中的实验步骤详细、完整。

6. 实验报告中的实验结果与实验目的相符。

7. 实验报告中的实验结果进行了充分的分析和讨论。

8. 实验报告中的实验总结准确、全面。

自查意见:
根据自查结果,实验报告符合要求,但可以进一步改进的地方包括,增加实验数据的图表展示,提供更详细的实验步骤描述,加强对实验结果的讨论和分析。

自查人签名,[学生签名]
自查日期,[自查日期]。

matlab实验报告

matlab实验报告

MATLAB程序设计语言实验报告专业及班级___________________姓名___________________学号___________________日期___________________实验一 MATLAB 的基本使用一、 实验目的1.了解MA TALB 程序设计语言的基本特点,熟悉MATLAB 软件的运行环境;2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力;3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。

二、 MATLAB 的基础知识通过本课程的学习,应基本掌握以下的基础知识:一. MATLAB 简介二. MATLAB 的启动和退出三. MATLAB 使用界面简介四. 帮助信息的获取五. MATLAB 的数值计算功能六. 程序流程控制七. M 文件八. 函数文件九. MATLAB 的可视化三、上机练习1. 仔细预习第二部分内容,关于MATLAB 的基础知识。

2. 熟悉MATLAB 环境,将第二部分所有的例子在计算机上练习一遍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 1884 69 54138 114 90>> A.*Bans =9 16 2124 25 2421 16 9 两者结果不同>> [m,n]=size(A)m =3n =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实验一实验报告

matlab实验一实验报告实验一:Matlab实验报告引言:Matlab是一种强大的数学软件工具,广泛应用于科学计算、数据分析和工程设计等领域。

本实验旨在通过使用Matlab解决实际问题,探索其功能和应用。

一、实验目的本次实验的主要目的是熟悉Matlab的基本操作和常用函数,了解其在科学计算中的应用。

二、实验内容1. 数值计算在Matlab中,我们可以进行各种数值计算,包括基本的加减乘除运算,以及更复杂的矩阵运算和方程求解。

通过编写相应的代码,我们可以实现这些功能。

例如,我们可以使用Matlab计算两个矩阵的乘积,并输出结果。

代码如下:```matlabA = [1 2; 3 4];B = [5 6; 7 8];C = A * B;disp(C);```2. 数据可视化Matlab还提供了强大的数据可视化功能,可以将数据以图表的形式展示出来,更直观地观察数据的规律和趋势。

例如,我们可以使用Matlab绘制一个简单的折线图,来展示某个物体在不同时间下的位置变化。

代码如下:```matlabt = 0:0.1:10;x = sin(t);plot(t, x);xlabel('Time');ylabel('Position');title('Position vs. Time');```3. 图像处理Matlab还可以进行图像处理,包括图像的读取、处理和保存等操作。

我们可以通过Matlab对图像进行增强、滤波、分割等处理,以及进行图像的压缩和重建。

例如,我们可以使用Matlab读取一张图片,并对其进行灰度化处理。

代码如下:```matlabimg = imread('image.jpg');gray_img = rgb2gray(img);imshow(gray_img);```三、实验结果与分析在本次实验中,我们成功完成了数值计算、数据可视化和图像处理等任务。

matlab程序设计实验报告

matlab程序设计实验报告

matlab程序设计实验报告Matlab程序设计实验报告引言:Matlab(Matrix Laboratory)是一种强大的高级编程语言和环境,广泛应用于科学计算、数据分析和工程设计等领域。

本实验报告旨在介绍我在Matlab程序设计实验中的学习和实践经验。

一、Matlab基础知识1.1 Matlab的安装与配置在实验开始前,我们首先需要安装Matlab并进行相应的配置。

Matlab的安装过程相对简单,只需按照官方指引进行操作即可。

配置方面,我们可以设置工作目录、界面风格、字体大小等,以提高工作效率。

1.2 Matlab的基本语法Matlab的语法类似于其他编程语言,但也有一些特殊之处。

例如,Matlab中的变量名不区分大小写,函数名则区分大小写。

此外,Matlab还具有丰富的数学函数库,可以方便地进行各种数值计算。

二、Matlab程序设计实践2.1 数值计算Matlab以其强大的数值计算能力而闻名,我们可以使用Matlab进行各种数学运算和数值计算。

例如,我们可以使用Matlab求解线性方程组、计算矩阵的特征值和特征向量等。

2.2 图像处理Matlab提供了丰富的图像处理函数,可以对图像进行各种操作和处理。

例如,我们可以使用Matlab读取图像文件、调整图像的亮度和对比度、进行图像滤波等。

此外,Matlab还支持图像的显示和保存,方便我们进行结果的展示和分析。

2.3 数据可视化Matlab提供了强大的数据可视化功能,可以将数据以图表的形式直观地展示出来。

我们可以使用Matlab绘制各种类型的图表,如折线图、散点图、柱状图等。

此外,Matlab还支持对图表的样式、标签、标题等进行自定义,以满足不同的需求。

三、实验心得与体会通过这次Matlab程序设计实验,我深刻体会到了Matlab在科学计算和工程设计中的重要性。

Matlab不仅提供了丰富的数学函数库和工具箱,还具备直观的图形界面和友好的交互环境,使得我们能够快速、高效地进行各种计算和分析。

matlab课程设计实验报告

matlab课程设计实验报告

实验一单边带调幅系统的建模仿真一、实验目的1.了解单边带调幅系统的工作原理2.掌握单边带调幅系统的Matlab和Simulink建模过程二、实验内容1、Matlab设计一个单边带发信机、带通信道和相应的接收机,参数要求如下.(1)输入话音信号为一个话音信号,采样率8000Hz。

话音输入后首先进行预滤波,预滤波器是一个频率范围在[300,3400]Hz的带通滤波器.其目的是将话音频谱限制在3400Hz以下.单边带调制的载波频率设计为10KHz,调制输出上边带。

要求观测单边带调制前后的信号功率谱。

(2)信道是一个带限高斯噪声信道,其通带频率范围是[10000, 13500]Hz。

要求能够根据信噪比SNR要求加入高斯噪声。

(3)接收机采用相干解调方式.为了模拟载波频率误差对解调话音音质的影响,设本地载波频率为9。

8KHz,与发信机载波频率相差200Hz。

解调滤波器设计为300Hz到3400Hz的带通滤波器。

2、用Simulink方式设计一个单边带传输系统并通过声卡输出接收机解调的结果声音。

系统参数参照实例5.9,系统仿真参数设置为50KH显示结果(1)能观察音频信号和SSB加载后的信号(2)能观察音频信号频谱和SSB加载后的信号频谱(3)解调结果放到.wav音频文件,改变信道信噪比听解调的结果三、实验要求1。

按要求设计仿真参数;2.按计算所得参数建立Matlab和SIMULINK系统模型;3。

设置各模块参数及仿真参数后仿真系统;4.分析仿真结果.实验二数字通信系统的建模仿真一、实验目的1.了解数字通信系统的建模过程2.了解数字通信系统的仿真过程,并掌握对建模的好坏进行分析二、实验内容建立并测试一个直接序列扩频体制的码分多址传输系统,对比以Gold序列、m序列以及随机整数发生器Random Integer Generator 作为直接序列扩频的扩频序列的传输性能,观察两路CDMA码源的收发数据波形,测试误码率,并用频谱仪观察直接序列扩频调制前后和解调前后的信号频谱。

实验3 Matlab程序设计1实验报告

实验3 Matlab程序设计1实验报告

实验3 Matlab程序设计1实验报告英文回答:Introduction。

The purpose of this experiment was to gain experience with Matlab programming by completing a series of exercises. These exercises covered a variety of topics, including data input and output, control flow, functions, and plotting.Methods。

I used Matlab R2021b to complete the exercises. I opened a new script file for each exercise and entered the code as specified in the instructions. I then ran thescript file to execute the code.Results。

I was able to successfully complete all of theexercises. The following is a summary of my results:Exercise 1: I was able to create a vector of numbers and then use the `disp` function to display the vector to the console.Exercise 2: I was able to create a matrix of numbers and then use the `whos` function to display information about the matrix.Exercise 3: I was able to use the `if` statement to control the flow of execution in a script file.Exercise 4: I was able to define a function and then call the function from within a script file.Exercise 5: I was able to use the `plot` function to create a plot of data.Discussion。

实验3 Matlab程序设计1实验报告

实验3 Matlab程序设计1实验报告

实验3 Matlab程序设计1实验报告
实验3 Matlab程序设计1自查报告。

在本次实验中,我学习了如何在Matlab中进行程序设计,特别是关于如何使用函数和脚本文件来实现特定的功能。

在实验中,我遇到了一些困难,但通过不断的尝试和查阅资料,最终成功完成了实验任务。

首先,我学习了如何创建函数文件,并且了解了函数文件的基本结构和语法。

我发现在编写函数文件时,需要注意函数的输入和输出参数,以及函数体内部的具体实现。

这些知识对于我理解如何在Matlab中构建复杂的程序起到了很大的帮助。

其次,我学习了如何创建脚本文件,并且了解了脚本文件的执行过程。

我发现在编写脚本文件时,需要注意变量的定义和赋值,以及程序的流程控制。

这些知识对于我理解如何在Matlab中编写简洁的程序起到了很大的帮助。

在实验过程中,我遇到了一些问题,比如在编写函数文件时出现了语法错误,以及在编写脚本文件时出现了逻辑错误。

但是通过
查阅Matlab官方文档和参考一些在线教程,我最终找到了解决问题的方法,并且成功完成了实验任务。

总的来说,通过本次实验,我对Matlab程序设计有了更深入的了解,掌握了如何使用函数和脚本文件来实现特定的功能。

我相信这些知识和技能对我的学习和工作都会有很大的帮助,我会继续努力学习,提高自己的编程能力。

广州大学学生实验报告1 matlab 程序设计

广州大学学生实验报告1 matlab 程序设计

广州大学学生实验报告开课学院及实验室:机械与电气工程学院计算机楼 301室2014 年10 月30 日2、MATLAB指令窗的基本操作MATLAB指令窗给用户提供了最直接的交互界面,可用于输入和执行指令、显示指令运行结果、调试MATLAB程序等常用的MATLAB仿真计算功能。

本实验掌握以下在指令窗执行的基本操作,达到熟悉使用指令窗的目的:(1)最简单的计算器使用方法:在MATLAB指令窗中,可按计算器的方式进行一般的数学计算,MATLAB的运算符的含义大致与常见的运算规则一致;(2)在指令窗中输入和生成矩阵:与一般的计算器不同,在MATLAB中可直接输入和生成矩阵。

实际上,矩阵是MATLAB工作的基本元素。

(3)数值表述方法:在MATLAB中的大部分数值的表述方式与平常是相同的,需要注意的是在表示比较大的数时,MATLAB默认采用科学计数法显示;(4)变量命名规则:对于MATLAB变量命名规则,需要注意以下几点:a、变量名、函数名对字母大小写敏感b、变量名的第一个字母必须是英文字母,后续可以是字母、数字、下划线c、变量的有效时限:在变量定义赋值之后,会作为内存变量保存并显示在Workspace Browser中。

因此,凡是显示在Workspace Browser中的变量都是“有效”的,其后可以被调用,否则不能被调用。

d、对于像 等常用的数学常量,MATLAB定义了预定义变量与其对应,在使用时需多加留意。

e、复数和复数矩阵的表示方法。

(5)其他操作的操作要旨和操作技巧的运用。

3、计算结果的图形表示计算结果可视化是MATLAB的主要组成部分,借助图形表现数据是十分常用的“数据表达手段”,尤其当数据量相当庞大时,因为图形可以表现数据内在联系和宏观特征。

关于MATLAB绘图的基本方法在后续章节中详细讲述,本实验主要通过示例了解MATLAB绘图的基本功能。

4、Current Directory、路径设置器和文件管理理解当前目录Current Directory和搜索路径的作用是正确使用MATLAB的关键环节。

广州大学学生实验报告matlab程序设计

广州大学学生实验报告matlab程序设计

广州大学学生实验报告开课学院及实验室:机械与电气工程学院计算机楼 301室2014 年10 月30 日除了以运算符号执行数组运算外,也可以对数组施加函数,以函数形式进行数组运算。

如对数组X 执行函数f 的运算:ij m n f (X)[f (x )]⨯=,其中X 为m 行n 列的数组。

执行数组运算的常用函数有三角函数和双曲函数、指数函数、复数函数、圆整函数和求余函数、坐标变换函数等。

三、实验内容1、一维数组的创建(1)、利用逐个输入法、冒号生成法以及定数线性采样法创建以下一维数组: X1=[1,2,3,4,5,6,7,8,9,10](2)、利用冒号生成法创建以下数组: X2=(1,2,3,4,9,8,7,6,5)(3)、利用定数对数生成法创建一个第一个元素为10,最后一个元素为100,元素个数为51的一维数组X3。

2、 一维数组子数组的寻访和赋值以冒号生成法创建一个第一个元素为0,步长为0.1,最后一个元素为2的一维数组X4,并写出寻访或赋值的以下指令: a 、 寻访X4的第6个元素;b 、同时寻访X4的第2、5、7个元素;c 、 寻访前3个元素组成的子数组;d 、寻访除前3个元素外的全部的其他元素;e 、 由后三个元素倒排构成的子数组;f 、 由大于0.5的元素构成的子数组;g 、把第三个元素重新赋值为0;把当前x 数组的第一、四个元素都赋值为1。

3、二维数组的创建,子数组的寻访和赋值 创建一个M 文件(文件名为myMatrix.m ),定义一个二维数组A ,第一行为11至15、30至26共10个元素,第二行为1~10共10个元素。

然后运行改M 文件,生成数组AM ,并按以下方式寻访该数组: (1) 寻访A 的第一行; (2) 寻访A 的第三列;(3) 同时寻访A 的第三列和第五列;(4) 把A 的各列按自左至右的次序,首尾相接生成一个“一维长列”;(5) 把A 的第1行第1列、第2行第2列以及第1行第5列的元素重新赋值为10、20、30; (6) 把A 的第二行赋值为11~20。

MATLAB语言的程序设计实验报告

MATLAB语言的程序设计实验报告

实验二 MATLAB 语言的程序设计一、实验目的及要求1.掌握一些矩阵运算的基本函数应用方法2.熟悉MA TLAB 程序编辑与设计环境3.掌握各种编程语句语法规则及程序设计方法4.会编写程序M 文件和函数M 文件5.初步掌握程序的调式方法二、实验内容1.掌握以下矩阵操作函数实际给定一些数据后,使用各种函数计算,观察运算结果: zeros(n) 生成nxn 的零阵 zeros(n,m) 生成n 行m 列的零阵 ones(n,m) 生成n 行m 列的全1阵 eye(n) 生成nxn 的单位阵 randn(n,m) 生成元素为正态分布随机阵 x=[] 生成空矩阵 1、⎥⎦⎤⎢⎣⎡=654321a ⎥⎦⎤⎢⎣⎡-=531142b ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=201c ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=063258741d下列运算是否合法,为什么?如合法,结果是多少? (1) result1 = a' 答>> result1=a'result1 =1 42 53 6(2) result2 = a * b 错误(3) result3 = a + b 答> result3=a+bresult3 =3 6 2 5 8 11(4) result4 = b * d答>> result4=b*dresult4 =31 22 2240 49 13(5) result5 = [b ; c' ] * d答>> result5=[b;c']*dresult5 =31 22 2240 49 13-5 -8 7(6) result6 = a . * b答>> result6 = a.*bresult6 =2 8 -34 15 30(7) result7 = a . / b答>> result7=a./bresult7 =0.5000 0.5000 -3.00004.0000 1.6667 1.2000 (8) result8 = a . * c错误(9) result9 = a . \ b答>> result9=a.\bresult9 =2.0000 2.0000 -0.33330.2500 0.6000 0.8333 (10) result10 = a . ^2答>> result10=a.^2result10 =1 4 916 25 36(11) result11 = a ^2错误(12) result11 = 2 . ^ a答>> result12=2.^aresult12 =2 4 816 32 642、关系运算与逻辑运算已知a=20,b=-2,c=0,d=1(1) r1 = a > b答>> r1=a>br1 =1(2) r2 = a > b & c > d答>> r2=a>b &c>dr2 =(3) r3 = a == b* (-10)答>> r3 = a == b* (-10)r3 =1(4) r4 = ~b | c答>> r4=~b|cr4 =2.熟悉MATLAB程序编辑与设计环境要求:1)简单程序的编写与运行。

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

广州大学学生实验报告开课学院及实验室:机械与电气工程学院计算机楼 301室2014 年10 月30 日2、MATLAB指令窗的基本操作MATLAB指令窗给用户提供了最直接的交互界面,可用于输入和执行指令、显示指令运行结果、调试MATLAB程序等常用的MATLAB仿真计算功能。

本实验掌握以下在指令窗执行的基本操作,达到熟悉使用指令窗的目的:(1)最简单的计算器使用方法:在MATLAB指令窗中,可按计算器的方式进行一般的数学计算,MATLAB的运算符的含义大致与常见的运算规则一致;(2)在指令窗中输入和生成矩阵:与一般的计算器不同,在MATLAB中可直接输入和生成矩阵。

实际上,矩阵是MATLAB工作的基本元素。

(3)数值表述方法:在MATLAB中的大部分数值的表述方式与平常是相同的,需要注意的是在表示比较大的数时,MATLAB默认采用科学计数法显示;(4)变量命名规则:对于MATLAB变量命名规则,需要注意以下几点:a、变量名、函数名对字母大小写敏感b、变量名的第一个字母必须是英文字母,后续可以是字母、数字、下划线c、变量的有效时限:在变量定义赋值之后,会作为内存变量保存并显示在Workspace Browser中。

因此,凡是显示在Workspace Browser中的变量都是“有效”的,其后可以被调用,否则不能被调用。

d、对于像 等常用的数学常量,MATLAB定义了预定义变量与其对应,在使用时需多加留意。

e、复数和复数矩阵的表示方法。

(5)其他操作的操作要旨和操作技巧的运用。

3、计算结果的图形表示计算结果可视化是MATLAB的主要组成部分,借助图形表现数据是十分常用的“数据表达手段”,尤其当数据量相当庞大时,因为图形可以表现数据内在联系和宏观特征。

关于MATLAB绘图的基本方法在后续章节中详细讲述,本实验主要通过示例了解MATLAB绘图的基本功能。

4、Current Directory、路径设置器和文件管理理解当前目录Current Directory和搜索路径的作用是正确使用MATLAB的关键环节。

当前目录指的是当前MA TLAB工作的目录,MATLAB运行指令需要打开或者保存的文件,都首先在目录中查找或保存。

搜索路径则是MATLAB工作时,需查找相应的文件、函数或变量所在的相关文件夹所在的路径。

在理解当前目录Current Directory和搜索路径的作用的基础上,也要掌握当前目录Current Directory和搜索路径的设置方法,这是正确使用MA TLAB 的必要步骤。

为了理解MATLAB当前目录Current Directory和搜索路径的作用,可以大致了解一下当用户从指令窗送入一个名为cow的指令后,MATLAB的“运作次序”:(1)MATLAB在内存中检查,看cow是不是变量;如果不是,进行下一步;(2)检查cow是不是内建函数;如果不是进行下一步;(3)在当前目录下,检查是否有名为cow的M文件存在;如果不是,进行下一步;(4)在MA TLAB搜索路径的其他目录下,检查是否有名为cow的M文件存在。

5、Workspace Browser和Array Editor工作空间浏览器Workspace Browser可以用于内存变量的查阅、保存和编辑,在使用MA TLAB过程中,可以使用Workspace Browser跟踪相应内存变量,对调试程序有很大的帮助。

MATLAB也提供了相应的数据文件存取功能,可以在Workspace Browser中导入已保存的变量数据或者保存Workspace Browser中现有的变量数据。

6、Editor/Debugger和脚本编写初步通过指令窗直接输入指令一般用于解决比较简单的“一次性”问题,在以下情形是使用M文件特别有用:a、待解决问题所需的指令较多且所用指令结构较复杂b、一组指令通过改变少量参数就可以被反复使用去解决不同的问题M脚本文件中的指令形式和前后位置,与解决同一个问题时在指令窗中输入的那组指令没有任何区别,MA TLAB在运行这个脚本时,只是简单地从文件中读取那一条条指令,送到MA TLAB中去执行。

与在指令窗中直接运行指令一样,脚本文件运行产生的变量都驻留在MATLAB基本工作空间中。

M文件的扩展名是“.m”。

7、MATLAB帮助系统MATLAB提供了强大的帮助系统以供用户使用。

在碰到MATLAB使用的各种相关问题时,查阅MA TLAB帮助系统往往可以找到相应的解决办法和答案。

对于初学者,尤其需要重视帮助系统的使用。

MATLAB带有各种可利用的帮助系统,包括:(1)纯文本帮助(2)“导航/浏览器交互界面”帮助(3)PDF帮助(4)演示帮助和PDF帮助其中,纯文本帮助和“导航/浏览器交互界面”帮助是常用的帮助系统。

三、实验内容1、指令窗的基本操作完成以下实验内容,把相关结果以截屏方式保存:(1)使用值:x=10, y=3,用MATLAB进行以下计算,并用计算器检验结果:a. u=x+yb. v=xyc. w=x/yd. s=5sin(2y)(2)使用clear指令清除当前所有内存变量,使用clc清除指令窗的显示结果。

(3)指令窗显示方式的操作a、在指令窗中输入if(或for、while)等关键词,观察其颜色;b、在指令窗中输入s='hello',观察其颜色、3c、指令行中的标点符号:运行指令x=3+2,分别在最后加上和不加上分号,观察并记录其结果的区别。

2、Current Directory、路径设置器和文件管理(1)在E盘新建一个文件夹并把其设置为当前目录。

截屏相关过程结果并保存。

(2)在E盘新建一个文件夹并把其加入搜索路径。

截屏相关过程结果并保存。

(3)逐步按照以下步骤进行并记录各个步骤的结果:1)在指令窗中输入clear指令;2)在指令窗中输入cow,并运行;3)在指令窗中输入cow=21,并运行;4)再次在指令窗中输入cow,并运行;5)再次在指令窗中输入clear指令后,输入cow;6)使用M文件编辑器新建一个M文件,在该文件中输入一条指令:x=2。

保存在当前目录下,命名为cow.m。

7)再次在指令窗中输入cow,并运行;8)把cow.m暂时移动到另一个无关的文件夹,如“我的文档”。

9)再次在指令窗中输入cow,并运行;10)把cow.m再次剪切,移动到(2)建立的搜索路径的文件夹中,并确认该文件夹已加入到搜索路径中。

11)再次在指令窗中输入cow,并运行。

以上各个步骤是否验证了MATLAB对cow的搜索次序?3、Workspace Browser和Array Editor(1)运行以下指令:clear;x=-8:0.5:8;y=x';X=ones(size(y))*x;Y=y*ones(size(x));R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;(2)保存全部变量为数据文件Mydata.mat;在对应文件夹中找到该文件,截屏后保存结果;(3)使用clear清除变量X和Y;(4)删除全部内存变量;(5)把Mydata.mat的所有变量再次装入内存。

4、Editor/Debugger和脚本编写初步把以下指令编写为M脚本文件,并运行: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')grid5、帮助系统的使用(1)使用help指令查找zeros函数的作用。

(2)在指令窗口中输入sin,用鼠标选中此指令,并使用鼠标右键弹出菜单,选中help on selection。

你发现了什么?此方法也是查询函数注释的有效方法,请牢记。

四、实验过程、结果(程序和运行结果截屏)和分析1、指令窗的基本操作完成以下实验内容,把相关结果以截屏方式保存:(1)使用值:x=10, y=3,用MATLAB进行以下计算,并用计算器检验结果:a. u=x+yb. v=xyc. w=x/yd. s=5sin(2y)(2)使用clear指令清除当前所有内存变量,使用clc清除指令窗的显示结果。

(3)指令窗显示方式的操作a、在指令窗中输入if(或for、while)等关键词,观察其颜色;b、在指令窗中输入s='hello',观察其颜色、c、指令行中的标点符号:运行指令x=3+2,分别在最后加上和不加上分号,观察并记录其结果的区别。

52、Current Directory 、路径设置器和文件管理(1)在E 盘新建一个文件夹并把其设置为当前目录。

截屏相关过程结果并保存。

(2)在E 盘新建一个文件夹并把其加入搜索路径。

截屏相关过程结果并保存。

w(3)逐步按照以下步骤进行并记录各个步骤的结果:12) 在指令窗中输入clear 指令;13) 在指令窗中输入cow ,并运行;14) 在指令窗中输入cow=21,并运行;15) 再次在指令窗中输入cow ,并运行;16) 再次在指令窗中输入clear 指令后,输入cow ;17) 使用M 文件编辑器新建一个M 文件,在该文件中输入一条指令: x =2。

保存在当前目录下,命名为cow.m 。

18)再次在指令窗中输入cow,并运行;19)把cow.m暂时移动到另一个无关的文件夹,如“我的文档”。

20)再次在指令窗中输入cow,并运行;21)把cow.m再次剪切,移动到(2)建立的搜索路径的文件夹中,并确认该文件夹已加入到搜索路径中。

22)再次在指令窗中输入cow,并运行。

以上各个步骤是否验证了MATLAB对cow的搜索次序?是3、Workspace Browser和Array Editor(1)运行以下指令:clear;x=-8:0.5:8;y=x';X=ones(size(y))*x;Y=y*ones(size(x));R=sqrt(X.^2+Y.^2)+eps;Z=sin(R)./R;7(2)保存全部变量为数据文件Mydata.mat;在对应文件夹中找到该文件,截屏后保存结果;(3)使用clear清除变量X和Y;(4)删除全部内存变量;(5)把Mydata.mat的所有变量再次装入内存。

4、Editor/Debugger和脚本编写初步把以下指令编写为M脚本文件,并运行: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') grid95、帮助系统的使用(1)使用help指令查找zeros函数的作用(2)在指令窗口中输入sin,用鼠标选中此指令,并使用鼠标右键弹出菜单,选中help on selection。

相关文档
最新文档