文档库 最新最全的文档下载
当前位置:文档库 › Matlab第二次实验报告

Matlab第二次实验报告

Matlab第二次实验报告
Matlab第二次实验报告

Matlab第二次实验报告

实验目的:

1、了解plot函数和subplot函数的基本用法和matlab绘图的基本原理。

2、了解图形的属性设置。比如画图的颜色,画图采用的线性标识符等。

二:实验基本知识

1:

1. 单窗口单曲线绘图;

2. 单窗口多曲线绘图;

3. 单窗口多曲线分图绘图;

4. 多窗口绘图;

5.可任意设置颜色与线型;

6.图形加注功能;

7.fplot——绘制函数图函数;

8.ezplot——符号函数的简易绘图函数

9:subplot—将画图区域分块函数。

实验内容:

将高数课本后的18个图画出

上机练习程序

第1——6图:

clear,clc

a=input('??ê?è?aμ??μ£o')

figure(1);

x=-50:1:50;

y=a.*x.^3;

subplot(3,2,1);

plot(x,y,'r');

title('y=a*x^3');

xlabel('X');

ylabel('Y');

x=0:1:50;

y=sqrt(a.*x.^3);

subplot(3,2,2);

plot(x,y,x,-y,'r');

title('y^2=a*x^3');

xlabel('X');

ylabel('Y');

x=-3:0.1:3;

y=exp(-x.^2);

subplot(3,2,3);

plot(x,y,'r');

title('y=e^x^2');

xlabel('X');

ylabel('Y');

x=-3:0.1:3;

y=8*a^3./(x.^2+4*a^2);

subplot(3,2,4);

plot(x,y,'r');

title('y=8*a^3./(x.^2+4*a^2)'); xlabel('X');

ylabel('Y');

x=0:0.01:5;

y=sqrt(x.^3./(a*2.-x)); subplot(3,2,5);

plot(x,y,x,-y,'r');

title('y^2*(2a-x)=x^3'); xlabel('X');

ylabel('Y');

%t=-1:0.01:5;

%x=3*a.*t./(1+t.^3);

%y=3*a*t.^2./(1+t.^3);

subplot(3,2,6);

ezplot('x.^3+y.^3-3*3*x.*y'); %plot(x,y);

title('x^3+y^3-3axy=0'); xlabel('X');

ylabel('Y');

输入a=3:

显示结果

第7——10图:

clear,clc

a=input('??ê?è?aμ??μ£o')

figure(1)

t=0:0.1:2*pi;

x=a*cos(t).^3;

y=a*sin(t).^3;

subplot(2,2,1);

plot(x,y,'b')

title('x^1.5+y^1.5=a^1.5'); xlabel('X');

ylabel('Y');

t=-2*pi:0.1:2*pi;

x=a.*(t-sin(t));

y=a.*(1-cos(t));

subplot(2,2,2);

plot(x,y,'b')

title('°ú??');

xlabel('X');

ylabel('Y');

t=0:0.01:2*pi;

p=a.*(1-cos(t));

subplot(2,2,3);

plot(p.*cos(t),p.*sin(t),'b'); title('p=a(1-cos£¨t£?)'); xlabel('X');

ylabel('Y');

t=0:0.01:2*pi;

p=a.*t;

subplot(2,2,4);

plot(p.*cos(t),p.*sin(t),'b'); title('p=at');

xlabel('X');

ylabel('Y');

输入a=1,

第11题图:

clear,clc

a=input('??ê?è?aμ??μ£o') figure(1);

t=-2*pi:pi/100:2*pi;

p=exp(a.*t);

plot(p.*cos(t),p.*sin(t)); title('p=e^at');

xlabel('X');

ylabel('Y');

输入a=0.1,显示结果:

clear,clc

a=input('??ê?è?aμ??μ£o')

figure(1)

t=0.2*pi:pi/100:100*pi;

p=a./t;

plot(p.*cos(t),p.*sin(t));

title('p=at');

xlabel('X');

ylabel('Y');

输入a=1,显示结果:

第13——14题图:

clear,clc

a=input('??ê?è?aμ??μ£o');

figure(1);

t=0:pi/100:2*pi;

p=(a^2.*sin(2*t)).^0.5;

subplot(1,2,1);

plot(p.*cos(t),p.*sin(t),-p.*cos(t),-p.*sin(t),'g'); title('p^2=a^2*sin(2t)');

xlabel('X');

p=(a^2.*cos(2*t)).^0.5;

subplot(1,2,2);

plot(p.*cos(t),p.*sin(t),-p.*cos(t),-p.*sin(t),'g'); title('p^2=a^2*cos(2t)');

xlabel('X');

ylabel('Y');

输入a=1,显示结果:

第15-16题图:

clear;clc;

a=input('??ê?è?a:');

figure(1)

t=0:pi/200:pi;

p=a.*cos(3*t);

subplot(1,2,1);

plot(p.*cos(t),p.*sin(t),'r--');

title('p=a*cos(3t)');

xlabel('X');

p=a.*sin(3*t);

subplot(1,2,2);

plot(p.*cos(t),p.*sin(t),'r--'); title('p=a*sin(3t)');

xlabel('X');

ylabel('Y');

输入a=1,显示结果:

第17——18题图:

clear;clc;

a=input('??ê?è?a:');

figure(1);

t=-pi:pi/200:pi;

subplot(1,2,1);

p=a.*sin(2*t);

plot(p.*cos(t),p.*sin(t),'k-.'); title('p=a*sin(2t)');

xlabel('X');

ylabel('Y');

p=a.*cos(2*t);

subplot(1,2,2);

plot(p.*cos(t),p.*sin(t),'k-.');

title('p=a*cos(2t)');

xlabel('X');

ylabel('Y');

输入a=1,显示结果:

实验心得:

这次实验主要是学习matlab软件的二维绘图功能:matlab软件还有丰富的图形修饰功能,如改变线条的形式和颜色;除此之外其还可以以多种形式如在一个图形中显示多个函数图形,一个figure中显示多个坐标系,还有一个程序中就可以用多个figure一起来表示不同的函数……

在画图过程中你可能因为角度的区间取值不一样,画出来的图形可能跟书本上给出的图形有很大的差异,但没关系,只要你思路是对的,区间可以自己慢慢改动知道跟书本上给出的图形想接近。但一定要沉住气,慢慢的区尝试,这样你不仅可以进一步的掌握图形的画法,还能思考为什么区间这样取更好,进一步理解matlab画图功能的强大之处

实验中遇到的困难就是指令比较多,函数要用到的比较多,函数调用格式刚刚开始接触觉得陌生,相信多做练习一定能掌握这个软件的使用要领,体会到matlab强大的画图功能,熟练的掌握matlab便以我们后续课程的学习。

电科131 谭玉彬

MATLAB实验报告(1-4)

信号与系统MATLAB第一次实验报告 一、实验目的 1.熟悉MATLAB软件并会简单的使用运算和简单二维图的绘制。 2.学会运用MATLAB表示常用连续时间信号的方法 3.观察并熟悉一些信号的波形和特性。 4.学会运用MATLAB进行连续信号时移、反折和尺度变换。 5.学会运用MATLAB进行连续时间微分、积分运算。 6.学会运用MATLAB进行连续信号相加、相乘运算。 7.学会运用MATLAB进行连续信号的奇偶分解。 二、实验任务 将实验书中的例题和解析看懂,并在MATLAB软件中练习例题,最终将作业完成。 三、实验内容 1.MATLAB软件基本运算入门。 1). MATLAB软件的数值计算: 算数运算 向量运算:1.向量元素要用”[ ]”括起来,元素之间可用空格、逗号分隔生成行向量,用分号分隔生成列向量。2.x=x0:step:xn.其中x0位初始值,step表示步长或者增量,xn为结束值。 矩阵运算:1.矩阵”[ ]”括起来;矩阵每一行的各个元素必须用”,”或者空格分开; 矩阵的不同行之间必须用分号”;”或者ENTER分开。2.矩阵的加法或者减法运算是将矩阵的对应元素分别进行加法或者减法的运算。3.常用的点运算包括”.*”、”./”、”.\”、”.^”等等。

举例:计算一个函数并绘制出在对应区间上对应的值。 2).MATLAB软件的符号运算:定义符号变量的语句格式为”syms 变量名” 2.MATLAB软件简单二维图形绘制 1).函数y=f(x)关于变量x的曲线绘制用语:>>plot(x,y) 2).输出多个图像表顺序:例如m和n表示在一个窗口中显示m行n列个图像,p 表示第p个区域,表达为subplot(mnp)或者subplot(m,n,p) 3).表示输出表格横轴纵轴表达范围:axis([xmax,xmin,ymax,ymin]) 4).标上横轴纵轴的字母:xlabel(‘x’),ylabel(‘y’) 5).命名图像就在subplot写在同一行或者在下一个subplot前:title(‘……’) 6).输出:grid on 举例1:

《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)^2); y(n+1) = b*x(n)+a*(y(n)-x(n)^2) 2. 编程实现奥运5环图,允许用户输入环的直径。 3. 实现对输入任意长度向量元素的冒泡排序的升序排列。不允许使用sort 函数。 四、实验数据及结果分析 题目一: ①在Editor窗口编写函数代码如下:

matlab实验报告

数学实验报告 班级: 学号: 姓名: 实验序号:1 日期:年 月 日 实验名称:特殊函数与图形 ◆ 问题背景描述:绘图是数学中的一种重要手段,借助图形,可以使抽象的对象得到 明白直观的体现,如函数的性质等。同时,借助直观的图形,使初学者更容易接受新知识,激发学习兴趣。 ◆ 实验目的:本实验通过绘制一些特殊函数的图形,一方面展示这些函数的特点属性, 另一方面,就 Matlab 强大的作图功能作一个简单介绍。 实验原理与数学模型: 1、 球2222x y z R ++= ,x=Rsin φcos θ, y= Rsin φsin θ, z= cos φ, 0≤θ≤2π , 0≤φ≤π 环面 222222222()4(),(cos )cos ,x y z a r a x y x a r φθ+++-=+=- (cos )sin ,sin ,02,02y a r z r φθφφπθπ=-=≤≤≤≤ 2、 平面摆线:2 22 31150,(sin ),(1cos ),0233 x y x a t t y a t t π+-==-=-≤≤ 3、 空间螺线:(圆柱螺线)x=acost , y=asint , z=bt ;(圆锥螺线)22 cos ,sin ,x t t y t t z t === 4、 椭球面sin cos ,sin sin ,cos ,02,0x a y b z c φθφθφθπφπ===≤<≤≤ 双叶双曲面3 tan cos ,tan sin ,sec ,02,22 x a y b z c π φθφθφθπφπ===≤<- << 双曲抛物面2 sec ,tan 2 u x au y bu z θθ=== 实验所用软件及版本:mathematica(3.0) 主要内容(要点): 1、 作出下列三维图形(球、环面) 2、 作出下列的墨西哥帽子 3、 作出球面、椭球面、双叶双曲面,单叶双曲面的图形 4、 试画出田螺上的一根螺线 5、 作出如图的马鞍面

MATLAB实验报告实验二

实验二 MATLAB矩阵及其运算 学号:3121003104 姓名:刘艳琳专业:电子信息工程1班日期:2014.9.20 一实验目的 1、掌握Matlab数据对象的特点以及数据的运算规则。 2、掌握Matlab中建立矩阵的方法以及矩阵处理的方法。 3、掌握Matlab分析的方法。 二实验环境 PC_Windows 7旗舰版、MATLAB 7.10 三实验内容 4、1. (1)新建一个.m文件,验证书本第15页例2-1; (2)用命令方式查看和保存代码中的所有变量;

(3)用命令方式删除所有变量; (4)用命令方式载入变量z。 2. 将x=[4/3 1.2345e-6]在以下格式符下输出:短格式、短格式e方式、长格式、长格式e方式、银行格式、十六进制格式、+格式。 短格式 短格式e 长格式

长格式e方式 银行格式 十六进制格式 3.计算下列表达式的值 (1)w=sqrt(2)*(1+0.34245*10^(-6)) (2)x=(2*pi*a+(b+c)/(pi+a*b*c)-exp(2))/(tan(b+c)+a) a=3.5;b=5;c=-9.8; (3)y=2*pi*a^2*((1-pi/4)*b-(0.8333-pi/4)*a) a=3.32;b=-7.9; (4)z=0.5*exp(2*t)*log(t+sqrt(1+t*t)) t=[2,1-3i;5,-0.65];

4. 已知A=[1 2 3 4 5 ;6 7 8 9 10;11 12 13 14 15;16 17 18 19 20],对其进行如下操作:(1)输出A在[ 7, 10]范围内的全部元素; (2)取出A的第2,4行和第1,3,5列; (3)对矩阵A变换成向量B,B=[1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20]; (4)删除A的第2,3,4行元素; (1) (2)

MATLAB实验报告50059

实验一MATLAB操作基础 实验目的和要求: 1、熟悉MATLAB的操作环境及基本操作方法。 2、掌握MATLAB的搜索路径及设置方法。 3、熟悉MATLAB帮助信息的查阅方法 实验内容: 1、建立自己的工作目录,再设置自己的工作目录设置到MA TLAB搜索路径下,再试 验用help命令能否查询到自己的工作目录。 2、在MA TLAB的操作环境下验证课本;例1-1至例1-4,总结MATLAB的特点。 例1-1

例1-2 例1-3 例1-4

3、利用帮助功能查询inv、plot、max、round等函数的功能。 4、完成下列操作: (1)在matlab命令窗口输入以下命令: x=0:pi/10:2*pi; y=sin(x); (2)在工作空间窗口选择变量y,再在工作空间窗口选择回绘图菜单命令或在工具栏中单击绘图命令按钮,绘制变量y的图形,并分析图形的含义。

5、访问mathworks公司的主页,查询有关MATLAB的产品信息。 主要教学环节的组织: 教师讲授实验目的、开发环境界面、演示实验过程,然后同学上机练习。 思考题: 1、如何启动与退出MA TLAB集成环境? 启动: (1)在windows桌面,单击任务栏上的开始按钮,选择‘所有程序’菜单项,然后选择MA TLAB程序组中的MA TLABR2008b程序选项,即可启动 MATLAB系统。 (2)在MA TLAB的安装路径中找到MA TLAB系统启动程序matlab.exe,然后运行它。 (3)在桌面上建立快捷方式后。双击快捷方式图标,启动MA TLAB。 退出: (1)在MA TLAB主窗口file菜单中选择exitMATLAB命令。 (2)在MA TLAB命令窗口中输入exit或quit命令。 (3)单击MATLAB主窗口的关闭按钮。 2、简述MATLAB的主要功能。 MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符 号计算功能、绘图功能、编程语言功能以及应用工具箱的扩展功能。 3、如果一个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?1 3?10?5?16?8?4?2?1 6?3?10?5?16?8?4?2?1 运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。 请为关键的Matlab 语句填写上相关注释,说明其含义或功能。 4. 的值,调用该函数后,

matlab第一次实验报告

Matlab第一次实验报告 2012029010010 尹康 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) 程序代码: n=input('input the number of pionts:'); a=input('input a:'); b=input('input b:'); x=[]; y=[]; x(1)=input('input x1:'); y(1)=input('input y1:'); %输入点数、初始值以及系数for i=2:n x(i)=a*x(i-1)-b*(y(i-1)-x(i-1)^2); y(i)=a*x(i-1)+b*(y(i-1)-x(i-1)^2); %根据已输入的数据进行迭代end figure;plot(x,y,'linewidth',2) axis equal %横纵坐标等比例 text(x(1),y(1),'1st point') %标记初始点 运行结果:

心得体会及改进:在输入某些数据时,所绘曲线可能是一条折线(如:n=5,a=b=x1=1,y1=2)甚至只有一个点(如:n=5,a=b=x1=y1=1),此时可能出现曲线与坐标轴重合或无法看到点的情况,为了更清晰地展现曲线,可以使线宽适当加宽并标记初始点。 2.编程实现奥运5环图,允许用户输入环的直径。 程序代码: 函数circle: %在指定的圆心坐标处,用指定颜色、宽度的线条绘出指定半径、圆心角的弧 function f=circle(r,x,y,color,linw,alp1,alp2) alp=linspace(alp1,alp2); X=r*cos(alp)+x; Y=r*sin(alp)+y; plot(X,Y,color,'linewidth',linw) end 主程序代码: r=input('input r:');

matlab实验报告

实验一小球做自由落体运动内容:一小球竖直方向做自由落体,并无损做往返运动。程序: theta=0:0.01:2*pi x=cos(theta) y=sin(theta) l=1 v=1 while l<10 for t=1:10 y=y+(-1)^l*v*t plot(x,y,[-1,1],[-56,2],'.') axis equal pause(0.1) end l=l+1 end 结果:

-50 -40 -30 -20 -10 收获:通过运用小球自由落体规律,及(-1)^n 来实现无损往 返运动! 实验二 旋转五角星 内容:一个五角星在圆内匀速旋转 程序:x=[2 2 2 2 2 2] y=[0 4/5*pi 8/5*pi 2/5*pi 6/5*pi 0] y1=2*sin(y) x1=2*cos(y) theta=0:4/5*pi:4*pi

x2=2*cos(theta) y2=2*sin(theta) plot(x,y,x1,y1,x2,y2) axis equal theta1=theta+pi/10 x2=2*cos(theta1) y2=2*sin(theta1) plot(x2,y2) axis equal theta=0:4/5*pi:4*pi for rot=pi/10:pi/10:2*pi x=2*cos(theta+rot) y=2*sin(theta+rot) plot(x,y) pause(0.1) end 结果:

-2 -1.5-1-0.500.51 1.52 -2-1.5-1-0.500.511.5 2 收获:通过theta1=theta+pi/10,我们可以实现五角星在圆内匀速 旋转! 实验三 转动的自行车 内容:一辆自行车在圆内匀速转动 程序:x=-4:0.08:4; y=sqrt(16-x.^2); theta1=-pi/2:0.01*pi:3*pi/2; x3=0.5*cos(theta1); y3=0.5*sin(theta1); theta=-pi/2+0.02*pi for k=1:100

matlab实验二实验报告及程序

昆明理工大学信息工程与自动化学院学生实验报告 ( 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

MATLAB实验报告

MATLAB程序设计语言 实 验 报 告 专业及班级:电子信息工程 姓名:王伟 学号:1107050322 日期 2013年6月20日

实验一 MATLAB 的基本使用 【一】 实验目的 1.了解MATALB 程序设计语言的基本特点,熟悉MATLAB 软件的运行环境; 2.掌握变量、函数等有关概念,掌握M 文件的创建、保存、打开的方法,初步具备将一般数学问题转化为对应计算机模型处理的能力; 3.掌握二维图形绘制的方法,并能用这些方法实现计算结果的可视化。 【二】 MATLAB 的基础知识 通过本课程的学习,应基本掌握以下的基础知识: 一. MATLAB 简介 二. MATLAB 的启动和退出 三. MATLAB 使用界面简介 四. 帮助信息的获取 五. MATLAB 的数值计算功能 六. 程序流程控制 七. M 文件 八. 函数文件 九. MATLAB 的可视化 【三】上机练习 1. 仔细预习第二部分内容,关于MATLAB 的基础知识。 2. 熟悉MATLAB 环境,将第二部分所有的例子在计算机上练习一遍 3. 已知矩阵???? ??????=??????????=123456789,987654321B A 。求A*B ,A .* B ,比较二者结果是否相同。并利用MATLAB 的内部函数求矩阵A 的大小、元素和、长度以 及最大值。 程序代码: >> A=[1 2 3;4 5 6;7 8 9]; >> B=[9 8 7;6 5 4;3 2 1]; >> A*B ans =

30 24 18 84 69 54 138 114 90 >> A.*B ans = 9 16 21 24 25 24 21 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 =

参考答案Matlab实验报告

实验一 Matlab基础知识 一、实验目的: 1.熟悉启动和退出Matlab的方法。 2.熟悉Matlab命令窗口的组成。 3.掌握建立矩阵的方法。 4.掌握Matlab各种表达式的书写规则以及常用函数的使 用。 二、实验内容: 1.求[100,999]之间能被21整除的数的个数。(rem) 2.建立一个字符串向量,删除其中的大写字母。(find) 3.输入矩阵,并找出其中大于或等于5的元素。(find) 4.不采用循环的形式求出和式 63 1 2i i= ∑ 的数值解。(sum) 三、实验步骤: ●求[100,199]之间能被21整除的数的个数。(rem) 1.开始→程序→Matlab 2.输入命令: ?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=1 1 2 2 2 3 2 1 3 2 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 值。 2. 编程完成,对输入的函数的百分制成绩进行等绩转换,90~100为优,80~89为良,70~79为中,60~69为及格。 3. 编写M 函数文件表示函数 ,并分别求x=12和56时的函数值。 4. 编程求分段函数 2226;03 56;0532 1;x x x x y x x x x x x x +-<≠=-+≤<≠≠-+且且及其它,并求输入x=[-5.0,-3.0,1.0,2.0,2.5,3.0,3.5]时的输出y 。 三、 实验步骤: 根据y=1+1/3+1/5+……+1/(2n-1),编程求:y<5时最大n 值以及对应的y 值。 1. 打开Matlab ,新建M 文件 2. 输入命令: 51022-+x

MATLAB实验报告(二) 西安邮电大学

西安邮电学院 《Matlab》 实验报告 (二) 2011- 2012 学年第 1 学期 自动化 专业: 自动0903 班级: 学号: 姓名: 2011 年10月15日

实验二 MATLAB 的基本计算 一、实验目的 1.掌握建立矩阵的方法。 2.掌握MATLAB 各种表达式的书写规则以及常用函数的使用。 3.能用MATLAB 进行基本的数组、矩阵及符号运算。 4.掌握矩阵分析的方法以及能用矩阵求逆法解线性方程组。 二、实验设备及条件 计算机一台(带有MATLAB6.5或以上版本的软件环境)。 三、实验内容 1.利用diag 等函数产生下列矩阵。 ??????????-=032570800a ???? ? ?????=8040 507 2 b 2.利用reshape 函数将1题中的a 和b 变换成行向量。

3.产生一个均匀分布在(-5,5)之间的随即矩阵(10×2),要求精确到小数点后一位。 4.已知: ???????? ??-=765 3877 34434 12A ???? ? ?? ???--=7312 033 2 1 B 求下列表达式的值:

(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 的变化和解的相对变 6.利用randn 函数产生均值为0,方差为1的6×6正态分布随机矩阵C ,然后统计C 中大于-0.3,小于0.3的元素个数t

MATLAB全实验报告

《数学实验》报告 实验名称 Matlab 基础知识 学院 专业班级 姓名 学号 2014年 6月

一、【实验目的】 1.认识熟悉Matlab这一软件,并在此基础上学会基本操作。 2.掌握Matlab基本操作和常用命令。 3.了解Matlab常用函数,运算符和表达式。 4.掌握Matlab工作方式和M文件的相关知识。 5.学会Matlab中矩阵和数组的运算。 二、【实验任务】 P16 第4题 编写函数文件,计算 1! n k k = ∑,并求出当k=20时表达式的值。P27第2题 矩阵A= 123 456 789 ?? ?? ?? ?? ?? ,B= 468 556 322 ?? ?? ?? ?? ?? ,计算A*B,A.*B,并比较两者的区别。 P27第3题 已知矩阵A= 52 91 ?? ?? ?? ,B= 12 92 ?? ?? ?? ,做简单的关系运算A>B,A==B,AB)。 P34 第1题 用 111 1 4357 π =-+-+……公式求π的近似值,直到某一项的绝对值小于-6 10为止。 三、【实验程序】 P16 第4题 function sum=jiecheng(n) sum=0; y=1; for k=1:n for i=1:k y=y*i; end sum=sum+y; end sum P27第2题 >>A=[1 2 3;4 5 6;7 8 9] >>B=[4 6 8;5 5 6;3 2 2] >>A*B

P27第3题 >> A=[5 2;9 1];B=[1 2;9 2]; >>A>B >>A==B >>A> (A==B)&(A> (A==B)&(A>B) P34 第1题 t=1; pi=0; n=1; s=1; while abs(t)>=1e-6 pi=pi+t; n=n+2; s=-s; t=s/n; end pi=4*pi; 四、【实验结果】 P16 第4题 P27第2题

matlab实验报告

实验报告 2. The Branching statements 一、实验目的: 1.To grasp the use of the branching statements; 2.To grasp the top-down program design technique. 二、实验内容及要求: 1.实验内容: 1).编写 MATLAB 语句计算 y(t)的值 (Write the MATLAB program required to calculate y(t) from the equation) ???<+≥+-=0 530 53)(2 2t t t t t y 已知 t 从-5到 5 每隔0.5取一次值。运用循环和选择语句进行计算。 (for values of t between -5 and 5 in steps of 0.5. Use loops and branches to perform this calculation.) 2).用向量算法解决练习 1, 比较这两个方案的耗时。 (tic ,toc 的命令可以帮助你完成的时间计算,请使用'help'函数)。 Rewrite the program 1 using vectorization and compare the consuming time of these two programs. (tic, toc commands can help you to finish the time calculation, please use the …help ? function). 2.实验要求: 在报告中要体现top-down design technique, 对于 3 要写出完整的设计过程。 三、设计思路: 1.用循环和选择语句进行计算: 1).定义自变量t :t=-5:0.5:5; 2).用循环语句实现对自变量的遍历。 3).用选择语句实现对自变量的判断,选择。 4).将选择语句置入循环语句中,则实现在遍历中对数据的选择,从而实现程序的功能。 2. 用向量法实现: 1).定义自变量t :t=-5:0.5:5; 2).用 b=t>=0 语句,将t>=0得数据选择出,再通过向量运算y(b)=-3*t(b).^2 + 5; 得出结果。 3).用取反运算,选择出剩下的数据,在进行向量运算,得出结果。 四、实验程序和结果 1.实验程序 实验程序:创建m 文件:y_t.m

matlab实验报告

Matlab实验报告 实验二图像处理 一、实验目的 (1)通过应用MA TLAB语言编程实现对图像的处理,进一步熟悉MATLAB软件的编程及应用; (2)通过实验进一步掌握图像处理的基本技术和方法。 二、实验内容及代码 ㈠.应用MA TLAB语言编写显示一幅灰度图像、二值图像、索引图像及彩色图像的程序,并进行相互之间的转换 首先,在matlab页面中的current directory下打开存放图像的文件夹。 1.显示各种图像 ⑴显示彩色图像: ①代码:>> mousetif=imread('tif.TIF'); >> image(mousetif) 显示截图: ②代码:>> mousetif=imread('tif.TIF'); >> imshow(mousetif) 显示截图:

③代码:mousetif=imread('tif.TIF'); subimage(mousetif) 显示截图: 显示截图:

⑵显示二值图像 ①代码:>> I=imread('单色bmp.bmp'); >> imagesc(I,[0 2]) 显示截图: ②代码:>> I=imread('单色bmp.bmp');

>> imshow(I,2) 显示截图: ③代码:>> I=imread('单色bmp.bmp'); >> subimage(I) 显示截图:

⑶显示灰度图像 ①代码:>> I1=imread('256bmp.bmp'); >> imagesc(I1,[0,256]) 显示截图: 代码:>> I1=imread('256bmp.bmp'); >> colormap(gray); >> subplot(1,2,1); >> imagesc(I1,[0,256]); >> title('灰度级为[0 256]的mouse.bmp图'); >> subplot(1,2,2); >> imagesc(I1,[0,64]); >> colormap(gray); >> title('灰度级为[0 64]的mouse.bmp图'); 显示截图:

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

实验二 M A T L A B 程序设计 一、 实验目的 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。如: 21 3105168421 63105168421 运行下面的程序,按程序提示输入n=1,2,3,5,7等数来验证这一结论。 请为关键的Matlab 语句填写上相关注释,说明其含义或功能。 4. 编写一个函数,计算下面函数的值,给出标量x 的值,调用该函数后,返回y 的值。 function [y]=myfun1(x) 选择一些数据测试你编写的函数。 5. 编写一个函数求向量x 中元素的平均值、最大值、最小值、均方根值。 %classic "3n+1" problem from number theory. while 1 n=input('Enter n,negative quits:'); if n<=0 break end a=n; while n>1 if rem(n,2)==0

浅析Matlab数学实验报告

数学实验报告 姓名: 班级: 学号: 第一次实验任务 过程: a=1+3i; b=2-i; 结果: a+b =3.0000 + 2.0000i a-b =-1.0000 + 4.0000i a*b = 5.0000 + 5.0000i a/b = -0.2000 + 1.4000i 过程: x=-4.5*pi/180; y=7.6*pi/180; 结果: sin(abs(x)+y)/sqrt(cos(abs(x+y))) =0.2098 心得:对于matlab 中的角度计算应转为弧度。 (1)过程: x=0:0.01:2*pi; y1=sin(x); y2=cos(x); y3=exp(x); y4=log(x); plot(x,y1,x,y2,x,y3,x,y4) plot(x,y1,x,y2,x,y3,x,y4) 结果: (2)过程:>> subplot(2,2,1) >> plot(x,y1) >> subplot(2,2,2) >> plot(x,y2) ./,,,,2,311b a b a b a b a i b i a ?-+-=+=计算、设有两个复数 6,7,5.4)

cos()sin(2=-=++y x y x y x ,其中、计算的图形。 下分别绘制)同一页面四个坐标系)同一坐标系下(、在( x y e y x y x y x ln ,,cos ,sin 213==== >> subplot(2,2,3) >> plot(x,y3) >> subplot(2.2.4) >> subplot(2,2,4) >> plot(x,y4) 结果: 心得:在matlab中,用subplot能够实现在同一页面输出多个坐标系的图像,应注意将它与hold on进行区别,后者为在同一坐标系中划出多条曲线。 5、随机生成一个3x3矩阵A及3x2矩阵B,计算(1)AB,(2)对B中每个元素平方后得到的矩阵C,(3)sinB,(4)A的行列式,(5)判断A是否可逆,若可逆,计算A的逆矩阵,(6)解矩阵方程AX=B,(7)矩阵A中第二行元素加1,其余元素不变,得到矩阵D,计算D。 过程:A=fix(rand(3,3).*10) ; B=fix(rand(3,3).*10);

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)

MATLAB入门实验报告

MATLAB实验报告 题目:第一次实验报告 学生姓名: 学院: 专业班级: 学号: 年月

MATLAB第一次实验报告 ————入门第一次上机实验刘老师就MATLAB软件进行了 大致的讲解,并讲了如何建立M文件,定义函数数 组矩阵,如何绘图。先就老师讲解及自己学习的情 况做汇报。 一、建立M文件 <1>M文件建立方法: 1. 在MATLAB中,点:File→New →M-file 2. 在编辑窗口中输入程序内容 3. 点File →Save,存盘,M文件名必须与函数名 一致 <2>课上实例 例:定义函数f(x1,x2)=100(x2-x12)2+(1-x1)2 答:建立M文件:fun.m function 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.m function f=zuoye1(x,y) f=x^2+sin(x*y)+2*y 命令行输入x=1,y=1 zuoye1(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 7 0 8 2 0 3 8 7 7 1 10 9 4 0 8 0 temp =

matlab实验报告

MATLAB 数学实验报告 指导老师: 班级: 小组成员: 时间:201_/_/_

Matlab第二次实验报告 小组成员: 1题目:实验四,MATLAB选择结构与应用实验 目的:掌握if选择结构与程序流程控制,重点掌握break,return,pause语句的应用。 问题:问题1:验证“哥德巴赫猜想”,即:任何一个正偶数(n>=6)均可表示为两个质数的和。要求编制一个函数程序,输入一个正偶数,返回两个质数的和。 问题分析:由用户输入一个大于6的偶数,由input语句实现。由if判断语句判断是否输入的数据符合条件。再引用质数判断函数来找出两个质数,再向屏幕输出两个质数即可。 编程:function [z1,z2]=gede(n); n=input('please input n')

if n<6 disp('data error'); return end if mod(n,2)==0 for i=2:n/2 k=0; for j=2:sqrt(i) if mod(i,j)==0 k=k+1; end end for j=2:sqrt(n-i) if mod(n-i,j)==0 k=k+1; end end if k==0 fprintf('two numbers are') fprintf('%.0f,%.0f',i,n-i) break end

end end 结果分析: 如上图,用户输入了大于6的偶数返回两个质数5和31,通过不断试验,即可验证哥德巴赫猜想。 纪录:if判断语句与for循环语句联合嵌套使用可使程序结构更加明晰,更快的解决问题。 2题目:实验四,MATLAB选择结构与应用实验 目的:用matlab联系生活实际,解决一些生活中常见的实际问题。

相关文档