diff --git a/CHOLMOD/Doc/CHOLMOD_UserGuide.pdf b/CHOLMOD/Doc/CHOLMOD_UserGuide.pdf index 57106f9f5..1c93cf0fd 100644 Binary files a/CHOLMOD/Doc/CHOLMOD_UserGuide.pdf and b/CHOLMOD/Doc/CHOLMOD_UserGuide.pdf differ diff --git a/CHOLMOD/Doc/CHOLMOD_UserGuide.tex b/CHOLMOD/Doc/CHOLMOD_UserGuide.tex index cfa6e876f..6db74a675 100644 --- a/CHOLMOD/Doc/CHOLMOD_UserGuide.tex +++ b/CHOLMOD/Doc/CHOLMOD_UserGuide.tex @@ -386,22 +386,17 @@ \subsection{{\tt analyze}: order and analyze} \input{_analyze_m.tex} \subsection{{\tt bisect}: find a node separator} \input{_bisect_m.tex} \subsection{{\tt chol2}: same as {\tt chol}} \input{_chol2_m.tex} -\newpage \subsection{{\tt cholmod2}: supernodal backslash} \input{_cholmod2_m.tex} \newpage \subsection{{\tt cholmod\_demo}: a short demo program} \input{_cholmod_demo_m.tex} \subsection{{\tt cholmod\_make}: compile CHOLMOD in MATLAB} \input{_cholmod_make_m.tex} \newpage \subsection{{\tt etree2}: same as {\tt etree}} \input{_etree2_m.tex} -\newpage \subsection{{\tt graph\_demo}: graph partitioning demo} \input{_graph_demo_m.tex} -\newpage \subsection{{\tt lchol}: $\m{LL}\tr$ factorization} \input{_lchol_m.tex} \subsection{{\tt ldlchol}: $\m{LDL}\tr$ factorization} \input{_ldlchol_m.tex} -% \newpage \subsection{{\tt ldlsolve}: solve using an $\m{LDL}\tr$ factorization} \input{_ldlsolve_m.tex} \subsection{{\tt ldlsplit}: split an $\m{LDL}\tr$ factorization} \input{_ldlsplit_m.tex} -\newpage \subsection{{\tt ldlupdate}: update/downdate an $\m{LDL}\tr$ factorization} \input{_ldlupdate_m.tex} \newpage \subsection{{\tt ldlrowmod}: add/delete a row from an $\m{LDL}\tr$ factorization} \input{_ldlrowmod_m.tex} @@ -1311,7 +1306,7 @@ \subsection{{\tt cholmod\_clear\_flag}: clear Flag array} Increments {\tt Common->mark} so that the {\tt Flag} array is now cleared. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_error}: report error} +\subsection{{\tt cholmod\_error}: report error} %--------------------------------------- \input{_error.tex} @@ -1413,7 +1408,7 @@ \subsection{{\tt cholmod\_spzeros}: sparse zero matrix} (the matrix is packed, sorted, and unsymmetric). %--------------------------------------- -\newpage \subsection{{\tt cholmod\_transpose}: transpose sparse matrix} +\subsection{{\tt cholmod\_transpose}: transpose sparse matrix} %--------------------------------------- \input{_transpose.tex} @@ -1439,7 +1434,7 @@ \subsection{{\tt cholmod\_sort}: sort columns of a sparse matrix} starts as unpacked. Removes entries in the ignored part of a symmetric matrix. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_transpose\_unsym}: transpose/permute unsymmetric sparse matrix} +\subsection{{\tt cholmod\_transpose\_unsym}: transpose/permute unsymmetric sparse matrix} %--------------------------------------- \input{_transpose_unsym.tex} @@ -1654,7 +1649,7 @@ \subsection{{\tt cholmod\_copy}: copy (and change) sparse matrix} if {\tt values} is {\tt FALSE} (in which case the numerical values are ignored). %--------------------------------------- -\newpage \subsection{{\tt cholmod\_add}: add sparse matrices} +\subsection{{\tt cholmod\_add}: add sparse matrices} %--------------------------------------- \input{_add.tex} @@ -1687,7 +1682,7 @@ \subsection{{\tt cholmod\_factor} object: a sparse Cholesky factorization} as the diagonal of $\m{L}$; the unit-diagonal of $\m{L}$ is not stored. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_free\_factor}: free factor} +\subsection{{\tt cholmod\_free\_factor}: free factor} %--------------------------------------- \input{_free_factor.tex} @@ -1708,7 +1703,7 @@ \subsection{{\tt cholmod\_reallocate\_factor}: reallocate factor} Reallocates a simplicial factor so that it can contain {\tt nznew} entries. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_change\_factor}: change factor} +\subsection{{\tt cholmod\_change\_factor}: change factor} %--------------------------------------- \input{_change_factor.tex} @@ -1809,7 +1804,7 @@ \subsection{{\tt cholmod\_reallocate\_factor}: reallocate factor} use {\tt cholmod\_factor\_xtype} instead. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_pack\_factor}: pack the columns of a factor} +\subsection{{\tt cholmod\_pack\_factor}: pack the columns of a factor} %--------------------------------------- \input{_pack_factor.tex} @@ -1834,7 +1829,7 @@ \subsection{{\tt cholmod\_reallocate\_column}: reallocate one column of a factor Reallocates the space allotted to a single column of $\m{L}$. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_factor\_to\_sparse}: sparse matrix copy of a factor} +\subsection{{\tt cholmod\_factor\_to\_sparse}: sparse matrix copy of a factor} %--------------------------------------- \input{_factor_to_sparse.tex} @@ -1901,7 +1896,7 @@ \subsection{{\tt cholmod\_ensure\_dense}: ensure dense matrix has a given size %--------------------------------------- %--------------------------------------- -\newpage \subsection{{\tt cholmod\_zeros}: dense zero matrix} +\subsection{{\tt cholmod\_zeros}: dense zero matrix} %--------------------------------------- \input{_zeros.tex} @@ -1922,7 +1917,7 @@ \subsection{{\tt cholmod\_eye}: dense identity matrix} Returns a dense identity matrix. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_sparse\_to\_dense}: dense matrix copy of a sparse matrix} +\subsection{{\tt cholmod\_sparse\_to\_dense}: dense matrix copy of a sparse matrix} %--------------------------------------- \input{_sparse_to_dense.tex} @@ -1950,7 +1945,7 @@ \subsection{{\tt cholmod\_copy\_dense}: copy dense matrix} Returns a copy of a dense matrix. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_copy\_dense2}: copy dense matrix (preallocated)} +\subsection{{\tt cholmod\_copy\_dense2}: copy dense matrix (preallocated)} %--------------------------------------- \input{_copy_dense2.tex} @@ -1991,7 +1986,7 @@ \subsection{{\tt cholmod\_free\_triplet}: free triplet matrix} Frees a triplet matrix. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_reallocate\_triplet}: reallocate triplet matrix} +\subsection{{\tt cholmod\_reallocate\_triplet}: reallocate triplet matrix} %--------------------------------------- \input{_reallocate_triplet.tex} @@ -2019,7 +2014,7 @@ \subsection{{\tt cholmod\_triplet\_to\_sparse}: sparse matrix copy of a triplet Any duplicate entries are summed. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_copy\_triplet}: copy triplet matrix} +\subsection{{\tt cholmod\_copy\_triplet}: copy triplet matrix} %--------------------------------------- \input{_copy_triplet.tex} @@ -2060,7 +2055,7 @@ \subsection{{\tt cholmod\_calloc}: allocate and clear memory} If not successful, {\tt NULL} is returned and {\tt Common->status} is set to {\tt CHOLMOD\_OUT\_OF\_MEMORY}. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_free}: free memory} +\subsection{{\tt cholmod\_free}: free memory} %--------------------------------------- \input{_free.tex} @@ -2092,7 +2087,7 @@ \subsection{{\tt cholmod\_realloc}: reallocate memory} A value of {\tt nnew=0} is treated as {\tt nnew=1}. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_realloc\_multiple}: reallocate memory} +\subsection{{\tt cholmod\_realloc\_multiple}: reallocate memory} %--------------------------------------- \input{_realloc_multiple.tex} @@ -2172,7 +2167,7 @@ \subsection{{\tt cholmod\_print\_common}: print Common object} This prints the CHOLMOD parameters and statistics. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_sparse}: check sparse matrix} +\subsection{{\tt cholmod\_check\_sparse}: check sparse matrix} %--------------------------------------- \input{_check_sparse.tex} @@ -2186,7 +2181,7 @@ \subsection{{\tt cholmod\_print\_sparse}: print sparse matrix} Print a sparse matrix and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_dense}: check dense matrix} +\subsection{{\tt cholmod\_check\_dense}: check dense matrix} %--------------------------------------- \input{_check_dense.tex} @@ -2200,7 +2195,7 @@ \subsection{{\tt cholmod\_print\_dense}: print dense matrix} Print a dense matrix and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_factor}: check factor} +\subsection{{\tt cholmod\_check\_factor}: check factor} %--------------------------------------- \input{_check_factor.tex} @@ -2214,7 +2209,7 @@ \subsection{{\tt cholmod\_print\_factor}: print factor} Print a factor and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_triplet}: check triplet matrix} +\subsection{{\tt cholmod\_check\_triplet}: check triplet matrix} %--------------------------------------- \input{_check_triplet.tex} @@ -2228,7 +2223,7 @@ \subsection{{\tt cholmod\_print\_triplet}: print triplet matrix} Print a triplet matrix and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_subset}: check subset} +\subsection{{\tt cholmod\_check\_subset}: check subset} %--------------------------------------- \input{_check_subset.tex} @@ -2242,7 +2237,7 @@ \subsection{{\tt cholmod\_print\_subset}: print subset} Print a subset and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_perm}: check permutation} +\subsection{{\tt cholmod\_check\_perm}: check permutation} %--------------------------------------- \input{_check_perm.tex} @@ -2256,7 +2251,7 @@ \subsection{{\tt cholmod\_print\_perm}: print permutation} Print a permutation and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_check\_parent}: check elimination tree} +\subsection{{\tt cholmod\_check\_parent}: check elimination tree} %--------------------------------------- \input{_check_parent.tex} @@ -2270,7 +2265,7 @@ \subsection{{\tt cholmod\_print\_parent}: print elimination tree} Print an elimination tree and check if it is valid. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_read\_triplet}: read triplet matrix from file} +\subsection{{\tt cholmod\_read\_triplet}: read triplet matrix from file} %--------------------------------------- \input{_read_triplet.tex} @@ -2389,7 +2384,7 @@ \subsection{{\tt cholmod\_read\_sparse}: read sparse matrix from file} Otherwise, it is left in its original form, either upper or lower. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_read\_dense}: read dense matrix from file} +\subsection{{\tt cholmod\_read\_dense}: read dense matrix from file} %--------------------------------------- \input{_read_dense.tex} @@ -2409,7 +2404,7 @@ \subsection{{\tt cholmod\_read\_matrix}: read a matrix from file} {\tt cholmod\_dense} object. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_write\_sparse}: write a sparse matrix to a file} +\subsection{{\tt cholmod\_write\_sparse}: write a sparse matrix to a file} %--------------------------------------- \input{_write_sparse.tex} @@ -3204,7 +3199,7 @@ \subsection{{\tt cholmod\_norm\_sparse}: sparse matrix norm} All xtypes are supported. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_scale}: scale sparse matrix} +\subsection{{\tt cholmod\_scale}: scale sparse matrix} %--------------------------------------- \input{_scale.tex} @@ -3247,7 +3242,7 @@ \subsection{{\tt cholmod\_norm\_sparse}: sparse matrix norm} Only real matrices are supported. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_sdmult}: sparse-times-dense matrix} +\subsection{{\tt cholmod\_sdmult}: sparse-times-dense matrix} %--------------------------------------- \input{_sdmult.tex} @@ -3281,7 +3276,7 @@ \subsection{{\tt cholmod\_ssmult}: sparse-times-sparse matrix} is {\tt FALSE}). %--------------------------------------- -\newpage \subsection{{\tt cholmod\_submatrix}: sparse submatrix} +\subsection{{\tt cholmod\_submatrix}: sparse submatrix} %--------------------------------------- \input{_submatrix.tex} @@ -3309,7 +3304,7 @@ \subsection{{\tt cholmod\_ssmult}: sparse-times-sparse matrix} are supported only when {\tt values} is {\tt FALSE}. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_horzcat}: horizontal concatenation} +\subsection{{\tt cholmod\_horzcat}: horizontal concatenation} %--------------------------------------- \input{_horzcat.tex} @@ -3333,7 +3328,7 @@ \subsection{{\tt cholmod\_vertcat}: vertical concatenation} {\tt A} and {\tt B} cannot be complex or zomplex, unless {\tt values} is {\tt FALSE}. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_symmetry}: compute the symmetry of a matrix} +\subsection{{\tt cholmod\_symmetry}: compute the symmetry of a matrix} %--------------------------------------- \input{_symmetry.tex} @@ -3381,7 +3376,7 @@ \subsection{{\tt cholmod\_vertcat}: vertical concatenation} is matched if $a_{ji} = a_{ij}$, but this is only counted if both $a_{ji}$ and $a_{ij}$ are nonzero. This does not depend on {\tt Z}. (If A is complex, then the above test is modified; $a_{ij}$ is matched - if $\mbox{conj}(a_{ji}) = a_{ij}$. + if $\mbox{conj}(a_{ji}) = a_{ij}$). Then numeric symmetry = xmatched / nzoffdiag, or 1 if nzoffdiag = 0. @@ -3418,7 +3413,6 @@ \subsection{{\tt cholmod\_vertcat}: vertical concatenation} regardless of the value of the option parameter. - %------------------------------------------------------------------------------- \newpage \section{{\tt Supernodal} Module routines} %------------------------------------------------------------------------------- @@ -3444,7 +3438,7 @@ \subsection{{\tt cholmod\_super\_symbolic}: supernodal symbolic factorization} Does not allocate the real part ({\tt L->x}). %--------------------------------------- -\newpage \subsection{{\tt cholmod\_super\_numeric}: supernodal numeric factorization} +\subsection{{\tt cholmod\_super\_numeric}: supernodal numeric factorization} %--------------------------------------- \input{_super_numeric.tex} @@ -3453,7 +3447,7 @@ \subsection{{\tt cholmod\_super\_symbolic}: supernodal symbolic factorization} matrices {\tt A} and {\tt F} must already be permuted according to the fill-reduction permutation {\tt L->Perm}. {\tt cholmod\_factorize} is an "easy" wrapper for this code which applies that permutation. -The input scalar {\tt beta} is real; only the real part ({\tt beta[0]} is used. +The input scalar {\tt beta} is real; only the real part ({\tt beta[0]}) is used. Symmetric case: {\tt A} is a symmetric (lower) matrix. {\tt F} is not accessed and may be {\tt NULL}. With a fill-reducing permutation, {\tt A(p,p)} should be passed for {\tt A}, where is @@ -3485,7 +3479,7 @@ \subsection{{\tt cholmod\_super\_symbolic}: supernodal symbolic factorization} must match. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_super\_lsolve}: supernodal forward solve} +\subsection{{\tt cholmod\_super\_lsolve}: supernodal forward solve} %--------------------------------------- \input{_super_lsolve.tex} @@ -3535,7 +3529,7 @@ \subsection{{\tt cholmod\_nested\_dissection}: nested dissection ordering} when the graph partitioning is done. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_metis}: interface to METIS nested dissection} +\subsection{{\tt cholmod\_metis}: interface to METIS nested dissection} %--------------------------------------- \input{_metis.tex} @@ -3545,7 +3539,7 @@ \subsection{{\tt cholmod\_nested\_dissection}: nested dissection ordering} calls {\tt METIS\_NodeND} directly, and it does not return the separator tree. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_camd}: interface to CAMD} +\subsection{{\tt cholmod\_camd}: interface to CAMD} %--------------------------------------- \input{_camd.tex} @@ -3557,7 +3551,7 @@ \subsection{{\tt cholmod\_nested\_dissection}: nested dissection ordering} All nodes in set 0 are ordered first, followed by all nodes in set 1, and so on. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_ccolamd}: interface to CCOLAMD} +\subsection{{\tt cholmod\_ccolamd}: interface to CCOLAMD} %--------------------------------------- \input{_ccolamd.tex} @@ -3582,7 +3576,6 @@ \subsection{{\tt cholmod\_csymamd}: interface to CSYMAMD} All nodes in set 0 are ordered first, followed by all nodes in set 1, and so on. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_bisect}: graph bisector} %--------------------------------------- @@ -3605,7 +3598,6 @@ \subsection{{\tt cholmod\_metis\_bisector}: interface to METIS node bisector} checked. Use cholmod\_bisect to check these conditions. %--------------------------------------- -\newpage \subsection{{\tt cholmod\_collapse\_septree}: prune a separator tree} %--------------------------------------- diff --git a/CHOLMOD/Doc/Makefile b/CHOLMOD/Doc/Makefile index 178c4a305..365c4d142 100644 --- a/CHOLMOD/Doc/Makefile +++ b/CHOLMOD/Doc/Makefile @@ -206,6 +206,7 @@ CHOLMOD_UserGuide.pdf: CHOLMOD_UserGuide.tex UserGuide.bib $(I) $(C) $(M) Makefi bibtex CHOLMOD_UserGuide pdflatex CHOLMOD_UserGuide pdflatex CHOLMOD_UserGuide + - $(RM) _*.tex - $(RM) _temp.awk - $(RM) -r *.aux *.bbl *.blg *.log *.toc *.dvi *.lof *.lot