chenboshuo / learn_matlab

我的matlab学习

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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_.m

注意:

for不能对内部变量重新赋值;for循环接受任何有效的MATLAB数组;

for循环可以按需嵌套;

为提高运算速度,能用其他方法解决不用for,必须用for时需要预先分配数组

2.while

while(expression)
  {commands}
end

About

我的matlab学习


Languages

Language:HTML 83.6%Language:MATLAB 8.5%Language:Jupyter Notebook 7.8%Language:M 0.1%