Matlab编程笔记
本文最后更新于:2024年8月12日 上午
Matlab基础操作
一、如何运行一个程序
1.如果程序中有function,但没有输入与输出的,直接保存,注意保存文件名必须和函数名相同,保存后在运行即可;
2.无function,有%%分节符的,在选定之后可以直接Ctrl+Enter,即可运行;
3.function程序有输入但没有输出时,此时只可调用。
二、使用过程中要灵活使用帮助
函数有自定义函数(function),以及内置函数,而对于内置函数,可以在命令行中输入:doc 内置函数名
例如:
1 | doc plot |
再按Enter回车即可出现函数的详细使用页面,也就是帮助页面。碰到问题上网百度也可以。
Matlab核心操作一:矩阵操作
Matlab中的数据一般为:数组、向量、表格、矩阵。文件中,程序首行常常输入:
1 | clear;clc;close all; |
来分别清空工作区中的变量,清空命令行窗口的命令和关闭所有图形。同时在Matlab程序中,有时候语句代码句尾加”;”,表示在命令窗口中不显示输出结果,而不加”;”,则会在命令窗口中显示输出结果。
一、输入矩阵
输入矩阵可以用直接输入法,例如:
1 | A=[x,x,····] %x为变量 |
也可以用生成矩阵法,例如:
1 | A=zeros(5,5) %zeros为内置函数,用于生成零矩阵 |
二、矩阵的运算
1.矩阵运算符 .* 代表矩阵中对应的元素相乘;
2.矩阵运算符 * 代表按照矩阵的乘法规则相乘;
3.同理 .^ , ^ , ./ , / , + ,- ,\ , 运算符号运算类似。(即加 . 的是对应元素进行运算,没加的就是按照数学上的矩阵运算)
三、矩阵的一些常用操作
矩阵中的end,代表最后一个的意思,例如:
1 | A(end,3) %表示矩阵A中最后一行第三列中的元素 |
矩阵中的 : ,代表三种意思,首先是代表“所有”的意思,例如:
1 | A(:,1) %表示所有的行第一列,也就是第一列的元素 |
特别的,例如:
1 | A(:,:) %表示A矩阵本身 |
其次是代表“到”的意思,例如:
1 | 1:3 %表示[1,2,3]一个行向量的意思,注意[1 2 3]与[1,2,3]都代表一个行向量的意思 |
最后是代表“生成等差数列”的意思,例如:
1 | 1:3:10 %表示[1,4,7,10],即1为初始值,3作为步长(公差),10代表最后一个数不超过的值 |
再举一个综合的例子:
1 | A(1:3:10,3:6) %表示矩阵A中的第1,4,7,10行第3,4,5,6列的值 |
Matlab核心操作二:编程命令
一、条件语句
代码案例1:
1 | if 条件 |
代码举例2如下:
1 | if 条件1 |
二、循环语句
代码案例1:
1 | for 循环变量=[数组] |
循环语句中可以使用break,来跳出当前循环,使用continue,来进行下一轮循环。
代码案例2:
1 | try |
其他的编程命令,则是由这些基本命令的组合,多去看,多思考即可明白
Matlab函数操作
1.脚本文件代码中无function,对于脚本文件命名不要使用纯数字,有时候会对仿真结果造成影响;
2.函数文件代码中有function,且第一个不被注释的行就有function,注意函数文件名和函数名要相同,其次函数定义文件和函数调用文件(脚本文件、命令窗口)要在同一个目录。
3.定义函数时,有一些方便的命令,例如:
1 | varargin %表示可以输入多个输入参数 |
这些都可以使用帮助页面进行了解。下面就例举一些代码来帮助理解。
代码举例1:
1 | function [x,y]=f(a,b) %此为两个输入,两个输出的形式 |
代码举例2:
1 | function varargout=sum(varargin) |
4.一种特殊函数:匿名函数(句柄函数),表示函数无函数名,函数名由@代替。
代码举例1:
1 | f=@(x) x.^2+3*x+5; %f就相当于函数名称,相当于代表该函数的地址 |
代码举例2:
1 | f=@sin; %相当于将内置函数sin的地址给f |