<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> 
</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>../www/SideLinks/About/aboutPersistent.html</Link><LinkText>1</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>

