数学软件 Matlab —— 矩阵运算
本讲主要内容 数组运算 函数的使用 变量的输入输出
本讲主要内容 数组运算 函数的使用 变量的输入输出
矩阵的数组运算 数组运算:对应元素进行运算 点与算术运算符之间不能有空格! 参与运算的对象必须具有相同的形状! 例: 数组运算包括:点乘、点除、点幂 相应的四个数组运算符为: .* ./ .\ .^ 点与算术运算符之间不能有空格! 参与运算的对象必须具有相同的形状! 例: A=[1,2,3; 4,5,6]; B=[3,2,1; 6,5,4]; C=A.*B D=A./B E=A.^B
本讲主要内容 数组运算 函数的使用 变量的输入输出
函数取值 函数作用在矩阵上的取值 f 作用在 x 的每个分量上! 设 x 是变量, f 是一个函数 例: 当 x = a 是标量时,f(x) = f(a) 也是一个标量 当 x = [x1, x2, … , xn ] 是向量时,则 f(x) = [ f(x1), f(x2), … , f(xn)] 是一个与 x 长度相同的向量 f 作用在 x 的每个分量上! 若 A 是矩阵,则 f (A) 是一个与 A 同形状的矩阵 例: x=[0:pi/4:pi]; A=[1,2,3; 4,5,6]; y1=sin(x) y2=exp(A) y3=sqrt(A)
Matlab中所有标点符号必须在英文状态下输入! 矩阵与数的运算 矩阵与数的运算 加减:矩阵的每个元素都与数作加减运算 数乘:矩阵的每个元素都与数作乘法运算 矩阵除以一个数:每个元素都除以这个数 数与矩阵的点幂运算:采用数组运算 例: x=[1 2 3]; x.^2=[1^2,2^2,3^2]=[1,4,9] 2.^x=[2^1,2^2,2^3]=[2,4,8] Matlab中所有标点符号必须在英文状态下输入!
常用数学函数 sin(x)、cos(x)、tan(x)、cot(x)、 sec(x)、csc(x)、sinh(x)、cosh(x)、tanh(x) ... asin(x)、acos(x)、atan(x)、acot(x)、 asec(x)、acsc(x) ... exp(x) % ex 自然指数 (以 e 为底) pow2(x) % 2x 以 2 为底的指数 log(x) % ln(x) 自然对数 (以 e 为底) log2(x) % 以 2 为底的对数 log10(x) % 以 10 为底的对数 sqrt(x) % 平方根 abs(x) % 绝对值
常用数学函数 conj(z) % 复数的共轭 real(z) % 复数的实部 imag(z) % 复数的虚部 angle(z) % 复数的辐角 sign(x) % 符号函数 round(x) % 取整函数 (四舍五入) fix(x)、floor(x)、ceil(x) % 另外三个取整函数 mod(x,y) % 计算 x 除以 y 的余数(结果与 y 同号) rem(x,y) % 计算 x 除以 y 的余数(结果与 x 同号) gcd(x,y) % 最大公约数 lcm(x,y) % 最小公倍数
常用数学函数 若参数 x 是矩阵,则作用在其各列上 更多数学函数,参见课程主页 linspace(a,b,n) % 生成 a 到 b,n 个数的等差数列 logspace(a,b,n) % 生成 10a 到 10b,n 个数的等比数列 max(x) % 求 向量 x 中的最大值 min(x) % 求最小值 mean(x) % 求平均值 sum(x) % 求和 sort(x) % 排序 det(A) % 矩阵行列式 inv(A) % 矩阵的逆 eig(A) % 矩阵的特征值 rank(A) % 矩阵的秩 若参数 x 是矩阵,则作用在其各列上 更多数学函数,参见课程主页
本讲主要内容 数组运算 函数的使用 变量的输入输出
Matlab 的输出格式 输出格式 Matlab 以双精度执行所有的运算,运算结果可以在屏幕上输出,同时赋给指定变量;若无指定变量,则系统会自动将结果赋给变量 “ans” 在屏幕上输出运算结果时,可以通过 format 命令指定输出格式 format 只改变输出格式,不会改变变量的值!
各种 format 格式 解释 例 format 短格式(缺省格式),同 short 3.1416 format short 短格式(缺省格式),小数点后 4 位 format long 长格式,双精度 15位,单精度 7位 3.14159265358979 format short e 短格式e方式(科学计数格式) 3.1416e+000 format long e 长格式e方式 3.141592653589793e+000 format short g 短格式g方式 format long g 长格式g方式 format rat 分数形式 355/113 format compact 压缩格式 format loose 自由格式 format +, format bank, format hex (详情查看联机帮助)
变量的存储 将变量保存到 mat 文件中 从 mat 文件中读取变量 例: save 将所有变量保存到文件 matlab.mat 中 save fname save fname.mat 将所有变量保存到文件 fname.mat 中 save fname 变量 将指定变量保存到文件 fname.mat 中 可同时保存多个变量,各变量之间用空格隔开 例: x=2:5; A=magic(3); a=2.4; save mydata A x; 从 mat 文件中读取变量 load fname 读取 fname.mat 中的所有变量 load fname 变量 从 fname.mat 中读取指定的变量
上机作业 教材P13的 第 1 题:如何用命令方式建立如下的矩阵?