matlab_learning
我的matlab学习
第一章 基础
1.1 变量与函数
1.2.1 变量
特殊变量表
特殊变量
取值
ans
用于结果缺省的变量名
pi
圆周率
eps
计算机的最小数
inf
无穷大,如1/0
NaN
不定量,如0/0
i,j
i=j=
realmin
最小可用正实数(2.2251e-308)
realmax
最大可用正实数(1.7977e+308)
1.2.2 数学运算及标点符号
符号
说明
+ - *
基本运算
a/b
a\b
.*
点乘
./
点除
a^b
%
注释
...
续行
1.2.3 数学函数
sin(x), cos(x),tan(x),绝对值 abs(x), min(x),开平方 sqet(x),自然对数 log(x), 符号函数 sign(x), 反正弦asin(x),acos(x), atan(x), max(x), 元素总和 sum(x), exp(x),以10为底的对数log10(x), 取整 fix(x).
1.2.4 函数m文件
function 因变量名=函数名(自变量名)
注意
函数m的文件名必须与函数名相同
脚本m文件没有输入与输出参数,函数文件m有输入和输出参数.对函数进行调用时,可以少于或等于m规定的输入输出文件变量数.
脚本m运行产生的所有变量是局部变量,函数m是全局变量.
1.3 数组
1.3.1 数组的建立
命令
说明
x = [a b c d e f]
创建包含指定元素的行向量
x = a:b
创建由a到b(含a,b)的行向量
x = first:increment:last
由first到last,步长为increment
linspace(first, last, n)
创建由first开始,到last结束的n个元素的行向量
1.3.2 数组元素的访问
直接访问x(i),x的第i个元素(从1开始数)
x(a:b:c)表示访问从a开始,以步长为b到第c个元素(含c),b可以为负数,缺省时为1.
x([a b c d])表示提取数组的第a,b,c,d 个元素生成一个新的数组[x(a),x(b),x(c),x(d)]如
x = [11,22,33,44,55]
x([2,4,3])
output
ans =
22 44 33
1.3.3 数组的方向
产生列向量的方法,直接生成或转置
c = [1;2;3;4]
c =
1
2
3
4
或者
a = [1,2,3],b = a'
output
a =
1 2 3
b =
1
2
3
1.3.4 数组的运算
(1)标量-数组运算
设 a = [a1,a2,...,an],c为一标量
a+c = [a1+c,a2+c,...,an+c]
a*c = [a1*c,...,an*c]
a./c = [a1/c,...,an/c](右除)
a.\c = [c/a1,...,c/an](左除)
a.^c = [a1^c,...,an^c]
c.^a = [c^a1,...,c^an]
(2)数组-数组运算
若两个数组有相同维数,则对每一个元素运算
1.4 matlab 程序设计
1.4.1 关系与逻辑运算
~= 不等于
& 与
| 或
~ 非
1.4.2 控制流
1.for
一般形式
for x = array
{commands}
end
注意:
for不能对内部变量重新赋值;for循环接受任何有效的MATLAB数组;
for循环可以按需嵌套;
为提高运算速度,能用其他方法解决不用for,必须用for时需要预先分配数组
2.while
while(expression)
{commands}
end