您的位置:首页 > 编程语言 > MATLAB

MATLAB学习笔记——入门篇

2016-03-11 21:13 295 查看
最近决定系统性的学习一下MATLAB。虽然以前接触过很多次,也用过不少。但每次都是现学现用,从没有系统性学习。导致知识太过离散。以后坚持学习,每天写博客~

保证知识的系统性很重要!!(所用学习环境为R2015b)

1.常用命令:help, clc, clear, exist, demo, which, what 等,一定要多用help命令,很好用

2.区分数组运算和矩阵运算。MATLAB里面,一维数组类似于C语言里面的数组,二位数组叫做矩阵。矩阵是数组的一种特例。数组运算实际上就是数字与数字之间单独拿出来的运算。而矩阵运算就是线性代数里面提及的乘法,除法,幂等。数组运算加一个"."以区分。

3.逻辑运算。

和:A&C
或:A|C 非:~A(matlab里面,不等号表示为:~=)
异或:xor(A,C)。异或运算表示相异为1,相同为0

4.比较运算

find()函数:寻找满足括号内条件的值,并且返回一个行向量,行向量存储着满足条件的值的序号。如果返回参数是两个,那么这两个值表示元素对应所在的行和列(注意:matlab是按列索引的)

all()函数:对每一列的元素进行一个个代入,看是否满足括号内的条件。如果某一列均满足,则返回1,否则返回0。因此,如果输入一个矩阵或者行向量,将返回一个行向量。

any()函数:对于某一列存在某个元素满足条件,则返回1。同上,该函数返回一个行向量,该向量由0,1组成

5.符号运算

定义符号变量的方式:syms a;

matlab的符号运算功能可以使其进行一些公式推导,证明。但是因为博主所以版本为R2008b之后的版本,该版本之后的符号运算部分由maple换成了nupad。符号运算能力减弱不少。

比如simple()函数(用于化简多项式), sincos()函数(用于三角函数化简)用不了

其他函数比如factor()可以用于做因式分解,质因数分解。

expand()可以展开多项式,collect()可以合并同类项。

6.变量替换

f = subs(f, {被替换参数列表},{替换参数列表})

替换参数列表如果是常数的话,相当于函数求值。

例如:

>>symsa
b c d t; % 假设这些变量均为符号变量

>>f=cos(a*t+b)+sin(c*t)*sin(d*t);
% 定义给定函数f(t)

>>f1=subs(f,{a,b,c,d,t},{0.5*pi,pi,0.25*pi,0.125*pi,4})

f1=

-1.0000
7.基本数论运算

下取整floor()、上取整ceil()、四舍五入round()、离0近方向取整fix()、最简有理数rat()、求模的余数rem()、最大公约数gcd()、最小公倍数lcm()、质因数分解factor()、判定是否为质数isprime.

例如:

A = 1 : 100;

isprime(A)输出一个行向量,由0,1组成。1表示对应位置为质数,否则为合数

A(isprime(A))输出A中所有的质数

8.MATLAB语言流程控制

循环结构:for end while() end

转移结构:if else end

开关结构:

switch()

case,

...

case,

...

otherwise

...

end

试探结构:

try

catch

类似于C++的异常处理
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: