密集和带状反对称矩阵的Pfaffian高效数值计算
Efficient numerical computation of the Pfaffian for dense and banded skew-symmetric matrices
AI总结:
提出基于Gauss变换和酉变换的数值方法,将反对称矩阵化为三对角形式以高效计算Pfaffian,并给出Fortran、Python、Matlab和Mathematica实现,应用于D类纳米线拓扑电荷计算。
摘要:
计算反对称矩阵的Pfaffian是物理学各个领域中出现的问题。计算Pfaffian以及相关问题——在酉共轭下计算反对称矩阵的规范形式——一旦反对称矩阵被约化为反对称三对角形式,就可以轻松解决。我们开发了基于Gauss变换(使用反对称分块形式的Parlett-Reid算法)或基于酉变换(使用分块Householder变换和Givens旋转)的高效数值方法来计算这种三对角形式,分别适用于密集矩阵和带状矩阵。我们还提供了这些算法的完整且完全优化的Fortran实现,并为了方便提供了Python、Matlab和Mathematica实现。最后,我们将这些方法应用于计算D类纳米线的拓扑电荷,并数值证明了基于哈密顿量和散射矩阵的定义的等价性。
英文摘要:
Computing the Pfaffian of a skew-symmetric matrix is a problem that arises in various fields of physics. Both computing the Pfaffian and a related problem, computing the canonical form of a skew-symmetric matrix under unitary congruence, can be solved easily once the skew-symmetric matrix has been reduced to skew-symmetric tridiagonal form. We develop efficient numerical methods for computing this tridiagonal form based on Gauss transformations, using a skew-symmetric, blocked form of the Parlett-Reid algorithm, or based on unitary transformations, using block Householder transformations and Givens rotations, that are applicable to dense and banded matrices, respectively. We also give a complete and fully optimized implementation of these algorithms in Fortran, and also provide Python, Matlab and Mathematica implementations for convenience. Finally, we apply these methods to compute the topological charge of a class D nanowire, and show numerically the equivalence of definitions based on the Hamiltonian and the scattering matrix.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。