第3章MATLAB矩阵分析与处理 3.1特殊矩阵 3.2矩阵结构变换 3.3矩阵求逆与线性方程组求解 3.4矩阵求值 3.5矩阵的特征值与特征向量 3.6矩阵的超越函数
第3章 MATLAB矩阵分析与处理 3.1 特殊矩阵 3.2 矩阵结构变换 3.3 矩阵求逆与线性方程组求解 3.4 矩阵求值 3.5 矩阵的特征值与特征向量 3.6 矩阵的超越函数
3.1特殊矩阵 3.1.1通用的特殊矩阵 常用的产生通用特殊矩阵的函数有: zeros::产生全0矩阵(零矩阵)。 ones:产生全1矩阵(么矩阵) eye:产生单位矩阵。 rand:产生0~1间均匀分布的随机矩阵。 randn:产生均值为0,方差为l的标准正态 分布随机矩阵
3.1 特殊矩阵 3.1.1 通用的特殊矩阵 常用的产生通用特殊矩阵的函数有: zeros:产生全0矩阵(零矩阵)。 ones:产生全1矩阵(幺矩阵)。 eye:产生单位矩阵。 rand:产生0~1间均匀分布的随机矩阵。 randn:产生均值为0,方差为1的标准正态 分布随机矩阵
例3.1分别建立3×3、3×2和与矩阵A同样大小的零 矩阵。 (1)建立一个3×3零矩阵。 zeros(3) (2)建立一个3×2零矩阵。 zeros(3,2) (3)设A为2X3矩阵,则可以用zeros(siz(A)建立 一个与矩阵A同样大小零矩阵。 A=123;456];%产生一个2×3阶矩阵A zeros(size(A)) %产生一个与矩阵A同样大小的 零矩阵
例3.1 分别建立3×3、3×2和与矩阵A同样大小的零 矩阵。 (1) 建立一个3×3零矩阵。 zeros(3) (2) 建立一个3×2零矩阵。 zeros(3,2) (3) 设A为2×3矩阵,则可以用zeros(size(A))建立 一个与矩阵A同样大小零矩阵。 A=[1 2 3;4 5 6]; %产生一个2×3阶矩阵A zeros(size(A)) %产生一个与矩阵A同样大小的 零矩阵
例3.2建立随机矩阵: (1)在区间20,50]内均匀分布的5阶随机矩阵。 (2)均值为0.6、方差为0.1的5阶正态分布随机矩阵。 命令如下: x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 此外,常用的函数还有reshape(A,m,n),它在矩 阵总元素保持不变的前提下,将矩阵A重新排成 mXn的二维矩阵
例3.2 建立随机矩阵: (1) 在区间[20,50]内均匀分布的5阶随机矩阵。 (2) 均值为0.6、方差为0.1的5阶正态分布随机矩阵。 命令如下: x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 此外,常用的函数还有reshape(A,m,n),它在矩 阵总元素保持不变的前提下,将矩阵A重新排成 m×n的二维矩阵
例3.2建立随机矩阵: (1)在区间[20,50]内均匀分布的5阶随机矩阵。 (2)均值为0.6、方差为0.1的5阶正态分布随机矩阵。 命令如下: x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 此外,常用的函数还有reshape(A,m,n),它在矩 阵总元素保持不变的前提下,将矩阵A重新排成 mXn的二维矩阵
例3.2 建立随机矩阵: (1) 在区间[20,50]内均匀分布的5阶随机矩阵。 (2) 均值为0.6、方差为0.1的5阶正态分布随机矩阵。 命令如下: x=20+(50-20)*rand(5) y=0.6+sqrt(0.1)*randn(5) 此外,常用的函数还有reshape(A,m,n),它在矩 阵总元素保持不变的前提下,将矩阵A重新排成 m×n的二维矩阵
3.1.2用于专门学科的特殊矩阵 (1)魔方矩阵 魔方矩阵有一个有趣的性质,其每行、每 列及两条对角线上的元素和都相等。对于n 阶魔方阵,其元素由1,2,3,.,n2共n2个整数 组成。MATLAB提供了求魔方矩阵的函数 magic((n),其功能是生成一个n阶魔方阵
3.1.2 用于专门学科的特殊矩阵 (1) 魔方矩阵 魔方矩阵有一个有趣的性质,其每行、每 列及两条对角线上的元素和都相等。对于n 阶魔方阵,其元素由1,2,3,…,n2共n2个整数 组成。MATLAB提供了求魔方矩阵的函数 magic(n),其功能是生成一个n阶魔方阵
例3.3将101~125等25个数填入一个5行5列的 表格中,使其每行每列及对角线的和均为 565。 M=100+magic(5)
例3.3 将101~125等25个数填入一个5行5列的 表格中,使其每行每列及对角线的和均为 565。 M=100+magic(5)
2)范得蒙矩阵 范得蒙(Vandermonde)矩阵最后一列全为l, 倒数第二列为一个指定的向量,其他各列 是其后列与倒数第二列的点乘积。可以用 一个指定向量生成一个范得蒙矩阵。在 MATLAB中,函数vander(V生成以向量V 为基础向量的范得蒙矩阵。例如, A=vander(1;2;3,5])即可得到上述范得蒙矩 阵
(2) 范得蒙矩阵 范得蒙(Vandermonde)矩阵最后一列全为1, 倒数第二列为一个指定的向量,其他各列 是其后列与倒数第二列的点乘积。可以用 一个指定向量生成一个范得蒙矩阵。在 MATLAB中,函数vander(V)生成以向量V 为基础向量的范得蒙矩阵。例如, A=vander([1;2;3;5])即可得到上述范得蒙矩 阵
3)希尔伯特矩阵 在MATLAB中,生成希尔伯特矩阵的函数 是hilb(n). 使用一般方法求逆会因为原始数据的微小 扰动而产生不可靠的计算结果。MATLAB 中,有一个专门求希尔伯特矩阵的逆的函 数invhilb(n),其功能是求n阶的希尔伯特矩 阵的逆矩阵
(3) 希尔伯特矩阵 在MATLAB中,生成希尔伯特矩阵的函数 是hilb(n)。 使用一般方法求逆会因为原始数据的微小 扰动而产生不可靠的计算结果。MATLAB 中,有一个专门求希尔伯特矩阵的逆的函 数invhilb(n),其功能是求n阶的希尔伯特矩 阵的逆矩阵
例3.4求4阶希尔伯特矩阵及其逆矩阵。 命令如下: format rat %以有理形式输出 H=hilb(4) H=invhilb(4)
例3.4 求4阶希尔伯特矩阵及其逆矩阵。 命令如下: format rat %以有理形式输出 H=hilb(4) H=invhilb(4)