矩阵和向量的特征
下面几种方法可用于获取矩阵的主要特征:
- Rows, Cols:矩阵中的行数和列数。
- Norm:预定义矩阵范数之一 (ENUM_MATRIX_NORM)
- Cond:矩阵的条件数
- Det:方形非退化矩阵的行列式
- SLogDet:计算矩阵行列式的符号和算法
- Rank:矩阵的秩
- Trace:矩阵对角线的元素总和(迹)
- Spectrum:矩阵谱(作为其本征值的集合)
此外,为向量定义了以下特征:
- Size:向量的长度
- Norm:预定义向量范数之一 (ENUM_VECTOR_NORM)
对象大小(以及其中元素的索引)使用 ulong 类型的值。
ulong matrix<T>::Rows()
ulong matrix<T>::Cols()
ulong vector<T>::Size()
大部分其它特征为实数。
double vector<T>::Norm(const ENUM_VECTOR_NORM norm, const int norm_p = 2)
double matrix<T>::Norm(const ENUM_MATRIX_NORM norm)
double matrix<T>::Cond(const ENUM_MATRIX_NORM norm)
double matrix<T>::Det()
double matrix<T>::SLogDet(int &sign)
double matrix<T>::Trace()
秩和谱分别为整数和向量。
int matrix<T>::Rank()
vector matrix<T>::Spectrum()
矩阵秩计算示例:
matrix a = matrix::Eye(4, 4);
|
下面是脚本执行结果:
matrix a (eye)
|