<!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: DenseMatrixBase< _Element > 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 Page</span></a></li> <li><a href="pages.html"><span>Related 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 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 Structures</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Data 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_dense_matrix_base.html">DenseMatrixBase</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#nested-classes">Data Structures</a> | <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <div class="title">DenseMatrixBase< _Element > 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::DenseMatrixBase" --> <p><a class="el" href="namespace_lin_box.html" title="Namespace in which all linbox code resides.">LinBox</a> dense matrix template. <a href="class_lin_box_1_1_dense_matrix_base.html#details">More...</a></p> <p><code>#include <dense.h></code></p> <table class="memberdecls"> <tr><td colspan="2"><h2><a name="nested-classes"></a> Data Structures</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_col_iterator.html">ColIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Col Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_col_iterator.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_col_iterator.html">ConstColIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Const Col Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_const_col_iterator.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_raw_indexed_iterator.html">ConstRawIndexedIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Const Raw Indexed Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_const_raw_indexed_iterator.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_row_iterator.html">ConstRowIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Const Row Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_const_row_iterator.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_raw_indexed_iterator.html">RawIndexedIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Raw Indexed Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_raw_indexed_iterator.html#details">More...</a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_row_iterator.html">RowIterator</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Row Iterator. <a href="class_lin_box_1_1_dense_matrix_base_1_1_row_iterator.html#details">More...</a><br/></td></tr> <tr><td colspan="2"><h2><a name="pub-types"></a> Public Types</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f18dc60ef944a9080f128748dc7e281"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Element" ref="a8f18dc60ef944a9080f128748dc7e281" args="" --> typedef _Element </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Element type. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af43ea4e3eedf5b2c2af8601b25e6ff25"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Rep" ref="af43ea4e3eedf5b2c2af8601b25e6ff25" args="" --> typedef <a class="el" href="struct_lin_box_1_1_raw_vector.html">RawVector</a>< <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> >::Dense </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#af43ea4e3eedf5b2c2af8601b25e6ff25">Rep</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">No doc. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5aa325d912d9cf2ccaa09ce60eab0e72"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Self_t" ref="a5aa325d912d9cf2ccaa09ce60eab0e72" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>< _Element > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a5aa325d912d9cf2ccaa09ce60eab0e72">Self_t</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Self type. <br/></td></tr> <tr><td colspan="2"><h2><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30844d17fbef1010308473a56f51c9c6"></a><!-- doxytag: member="LinBox::DenseMatrixBase::DenseMatrixBase" ref="a30844d17fbef1010308473a56f51c9c6" args="()" -->  </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a30844d17fbef1010308473a56f51c9c6">DenseMatrixBase</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">NULL constructor. <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a11dd20432011bcb0cb3aa5663f1ef2a3">DenseMatrixBase</a> (size_t m, size_t n)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#a11dd20432011bcb0cb3aa5663f1ef2a3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a261b8b9045e72a1ad36a79ce6ac983eb">DenseMatrixBase</a> (std::vector< <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> > &data, size_t m, size_t n)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#a261b8b9045e72a1ad36a79ce6ac983eb"></a><br/></td></tr> <tr><td class="memTemplParams" colspan="2">template<class Field > </td></tr> <tr><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#ab65ae3465e345ad6f0c85fe5ae253467">DenseMatrixBase</a> (<a class="el" href="class_lin_box_1_1_matrix_stream.html">MatrixStream</a>< Field > &ms)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor from a matrix stream. <a href="#ab65ae3465e345ad6f0c85fe5ae253467"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8d96945761a492776ddcb7b7b3847b7d">DenseMatrixBase</a> (const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a> &Mat)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">copy constructor. <a href="#a8d96945761a492776ddcb7b7b3847b7d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a4d6918012ff0aba2b79dc04318c4ddf6">operator=</a> (const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a> &Mat)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">destructor. <a href="#a4d6918012ff0aba2b79dc04318c4ddf6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a3d6ecac3550b79b4c157aa3c44d2bac6">FullIterator</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a pointer on the storage of the elements. <a href="#a3d6ecac3550b79b4c157aa3c44d2bac6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">rowdim</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of rows in the matrix. <a href="#a0fee90e6b8ef7fcd8d76a7f3e1f268e6"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a32edb490d3597f5553152d14b102e227">coldim</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the number of columns in the matrix. <a href="#a32edb490d3597f5553152d14b102e227"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a0a4488dda5f370f56b9eab4fe8a54683">resize</a> (size_t m, size_t n, const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> &val=<a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>())</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Resize the matrix to the given dimensions. <a href="#a0a4488dda5f370f56b9eab4fe8a54683"></a><br/></td></tr> <tr><td class="memTemplParams" colspan="2">template<class Field > </td></tr> <tr><td class="memTemplItemLeft" align="right" valign="top">std::istream & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#ae55bf576d244dace8eed51f8efda15da">read</a> (std::istream &file, const Field &F)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read the matrix from an input stream. <a href="#ae55bf576d244dace8eed51f8efda15da"></a><br/></td></tr> <tr><td class="memTemplParams" colspan="2">template<class Field > </td></tr> <tr><td class="memTemplItemLeft" align="right" valign="top">std::ostream & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a41548dfcc13429cf02532130756969fd">write</a> (std::ostream &os, const Field &F, bool mapleFormat=true) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the matrix to an output stream. <a href="#a41548dfcc13429cf02532130756969fd"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::ostream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#af45a6e5451ad71a7f0918c6b1c59326f">write</a> (std::ostream &os, bool mapleFormat=true) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write brutally the matrix to an output stream. <a href="#af45a6e5451ad71a7f0918c6b1c59326f"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#aa125275fb11b55df52933a488ca9a6f3">setEntry</a> (size_t i, size_t j, const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> &a_ij)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the entry at the (i, j) position to a_ij. <a href="#aa125275fb11b55df52933a488ca9a6f3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a626f1fbac5cfe5468da6581c54256825">refEntry</a> (size_t i, size_t j)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a writeable reference to the entry in the (i, j) position. <a href="#a626f1fbac5cfe5468da6581c54256825"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a725d135bb8767ea6769811242e20685b">getEntry</a> (size_t i, size_t j) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get a read-only reference to the entry in the (i, j) position. <a href="#a725d135bb8767ea6769811242e20685b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a7175207b21737a612ed84ec9c4c4321a">getEntry</a> (<a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> &x, size_t i, size_t j) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy the (i, j) entry into x, and return a reference to x. <a href="#a7175207b21737a612ed84ec9c4c4321a"></a><br/></td></tr> <tr><td class="memTemplParams" colspan="2">template<class Vector > </td></tr> <tr><td class="memTemplItemLeft" align="right" valign="top">Vector & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a9ace56625d76410e60e7708977c23a6e">columnDensity</a> (Vector &v) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute column density. <a href="#a9ace56625d76410e60e7708977c23a6e"></a><br/></td></tr> <tr><td colspan="2"><div class="groupHeader">Raw Indexed iterator</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>Like the raw iterator, the indexed iterator is a method for accessing all entries in the matrix in some unspecified order.</p> <p>At each position of the the indexed iterator, it also provides the row and column indices of the currently referenced entry. This is provided through it's <code>rowIndex()</code> and <code>colIndex()</code> functions. </p> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c98b9004a17c0dd558acff480f57a27"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawIndexedBegin" ref="a4c98b9004a17c0dd558acff480f57a27" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_raw_indexed_iterator.html">RawIndexedIterator</a> </td><td class="memItemRight" valign="bottom"><b>rawIndexedBegin</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a39cc93e29e0cd6dc5c67173eb031a38d"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawIndexedEnd" ref="a39cc93e29e0cd6dc5c67173eb031a38d" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_raw_indexed_iterator.html">RawIndexedIterator</a> </td><td class="memItemRight" valign="bottom"><b>rawIndexedEnd</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af77f8ae907d10cb158af7171b07c6dff"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawIndexedBegin" ref="af77f8ae907d10cb158af7171b07c6dff" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_raw_indexed_iterator.html">ConstRawIndexedIterator</a> </td><td class="memItemRight" valign="bottom"><b>rawIndexedBegin</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af289bfba5bfda5b17071b661b5ecebc7"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawIndexedEnd" ref="af289bfba5bfda5b17071b661b5ecebc7" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_raw_indexed_iterator.html">ConstRawIndexedIterator</a> </td><td class="memItemRight" valign="bottom"><b>rawIndexedEnd</b> () const </td></tr> <tr><td colspan="2"><div class="groupHeader"></div></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_subvector.html">Row</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a443b28c1930db3fb8a8b0a5da0a69972">operator[]</a> (size_t i)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve a reference to a row. <a href="#a443b28c1930db3fb8a8b0a5da0a69972"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_subvector.html">ConstRow</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a229b646e8ec107a14b81a4bc29bedd25">operator[]</a> (size_t i) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Retrieve a reference to a row. <a href="#a229b646e8ec107a14b81a4bc29bedd25"></a><br/></td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Column of rows iterator</h2></td></tr> <tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpbea8100b5dbae693b011d21561d5d1ef"></a>The column of rows iterator traverses the rows of the matrix in ascending order.</p> <p>Dereferencing the iterator yields a row vector in dense format </p> </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acdcf4b1a1043c3c02815f9cca2e54a3c"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Row" ref="acdcf4b1a1043c3c02815f9cca2e54a3c" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">Subvector</a>< typename <br class="typebreak"/> Rep::iterator, typename <br class="typebreak"/> Rep::const_iterator > </td><td class="memItemRight" valign="bottom"><b>Row</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af9b708d7c63a82b076b00a4934d6b6dd"></a><!-- doxytag: member="LinBox::DenseMatrixBase::ConstRow" ref="af9b708d7c63a82b076b00a4934d6b6dd" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">Subvector</a>< typename <br class="typebreak"/> Rep::const_iterator > </td><td class="memItemRight" valign="bottom"><b>ConstRow</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f97420df32f9ec9b7a8783530a7e14b"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rowBegin" ref="a9f97420df32f9ec9b7a8783530a7e14b" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_row_iterator.html">RowIterator</a> </td><td class="memItemRight" valign="bottom"><b>rowBegin</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dfca7e9fc31e4f055852c3a6ccee9b4"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rowEnd" ref="a1dfca7e9fc31e4f055852c3a6ccee9b4" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_row_iterator.html">RowIterator</a> </td><td class="memItemRight" valign="bottom"><b>rowEnd</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af0a462e39aa170ed9ed016c77c3001fe"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rowBegin" ref="af0a462e39aa170ed9ed016c77c3001fe" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_row_iterator.html">ConstRowIterator</a> </td><td class="memItemRight" valign="bottom"><b>rowBegin</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66aa38d57b7092ba2b96f412e69142c7"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rowEnd" ref="a66aa38d57b7092ba2b96f412e69142c7" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_row_iterator.html">ConstRowIterator</a> </td><td class="memItemRight" valign="bottom"><b>rowEnd</b> () const </td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Row of columns iterator</h2></td></tr> <tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrp6cce9b735cacc345540a8044118dcc17"></a>The row of columns iterator traverses the columns of the matrix in ascending order.</p> <p>Dereferencing the iterator yields a column vector in dense format </p> </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80713db5778370d5a22bc05835080266"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Col" ref="a80713db5778370d5a22bc05835080266" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">Subvector</a>< <a class="el" href="class_lin_box_1_1_subiterator.html">Subiterator</a><br class="typebreak"/> < typename Rep::iterator > > </td><td class="memItemRight" valign="bottom"><b>Col</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac842421264a49857adbcb2407a46b554"></a><!-- doxytag: member="LinBox::DenseMatrixBase::ConstCol" ref="ac842421264a49857adbcb2407a46b554" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">Subvector</a>< <a class="el" href="class_lin_box_1_1_subiterator.html">Subiterator</a><br class="typebreak"/> < typename Rep::const_iterator > > </td><td class="memItemRight" valign="bottom"><b>ConstCol</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69da390cc58b7949adef750be8cc1ad8"></a><!-- doxytag: member="LinBox::DenseMatrixBase::Column" ref="a69da390cc58b7949adef750be8cc1ad8" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">Col</a> </td><td class="memItemRight" valign="bottom"><b>Column</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88fd4d1c152c519d225d56d184c825d6"></a><!-- doxytag: member="LinBox::DenseMatrixBase::ConstColumn" ref="a88fd4d1c152c519d225d56d184c825d6" args="" --> typedef <a class="el" href="class_lin_box_1_1_subvector.html">ConstCol</a> </td><td class="memItemRight" valign="bottom"><b>ConstColumn</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78606262ce2bdb5944164ead4f253933"></a><!-- doxytag: member="LinBox::DenseMatrixBase::colBegin" ref="a78606262ce2bdb5944164ead4f253933" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_col_iterator.html">ColIterator</a> </td><td class="memItemRight" valign="bottom"><b>colBegin</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7aff200f9614e540ed47144016b67da"></a><!-- doxytag: member="LinBox::DenseMatrixBase::colEnd" ref="af7aff200f9614e540ed47144016b67da" args="()" --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_col_iterator.html">ColIterator</a> </td><td class="memItemRight" valign="bottom"><b>colEnd</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a152bc607859f30190c0adbab49caf447"></a><!-- doxytag: member="LinBox::DenseMatrixBase::colBegin" ref="a152bc607859f30190c0adbab49caf447" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_col_iterator.html">ConstColIterator</a> </td><td class="memItemRight" valign="bottom"><b>colBegin</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca341e6f3388d13b8600932eeca77a13"></a><!-- doxytag: member="LinBox::DenseMatrixBase::colEnd" ref="aca341e6f3388d13b8600932eeca77a13" args="() const " --> <a class="el" href="class_lin_box_1_1_dense_matrix_base_1_1_const_col_iterator.html">ConstColIterator</a> </td><td class="memItemRight" valign="bottom"><b>colEnd</b> () const </td></tr> <tr><td colspan="2"><h2><a name="member-group"></a> Raw iterator</h2></td></tr> <tr><td class="ititle" colspan="2"><p><a class="anchor" id="amgrpec70ed40e1136f3e443142fab4dd004c"></a>The raw iterator is a method for accessing all 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> </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88c02ed14ae6c28e600dfabe3f6588d4"></a><!-- doxytag: member="LinBox::DenseMatrixBase::RawIterator" ref="a88c02ed14ae6c28e600dfabe3f6588d4" args="" --> typedef Rep::iterator </td><td class="memItemRight" valign="bottom"><b>RawIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a877fc89dda796b48fcd8b3efaea9cb95"></a><!-- doxytag: member="LinBox::DenseMatrixBase::ConstRawIterator" ref="a877fc89dda796b48fcd8b3efaea9cb95" args="" --> typedef Rep::const_iterator </td><td class="memItemRight" valign="bottom"><b>ConstRawIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5edc7a1ead720a577ef59a4603c29c81"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawBegin" ref="a5edc7a1ead720a577ef59a4603c29c81" args="()" --> RawIterator </td><td class="memItemRight" valign="bottom"><b>rawBegin</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa423adf4ef9d10552205ea216c3a1c5d"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawEnd" ref="aa423adf4ef9d10552205ea216c3a1c5d" args="()" --> RawIterator </td><td class="memItemRight" valign="bottom"><b>rawEnd</b> ()</td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a893a435afee540b274c18849da1cda02"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawBegin" ref="a893a435afee540b274c18849da1cda02" args="() const " --> ConstRawIterator </td><td class="memItemRight" valign="bottom"><b>rawBegin</b> () const </td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58146a025e5af94e8c1a94c24e69d14e"></a><!-- doxytag: member="LinBox::DenseMatrixBase::rawEnd" ref="a58146a025e5af94e8c1a94c24e69d14e" args="() const " --> ConstRawIterator </td><td class="memItemRight" valign="bottom"><b>rawEnd</b> () const </td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><h3>template<class _Element><br/> class LinBox::DenseMatrixBase< _Element ></h3> <p><a class="el" href="namespace_lin_box.html" title="Namespace in which all linbox code resides.">LinBox</a> dense matrix template. </p> <p>This is a class of dense matrices templatized by the entry type, the <code>Element</code> type of some <a class="el" href="group___fields.html">field</a>. The matrix is stored as a one dimensional STL <code>std::vector</code> of the elements, by rows. The interface provides for iteration over rows and over columns.</p> <p>The class <code><a class="el" href="class_lin_box_1_1_dense_matrix.html" title="Blackbox interface to dense matrix representation.">LinBox::DenseMatrix</a></code> builds on this base.</p> <p>Currently, only dense vectors are supported when doing matrix-vector applies. </p> </div><hr/><h2>Constructor & Destructor Documentation</h2> <a class="anchor" id="a11dd20432011bcb0cb3aa5663f1ef2a3"></a><!-- doxytag: member="LinBox::DenseMatrixBase::DenseMatrixBase" ref="a11dd20432011bcb0cb3aa5663f1ef2a3" 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_dense_matrix_base.html">DenseMatrixBase</a> </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>n</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </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="a261b8b9045e72a1ad36a79ce6ac983eb"></a><!-- doxytag: member="LinBox::DenseMatrixBase::DenseMatrixBase" ref="a261b8b9045e72a1ad36a79ce6ac983eb" args="(std::vector< Element > &data, 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_dense_matrix_base.html">DenseMatrixBase</a> </td> <td>(</td> <td class="paramtype">std::vector< <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> > & </td> <td class="paramname"><em>data</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>n</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">data</td><td>vector to take data from (such that <code>A[i,j] == data[i*n+j]</code>) </td></tr> <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="ab65ae3465e345ad6f0c85fe5ae253467"></a><!-- doxytag: member="LinBox::DenseMatrixBase::DenseMatrixBase" ref="ab65ae3465e345ad6f0c85fe5ae253467" args="(MatrixStream< Field > &ms)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a> </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_matrix_stream.html">MatrixStream</a>< Field > & </td> <td class="paramname"><em>ms</em></td><td>)</td> <td></td> </tr> </table> </div> <div class="memdoc"> <p>Constructor from a matrix stream. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">ms</td><td>matrix stream </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a8d96945761a492776ddcb7b7b3847b7d"></a><!-- doxytag: member="LinBox::DenseMatrixBase::DenseMatrixBase" ref="a8d96945761a492776ddcb7b7b3847b7d" args="(const DenseMatrixBase &Mat)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a> </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>< _Element > & </td> <td class="paramname"><em>Mat</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>copy constructor. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">M</td><td>Dense matrix to be copied. </td></tr> </table> </dd> </dl> </div> </div> <hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a4d6918012ff0aba2b79dc04318c4ddf6"></a><!-- doxytag: member="LinBox::DenseMatrixBase::operator=" ref="a4d6918012ff0aba2b79dc04318c4ddf6" args="(const DenseMatrixBase &Mat)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>& operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>< _Element > & </td> <td class="paramname"><em>Mat</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>destructor. </p> <p>copy operator. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">M</td><td>matrix to be copied. </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a3d6ecac3550b79b4c157aa3c44d2bac6"></a><!-- doxytag: member="LinBox::DenseMatrixBase::FullIterator" ref="a3d6ecac3550b79b4c157aa3c44d2bac6" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>* FullIterator </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a pointer on the storage of the elements. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>a pointer on Elements /todo What is this? </dd></dl> </div> </div> <a class="anchor" id="a0fee90e6b8ef7fcd8d76a7f3e1f268e6"></a><!-- doxytag: member="LinBox::DenseMatrixBase::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>Get the number of rows in the matrix. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>Number of rows in matrix </dd></dl> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_dense_matrix.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">DenseMatrix< _Field ></a>, <a class="el" href="class_lin_box_1_1_dense_matrix.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">DenseMatrix< Field ></a>, and <a class="el" href="class_lin_box_1_1_dense_matrix.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">DenseMatrix< Domain ></a>.</p> </div> </div> <a class="anchor" id="a32edb490d3597f5553152d14b102e227"></a><!-- doxytag: member="LinBox::DenseMatrixBase::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>Get the number of columns in the matrix. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>Number of columns in matrix </dd></dl> <p>Reimplemented in <a class="el" href="class_lin_box_1_1_dense_matrix.html#a32edb490d3597f5553152d14b102e227">DenseMatrix< _Field ></a>, <a class="el" href="class_lin_box_1_1_dense_matrix.html#a32edb490d3597f5553152d14b102e227">DenseMatrix< Field ></a>, and <a class="el" href="class_lin_box_1_1_dense_matrix.html#a32edb490d3597f5553152d14b102e227">DenseMatrix< Domain ></a>.</p> </div> </div> <a class="anchor" id="a0a4488dda5f370f56b9eab4fe8a54683"></a><!-- doxytag: member="LinBox::DenseMatrixBase::resize" ref="a0a4488dda5f370f56b9eab4fe8a54683" args="(size_t m, size_t n, const Element &val=Element())" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void resize </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>n</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td> <td class="paramname"><em>val</em> = <code><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>()</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Resize the matrix to the given dimensions. </p> <p>The state of the matrix's entries after a call to this method is undefined </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">m</td><td>Number of rows </td></tr> <tr><td class="paramname">n</td><td>Number of columns </td></tr> <tr><td class="paramname">val</td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ae55bf576d244dace8eed51f8efda15da"></a><!-- doxytag: member="LinBox::DenseMatrixBase::read" ref="ae55bf576d244dace8eed51f8efda15da" args="(std::istream &file, const Field &F)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::istream & read </td> <td>(</td> <td class="paramtype">std::istream & </td> <td class="paramname"><em>file</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Field & </td> <td class="paramname"><em>F</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div> <div class="memdoc"> <p>Read the matrix from an input stream. </p> <p>The stream is in SMS or DENSE format </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">file</td><td>Input stream from which to read </td></tr> <tr><td class="paramname">F</td><td>Field over which to read </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a41548dfcc13429cf02532130756969fd"></a><!-- doxytag: member="LinBox::DenseMatrixBase::write" ref="a41548dfcc13429cf02532130756969fd" args="(std::ostream &os, const Field &F, bool mapleFormat=true) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::ostream & write </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"><em>os</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const Field & </td> <td class="paramname"><em>F</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>mapleFormat</em> = <code>true</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Write the matrix to an output stream. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">os</td><td>Output stream to which to write </td></tr> <tr><td class="paramname">F</td><td>Field over which to write </td></tr> <tr><td class="paramname">mapleFormat</td><td>write in Maple format ? </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="af45a6e5451ad71a7f0918c6b1c59326f"></a><!-- doxytag: member="LinBox::DenseMatrixBase::write" ref="af45a6e5451ad71a7f0918c6b1c59326f" args="(std::ostream &os, bool mapleFormat=true) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">std::ostream & write </td> <td>(</td> <td class="paramtype">std::ostream & </td> <td class="paramname"><em>os</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>mapleFormat</em> = <code>true</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div> <div class="memdoc"> <p>Write brutally the matrix to an output stream. </p> <p>This a raw version of <code>write(os,F)</code> (no field is given). </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">os</td><td>Output stream to which to write </td></tr> <tr><td class="paramname">mapleFormat</td><td>write in maple format ? </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aa125275fb11b55df52933a488ca9a6f3"></a><!-- doxytag: member="LinBox::DenseMatrixBase::setEntry" ref="aa125275fb11b55df52933a488ca9a6f3" args="(size_t i, size_t j, const Element &a_ij)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void setEntry </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>j</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td> <td class="paramname"><em>a_ij</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the entry at the (i, j) position to a_ij. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">i</td><td>Row number, 0...rowdim () - 1 </td></tr> <tr><td class="paramname">j</td><td>Column number 0...coldim () - 1 </td></tr> <tr><td class="paramname">a_ij</td><td>Element to set </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a626f1fbac5cfe5468da6581c54256825"></a><!-- doxytag: member="LinBox::DenseMatrixBase::refEntry" ref="a626f1fbac5cfe5468da6581c54256825" args="(size_t i, size_t j)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>& refEntry </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>j</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a writeable reference to the entry in the (i, j) position. </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="a725d135bb8767ea6769811242e20685b"></a><!-- doxytag: member="LinBox::DenseMatrixBase::getEntry" ref="a725d135bb8767ea6769811242e20685b" args="(size_t i, size_t j) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>& getEntry </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>j</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a read-only reference to the entry in the (i, j) position. </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::DenseMatrixBase::getEntry" ref="a7175207b21737a612ed84ec9c4c4321a" args="(Element &x, size_t i, size_t j) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a>& getEntry </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">size_t </td> <td class="paramname"><em>j</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Copy the (i, j) entry into x, and return a reference to x. </p> <p>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="a443b28c1930db3fb8a8b0a5da0a69972"></a><!-- doxytag: member="LinBox::DenseMatrixBase::operator[]" ref="a443b28c1930db3fb8a8b0a5da0a69972" args="(size_t i)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_subvector.html">Row</a> operator[] </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em></td><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Retrieve a reference to a row. </p> <p>Since rows may also be indexed, this allows A[i][j] notation to be used. </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="a229b646e8ec107a14b81a4bc29bedd25"></a><!-- doxytag: member="LinBox::DenseMatrixBase::operator[]" ref="a229b646e8ec107a14b81a4bc29bedd25" args="(size_t i) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_subvector.html">ConstRow</a> operator[] </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>i</em></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Retrieve a reference to a row. </p> <p>Since rows may also be indexed, this allows A[i][j] notation to be used. </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="a9ace56625d76410e60e7708977c23a6e"></a><!-- doxytag: member="LinBox::DenseMatrixBase::columnDensity" ref="a9ace56625d76410e60e7708977c23a6e" args="(Vector &v) const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">Vector& columnDensity </td> <td>(</td> <td class="paramtype">Vector & </td> <td class="paramname"><em>v</em></td><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Compute column density. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">v</td><td></td></tr> </table> </dd> </dl> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="matrix_2dense_8h.html">matrix/dense.h</a></li> <li>matrix/dense.inl</li> </ul> </div> <hr class="footer"/><address class="footer"><small>Generated on Tue Aug 30 2011 for linbox by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address> </body> </html>