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

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

<p><a href="classzhsmatrix-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="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a38741e3b05b156f4b05f12a2f220c19e">zhsmatrix</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a8068b79b0c8cca3f8892100d88c96c87">zhsmatrix</a> (const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a9a0e4f99d5f72ced9528d037bb6c3dc3">zhsmatrix</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="classzhsmatrix.html#a1993ca33599f43a31d0184c3b7fb4cfb">zhsmatrix</a> (const char *)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a3055faf712e957d0042b9d679cbee15a">zhsmatrix</a> (const <a class="el" href="classzgematrix.html">zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a82fab99939f1b2728980a9e12d8be003">~zhsmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a2fb8a9f6975c214a1b5ac258a7fc4a57">to_zgematrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zhematrix.html">_zhematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a9e5cab3af3b367dff22ed6c37c90bb8d">to_zhematrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ab7b2ec22a37ce4c4ec99873dae33ac67">to_zgsmatrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a426e8b10a325d71218aba59e276baead">operator()</a> (const long &amp;, const long &amp;) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhecomplex.html">zhecomplex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ad127678fd6e8831d3f0865456e3df27b">operator()</a> (const long &amp;, const long &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#af017988cb32169e05841688a3bff79be">put</a> (const long &amp;, const long &amp;, const comple &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a8b0387dbd5d1ffdb6793e7ba1d1170a6">del</a> (const long, const long)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a90ab97cc581cef1d9b5f8aee7a57f1c7">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="classzhsmatrix.html#a91f7e0303eafe58edd160df68015b0eb">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="classzhsmatrix.html#acc65ae6c04322542e5f6ef958bab6dfb">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="classzhsmatrix.html#a696666c7ea7bd6701e74c2256ce4b0b4">clear</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a62082cf8a407a5832937c92dabfe29e6">zero</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a0eceae2eff19339214a4cc02c005e0d6">chsign</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a183494a2cfaac8dddcd6677d5621b710">copy</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aa848df01ebe02c8419eeceea811f4284">shallow_copy</a> (const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a1419b04b140ede221bb2d892901a8b56">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="classzhsmatrix.html#a87bb18b53fc193239c73bfea55c923ff">stretch</a> (const long &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#acfd5926bf81386553f6f40fa19915a4a">expand</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="classzhsmatrix.html#a7c59ac599f8e53261ada6819e174272b">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="classzhsmatrix.html#aaf14aba87eab8755192efc337ef5d423">number</a> (const long &amp;, const long &amp;) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a751d30eacad96d62a1c28000f9cb37c4">checkup</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zrovector.html">_zrovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a5fe7649477fedd14c89865956fa8c5f3">row</a> (const long &amp;) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zcovector.html">_zcovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aa3606396aa3cfd30a28a37efa9a0135c">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="classzhsmatrix.html#a75419e3f67a894be7f5f28a01bbb4489">diet</a> (const double=DBL_MIN)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a0157bf6a5b046cbb282340469ed9876d">operator=</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a15e8fbbe5ae562be90affad9bfb9ba81">operator=</a> (const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a42346f73292561d78601c94a1c9cbc62">operator+=</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aa6435a7f16e06165b880e5fa94344318">operator+=</a> (const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a2eb06ff2517be059e41925a5fd902914">operator-=</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aa5f2cf4ef856a1fa2066a656ba779ba4">operator-=</a> (const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a5153f1a06fbcd550328cac318c10d2af">operator*=</a> (const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ac7eb4c5bb2f56c6d8ae4c71c1c62d688">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="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e">m</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix row size  <a href="#ad01f0f8b364916b88d72c0e08b45815e"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d">n</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix column size  <a href="#a260c143b946312f5a5581970e3b43f5d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::vector&lt; <a class="el" href="classzcomponent.html">zcomponent</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486">data</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix data  <a href="#aaf52f103dbedb011a7ef72526bf4b486"></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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe">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="#a0d2e9226d4c6ac5c8ce99c17a9662efe"></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="classzhsmatrix.html#a1d20ed46f494b4f3288714a437c1c8ed">operator&lt;&lt;</a> (std::ostream &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">swap</a> (<a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a> (<a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a5a8cdb3678c46d175f28b96bbff88cdf">t</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a3285f244f6d611601f4e29bedc525b6a">idamax</a> (long &amp;, long &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ab0dca7d23a3320c060056ce0e5d0fc17">damax</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aba5f1eea482b87e91f82af399d0b528d">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a876d44af33ab8cf17c508a8104c643e3">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a75ec6604b377079aedcea0390d569158">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgematrix.html">zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ac6c2d3c777f51902da3065d7cce10cbf">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#acfe07ea1c70f82d8ceffe2bbd4c9ae47">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhematrix.html">zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a48d5eb014ec48a24320485b694660bbc">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhematrix.html">_zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a3e2dbda6f19ee940c009f08088ec169a">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgbmatrix.html">zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ab8b572f835597da92d09d7695a91b682">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ad8ee682fbf90003a52ed705b9ef7641b">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a7f015b3f765b5899df8d0a055fd6bbf3">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;)</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="classzhsmatrix.html#abf5d434ba78d62008e6c0a95a1fde440">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a912836bc8f636eb7f4fb5ed934b2d59a">operator+</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a8e5c6711297d6305c1df9f43b71c5918">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgematrix.html">zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a3f3b64d67ac059d865654da48f8dd17f">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a129d9c36f4c3b5a0a5b188af7106f3d5">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhematrix.html">zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a903f16bbbe530fff76aa85cf3bbdd46e">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhematrix.html">_zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a9b9aaf2249828688184d3a2df85a5ec0">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgbmatrix.html">zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a6a7325e310a47031b9b98e76f0775463">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#ae9111ce1c3f17eff17c7fa44c23c9f84">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#adb39245f64370eecf72afd5a9a4b8465">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;)</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="classzhsmatrix.html#a22c2ceec8d9fafa01d8271312997af3d">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a5399537146dddd6b80012ed4eb789d2e">operator-</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zcovector.html">_zcovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a09fb04ba9eb4e1b34162200b16e7ac65">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzcovector.html">zcovector</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zcovector.html">_zcovector</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aa95f08d7498f294c34d3d48e185017f0">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zcovector.html">_zcovector</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a9f44c9bb688c62379bc7476c9a444103">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgematrix.html">zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#afe860fa63d262b5307051fc8babb26c5">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#aecf5fdc6788000d91ab90cb1c5ad6490">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhematrix.html">zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a8e78af24ffc1f71334335275cf1f6f1b">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhematrix.html">_zhematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a18476060776b9c104d409d1cfcaf1d52">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgbmatrix.html">zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a36989d057abd4ee7f3eb3f4462a1675d">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a3a60e640e332f41cf1bad351b42193f0">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a5d8a6546b167053914d927717cae8be0">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a7c31fc9d6c71016c556767ce4cf149a5">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a5579c45c8417f1f563911b981f89ee89">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> &amp;)</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="classzhsmatrix.html#a0137507783a0d88bd692884f15f0707f">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a48874f0c91245d1d75187a7910baa7df">operator*</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const comple &amp;)</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="classzhsmatrix.html#a79d0c236fed2d16ad2b6eaafa0836b47">operator/</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#afa955ef581c590e8fa8cd590bd7f0cb1">operator/</a> (const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;, const comple &amp;)</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="classzhsmatrix.html#a026d66aa0cdf165877747d08bcdce595">operator*</a> (const double &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classzhsmatrix.html#a4c9ee1cb18d5557852e2762f45ad4e07">operator*</a> (const comple &amp;, const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>Complex Double-precision Hermitian Sparse Matrix Class. </p>

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

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">  : <a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =0;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a38741e3b05b156f4b05f12a2f220c19e"></a><!-- doxytag: member="zhsmatrix::zhsmatrix" ref="a38741e3b05b156f4b05f12a2f220c19e" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix::zhsmatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>zhsmatrix copy constructor </p>

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

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>.</p>
<div class="fragment"><pre class="fragment">  : <a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  <a class="code" href="classzhsmatrix.html#a183494a2cfaac8dddcd6677d5621b710">copy</a>(mat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8068b79b0c8cca3f8892100d88c96c87"></a><!-- doxytag: member="zhsmatrix::zhsmatrix" ref="a8068b79b0c8cca3f8892100d88c96c87" args="(const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix::zhsmatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</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>zhsmatrix constructor to cast <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="zhsmatrix-constructor_8hpp_source.html#l00028">28</a> of file <a class="el" href="zhsmatrix-constructor_8hpp_source.html">zhsmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00011">_zhsmatrix::data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00012">_zhsmatrix::line</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00010">_zhsmatrix::n</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zhsmatrix-misc_8hpp_source.html#l00003">_zhsmatrix::nullify()</a>.</p>
<div class="fragment"><pre class="fragment">  : <a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a>;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.swap(mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>);
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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__zhsmatrix.html#a5f4e2177c53d27c262f4cbcbf0096839" title="vector of vector to store the entry information of component for each row and column">line</a>);
  
  mat.<a class="code" href="class__zhsmatrix.html#af9a0e022140eea0e4bbe8fc874f68f9b">nullify</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a9a0e4f99d5f72ced9528d037bb6c3dc3"></a><!-- doxytag: member="zhsmatrix::zhsmatrix" ref="a9a0e4f99d5f72ced9528d037bb6c3dc3" args="(const long &amp;, const long=0)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix::zhsmatrix</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>zhsmatrix constructor with size specification </p>

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">  : <a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =_n;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.resize(0);
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.reserve(_c);
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>.resize(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a1993ca33599f43a31d0184c3b7fb4cfb"></a><!-- doxytag: member="zhsmatrix::zhsmatrix" ref="a1993ca33599f43a31d0184c3b7fb4cfb" args="(const char *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix::zhsmatrix</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>zhsmatrix constructor with filename </p>

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix-io_8hpp_source.html#l00262">read()</a>.</p>
<div class="fragment"><pre class="fragment">  : <a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>)
{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#acc65ae6c04322542e5f6ef958bab6dfb">read</a>(filename);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a3055faf712e957d0042b9d679cbee15a"></a><!-- doxytag: member="zhsmatrix::zhsmatrix" ref="a3055faf712e957d0042b9d679cbee15a" args="(const zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#ad9aa2c698ac59c2d3104e9a08d8f94d1">zhsmatrix::zhsmatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzgematrix.html">zgematrix</a> &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a82fab99939f1b2728980a9e12d8be003"></a><!-- doxytag: member="zhsmatrix::~zhsmatrix" ref="a82fab99939f1b2728980a9e12d8be003" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html#a82fab99939f1b2728980a9e12d8be003">zhsmatrix::~zhsmatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>zhsmatrix destructor </p>

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a2fb8a9f6975c214a1b5ac258a7fc4a57"></a><!-- doxytag: member="zhsmatrix::to_zgematrix" ref="a2fb8a9f6975c214a1b5ac258a7fc4a57" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> <a class="el" href="classzhsmatrix.html#a2fb8a9f6975c214a1b5ac258a7fc4a57">zhsmatrix::to_zgematrix</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__zgematrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Dence Matrix Class">_zgematrix</a> </p>

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

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_</a>, <a class="el" href="__zcovector-calc_8hpp_source.html#l00015">conj()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">zero()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( <a class="code" href="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a>(<a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>,<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>).<a class="code" href="classzhsmatrix.html#a62082cf8a407a5832937c92dabfe29e6">zero</a>() );
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.end(); it++){
    newmat(it-&gt;i, it-&gt;j) =it-&gt;v;
    newmat(it-&gt;j, it-&gt;i) =<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(it-&gt;v);
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a9e5cab3af3b367dff22ed6c37c90bb8d"></a><!-- doxytag: member="zhsmatrix::to_zhematrix" ref="a9e5cab3af3b367dff22ed6c37c90bb8d" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhematrix.html">_zhematrix</a> <a class="el" href="classzhsmatrix.html#a9e5cab3af3b367dff22ed6c37c90bb8d">zhsmatrix::to_zhematrix</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__zhematrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Matrix Class">_zhematrix</a> </p>

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

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="zhematrix-misc_8hpp_source.html#l00031">zhematrix::zero()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhematrix.html" title="Complex Double-precision Hermitian Matrix Class [l-type (UPLO=l) Strage].">zhematrix</a> newmat(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ab7b2ec22a37ce4c4ec99873dae33ac67"></a><!-- doxytag: member="zhsmatrix::to_zgsmatrix" ref="ab7b2ec22a37ce4c4ec99873dae33ac67" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> <a class="el" href="classzhsmatrix.html#ab7b2ec22a37ce4c4ec99873dae33ac67">zhsmatrix::to_zgsmatrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>convert to <a class="el" href="class__zgsmatrix.html" title="(DO NOT USE) Smart-temporary Real Double-precision General Sparse Matrix Class">_zgsmatrix</a> </p>

<p>Definition at line <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00031">31</a> of file <a class="el" href="zhsmatrix-cast_8hpp_source.html">zhsmatrix-cast.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_</a>, <a class="el" href="__zcovector-calc_8hpp_source.html#l00015">conj()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, <a class="el" href="zgsmatrix-io_8hpp_source.html#l00054">zgsmatrix::put()</a>, and <a class="el" href="zgsmatrix-misc_8hpp_source.html#l00014">zgsmatrix::zero()</a>.</p>

<p>Referenced by <a class="el" href="complex-zhsmatrix_8hpp_source.html#l00003">operator*()</a>, and <a class="el" href="zhsmatrix-complex_8hpp_source.html#l00011">operator/()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgsmatrix.html" title="Complex Double-precision General Sparse Matrix Class.">zgsmatrix</a> newmat(<a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>,<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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, <a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(it-&gt;v));
    }
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a426e8b10a325d71218aba59e276baead"></a><!-- doxytag: member="zhsmatrix::operator()" ref="a426e8b10a325d71218aba59e276baead" args="(const long &amp;, const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple zhsmatrix::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="zhsmatrix-io_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="__zcovector-calc_8hpp_source.html#l00015">conj()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].j==jj){
      <span class="keywordflow">if</span>( <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>&gt;j ){ <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v; }<span class="comment">//ii=i</span>
      <span class="keywordflow">else</span>{      <span class="keywordflow">return</span> <a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v); }<span class="comment">//ii=j</span>
    }
  }
  <span class="comment"></span>
<span class="comment">  //// (i,j) component was not found ////</span>
<span class="comment"></span>  <span class="keywordflow">return</span> comple(0.0,0.0);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ad127678fd6e8831d3f0865456e3df27b"></a><!-- doxytag: member="zhsmatrix::operator()" ref="ad127678fd6e8831d3f0865456e3df27b" args="(const long &amp;, const long &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhecomplex.html">zhecomplex</a> zhsmatrix::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() </p>

<p>Definition at line <a class="el" href="zhsmatrix-io_8hpp_source.html#l00029">29</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].j==jj){
      <span class="keywordflow">return</span> <a class="code" href="classzhecomplex.html" title="(DO NOT USE) Complex-double Class for Hermitian matrices">zhecomplex</a>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j, <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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>].push_back(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>[j].push_back(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.size());
  }
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.push_back(<a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>(ii,jj,comple(0.,0.)));
  <span class="keywordflow">return</span> <a class="code" href="classzhecomplex.html" title="(DO NOT USE) Complex-double Class for Hermitian matrices">zhecomplex</a>(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,j, <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.back().v);
}
</pre></div>
</div>
</div>
<a class="anchor" id="af017988cb32169e05841688a3bff79be"></a><!-- doxytag: member="zhsmatrix::put" ref="af017988cb32169e05841688a3bff79be" args="(const long &amp;, const long &amp;, const comple &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; <a class="el" href="classzhsmatrix.html#af017988cb32169e05841688a3bff79be">zhsmatrix::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 comple &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="zhsmatrix-io_8hpp_source.html#l00063">63</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-io_8hpp_source.html#l00262">read()</a>, <a class="el" href="__dssmatrix-cast_8hpp_source.html#l00003">_dssmatrix::to_zhsmatrix()</a>, and <a class="el" href="dssmatrix-cast_8hpp_source.html#l00003">dssmatrix::to_zhsmatrix()</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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a7c59ac599f8e53261ada6819e174272b">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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.size());
  }
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.push_back(<a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>(ii,jj,v));
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8b0387dbd5d1ffdb6793e7ba1d1170a6"></a><!-- doxytag: member="zhsmatrix::del" ref="a8b0387dbd5d1ffdb6793e7ba1d1170a6" args="(const long, const long)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; <a class="el" href="classzhsmatrix.html#a8b0387dbd5d1ffdb6793e7ba1d1170a6">zhsmatrix::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="zhsmatrix-io_8hpp_source.html#l00097">97</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00209">diet()</a>, and <a class="el" href="zhsmatrix-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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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]@zhsmatrix::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="a90ab97cc581cef1d9b5f8aee7a57f1c7"></a><!-- doxytag: member="zhsmatrix::del" ref="a90ab97cc581cef1d9b5f8aee7a57f1c7" args="(const long)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; <a class="el" href="classzhsmatrix.html#a8b0387dbd5d1ffdb6793e7ba1d1170a6">zhsmatrix::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="zhsmatrix-io_8hpp_source.html#l00152">152</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[c].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>), j(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[c].j);
    <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::iterator q=<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[c].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>), j(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[c].j), I(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.back().i), J(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.back().j);
    <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a91f7e0303eafe58edd160df68015b0eb"></a><!-- doxytag: member="zhsmatrix::write" ref="a91f7e0303eafe58edd160df68015b0eb" args="(const char *) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a91f7e0303eafe58edd160df68015b0eb">zhsmatrix::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="zhsmatrix-io_8hpp_source.html#l00246">246</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix_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;#zhsmatrix&quot;</span> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; std::endl;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="acc65ae6c04322542e5f6ef958bab6dfb"></a><!-- doxytag: member="zhsmatrix::read" ref="acc65ae6c04322542e5f6ef958bab6dfb" args="(const char *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#acc65ae6c04322542e5f6ef958bab6dfb">zhsmatrix::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="zhsmatrix-io_8hpp_source.html#l00262">262</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-io.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00068">zhsmatrix()</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;zhsmatrix&quot;</span> &amp;&amp; <span class="keywordtype">id</span> != <span class="stringliteral">&quot;#zhsmatrix&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 zhsmatrix.&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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>;
  <a class="code" href="classzhsmatrix.html#a1419b04b140ede221bb2d892901a8b56">resize</a>(n);
  
  comple 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="classzhsmatrix.html#af017988cb32169e05841688a3bff79be">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="a696666c7ea7bd6701e74c2256ce4b0b4"></a><!-- doxytag: member="zhsmatrix::clear" ref="a696666c7ea7bd6701e74c2256ce4b0b4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a696666c7ea7bd6701e74c2256ce4b0b4">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =0;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a62082cf8a407a5832937c92dabfe29e6"></a><!-- doxytag: member="zhsmatrix::zero" ref="a62082cf8a407a5832937c92dabfe29e6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; <a class="el" href="classzhsmatrix.html#a62082cf8a407a5832937c92dabfe29e6">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00012">12</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, and <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){ <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a0eceae2eff19339214a4cc02c005e0d6"></a><!-- doxytag: member="zhsmatrix::chsign" ref="a0eceae2eff19339214a4cc02c005e0d6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a0eceae2eff19339214a4cc02c005e0d6">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00021">21</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.end(); it++){
    it-&gt;v =-it-&gt;v;
  }
}
</pre></div>
</div>
</div>
<a class="anchor" id="a183494a2cfaac8dddcd6677d5621b710"></a><!-- doxytag: member="zhsmatrix::copy" ref="a183494a2cfaac8dddcd6677d5621b710" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a183494a2cfaac8dddcd6677d5621b710">zhsmatrix::copy</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-misc_8hpp_source.html#l00030">30</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00003">operator=()</a>, and <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00018">zhsmatrix()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a> =mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>;
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a> =mat.<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="aa848df01ebe02c8419eeceea811f4284"></a><!-- doxytag: member="zhsmatrix::shallow_copy" ref="aa848df01ebe02c8419eeceea811f4284" args="(const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#aa848df01ebe02c8419eeceea811f4284">zhsmatrix::shallow_copy</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</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="zhsmatrix-misc_8hpp_source.html#l00040">40</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00011">_zhsmatrix::data</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00012">_zhsmatrix::line</a>, <a class="el" href="__zhsmatrix_8hpp_source.html#l00010">_zhsmatrix::n</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zhsmatrix-misc_8hpp_source.html#l00003">_zhsmatrix::nullify()</a>.</p>

<p>Referenced by <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00003">operator=()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.clear();
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>.clear();
  
  <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a>;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.swap(mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>);
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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__zhsmatrix.html#a5f4e2177c53d27c262f4cbcbf0096839" title="vector of vector to store the entry information of component for each row and column">line</a>);
  
  mat.<a class="code" href="class__zhsmatrix.html#af9a0e022140eea0e4bbe8fc874f68f9b">nullify</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a1419b04b140ede221bb2d892901a8b56"></a><!-- doxytag: member="zhsmatrix::resize" ref="a1419b04b140ede221bb2d892901a8b56" 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="classzhsmatrix.html">zhsmatrix</a> &amp; <a class="el" href="classzhsmatrix.html#a1419b04b140ede221bb2d892901a8b56">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00054">54</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-io_8hpp_source.html#l00262">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 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; _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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =_n;
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.resize(0);
  <a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.reserve(_c);
  <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>.resize(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a87bb18b53fc193239c73bfea55c923ff"></a><!-- doxytag: member="zhsmatrix::stretch" ref="a87bb18b53fc193239c73bfea55c923ff" args="(const long &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a87bb18b53fc193239c73bfea55c923ff">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00079">79</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00097">del()</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">if</span>(dn==0){ <span class="keywordflow">return</span>; }
  
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>( <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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>  
  <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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;zcomponent&gt;::reverse_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.rbegin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> ){ <a class="code" href="classzhsmatrix.html#a8b0387dbd5d1ffdb6793e7ba1d1170a6">del</a>(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="acfd5926bf81386553f6f40fa19915a4a"></a><!-- doxytag: member="zhsmatrix::expand" ref="acfd5926bf81386553f6f40fa19915a4a" args="(const long &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#acfd5926bf81386553f6f40fa19915a4a">zhsmatrix::expand</a> </td>
          <td>(</td>
          <td class="paramtype">const long &amp;&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a7c59ac599f8e53261ada6819e174272b"></a><!-- doxytag: member="zhsmatrix::isListed" ref="a7c59ac599f8e53261ada6819e174272b" 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="classzhsmatrix.html#a7c59ac599f8e53261ada6819e174272b">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00114">114</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-io_8hpp_source.html#l00063">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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="aaf14aba87eab8755192efc337ef5d423"></a><!-- doxytag: member="zhsmatrix::number" ref="aaf14aba87eab8755192efc337ef5d423" 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="classzhsmatrix.html#aaf14aba87eab8755192efc337ef5d423">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00135">135</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="zhsmatrix-io_8hpp_source.html#l00212">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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>&lt;=<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> || <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="a751d30eacad96d62a1c28000f9cb37c4"></a><!-- doxytag: member="zhsmatrix::checkup" ref="a751d30eacad96d62a1c28000f9cb37c4" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a751d30eacad96d62a1c28000f9cb37c4">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00251">251</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="dcovector__small-specialized_8hpp_source.html#l00094">imag()</a>, and <a class="el" href="zhsmatrix_8hpp_source.html#l00009">m</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// complex diagonal ////////</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="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>++){
    <span class="keywordflow">if</span>( std::fabs((*<span class="keyword">this</span>)(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>).<a class="code" href="dcovector__small-specialized_8hpp.html#a2eb38711e1c30cc070f53589d1905fea">imag</a>()) &gt; DBL_MIN ){
      ERROR_REPORT;
      std::cerr &lt;&lt; <span class="stringliteral">&quot;Diagonal components of a Hermitian matrix have to be real numbers.&quot;</span> &lt;&lt; std::endl
                &lt;&lt; <span class="stringliteral">&quot;(*this)(&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; <a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a> &lt;&lt; <span class="stringliteral">&quot;) was a complex number, &quot;</span> &lt;&lt; (*this)(<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>,<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>) &lt;&lt; <span class="stringliteral">&quot;.&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]@zhsmatrix::checkup(): This symmetric sparse matrix is fine.&quot;</span> &lt;&lt; std::endl;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5fe7649477fedd14c89865956fa8c5f3"></a><!-- doxytag: member="zhsmatrix::row" ref="a5fe7649477fedd14c89865956fa8c5f3" args="(const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zrovector.html">_zrovector</a> <a class="el" href="classzhsmatrix.html#a5fe7649477fedd14c89865956fa8c5f3">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00159">159</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_</a>, <a class="el" href="__zcovector-calc_8hpp_source.html#l00015">conj()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">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="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" 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="classzrovector.html" title="Complex Double-precision Row Vector Class.">zrovector</a> vec( <a class="code" href="classzrovector.html" title="Complex Double-precision Row Vector Class.">zrovector</a>(<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>).<a class="code" href="classzhsmatrix.html#a62082cf8a407a5832937c92dabfe29e6">zero</a>() );
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==_m ){<span class="comment">//i&gt;=j</span>
      vec(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].j) =<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v;
    }
    <span class="keywordflow">else</span>{<span class="comment">//i&lt;j</span>
      vec(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].i) =<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v);
    }
  }
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(vec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa3606396aa3cfd30a28a37efa9a0135c"></a><!-- doxytag: member="zhsmatrix::col" ref="aa3606396aa3cfd30a28a37efa9a0135c" args="(const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zcovector.html">_zcovector</a> <a class="el" href="classzhsmatrix.html#aa3606396aa3cfd30a28a37efa9a0135c">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00184">184</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_</a>, <a class="el" href="__zcovector-calc_8hpp_source.html#l00015">conj()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, <a class="el" href="__dgbmatrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00012">line</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzcovector.html" title="Complex Double-precision Column Vector Class.">zcovector</a> vec( <a class="code" href="classzcovector.html" title="Complex Double-precision Column Vector Class.">zcovector</a>(<a class="code" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e" title="matrix row size">m</a>).<a class="code" href="classzhsmatrix.html#a62082cf8a407a5832937c92dabfe29e6">zero</a>() );
  <span class="keywordflow">for</span>(std::vector&lt;uint32_t&gt;::const_iterator p=<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].<a class="code" href="__dgbmatrix-calc_8hpp.html#af7c79b3740ba9c1d547f55ac94bc1258">i</a>)==_n ){<span class="comment">//i&lt;j</span>
      vec(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].j) =<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v);
    }
    <span class="keywordflow">else</span>{<span class="comment">//i&gt;=j</span>
      vec(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].i) =<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>[*p].v;
    }
  }
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(vec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a75419e3f67a894be7f5f28a01bbb4489"></a><!-- doxytag: member="zhsmatrix::diet" ref="a75419e3f67a894be7f5f28a01bbb4489" args="(const double=DBL_MIN)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a75419e3f67a894be7f5f28a01bbb4489">zhsmatrix::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="zhsmatrix-misc_8hpp_source.html#l00209">209</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix-io_8hpp_source.html#l00097">del()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::reverse_iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.rbegin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.rend(); it++){
    <span class="keywordflow">if</span>( fabs(it-&gt;v.real())&lt;eps &amp;&amp; fabs(it-&gt;v.imag())&lt;eps ){
      <a class="code" href="classzhsmatrix.html#a8b0387dbd5d1ffdb6793e7ba1d1170a6">del</a>(<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.rend()-it-1);
    }
  }
}
</pre></div>
</div>
</div>
<a class="anchor" id="a0157bf6a5b046cbb282340469ed9876d"></a><!-- doxytag: member="zhsmatrix::operator=" ref="a0157bf6a5b046cbb282340469ed9876d" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>zhsmatrix=zhsmatrix operator </p>

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

<p>References <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00030">copy()</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>!=&amp;mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>){ <span class="comment">// if it is NOT self substitution</span>
    <a class="code" href="classzhsmatrix.html#a183494a2cfaac8dddcd6677d5621b710">copy</a>(mat);
  }
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a15e8fbbe5ae562be90affad9bfb9ba81"></a><!-- doxytag: member="zhsmatrix::operator=" ref="a15e8fbbe5ae562be90affad9bfb9ba81" args="(const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::operator= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</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>zhsmatrix=<a class="el" href="class__zhsmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Sparse Matrix Class">_zhsmatrix</a> operator </p>

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

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

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) += (&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="aa6435a7f16e06165b880e5fa94344318"></a><!-- doxytag: member="zhsmatrix::operator+=" ref="aa6435a7f16e06165b880e5fa94344318" args="(const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::operator+= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</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>zhsmatrix+=<a class="el" href="class__zhsmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Sparse Matrix Class">_zhsmatrix</a> operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00015">15</a> of file <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html">zhsmatrix-_zhsmatrix.hpp</a>.</p>

<p>References <a class="el" href="__zhsmatrix_8hpp_source.html#l00011">_zhsmatrix::data</a>, <a class="el" href="__zhsmatrix-misc_8hpp_source.html#l00012">_zhsmatrix::destroy()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zhsmatrix_8hpp_source.html#l00010">_zhsmatrix::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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) += (&quot;</span> &lt;&lt; mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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;zcomponent&gt;::const_iterator it=mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) +=it-&gt;v;
  }
  
  mat.<a class="code" href="class__zhsmatrix.html#ac7a4ea88962183db3d0ce662d27dad93">destroy</a>();
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a2eb06ff2517be059e41925a5fd902914"></a><!-- doxytag: member="zhsmatrix::operator&#45;=" ref="a2eb06ff2517be059e41925a5fd902914" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::operator-= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>zhsmatrix-=zhsmatrix operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00037">37</a> of file <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html">zhsmatrix-zhsmatrix.hpp</a>.</p>

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>, and <a class="el" href="zhsmatrix_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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) -= (&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="aa5f2cf4ef856a1fa2066a656ba779ba4"></a><!-- doxytag: member="zhsmatrix::operator&#45;=" ref="aa5f2cf4ef856a1fa2066a656ba779ba4" args="(const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::operator-= </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zhsmatrix.html">_zhsmatrix</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>zhsmatrix-=<a class="el" href="class__zhsmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Sparse Matrix Class">_zhsmatrix</a> operator </p>

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

<p>References <a class="el" href="__zhsmatrix_8hpp_source.html#l00011">_zhsmatrix::data</a>, <a class="el" href="__zhsmatrix-misc_8hpp_source.html#l00012">_zhsmatrix::destroy()</a>, <a class="el" href="zhsmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zhsmatrix_8hpp_source.html#l00010">_zhsmatrix::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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; <a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) -= (&quot;</span> &lt;&lt; mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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;zcomponent&gt;::const_iterator it=mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>.end(); it++){
    (*this)(it-&gt;i,it-&gt;j) -=it-&gt;v;
  }
  
  mat.<a class="code" href="class__zhsmatrix.html#ac7a4ea88962183db3d0ce662d27dad93">destroy</a>();
  <span class="keywordflow">return</span> *<span class="keyword">this</span>;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5153f1a06fbcd550328cac318c10d2af"></a><!-- doxytag: member="zhsmatrix::operator*=" ref="a5153f1a06fbcd550328cac318c10d2af" args="(const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::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>zhsmatrix*=double operator </p>

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="ac7eb4c5bb2f56c6d8ae4c71c1c62d688"></a><!-- doxytag: member="zhsmatrix::operator/=" ref="ac7eb4c5bb2f56c6d8ae4c71c1c62d688" args="(const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp; zhsmatrix::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>zhsmatrix/=double operator </p>

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

<p>References <a class="el" href="zhsmatrix_8hpp_source.html#l00011">data</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="a1d20ed46f494b4f3288714a437c1c8ed"></a><!-- doxytag: member="zhsmatrix::operator&lt;&lt;" ref="a1d20ed46f494b4f3288714a437c1c8ed" args="(std::ostream &amp;, const zhsmatrix &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="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-io_8hpp_source.html#l00212">212</a> of file <a class="el" href="zhsmatrix-io_8hpp_source.html">zhsmatrix-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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#aaf14aba87eab8755192efc337ef5d423">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="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#aaf14aba87eab8755192efc337ef5d423">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; <a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="a23fd1f33193225010ef32ac1dee319b9"></a><!-- doxytag: member="zhsmatrix::swap" ref="a23fd1f33193225010ef32ac1dee319b9" args="(zhsmatrix &amp;, zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">swap</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classzhsmatrix.html">zhsmatrix</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="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-misc_8hpp_source.html#l00224">224</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">std::swap</a>(A.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>,B.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
  <a class="code" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">std::swap</a>(A.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>,B.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>);
  <a class="code" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">std::swap</a>(A.<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" title="vector of vector to store the entry information of component for each row and column">line</a>,B.<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="a9fe3e3006bc80db5c3f24b601f5a3458"></a><!-- doxytag: member="zhsmatrix::_" ref="a9fe3e3006bc80db5c3f24b601f5a3458" args="(zhsmatrix &amp;)" -->
<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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a> </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-misc_8hpp_source.html#l00233">233</a> of file <a class="el" href="zhsmatrix-misc_8hpp_source.html">zhsmatrix-misc.hpp</a>.</p>

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00031">to_zgsmatrix()</a>, and <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00017">to_zhematrix()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__zhsmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision Hermitian Sparse Matrix Class">_zhsmatrix</a> newmat;<span class="comment"></span>
<span class="comment">  //////// shallow copy ////////</span>
<span class="comment"></span>  newmat.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a> =mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>;
  <a class="code" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">std::swap</a>(newmat.<a class="code" href="class__zhsmatrix.html#aaf53fd779b33dc934affae65d0729197" title="matrix data">data</a>, mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>);
  <a class="code" href="classzhsmatrix.html#a23fd1f33193225010ef32ac1dee319b9">std::swap</a>(newmat.<a class="code" href="class__zhsmatrix.html#a5f4e2177c53d27c262f4cbcbf0096839" title="vector of vector to store the entry information of component for each row and column">line</a>, mat.<a class="code" href="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> =0;
  <span class="keywordflow">return</span> newmat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5a8cdb3678c46d175f28b96bbff88cdf"></a><!-- doxytag: member="zhsmatrix::t" ref="a5a8cdb3678c46d175f28b96bbff88cdf" args="(const zhsmatrix &amp;)" -->
<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="classzhsmatrix.html#a5a8cdb3678c46d175f28b96bbff88cdf">t</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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 zhsmatrix </p>

<p>Definition at line <a class="el" href="zhsmatrix-calc_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-calc_8hpp_source.html">zhsmatrix-calc.hpp</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(mat);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    it-&gt;v =<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(it-&gt;v);
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a3285f244f6d611601f4e29bedc525b6a"></a><!-- doxytag: member="zhsmatrix::idamax" ref="a3285f244f6d611601f4e29bedc525b6a" args="(long &amp;, long &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="classzhsmatrix.html#a3285f244f6d611601f4e29bedc525b6a">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="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-calc_8hpp_source.html#l00051">51</a> of file <a class="el" href="zhsmatrix-calc_8hpp_source.html">zhsmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  std::vector&lt;zcomponent&gt;::const_iterator itx(mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin());
  <span class="keywordtype">double</span> vmax =0.;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">if</span>( vmax &lt; norm(it-&gt;v) ){
      vmax =norm(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="ab0dca7d23a3320c060056ce0e5d0fc17"></a><!-- doxytag: member="zhsmatrix::damax" ref="ab0dca7d23a3320c060056ce0e5d0fc17" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple <a class="el" href="classzhsmatrix.html#ab0dca7d23a3320c060056ce0e5d0fc17">damax</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="zhsmatrix-calc_8hpp_source.html#l00067">67</a> of file <a class="el" href="zhsmatrix-calc_8hpp_source.html">zhsmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  std::vector&lt;zcomponent&gt;::const_iterator itx(mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin());
  <span class="keywordtype">double</span> vmax =0.;
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.end(); it++){
    <span class="keywordflow">if</span>( vmax &lt; norm(it-&gt;v) ){
      vmax =norm(it-&gt;v);
      itx =it;
    }
  }
  <span class="keywordflow">return</span> itx-&gt;v;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aba5f1eea482b87e91f82af399d0b528d"></a><!-- doxytag: member="zhsmatrix::operator+" ref="aba5f1eea482b87e91f82af399d0b528d" args="(const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a>&amp; operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>+zhsmatrix operator </p>

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

<p>Definition at line <a class="el" href="zhsmatrix-unary_8hpp_source.html#l00010">10</a> of file <a class="el" href="zhsmatrix-unary_8hpp_source.html">zhsmatrix-unary.hpp</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(mat);
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a75ec6604b377079aedcea0390d569158"></a><!-- doxytag: member="zhsmatrix::operator+" ref="a75ec6604b377079aedcea0390d569158" args="(const zhsmatrix &amp;, const zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgematrix.html">zgematrix</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="ac6c2d3c777f51902da3065d7cce10cbf"></a><!-- doxytag: member="zhsmatrix::operator+" ref="ac6c2d3c777f51902da3065d7cce10cbf" args="(const zhsmatrix &amp;, const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgematrix.html">_zgematrix</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="acfe07ea1c70f82d8ceffe2bbd4c9ae47"></a><!-- doxytag: member="zhsmatrix::operator+" ref="acfe07ea1c70f82d8ceffe2bbd4c9ae47" args="(const zhsmatrix &amp;, const zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzhematrix.html">zhematrix</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="a48d5eb014ec48a24320485b694660bbc"></a><!-- doxytag: member="zhsmatrix::operator+" ref="a48d5eb014ec48a24320485b694660bbc" args="(const zhsmatrix &amp;, const _zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhematrix.html">_zhematrix</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="a3e2dbda6f19ee940c009f08088ec169a"></a><!-- doxytag: member="zhsmatrix::operator+" ref="a3e2dbda6f19ee940c009f08088ec169a" args="(const zhsmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgbmatrix.html">zgbmatrix</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="ab8b572f835597da92d09d7695a91b682"></a><!-- doxytag: member="zhsmatrix::operator+" ref="ab8b572f835597da92d09d7695a91b682" args="(const zhsmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgbmatrix.html">_zgbmatrix</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="ad8ee682fbf90003a52ed705b9ef7641b"></a><!-- doxytag: member="zhsmatrix::operator+" ref="ad8ee682fbf90003a52ed705b9ef7641b" args="(const zhsmatrix &amp;, const zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</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="a7f015b3f765b5899df8d0a055fd6bbf3"></a><!-- doxytag: member="zhsmatrix::operator+" ref="a7f015b3f765b5899df8d0a055fd6bbf3" args="(const zhsmatrix &amp;, const _zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgsmatrix.html">_zgsmatrix</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="abf5d434ba78d62008e6c0a95a1fde440"></a><!-- doxytag: member="zhsmatrix::operator+" ref="abf5d434ba78d62008e6c0a95a1fde440" args="(const zhsmatrix &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="classzhsmatrix.html">zhsmatrix</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>zhsmatrix+zhsmatrix operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00061">61</a> of file <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html">zhsmatrix-zhsmatrix.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html" title="Complex Double-precision Hermitian Sparse Matrix Class.">zhsmatrix</a> newmat(matA);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=matB.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a912836bc8f636eb7f4fb5ed934b2d59a"></a><!-- doxytag: member="zhsmatrix::operator+" ref="a912836bc8f636eb7f4fb5ed934b2d59a" args="(const zhsmatrix &amp;, const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhsmatrix.html">_zhsmatrix</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>zhsmatrix+_zhsmatrix operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00061">61</a> of file <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html">zhsmatrix-_zhsmatrix.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html" title="Complex Double-precision Hermitian Sparse Matrix Class.">zhsmatrix</a> newmat(matB);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=matA.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8e5c6711297d6305c1df9f43b71c5918"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a8e5c6711297d6305c1df9f43b71c5918" args="(const zhsmatrix &amp;, const zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgematrix.html">zgematrix</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="a3f3b64d67ac059d865654da48f8dd17f"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a3f3b64d67ac059d865654da48f8dd17f" args="(const zhsmatrix &amp;, const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgematrix.html">_zgematrix</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="a129d9c36f4c3b5a0a5b188af7106f3d5"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a129d9c36f4c3b5a0a5b188af7106f3d5" args="(const zhsmatrix &amp;, const zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzhematrix.html">zhematrix</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="a903f16bbbe530fff76aa85cf3bbdd46e"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a903f16bbbe530fff76aa85cf3bbdd46e" args="(const zhsmatrix &amp;, const _zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhematrix.html">_zhematrix</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="a9b9aaf2249828688184d3a2df85a5ec0"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a9b9aaf2249828688184d3a2df85a5ec0" args="(const zhsmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgbmatrix.html">zgbmatrix</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="a6a7325e310a47031b9b98e76f0775463"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a6a7325e310a47031b9b98e76f0775463" args="(const zhsmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgbmatrix.html">_zgbmatrix</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="ae9111ce1c3f17eff17c7fa44c23c9f84"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="ae9111ce1c3f17eff17c7fa44c23c9f84" args="(const zhsmatrix &amp;, const zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</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="adb39245f64370eecf72afd5a9a4b8465"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="adb39245f64370eecf72afd5a9a4b8465" args="(const zhsmatrix &amp;, const _zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgsmatrix.html">_zgsmatrix</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="a22c2ceec8d9fafa01d8271312997af3d"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a22c2ceec8d9fafa01d8271312997af3d" args="(const zhsmatrix &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="classzhsmatrix.html">zhsmatrix</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>zhsmatrix-zhsmatrix operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00083">83</a> of file <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html">zhsmatrix-zhsmatrix.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" 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="classzhsmatrix.html" title="Complex Double-precision Hermitian Sparse Matrix Class.">zhsmatrix</a> newmat(matA);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=matB.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=matB.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5399537146dddd6b80012ed4eb789d2e"></a><!-- doxytag: member="zhsmatrix::operator&#45;" ref="a5399537146dddd6b80012ed4eb789d2e" args="(const zhsmatrix &amp;, const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhsmatrix.html">_zhsmatrix</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>zhsmatrix-_zhsmatrix operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00083">83</a> of file <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html">zhsmatrix-_zhsmatrix.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhsmatrix.html#ac25730885b10f41559803ed1e3ae64d3" 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="classzhsmatrix.html" title="Complex Double-precision Hermitian Sparse Matrix Class.">zhsmatrix</a> newmat(-matB);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=matA.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=matA.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a09fb04ba9eb4e1b34162200b16e7ac65"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a09fb04ba9eb4e1b34162200b16e7ac65" args="(const zhsmatrix &amp;, const zcovector &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zcovector.html">_zcovector</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="classzcovector.html">zcovector</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>zhsmatrix*zcovector operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-zcovector_8hpp_source.html">zhsmatrix-zcovector.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=vec.<a class="code" href="classzcovector.html#a25de1e5eff40a9fdae41255b5b4ab6d1" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; vec.<a class="code" href="classzcovector.html#a25de1e5eff40a9fdae41255b5b4ab6d1" 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="classzcovector.html" title="Complex Double-precision Column Vector Class.">zcovector</a> newvec(mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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) +=<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(it-&gt;v)*vec(it-&gt;i);
    }
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa95f08d7498f294c34d3d48e185017f0"></a><!-- doxytag: member="zhsmatrix::operator*" ref="aa95f08d7498f294c34d3d48e185017f0" args="(const zhsmatrix &amp;, const _zcovector &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zcovector.html">_zcovector</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zcovector.html">_zcovector</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>zhsmatrix*_zcovector operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-__zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-__zcovector_8hpp_source.html">zhsmatrix-_zcovector.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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>!=vec.<a class="code" href="class__zcovector.html#a981a16cfee6dde1206255363db5c22f1" 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="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; vec.<a class="code" href="class__zcovector.html#a981a16cfee6dde1206255363db5c22f1" 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="classzcovector.html" title="Complex Double-precision Column Vector Class.">zcovector</a> newvec(mat.<a class="code" href="classzhsmatrix.html#a260c143b946312f5a5581970e3b43f5d" title="matrix column size">n</a>);
  newvec.zero();
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::const_iterator it=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" title="matrix data">data</a>.begin(); it!=mat.<a class="code" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486" 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) +=<a class="code" href="__zcovector-calc_8hpp.html#a773c28a661407104353f70c7a3ab88f2">std::conj</a>(it-&gt;v)*vec(it-&gt;i);
    }
  }
  
  vec.<a class="code" href="class__zcovector.html#a7b0dbef72aa40ca8ccd7aa11ea6bc88a">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a9f44c9bb688c62379bc7476c9a444103"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a9f44c9bb688c62379bc7476c9a444103" args="(const zhsmatrix &amp;, const zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgematrix.html">zgematrix</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="afe860fa63d262b5307051fc8babb26c5"></a><!-- doxytag: member="zhsmatrix::operator*" ref="afe860fa63d262b5307051fc8babb26c5" args="(const zhsmatrix &amp;, const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgematrix.html">_zgematrix</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="aecf5fdc6788000d91ab90cb1c5ad6490"></a><!-- doxytag: member="zhsmatrix::operator*" ref="aecf5fdc6788000d91ab90cb1c5ad6490" args="(const zhsmatrix &amp;, const zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzhematrix.html">zhematrix</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="a8e78af24ffc1f71334335275cf1f6f1b"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a8e78af24ffc1f71334335275cf1f6f1b" args="(const zhsmatrix &amp;, const _zhematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhematrix.html">_zhematrix</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="a18476060776b9c104d409d1cfcaf1d52"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a18476060776b9c104d409d1cfcaf1d52" args="(const zhsmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgbmatrix.html">zgbmatrix</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="a36989d057abd4ee7f3eb3f4462a1675d"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a36989d057abd4ee7f3eb3f4462a1675d" args="(const zhsmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgbmatrix.html">_zgbmatrix</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="a3a60e640e332f41cf1bad351b42193f0"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a3a60e640e332f41cf1bad351b42193f0" args="(const zhsmatrix &amp;, const zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</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="a5d8a6546b167053914d927717cae8be0"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a5d8a6546b167053914d927717cae8be0" args="(const zhsmatrix &amp;, const _zgsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zgsmatrix.html">_zgsmatrix</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="a7c31fc9d6c71016c556767ce4cf149a5"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a7c31fc9d6c71016c556767ce4cf149a5" args="(const zhsmatrix &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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="a5579c45c8417f1f563911b981f89ee89"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a5579c45c8417f1f563911b981f89ee89" args="(const zhsmatrix &amp;, const _zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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__zhsmatrix.html">_zhsmatrix</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="a0137507783a0d88bd692884f15f0707f"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a0137507783a0d88bd692884f15f0707f" args="(const zhsmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>zhsmatrix*double operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-double_8hpp_source.html#l00027">27</a> of file <a class="el" href="zhsmatrix-double_8hpp_source.html">zhsmatrix-double.hpp</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(mat);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    it-&gt;v *=d;
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a48874f0c91245d1d75187a7910baa7df"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a48874f0c91245d1d75187a7910baa7df" args="(const zhsmatrix &amp;, const comple &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const comple &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>zhsmatrix*complex operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-complex_8hpp_source.html#l00003">3</a> of file <a class="el" href="zhsmatrix-complex_8hpp_source.html">zhsmatrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgsmatrix.html" title="Complex Double-precision General Sparse Matrix Class.">zgsmatrix</a> newmat( mat.<a class="code" href="classzhsmatrix.html#ab7b2ec22a37ce4c4ec99873dae33ac67">to_zgsmatrix</a>() );
  <span class="keywordflow">return</span> newmat*d;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a79d0c236fed2d16ad2b6eaafa0836b47"></a><!-- doxytag: member="zhsmatrix::operator/" ref="a79d0c236fed2d16ad2b6eaafa0836b47" args="(const zhsmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</a> operator/ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</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>zhsmatrix/double operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-double_8hpp_source.html#l00040">40</a> of file <a class="el" href="zhsmatrix-double_8hpp_source.html">zhsmatrix-double.hpp</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(mat);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    it-&gt;v /=d;
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="afa955ef581c590e8fa8cd590bd7f0cb1"></a><!-- doxytag: member="zhsmatrix::operator/" ref="afa955ef581c590e8fa8cd590bd7f0cb1" args="(const zhsmatrix &amp;, const comple &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator/ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classzhsmatrix.html">zhsmatrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const comple &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>zhsmatrix/complex operator </p>

<p>Definition at line <a class="el" href="zhsmatrix-complex_8hpp_source.html#l00011">11</a> of file <a class="el" href="zhsmatrix-complex_8hpp_source.html">zhsmatrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgsmatrix.html" title="Complex Double-precision General Sparse Matrix Class.">zgsmatrix</a> newmat( mat.<a class="code" href="classzhsmatrix.html#ab7b2ec22a37ce4c4ec99873dae33ac67">to_zgsmatrix</a>() );
  <span class="keywordflow">return</span> newmat/d;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a026d66aa0cdf165877747d08bcdce595"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a026d66aa0cdf165877747d08bcdce595" args="(const double &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zhsmatrix.html">_zhsmatrix</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="classzhsmatrix.html">zhsmatrix</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*zhsmatrix operator </p>

<p>Definition at line <a class="el" href="double-zhsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="double-zhsmatrix_8hpp_source.html">double-zhsmatrix.hpp</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(mat);
  
  <span class="keywordflow">for</span>(std::vector&lt;zcomponent&gt;::iterator it=newmat.data.begin(); it!=newmat.data.end(); it++){
    it-&gt;v *=d;
  }
  
  <span class="keywordflow">return</span> <a class="code" href="classzhsmatrix.html#a9fe3e3006bc80db5c3f24b601f5a3458">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a4c9ee1cb18d5557852e2762f45ad4e07"></a><!-- doxytag: member="zhsmatrix::operator*" ref="a4c9ee1cb18d5557852e2762f45ad4e07" args="(const comple &amp;, const zhsmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const comple &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="classzhsmatrix.html">zhsmatrix</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>complex*zhsmatrix operator </p>

<p>Definition at line <a class="el" href="complex-zhsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="complex-zhsmatrix_8hpp_source.html">complex-zhsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgsmatrix.html" title="Complex Double-precision General Sparse Matrix Class.">zgsmatrix</a> newmat( mat.<a class="code" href="classzhsmatrix.html#ab7b2ec22a37ce4c4ec99873dae33ac67">to_zgsmatrix</a>() );
  <span class="keywordflow">return</span> d*newmat;
}
</pre></div>
</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ad01f0f8b364916b88d72c0e08b45815e"></a><!-- doxytag: member="zhsmatrix::m" ref="ad01f0f8b364916b88d72c0e08b45815e" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long const&amp; <a class="el" href="classzhsmatrix.html#ad01f0f8b364916b88d72c0e08b45815e">zhsmatrix::m</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix row size </p>

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

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00251">checkup()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="__zrovector-zhsmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, and <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00031">to_zgsmatrix()</a>.</p>

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

<p>matrix column size </p>

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

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00097">del()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00114">isListed()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00135">number()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zrovector-zhsmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="__zhsmatrix-zhsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00015">operator+=()</a>, <a class="el" href="__zhsmatrix-zhsmatrix_8hpp_source.html#l00025">operator-()</a>, <a class="el" href="zhsmatrix-__zhsmatrix_8hpp_source.html#l00036">operator-=()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00212">operator&lt;&lt;()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00063">put()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00262">read()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00224">swap()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00031">to_zgsmatrix()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00017">to_zhematrix()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00246">write()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">zero()</a>, and <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00003">zhsmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="aaf52f103dbedb011a7ef72526bf4b486"></a><!-- doxytag: member="zhsmatrix::data" ref="aaf52f103dbedb011a7ef72526bf4b486" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::vector&lt;<a class="el" href="classzcomponent.html">zcomponent</a>&gt; <a class="el" href="classzhsmatrix.html#aaf52f103dbedb011a7ef72526bf4b486">zhsmatrix::data</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix data </p>

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

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00021">chsign()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="zhsmatrix-calc_8hpp_source.html#l00020">conj()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el" href="zhsmatrix-calc_8hpp_source.html#l00067">damax()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00097">del()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00209">diet()</a>, <a class="el" href="zhsmatrix-calc_8hpp_source.html#l00051">idamax()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00114">isListed()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00135">number()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zrovector-zhsmatrix_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zhsmatrix-double_8hpp_source.html#l00003">operator*=()</a>, <a class="el" href="__zhsmatrix-zhsmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00017">operator+=()</a>, <a class="el" href="__zhsmatrix-zhsmatrix_8hpp_source.html#l00025">operator-()</a>, <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00037">operator-=()</a>, <a class="el" href="zhsmatrix-double_8hpp_source.html#l00040">operator/()</a>, <a class="el" href="zhsmatrix-double_8hpp_source.html#l00013">operator/=()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00212">operator&lt;&lt;()</a>, <a class="el" href="zhsmatrix-zhsmatrix_8hpp_source.html#l00003">operator=()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00063">put()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00224">swap()</a>, <a class="el" href="zhsmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00031">to_zgsmatrix()</a>, <a class="el" href="zhsmatrix-cast_8hpp_source.html#l00017">to_zhematrix()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00246">write()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">zero()</a>, <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00003">zhsmatrix()</a>, and <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00084">~zhsmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="a0d2e9226d4c6ac5c8ce99c17a9662efe"></a><!-- doxytag: member="zhsmatrix::line" ref="a0d2e9226d4c6ac5c8ce99c17a9662efe" 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="classzhsmatrix.html#a0d2e9226d4c6ac5c8ce99c17a9662efe">zhsmatrix::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="zhsmatrix_8hpp_source.html#l00012">12</a> of file <a class="el" href="zhsmatrix_8hpp_source.html">zhsmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00233">_()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00003">clear()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00184">col()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00030">copy()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00097">del()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00114">isListed()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00135">number()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="zhsmatrix-io_8hpp_source.html#l00063">put()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00054">resize()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00159">row()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00040">shallow_copy()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00079">stretch()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00224">swap()</a>, <a class="el" href="zhsmatrix-misc_8hpp_source.html#l00012">zero()</a>, <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00003">zhsmatrix()</a>, and <a class="el" href="zhsmatrix-constructor_8hpp_source.html#l00084">~zhsmatrix()</a>.</p>

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