<!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: dssmatrix 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">dssmatrix Class Reference</div>
    </div>
  </div>
  <!--header-->
  <div class="contents">
    <!-- doxytag: class="dssmatrix" -->
    <p>Real Double-precision Symmetric Sparse Matrix Class.
      <a href="classdssmatrix.html#details">More...</a></p>

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

    <p><a href="classdssmatrix-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="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a86015dfdd1909f8607ad08afd849d191">dssmatrix</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#adb8a35352fc3e42461cf419587af9f60">dssmatrix</a> (const <a class="el"
            href="class__dssmatrix.html">_dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a021ceea6043ac015de895d0a9d49bf07">dssmatrix</a> (const long &amp;, const long=0)
        </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a71ba938e46bc099ab6eb614ff2e3f31f">dssmatrix</a> (const char *)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a10313613f264c96480340868d9cf0064">~dssmatrix</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__zhsmatrix.html">_zhsmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a01825ffdbef81c57995e1ae77bcc7833">to_zhsmatrix</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="classdssmatrix.html#af83ef753903a3ddaf2a932f820daf935">to_dgematrix</a> () const </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__dsymatrix.html">_dsymatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#afa82aa94c3d7b541aae62cbf859bf0bd">to_dsymatrix</a> () const </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="classdssmatrix.html#a540bfe8d57e6510d0d099733e70d40b9">to_dgsmatrix</a> () const </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">double&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ab82433f55e12424557cfbe0b4020dcf7">operator()</a> (const long &amp;, const long
          &amp;) const </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">double &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a3fb65782bd313ac095b55cb41411debf">operator()</a> (const long &amp;, const long
          &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a7dae293925f88a09c577b45c32151133">put</a> (const long &amp;, const long &amp;,
          const double &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#abfd167fcf446bc5003545e0d92019442">del</a> (const long, const long)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a799764c3f2c86c50bb38750503670cf8">del</a> (const long)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a70104d04523b8edbd5ca282d731b4ca6">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="classdssmatrix.html#ab8b59931bbdebb4b8b7081be32fcdcfa">read</a> (const char *)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a399c7c88c81e9c12b1ac9759e6c5f6cc">clear</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aaf3e5e2b644452fd567174197d4f69b3">zero</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aabb19d3737f39fcf8ff7dd430d1c0283">chsign</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ab61890340f8faafdbec867ca5a61ab95">copy</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#adbd757ec9c95de11c1c0adeb6ddd895f">shallow_copy</a> (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="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ae17262882f2c0f36fcce8f8e4ee13c9d">resize</a> (const long &amp;, const long=0,
          const long=0)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a3aa570dbe2fc73e855f0ce68b9ed940c">stretch</a> (const long &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">bool&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a3436ccad07ec887b9fe5262cc6d469cd">isListed</a> (const long &amp;, const long
          &amp;) const </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">long&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#af1b1e77b41864cd93652d7a475ac9b72">number</a> (const long &amp;, const long &amp;)
          const </td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__drovector.html">_drovector</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a74466758872d0329d260c520b85c25cf">row</a> (const long &amp;) const </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="classdssmatrix.html#ab88e607783ac7a24d0d8b262e7209871">col</a> (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="classdssmatrix.html#a1be78a2507c837f52a68cb15bb32e670">diet</a> (const double=DBL_MIN)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">long&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a9fec0074e777fb48bfd995fdb22c5b16">diag_front</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#acb90d75655c5821bf379cf6431694a6c">reorder</a> (const bool=0)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aa08f9ed1e6171e1c9bd067ad12e825bb">rebuild</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aca42d5d3610e9592ba78d01fb676ad55">checkup</a> ()</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#abdb5e214b5bf405f0f362af16488f647">operator=</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#af121068d625fe0d35f71d6effb7159aa">operator=</a> (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="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#af2b699179915e6dedca28b2ba04e1a0d">operator+=</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aed6771cbfa90537e68ffa09ffe8e2a0f">operator+=</a> (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="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aa7e4ddda849b5f9fcfdcd6eb114de803">operator-=</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aafbb41ac6cefa3f43bd5f3edceead539">operator-=</a> (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="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a4fe5f69706631322f23053242ca57b7b">operator*=</a> (const double &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a116c77e9aa6509c4a67554e1ffa25141">operator/=</a> (const double &amp;)</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 const &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154">m</a></td>
      </tr>
      <tr>
        <td class="mdescLeft">&#160;</td>
        <td class="mdescRight">matrix row size <a href="#adb00c468da489c1d39028f36fb291154"></a><br /></td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">long&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a">n</a></td>
      </tr>
      <tr>
        <td class="mdescLeft">&#160;</td>
        <td class="mdescRight">matrix column size <a href="#a94fac8a3f08704f5e0001473fa9a937a"></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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888">data</a></td>
      </tr>
      <tr>
        <td class="mdescLeft">&#160;</td>
        <td class="mdescRight">matrix data <a href="#a258714120e316e12a03ee60dc0151888"></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="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac">line</a></td>
      </tr>
      <tr>
        <td class="mdescLeft">&#160;</td>
        <td class="mdescRight">vector of vector to store the entry information of component for each row and column <a
            href="#afe21536a32fe45971cf2c25bf91903ac"></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="classdssmatrix.html#ae6e87f88d0ec17225e8eab9a209e938f">operator&lt;&lt;</a> (std::ostream &amp;, const
          <a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">swap</a> (<a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;, <a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a> (<a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a6f4464aafa168e81f41eb9373e289c81">t</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">void&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a1bbfd67509059868d7f137dda0b7c902">idamax</a> (long &amp;, long &amp;, const <a
            class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">double&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ac8aea1e078469b183463c0f771994ff2">damax</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top">const <a class="el" href="classdssmatrix.html">dssmatrix</a>
          &amp;&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a9861032d2997191a6a37111d3195ab16">operator+</a> (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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a1bd47d88626b2442f8d26d21ac3b3c66">operator-</a> (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__dgematrix.html">_dgematrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aec81ef1331cc6c755f000641b25f9fbe">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a8de41b98849c7448fc2bb18c01a8115f">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a1de6abae4ad30b626b3dd8a1a406b3cc">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a10f4dab1ffc756582a5b2a8dbdbf1038">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a075191203345aa20a96fda0277893c44">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a4cac124fc984019c3289d38b0e002d62">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a5bd04125ecf08b8298a1fe4057010bcf">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a253c7f8a800703f1065cd3d0f7261f34">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a1cb894cb737b3b2815ffdd0ae163b305">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#ad8d3a7a197d971d712b6053ba1dd91a2">operator+</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a47ef28f3dee998c805c3963fa479a0e5">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a556f98d81e88d1f50c25a099b8469c0e">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#afeb4be7ac8e9d5aa5bd081ad94b25d95">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#abce614d70eb064a73dd1f808ae8146b6">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a08dec9f9fb16c9df472bc87924855b84">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a6fc181d17ee89f9e9faa6b39ce432950">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a44c67de63602fbc408c6790251467382">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a6f72983ca2fd0571f2d8fc0dae79236e">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a9eee7aaa870478948067e63ef7ac68ef">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#aa4b2fcea3223a8289070122929800546">operator-</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a8da8468f2d04fac7cc332c9a69560a92">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a7235fe0e8decfeac7d7a9f05987d8c89">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#ad5ca171015b9174b53118953173d2027">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a295bec99cd5a5d773749cd9078c4b6a4">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a33ec5e9afb5e4c325186f72dcf1d18c8">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#abd693e175f2c3bede018b160c8671ac4">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a2c2a09698415bfb6487e0a24fef2b4f0">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#ab0c644c3e654effd9a6e316c2a0bb417">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a7f20210ffd88482a44002e96aa9c1e51">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a5d58be8804ea10ab13c8d89bb3c177c7">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a7d9580c79c9e5461a521834038419367">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html#a7de7ba558e38a6cf0843677504e6d7a5">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#abca05accec409b17ad5b31e8bd46f777">operator*</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;, const double &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a3cbb6f47b52847b4c6a873f58f5af8f6">operator/</a> (const <a class="el"
            href="classdssmatrix.html">dssmatrix</a> &amp;, const double &amp;)</td>
      </tr>
      <tr>
        <td class="memItemLeft" align="right" valign="top"><a class="el"
            href="class__dssmatrix.html">_dssmatrix</a>&#160;</td>
        <td class="memItemRight" valign="bottom"><a class="el"
            href="classdssmatrix.html#a5efc3bdd595cf3ec79cc1dc498a0af32">operator*</a> (const double &amp;, const <a
            class="el" href="classdssmatrix.html">dssmatrix</a> &amp;)</td>
      </tr>
    </table>
    <hr /><a name="details" id="details"></a>
    <h2>Detailed Description</h2>
    <div class="textblock">
      <p>Real Double-precision Symmetric Sparse Matrix Class. </p>

      <p>Definition at line <a class="el" href="dssmatrix_8hpp_source.html#l00003">3</a> of file <a class="el"
          href="dssmatrix_8hpp_source.html">dssmatrix.hpp</a>.</p>
    </div>
    <hr />
    <h2>Constructor &amp; Destructor Documentation</h2>
    <a class="anchor" id="a69ead497d41f4f8e2d5c91de2a6443c0"></a>
    <!-- doxytag: member="dssmatrix::dssmatrix" ref="a69ead497d41f4f8e2d5c91de2a6443c0" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix::dssmatrix</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix constructor without arguments </p>

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

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>
        <div class="fragment">
          <pre class="fragment">  : <a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>)
{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// initialize ////////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =0;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a86015dfdd1909f8607ad08afd849d191"></a>
    <!-- doxytag: member="dssmatrix::dssmatrix" ref="a86015dfdd1909f8607ad08afd849d191" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix::dssmatrix</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix copy constructor </p>

        <p>Definition at line <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00018">18</a> of file <a
            class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>.</p>
        <div class="fragment">
          <pre class="fragment">  : <a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  <a class="code" href="classdssmatrix.html#ab61890340f8faafdbec867ca5a61ab95">copy</a>(mat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="adb8a35352fc3e42461cf419587af9f60"></a>
    <!-- doxytag: member="dssmatrix::dssmatrix" ref="adb8a35352fc3e42461cf419587af9f60" args="(const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix::dssmatrix</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</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>dssmatrix constructor to cast <a class="el" href="class__dssmatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Sparse Matrix Class">_dssmatrix</a> </p>

        <p>Definition at line <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00028">28</a> of file <a
            class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00011">_dssmatrix::data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00012">_dssmatrix::line</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00010">_dssmatrix::n</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="__dssmatrix-misc_8hpp_source.html#l00003">_dssmatrix::nullify()</a>.</p>
        <div class="fragment">
          <pre class="fragment">  : <a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a>;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.swap(mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>);
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.swap(mat.<a class="code" href="class__dssmatrix.html#a988041b8d0cf2b8cce763f8da302c7e0" title="vector of vector to store the entry information of component for each row and column">line</a>);
  
  mat.<a class="code" href="class__dssmatrix.html#ac16e0d54da2261c77918dc25b0f66df2">nullify</a>();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a021ceea6043ac015de895d0a9d49bf07"></a>
    <!-- doxytag: member="dssmatrix::dssmatrix" ref="a021ceea6043ac015de895d0a9d49bf07" args="(const long &amp;, const long=0)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix::dssmatrix</a> </td>
            <td>(</td>
            <td class="paramtype">const long &amp;&#160;</td>
            <td class="paramname"><em>_n</em>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>_c</em> = <code>0</code>&#160;</td>
          </tr>
          <tr>
            <td></td>
            <td>)</td>
            <td></td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix constructor with size specification </p>

        <p>Definition at line <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00047">47</a> of file <a
            class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>
        <div class="fragment">
          <pre class="fragment">  : <a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>)
{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>( _n&lt;0 || _c&lt;0 ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;Matrix sizes and the length of arrays must be positive integers. &quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; _n &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; _c &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">  //////// initialize ////////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =_n;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.resize(0);
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.reserve(_c);
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.resize(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a71ba938e46bc099ab6eb614ff2e3f31f"></a>
    <!-- doxytag: member="dssmatrix::dssmatrix" ref="a71ba938e46bc099ab6eb614ff2e3f31f" args="(const char *)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a69ead497d41f4f8e2d5c91de2a6443c0">dssmatrix::dssmatrix</a> </td>
            <td>(</td>
            <td class="paramtype">const char *&#160;</td>
            <td class="paramname"><em>filename</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix constructor with filename </p>

        <p>Definition at line <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00068">68</a> of file <a
            class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00261">read()</a>.</p>
        <div class="fragment">
          <pre class="fragment">  : <a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  <span class="comment"></span>
<span class="comment">  //// read ////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#ab8b59931bbdebb4b8b7081be32fcdcfa">read</a>(filename);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a10313613f264c96480340868d9cf0064"></a>
    <!-- doxytag: member="dssmatrix::~dssmatrix" ref="a10313613f264c96480340868d9cf0064" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el"
                href="classdssmatrix.html#a10313613f264c96480340868d9cf0064">dssmatrix::~dssmatrix</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix destructor </p>

        <p>Definition at line <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00084">84</a> of file <a
            class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
}
</pre>
        </div>
      </div>
    </div>
    <hr />
    <h2>Member Function Documentation</h2>
    <a class="anchor" id="a01825ffdbef81c57995e1ae77bcc7833"></a>
    <!-- doxytag: member="dssmatrix::to_zhsmatrix" ref="a01825ffdbef81c57995e1ae77bcc7833" args="() const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> <a class="el"
                href="classdssmatrix.html#a01825ffdbef81c57995e1ae77bcc7833">dssmatrix::to_zhsmatrix</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__zhsmatrix.html"
            title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Sparse Matrix Class">_zhsmatrix</a>
        </p>

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

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="zhsmatrix-io_8hpp_source.html#l00063">zhsmatrix::put()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html" title="Complex Double-precision Hermitian Sparse Matrix Class.">zhsmatrix</a> newmat(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>,<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newmat.<a class="code" href="classzhsmatrix.html#af017988cb32169e05841688a3bff79be">put</a>(it-&gt;i, it-&gt;j, comple(it-&gt;v,0.0));
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="af83ef753903a3ddaf2a932f820daf935"></a>
    <!-- doxytag: member="dssmatrix::to_dgematrix" ref="af83ef753903a3ddaf2a932f820daf935" 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="classdssmatrix.html#af83ef753903a3ddaf2a932f820daf935">dssmatrix::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="dssmatrix-cast_8hpp_source.html#l00019">19</a> of file <a class="el"
            href="dssmatrix-cast_8hpp_source.html">dssmatrix-cast.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00009">m</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="dgematrix-misc_8hpp_source.html#l00015">dgematrix::zero()</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="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>,<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i, it-&gt;j) =it-&gt;v;
    newmat(it-&gt;j, it-&gt;i) =it-&gt;v;
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="afa82aa94c3d7b541aae62cbf859bf0bd"></a>
    <!-- doxytag: member="dssmatrix::to_dsymatrix" ref="afa82aa94c3d7b541aae62cbf859bf0bd" args="() const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dsymatrix.html">_dsymatrix</a> <a class="el"
                href="classdssmatrix.html#afa82aa94c3d7b541aae62cbf859bf0bd">dssmatrix::to_dsymatrix</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__dsymatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Matrix Class">_dsymatrix</a> </p>

        <p>Definition at line <a class="el" href="dssmatrix-cast_8hpp_source.html#l00033">33</a> of file <a class="el"
            href="dssmatrix-cast_8hpp_source.html">dssmatrix-cast.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="dsymatrix-misc_8hpp_source.html#l00025">dsymatrix::zero()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdsymatrix.html" title="Real Double-precision Symmetric Matrix Class [l-type (UPLO=l) Strage].">dsymatrix</a> newmat(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a540bfe8d57e6510d0d099733e70d40b9"></a>
    <!-- doxytag: member="dssmatrix::to_dgsmatrix" ref="a540bfe8d57e6510d0d099733e70d40b9" args="() const " -->
    <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="classdssmatrix.html#a540bfe8d57e6510d0d099733e70d40b9">dssmatrix::to_dgsmatrix</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__dgsmatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_dgsmatrix</a> </p>

        <p>Definition at line <a class="el" href="dssmatrix-cast_8hpp_source.html#l00046">46</a> of file <a class="el"
            href="dssmatrix-cast_8hpp_source.html">dssmatrix-cast.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00009">m</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, <a class="el"
            href="dgsmatrix-io_8hpp_source.html#l00054">dgsmatrix::put()</a>, and <a class="el"
            href="dgsmatrix-misc_8hpp_source.html#l00014">dgsmatrix::zero()</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( <a class="code" href="classdgsmatrix.html" title="Real Double-precision General Sparse Matrix Class.">dgsmatrix</a>(<a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>,<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>,<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size()*2) );
  newmat.zero();
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newmat.put(it-&gt;i, it-&gt;j, it-&gt;v);
    <span class="keywordflow">if</span>(it-&gt;i!=it-&gt;j){
      newmat.put(it-&gt;j, it-&gt;i, it-&gt;v);
    }
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ab82433f55e12424557cfbe0b4020dcf7"></a>
    <!-- doxytag: member="dssmatrix::operator()" ref="ab82433f55e12424557cfbe0b4020dcf7" args="(const long &amp;, const long &amp;) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">double dssmatrix::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="dssmatrix-io_8hpp_source.html#l00003">3</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keyword">const</span> uint32_t ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].end(); p++){
    <span class="keywordflow">if</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>==ii &amp;&amp; <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j==jj){ <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="a3fb65782bd313ac095b55cb41411debf"></a>
    <!-- doxytag: member="dssmatrix::operator()" ref="a3fb65782bd313ac095b55cb41411debf" args="(const long &amp;, const long &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">double &amp; dssmatrix::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><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>operator() for const object </p>

        <p>Definition at line <a class="el" href="dssmatrix-io_8hpp_source.html#l00026">26</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keyword">const</span> uint32_t ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].end(); p++){
    <span class="keywordflow">if</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>==ii &amp;&amp; <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j==jj){ <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].v; }
  }
  <span class="comment"></span>
<span class="comment">  //////// (i,j) component not found ////////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].push_back(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  <span class="keywordflow">if</span>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>!=j){<span class="comment">//off-diagonal</span>
    <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[jj].push_back(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  }
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.push_back(<a class="code" href="classdcomponent.html" title="Component Class for Real Double-precision Sparse Matrix Classes.">dcomponent</a>(ii,jj,0.));
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.back().v;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a7dae293925f88a09c577b45c32151133"></a>
    <!-- doxytag: member="dssmatrix::put" ref="a7dae293925f88a09c577b45c32151133" args="(const long &amp;, const long &amp;, const double &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; <a class="el"
                href="classdssmatrix.html#a7dae293925f88a09c577b45c32151133">dssmatrix::put</a> </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>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype">const double &amp;&#160;</td>
            <td class="paramname"><em>v</em>&#160;</td>
          </tr>
          <tr>
            <td></td>
            <td>)</td>
            <td></td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>put value with volume cheack without isListed check </p>

        <p>Definition at line <a class="el" href="dssmatrix-io_8hpp_source.html#l00058">58</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00116">isListed()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="double-dssmatrix_8hpp_source.html#l00003">operator*()</a>, and <a
            class="el" href="dssmatrix-io_8hpp_source.html#l00261">read()</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keywordflow">if</span>( <a class="code" href="classdssmatrix.html#a3436ccad07ec887b9fe5262cc6d469cd">isListed</a>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j) ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The required component is already listed.&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">  //// push ////</span>
<span class="comment"></span>  <span class="keyword">const</span> <span class="keywordtype">long</span> ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].push_back(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  <span class="keywordflow">if</span>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>!=j){<span class="comment">//off-diagonal</span>
    <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[jj].push_back(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  }
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.push_back(<a class="code" href="classdcomponent.html" title="Component Class for Real Double-precision Sparse Matrix Classes.">dcomponent</a>(ii,jj,v));
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="abfd167fcf446bc5003545e0d92019442"></a>
    <!-- doxytag: member="dssmatrix::del" ref="abfd167fcf446bc5003545e0d92019442" args="(const long, const long)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; <a class="el"
                href="classdssmatrix.html#abfd167fcf446bc5003545e0d92019442">dssmatrix::del</a> </td>
            <td>(</td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>i</em>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>j</em>&#160;</td>
          </tr>
          <tr>
            <td></td>
            <td>)</td>
            <td></td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>delete the entry of a component </p>

        <p>Definition at line <a class="el" href="dssmatrix-io_8hpp_source.html#l00092">92</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00218">diet()</a>, and <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00079">stretch()</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keyword">const</span> <span class="keywordtype">long</span> ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <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="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].end(); p++){
    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==ii &amp;&amp; long(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j)==jj){<span class="comment">//exists</span><span class="comment"></span>
<span class="comment">      //// save position ////</span>
<span class="comment"></span>      uint32_t c(*p);
      uint32_t C(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size()-1);
      <span class="comment"></span>
<span class="comment">      //// data translation ////</span>
<span class="comment"></span>      <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c]=data.back();
      data.pop_back();
      <span class="comment"></span>
<span class="comment">      //// remove from List ////</span>
<span class="comment"></span>      <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].erase(p);
      <span class="keywordflow">if</span>(i!=j){<span class="comment">//off-diagonal</span>
        <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator pj=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[jj].begin(); pj!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[jj].end(); pj++){
          <span class="keywordflow">if</span>(*pj==c){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[jj].erase(pj); <span class="keywordflow">break</span>; }
        }
      }
      <span class="comment"></span>
<span class="comment">      //// modify the entry of translated component ////</span>
<span class="comment"></span>      uint32_t I(data[c].i), J(data[c].j);
      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[I].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[I].end(); q++){
        <span class="keywordflow">if</span>(*q==C){ *q=c; <span class="keywordflow">break</span>; }
      }
      <span class="keywordflow">if</span>(I!=J){<span class="comment">//off-diagonal</span>
        <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[J].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[J].end(); q++){
          <span class="keywordflow">if</span>(*q==C){ *q=c; <span class="keywordflow">break</span>; }
        }
      }
      <span class="keywordflow">return</span> *<span class="keyword">this</span>;
    }
  }
  
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  std::cerr &lt;&lt; <span class="stringliteral">&quot;# [NOTE]@dssmatrix::del(long&amp;, long&amp;): The required component was not listed. Your input was (&quot;</span> &lt;&lt; i &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; j &lt;&lt; <span class="stringliteral">&quot;).&quot;</span> &lt;&lt; std::endl;
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>  
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a799764c3f2c86c50bb38750503670cf8"></a>
    <!-- doxytag: member="dssmatrix::del" ref="a799764c3f2c86c50bb38750503670cf8" args="(const long)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; <a class="el"
                href="classdssmatrix.html#abfd167fcf446bc5003545e0d92019442">dssmatrix::del</a> </td>
            <td>(</td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>c</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>delete the entry of an element </p>

        <p>Definition at line <a class="el" href="dssmatrix-io_8hpp_source.html#l00147">147</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</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>( c&lt;0 || c&gt;=<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size()) ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The required element is out of the matrix volume.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; c &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">if</span>( c==<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size()-1) ){<span class="comment">//if c is the last element</span>
    <span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>), j(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].j);
    <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end(); q++){
      <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*q)==c){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].erase(q); <span class="keywordflow">break</span>; }
    }
    <span class="keywordflow">if</span>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>!=j){<span class="comment">//off-diagonal</span>
      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].end(); q++){
        <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*q)==c){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].erase(q); <span class="keywordflow">break</span>; }
      }
    }
    <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.pop_back();
  }
  
  <span class="keywordflow">else</span>{<span class="comment">//c is NOT the last element</span><span class="comment"></span>
<span class="comment">    //// data translation ////</span>
<span class="comment"></span>    uint32_t C(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size()-1);
    <span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>), j(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].j), I(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.back().i), J(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.back().j);
    <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c]=data.back();
    <span class="comment">//std::cerr &lt;&lt; &quot;c=&quot; &lt;&lt; c   &lt;&lt; &quot; i=&quot; &lt;&lt; i &lt;&lt; &quot; j=&quot; &lt;&lt; j &lt;&lt; &quot; C=&quot; &lt;&lt; vol &lt;&lt; &quot; I=&quot; &lt;&lt; I &lt;&lt; &quot; J=&quot; &lt;&lt; J &lt;&lt; std::endl;</span>
    <span class="comment"></span>
<span class="comment">    //// remove entry of component ////</span>
<span class="comment"></span>    <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end(); q++){
      <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*q)==c){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].erase(q); <span class="keywordflow">break</span>; }
    }
    <span class="keywordflow">if</span>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>!=j){<span class="comment">//off-diagonal</span>
      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].end(); q++){
        <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*q)==c){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].erase(q); <span class="keywordflow">break</span>; }
      }
    }
    <span class="comment"></span>
<span class="comment">    //// modify the entry of translated component ////</span>
<span class="comment"></span>    <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[I].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[I].end(); q++){
      <span class="keywordflow">if</span>(*q==C){ *q=c; <span class="keywordflow">break</span>; }
    }
    <span class="keywordflow">if</span>(I!=J){<span class="comment">//off-diagonal</span>
      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[J].begin(); q!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[J].end(); q++){
        <span class="keywordflow">if</span>(*q==C){ *q=c; <span class="keywordflow">break</span>; }
      }
    }
    <span class="comment"></span>
<span class="comment">    //// pop_back ////</span>
<span class="comment"></span>    data.pop_back();
  }
  
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a70104d04523b8edbd5ca282d731b4ca6"></a>
    <!-- doxytag: member="dssmatrix::write" ref="a70104d04523b8edbd5ca282d731b4ca6" args="(const char *) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#a70104d04523b8edbd5ca282d731b4ca6">dssmatrix::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="dssmatrix-io_8hpp_source.html#l00244">244</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix_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;#dssmatrix&quot;</span> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ab8b59931bbdebb4b8b7081be32fcdcfa"></a>
    <!-- doxytag: member="dssmatrix::read" ref="ab8b59931bbdebb4b8b7081be32fcdcfa" args="(const char *)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#ab8b59931bbdebb4b8b7081be32fcdcfa">dssmatrix::read</a> </td>
            <td>(</td>
            <td class="paramtype">const char *&#160;</td>
            <td class="paramname"><em>filename</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">

        <p>Definition at line <a class="el" href="dssmatrix-io_8hpp_source.html#l00261">261</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a>.</p>

        <p>References <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00058">put()</a>, and <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00054">resize()</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00068">dssmatrix()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  std::ifstream s( filename );
  <span class="keywordflow">if</span>(!s){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The file \&quot;&quot;</span> &lt;&lt; filename &lt;&lt; <span class="stringliteral">&quot;\&quot; can not be opened.&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }

  std::string id;
  s &gt;&gt; id;
  <span class="keywordflow">if</span>( <span class="keywordtype">id</span> != <span class="stringliteral">&quot;dssmatrix&quot;</span> &amp;&amp; <span class="keywordtype">id</span> != <span class="stringliteral">&quot;#dssmatrix&quot;</span> ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The type name of the file \&quot;&quot;</span> &lt;&lt; filename &lt;&lt; <span class="stringliteral">&quot;\&quot; is not dssmatrix.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Its type name was &quot;</span> &lt;&lt; <span class="keywordtype">id</span> &lt;&lt; <span class="stringliteral">&quot; .&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
  
  s &gt;&gt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>;
  <a class="code" href="classdssmatrix.html#ae17262882f2c0f36fcce8f8e4ee13c9d">resize</a>(n);
  
  <span class="keywordtype">double</span> val;
  <span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>, j,  pos, tmp;
  <span class="keywordflow">while</span>(!s.eof()){
    s &gt;&gt; i &gt;&gt; j &gt;&gt; val;
    <a class="code" href="classdssmatrix.html#a7dae293925f88a09c577b45c32151133">put</a>(i,j, val);
    pos =s.tellg();
    s &gt;&gt; tmp;
    s.seekg(pos);
  }
  
  <span class="keywordflow">if</span>(!s.eof()){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;There is something is wrong with the file \&quot;&quot;</span> &lt;&lt; filename &lt;&lt; <span class="stringliteral">&quot; .&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Most likely, there are too many data components over the context.&quot;</span> &lt;&lt; std::endl;
    exit(1);
  }
  s.close();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a399c7c88c81e9c12b1ac9759e6c5f6cc"></a>
    <!-- doxytag: member="dssmatrix::clear" ref="a399c7c88c81e9c12b1ac9759e6c5f6cc" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#a399c7c88c81e9c12b1ac9759e6c5f6cc">dssmatrix::clear</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>clear all the matrix data and set the sizes 0 </p>

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

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =0;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aaf3e5e2b644452fd567174197d4f69b3"></a>
    <!-- doxytag: member="dssmatrix::zero" ref="aaf3e5e2b644452fd567174197d4f69b3" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; <a class="el"
                href="classdssmatrix.html#aaf3e5e2b644452fd567174197d4f69b3">dssmatrix::zero</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>change the matrix into a zero matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00012">12</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.resize(0);
  <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;<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].resize(0); }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aabb19d3737f39fcf8ff7dd430d1c0283"></a>
    <!-- doxytag: member="dssmatrix::chsign" ref="aabb19d3737f39fcf8ff7dd430d1c0283" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#aabb19d3737f39fcf8ff7dd430d1c0283">dssmatrix::chsign</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>change sign(+/-) of the matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00021">21</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    it-&gt;v =-it-&gt;v;
  }
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ab61890340f8faafdbec867ca5a61ab95"></a>
    <!-- doxytag: member="dssmatrix::copy" ref="ab61890340f8faafdbec867ca5a61ab95" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#ab61890340f8faafdbec867ca5a61ab95">dssmatrix::copy</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>make a deep copy of the matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00030">30</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-constructor_8hpp_source.html#l00018">dssmatrix()</a>, and <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00003">operator=()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a> =mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>;
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a> =mat.<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="adbd757ec9c95de11c1c0adeb6ddd895f"></a>
    <!-- doxytag: member="dssmatrix::shallow_copy" ref="adbd757ec9c95de11c1c0adeb6ddd895f" args="(const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#adbd757ec9c95de11c1c0adeb6ddd895f">dssmatrix::shallow_copy</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</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>make a shallow copy of the matrix<br />
          This function is not designed to be used in project codes. </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00040">40</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00011">_dssmatrix::data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00012">_dssmatrix::line</a>, <a class="el"
            href="__dssmatrix_8hpp_source.html#l00010">_dssmatrix::n</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="__dssmatrix-misc_8hpp_source.html#l00003">_dssmatrix::nullify()</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00003">operator=()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.clear();
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  
  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a>;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.swap(mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>);
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.swap(mat.<a class="code" href="class__dssmatrix.html#a988041b8d0cf2b8cce763f8da302c7e0" title="vector of vector to store the entry information of component for each row and column">line</a>);
  
  mat.<a class="code" href="class__dssmatrix.html#ac16e0d54da2261c77918dc25b0f66df2">nullify</a>();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ae17262882f2c0f36fcce8f8e4ee13c9d"></a>
    <!-- doxytag: member="dssmatrix::resize" ref="ae17262882f2c0f36fcce8f8e4ee13c9d" args="(const long &amp;, const long=0, const long=0)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; <a class="el"
                href="classdssmatrix.html#ae17262882f2c0f36fcce8f8e4ee13c9d">dssmatrix::resize</a> </td>
            <td>(</td>
            <td class="paramtype">const long &amp;&#160;</td>
            <td class="paramname"><em>_n</em>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>_c</em> = <code>0</code>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype">const long&#160;</td>
            <td class="paramname"><em>_l</em> = <code>0</code>&#160;</td>
          </tr>
          <tr>
            <td></td>
            <td>)</td>
            <td></td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>resize the matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00054">54</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-io_8hpp_source.html#l00261">read()</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>( _n&lt;0 || _c&lt;0 || _l&lt;0 ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;Matrix sizes, the length of arrays, and line size must be positive integers. &quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; _n &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; _c &lt;&lt; <span class="stringliteral">&quot;,&quot;</span> &lt;&lt; _l &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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =_n;
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.resize(0);
  <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.reserve(_c);
  <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.resize(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</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;<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].resize(0); 
    <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].reserve(_l);
  }
  
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a3aa570dbe2fc73e855f0ce68b9ed940c"></a>
    <!-- doxytag: member="dssmatrix::stretch" ref="a3aa570dbe2fc73e855f0ce68b9ed940c" args="(const long &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#a3aa570dbe2fc73e855f0ce68b9ed940c">dssmatrix::stretch</a> </td>
            <td>(</td>
            <td class="paramtype">const long &amp;&#160;</td>
            <td class="paramname"><em>dn</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>stretch the matrix size </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00079">79</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00092">del()</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>+dn&lt;0 ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;The new matrix size must be larger than zero.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; dn &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">  //////// zero ////////</span>
<span class="comment"></span>  <span class="keywordflow">if</span>(dn==0){ <span class="keywordflow">return</span>; }
<span class="comment"></span>
<span class="comment">  //////// non-zero ////////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> +=dn;
  
  <span class="keywordflow">if</span>(dn&lt;0){<span class="comment"></span>
<span class="comment">    //// delete components over the new size ////</span>
<span class="comment"></span>    <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::reverse_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rbegin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend(); it++){
      <span class="keywordflow">if</span>( <span class="keywordtype">long</span>(it-&gt;i)&gt;=<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> ){ <a class="code" href="classdssmatrix.html#abfd167fcf446bc5003545e0d92019442">del</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend()-it-1); }
    }<span class="comment"></span>
<span class="comment">    //// shrink line ////</span>
<span class="comment"></span>    <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;-dn; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
      <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.pop_back();
    }
  }
  <span class="keywordflow">else</span>{<span class="comment">//dn&gt;0</span><span class="comment"></span>
<span class="comment">    //// expand line ////</span>
<span class="comment"></span>    <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;dn; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
      <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>.push_back( std::vector&lt;uint32_t&gt;(0) );
    }
  }
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a3436ccad07ec887b9fe5262cc6d469cd"></a>
    <!-- doxytag: member="dssmatrix::isListed" ref="a3436ccad07ec887b9fe5262cc6d469cd" args="(const long &amp;, const long &amp;) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">bool <a class="el"
                href="classdssmatrix.html#a3436ccad07ec887b9fe5262cc6d469cd">dssmatrix::isListed</a> </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>check if the component is listed </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00116">116</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-io_8hpp_source.html#l00058">put()</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keyword">const</span> uint32_t ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].end(); p++){
    <span class="keywordflow">if</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>==ii &amp;&amp; <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j==jj){ <span class="keywordflow">return</span> 1; }
  }
  
  <span class="keywordflow">return</span> 0;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="af1b1e77b41864cd93652d7a475ac9b72"></a>
    <!-- doxytag: member="dssmatrix::number" ref="af1b1e77b41864cd93652d7a475ac9b72" args="(const long &amp;, const long &amp;) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">long <a class="el"
                href="classdssmatrix.html#af1b1e77b41864cd93652d7a475ac9b72">dssmatrix::number</a> </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>return the element number of the component </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00137">137</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-io_8hpp_source.html#l00210">operator&lt;&lt;()</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="keyword">const</span> uint32_t ii(std::max(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j)), jj(std::min(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j));
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[ii].end(); p++){
    <span class="keywordflow">if</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>==ii &amp;&amp; <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j==jj){ <span class="keywordflow">return</span> *p; }
  }
  
  <span class="keywordflow">return</span> -1;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a74466758872d0329d260c520b85c25cf"></a>
    <!-- doxytag: member="dssmatrix::row" ref="a74466758872d0329d260c520b85c25cf" args="(const long &amp;) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__drovector.html">_drovector</a> <a class="el"
                href="classdssmatrix.html#a74466758872d0329d260c520b85c25cf">dssmatrix::row</a> </td>
            <td>(</td>
            <td class="paramtype">const long &amp;&#160;</td>
            <td class="paramname"><em>_m</em></td>
            <td>)</td>
            <td> const<code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>get row of the matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00162">162</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00009">m</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="drovector-misc_8hpp_source.html#l00013">drovector::zero()</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>( _m&lt;0 || _m&gt;<a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a> ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;Input row number must be between 0 and &quot;</span> &lt;&lt; m &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was &quot;</span> &lt;&lt; _m &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="classdrovector.html" title="Real Double-precision Row Vector Class.">drovector</a> vec(<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>);
  vec.zero();
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[_m].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[_m].end(); p++){
    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==_m){
      vec(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j) =<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].v;
    }
    <span class="keywordflow">else</span>{
      vec(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].i) =<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].v;
    }
  }
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(vec);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ab88e607783ac7a24d0d8b262e7209871"></a>
    <!-- doxytag: member="dssmatrix::col" ref="ab88e607783ac7a24d0d8b262e7209871" args="(const long &amp;) const " -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dcovector.html">_dcovector</a> <a class="el"
                href="classdssmatrix.html#ab88e607783ac7a24d0d8b262e7209871">dssmatrix::col</a> </td>
            <td>(</td>
            <td class="paramtype">const long &amp;&#160;</td>
            <td class="paramname"><em>_n</em></td>
            <td>)</td>
            <td> const<code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>get column of the matrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00188">188</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00009">m</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="dcovector-misc_8hpp_source.html#l00013">dcovector::zero()</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>( _n&lt;0 || _n&gt;<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> ){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;Input row number must be between 0 and &quot;</span> &lt;&lt; n &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was &quot;</span> &lt;&lt; _n &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> vec(<a class="code" href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154" title="matrix row size">m</a>);
  vec.zero();
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[_n].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[_n].end(); p++){
    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==_n){
      vec(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j) =<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].v;
    }
    <span class="keywordflow">else</span>{
      vec(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].i) =<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].v;
    }
  }
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(vec);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a1be78a2507c837f52a68cb15bb32e670"></a>
    <!-- doxytag: member="dssmatrix::diet" ref="a1be78a2507c837f52a68cb15bb32e670" args="(const double=DBL_MIN)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#a1be78a2507c837f52a68cb15bb32e670">dssmatrix::diet</a> </td>
            <td>(</td>
            <td class="paramtype">const double&#160;</td>
            <td class="paramname"><em>eps</em> = <code>DBL_MIN</code></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>erase components less than DBL_MIN </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00218">218</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00092">del()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::reverse_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rbegin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend(); it++){
    <span class="keywordflow">if</span>( fabs(it-&gt;v)&lt;eps ){ <a class="code" href="classdssmatrix.html#abfd167fcf446bc5003545e0d92019442">del</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend()-it-1); }
  }
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a9fec0074e777fb48bfd995fdb22c5b16"></a>
    <!-- doxytag: member="dssmatrix::diag_front" ref="a9fec0074e777fb48bfd995fdb22c5b16" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">long <a class="el"
                href="classdssmatrix.html#a9fec0074e777fb48bfd995fdb22c5b16">dssmatrix::diag_front</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>reorder components so that all diagonal componets are placed in front </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00227">227</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00362">swap</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// set initial dsize ////////</span>
<span class="comment"></span>  <span class="keywordtype">long</span> dsize(0);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">if</span>(it-&gt;i==it-&gt;j){ dsize++; }
    <span class="keywordflow">else</span>{ <span class="keywordflow">break</span>; }
  }
  <span class="comment"></span>
<span class="comment">  //////// swapping loop ////////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::reverse_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rbegin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend()-dsize; it++){
    <span class="keywordflow">if</span>(it-&gt;i==it-&gt;j){<span class="comment">//is diag</span>
      <span class="keywordtype">long</span> c(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.rend()-it-1);<span class="comment">//current it&#39;s index</span>
      <span class="keywordtype">long</span> <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[dsize].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>), j(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[dsize].j), k(it-&gt;i);<span class="comment"></span>
<span class="comment">      //// search (k,k) line ////</span>
<span class="comment"></span>      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[k].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[k].end(); p++){
        <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==k &amp;&amp; long(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[*p].j)==k){ *p=dsize; }
      }<span class="comment"></span>
<span class="comment">      //// search (i,j) line ////</span>
<span class="comment"></span>      <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].end(); p++){
        <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*p)==dsize){ *p=c; }
      }<span class="comment"></span>
<span class="comment">      //// search (j,i) line ////</span>
<span class="comment"></span>      <span class="keywordflow">if</span>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>!=j){
        <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator p=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].begin(); p!=<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[j].end(); p++){
          <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(*p)==dsize){ *p=c; }
        }
      }
      <span class="keywordflow">else</span>{<span class="comment">//i==j</span>
        it--;
      }<span class="comment"></span>
<span class="comment">      //// swap ////</span>
<span class="comment"></span>      <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[dsize],<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c]);<span class="comment"></span>
<span class="comment">      //// update ////</span>
<span class="comment"></span>      dsize++;
    }
  }
  
  <span class="keywordflow">return</span> dsize;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="acb90d75655c5821bf379cf6431694a6c"></a>
    <!-- doxytag: member="dssmatrix::reorder" ref="acb90d75655c5821bf379cf6431694a6c" args="(const bool=0)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#acb90d75655c5821bf379cf6431694a6c">dssmatrix::reorder</a> </td>
            <td>(</td>
            <td class="paramtype">const bool&#160;</td>
            <td class="paramname"><em>mode</em> = <code>0</code></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>reorder components </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00270">270</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="zcomponent_8hpp_source.html#l00042">ilt()</a>, <a class="el"
            href="zcomponent_8hpp_source.html#l00049">jlt()</a>, and <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00285">rebuild()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //// sort data ////</span>
<span class="comment"></span>  <span class="keywordflow">if</span>(mode==0){
    std::sort(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(), <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(), <a class="code" href="zcomponent_8hpp.html#a82888213c3ecdb9af5e80c26cc5b98ca">dcomponent::ilt</a>);
  }
  <span class="keywordflow">else</span>{
    std::sort(<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(), <a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(), <a class="code" href="zcomponent_8hpp.html#a6c6dbac5a1a253a101f8db0678112ae2">dcomponent::jlt</a>);
  }<span class="comment"></span>
<span class="comment">  //// rebuild line ////</span>
<span class="comment"></span>  <a class="code" href="classdssmatrix.html#aa08f9ed1e6171e1c9bd067ad12e825bb">rebuild</a>();
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aa08f9ed1e6171e1c9bd067ad12e825bb"></a>
    <!-- doxytag: member="dssmatrix::rebuild" ref="aa08f9ed1e6171e1c9bd067ad12e825bb" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#aa08f9ed1e6171e1c9bd067ad12e825bb">dssmatrix::rebuild</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>rebuild line </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00285">285</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00270">reorder()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //// clear line ////</span>
<span class="comment"></span>  <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;<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){ <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].resize(0); }
  <span class="comment"></span>
<span class="comment">  //// build line ////</span>
<span class="comment"></span>  uint32_t c(0);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[it-&gt;i].push_back(c);
    <span class="keywordflow">if</span>( (it-&gt;i) != (it-&gt;j) ){
      <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[it-&gt;j].push_back(c);
    }
    c++;
  }
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aca42d5d3610e9592ba78d01fb676ad55"></a>
    <!-- doxytag: member="dssmatrix::checkup" ref="aca42d5d3610e9592ba78d01fb676ad55" args="()" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#aca42d5d3610e9592ba78d01fb676ad55">dssmatrix::checkup</a> </td>
            <td>(</td>
            <td class="paramname"></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>health checkup </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00307">307</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, <a class="el"
            href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00012">line</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// write ////////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    std::cerr &lt;&lt; <span class="stringliteral">&quot;array[&quot;</span> &lt;&lt; it-<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin() &lt;&lt; <span class="stringliteral">&quot;] = (&quot;</span> &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;
  }
  std::cerr &lt;&lt; std::endl;
  
  <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;<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    std::cerr &lt;&lt; <span class="stringliteral">&quot;line[&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; std::flush;
    <span class="keywordflow">for</span>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> k=0; k&lt;<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>].size(); k++){
      std::cerr &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>[<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>][k] &lt;&lt; std::flush;
    }
    std::cerr &lt;&lt; std::endl;
  }
  std::cerr &lt;&lt; std::endl;
  <span class="comment"></span>
<span class="comment">  //////// Elements ////////</span>
<span class="comment"></span>  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){<span class="comment"></span>
<span class="comment">    //// m bound ////</span>
<span class="comment"></span>    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(it-&gt;i)&gt;=<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>){
      ERROR_REPORT;
      std::cerr &lt;&lt; <span class="stringliteral">&quot;The indx of the &quot;</span> &lt;&lt; it-<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin() &lt;&lt; <span class="stringliteral">&quot;th element is out of the matrix size.&quot;</span> &lt;&lt; std::endl
                &lt;&lt; <span class="stringliteral">&quot;Its i index was &quot;</span> &lt;&lt; it-&gt;i &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::endl;
      exit(1);
    }
    <span class="comment"></span>
<span class="comment">    //// n bound ////</span>
<span class="comment"></span>    <span class="keywordflow">if</span>(<span class="keywordtype">long</span>(it-&gt;j)&gt;=n){
      ERROR_REPORT;
      std::cerr &lt;&lt; <span class="stringliteral">&quot;The jndx of the &quot;</span> &lt;&lt; it-<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin() &lt;&lt; <span class="stringliteral">&quot;th element is out of the matrix size.&quot;</span> &lt;&lt; std::endl
                &lt;&lt; <span class="stringliteral">&quot;Its j index was &quot;</span> &lt;&lt; it-&gt;j &lt;&lt; <span class="stringliteral">&quot;.&quot;</span> &lt;&lt; std::endl;
      exit(1);
    }
    <span class="comment"></span>
<span class="comment">    //// double-listed ////</span>
<span class="comment"></span>    <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator IT=it+1; IT!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); IT++){
      <span class="keywordflow">if</span>( it-&gt;i==IT-&gt;i &amp;&amp; it-&gt;j==IT-&gt;j ){
        ERROR_REPORT;
        std::cerr &lt;&lt; <span class="stringliteral">&quot;The (&quot;</span> &lt;&lt; it-&gt;i &lt;&lt; <span class="stringliteral">&quot;, &quot;</span> &lt;&lt; it-&gt;j &lt;&lt; <span class="stringliteral">&quot;) component is double-listed at the &quot;</span> &lt;&lt; it-<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin() &lt;&lt; <span class="stringliteral">&quot;th and the&quot;</span> &lt;&lt; IT-<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin() &lt;&lt; <span class="stringliteral">&quot;the elements.&quot;</span>&lt;&lt; std::endl;
        exit(1);
      }
    }
  }
  <span class="comment"></span>
<span class="comment">  //////// NOTE ////////</span>
<span class="comment"></span>  std::cerr &lt;&lt; <span class="stringliteral">&quot;# [NOTE]@dssmatrix::checkup(): This symmetric sparse matrix is fine.&quot;</span> &lt;&lt; std::endl;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="abdb5e214b5bf405f0f362af16488f647"></a>
    <!-- doxytag: member="dssmatrix::operator=" ref="abdb5e214b5bf405f0f362af16488f647" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix=dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00003">3</a> of file <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00030">copy()</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00011">data</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">if</span>(&amp;<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>!=&amp;mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>){ <span class="comment">// if it is NOT self substitution</span>
    <a class="code" href="classdssmatrix.html#ab61890340f8faafdbec867ca5a61ab95">copy</a>(mat);
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="af121068d625fe0d35f71d6effb7159aa"></a>
    <!-- doxytag: member="dssmatrix::operator=" ref="af121068d625fe0d35f71d6effb7159aa" args="(const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</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>dssmatrix=<a class="el" href="class__dssmatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Sparse Matrix Class">_dssmatrix</a>
          operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00003">3</a> of file <a
            class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#adbd757ec9c95de11c1c0adeb6ddd895f">shallow_copy</a>(mat);
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="af2b699179915e6dedca28b2ba04e1a0d"></a>
    <!-- doxytag: member="dssmatrix::operator+=" ref="af2b699179915e6dedca28b2ba04e1a0d" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator+= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix+=dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00017">17</a> of file <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) += (&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) +=it-&gt;v;
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aed6771cbfa90537e68ffa09ffe8e2a0f"></a>
    <!-- doxytag: member="dssmatrix::operator+=" ref="aed6771cbfa90537e68ffa09ffe8e2a0f" args="(const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator+= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</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>dssmatrix+=<a class="el" href="class__dssmatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Sparse Matrix Class">_dssmatrix</a>
          operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00015">15</a> of file <a
            class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="__dssmatrix_8hpp_source.html#l00011">_dssmatrix::data</a>, <a class="el"
            href="__dssmatrix-misc_8hpp_source.html#l00012">_dssmatrix::destroy()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="__dssmatrix_8hpp_source.html#l00010">_dssmatrix::n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) += (&quot;</span> &lt;&lt; mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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=mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) +=it-&gt;v;
  }
  
  mat.<a class="code" href="class__dssmatrix.html#af5a81a3aa4b8d1fd2f66afbfbc97077e">destroy</a>();
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aa7e4ddda849b5f9fcfdcd6eb114de803"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;=" ref="aa7e4ddda849b5f9fcfdcd6eb114de803" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator-= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix-=dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00036">36</a> of file <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>, and <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a sutraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) -= (&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) -=it-&gt;v;
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aafbb41ac6cefa3f43bd5f3edceead539"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;=" ref="aafbb41ac6cefa3f43bd5f3edceead539" args="(const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator-= </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="class__dssmatrix.html">_dssmatrix</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>dssmatrix-=<a class="el" href="class__dssmatrix.html"
            title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Sparse Matrix Class">_dssmatrix</a>
          operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00036">36</a> of file <a
            class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.hpp</a>.</p>

        <p>References <a class="el" href="__dssmatrix_8hpp_source.html#l00011">_dssmatrix::data</a>, <a class="el"
            href="__dssmatrix-misc_8hpp_source.html#l00012">_dssmatrix::destroy()</a>, <a class="el"
            href="dssmatrix_8hpp_source.html#l00010">n</a>, and <a class="el"
            href="__dssmatrix_8hpp_source.html#l00010">_dssmatrix::n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a sutraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) -= (&quot;</span> &lt;&lt; mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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=mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) -=it-&gt;v;
  }
  
  mat.<a class="code" href="class__dssmatrix.html#af5a81a3aa4b8d1fd2f66afbfbc97077e">destroy</a>();
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a4fe5f69706631322f23053242ca57b7b"></a>
    <!-- doxytag: member="dssmatrix::operator*=" ref="a4fe5f69706631322f23053242ca57b7b" args="(const double &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator*= </td>
            <td>(</td>
            <td class="paramtype">const double &amp;&#160;</td>
            <td class="paramname"><em>d</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix*=double operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-double_8hpp_source.html#l00003">3</a> of file <a class="el"
            href="dssmatrix-double_8hpp_source.html">dssmatrix-double.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    it-&gt;v *=d;
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a116c77e9aa6509c4a67554e1ffa25141"></a>
    <!-- doxytag: member="dssmatrix::operator/=" ref="a116c77e9aa6509c4a67554e1ffa25141" args="(const double &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp; dssmatrix::operator/= </td>
            <td>(</td>
            <td class="paramtype">const double &amp;&#160;</td>
            <td class="paramname"><em>d</em></td>
            <td>)</td>
            <td><code> [inline]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>dssmatrix/=double operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-double_8hpp_source.html#l00013">13</a> of file <a class="el"
            href="dssmatrix-double_8hpp_source.html">dssmatrix-double.hpp</a>.</p>

        <p>References <a class="el" href="dssmatrix_8hpp_source.html#l00011">data</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    it-&gt;v /=d;
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre>
        </div>
      </div>
    </div>
    <hr />
    <h2>Friends And Related Function Documentation</h2>
    <a class="anchor" id="ae6e87f88d0ec17225e8eab9a209e938f"></a>
    <!-- doxytag: member="dssmatrix::operator&lt;&lt;" ref="ae6e87f88d0ec17225e8eab9a209e938f" args="(std::ostream &amp;, const dssmatrix &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="classdssmatrix.html">dssmatrix</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="dssmatrix-io_8hpp_source.html#l00210">210</a> of file <a class="el"
            href="dssmatrix-io_8hpp_source.html">dssmatrix-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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>; j++){
      <span class="keywordflow">if</span>( <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> &gt;= j ){
        <span class="keywordtype">long</span> c =mat.<a class="code" href="classdssmatrix.html#af1b1e77b41864cd93652d7a475ac9b72">number</a>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
        <span class="keywordflow">if</span>(c&lt;0){
          s &lt;&lt; <span class="stringliteral">&quot; x &quot;</span>;
        }
        <span class="keywordflow">else</span>{
          s &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].v &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;
        }
      }
      <span class="keywordflow">else</span>{<span class="comment">//i&lt;j</span>
        <span class="keywordtype">long</span> c =mat.<a class="code" href="classdssmatrix.html#af1b1e77b41864cd93652d7a475ac9b72">number</a>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j);
        <span class="keywordflow">if</span>(c&lt;0){
          s &lt;&lt; <span class="stringliteral">&quot;{x}&quot;</span>;
        }
        <span class="keywordflow">else</span>{
          s &lt;&lt; <span class="stringliteral">&quot;{&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>[c].v &lt;&lt; <span class="stringliteral">&quot;}&quot;</span>;
        }
      }
    }
    s &lt;&lt; std::endl;
  }
  
  <span class="keywordflow">return</span> s;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ac8813cac8bbe03d5a6154f9c663c22ee"></a>
    <!-- doxytag: member="dssmatrix::swap" ref="ac8813cac8bbe03d5a6154f9c663c22ee" args="(dssmatrix &amp;, dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">swap</a>
            </td>
            <td>(</td>
            <td class="paramtype"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname"><em>A</em>, </td>
          </tr>
          <tr>
            <td class="paramkey"></td>
            <td></td>
            <td class="paramtype"><a class="el" href="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname"><em>B</em>&#160;</td>
          </tr>
          <tr>
            <td></td>
            <td>)</td>
            <td></td>
            <td><code> [friend]</code></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">
        <p>swap two matrices </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00362">362</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00227">diag_front()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(A.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>,B.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>);
  <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(A.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>,B.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>);
  <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(A.<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>,B.<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aefa4a107aab1f7733690d96bcfe4c54e"></a>
    <!-- doxytag: member="dssmatrix::_" ref="aefa4a107aab1f7733690d96bcfe4c54e" args="(dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> <a class="el"
                href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a> </td>
            <td>(</td>
            <td class="paramtype"><a class="el" href="classdssmatrix.html">dssmatrix</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>convert user object to smart-temporary object </p>

        <p>Definition at line <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">371</a> of file <a class="el"
            href="dssmatrix-misc_8hpp_source.html">dssmatrix-misc.hpp</a>.</p>

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00188">col()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00162">row()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00019">to_dgematrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00046">to_dgsmatrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00033">to_dsymatrix()</a>, and <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00003">to_zhsmatrix()</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__dssmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision Symmetric Sparse Matrix Class">_dssmatrix</a> newmat;
  <span class="comment"></span>
<span class="comment">  //////// shallow copy ////////</span>
<span class="comment"></span>  newmat.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a> =mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>;
  <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(newmat.<a class="code" href="class__dssmatrix.html#a0c4e6868fac505c8a01b4d26558ec009" title="matrix data">data</a>,mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>);
  <a class="code" href="classdssmatrix.html#ac8813cac8bbe03d5a6154f9c663c22ee">std::swap</a>(newmat.<a class="code" href="class__dssmatrix.html#a988041b8d0cf2b8cce763f8da302c7e0" title="vector of vector to store the entry information of component for each row and column">line</a>,mat.<a class="code" href="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac" title="vector of vector to store the entry information of component for each row and column">line</a>);
  <span class="comment"></span>
<span class="comment">  //////// nullify ////////</span>
<span class="comment"></span>  mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> =0;
  
  <span class="keywordflow">return</span> newmat;
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a6f4464aafa168e81f41eb9373e289c81"></a>
    <!-- doxytag: member="dssmatrix::t" ref="a6f4464aafa168e81f41eb9373e289c81" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> <a class="el"
                href="classdssmatrix.html#a6f4464aafa168e81f41eb9373e289c81">t</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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 dssmatrix </p>

        <p>Definition at line <a class="el" href="dssmatrix-calc_8hpp_source.html#l00003">3</a> of file <a class="el"
            href="dssmatrix-calc_8hpp_source.html">dssmatrix-calc.hpp</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  WARNING_REPORT;
  std::cerr &lt;&lt; <span class="stringliteral">&quot;This function call has no effect since the matrix is symmetric.&quot;</span> &lt;&lt; std::endl;
<span class="preprocessor">#endif//CPPL_DEBUG</span>
<span class="preprocessor"></span>
  <a class="code" href="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(mat);
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a1bbfd67509059868d7f137dda0b7c902"></a>
    <!-- doxytag: member="dssmatrix::idamax" ref="a1bbfd67509059868d7f137dda0b7c902" args="(long &amp;, long &amp;, const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">void <a class="el"
                href="classdssmatrix.html#a1bbfd67509059868d7f137dda0b7c902">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="classdssmatrix.html">dssmatrix</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="dssmatrix-calc_8hpp_source.html#l00021">21</a> of file <a class="el"
            href="dssmatrix-calc_8hpp_source.html">dssmatrix-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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="ac8aea1e078469b183463c0f771994ff2"></a>
    <!-- doxytag: member="dssmatrix::damax" ref="ac8aea1e078469b183463c0f771994ff2" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">double <a class="el"
                href="classdssmatrix.html#ac8aea1e078469b183463c0f771994ff2">damax</a> </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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="dssmatrix-calc_8hpp_source.html#l00037">37</a> of file <a class="el"
            href="dssmatrix-calc_8hpp_source.html">dssmatrix-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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="a9861032d2997191a6a37111d3195ab16"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a9861032d2997191a6a37111d3195ab16" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">const <a class="el" href="classdssmatrix.html">dssmatrix</a>&amp; operator+ </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>+dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-unary_8hpp_source.html#l00003">3</a> of file <a class="el"
            href="dssmatrix-unary_8hpp_source.html">dssmatrix-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="a1bd47d88626b2442f8d26d21ac3b3c66"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a1bd47d88626b2442f8d26d21ac3b3c66" args="(const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator- </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>-dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-unary_8hpp_source.html#l00010">10</a> of file <a class="el"
            href="dssmatrix-unary_8hpp_source.html">dssmatrix-unary.hpp</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(mat);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    it-&gt;v =-it-&gt;v;
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aec81ef1331cc6c755f000641b25f9fbe"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="aec81ef1331cc6c755f000641b25f9fbe" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a8de41b98849c7448fc2bb18c01a8115f"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a8de41b98849c7448fc2bb18c01a8115f" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgematrix.html">_dgematrix</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="a1de6abae4ad30b626b3dd8a1a406b3cc"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a1de6abae4ad30b626b3dd8a1a406b3cc" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a10f4dab1ffc756582a5b2a8dbdbf1038"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a10f4dab1ffc756582a5b2a8dbdbf1038" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dsymatrix.html">_dsymatrix</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="a075191203345aa20a96fda0277893c44"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a075191203345aa20a96fda0277893c44" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a4cac124fc984019c3289d38b0e002d62"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a4cac124fc984019c3289d38b0e002d62" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgbmatrix.html">_dgbmatrix</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="a5bd04125ecf08b8298a1fe4057010bcf"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a5bd04125ecf08b8298a1fe4057010bcf" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a253c7f8a800703f1065cd3d0f7261f34"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a253c7f8a800703f1065cd3d0f7261f34" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgsmatrix.html">_dgsmatrix</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="a1cb894cb737b3b2815ffdd0ae163b305"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="a1cb894cb737b3b2815ffdd0ae163b305" args="(const dssmatrix &amp;, const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator+ </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html">dssmatrix</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>dssmatrix+dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00059">59</a> of file <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ad8d3a7a197d971d712b6053ba1dd91a2"></a>
    <!-- doxytag: member="dssmatrix::operator+" ref="ad8d3a7a197d971d712b6053ba1dd91a2" args="(const dssmatrix &amp;, const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator+ </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</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>dssmatrix+_dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00061">61</a> of file <a
            class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(matB);
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a47ef28f3dee998c805c3963fa479a0e5"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a47ef28f3dee998c805c3963fa479a0e5" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a556f98d81e88d1f50c25a099b8469c0e"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a556f98d81e88d1f50c25a099b8469c0e" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgematrix.html">_dgematrix</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="afeb4be7ac8e9d5aa5bd081ad94b25d95"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="afeb4be7ac8e9d5aa5bd081ad94b25d95" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="abce614d70eb064a73dd1f808ae8146b6"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="abce614d70eb064a73dd1f808ae8146b6" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dsymatrix.html">_dsymatrix</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="a08dec9f9fb16c9df472bc87924855b84"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a08dec9f9fb16c9df472bc87924855b84" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a6fc181d17ee89f9e9faa6b39ce432950"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a6fc181d17ee89f9e9faa6b39ce432950" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgbmatrix.html">_dgbmatrix</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="a44c67de63602fbc408c6790251467382"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a44c67de63602fbc408c6790251467382" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a6f72983ca2fd0571f2d8fc0dae79236e"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a6f72983ca2fd0571f2d8fc0dae79236e" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgsmatrix.html">_dgsmatrix</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="a9eee7aaa870478948067e63ef7ac68ef"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="a9eee7aaa870478948067e63ef7ac68ef" args="(const dssmatrix &amp;, const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator- </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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="classdssmatrix.html">dssmatrix</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>dssmatrix-dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dssmatrix_8hpp_source.html#l00079">79</a> of file <a
            class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(matA);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matB.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="aa4b2fcea3223a8289070122929800546"></a>
    <!-- doxytag: member="dssmatrix::operator&#45;" ref="aa4b2fcea3223a8289070122929800546" args="(const dssmatrix &amp;, const _dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator- </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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__dssmatrix.html">_dssmatrix</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>dssmatrix-_dssmatrix operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html#l00083">83</a> of file <a
            class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>!=matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__dssmatrix.html#ac1de480934f45511a98ddc610868803f" 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="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(matB);
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=matA.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a8da8468f2d04fac7cc332c9a69560a92"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a8da8468f2d04fac7cc332c9a69560a92" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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>dssmatrix*dcovector operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-dcovector_8hpp_source.html#l00003">3</a> of file <a
            class="el" href="dssmatrix-dcovector_8hpp_source.html">dssmatrix-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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>);
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newvec(it-&gt;i) +=it-&gt;v*vec(it-&gt;j);
    <span class="keywordflow">if</span>(it-&gt;i!=it-&gt;j){
      newvec(it-&gt;j) +=it-&gt;v*vec(it-&gt;i);
    }
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newvec);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a7235fe0e8decfeac7d7a9f05987d8c89"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a7235fe0e8decfeac7d7a9f05987d8c89" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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>dssmatrix*_dcovector operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-__dcovector_8hpp_source.html#l00003">3</a> of file <a
            class="el" href="dssmatrix-__dcovector_8hpp_source.html">dssmatrix-_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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" 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(<a class="code" href="classdcovector.html" title="Real Double-precision Column Vector Class.">dcovector</a>(mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>));
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newvec(it-&gt;i) +=it-&gt;v*vec(it-&gt;j);
    <span class="keywordflow">if</span>(it-&gt;i!=it-&gt;j){
      newvec(it-&gt;j) +=it-&gt;v*vec(it-&gt;i);
    }
  }
  
  vec.<a class="code" href="class__dcovector.html#a3e16f52298eac6c97958a9cbc6388bc4">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newvec);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="ad5ca171015b9174b53118953173d2027"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="ad5ca171015b9174b53118953173d2027" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a295bec99cd5a5d773749cd9078c4b6a4"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a295bec99cd5a5d773749cd9078c4b6a4" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgematrix.html">_dgematrix</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="a33ec5e9afb5e4c325186f72dcf1d18c8"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a33ec5e9afb5e4c325186f72dcf1d18c8" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="abd693e175f2c3bede018b160c8671ac4"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="abd693e175f2c3bede018b160c8671ac4" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dsymatrix.html">_dsymatrix</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="a2c2a09698415bfb6487e0a24fef2b4f0"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a2c2a09698415bfb6487e0a24fef2b4f0" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="ab0c644c3e654effd9a6e316c2a0bb417"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="ab0c644c3e654effd9a6e316c2a0bb417" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgbmatrix.html">_dgbmatrix</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="a7f20210ffd88482a44002e96aa9c1e51"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a7f20210ffd88482a44002e96aa9c1e51" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</a> &amp;&#160;</td>
            <td class="paramname">, </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">&#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="a5d58be8804ea10ab13c8d89bb3c177c7"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a5d58be8804ea10ab13c8d89bb3c177c7" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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__dgsmatrix.html">_dgsmatrix</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="a7d9580c79c9e5461a521834038419367"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a7d9580c79c9e5461a521834038419367" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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="a7de7ba558e38a6cf0843677504e6d7a5"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a7de7ba558e38a6cf0843677504e6d7a5" args="(const dssmatrix &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="classdssmatrix.html">dssmatrix</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="abca05accec409b17ad5b31e8bd46f777"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="abca05accec409b17ad5b31e8bd46f777" args="(const dssmatrix &amp;, const double &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator* </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix*double operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-double_8hpp_source.html#l00027">27</a> of file <a class="el"
            href="dssmatrix-double_8hpp_source.html">dssmatrix-double.hpp</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(mat);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=newmat.data.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    it-&gt;v *=d;
  }
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a3cbb6f47b52847b4c6a873f58f5af8f6"></a>
    <!-- doxytag: member="dssmatrix::operator/" ref="a3cbb6f47b52847b4c6a873f58f5af8f6" args="(const dssmatrix &amp;, const double &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</a> operator/ </td>
            <td>(</td>
            <td class="paramtype">const <a class="el" href="classdssmatrix.html">dssmatrix</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>dssmatrix/double operator </p>

        <p>Definition at line <a class="el" href="dssmatrix-double_8hpp_source.html#l00038">38</a> of file <a class="el"
            href="dssmatrix-double_8hpp_source.html">dssmatrix-double.hpp</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(mat);
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::iterator it=newmat.data.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    it-&gt;v /=d;
  }
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <a class="anchor" id="a5efc3bdd595cf3ec79cc1dc498a0af32"></a>
    <!-- doxytag: member="dssmatrix::operator*" ref="a5efc3bdd595cf3ec79cc1dc498a0af32" args="(const double &amp;, const dssmatrix &amp;)" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname"><a class="el" href="class__dssmatrix.html">_dssmatrix</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="classdssmatrix.html">dssmatrix</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*dssmatrix operator </p>

        <p>Definition at line <a class="el" href="double-dssmatrix_8hpp_source.html#l00003">3</a> of file <a class="el"
            href="double-dssmatrix_8hpp_source.html">double-dssmatrix.hpp</a>.</p>
        <div class="fragment">
          <pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classdssmatrix.html" title="Real Double-precision Symmetric Sparse Matrix Class.">dssmatrix</a> newmat(mat.<a class="code" href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a" title="matrix column size">n</a>, mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.size());
  <span class="keywordflow">for</span>(std::vector&lt;dcomponent&gt;::const_iterator it=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classdssmatrix.html#a258714120e316e12a03ee60dc0151888" title="matrix data">data</a>.end(); it++){
    newmat.<a class="code" href="classdssmatrix.html#a7dae293925f88a09c577b45c32151133">put</a>(it-&gt;i, it-&gt;j, d*it-&gt;v);
  }
  <span class="keywordflow">return</span> <a class="code" href="classdssmatrix.html#aefa4a107aab1f7733690d96bcfe4c54e">_</a>(newmat);
}
</pre>
        </div>
      </div>
    </div>
    <hr />
    <h2>Member Data Documentation</h2>
    <a class="anchor" id="adb00c468da489c1d39028f36fb291154"></a>
    <!-- doxytag: member="dssmatrix::m" ref="adb00c468da489c1d39028f36fb291154" args="" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">long const&amp; <a class="el"
                href="classdssmatrix.html#adb00c468da489c1d39028f36fb291154">dssmatrix::m</a></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">

        <p>matrix row size </p>

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

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00188">col()</a>, <a class="el"
            href="__dgematrix-dssmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00162">row()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00019">to_dgematrix()</a>, and <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00046">to_dgsmatrix()</a>.</p>

      </div>
    </div>
    <a class="anchor" id="a94fac8a3f08704f5e0001473fa9a937a"></a>
    <!-- doxytag: member="dssmatrix::n" ref="a94fac8a3f08704f5e0001473fa9a937a" args="" -->
    <div class="memitem">
      <div class="memproto">
        <table class="memname">
          <tr>
            <td class="memname">long <a class="el"
                href="classdssmatrix.html#a94fac8a3f08704f5e0001473fa9a937a">dssmatrix::n</a></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">

        <p>matrix column size </p>

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

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00307">checkup()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00188">col()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00092">del()</a>, <a class="el"
            href="dssmatrix-constructor_8hpp_source.html#l00003">dssmatrix()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00116">isListed()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00137">number()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el"
            href="__dgematrix-dssmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el"
            href="__dssmatrix-dssmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el"
            href="dssmatrix-__dssmatrix_8hpp_source.html#l00015">operator+=()</a>, <a class="el"
            href="__dssmatrix-dssmatrix_8hpp_source.html#l00025">operator-()</a>, <a class="el"
            href="dssmatrix-__dssmatrix_8hpp_source.html#l00036">operator-=()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00210">operator&lt;&lt;()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00058">put()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00261">read()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00285">rebuild()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00162">row()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00362">swap()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00019">to_dgematrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00046">to_dgsmatrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00033">to_dsymatrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00003">to_zhsmatrix()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00244">write()</a>, and <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00012">zero()</a>.</p>

      </div>
    </div>
    <a class="anchor" id="a258714120e316e12a03ee60dc0151888"></a>
    <!-- doxytag: member="dssmatrix::data" ref="a258714120e316e12a03ee60dc0151888" 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="classdssmatrix.html#a258714120e316e12a03ee60dc0151888">dssmatrix::data</a></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">

        <p>matrix data </p>

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

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00307">checkup()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00021">chsign()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00188">col()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el"
            href="dssmatrix-calc_8hpp_source.html#l00037">damax()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00092">del()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00227">diag_front()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00218">diet()</a>, <a class="el"
            href="dssmatrix-constructor_8hpp_source.html#l00003">dssmatrix()</a>, <a class="el"
            href="dssmatrix-calc_8hpp_source.html#l00021">idamax()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00116">isListed()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00137">number()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el"
            href="__dgematrix-dssmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el"
            href="dssmatrix-double_8hpp_source.html#l00003">operator*=()</a>, <a class="el"
            href="__dssmatrix-dssmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el"
            href="dssmatrix-dssmatrix_8hpp_source.html#l00017">operator+=()</a>, <a class="el"
            href="__dssmatrix-dssmatrix_8hpp_source.html#l00025">operator-()</a>, <a class="el"
            href="dssmatrix-dssmatrix_8hpp_source.html#l00036">operator-=()</a>, <a class="el"
            href="dssmatrix-double_8hpp_source.html#l00038">operator/()</a>, <a class="el"
            href="dssmatrix-double_8hpp_source.html#l00013">operator/=()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00210">operator&lt;&lt;()</a>, <a class="el"
            href="dssmatrix-dssmatrix_8hpp_source.html#l00003">operator=()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00058">put()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00285">rebuild()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00270">reorder()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00162">row()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00362">swap()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00019">to_dgematrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00046">to_dgsmatrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00033">to_dsymatrix()</a>, <a class="el"
            href="dssmatrix-cast_8hpp_source.html#l00003">to_zhsmatrix()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00244">write()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00012">zero()</a>, and <a class="el"
            href="dssmatrix-constructor_8hpp_source.html#l00084">~dssmatrix()</a>.</p>

      </div>
    </div>
    <a class="anchor" id="afe21536a32fe45971cf2c25bf91903ac"></a>
    <!-- doxytag: member="dssmatrix::line" ref="afe21536a32fe45971cf2c25bf91903ac" 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="classdssmatrix.html#afe21536a32fe45971cf2c25bf91903ac">dssmatrix::line</a></td>
          </tr>
        </table>
      </div>
      <div class="memdoc">

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

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

        <p>Referenced by <a class="el" href="dssmatrix-misc_8hpp_source.html#l00371">_()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00307">checkup()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00188">col()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00092">del()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00227">diag_front()</a>, <a class="el"
            href="dssmatrix-constructor_8hpp_source.html#l00003">dssmatrix()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00116">isListed()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00137">number()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el"
            href="dssmatrix-io_8hpp_source.html#l00058">put()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00285">rebuild()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00162">row()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00362">swap()</a>, <a class="el"
            href="dssmatrix-misc_8hpp_source.html#l00012">zero()</a>, and <a class="el"
            href="dssmatrix-constructor_8hpp_source.html#l00084">~dssmatrix()</a>.</p>

      </div>
    </div>
    <hr />The documentation for this class was generated from the following files:<ul>
      <li><a class="el" href="dssmatrix_8hpp_source.html">dssmatrix.hpp</a></li>
      <li><a class="el" href="dssmatrix-__dssmatrix_8hpp_source.html">dssmatrix-_dssmatrix.hpp</a></li>
      <li><a class="el" href="dssmatrix-cast_8hpp_source.html">dssmatrix-cast.hpp</a></li>
      <li><a class="el" href="dssmatrix-constructor_8hpp_source.html">dssmatrix-constructor.hpp</a></li>
      <li><a class="el" href="dssmatrix-double_8hpp_source.html">dssmatrix-double.hpp</a></li>
      <li><a class="el" href="dssmatrix-dssmatrix_8hpp_source.html">dssmatrix-dssmatrix.hpp</a></li>
      <li><a class="el" href="dssmatrix-io_8hpp_source.html">dssmatrix-io.hpp</a></li>
      <li><a class="el" href="dssmatrix-misc_8hpp_source.html">dssmatrix-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>