MATLAB上机实习.docx
- 文档编号:5897720
- 上传时间:2023-01-02
- 格式:DOCX
- 页数:21
- 大小:956.02KB
MATLAB上机实习.docx
《MATLAB上机实习.docx》由会员分享,可在线阅读,更多相关《MATLAB上机实习.docx(21页珍藏版)》请在冰豆网上搜索。
MATLAB上机实习
Matlab上机实习报告
目录
1.概述
2.上机具体内容
概述部分
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。
MATLAB应用非常之广泛!
(尤其在我们信息专业)不仅仅可以对数据进行分析和计算,也可以将数据进行图样化呈现。
MATLAB由一系列工具组成。
这些工具方便用户使用MATLAB的函数和文件,其中许多工具采用的是图形用户界面。
包括MATLAB桌面和命令窗口、历史命令窗口、编辑器和调试器、路径搜索和用于用户浏览帮助、工作空间、文件的浏览器。
在本次实习中,我们主要学习的是matlab的基本结构,掌握matlab的基本使用方法,掌握如何创建数组和对数组进行操作,学会用matlab绘画图形,对文件进行调试,对句柄图形和图形用户界面制作,最后达到能够对M文件的程序设计。
第一章
开始第一章学习,听老师介绍了MATLAB的用途,基本界面的调整及(clear;clc;)的作用;clear是清除所有变量。
clc是清除所有矩阵。
然后自学了指导书上进入MATLAB的几种方法,退出界面的几种方法;退出界面与以往感觉略有不同,直接打叉再次打开文件以往内容还在,所以要用指导书上介绍的几种方法:
1.快捷键“Ctrl+q”;2.在命令窗口输入‘quit’命令;3.在命令窗口输入‘exit’命令;在了解这一些的基础上,又进行了界面调整的工作;
在命令窗中输入(12+2*(7-4))/3^2结果出ans=2;
然后进行有关数组的实习,分别进行了这些内容:
1.在命令窗中赋值空矩阵,在命令窗中输入A=[];2.在内存浏览器中,双击该变量,打开数组编辑器,观看了数据存储的形式。
打开了M文件输入了例题的内容:
t=0:
pi/50:
4*pi;%t从0开始;句步为pi/50;直到4*pi为止
y0=exp(-t/3);%函数y0=e^(-t/)
y=exp(-t/3).*sin(3*t);%函数y=exp(-t/3).*sin(3*t);
plot(t,y,'-r',t,y0,':
b',t,-y0,':
b')%简单的制图
设置了存放路径,在E盘里建立了自己名字的文件夹。
了解help的作用,输入了helpeye,阅读相关帮助信息。
●图1-1
第二章
这一章主要学习了矩阵和数组的运算;
矩阵的两种输入方法:
任何矩阵(向量),可以直接按行方式输入每个元素:
同一行中的元素用逗号(,)或者用空格符来分隔;行与行之间用分号(;)分隔。
所有元素处于一方括号([])内;
进行数组相关实习要求完成内容:
对例五进行修改:
●图2-1
由于文本格式不对所以需要重新输入;
>>A=[20–1;132];B=[17–1;423;201];
>>M=A*B%矩阵A与B按矩阵运算相乘
>>det_B=det(B)%矩阵A的行列式
>>rank_A=rank(A)%矩阵A的秩
>>inv_B=inv(B)%矩阵B的逆矩阵
>>[V,D]=eig(B)%矩阵B的特征值矩阵V与特征向量构成的矩阵D
>>X=A/B%A/B=A*B-1,即XB=A,求X
>>Y=B\A%B\A=B-1*A,即BY=A,求Y
第(7)题:
要求在闭区间[0,2*pi]上产生50个等距采样的一维数组t。
第一次我做的是有错误的,错在步距,要50个数,我输入了2*pi/50,结果输出了51个数;所以第二次我输入了2*pi/49;这次就对了;
●输入一个数组,包含50个数
●图2-2
先输入t=0:
pi/49:
2*pi;
%t从0开始;句步为2*pi/49;直到4*pi为止。
数组中的数据可有两个修改方法:
1.可在表格中直接修改。
2.可在commandwindow里修改——直接赋值。
例如:
A
(2)=100.
●快速查找1到4,四个字符
●图2-3
使用方法:
把t(1,4)赋值给t14;
t=0:
pi/50:
4*pi;%t从0开始;句步为pi/50;直到4*pi为止
t14=t(1,4)
●把第二个数改值100.
●图2-4
第8题:
分别用“全下标”和“单下标”来寻访第2行第1列的元素,并说明二维数组元素的存储顺序。
如何快速查找:
第二行第一列,方法一:
C=A(2,1);方法二:
B=A
(2);
说明二维数组元素的存储顺序:
数列是按照内存条列项存储的。
按照老师所讲解,一个2*3数组第一位存第一行第一个,第二位是第二行第一个;第三位存第一行第二个;第四位存第二行第二个;第五位存第一行第三个,第六位存第二行第三个;
所以也就是说
A(1,1)=A
(1);A(2,1)=A
(2);
A(1,2)=A(3);A(2,2)=A(4);
A(1,3)=A(5);A(2,3)=A(6);
●图2-5
第(9)题在指令窗中输入A=[1,2,3;4,5,6];B=[1,2,3;6,7,8;],并计算和A*B并说明矩阵相乘和数组相乘的区别。
计算A.*B;这个是可以计算的因为这个A。
是调用了A矩阵的第一行;
●图2-6
这道题本身A*B是不能进行的,第一个的矩阵的列与第二个矩阵的行不对应;
但可以修改成这样A=[123;456];B=[123;678;456];C=A.*B;
●图2-7
A=[123;456];
B=[123;678;456];
C=A*B;
第(11)题在时间区间[1,10]中,绘出Y=1-EXP的线。
这道题要注意函数e的多少次方是用esp函数表示的
三角函数前要输一个点,用以表示点乘。
不然的话输出结果不正确。
●图2-8
第(12)题写出生成如图2-1所示波形的MATLAB脚本M文件。
图中虚线为正弦波,要求它的负半波被置零,且在顶点处被削顶。
x1=0:
0.05:
pi/4;
y1=sin(x1);
x2=pi/4:
0.05:
3*pi/4;
y2=sin(pi/4);
x3=3*pi/4:
0.05:
pi;
y3=sin(x3);
x4=pi:
0.05:
2*pi;
y4=0;
x5=2*pi:
0.05:
9*pi/4;
y5=sin(x5);
x6=9*pi/4:
0.05:
11*pi/4;
y6=sin(pi/4);
x7=11*pi/4:
0.05:
3*pi;
y7=sin(x7);
plot(x1,y1,'r',x2,y2,'r',x3,y3,'r',x4,y4,'r',x5,y5,'r',x6,y6,'r',x7,y7,'r');
一开始的时候我并做不成,我把每一个人函数输一个plot,然而它们并连不到一块;最终失败,后来我才看到了函数如何连续输出;
这个图是老师先让我连两个函数试试,所输出的结果。
●图2-9
●图2-10
这个图是我输入自己对的程序时所得到的输入结果;
●图2-11
图2-11是输入我所写的语句所出的结果,有些不完美的地方,但基本达到要求。
●图2-12
做这道题也有失误的时候;图2-12就是其中一例,对于区间的函数值写错了导致图像段有错位。
●图2-13
最后学习了老师所作步骤十分的简洁图2-13所示;
t=0:
0.1:
10;
y=sin(t);
a=sin(pi/3);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MATLAB 上机 实习