<Chapter><Heading> Sparse Chain complexes</Heading> <Section><Heading> &nbsp;</Heading> 
<ManSection> <Func Name="SparseMat" Arg="A"/> <Description> <P/> Inputs a matrix <M>A</M> and returns the matrix in sparse format. <P/><B>Examples:</B> <URL><Link>../tutorial/chap10.html</Link><LinkText>1</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="TransposeOfSparseMat" Arg="A"/> <Description> <P/> Inputs a sparse matrix <M>A</M> and returns its transpose sparse format. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="ReverseSparseMat" Arg="A"/> <Description> <P/> Inputs a sparse matrix <M>A</M> and modifies it by reversing the order of the columns. This function modifies <M>A</M> and returns no value. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseRowMult" Arg="A,i,k"/> <Description> <P/> Multiplies the i-th row of a sparse matrix <M>A</M> by <M>k</M>. The sparse matrix <M>A</M> is modified but nothing is returned. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseRowInterchange" Arg="A,i,k"/> <Description> <P/> Interchanges the i-th and j-th rows of a sparse matrix <M>A</M> by <M>k</M>. The sparse matrix <M>A</M> is modified but nothing is returned. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseRowAdd" Arg="A,i,j,k"/> <Description> <P/> Adds <M>k</M> times the j-th row to the i-th row of a sparse matrix <M>A</M>. The sparse matrix <M>A</M> is modified but nothing is returned. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseSemiEchelon" Arg="A"/> <Description> <P/> Converts a sparse matrix <M>A</M> to semi-echelon form (which means echelon form up to a permutation of rows). The sparse matrix <M>A</M> is modified but nothing is returned. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="RankMatDestructive" Arg="A"/> <Description> <P/> Returns the rank of a sparse matrix <M>A</M>. The sparse matrix <M>A</M> is modified during the calculation. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="RankMat" Arg="A"/> <Description> <P/> Returns the rank of a sparse matrix <M>A</M>. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseChainComplex" Arg="Y"/> <Description> <P/> Inputs a regular CW-complex <M>Y</M> and returns a sparse chain complex which is chain homotopy equivalent to the cellular chain complex of <M>Y</M>. The function uses discrete vector fields to calculate a smallish chain complex. <P/><B>Examples:</B> <URL><Link>../tutorial/chap10.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutPersistent.html</Link><LinkText>2</LinkText></URL>&nbsp;
</Description> </ManSection> 
<ManSection> <Func Name="SparseChainComplexOfRegularCWComplex" Arg="Y"/> <Description> <P/> Inputs a regular CW-complex <M>Y</M> and returns its cellular chain complex as a sparse chain complex. The function SparseChainComplex(Y) will usually return a smaller chain complex. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="SparseBoundaryMatrix" Arg="C,n"/> <Description> <P/> Inputs a sparse chain complex <M>C</M> and integer <M>n</M>. Returns the n-th boundary matrix of the chain complex in sparse format. <P/><B>Examples:</B> 
</Description> </ManSection> 
<ManSection> <Func Name="Bettinumbers" Arg="C,n"/> <Description> <P/> Inputs a sparse chain complex <M>C</M> and integer <M>n</M>. Returns the n-th Netti number of the chain complex. <P/><B>Examples:</B> <URL><Link>../www/SideLinks/About/aboutMetrics.html</Link><LinkText>1</LinkText></URL>&nbsp;, <URL><Link>../www/SideLinks/About/aboutTDA.html</Link><LinkText>2</LinkText></URL>&nbsp;
</Description> </ManSection> </Section> </Chapter>