MATLAB的计算机辅助分析设计及仿真
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4 流程控制结构
循环语句、条件语句、开关语句的结构
条件转移结构
if 条件式 条件块语句组1
else 条件块语句组2
end
if 条件式1 条件块语句组1
elseif 条件式2 条件块语句组2 :
else 条件块语句组n+1
end
开关语句switch…case
5 Matlab函数编写
M函数的基本结构
第一部分数字仿真实验
Matlab的工作空间 命令是用命令行形式或m文件形式输入,那么输入的 命令和创建的所有变量值,就会驻留在Matlab的工作 空间,可在任何需要的时候调用。
工作空间管理命令:who, whos, clear
实验 1 Matlab概述
关于变量和函数命名
一般为双精度浮点,8个字节(64位), -1.7*10308—1.7*10308, 表示为 Double( )
3 矩阵的Matlab表示
访问矩阵的元素
>>A=[1,2,3;4,5,6;7,8,9]
>>A(1,:) >>A(2,1:3) >>A(1:3,1) >>A(2,2)=1;
>>zeros(2,2) >>ones(3,1) >>eye(4)
3 矩阵运算
矩阵转置,加、减、乘,除 >>B=A ‘ >> C=A+B; >> D=A*B >>inv(A) >> A\B 左乘,当A为非奇异方阵时=inv(A)*B >> B/A 右乘,当A为非奇异方阵时=B*inv(A)
>> ptest
应用c语言按照Mex技术要求的格式编写相应部分的程序,通过编 译连接,形成Matlab可以直接调用的动态连接库,显著加快运算
顺速序度为。: (1)检查是否为工作空间中的变量 (2)检查是否为内置函数 (3)检查MEX文件ptest.mex是否存在于当间目录 (4)检查M文件ptest.m是否为存在于当间目录 (5)按次序搜索已设置的路径。检查ptest.mex或ptest.m是
注释和标点
一行中,% 后面的所有文字都是注释
多条命令可以放在同一行,只要它们被逗号或分号隔开,分号禁 止显示。连续三个点 … 表示语句的余下部分将在下行出现,变 量名不能分开,注释行不能续行。
2 Matlab的基本特性
Matlab的搜索路径
当你在命令行输入一个字符串(可能是变量或命令), 回车后,Matlab按一定的顺序执行。例如
第一部分数字仿真实验
实验 1 Matlab概述
1 Matlab语言的基本使用环境 命令子窗(command window) 程序调用版(Launch Pad) 命令的历史记录(Command History) 工作空间管理程序(Workspace) 当前目录管理程序(Current Directory)
否为存在于matlab的搜索路径中。
Matlab的三种执行方式
M 文件和M函数
1 脚本文件 (批处理文件) 启动M文件编辑器
b=[1;2;3]; A=[1 2 3;4 5 6;7 8 9]; Inv(A)*b;
脚本文件空间与Matlab工作空间是相同的。
Matlab的三种执行方式
M 文件和M函数
2 M函数 function s=example2(A,b) % 求解线性方程组As=b的解s if det(A)~=0
s=inv(A)*b else
error(‘A 是一个奇异矩阵’) end ;
保存文件时,文件名和函数名必须相同。
>> s=example2(AΒιβλιοθήκη Baidub)
Matlab的三种执行方式
m函数有自己专用的工作空间,函数内部变量与matlab工作空间 之间的唯一联系是函数的输入和输出变量。
判断i是否在s1,s2之间
4 流程控制结构
循环语句、条件语句、开关语句的结构
条件转移结构
if 逻辑变量 条件块语句组
end
while…end
当逻辑变量为非零,则执行条件块语句组的内容,执行完后继续向下 执行;若逻辑变量为零,则跳过条件块语句组直接向下执行
>>msum=0; i=1; while (i<=100), msum=msum+i; i=i+1; end;
点运算 >> C=A.*B 矩阵对应元素之间的乘积
4 流程控制结构
循环语句、条件语句、开关语句的结构
循环结构
for …end while…end
for 循环变量=Vect 循环体语句组
end
通常使用的循环格式为 for i=s1:s3:s2
>>msum=0; for i=1:1:100,
msum=msum+i; end; msum
function [返回变量列表]=函数名(输入变量列表) 注释说明语句段 由%引导 输入、返回变量格式的检测 函数体语句
>>x=[1, pi, 0.1 0.5 ] >> cos(x)
>>sum(x) >>t=0:0.1:10
Matlab的矩阵运算
Matlab的矩阵运算 >>A=[1,2,3;4,5,6;7,8,9] >>A=[A;[1 2 4]]
冒号表达式给行向量赋值 >>b=s1:s2:s3
x=(first:last) x=(first:increment:last) x=linspace(first,last,n) x=logspace(first,last,n)
图象处理中:无符号8 位整型, 表示为 unit8( ), int8( )
变量(函数名)由字母引导,可跟字母、数字、下 化线等,不超过19个字符。区分大小写 支持复数向量、矩阵和字符串型矩阵。
2 Matlab的基本特性
特定常数 eps 浮点运算误差=2.2204*10-16 j, i 纯虚数 Inf 无穷大 NaN 不定式 pi 圆周率 ans 用于返回结果的缺省变量名 nargin 所用函数的输入变量 nargout 所用函数的输出变量
函数调用语句
[返回变量列表]=函数名(变量列表) 例如: [v,d]=eig(A)
Matlab的全局变量,函数与其他函数、matlab工作 空间共享变量。说明变量全局共享的方法是 “global 变量名”
Matlab里的函数(内置) Ones(2,2), eye(3) length(A),size(A),sum(A),max(A) rank det log10,log log,sin cos tan