第三章 matlab程序设计
- 格式:ppt
- 大小:319.00 KB
- 文档页数:57


实验三 M 文件及 MATLAB 程序设计与调试
一、实验目的
全面掌握在 MATLAB 下进行程序设计的有关问题,具体涉及到 M 脚本文件和 M 函数文件的编写、全局和局部变量的使用、流程控制结构、提高程序执行效率的设计技术、程序调试等问题。
二、实验内容
1、关于 M 脚本文件和 M 函数文件
MATLAB 的 M 文件有两类:脚本文件和函数文件。
(1)脚本文件——将原本要在 MATLAB 的指令窗口中直接输入的语句,放在一个以.m 为后缀的,称为脚本文件中。有了脚本文件,可直接在 MATLAB 中输入脚本文件名(不含后缀)。MATLAB 会打开这一脚本文件,并依次执行脚本文件中的每一条语句,这与在
MATLAB 中直接输入语句的结果完全一致。
(2)函数文件——它的第一行必须是函数定义行。
M 函数文件由 5 部分构成:
◆ 函数定义行
◆ H1 行
◆ 函数帮助文本
◆ 函数体
◆ 注释
注意:在函数文件中,除了函数定义行之外,其它部分都是可以省略的。但作为一个函数,为了提高函数的可用性,应加上 H1 行和函数帮助文本,为了提高函数的可读性,应加上适当的注释。
例如:
function y = mean(x)
% MEAN Average or mean value.
% For vectors, MEAN(X) is the mean value of the elements in X.
% For matrices, MEAN(X) is a row vector containing the mean value of each column.
[m,n]=size(x);
if m==1
% Determine whether x is a vector
m=n;
end
y = sum(x)/m;
① 函数定义行:function y = mean(x) function 为函数定义的关键字,mean 为函数名,y 为输出变量,x 为输入变量当函数具有多个输出变量时,则以方括号括起;当函数具有多个输入变量时,则直接用圆括号括起。
- 1 - matlab程序设计与应用
Matlab是一款高效能的编程语言,具有高品质的计算和分析功能,近十多年来被广泛应用在工程计算、科学研究、商业分析、金融模拟和教育工作等多个领域。它拥有一系列强大的算法编写功能,可以实现非线性矩阵求解、信号处理、图像处理、生物医学信号处理等功能。
本文将介绍Matlab程序设计与应用,以及它在工程计算、科学研究、商业分析等领域的应用和示例。
一、Matlab程序设计
Matlab是一种操作方便的高级编程语言,立足于原始编码,它建立在C及FORTRAN之上,而且它的高级结构使得设计程序不必写成复杂的程序框架,而可以把主要精力放在要实现的功能上。Matlab在程序设计方面支持面向对象编程(Object-oriented programming,OOP)方式,可以实现结构化的程序设计,把大量的程序按照模块和函数来管理,方便调用和重用,并可以利用Matlab的类和类的方法来实现程序的重用和拓展。
二、Matlab在工程计算领域的应用
Matlab在工程计算领域的应用如下:
(1)Matlab可以用于科学计算,如:数值分析、科学计算、多元函数拟合、图像处理以及信号处理等。
(2)Matlab可以用于设计和调试电子电路,如:数字电路、模拟电路、射频电路、功率电路以及控制电路等。 - 2 - (3)Matlab可以用于控制系统分析,如:数模转换、频响函数以及过程控制等。
(4)Matlab可以用于机械结构设计,如:机械结构分析、运动学以及动力学等。
三、Matlab在科学研究和商业分析领域的应用
Matlab在科学研究和商业分析领域的应用如下:
(1)Matlab可以用于统计学研究,如:概率统计、偏差分析、多元分析以及非参数分析等。
(2)Matlab可以用于数据挖掘,如:决策树分类、聚类分析以及因子分析等。
matlab程序设计与应用第3版pdf版
引言概述:
《MATLAB程序设计与应用第3版》是一本经典的MATLAB编程教材,它提供了广泛的知识和技巧,帮助读者掌握MATLAB的应用。本文将从五个大点出发,详细阐述该书的内容,包括基础知识、数据处理、图形绘制、符号计算和应用实例。
正文内容:
1. 基础知识
1.1 MATLAB环境介绍:介绍MATLAB的工作环境和基本操作,包括命令窗口、编辑器、变量和函数的定义等。
1.2 数据类型和运算:详细介绍MATLAB中的数据类型,如标量、向量、矩阵和结构体等,以及常用的运算符和函数。
1.3 控制流程:讲解MATLAB中的条件语句、循环语句和函数的定义与调用,帮助读者掌握程序的流程控制。
1.4 文件与数据的输入输出:介绍如何读写文件和处理各种数据格式,如文本文件、Excel文件和图像文件等。
1.5 调试与性能优化:提供调试MATLAB程序的技巧和方法,并介绍如何优化程序的性能,提高代码的运行效率。
2. 数据处理
2.1 数据导入与清洗:介绍如何导入外部数据,并对数据进行清洗和预处理,包括数据类型转换、缺失值处理和异常值检测等。 2.2 数据可视化:讲解如何使用MATLAB的绘图函数绘制各种类型的图表,如折线图、散点图、柱状图和饼图等,以及如何添加标签和注释。
2.3 数据分析与统计:介绍常用的数据分析和统计方法,如描述统计、假设检验、回归分析和聚类分析等,以及MATLAB中相应的函数和工具箱的使用。
2.4 信号处理:介绍信号处理的基本概念和方法,包括时域分析、频域分析和滤波器设计等,以及MATLAB中相关的函数和工具箱。
2.5 机器学习与数据挖掘:简要介绍机器学习和数据挖掘的基本原理和方法,并介绍MATLAB中的机器学习工具箱和数据挖掘工具箱的使用。
3. 图形绘制
3.1 2D图形绘制:详细介绍绘制2D图形的方法和技巧,包括曲线绘制、图形样式设置和图形的保存等。
NIND=200;
MAXGEN=2000;
NVAR=55;
max=5000000;
P=0.3;
M=3;
N=5;
L=7;
A=[313000000 378000000 465000000] ;
M=[20000 10000 30000 40000 40000] ;
D=[165 150 200 100 150 300 200] ;
f=[6000000;4000000;6000000;700000;5000000] ;
V=[80;80;90;955;100] ;
a=[15;20;24;20;15;20;20;15;20;24;20;15;24;20;15] ;
C=[20;15;15;20;15;20;15;20;25;20;25;15;15;15;15;15;15;20;20;25;20;30;20;20;20;20;25;20;20;15;15;15;20;20;20;20] ;
P=3;
for i=l:NIND
while 0<1
for j=1:5
chroml(i,j)=round(rand(i)) ;
end
if(sum(chroml(i,:),3)>=1)&(sum(chroml(i,:) ,3)<=P)
break
end
end
end
sumb=zeros(NIND,5) ;
sumd=zeros(NIND,5);
for i=l:NIND
for j=l:5
if chrom1(i,j)=0
chrom3(i,(2*(j-1)+1):(3*j))=0;
chrom3(i, (7*(j-l)+1):(8*j))=0;
else
while chroml(i,j)=l chrom3(i,(3*(j-1)+1):(3*j)=rand(i,3).* min(A[M(j)M(j)]);
sumb(i,j)=sum(chrom3(i,(3*(j-l)+1):(3*j)),3);