02数值运算和符号运算解析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

例:>> x=[1,2,3];y=[2,3,4];
>> A=[x,y], B=[x;y]
常见矩阵生成函数
zeros(m,n) ones(m,n) eye(m,n) diag(X) tril(A) triu(A) rand(m,n) randn(m,n) 生成一个 m 行 n 列的零矩阵,m=n 时可简写为 zeros(n) 生成一个 m 行 n 列的元素全为 1 的矩阵, m=n 时可写为 ones(n) 生成一个主对角线全为 1 的 m 行 n 列矩阵, m=n 时可简写为 eye(n),即为 n 维单位矩阵 若 X 是矩阵,则 diag(X) 为 X 的主对角线向量 若 X 是向量,diag(X) 产生以 X 为主对角线的对角矩阵 提取一个矩阵的下三角部分 提取一个矩阵的上三角部分 产生 0~1 间均匀分布的随机矩阵 m=n 时简写为 rand(n) 产生均值为0,方差为1的标准正态分布随机矩阵 m=n 时简写为 randn(n)
矩阵操作
提取矩阵的部分元素: 冒号运算符

A(:) A的所有元素 A(:,:) 二维矩阵A的所有元素 A(:,k) A的第 k 列, A(k,:) A的第 k 行
A(k:m) A的第 k 到第 m 个元素 A(:,k:m) A的第 k 到第 m 列组成的子矩阵
自己动手
A(:) 与 A(:,:) 的区别 ? 如何获得由 A 的第一、三行和第一、二列组成的子矩阵?
复数作为矩阵元素输入时,加号两边不能有空格!
向量与矩阵运算
向量与矩阵的生成

向量的生成 直接输入: a=[1,2,3,4] 冒号运算符 从矩阵中抽取行或列
例:a=[1:4] ==> a=[1, 2, 3, 4]
b=[0:pi/3:pi] ==> b=[0, 1.0472, 2.0944, 3.1416] c=[6:-2:0] ==> c = [6, 4, 2, 0]
Matlab 符号运算特点
计算以推理方式进行,因此不受计算误差累积所带来的 困扰。 符号计算可以给出完全正确的封闭解,或任意精度的数 值解(封闭解不存在时)。 符号计算指令的调用比较简单,与数学教科书上的公式 相近。 符号计算所需的运行时间相对较长。
Matlab 符号运算举例
求一元二次方程 ax2 + bx + c = 0 的根
函数取值
函数作用在矩阵上的取值
设 x 是变量, f 是一个函数

当 x = a 是标量时,f(x) = f(a)也是一个标量
ቤተ መጻሕፍቲ ባይዱ
当 x = [a, b, … , c] 是向量时,f(x)= [f(a), f(b), … , f(c)]
f 作用在 x 的每个分量上

若 A 是矩阵,则 f(A) 是一个与 A 同形状的矩阵
矩阵的数组运算
数组运算:对应元素进行运算

数组运算包括:点乘、点除、点幂
相应的数组运算符为: “.* ” , “./ ” , “.\ ” 和 “ .^ ” 点与算术运算符之间不能有空格!
例:>> A=[1 2 3; 4 5 6]; B=[3 2 1; 6 5 4];
>> C=A.*B; D=A./B; E=A.\B; F=A.^B; 参与运算的对象必须具有相同的形状!
矩阵操作
矩阵的转置与共轭转置

’ 共轭转置 .’ 转置,矩阵元素不取共轭 点与单引号之间不能有空格!
例:>> A=[1 2;2i 3i]
>> B=A’ >> C=A.’
矩阵基本运算
矩阵的加减:对应分量进行运算
要求参与加减运算的矩阵具有 相同的维数
例:>> A=[1 2 3; 4 5 6]; B=[3 2 1; 6 5 4]
Matlab 数值运算
数学运算符

+ 加法 - 减法 * 乘法 \ 和 / 除法(左除和右除) ^ 幂运算
向量与矩阵运算
向量与矩阵的生成(续)

矩阵的生成 直接输入: A=[1, 2, 3; 4, 5, 6; 7, 8, 9] 由向量生成 通过编写m文件生成 由函数生成
数与数组的点幂
例:x=[1 2 3]; y=[4 5 6];
x.^y =[1^4,2^5,3^6]=[1,32,729]
x.^2 =[1^2,2^2,3^2]=[1,4,9]
Matlab中的所有 标点符号必须在 英文状态下输入
Matlab 符号运算
Matlab 符号运算介绍
Matlab 符号运算是通过符号数学工具箱(Symbolic Math Toolbox)来实现的。Matlab 符号数学工具箱是建立在功能 强大的 Maple 软件的基础上的,当 Matlab 进行符号运算时, 它就请求 Maple 软件去计算并将结果返回给 Matlab。 Matlab 的符号数学工具箱可以完成几乎所有的符号运算 功能。主要包括:符号表达式的运算,符号表达式的复合、 化简,符号矩阵的运算,符号微积分、符号作图,符号代 数方程求解,符号微分方程求解等。此外,该工具箱还支 持可变精度运算,即支持以指定的精度返回结果。
>> C=A+B; D=A-B;
矩阵的普通乘法
要求参与运算的矩阵满足线性代数中矩阵相乘的原则
例:>> A=[1 2 3; 4 5 6]; B=[2 1; 3 4];
>> C=A*B
矩阵基本运算
矩阵的除法:/、\ 右除和左除
若 A 可逆方阵,则 B/A <==> A 的逆右乘 B <==> B*inv(A) A\B <==> A 的逆左乘 B <==> inv(A)*B 通常,矩阵除法可以理解为 X=A\B <==> A*X=B X=B/A <==> X*A=B 当 A 和 B 行数相等时即可进行左除 当 A 和 B 列数相等时即可进行右除
数学建模
Matlab数值运算 和符号运算
Matlab 数值运算
Matlab 数值运算
数与算术表达式

Matlab 中的数默认是双精度实数,表示方法同 C 语言 3, -9, 0.4, 1.603e-12, 3.23e+20

复数的输入 z=3+4i (4 与 i 之间不能有空格) z=3+4*i
相关文档
最新文档