<!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: BlasBlackbox< _Field > 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_blas_blackbox.html">BlasBlackbox</a> </li> </ul> </div> </div> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> </div> <div class="headertitle"> <div class="title">BlasBlackbox< _Field > Class Template Reference<div class="ingroups"><a class="el" href="group__blackbox.html">blackbox</a></div></div> </div> </div> <div class="contents"> <!-- doxytag: class="LinBox::BlasBlackbox" --><!-- doxytag: inherits="BlasMatrix< _Field::Element >" --> <p>Dense matrix representation for BLAS based elimination. <a href="class_lin_box_1_1_blas_blackbox.html#details">More...</a></p> <p><code>#include <blas-blackbox.h></code></p> <div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> <img id="dynsection-0-trigger" src="closed.png"/> Inheritance diagram for BlasBlackbox< _Field >:</div> <div id="dynsection-0-summary" class="dynsummary" style="display:block;"> </div> <div id="dynsection-0-content" class="dyncontent" style="display:none;"> <div class="center"> <img src="class_lin_box_1_1_blas_blackbox.png" usemap="#BlasBlackbox< _Field >_map" alt=""/> <map id="BlasBlackbox< _Field >_map" name="BlasBlackbox< _Field >_map"> <area href="class_lin_box_1_1_blas_matrix.html" alt="BlasMatrix< _Field::Element >" shape="rect" coords="0,56,212,80"/> <area href="class_lin_box_1_1_dense_submatrix.html" alt="DenseSubmatrix< _Field::Element >" shape="rect" coords="0,0,212,24"/> </map> </div></div> <table class="memberdecls"> <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="a41bf9f872e3af67d367637e745169dc7"></a><!-- doxytag: member="LinBox::BlasBlackbox::Element" ref="a41bf9f872e3af67d367637e745169dc7" args="" --> typedef Field::Element </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">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="aabbe2dc19f8c63188c20a2caa1f739b7"></a><!-- doxytag: member="LinBox::BlasBlackbox::Self_t" ref="aabbe2dc19f8c63188c20a2caa1f739b7" args="" --> typedef <a class="el" href="class_lin_box_1_1_blas_blackbox.html">BlasBlackbox</a>< _Field > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_blackbox.html#aabbe2dc19f8c63188c20a2caa1f739b7">Self_t</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Self type. <br/></td></tr> <tr><td colspan="2"><div class="groupHeader">typedef'd Row Iterators.</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>The row iterator gives the rows of the matrix in ascending order.</p> <p>Dereferencing the iterator yields a row vector in dense format </p> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed3f75aaa69dc155e1a0441028c14f31"></a><!-- doxytag: member="LinBox::BlasBlackbox::RowIterator" ref="aed3f75aaa69dc155e1a0441028c14f31" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::RowIterator </td><td class="memItemRight" valign="bottom"><b>RowIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e07e29f61efa2e7d1709a91a82b26d0"></a><!-- doxytag: member="LinBox::BlasBlackbox::ConstRowIterator" ref="a3e07e29f61efa2e7d1709a91a82b26d0" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::ConstRowIterator </td><td class="memItemRight" valign="bottom"><b>ConstRowIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3dcd62affba14bb2318a24df993b7383"></a><!-- doxytag: member="LinBox::BlasBlackbox::Row" ref="a3dcd62affba14bb2318a24df993b7383" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::Row </td><td class="memItemRight" valign="bottom"><b>Row</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cda24ecb96f884003453657f180d48b"></a><!-- doxytag: member="LinBox::BlasBlackbox::ConstRow" ref="a6cda24ecb96f884003453657f180d48b" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::ConstRow </td><td class="memItemRight" valign="bottom"><b>ConstRow</b></td></tr> <tr><td colspan="2"><div class="groupHeader">typedef'd Column Iterators.</div></td></tr> <tr><td colspan="2"><div class="groupText"><p>The columns iterator gives the columns of the matrix in ascending order.</p> <p>Dereferencing the iterator yields a column vector in dense format </p> </div></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade3b4b6f6044e859490261405c377468"></a><!-- doxytag: member="LinBox::BlasBlackbox::ColIterator" ref="ade3b4b6f6044e859490261405c377468" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::ColIterator </td><td class="memItemRight" valign="bottom"><b>ColIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3712fa9fdc4116fe213ded831072fb11"></a><!-- doxytag: member="LinBox::BlasBlackbox::ConstColIterator" ref="a3712fa9fdc4116fe213ded831072fb11" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::ConstColIterator </td><td class="memItemRight" valign="bottom"><b>ConstColIterator</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a705804a7fa36e76af73243b33ebf9050"></a><!-- doxytag: member="LinBox::BlasBlackbox::Col" ref="a705804a7fa36e76af73243b33ebf9050" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::Col </td><td class="memItemRight" valign="bottom"><b>Col</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad80bb0232d41d1459df768278eec17f6"></a><!-- doxytag: member="LinBox::BlasBlackbox::Column" ref="ad80bb0232d41d1459df768278eec17f6" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::Column </td><td class="memItemRight" valign="bottom"><b>Column</b></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a547c3dd36df65cc9d0172244a978aeab"></a><!-- doxytag: member="LinBox::BlasBlackbox::ConstCol" ref="a547c3dd36df65cc9d0172244a978aeab" args="" --> typedef <a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a><br class="typebreak"/> < <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> >::ConstCol </td><td class="memItemRight" valign="bottom"><b>ConstCol</b></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">size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_blackbox.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_blas_blackbox.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">std::istream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_blackbox.html#aa5fe4295a448d9c816e092871b8b83eb">read</a> (std::istream &file)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read the blackbox from an input stream. <a href="#aa5fe4295a448d9c816e092871b8b83eb"></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_blas_blackbox.html#acd22def76f55c19076bb6c86104beaf0">write</a> (std::ostream &os) const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the blackbox to an output stream. <a href="#acd22def76f55c19076bb6c86104beaf0"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a561a146375ba1b0d22c886807b26033d"></a><!-- doxytag: member="LinBox::BlasBlackbox::getPointer" ref="a561a146375ba1b0d22c886807b26033d" args="() const" --> pointer </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_matrix.html#a561a146375ba1b0d22c886807b26033d">getPointer</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"> . <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d66b44c32d21bba4bb660a49639ce18"></a><!-- doxytag: member="LinBox::BlasBlackbox::getWritePointer" ref="a0d66b44c32d21bba4bb660a49639ce18" args="()" --> pointer & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_matrix.html#a0d66b44c32d21bba4bb660a49639ce18">getWritePointer</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"> . <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b28a3ac34139a89d18d80cf3bc7041b"></a><!-- doxytag: member="LinBox::BlasBlackbox::getStride" ref="a5b28a3ac34139a89d18d80cf3bc7041b" args="() const" --> size_t </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_matrix.html#a5b28a3ac34139a89d18d80cf3bc7041b">getStride</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"> . <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc3da94f352f74fadea11ba18f9b8199"></a><!-- doxytag: member="LinBox::BlasBlackbox::getWriteStride" ref="afc3da94f352f74fadea11ba18f9b8199" args="()" --> size_t & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_blas_matrix.html#afc3da94f352f74fadea11ba18f9b8199">getWriteStride</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight"> . <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">std::istream & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a5837a37ae1455cb836163f528bf31030">read</a> (std::istream &file, const Field &field)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Read the matrix from an input stream. <a href="#a5837a37ae1455cb836163f528bf31030"></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_submatrix.html#a2b42b5eeaf6304c04dc714ab780d141d">write</a> (std::ostream &os, const Field &field, bool mapleFormat=false) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the matrix to an output stream. <a href="#a2b42b5eeaf6304c04dc714ab780d141d"></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_submatrix.html#adf7c3e1a71e45fba7526f05099bce963">write</a> (std::ostream &os, bool mapleFormat=false) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Write the matrix to an output stream. <a href="#adf7c3e1a71e45fba7526f05099bce963"></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_submatrix.html#aa125275fb11b55df52933a488ca9a6f3">setEntry</a> (size_t i, size_t j, const <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> &a_ij)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the entry at (i, j). <a href="#aa125275fb11b55df52933a488ca9a6f3"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.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 an entry in the matrix. <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_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.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 individual entry from the matrix. <a href="#a725d135bb8767ea6769811242e20685b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a7175207b21737a612ed84ec9c4c4321a">getEntry</a> (<a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> &x, size_t i, size_t j) const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get an entry and store it in the given value. <a href="#a7175207b21737a612ed84ec9c4c4321a"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ad70a7f26d6a21001925b68745f35b3"></a><!-- doxytag: member="LinBox::BlasBlackbox::rowBegin" ref="a7ad70a7f26d6a21001925b68745f35b3" args="()" --> RowIterator </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a7ad70a7f26d6a21001925b68745f35b3">rowBegin</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">iterator to the begining of a row <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a13d7629b807c6087784af7b61feb43"></a><!-- doxytag: member="LinBox::BlasBlackbox::rowBegin" ref="a7a13d7629b807c6087784af7b61feb43" args="() const" --> ConstRowIterator </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a7a13d7629b807c6087784af7b61feb43">rowBegin</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">const iterator to the begining of a row <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45950ab9aab096d689e3d8bc0852c80a"></a><!-- doxytag: member="LinBox::BlasBlackbox::rowEnd" ref="a45950ab9aab096d689e3d8bc0852c80a" args="()" --> RowIterator </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a45950ab9aab096d689e3d8bc0852c80a">rowEnd</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">iterator to the end of a row <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57fc99cfe43beb0ba80553ce9480be53"></a><!-- doxytag: member="LinBox::BlasBlackbox::rowEnd" ref="a57fc99cfe43beb0ba80553ce9480be53" args="() const" --> ConstRowIterator </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a57fc99cfe43beb0ba80553ce9480be53">rowEnd</a> () const</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">const iterator to the end of a row <br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a>< <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#a9118fd89a1d28c5c894886fc046c2415">transpose</a> (<a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>< <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> > &tM)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a transposed matrix of <code>*this</code>. <a href="#a9118fd89a1d28c5c894886fc046c2415"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a>< <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> > & </td><td class="memItemRight" valign="bottom"><a class="el" href="class_lin_box_1_1_dense_submatrix.html#aebe5de33e8428f87263a980dc7281a58">transpose</a> (<a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a>< <a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a> > &tA)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Creates a transposed matrix of <code>*this</code>. <a href="#aebe5de33e8428f87263a980dc7281a58"></a><br/></td></tr> </table> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><h3>template<class _Field><br/> class LinBox::BlasBlackbox< _Field ></h3> <p>Dense matrix representation for BLAS based elimination. </p> <p>A <a class="el" href="class_lin_box_1_1_blas_blackbox.html" title="Dense matrix representation for BLAS based elimination.">BlasBlackbox</a> can be constructed from any blackbox matrix. This costs n blackbox matrix vector products in general, but is efficiently done from a <a class="el" href="class_lin_box_1_1_dense_matrix.html" title="Blackbox interface to dense matrix representation.">DenseMatrix</a> or <a class="el" href="class_lin_box_1_1_sparse_matrix.html" title="vector of sparse rows.">SparseMatrix</a>. </p> <dl><dt><b>Examples: </b></dt><dd> <p><a class="el" href="examples_2checksolve_8_c-example.html#_a3">examples/checksolve.C</a>, <a class="el" href="examples_2det_8_c-example.html#_a5">examples/det.C</a>, and <a class="el" href="examples_2doubledet_8_c-example.html#_a2">examples/doubledet.C</a>.</p> </dd> </dl></div><hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a0fee90e6b8ef7fcd8d76a7f3e1f268e6"></a><!-- doxytag: member="LinBox::BlasBlackbox::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 from <a class="el" href="class_lin_box_1_1_dense_submatrix.html#a0fee90e6b8ef7fcd8d76a7f3e1f268e6">DenseSubmatrix< _Field::Element ></a>.</p> </div> </div> <a class="anchor" id="a32edb490d3597f5553152d14b102e227"></a><!-- doxytag: member="LinBox::BlasBlackbox::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 from <a class="el" href="class_lin_box_1_1_dense_submatrix.html#a32edb490d3597f5553152d14b102e227">DenseSubmatrix< _Field::Element ></a>.</p> </div> </div> <a class="anchor" id="aa5fe4295a448d9c816e092871b8b83eb"></a><!-- doxytag: member="LinBox::BlasBlackbox::read" ref="aa5fe4295a448d9c816e092871b8b83eb" args="(std::istream &file)" --> <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><td>)</td> <td><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Read the blackbox from an input stream. </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> </table> </dd> </dl> </div> </div> <a class="anchor" id="acd22def76f55c19076bb6c86104beaf0"></a><!-- doxytag: member="LinBox::BlasBlackbox::write" ref="acd22def76f55c19076bb6c86104beaf0" args="(std::ostream &os) 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><td>)</td> <td> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Write the blackbox 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> </table> </dd> </dl> </div> </div> <a class="anchor" id="a5837a37ae1455cb836163f528bf31030"></a><!-- doxytag: member="LinBox::BlasBlackbox::read" ref="a5837a37ae1455cb836163f528bf31030" args="(std::istream &file, const Field &field)" --> <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 <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> & </td> <td class="paramname"><em>field</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Read the matrix from an input stream. </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">field</td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="a2b42b5eeaf6304c04dc714ab780d141d"></a><!-- doxytag: member="LinBox::BlasBlackbox::write" ref="a2b42b5eeaf6304c04dc714ab780d141d" args="(std::ostream &os, const Field &field, bool mapleFormat=false) 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 <a class="el" href="class_lin_box_1_1_modular_3_01uint32__t_01_4.html">Field</a> & </td> <td class="paramname"><em>field</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"><em>mapleFormat</em> = <code>false</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inherited]</code></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">field</td><td></td></tr> <tr><td class="paramname">mapleFormat</td><td>write in Maple(r) format ? </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="adf7c3e1a71e45fba7526f05099bce963"></a><!-- doxytag: member="LinBox::BlasBlackbox::write" ref="adf7c3e1a71e45fba7526f05099bce963" args="(std::ostream &os, bool mapleFormat=false) 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>false</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const<code> [inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Write 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(r) format ? </td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="aa125275fb11b55df52933a488ca9a6f3"></a><!-- doxytag: member="LinBox::BlasBlackbox::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_submatrix.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> & </td> <td class="paramname"><em>a_ij</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td><code> [inline, inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Set the entry at (i, j). </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::BlasBlackbox::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_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">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, inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get a writeable reference to an entry in 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> </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::BlasBlackbox::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_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">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, inherited]</code></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::BlasBlackbox::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_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a>& getEntry </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_dense_submatrix.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, inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Get an entry and store it in the given value. </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="a9118fd89a1d28c5c894886fc046c2415"></a><!-- doxytag: member="LinBox::BlasBlackbox::transpose" ref="a9118fd89a1d28c5c894886fc046c2415" args="(DenseMatrixBase< Element > &tM)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a><<a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a>> transpose </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_dense_matrix_base.html">DenseMatrixBase</a>< <a class="el" href="class_lin_box_1_1_dense_submatrix.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> > & </td> <td class="paramname"><em>tM</em></td><td>)</td> <td><code> [inline, inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Creates a transposed matrix of <code>*this</code>. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramdir">[in]</td><td class="paramname">tM</td><td></td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>the transposed matrix of this. </dd></dl> </div> </div> <a class="anchor" id="aebe5de33e8428f87263a980dc7281a58"></a><!-- doxytag: member="LinBox::BlasBlackbox::transpose" ref="aebe5de33e8428f87263a980dc7281a58" args="(DenseSubmatrix< Element > &tA)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a><<a class="el" href="class_lin_box_1_1_blas_blackbox.html#a41bf9f872e3af67d367637e745169dc7">Element</a>>& transpose </td> <td>(</td> <td class="paramtype"><a class="el" href="class_lin_box_1_1_dense_submatrix.html">DenseSubmatrix</a>< <a class="el" href="class_lin_box_1_1_dense_submatrix.html#a8f18dc60ef944a9080f128748dc7e281">Element</a> > & </td> <td class="paramname"><em>tA</em></td><td>)</td> <td><code> [inline, inherited]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Creates a transposed matrix of <code>*this</code>. </p> <dl class="return"><dt><b>Returns:</b></dt><dd>the transposed matrix of this. </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li>blas-blackbox.h</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>