Main Content

symbfact

符号分解分析

语法

count = symbfact(A)
count = symbfact(A,'sym')
count = symbfact(A,'col')
count = symbfact(A,'row')
count = symbfact(A,'lo')
[count,h,parent,post,R] = symbfact(...)
[count,h,parent,post,L] = symbfact(A,type,'lower')

说明

count = symbfact(A) 返回 R=chol(A) 的行计数的向量。symbfact 的速度应比 chol(A) 快得多。

count = symbfact(A,'sym')count = symbfact(A) 相同。

count = symbfact(A,'col') 返回 R=chol(A'*A) 的行计数(而不显式构成)。

count = symbfact(A,'row') 返回 R=chol(A*A') 的行计数。

count = symbfact(A,'lo')count = symbfact(A) 相同并且使用 tril(A)

[count,h,parent,post,R] = symbfact(...) 具有多个可选返回值。

后续乔列斯基分解的浮点运算计数为 sum(count.^2)

返回值描述
h

消去树的高度

parent

消去树自身

post

消去树的后排序

R

0-1 矩阵,具有结构体 chol(A)(对于对称情况)、chol(A'*A)(对于 'col' 情况)或 chol(A*A')(对于 'row' 情况)。

symbfact(A)symbfact(A,'sym') 使用 A (triu(A)) 的上三角部分,并假定下三角部分是上三角部分的转置。symbfact(A,'lo') 改用 tril(A)

[count,h,parent,post,L] = symbfact(A,type,'lower')(其中 type'sym''col''row''lo' 之一)返回下三角符号因子 L=R'。此形式速度更快并需要更少的内存。

参考

[1] Chen, Yanqing, Timothy A. Davis, William W. Hager, and Sivasankaran Rajamanickam. “Algorithm 887: CHOLMOD, Supernodal Sparse Cholesky Factorization and Update/Downdate.” ACM Transactions on Mathematical Software 35, no. 3 (October 2008): 1–14. https://doi.org/10.1145/1391989.1391995.

扩展功能

版本历史记录

在 R2006a 之前推出

另请参阅

| |