Sophie

Sophie

distrib > Fedora > 15 > i386 > by-pkgid > c5653a35bb94fee65ffe21230992c863 > files > 291

linbox-doc-1.2.1-1.fc15.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>linbox: SparseMatrixBase&lt; _Element, _Row, Trait &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<script type="text/javascript">
function hasClass(ele,cls) {
  return ele.className.match(new RegExp('(\\s|^)'+cls+'(\\s|$)'));
}

function addClass(ele,cls) {
  if (!this.hasClass(ele,cls)) ele.className += " "+cls;
}

function removeClass(ele,cls) {
  if (hasClass(ele,cls)) {
    var reg = new RegExp('(\\s|^)'+cls+'(\\s|$)');
    ele.className=ele.className.replace(reg,' ');
  }
}

function toggleVisibility(linkObj) {
 var base = linkObj.getAttribute('id');
 var summary = document.getElementById(base + '-summary');
 var content = document.getElementById(base + '-content');
 var trigger = document.getElementById(base + '-trigger');
 if ( hasClass(linkObj,'closed') ) {
   summary.style.display = 'none';
   content.style.display = 'block';
   trigger.src = 'open.png';
   removeClass(linkObj,'closed');
   addClass(linkObj,'opened');
 } else if ( hasClass(linkObj,'opened') ) {
   summary.style.display = 'block';
   content.style.display = 'none';
   trigger.src = 'closed.png';
   removeClass(linkObj,'opened');
   addClass(linkObj,'closed');
 }
 return false;
}
</script>
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">linbox</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
      <li><a href="examples.html"><span>Examples</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="hierarchy.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespace_lin_box.html">LinBox</a>      </li>
      <li class="navelem"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">SparseMatrixBase&lt; _Element, _Row, Trait &gt; Class Template Reference<div class="ingroups"><a class="el" href="group__matrix.html">matrix</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="LinBox::SparseMatrixBase" -->
<p>Sparse matrix container This class acts as a generic row-wise container for sparse matrices.  
 <a href="class_lin_box_1_1_sparse_matrix_base.html#details">More...</a></p>

<p><code>#include &lt;sparse.h&gt;</code></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a915db5af9f7e0ec5fcfc0c421c089498">SparseMatrixBase</a> (size_t m, size_t n)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor.  <a href="#a915db5af9f7e0ec5fcfc0c421c089498"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="a8dc26e5a61a08c72f8f02190e0119f5f"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixBase" ref="a8dc26e5a61a08c72f8f02190e0119f5f" args="(MatrixStream&lt; Field &gt; &amp;ms)" -->
template&lt;class Field &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a8dc26e5a61a08c72f8f02190e0119f5f">SparseMatrixBase</a> (<a class="el" href="class_lin_box_1_1_matrix_stream.html">MatrixStream</a>&lt; Field &gt; &amp;ms)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructor from a <a class="el" href="class_lin_box_1_1_matrix_stream.html" title="MatrixStream.">MatrixStream</a>. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ded52075d25b5fc2fff9b2003e8f1c4"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixBase" ref="a7ded52075d25b5fc2fff9b2003e8f1c4" args="(const SparseMatrixBase&lt; Element, Row, Trait &gt; &amp;A)" -->
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a7ded52075d25b5fc2fff9b2003e8f1c4">SparseMatrixBase</a> (const <a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a>&lt; Element, Row, Trait &gt; &amp;A)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor. <br/></td></tr>
<tr><td class="memTemplParams" colspan="2"><a class="anchor" id="aedabfe4b19bec7ea7d8f16e7b0d295bb"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixBase" ref="aedabfe4b19bec7ea7d8f16e7b0d295bb" args="(const SparseMatrixBase&lt; Element, VectorType, Trait &gt; &amp;A)" -->
template&lt;class VectorType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aedabfe4b19bec7ea7d8f16e7b0d295bb">SparseMatrixBase</a> (const <a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a>&lt; Element, VectorType, Trait &gt; &amp;A)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Convert constructor. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aae2c83698573d1b860871d9817afd59e">~SparseMatrixBase</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Destructor.  <a href="#aae2c83698573d1b860871d9817afd59e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">rowdim</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retreive row dimension of the matrix.  <a href="#a0fee90e6b8ef7fcd8d76a7f3e1f268e6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a32edb490d3597f5553152d14b102e227">coldim</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retreive column dimension of matrix.  <a href="#a32edb490d3597f5553152d14b102e227"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aac782da1f912bceb5d8ad00c8dc892ac">size</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retreive number of elements in the matrix.  <a href="#aac782da1f912bceb5d8ad00c8dc892ac"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class Field &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">std::istream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a93e97f4d78fb605a6b8357afee40dd73">read</a> (std::istream &amp;is, const Field &amp;F, <a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a> format=FORMAT_DETECT)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a matrix from the given input stream using field read/write.  <a href="#a93e97f4d78fb605a6b8357afee40dd73"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::istream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ac5be3d96c7d795295b42f4f210452f23">read</a> (std::istream &amp;is, <a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a> format=FORMAT_DETECT)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Read a matrix from the given input stream using standard operators.  <a href="#ac5be3d96c7d795295b42f4f210452f23"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class Field &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ab5acc80a5ae7464f2b7d6127047db947">write</a> (std::ostream &amp;os, const Field &amp;F, <a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a> format=FORMAT_PRETTY) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write a matrix to the given output stream using field read/write.  <a href="#ab5acc80a5ae7464f2b7d6127047db947"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a88c3c3a75cf316163873d477c6412674">write</a> (std::ostream &amp;os, <a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a> format=FORMAT_PRETTY) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Write a matrix to the given output stream using standard operators.  <a href="#a88c3c3a75cf316163873d477c6412674"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ae2b66b4afc5084f339635c1ae40efa74">setEntry</a> (size_t i, size_t j, const Element &amp;value)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Set an individual entry Setting the entry to 0 will remove it from the matrix.  <a href="#ae2b66b4afc5084f339635c1ae40efa74"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Element &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#adeab64f184b5d93ba8e6f8f641d7a6ec">refEntry</a> (size_t i, size_t j)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a writeable reference to an entry in the matrix If there is no entry at the position (i, j), then a new entry with a value of zero is inserted and a reference to it is returned.  <a href="#adeab64f184b5d93ba8e6f8f641d7a6ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const Element &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a894873485395b2925e930fff7eb113b6">getEntry</a> (size_t i, size_t j) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get a read-only individual entry from the matrix.  <a href="#a894873485395b2925e930fff7eb113b6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Element &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a7175207b21737a612ed84ec9c4c4321a">getEntry</a> (Element &amp;x, size_t i, size_t j) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Get an entry and store it in the given value This form is more in the Linbox style and is provided for interface compatibility with other parts of the library.  <a href="#a7175207b21737a612ed84ec9c4c4321a"></a><br/></td></tr>
<tr><td colspan="2"><div class="groupHeader">Raw iterator</div></td></tr>
<tr><td colspan="2"><div class="groupText"><p>The raw iterator is a method for accessing all nonzero entries in the matrix in some unspecified order.</p>
<p>This can be used, e.g. to reduce all matrix entries modulo a prime before passing the matrix into an algorithm. </p>
</div></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee001ba50cd767ff370a4715d67f365d"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawBegin" ref="aee001ba50cd767ff370a4715d67f365d" args="()" -->
RawIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aee001ba50cd767ff370a4715d67f365d">rawBegin</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawBegin. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9ffd21934d5edcaa17b673fccedbc1e"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawEnd" ref="ac9ffd21934d5edcaa17b673fccedbc1e" args="()" -->
RawIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ac9ffd21934d5edcaa17b673fccedbc1e">rawEnd</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawEnd. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac62e1bd3893d604d8fe760d243d75750"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawBegin" ref="ac62e1bd3893d604d8fe760d243d75750" args="() const " -->
ConstRawIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ac62e1bd3893d604d8fe760d243d75750">rawBegin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">const rawBegin. <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2601fd81a50b34a11d3b24ab6b897903"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawEnd" ref="a2601fd81a50b34a11d3b24ab6b897903" args="() const " -->
ConstRawIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a2601fd81a50b34a11d3b24ab6b897903">rawEnd</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">const rawEnd <br/></td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
Columns of rows iterator</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpa8ce8d890bbe1163ef0effc8137d7d50"></a>The columns of row iterator gives each of the rows of the matrix in ascending order.</p>
<p>Dereferencing the iterator yields a row vector in sparse sequence format </p>
</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a628021a55054ddecdd5fca7ae8eaae0a"></a><!-- doxytag: member="LinBox::SparseMatrixBase::RowIterator" ref="a628021a55054ddecdd5fca7ae8eaae0a" args="" -->
typedef Rep::iterator&#160;</td><td class="memItemRight" valign="bottom"><b>RowIterator</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e1e55ba4e02be1b4f7a68abf568954a"></a><!-- doxytag: member="LinBox::SparseMatrixBase::ConstRowIterator" ref="a0e1e55ba4e02be1b4f7a68abf568954a" args="" -->
typedef Rep::const_iterator&#160;</td><td class="memItemRight" valign="bottom"><b>ConstRowIterator</b></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a4fedb8afc38347e55b61627601f5ae"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rowBegin" ref="a5a4fedb8afc38347e55b61627601f5ae" args="()" -->
RowIterator&#160;</td><td class="memItemRight" valign="bottom"><b>rowBegin</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aabcd25932383b9ccae6bdfd9ad4fc041"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rowEnd" ref="aabcd25932383b9ccae6bdfd9ad4fc041" args="()" -->
RowIterator&#160;</td><td class="memItemRight" valign="bottom"><b>rowEnd</b> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a40a362d8acb3f92c31be15324e5493"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rowBegin" ref="a7a40a362d8acb3f92c31be15324e5493" args="() const " -->
ConstRowIterator&#160;</td><td class="memItemRight" valign="bottom"><b>rowBegin</b> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1fc30a1223bfb760259ab3a0e661a37c"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rowEnd" ref="a1fc30a1223bfb760259ab3a0e661a37c" args="() const " -->
ConstRowIterator&#160;</td><td class="memItemRight" valign="bottom"><b>rowEnd</b> () const </td></tr>
<tr><td colspan="2"><h2><a name="member-group"></a>
Index iterator</h2></td></tr>
<tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpbbcf20aa39e109286f5f5fc02329a84e"></a>The index iterator gives the row, column indices of all matrix elements in the same order as the raw iterator above.</p>
<p>Its value type is an STL pair with the row and column indices, starting at 0, in the first and second positions, respectively. </p>
</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebac326d6dd9d955410b6ba7b4e9aa01"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixWriteHelper&lt; Element, Row &gt;" ref="aebac326d6dd9d955410b6ba7b4e9aa01" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aebac326d6dd9d955410b6ba7b4e9aa01">SparseMatrixWriteHelper&lt; Element, Row &gt;</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6469b1fbec4ef74775b2f6880c119416"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixReadWriteHelper&lt; Element, Row &gt;" ref="a6469b1fbec4ef74775b2f6880c119416" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a6469b1fbec4ef74775b2f6880c119416">SparseMatrixReadWriteHelper&lt; Element, Row &gt;</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36f35aaabc94f88bb343ca6c98165ad5"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixBase" ref="a36f35aaabc94f88bb343ca6c98165ad5" args="" -->
class&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a36f35aaabc94f88bb343ca6c98165ad5">SparseMatrixBase</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a916271439bfd1c06a8a9b4ab4562a10c"></a><!-- doxytag: member="LinBox::SparseMatrixBase::_A" ref="a916271439bfd1c06a8a9b4ab4562a10c" args="" -->
Rep&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a916271439bfd1c06a8a9b4ab4562a10c">_A</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef645714edf7bd944978519e2be44490"></a><!-- doxytag: member="LinBox::SparseMatrixBase::_m" ref="aef645714edf7bd944978519e2be44490" args="" -->
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aef645714edf7bd944978519e2be44490">_m</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9a19772e6c9097c1f9622a3f0d31cdc"></a><!-- doxytag: member="LinBox::SparseMatrixBase::_n" ref="ab9a19772e6c9097c1f9622a3f0d31cdc" args="" -->
size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ab9a19772e6c9097c1f9622a3f0d31cdc">_n</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8df0b6ed9e872425f0e1e06ce775d4b"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawIndexedBegin" ref="aa8df0b6ed9e872425f0e1e06ce775d4b" args="()" -->
RawIndexedIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aa8df0b6ed9e872425f0e1e06ce775d4b">rawIndexedBegin</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0abee2034e33e784721527e9b01073a"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawIndexedEnd" ref="ad0abee2034e33e784721527e9b01073a" args="()" -->
RawIndexedIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#ad0abee2034e33e784721527e9b01073a">rawIndexedEnd</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">rawIndexedEnd <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca6e49f5f9f0843cfe40146e3063f049"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawIndexedBegin" ref="aca6e49f5f9f0843cfe40146e3063f049" args="() const " -->
ConstRawIndexedIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#aca6e49f5f9f0843cfe40146e3063f049">rawIndexedBegin</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">const rawIndexedBegin <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d166b8ac57dcb5d2ace4cdaddf59144"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rawIndexedEnd" ref="a5d166b8ac57dcb5d2ace4cdaddf59144" args="() const " -->
ConstRawIndexedIterator&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a5d166b8ac57dcb5d2ace4cdaddf59144">rawIndexedEnd</a> () const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">const rawIndexedEnd <br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Row &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a7b90ca3fa6d24a03f65ba86b19519cd5">getRow</a> (size_t i)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve a row as a writeable reference.  <a href="#a7b90ca3fa6d24a03f65ba86b19519cd5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">Row &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a3090ae9f75c3a369290ba94243cd7dba">operator[]</a> (size_t i)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve a row as a writeable reference.  <a href="#a3090ae9f75c3a369290ba94243cd7dba"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">ConstRow &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a444bc45e95554a7ec243e9a6f193b565">operator[]</a> (size_t i) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve a row as a read-only reference.  <a href="#a444bc45e95554a7ec243e9a6f193b565"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;class Vector &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">Vector &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a19189e2bf3b6fde9fe865546d38af9d1">columnDensity</a> (Vector &amp;v) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Compute the column density, i.e the number of entries per column.  <a href="#a19189e2bf3b6fde9fe865546d38af9d1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html#a00c9d379248095605453d2caaeb81fac">transpose</a> (<a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a> &amp;AT) const </td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct the transpose of this matrix and place it in the matrix given.  <a href="#a00c9d379248095605453d2caaeb81fac"></a><br/></td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><h3>template&lt;class _Element, class _Row, class Trait&gt;<br/>
class LinBox::SparseMatrixBase&lt; _Element, _Row, Trait &gt;</h3>

<p>Sparse matrix container This class acts as a generic row-wise container for sparse matrices. </p>
<p>It is designed to provide various methods to access the entries of the matrix. In particular, it does not meet the black box archetype; see <a class="el" href="class_lin_box_1_1_sparse_matrix.html">SparseMatrix</a> for an appropriate sparse matrix black box.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">Element</td><td>Element type </td></tr>
    <tr><td class="paramname">Row</td><td><a class="el" href="namespace_lin_box.html" title="Namespace in which all linbox code resides.">LinBox</a> sparse vector type to use for rows of matrix </td></tr>
  </table>
  </dd>
</dl>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a915db5af9f7e0ec5fcfc0c421c089498"></a><!-- doxytag: member="LinBox::SparseMatrixBase::SparseMatrixBase" ref="a915db5af9f7e0ec5fcfc0c421c089498" args="(size_t m, size_t n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a> </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>n</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructor. </p>
<p>Note: the copy constructor and operator= will work as intended because of STL's container design </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">m</td><td>row dimension </td></tr>
    <tr><td class="paramname">n</td><td>column dimension </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="aae2c83698573d1b860871d9817afd59e"></a><!-- doxytag: member="LinBox::SparseMatrixBase::~SparseMatrixBase" ref="aae2c83698573d1b860871d9817afd59e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">~<a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Destructor. </p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a0fee90e6b8ef7fcd8d76a7f3e1f268e6"></a><!-- doxytag: member="LinBox::SparseMatrixBase::rowdim" ref="a0fee90e6b8ef7fcd8d76a7f3e1f268e6" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t rowdim </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retreive row dimension of the matrix. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>integer number of rows of <a class="el" href="class_lin_box_1_1_sparse_matrix_base.html" title="Sparse matrix container This class acts as a generic row-wise container for sparse matrices...">SparseMatrixBase</a> matrix. </dd></dl>

<p>Reimplemented in <a class="el" href="class_lin_box_1_1_sparse_matrix.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">SparseMatrix&lt; _Field, _Row &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="a32edb490d3597f5553152d14b102e227"></a><!-- doxytag: member="LinBox::SparseMatrixBase::coldim" ref="a32edb490d3597f5553152d14b102e227" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t coldim </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retreive column dimension of matrix. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>integer number of columns of <a class="el" href="class_lin_box_1_1_sparse_matrix_base.html" title="Sparse matrix container This class acts as a generic row-wise container for sparse matrices...">SparseMatrixBase</a> matrix. </dd></dl>

<p>Reimplemented in <a class="el" href="class_lin_box_1_1_sparse_matrix.html#a32edb490d3597f5553152d14b102e227">SparseMatrix&lt; _Field, _Row &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="aac782da1f912bceb5d8ad00c8dc892ac"></a><!-- doxytag: member="LinBox::SparseMatrixBase::size" ref="aac782da1f912bceb5d8ad00c8dc892ac" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">size_t size </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retreive number of elements in the matrix. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>integer number of elements of <a class="el" href="class_lin_box_1_1_sparse_matrix_base.html" title="Sparse matrix container This class acts as a generic row-wise container for sparse matrices...">SparseMatrixBase</a> matrix. </dd></dl>

</div>
</div>
<a class="anchor" id="a93e97f4d78fb605a6b8357afee40dd73"></a><!-- doxytag: member="LinBox::SparseMatrixBase::read" ref="a93e97f4d78fb605a6b8357afee40dd73" args="(std::istream &amp;is, const Field &amp;F, FileFormatTag format=FORMAT_DETECT)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::istream&amp; read </td>
          <td>(</td>
          <td class="paramtype">std::istream &amp;&#160;</td>
          <td class="paramname"><em>is</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Field &amp;&#160;</td>
          <td class="paramname"><em>F</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a>&#160;</td>
          <td class="paramname"><em>format</em> = <code>FORMAT_DETECT</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read a matrix from the given input stream using field read/write. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">is</td><td>Input stream from which to read the matrix </td></tr>
    <tr><td class="paramname">F</td><td>Field with which to read </td></tr>
    <tr><td class="paramname">format</td><td>Format of input matrix </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="ac5be3d96c7d795295b42f4f210452f23"></a><!-- doxytag: member="LinBox::SparseMatrixBase::read" ref="ac5be3d96c7d795295b42f4f210452f23" args="(std::istream &amp;is, FileFormatTag format=FORMAT_DETECT)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::istream&amp; read </td>
          <td>(</td>
          <td class="paramtype">std::istream &amp;&#160;</td>
          <td class="paramname"><em>is</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a>&#160;</td>
          <td class="paramname"><em>format</em> = <code>FORMAT_DETECT</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Read a matrix from the given input stream using standard operators. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">is</td><td>Input stream from which to read the matrix </td></tr>
    <tr><td class="paramname">format</td><td>Format of input matrix </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="class_lin_box_1_1_sparse_matrix.html#ac5be3d96c7d795295b42f4f210452f23">SparseMatrix&lt; _Field, _Row &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="ab5acc80a5ae7464f2b7d6127047db947"></a><!-- doxytag: member="LinBox::SparseMatrixBase::write" ref="ab5acc80a5ae7464f2b7d6127047db947" args="(std::ostream &amp;os, const Field &amp;F, FileFormatTag format=FORMAT_PRETTY) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream&amp; write </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Field &amp;&#160;</td>
          <td class="paramname"><em>F</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a>&#160;</td>
          <td class="paramname"><em>format</em> = <code>FORMAT_PRETTY</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write a matrix to the given output stream using field read/write. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">os</td><td>Output stream to which to write the matrix </td></tr>
    <tr><td class="paramname">F</td><td>Field with which to write </td></tr>
    <tr><td class="paramname">format</td><td>Format with which to write </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a88c3c3a75cf316163873d477c6412674"></a><!-- doxytag: member="LinBox::SparseMatrixBase::write" ref="a88c3c3a75cf316163873d477c6412674" args="(std::ostream &amp;os, FileFormatTag format=FORMAT_PRETTY) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream&amp; write </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespace_lin_box.html#ac9fc66b92230563e481ea4c43f443008">FileFormatTag</a>&#160;</td>
          <td class="paramname"><em>format</em> = <code>FORMAT_PRETTY</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Write a matrix to the given output stream using standard operators. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">os</td><td>Output stream to which to write the matrix </td></tr>
    <tr><td class="paramname">format</td><td>Format with which to write </td></tr>
  </table>
  </dd>
</dl>

<p>Reimplemented in <a class="el" href="class_lin_box_1_1_sparse_matrix.html#a88c3c3a75cf316163873d477c6412674">SparseMatrix&lt; _Field, _Row &gt;</a>.</p>

</div>
</div>
<a class="anchor" id="ae2b66b4afc5084f339635c1ae40efa74"></a><!-- doxytag: member="LinBox::SparseMatrixBase::setEntry" ref="ae2b66b4afc5084f339635c1ae40efa74" args="(size_t i, size_t j, const Element &amp;value)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void setEntry </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>j</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const Element &amp;&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Set an individual entry Setting the entry to 0 will remove it from the matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index of entry </td></tr>
    <tr><td class="paramname">j</td><td>Column index of entry </td></tr>
    <tr><td class="paramname">value</td><td>Value of the new entry </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="adeab64f184b5d93ba8e6f8f641d7a6ec"></a><!-- doxytag: member="LinBox::SparseMatrixBase::refEntry" ref="adeab64f184b5d93ba8e6f8f641d7a6ec" args="(size_t i, size_t j)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Element &amp; refEntry </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a writeable reference to an entry in the matrix If there is no entry at the position (i, j), then a new entry with a value of zero is inserted and a reference to it is returned. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index of entry </td></tr>
    <tr><td class="paramname">j</td><td>Column index of entry </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Reference to matrix entry </dd></dl>

</div>
</div>
<a class="anchor" id="a894873485395b2925e930fff7eb113b6"></a><!-- doxytag: member="LinBox::SparseMatrixBase::getEntry" ref="a894873485395b2925e930fff7eb113b6" args="(size_t i, size_t j) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const Element &amp; getEntry </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get a read-only individual entry from the matrix. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index </td></tr>
    <tr><td class="paramname">j</td><td>Column index </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Const reference to matrix entry </dd></dl>

</div>
</div>
<a class="anchor" id="a7175207b21737a612ed84ec9c4c4321a"></a><!-- doxytag: member="LinBox::SparseMatrixBase::getEntry" ref="a7175207b21737a612ed84ec9c4c4321a" args="(Element &amp;x, size_t i, size_t j) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Element&amp; getEntry </td>
          <td>(</td>
          <td class="paramtype">Element &amp;&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Get an entry and store it in the given value This form is more in the Linbox style and is provided for interface compatibility with other parts of the library. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">x</td><td>Element in which to store result </td></tr>
    <tr><td class="paramname">i</td><td>Row index </td></tr>
    <tr><td class="paramname">j</td><td>Column index </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Reference to x </dd></dl>

</div>
</div>
<a class="anchor" id="a7b90ca3fa6d24a03f65ba86b19519cd5"></a><!-- doxytag: member="LinBox::SparseMatrixBase::getRow" ref="a7b90ca3fa6d24a03f65ba86b19519cd5" args="(size_t i)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Row&amp; getRow </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve a row as a writeable reference. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a3090ae9f75c3a369290ba94243cd7dba"></a><!-- doxytag: member="LinBox::SparseMatrixBase::operator[]" ref="a3090ae9f75c3a369290ba94243cd7dba" args="(size_t i)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Row&amp; operator[] </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve a row as a writeable reference. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a444bc45e95554a7ec243e9a6f193b565"></a><!-- doxytag: member="LinBox::SparseMatrixBase::operator[]" ref="a444bc45e95554a7ec243e9a6f193b565" args="(size_t i) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ConstRow&amp; operator[] </td>
          <td>(</td>
          <td class="paramtype">size_t&#160;</td>
          <td class="paramname"><em>i</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Retrieve a row as a read-only reference. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">i</td><td>Row index </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a19189e2bf3b6fde9fe865546d38af9d1"></a><!-- doxytag: member="LinBox::SparseMatrixBase::columnDensity" ref="a19189e2bf3b6fde9fe865546d38af9d1" args="(Vector &amp;v) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Vector &amp; columnDensity </td>
          <td>(</td>
          <td class="paramtype">Vector &amp;&#160;</td>
          <td class="paramname"><em>v</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Compute the column density, i.e the number of entries per column. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">v</td><td>Vector in which to store column density </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a00c9d379248095605453d2caaeb81fac"></a><!-- doxytag: member="LinBox::SparseMatrixBase::transpose" ref="a00c9d379248095605453d2caaeb81fac" args="(SparseMatrixBase &amp;AT) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a>&lt; Element, Row, VectorCategories::SparseParallelVectorTag &gt; &amp; transpose </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_lin_box_1_1_sparse_matrix_base.html">SparseMatrixBase</a>&lt; _Element, _Row, Trait &gt; &amp;&#160;</td>
          <td class="paramname"><em>AT</em></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct the transpose of this matrix and place it in the matrix given. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">AT</td><td></td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>matrix/sparse.h</li>
<li>matrix/sparse.inl</li>
</ul>
</div>
<hr class="footer"/><address class="footer"><small>Generated on Tue Aug 30 2011 for linbox by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>