-
在MATLAB中,使用-qndiag代码实现以主对角线为对称矩阵的联合对角化的拟牛顿算法
资源介绍
以主对角线为对称矩阵MATLAB代码联合对角化的拟牛顿算法
文件和网站
有关文档和示例,请参见此处:
概括
该Python软件包包含用于对一组正定对称矩阵进行快速对角对角化的代码。
主要功能是qndiag
,它以一组大小为(p,
p)的矩阵作为输入,并存储为(n,
p,
p)数组C
它输出一个(p,
p)数组B
,这样矩阵B
@
C[i]
@
BT
(python),即B
*
C(i,:,:)
*
B'
(matlab
/
octave)为对角线尽可能。
安装Python包
要安装该软件包,只需执行以下操作:
$
pip
install
qndiag
您也可以简单地克隆它,然后执行以下操作:
$
pip
install
-e
.
要检查一切是否正常,该命令
$
python
-c
'import
qndiag'
不应返回任何错误。
与Python搭配使用
这是一个玩具示例(也可以在examples/toy_example.py
)
import
numpy
as
np
from
qndiag
import
qndiag
n
,
p
=
10
,
3
diagonals
=
np
.
r