专业基础实践 -Matlab运算与正弦激励一阶电路分析
课程设计任务书
学生姓名: 专业班级:
指导教师: 工作单位:
课程设计名称: 专业基础实践
课程设计题目:Matlab 运算与正弦激励一阶电路分析
初始条件:
1. Matlab7.1以上版本软件;
2. 专业基础实践辅导资料:“Matlab 语言基础及使用入门”、“Matlab 及在电子
信息课程中的应用”、“线性代数”及“信号处理类”相关书籍等;
3. 先修课程:高等数学、线性代数、电路、Matlab 应用实践及信号处理类基础
课程等。
要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
1. 实践内容:根据指导老师给定的7套题目,按规定选择其中1套独立完成;
2. 本专业基础实践统一技术要求:研读辅导资料对应章节,对选定的设计题目
进行理论分析,完成针对具体设计部分的原理分析、建模、必要的推导和可行性分析,画出程序设计框图,编写程序代码(含注释),上机调试运行程序,记录实验结果(含计算结果和图表等),并对实验结果进行分析和总结。具体设计要求包括:
① 初步了解Matlab 、熟悉Matlab 界面、进行简单操作等;
② Matlab 的数值计算:创建矩阵、矩阵运算、多项式运算、线性方程组、
数值统计等;
③ 基本绘图函数:了解plot, plot3, mesh, surf等,要求掌握以上绘图
函数的用法、简单图形标注、简单颜色设定等;
④ 使用文本编辑器编辑m 文件,会函数调用等;
⑤ 能完成简单电路的Matlab 编程分析;
⑥ 按要求参加专业基础实践的实验演示和答辩等。
3. 课程设计说明书按学校“课程设计工作规范”中的“统一书写格式”撰写,
具体包括:
① 目录;②与设计题目相关的理论分析、归纳和总结;③与设计内容相关
的原理分析建模、推导、可行性分析;④程序设计框图、程序代码(含注释)、程序运行结果和图表、实验结果分析和总结;⑤课程设计的心得
体会(至少500字);⑥参考文献(不少于5篇);⑦其它必要内容等。 时间安排:1.0周(分散进行)
指导教师签名: 年 月 日
系主任(或责任教师)签名: 年 月 日
目 录
1. MATLAB 简介„„„„„„„„„„„„„„„„„„„„„„„„„„(1)
2. 具体题目分析„„„„„„„„„„„„„„„„„„„„„„„„„„(3)
2.1试题1„„„„„„„„„„„„„„„„„„„„„„„„„„„(3)
2.2试题2„„„„„„„„„„„„„„„„„„„„„„„„„„„(3)
2.3试题3„„„„„„„„„„„„„„„„„„„„„„„„„„„(4)
2.4试题4„„„„„„„„„„„„„„„„„„„„„„„„„„„(5)
2.5试题5„„„„„„„„„„„„„„„„„„„„„„„„„„ (11)
2.6试题6„„„„„„„„„„„„„„„„„„„„„„„„„„ (12)
2.7试题7„„„„„„„„„„„„„„„„„„„„„„„„„„ (12)
2.8试题8„„„„„„„„„„„„„„„„„„„„„„„„„„ (13)
2.9试题9„„„„„„„„„„„„„„„„„„„„„„„„„„ (14)
2.10试题10„„„„„„„„„„„„„„„„„„„„„„„„„ (15)
2.11试题11„„„„„„„„„„„„„„„„„„„„„„„„„ (16)
3. 课程设计心得体会„„„„„„„„„„„„„„„„„„„„„„„ (18)
4. 参考文献„„„„„„„„„„„„„„„„„„„„„„„„„„„ (19)
5. 本科生课程设计成绩评表„„„„„„„„„„„„„„„„„„„„ (20)
1. MATLAB简介
MATLAB 的名称源自Matrix Laboratory,1984年由美国Mathworks 公司推向市场。它是一种科学计算软件,专门以矩阵的形式处理数据。MATLAB 将高性能的数值计算和可视化集成在一起,并提供了大量的内置函数,从而被广泛的应用于科学计算、控制系统和信息处理等领域的分析、仿真和设计工作。
MATLAB 软件包括五大通用功能,数值计算功能(Nemeric )、符号运算功能(Symbolic )、数据可视化功能(Graphic )、数字图形文字统一处理功能
(Notebook )和建模仿真可视化功能(Simulink )。其中,符号运算功能的实现是通过请求MAPLE 内核计算并将结果返回到MATLAB 命令窗口。该软件有三大特点,一是功能强大;二是界面友善、语言自然;三是开放性强。目前,Mathworks 公司已推出30多个应用工具箱。MATLAB 在线性代数、矩阵分析、数值及优化、数值统计和随机信号分析、电路与系统、系统动力学、图像处理、控制理论分析和系统设计、过程控制、建模和仿真、通信系统以及财政金融等众多领域的理论研究和工程设计中得到了广泛应用。
MATLAB 的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB 来解算问题要比用C ,FORTRAN 等语言完相同的事情简捷得多,并且math work 也吸收了像Maple 等软件的优点, 使MATLAB 成为一个强大的数学软件。在新的版本中也加入了对C ,FORTRAN ,C++ ,JAVA 的支持。可以直接调用, 用户也可以将自己编写的实用程序导入到MATLAB 函数库中方便自己以后调用,此外许多的MATLAB 爱好者都编写了一些经典的程序,用户可以直接进行下载就可以用。
MATLAB 应用:
MATLAB 产品族可以用来进行以下各种工作:
①数值分析
②数值和符号计算
③工程与科学绘图
④控制系统的设计与仿真
⑤数字图像处理
⑥数字信号处理
⑦通讯系统设计与仿真
⑧财务与金融工程
MATLAB 的应用范围非常广,包括信号和图像处理、通讯、控制系统设计、测试和测量、财务建模和分析以及计算生物学等众多应用领域。附加的工具箱(单独提供的专用 MATLAB 函数集)扩展了 MATLAB 环境,以解决这些应用领域内特定类型的问题。
2. 具体题目设计、实现及分析
和
2.1.1 理论分析
这是利用matlab 处理数值运算的题目。在matlab 中有很多内部函数和固定变量。这里就要用到cos(),sqrt()等函数以及固定变量Pi.
2.1.2 程序代码
y1=5*cos(0.6*pi)/(2+sqrt(3)) %计算y1的表达式
y2=5*cos(0.2*pi)/(3+sqrt(3)) %计算y2的表达式
2.1.3 运行结果
>> y1=5*cos(0.6*pi)/(2+sqrt(3))
y1 =
-0.4140
>> y2=5*cos(0.2*pi)/(3+sqrt(3))
y2 =
0.8548
2.1.4 题目总结
我们注意到Matlab 中的pi 与真正的π有差距,而且数字与因式相乘要使用乘法符号’*’。Matlab 中的表达式的优先级与C 语言等汇编语言一样,通过这个计算,了解到matlab 有处理数据计算的功能。
2.2 绘制函数y =xe -x sin x 在0≤x ≤1时的曲线。
2.2.1理论分析
利用matlab 软件绘制曲线图。可以用plot ()函数。
2.2.2 程序代码
x=0:0.001:1; %确定x 的取值范围
y=x.*exp(-x).*sin(x); %用x 表达出y
plot(x,y ) %调用plot 函数
2.2.3 运行结果
如图2.2.3(横轴为x, 纵轴为y )
0.35
0.3
0.25
0.2
0.15
0.1
0.05
000.10.20.30.40.50.60.70.80.91
图2.2.3
2.2.4 题目总结
plot 函数可以用于绘制函数图像,调用简单而且方便。
2.3用图形表示离散函数y =(n -6) e n 。
2.3.1 理论分析
在matlab 的二维曲线绘图指令中,最基本的是plot ,plot 的调用格式为:plot (x,y,s ), 其中x,y 为同维向量,绘制分别以x 为横坐标,y 为纵坐标的曲线;s 为可选项,用于图形修饰。在此题中还用到绝对值的函数abs ()。 -1
2.3.2 程序代码
n=1:20; %取1到20的正整数
y=1./abs((n-6).*exp(n)); %离散变量表达式
plot(n,y,'b.') %用蓝色的点绘制
2.3.3 运行结果
如图(横轴为n, 纵轴为y )
0.08
0.07
0.06
0.05
0.04
0.03
0.02
0.01
0 图2.3.3
2.3.4 题目总结
在描点的时候n=6的点没有画出,因为在n=6时分母为0,函数值为inf ,即无穷大。用plot 函数可以定义所描述的点的大小、形状和颜色。
2.4 分析下面每条指令的功能并运行,观察执行结果。
a) X=0:0.5:20;
Y=X.*exp(-X);
plot(X,Y),xlabel(‘x ’), ylabel(‘y ’),title(‘y=x*exp(-x)’);
(2) A=zeros(4,5)
A(:)=-4:15
L=abs(A)>4
islogical(L)
X=A(L)
(3) A=[1:5;6:10]
pow2(A)
(4) A=zeros(5,6)
A(:)=1:30
A=A*(1+i)
A1=A.’;
B1=A’;
(5) A=ones(2,3)
B=ones(3)
C=eye(4)
D=diag(C)
E=repmat(C,1,3)
2.4.1.1 理论分析
用plot 函数可对图形进行标注。如此题中xlabel,ylabel 分别为坐标轴标记,title 为标题标记。
2.4.1.2程序代码
x=0:0.5:20; %产生一组自变量数据
y=x.*exp(-x); %数组的乘法
plot(x,y),xlabel(‘x ’), ylabel(‘y ’),title(‘y=x*exp(-x)’);
%对函数图形标注坐标轴和标题
2.4.1.3 运行结果
如图2.4.1.3所示
y=x*exp(-x)
0.4
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0y 0246810
x 1214161820
图2.4.1.3
2.4.2.1理论分析
在matlab 中有多种方法生成矩阵,此题主要要运用特殊函数生成法,
如题中zeros()生成一个元素全为0的矩阵。L 为逻辑数组,其元素是0或1。
2.4.2.2 程序代码
A=zeros(4,5) %定义一个4x5的全零矩阵
A(:)=-4:15 %将元素-4到15按列取出生成4行5列数组
L=abs(A)>4 %绝对值大于3的值变为1,小于3的为0
islogical(L) %判断L 是不是逻辑数
X=A(L) %取出A 中大于1的元素组成一个新矩阵
2.4.2.3 运行结果
A=zeros(4,5)
A =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
>> A(:)=-4:15
A =
-4 0 4 8 12
-3 1 5 9 13
-2 2 6 10 14
-1 3 7 11 15
>> L=abs(A)>4
L =
0 0 0 1 1
0 0 1 1 1
0 0 1 1 1
0 0 1 1 1
>> islogical(L)
ans =
1
>> X=A(L)
X =
5
6
7
8
9
10
11
12
13
14
15
2.4.3.1 理论分析
此题为matlab 中用冒号生成法生成数组,通用格式为:变量=初值:增量:终值,当增量为1时可省略。
2.4.3.2 程序代码
A=[1:5;6:10] %生成一个矩阵
pow2(A) %矩阵相应位置变为以2为底的指数
2.4.3.3 运行结果
A=[1:5;6:10]
A =
1 2 3 4 5
6 7 8 9 10
>> pow2(A)
ans =
2 4 8 16 32
64 128 256 512 1024
2.4.4.1 理论分析
此题主要为矩阵的转换。A. ’为矩阵的转置矩阵,A ’为矩阵A 的共轭转置矩阵。
2.4.4.2 程序代码
A=zeros(5,6) %生成一个5x6的全零矩阵
A(:)=1:30 %将1到30分别赋给矩阵的各元素 A=A*(1+i) %给A 矩阵的各个元素重新赋值 A1=A.’; %A的转置矩阵 B1=A’; %A的共轭转置矩阵
2.4.4.3 运行结果
>> A=zeros(5,6) A =
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >> A(:)=1:30 A =
1 6 11 16 21 26 2 7 12 17 22 27 3 8 13 18 23 28 4 9 14 19 24 29 5 10 15 20 25 30 A =
Columns 1 through 3
1.0000 + 1.0000i 6.0000 + 6.0000i 11.0000 +11.0000i 2.0000 + 2.0000i 7.0000 + 7.0000i 12.0000 +12.0000i 3.0000 + 3.0000i 8.0000 + 8.0000i 13.0000 +13.0000i 4.0000 + 4.0000i 9.0000 + 9.0000i 14.0000 +14.0000i 5.0000 + 5.0000i 10.0000 +10.0000i 15.0000 +15.0000i Columns 4 through 6
16.0000 +16.0000i 21.0000 +21.0000i 26.0000 +26.0000i 17.0000 +17.0000i 22.0000 +22.0000i 27.0000 +27.0000i 18.0000 +18.0000i 23.0000 +23.0000i 28.0000 +28.0000i 19.0000 +19.0000i 24.0000 +24.0000i 29.0000 +29.0000i 20.0000 +20.0000i 25.0000 +25.0000i 30.0000 +30.0000i A1=A.' A1 =
1.0000 + 1.0000i 2.0000 + 2.0000i 3.0000 + 3.0000i 4.0000 + 4.0000i 5.0000 + 5.0000i
6.0000 + 6.0000i 7.0000 + 7.0000i 8.0000 + 8.0000i 9.0000 + 9.0000i 10.0000 +10.0000i
11.0000 +11.0000i 12.0000 +12.0000i 13.0000 +13.0000i 14.0000 +14.0000i 15.0000 +15.0000i
16.0000 +16.0000i 17.0000 +17.0000i 18.0000 +18.0000i 19.0000 +19.0000i 20.0000 +20.0000i
21.0000 +21.0000i 22.0000 +22.0000i 23.0000 +23.0000i 24.0000 +24.0000i 25.0000 +25.0000i
26.0000 +26.0000i 27.0000 +27.0000i 28.0000 +28.0000i 29.0000 +29.0000i 30.0000 +30.0000i >> B1=A' B1 =
1.0000 - 1.0000i 2.0000 - 2.0000i 3.0000 - 3.0000i 4.0000 - 4.0000i 5.0000 - 5.0000i
6.0000 - 6.0000i 7.0000 - 7.0000i 8.0000 - 8.0000i 9.0000 - 9.0000i 10.0000 -10.0000i
11.0000 -11.0000i 12.0000 -12.0000i 13.0000 -13.0000i 14.0000 -14.0000i 15.0000 -15.0000i
16.0000 -16.0000i 17.0000 -17.0000i 18.0000 -18.0000i 19.0000 -19.0000i 20.0000 -20.0000i
21.0000 -21.0000i 22.0000 -22.0000i 23.0000 -23.0000i 24.0000 -24.0000i 25.0000 -25.0000i
26.0000 -26.0000i 27.0000 -27.0000i 28.0000 -28.0000i 29.0000 -29.0000i 30.0000 -30.0000i
2.4.5.1 理论分析
此题主要介绍了特殊函数生成矩阵以及矩阵的操作函数,如ones 表示元素全为1的矩阵,eye 表示单位矩阵;diag 表示将矩阵转换为对角矩阵,repmat 表示按指定的行列数复制矩阵。
2.4.5.2 程序代码
A=ones(2,3) %定义一个2x3的全1矩 B=ones(3) %定义一个3x3的全1矩阵 C=eye(4) %生成4行4列的单位矩阵 D=diag(C) %生成C 的对角矩阵
E=repmat(C,1,3) %将C 矩阵作为一个元素生成一个1行3列的矩阵
2.4.5.3 运行结果
>> A=ones(2,3) A =
1 1 1 1 1 1 >> B=ones(3) B =
1 1 1 1 1 1
1 1 1 >> C=eye(4) C =
1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 >> D=diag(C) D = 1 1 1 1
>> E=repmat(C,1,3) E =
1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 0 0 1
2.4.6 题目总结
matlab中有多种生成数组的方法,以及数组的一些操作函数等,对于数组的处理等很方便,但要写代码的时候要特别注意分号的使用,若一个输出表达式后有分号,则只计算而不在command 窗口中显示出来。
2.5计算y =2x 5+0. 1x 3-10在x=0.1与10处的值。
2.5.1 理论分析
这道题目是运用MATLAB 计算多项式,这里运用到的是polyval()命令,通过这个命令可以很快的计算出在相应值下的多项式的值。
2.5.2 程序代码
p=[2 0 0.1 0 -10]; polyval(p,0.1) polyval(p,10)
2.5.3 运行结果
>> p=[2 0 0.1 0 -10]; >> polyval(p,0.1) ans =
-9.9988
>> polyval(p,10) ans =
20000
2.5.4 题目总结
在matlab 中提供了多种方法求解函数值,操作者可根据需要选择方便快捷的函数公式,本题中注意高次项系数。
2.6求函数1+e 1+e 2+ +e n , n =100的值。
2.6.1 理论分析
可以用for 循环实现函数求值
2.6.2程序代码
s=0; %函数初值为0
for n=0:100; %for控制循环100次 x=exp(n); %循环语句 s=s+x; %函数加和 end %结束循环 s
2.6.3 运行结果
s =
4.2525e+043
2.6.4 题目总结
For 循环可以简单的用来求和,使用时注意使用格式 2.7
求3000个元素的随机数向量A 中大于0.5的元素个数。
2.7.1 理论分析
这道题中要用到随机函数rand()。在生成矩阵后还要用到循环控制结构,可用for 语句、while 语句,在循环中还可加入if 进行选择。
2.7.2 程序代码
方法1:
A=rand(50,60), %定义一个50x60的矩阵 n=0; %令n 的初值为0
for i=1:50; %外部for 循环处理行 for j=1:60; %内部for 循环处理列 if A(i,j)>0.5 % if语句用来判断表达式 n=n+1; %若表达式为真,则n 加1 end, %if语句结束
end, %内部for 语句结束句 end, %外部for 语句结束句 n %输出n
方法2:
>> A=rand(1,3000); >> s=0;
>> for a=1:length(A) if A(a)>0.5 s=s+1; end end >> s s =
1530
2.7.3 运行结果
1530
2.7.4 题目总结
编写代码的过程中要注意‘,’与‘;’的用法,只有正确的使用它们才能得出结果。另一方面,‘end ’的使用也要注意,特别是与之对应的for,if 分别对应什么位置,要注意end 的个数。
2.8 用图形表示连续调制波形y=sin(t)sin(9t) 及其包络线,运行下面的程序,观察结果,并简单说明。
2.8.1 理论分析
matlab能用于信号的处理,能通过编写代码将调制波形等绘制出来,能够应用于信号与系统中进行信号的处理。
2.8.2 程序代码
>> 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); %去调制信号中幅值为0的点 >> plot(t,y1,'r:',t,y2,'b',t3,y3,'bo'); %绘制调制波形
>> axis([0,pi,-1,1]) %控制x,y 轴的取值范围
2.8.3 运行结果
如图2.8.3所示
0.5
1
1.5
2
2.5
3
图2.8.3
2.8.4 题目总结
利用matlab 可以方便的绘制调制信号的波形等,能够用于今后的学习信号处理。
2.9 计算下列矩阵A 的特征值与特征向量
A=[1 1 4] |2 2 5| [3 3 6]
2.9.1 理论分析
这里是运用matlab 中的函数来处理矩阵,从而生成所需要的矩阵。matlab 中
求解特征值和特征向量用到的函数为eig, 其常用的调用方式为:D=eig(A) 得到A 的特征向量
[V,D]=eig(A) 得到矩阵A 的特征值和特征向量
2.9.2 运行代码
A=[1 1 4;2 2 5;3 3 6]; %定义一个3x3的矩阵
[V,D]=eig(A) %返回矩阵A 的特征值和特征向量
2.9.3 运行结果
>> A=[1 1 4;2 2 5;3 3 6]; >> [V,D]=eig(A)
V =
0.3908 0.8637 0.7071 0.5605 0.2007 -0.7071 0.7302 -0.4623 -0.0000 D =
9.9083 0 0 0 -0.9083 0 0 0 -0.0000
2.9.4 题目总结
在matlab 中有很多很方便的函数帮助我们处理数据。我们要时常注意积累相关常用函数,这在以后的数据处理中会起很大作用。
2.10用FFT 直接计算
x=3sin(2*pi*30*t)+3cos(2*pi*140*t)+w(t)的功率谱。
2.10.1 理论分析
在此题中,其调用方法为X=FFT(x);X=FFT(x,N);x=IFFT(X);x=IFFT(X,N)做FFT 分析时,幅值大小与FFT 选择的点数有关,但不影响分析结果。在IFFT 时已经做了处理。要得到真实的振幅值的大小,只要得到的变换结果乘以2再除以N 即可。
2.10.2 程序代码
t=linspace(0,1,1000); %时间序列
w=randn(1,length(t)); %利用随机函数产生噪音信号 x=3*sin(2*pi*30*t)+3*cos(2*pi*140*t)+w;
%信号输入
y=fft(x,512); %对信号进行快速Fourier 变换 f=1000*(0:255)/512; %频率序列
p=y.*conj(y)/512; %求功率,conj()共轭 plot(f,p(1:256)0; %绘出功率谱图像
xlabel(‘频率/HZ’); ylabel(‘振幅’);title(‘功率谱’); %分别对X,Y, 轴及标题行标记
2.10.3 运行结果
如图2.10.3
2.10.4 题目总结
一般地,利用fft 只是对已有数据进行傅里叶变换,而具体应用到图画还要经过处理,如对已知数据x 进行fft 傅里叶变换只需运行:y=fft(x);做FFT 分析时,幅值大小与FFT 选择的点数有关,但不影响分析结果。在IFFT 时已经做了处理,要得到真实的振幅值的大小,只要将得到的变换后结果乘以2再除以N 即可。注意w=rands(1,N)为加入噪音信号。
功率谱
1000900
800700600
振幅
[**************]00
50
100
150
200
250300频率/HZ
350
400
450
500
图2.10.3
2.11在如图所示的一阶电路中,已知R=1Ω,L=1H,
u s 2=5V , u s 1=U s 1m cos(ωt ) V ,其中,U s 1m =4V , ω=2rad /s ,当
t=0时
开关S 由位置1合向位置2. 试求:电感电流的全响应,区分其暂态响应与稳态响应,并画出波形。电路如图2.11
图2.11
2.11.1 理论分析
电路中存在的暂态和稳态可以通过matlab 中的函数运算来简单表达。通过外界的输入信号,导入激励函数,再利用plot 函数得到波形图像,是计算结果更加快捷,图像表达更加清晰。
2.11.2 程序代码
R=1;L=1;T=L/R; %输入题目中的常量及基本公式 iL0=5; %t=0时的瞬时电流值 Us1m=4;w=2;ZL=w*L*j; %继续输入已知参数及公式 t=0:0.1:10; %确定时间t 变化的范围 Us1=Us1m*cos(w*t); %输入激励信号 iLp=Us1/(R+ZL); %稳态分量的计算公式
iLp0=Us1m/(R+ZL); %计算稳态分量在t=0时的值 iLh=(iL0-iLp0)*exp(-t/T); %暂态分量的计算公式
iL=iLp+iLh; %两者之和即为微分方程的总的解
plot(t,iL,'-',t,iLp,'-.',t,iLh,'--'); %分别绘制出iL 、iLp 、iLh 与t
的变化曲线,并以不同的线型表示
xlabel('t/s') ; %将x 轴标定为时间变量t ylabel('i/A') ; %将y 轴标定为电流变量i legend('iL','iLp','iLh',1) ; %用图例标注在右上角
2.11.3 运行结果
如图2.11.3所示
5
4
3
i /A
2
1
-10
1234
5t/s
678910
图2.11.3
2.11.4 题目总结
matlab中的变量与常量都是矩阵,其元素可以是复数和任意形式的表达式,它具有元素群运算能力。这些特点,利于分析电路的各种问题,并且简化编程。
3. 课程设计的心得体会
通过这次对Matlab 的学习,我对这个软件已有了初步的认识,了解了它的一些简单应用和基本函数。MATLAB 这款软件就像一个拥有强大功能的计算器,它几乎能满足所有计算需求。MATLAB 拥有600多个工程中要用到的数学运算函数,可以方便地实现用户所需的各种计算功能。在通常情况下,可以用它来代替底层编程语言,如C 和C++。在计算要求相同的情况下,使用MATLAB 的编程工程量会大大减少。在完成课设的过程中,我发现MATLAB 函数所能解决的问题包括矩阵运算和线性方程组的求解、微分方程及偏微分方程组的求解、符号运算、傅里叶变换和数据的统计分析、工程中的优化问题、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模仿真等。
而且在此次课设中发现MATLAB 软件绘图功能的强大,我深深感受到使用MATLAB 制图时的快捷与简便。例如使用plot 函数时,直接调用就可以得到figure1相应的图形,而且可以标注横纵坐标,标题以及曲线含义。MATLAB 绘图图像简洁清晰,操作方便快捷,是绘图时的好帮手。
在整个的设计过程中我了解到MATLAB 由一系列工具组成,这些工具方便用户使用MATLAB 的函数和文件,其中许多工具采用的是图形用户界面。包括MATLAB 桌面和命令窗口、历史命令窗口、编辑器和调试器等。
同时简单的编程环境提供了比较完备的调试程序,程序不必经过编译就可以直接运行,而且能够及时地报告出现的错误及进行出错原因分析,运行效率非常高。在做课设的时候我们根据参考书就可以知道怎么来编写程序,但如果书上所提到的函数或者是一些操作处理在实际的操作中还不是很理解的话,可以打开MATLAB 的help ,可以对我们起到一定的帮助。
此外,我学会了如何自我学习,如何去网上、书本上去寻找我所需要的东西,这次的课设不仅让我动了脑,也让我更好的动了手。学会了如何学习理论知识,并将它更好的应用于实践中!
4. 参考文献
[1] 唐向宏,岳恒立,郑雪峰. Matlab及在电子信息类课程中的应用[M].北
京:电子工业出版社,2009
[2] 朱习军, 张宾, 刘尊年, 隋思连.Matlab 信号与图像处理中的应用[M].北
京:电子工业出版社, 2009
[3] 王忠礼,段慧达,高玉峰. MATLAB 应用技术[M].北京:清华大学出版社, 2007
[4] John H.Mathews, Kurtis D.Fink著. 周璐,陈渝,钱方译. 数值方法
(MATLAB 版)(第四版)[M].北京:电子工业出版社,2010
[5] 张志涌.MATLAB 与仿真(2010a )[M].北京:北京航空航天大学出版社,
2010
19