<!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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>CPPLapack: _dgsmatrix Class Reference</title>

<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css" />

<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>

</head>
<body>
<div id="top"><!-- do not remove this div! -->


<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  
  
  <td style="padding-left: 0.5em;">
   <div id="projectname">CPPLapack
   
   </div>
   
  </td>
  
  
  
 </tr>
 </tbody>
</table>
</div>

<!-- Generated by Doxygen 1.7.6.1 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li><a href="dirs.html"><span>Directories</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#friends">Friends</a>  </div>
  <div class="headertitle">
<div class="title">_dgsmatrix Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="_dgsmatrix" -->
<p>(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class  
 <a href="class__dgsmatrix.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>&gt;</code></p>

<p><a href="class__dgsmatrix-members.html">List of all members.</a></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__dgsmatrix.html#a7567a039d3eae179895698e9cfb012ef">_dgsmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a31b54a21454a285a873898615e7b0c1f">_dgsmatrix</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a83a20bddecbb06b7185b3e9844aff206">~_dgsmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ae34bbe850e84b07f667075e3def04e44">to_zgsmatrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a8ee46ca88a40609dba403a9b55df893e">operator()</a> (const long &amp;, const long &amp;) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#aa5b2161ebfb1d750307b255898685011">write</a> (const char *) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a44055dc8365ec91cfab620401db16f5b">nullify</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a> () const </td></tr>
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a">m</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix row size  <a href="#ac45fcfd8d9cddb1fae5b66cd9b7ac98a"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936">n</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix column size  <a href="#a8457e7af3a1e2ff7d8c3238260d59936"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classdcomponent.html">dcomponent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30">data</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix data  <a href="#a65ae5bc0001de27f9fe1fb13870b4a30"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector<br class="typebreak"/>
&lt; uint32_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25">rows</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">array of vector to store the entry information of component for each row  <a href="#abd696a694a45f2b696dd803419501d25"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; std::vector<br class="typebreak"/>
&lt; uint32_t &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738">cols</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">array of vector to store the entry information of component for each column  <a href="#a93cc648dd17686ae223bf6d38efb6738"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></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__dgsmatrix.html#abdb594324a4d71208946fbbd60efef28">operator&lt;&lt;</a> (std::ostream &amp;, const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a8c17aa54644d33621a94b5aada42ad74">t</a> (const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a9e1233248276a013ef55d63dd3fca37f">idamax</a> (long &amp;, long &amp;, const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a84651a5f38c682c250934df4434139fb">damax</a> (const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a0ec8d98b90ae1fcdba4a53c1eb27559e">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ab56cd189fcc962744d017daa25965c23">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a651fdbf43a87fa7fa31169211450f711">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a2a1e75a1680abf8c7077ecf1991f591f">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ae8ae032f2567cf9326e635fbb2051f14">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a422e4d82f54daf965366df188b1fec59">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#af728998da9286cd8cab353f8de6fadea">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#adf658064c0e3c32f94b9c14a3066f53b">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#aea82097c293282b2a1438e6d7eecca48">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a8af794bb4117d67d70ef16b3b131c680">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a695a4970bc2cbcc8a552bf77f2780095">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a8ff53329c014bcc72957227fc4d2c9cb">operator+</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a0e3588771311e68b2a90e4179e6fb2f6">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a72a5b480b1f4e598ad4da9f6f46f7f49">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#abe382e4c548c52d6893e36cddd1d50fb">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a933eba289a93c63d76d365473c8f2277">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a4d2a4b8f4f029116815f4f969b8b769f">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a4572546eedb1eecbe109e802c4153f75">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a3f0f682968d803e69bdced2069d46949">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a347839bef10b90378f9e0a790f8fd210">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a24bd0a9337f22c1e451f6fe8cb106c95">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#aa94871ba133adbcc7e7f8659ee9b7dc8">operator-</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dcovector.html">_dcovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a441ad8c8722fa559d0d530756961f985">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdcovector.html">dcovector</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dcovector.html">_dcovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#af40d82be1085aa5a0e9d8de4dcf12fe8">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dcovector.html">_dcovector</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a277a512c17ce02d0bd86b656adcac6e8">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#af62eae1ce5f5ab7aa379b854c5e5b847">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a1e6fd79517f59f065ea95766264448b7">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#aa633923adb767abec83b10e8f61c4758">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a1487a3ba3b80d456150d3505d2b9f805">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgematrix.html">_dgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a9c1968ae73dce8ec6a42feb098411623">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a4b53a093201e4983bd390d66e177b18c">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ae19d08ad3b75ae1a3d8ce606fa622d97">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#adb9a2e6bc7a63dc371622d69562c3149">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#ac0914507a3bb587615e5a653a4f428aa">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a22bd954f978d37c256fee1858117fe28">operator*</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a57aa58f564c0d54d3b9d3ae3dab94c0e">operator/</a> (const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__dgsmatrix.html#a630c2d6039519585ab830a34f32275a5">operator*</a> (const double &amp;, const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a7567a039d3eae179895698e9cfb012ef"></a><!-- doxytag: member="_dgsmatrix::_dgsmatrix" ref="a7567a039d3eae179895698e9cfb012ef" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html#a7567a039d3eae179895698e9cfb012ef">_dgsmatrix::_dgsmatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p><a class="el" href="class__dgsmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_dgsmatrix</a> constructor without arguments </p>

<p>Definition at line <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-constructor_8hpp_source.html">_dgsmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">cols</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> =0;
  <a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> =0;
  <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.clear();
  <a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>.clear();
  <a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>.clear();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a31b54a21454a285a873898615e7b0c1f"></a><!-- doxytag: member="_dgsmatrix::_dgsmatrix" ref="a31b54a21454a285a873898615e7b0c1f" args="(const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html#a7567a039d3eae179895698e9cfb012ef">_dgsmatrix::_dgsmatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p><a class="el" href="class__dgsmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_dgsmatrix</a> copy constructor </p>

<p>Definition at line <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00014">14</a> of file <a class="el" href="__dgsmatrix-constructor_8hpp_source.html">_dgsmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">cols</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> =mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>;
  <a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> =mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>;
  <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.swap(mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>);
  <a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>.swap(mat.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>);
  <a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>.swap(mat.<a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>);
  
  mat.<a class="code" href="class__dgsmatrix.html#a44055dc8365ec91cfab620401db16f5b">nullify</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a83a20bddecbb06b7185b3e9844aff206"></a><!-- doxytag: member="_dgsmatrix::~_dgsmatrix" ref="a83a20bddecbb06b7185b3e9844aff206" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html#a83a20bddecbb06b7185b3e9844aff206">_dgsmatrix::~_dgsmatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p><a class="el" href="class__dgsmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_dgsmatrix</a> destructor </p>

<p>Definition at line <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00031">31</a> of file <a class="el" href="__dgsmatrix-constructor_8hpp_source.html">_dgsmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">cols</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.clear();
  <a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>.clear();
  <a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>.clear();
}
</pre></div>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ae34bbe850e84b07f667075e3def04e44"></a><!-- doxytag: member="_dgsmatrix::to_zgsmatrix" ref="ae34bbe850e84b07f667075e3def04e44" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> <a class="el" href="class__dgsmatrix.html#ae34bbe850e84b07f667075e3def04e44">_dgsmatrix::to_zgsmatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>cast to <a class="el" href="class__zgsmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_zgsmatrix</a> </p>

<p>Definition at line <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-cast_8hpp_source.html">_dgsmatrix-cast.hpp</a>.</p>

<p>References <a class="el" href="dcovector-misc_8hpp_source.html#l00134">_()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="zgsmatrix-io_8hpp_source.html#l00054">zgsmatrix::put()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgsmatrix.html" title="Complex Double-precision General Sparse Matrix Class.">zgsmatrix</a> newmat(<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>,<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>,<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.size());
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat.<a class="code" href="classzgsmatrix.html#aa7645a41760adbe7b7f279b018b7c85a">put</a>(it-&gt;i, it-&gt;j, comple(it-&gt;v,0.));
  }
  
  <a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5cc312d49cf097ebee56c1550988f463"></a><!-- doxytag: member="_dgsmatrix::to_dgematrix" ref="a5cc312d49cf097ebee56c1550988f463" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> <a class="el" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">_dgsmatrix::to_dgematrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>convert to <a class="el" href="class__dgematrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Dence Matrix Class">_dgematrix</a> </p>

<p>Definition at line <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00021">21</a> of file <a class="el" href="__dgsmatrix-cast_8hpp_source.html">_dgsmatrix-cast.hpp</a>.</p>

<p>References <a class="el" href="dcovector-misc_8hpp_source.html#l00134">_()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="dgematrix-misc_8hpp_source.html#l00015">dgematrix::zero()</a>.</p>

<p>Referenced by <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00003">operator+()</a>, and <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html#l00028">operator-()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>,<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) = it-&gt;v;
  }
  
  <a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8ee46ca88a40609dba403a9b55df893e"></a><!-- doxytag: member="_dgsmatrix::operator()" ref="a8ee46ca88a40609dba403a9b55df893e" args="(const long &amp;, const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double _dgsmatrix::operator() </td>
          <td>(</td>
          <td class="paramtype">const long &amp;&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const long &amp;&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>operator() for const object </p>

<p>Definition at line <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-io_8hpp_source.html">_dgsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>( <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;0 || j&lt;0 || <a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>&lt;=j ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The required component is out of the matrix size.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; j &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="comment"></span>
<span class="comment">  //////// search (i,j) component ////////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator p=<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].begin(); p!=<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end(); p++){
    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*p].j)==j){ <span class="keywordflow">return</span> <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*p].v; }
  }
  <span class="comment"></span>
<span class="comment">  //////// (i,j) component was not found ////////</span>
<span class="comment"></span>  <span class="keywordflow">return</span> 0.0;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa5b2161ebfb1d750307b255898685011"></a><!-- doxytag: member="_dgsmatrix::write" ref="aa5b2161ebfb1d750307b255898685011" args="(const char *) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__dgsmatrix.html#aa5b2161ebfb1d750307b255898685011">_dgsmatrix::write</a> </td>
          <td>(</td>
          <td class="paramtype">const char *&#160;</td>
          <td class="paramname"><em>filename</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00051">51</a> of file <a class="el" href="__dgsmatrix-io_8hpp_source.html">_dgsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  std::ofstream ofs(filename, std::ios::trunc);
  ofs.setf(std::cout.flags());
  ofs.precision(std::cout.precision());
  ofs.width(std::cout.width());
  ofs.fill(std::cout.fill());
  
  ofs &lt;&lt; <span class="stringliteral">&quot;#dgsmatrix&quot;</span> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; std::endl;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    ofs &lt;&lt; it-&gt;i &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; it-&gt;j &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; it-&gt;v &lt;&lt; std::endl;
  }
  
  ofs.close();
  <a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a44055dc8365ec91cfab620401db16f5b"></a><!-- doxytag: member="_dgsmatrix::nullify" ref="a44055dc8365ec91cfab620401db16f5b" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__dgsmatrix.html#a44055dc8365ec91cfab620401db16f5b">_dgsmatrix::nullify</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>nullify all the matrix data </p>

<p>Definition at line <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-misc_8hpp_source.html">_dgsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">cols</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>

<p>Referenced by <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00014">_dgsmatrix()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, and <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>=0;
  <a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>=0;
  <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.clear();
  <a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>.clear();
  <a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>.clear();
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa2851712fa4f99d8d608815ef274a362"></a><!-- doxytag: member="_dgsmatrix::destroy" ref="aa2851712fa4f99d8d608815ef274a362" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">_dgsmatrix::destroy</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>destroy all the matrix data </p>

<p>Definition at line <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">14</a> of file <a class="el" href="__dgsmatrix-misc_8hpp_source.html">_dgsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">cols</a>, <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">rows</a>.</p>

<p>Referenced by <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00038">damax()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00020">idamax()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00053">operator*()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00055">dgsmatrix::operator*=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00015">dgsmatrix::operator+=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00028">operator-()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00035">dgsmatrix::operator-=()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">operator&lt;&lt;()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00021">to_dgematrix()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00003">to_zgsmatrix()</a>, and <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00051">write()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.clear();
  <a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>.clear();
  <a class="code" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738" title="array of vector to store the entry information of component for each column">cols</a>.clear();
}
</pre></div>
</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="abdb594324a4d71208946fbbd60efef28"></a><!-- doxytag: member="_dgsmatrix::operator&lt;&lt;" ref="abdb594324a4d71208946fbbd60efef28" args="(std::ostream &amp;, const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream&amp; operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">28</a> of file <a class="el" href="__dgsmatrix-io_8hpp_source.html">_dgsmatrix-io.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>; j++){
      std::vector&lt;uint32_t&gt;::iterator q;
      <span class="keywordflow">for</span>(q=mat.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].begin(); q!=mat.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end(); q++){
        <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*q].j)==j){ <span class="keywordflow">break</span>; }
      }
      <span class="keywordflow">if</span>(q!=mat.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end()){ s &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*q].v; }
      <span class="keywordflow">else</span>{ s &lt;&lt; <span class="stringliteral">&quot; x&quot;</span>; }
    }
    s &lt;&lt; std::endl;
  }
  
  mat.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> s;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8c17aa54644d33621a94b5aada42ad74"></a><!-- doxytag: member="_dgsmatrix::t" ref="a8c17aa54644d33621a94b5aada42ad74" args="(const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> <a class="el" href="class__dgsmatrix.html#a8c17aa54644d33621a94b5aada42ad74">t</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>return transposed dgsmatrix </p>

<p>Definition at line <a class="el" href="dgsmatrix-calc_8hpp_source.html#l00003">3</a> of file <a class="el" href="dgsmatrix-calc_8hpp_source.html">dgsmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(mat);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    <a class="code" href="dcovector-misc_8hpp.html#a4f6cde9aa05d9af1ec9bf725dd664869">std::swap</a>(it-&gt;i,it-&gt;j);
  }
  <a class="code" href="dcovector-misc_8hpp.html#a4f6cde9aa05d9af1ec9bf725dd664869">std::swap</a>(newmat.rows,newmat.cols);
  
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a9e1233248276a013ef55d63dd3fca37f"></a><!-- doxytag: member="_dgsmatrix::idamax" ref="a9e1233248276a013ef55d63dd3fca37f" args="(long &amp;, long &amp;, const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__dgsmatrix.html#a9e1233248276a013ef55d63dd3fca37f">idamax</a> </td>
          <td>(</td>
          <td class="paramtype">long &amp;&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">long &amp;&#160;</td>
          <td class="paramname"><em>j</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>search the index of element having the largest absolute value in 0-based numbering system </p>

<p>Definition at line <a class="el" href="dgsmatrix-calc_8hpp_source.html#l00021">21</a> of file <a class="el" href="dgsmatrix-calc_8hpp_source.html">dgsmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  std::vector&lt;dcomponent&gt;::const_iterator itx(mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin());
  <span class="keywordtype">double</span> vmax =0.;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">if</span>( vmax &lt; fabs(it-&gt;v) ){
      vmax =fabs(it-&gt;v);
      itx =it;
    }
  }
  <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> =itx-&gt;<a class="code" href="class__dgematrix.html#ab4e0cbe78518b4af9da89406bb2b9d19">i</a>;
  j =itx-&gt;j;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a84651a5f38c682c250934df4434139fb"></a><!-- doxytag: member="_dgsmatrix::damax" ref="a84651a5f38c682c250934df4434139fb" args="(const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double <a class="el" href="class__dgsmatrix.html#a84651a5f38c682c250934df4434139fb">damax</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>return its largest absolute value </p>

<p>Definition at line <a class="el" href="dgsmatrix-calc_8hpp_source.html#l00037">37</a> of file <a class="el" href="dgsmatrix-calc_8hpp_source.html">dgsmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  std::vector&lt;dcomponent&gt;::const_iterator itx(mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin());
  <span class="keywordtype">double</span> vmax =0.;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">if</span>( vmax &lt; fabs(it-&gt;v) ){
      vmax =fabs(it-&gt;v);
      itx =it;
    }
  }
  <span class="keywordflow">return</span> itx-&gt;v;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a0ec8d98b90ae1fcdba4a53c1eb27559e"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a0ec8d98b90ae1fcdba4a53c1eb27559e" args="(const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a>&amp; operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>+_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-unary_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-unary_8hpp_source.html">_dgsmatrix-unary.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="ab56cd189fcc962744d017daa25965c23"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="ab56cd189fcc962744d017daa25965c23" args="(const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>-_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-unary_8hpp_source.html#l00010">10</a> of file <a class="el" href="__dgsmatrix-unary_8hpp_source.html">_dgsmatrix-unary.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    it-&gt;v = -it-&gt;v;
  }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a651fdbf43a87fa7fa31169211450f711"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a651fdbf43a87fa7fa31169211450f711" args="(const _dgsmatrix &amp;, const dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html">_dgsmatrix-dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgematrix.html#a3852aa1d0b876a74c1070e982cf388a2" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a3852aa1d0b876a74c1070e982cf388a2" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(matB);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a2a1e75a1680abf8c7077ecf1991f591f"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a2a1e75a1680abf8c7077ecf1991f591f" args="(const _dgsmatrix &amp;, const _dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+_dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html">_dgsmatrix-_dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    matB(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> matB;
}
</pre></div>
</div>
</div>
<a class="anchor" id="ae8ae032f2567cf9326e635fbb2051f14"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="ae8ae032f2567cf9326e635fbb2051f14" args="(const _dgsmatrix &amp;, const dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html">_dgsmatrix-dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matB.<a class="code" href="classdsymatrix.html#a45ff312f6c694841edfd30809e09ba7b">to_dgematrix</a>() );
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a422e4d82f54daf965366df188b1fec59"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a422e4d82f54daf965366df188b1fec59" args="(const _dgsmatrix &amp;, const _dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+_dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html">_dgsmatrix-_dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matB.<a class="code" href="class__dsymatrix.html#acdf4ff1ebc021a28f63351bd6f6a368c">to_dgematrix</a>() );
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dsymatrix.html#a09e5b4ca8579bef58e01e80c22e799b1">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="af728998da9286cd8cab353f8de6fadea"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="af728998da9286cd8cab353f8de6fadea" args="(const _dgsmatrix &amp;, const dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html">_dgsmatrix-dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>-matB.<a class="code" href="classdgbmatrix.html#aeeb3e79431677905a4ece19c6616edd4" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>+matB.<a class="code" href="classdgbmatrix.html#a0b4d519e95ddf780bf1151a42018d646" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)+=matB(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="adf658064c0e3c32f94b9c14a3066f53b"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="adf658064c0e3c32f94b9c14a3066f53b" args="(const _dgsmatrix &amp;, const _dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+_dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html">_dgsmatrix-_dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>-matB.<a class="code" href="class__dgbmatrix.html#aeea4fdf76630ca1b51f93c5bed64662c" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>+matB.<a class="code" href="class__dgbmatrix.html#a116dadc8ed5246ee0b4cd0a9fffc53ea" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)+=matB(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dgbmatrix.html#a170fdd995797f5d394863105e658df9e">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="aea82097c293282b2a1438e6d7eecca48"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="aea82097c293282b2a1438e6d7eecca48" args="(const _dgsmatrix &amp;, const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html">_dgsmatrix-dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8af794bb4117d67d70ef16b3b131c680"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a8af794bb4117d67d70ef16b3b131c680" args="(const _dgsmatrix &amp;, const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix+_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html">_dgsmatrix-_dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matB.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a695a4970bc2cbcc8a552bf77f2780095"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a695a4970bc2cbcc8a552bf77f2780095" args="(const _dgsmatrix &amp;, const dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a8ff53329c014bcc72957227fc4d2c9cb"></a><!-- doxytag: member="_dgsmatrix::operator+" ref="a8ff53329c014bcc72957227fc4d2c9cb" args="(const _dgsmatrix &amp;, const _dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a0e3588771311e68b2a90e4179e6fb2f6"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a0e3588771311e68b2a90e4179e6fb2f6" args="(const _dgsmatrix &amp;, const dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html">_dgsmatrix-dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgematrix.html#a3852aa1d0b876a74c1070e982cf388a2" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(-matB);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a72a5b480b1f4e598ad4da9f6f46f7f49"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a72a5b480b1f4e598ad4da9f6f46f7f49" args="(const _dgsmatrix &amp;, const _dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-_dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html#l00024">24</a> of file <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html">_dgsmatrix-_dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="comment"></span>
<span class="comment">  //// change sign ////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a>*matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    matB.<a class="code" href="class__dgematrix.html#ad01c168fc4997d06e7c996ba36b12ff6" title="1D array to store matrix data">array</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>] = -matB.<a class="code" href="class__dgematrix.html#ad01c168fc4997d06e7c996ba36b12ff6" title="1D array to store matrix data">array</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>];
  }
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    matB(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> matB;
}
</pre></div>
</div>
</div>
<a class="anchor" id="abe382e4c548c52d6893e36cddd1d50fb"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="abe382e4c548c52d6893e36cddd1d50fb" args="(const _dgsmatrix &amp;, const dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html">_dgsmatrix-dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( (-matB).<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a933eba289a93c63d76d365473c8f2277"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a933eba289a93c63d76d365473c8f2277" args="(const _dgsmatrix &amp;, const _dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-_dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html#l00026">26</a> of file <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html">_dgsmatrix-_dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a> || matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span><span class="comment"></span>
<span class="comment">  //// shallow copy to dgematrix  ////</span>
<span class="comment"></span>  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( (-matB).<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  <span class="comment"></span>
<span class="comment">  //// add ////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) += it-&gt;v;
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dsymatrix.html#a09e5b4ca8579bef58e01e80c22e799b1">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a4d2a4b8f4f029116815f4f969b8b769f"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a4d2a4b8f4f029116815f4f969b8b769f" args="(const _dgsmatrix &amp;, const dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html#l00028">28</a> of file <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html">_dgsmatrix-dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>-matB.<a class="code" href="classdgbmatrix.html#aeeb3e79431677905a4ece19c6616edd4" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>+matB.<a class="code" href="classdgbmatrix.html#a0b4d519e95ddf780bf1151a42018d646" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)-=matB(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a4572546eedb1eecbe109e802c4153f75"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a4572546eedb1eecbe109e802c4153f75" args="(const _dgsmatrix &amp;, const _dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-_dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html#l00028">28</a> of file <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html">_dgsmatrix-_dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#a5cc312d49cf097ebee56c1550988f463">to_dgematrix</a>() );
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>-matB.<a class="code" href="class__dgbmatrix.html#aeea4fdf76630ca1b51f93c5bed64662c" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>+matB.<a class="code" href="class__dgbmatrix.html#a116dadc8ed5246ee0b4cd0a9fffc53ea" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)-=matB(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dgbmatrix.html#a170fdd995797f5d394863105e658df9e">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a3f0f682968d803e69bdced2069d46949"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a3f0f682968d803e69bdced2069d46949" args="(const _dgsmatrix &amp;, const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html#l00023">23</a> of file <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html">_dgsmatrix-dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) -= it-&gt;v;
  }
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a347839bef10b90378f9e0a790f8fd210"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a347839bef10b90378f9e0a790f8fd210" args="(const _dgsmatrix &amp;, const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix-_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html">_dgsmatrix-_dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> || matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>!=matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i,it-&gt;j) -= it-&gt;v;
  }
  
  matB.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a24bd0a9337f22c1e451f6fe8cb106c95"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="a24bd0a9337f22c1e451f6fe8cb106c95" args="(const _dgsmatrix &amp;, const dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="aa94871ba133adbcc7e7f8659ee9b7dc8"></a><!-- doxytag: member="_dgsmatrix::operator&#45;" ref="aa94871ba133adbcc7e7f8659ee9b7dc8" args="(const _dgsmatrix &amp;, const _dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a441ad8c8722fa559d0d530756961f985"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a441ad8c8722fa559d0d530756961f985" args="(const _dgsmatrix &amp;, const dcovector &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dcovector.html">_dcovector</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdcovector.html">dcovector</a> &amp;&#160;</td>
          <td class="paramname"><em>vec</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*dcovector operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-dcovector_8hpp_source.html">_dgsmatrix-dcovector.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=vec.<a class="code" href="classdcovector.html#a08e64e5ecb5121100787d0f5d48f0af4" title="vector size">l</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These matrix and vector can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; vec.<a class="code" href="classdcovector.html#a08e64e5ecb5121100787d0f5d48f0af4" title="vector size">l</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdcovector.html" title="Real Double-precision Column Vector Class.">dcovector</a> newvec(mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>);
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newvec(it-&gt;i) += it-&gt;v*vec(it-&gt;j);
  }
  
  mat.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="af40d82be1085aa5a0e9d8de4dcf12fe8"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="af40d82be1085aa5a0e9d8de4dcf12fe8" args="(const _dgsmatrix &amp;, const _dcovector &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dcovector.html">_dcovector</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dcovector.html">_dcovector</a> &amp;&#160;</td>
          <td class="paramname"><em>vec</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*_dcovector operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-__dcovector_8hpp_source.html">_dgsmatrix-_dcovector.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=vec.<a class="code" href="class__dcovector.html#a2db3a577da8bc07533cf2da09fddaa58" title="vector size">l</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These matrix and vector can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; vec.<a class="code" href="class__dcovector.html#a2db3a577da8bc07533cf2da09fddaa58" title="vector size">l</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdcovector.html" title="Real Double-precision Column Vector Class.">dcovector</a> newvec(mat.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>);
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    newvec(it-&gt;i) += it-&gt;v * vec(it-&gt;j);
  }
  
  mat.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  vec.<a class="code" href="class__dcovector.html#a3e16f52298eac6c97958a9cbc6388bc4">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a277a512c17ce02d0bd86b656adcac6e8"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a277a512c17ce02d0bd86b656adcac6e8" args="(const _dgsmatrix &amp;, const dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgematrix.html">dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__dgsmatrix-dgematrix_8hpp_source.html">_dgsmatrix-dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgematrix.html#a3852aa1d0b876a74c1070e982cf388a2" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="classdgematrix.html#a60d26e3a499a235310e59a0aebbe0d0a" title="matrix column size">n</a>; j++){
      newmat(it-&gt;i,j) += it-&gt;v*matB(it-&gt;j,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="af62eae1ce5f5ab7aa379b854c5e5b847"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="af62eae1ce5f5ab7aa379b854c5e5b847" args="(const _dgsmatrix &amp;, const _dgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgematrix.html">_dgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*_dgematrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html#l00050">50</a> of file <a class="el" href="__dgsmatrix-__dgematrix_8hpp_source.html">_dgsmatrix-_dgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#a4c07ace0e1899332aa2d620af184dadf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="class__dgematrix.html#ad46b02985eb9537b1bd65937d5b052de" title="matrix column size">n</a>; j++){
      newmat(it-&gt;i,j) += it-&gt;v *matB(it-&gt;j,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dgematrix.html#ac6d270d6c2d1d73afdfb2029eca920d9">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a1e6fd79517f59f065ea95766264448b7"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a1e6fd79517f59f065ea95766264448b7" args="(const _dgsmatrix &amp;, const dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdsymatrix.html">dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__dgsmatrix-dsymatrix_8hpp_source.html">_dgsmatrix-dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="classdsymatrix.html#a4a2ca7ec3f2b7bd62139777fbb6ad1a9" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
      newmat(it-&gt;i,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>) += it-&gt;v*matB(it-&gt;j,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa633923adb767abec83b10e8f61c4758"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="aa633923adb767abec83b10e8f61c4758" args="(const _dgsmatrix &amp;, const _dsymatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dsymatrix.html">_dsymatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*_dsymatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html#l00052">52</a> of file <a class="el" href="__dgsmatrix-__dsymatrix_8hpp_source.html">_dgsmatrix-_dsymatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a0ae0bb2812e15cb1a0667fd6f6f6b44f" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>=0; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&lt;matB.<a class="code" href="class__dsymatrix.html#a8b56cdf252a15da3e211b558abd46c1b" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
      newmat(it-&gt;i,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>) += it-&gt;v*matB(it-&gt;j,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dsymatrix.html#a09e5b4ca8579bef58e01e80c22e799b1">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a1487a3ba3b80d456150d3505d2b9f805"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a1487a3ba3b80d456150d3505d2b9f805" args="(const _dgsmatrix &amp;, const dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgbmatrix.html">dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html#l00053">53</a> of file <a class="el" href="__dgsmatrix-dgbmatrix_8hpp_source.html">_dgsmatrix-dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#af8a3e6bc4557b151f0049b8224f54580" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<span class="keywordtype">long</span>(it-&gt;j)-matB.<a class="code" href="classdgbmatrix.html#aeeb3e79431677905a4ece19c6616edd4" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="classdgbmatrix.html#a5b6fe4d1cfa71161b09ecf0b59befd0e" title="matrix column size">n</a>,<span class="keywordtype">long</span>(it-&gt;j)+matB.<a class="code" href="classdgbmatrix.html#a0b4d519e95ddf780bf1151a42018d646" title="upper band width">ku</a>+1); j++){
      newmat(it-&gt;i,j) += it-&gt;v*matB(it-&gt;j,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a9c1968ae73dce8ec6a42feb098411623"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a9c1968ae73dce8ec6a42feb098411623" args="(const _dgsmatrix &amp;, const _dgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgematrix.html">_dgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgbmatrix.html">_dgbmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*_dgbmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html#l00053">53</a> of file <a class="el" href="__dgsmatrix-__dgbmatrix_8hpp_source.html">_dgsmatrix-_dgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a587a07ecbbfc6bbdb0e05574ea6b088a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgematrix.html" title="Real Double-precision General Dence Matrix Class.">dgematrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<span class="keywordtype">long</span>(it-&gt;j)-matB.<a class="code" href="class__dgbmatrix.html#aeea4fdf76630ca1b51f93c5bed64662c" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="class__dgbmatrix.html#a95aebc7e2d4ea66b1b7a08e981df6971" title="matrix column size">n</a>,<span class="keywordtype">long</span>(it-&gt;j)+matB.<a class="code" href="class__dgbmatrix.html#a116dadc8ed5246ee0b4cd0a9fffc53ea" title="upper band width">ku</a>+1); j++){
      newmat(it-&gt;i,j) += it-&gt;v*matB(it-&gt;j,j);
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dgbmatrix.html#a170fdd995797f5d394863105e658df9e">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a4b53a093201e4983bd390d66e177b18c"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a4b53a093201e4983bd390d66e177b18c" args="(const _dgsmatrix &amp;, const dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdgsmatrix.html">dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html#l00043">43</a> of file <a class="el" href="__dgsmatrix-dgsmatrix_8hpp_source.html">_dgsmatrix-dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#ae2d6c9f9657d44171a4bfd56276277cb" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat( matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="classdgsmatrix.html#acefae40b42444c17eebbc23ccee73ae0" title="matrix column size">n</a> );
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordtype">long</span> k(it-&gt;j);
    std::vector&lt;uint32_t&gt;::const_iterator p;
    <span class="keywordflow">for</span>(p=matB.<a class="code" href="classdgsmatrix.html#ae14925bd737fa076dfbe651b417dd580" title="array of vector to store the entry information of component for each row">rows</a>[k].begin(); p!=matB.<a class="code" href="classdgsmatrix.html#ae14925bd737fa076dfbe651b417dd580" title="array of vector to store the entry information of component for each row">rows</a>[k].end(); p++){
      newmat(it-&gt;i,matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>[*p].j) += it-&gt;v*matB.<a class="code" href="classdgsmatrix.html#a9c4f940eeedf7a7869cf03ae4a3558c6" title="matrix data">data</a>[*p].v;
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ae19d08ad3b75ae1a3d8ce606fa622d97"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="ae19d08ad3b75ae1a3d8ce606fa622d97" args="(const _dgsmatrix &amp;, const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matA</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>matB</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html">_dgsmatrix-_dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>!=matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a> newmat(matA.<a class="code" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a" title="matrix row size">m</a>, matB.<a class="code" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936" title="matrix column size">n</a>);
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    <span class="keywordtype">long</span> k(it-&gt;j);
    std::vector&lt;uint32_t&gt;::iterator p;
    <span class="keywordflow">for</span>(p=matB.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[k].begin(); p!=matB.<a class="code" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25" title="array of vector to store the entry information of component for each row">rows</a>[k].end(); p++){
      newmat(it-&gt;i,matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*p].j) += it-&gt;v*matB.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>[*p].v;
    }
  }
  
  matA.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  matB.<a class="code" href="class__dgsmatrix.html#aa2851712fa4f99d8d608815ef274a362">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="adb9a2e6bc7a63dc371622d69562c3149"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="adb9a2e6bc7a63dc371622d69562c3149" args="(const _dgsmatrix &amp;, const dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="ac0914507a3bb587615e5a653a4f428aa"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="ac0914507a3bb587615e5a653a4f428aa" args="(const _dgsmatrix &amp;, const _dssmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a22bd954f978d37c256fee1858117fe28"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a22bd954f978d37c256fee1858117fe28" args="(const _dgsmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double &amp;&#160;</td>
          <td class="paramname"><em>d</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix*double operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-double_8hpp_source.html#l00003">3</a> of file <a class="el" href="__dgsmatrix-double_8hpp_source.html">_dgsmatrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    it-&gt;v *= d;
  }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a57aa58f564c0d54d3b9d3ae3dab94c0e"></a><!-- doxytag: member="_dgsmatrix::operator/" ref="a57aa58f564c0d54d3b9d3ae3dab94c0e" args="(const _dgsmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator/ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double &amp;&#160;</td>
          <td class="paramname"><em>d</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>_dgsmatrix/double operator </p>

<p>Definition at line <a class="el" href="__dgsmatrix-double_8hpp_source.html#l00013">13</a> of file <a class="el" href="__dgsmatrix-double_8hpp_source.html">_dgsmatrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    it-&gt;v /= d;
  }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a630c2d6039519585ab830a34f32275a5"></a><!-- doxytag: member="_dgsmatrix::operator*" ref="a630c2d6039519585ab830a34f32275a5" args="(const double &amp;, const _dgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const double &amp;&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__dgsmatrix.html">_dgsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>double*_dgsmatrix operator </p>

<p>Definition at line <a class="el" href="double-__dgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="double-__dgsmatrix_8hpp_source.html">double-_dgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30" title="matrix data">data</a>.end(); it++){
    it-&gt;v *= d;
  }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ac45fcfd8d9cddb1fae5b66cd9b7ac98a"></a><!-- doxytag: member="_dgsmatrix::m" ref="ac45fcfd8d9cddb1fae5b66cd9b7ac98a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="class__dgsmatrix.html#ac45fcfd8d9cddb1fae5b66cd9b7ac98a">_dgsmatrix::m</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix row size </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00009">9</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00326">_()</a>, <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">_dgsmatrix()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00053">operator*()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00055">dgsmatrix::operator*=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00015">dgsmatrix::operator+=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00028">operator-()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00035">dgsmatrix::operator-=()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">operator&lt;&lt;()</a>, <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00021">to_dgematrix()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00003">to_zgsmatrix()</a>, and <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00051">write()</a>.</p>

</div>
</div>
<a class="anchor" id="a8457e7af3a1e2ff7d8c3238260d59936"></a><!-- doxytag: member="_dgsmatrix::n" ref="a8457e7af3a1e2ff7d8c3238260d59936" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="class__dgsmatrix.html#a8457e7af3a1e2ff7d8c3238260d59936">_dgsmatrix::n</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix column size </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00010">10</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00326">_()</a>, <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">_dgsmatrix()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00053">operator*()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00055">dgsmatrix::operator*=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00015">dgsmatrix::operator+=()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00028">operator-()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00035">dgsmatrix::operator-=()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">operator&lt;&lt;()</a>, <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00021">to_dgematrix()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00003">to_zgsmatrix()</a>, and <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00051">write()</a>.</p>

</div>
</div>
<a class="anchor" id="a65ae5bc0001de27f9fe1fb13870b4a30"></a><!-- doxytag: member="_dgsmatrix::data" ref="a65ae5bc0001de27f9fe1fb13870b4a30" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="classdcomponent.html">dcomponent</a>&gt; <a class="el" href="class__dgsmatrix.html#a65ae5bc0001de27f9fe1fb13870b4a30">_dgsmatrix::data</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix data </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00011">11</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00326">_()</a>, <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">_dgsmatrix()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00038">damax()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00020">idamax()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__dgbmatrix-__dgsmatrix_8hpp_source.html#l00053">operator*()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00055">dgsmatrix::operator*=()</a>, <a class="el" href="__dgematrix-__dgsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00015">dgsmatrix::operator+=()</a>, <a class="el" href="__dgematrix-__dgsmatrix_8hpp_source.html#l00024">operator-()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00035">dgsmatrix::operator-=()</a>, <a class="el" href="__dgsmatrix-double_8hpp_source.html#l00013">operator/()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">operator&lt;&lt;()</a>, <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00021">to_dgematrix()</a>, <a class="el" href="__dgsmatrix-cast_8hpp_source.html#l00003">to_zgsmatrix()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00051">write()</a>, and <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00031">~_dgsmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="abd696a694a45f2b696dd803419501d25"></a><!-- doxytag: member="_dgsmatrix::rows" ref="abd696a694a45f2b696dd803419501d25" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::vector&lt;uint32_t&gt; &gt; <a class="el" href="class__dgsmatrix.html#abd696a694a45f2b696dd803419501d25">_dgsmatrix::rows</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>array of vector to store the entry information of component for each row </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00012">12</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00326">_()</a>, <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">_dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__dgsmatrix-__dgsmatrix_8hpp_source.html#l00047">operator*()</a>, <a class="el" href="dgsmatrix-__dgsmatrix_8hpp_source.html#l00055">dgsmatrix::operator*=()</a>, <a class="el" href="__dgsmatrix-io_8hpp_source.html#l00028">operator&lt;&lt;()</a>, <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00003">t()</a>, and <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00031">~_dgsmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="a93cc648dd17686ae223bf6d38efb6738"></a><!-- doxytag: member="_dgsmatrix::cols" ref="a93cc648dd17686ae223bf6d38efb6738" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt; std::vector&lt;uint32_t&gt; &gt; <a class="el" href="class__dgsmatrix.html#a93cc648dd17686ae223bf6d38efb6738">_dgsmatrix::cols</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>array of vector to store the entry information of component for each column </p>

<p>Definition at line <a class="el" href="__dgsmatrix_8hpp_source.html#l00013">13</a> of file <a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00326">_()</a>, <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00003">_dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00014">destroy()</a>, <a class="el" href="dgsmatrix-constructor_8hpp_source.html#l00031">dgsmatrix::dgsmatrix()</a>, <a class="el" href="__dgsmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="dgsmatrix-misc_8hpp_source.html#l00045">dgsmatrix::shallow_copy()</a>, <a class="el" href="__dgsmatrix-calc_8hpp_source.html#l00003">t()</a>, and <a class="el" href="__dgsmatrix-constructor_8hpp_source.html#l00031">~_dgsmatrix()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="__dgsmatrix_8hpp_source.html">_dgsmatrix.hpp</a></li>
<li><a class="el" href="__dgsmatrix-cast_8hpp_source.html">_dgsmatrix-cast.hpp</a></li>
<li><a class="el" href="__dgsmatrix-constructor_8hpp_source.html">_dgsmatrix-constructor.hpp</a></li>
<li><a class="el" href="__dgsmatrix-io_8hpp_source.html">_dgsmatrix-io.hpp</a></li>
<li><a class="el" href="__dgsmatrix-misc_8hpp_source.html">_dgsmatrix-misc.hpp</a></li>
</ul>
</div><!-- contents -->
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Friends</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>



<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.7.6.1
</small></address>

</body>
</html>
