<!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: _zgematrix 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">_zgematrix Class Reference</div>  </div>
</div><!--header-->
<div class="contents">
<!-- doxytag: class="_zgematrix" -->
<p>(DO NOT USE) Smart-temporary Complex Double-precision General Dence Matrix Class  
 <a href="class__zgematrix.html#details">More...</a></p>

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

<p><a href="class__zgematrix-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a92c4fd691597c28a3ba1e9d8f79de246">_zgematrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a7d019ac25d1c3b9bbf7709f9858aa018">_zgematrix</a> (const <a class="el" href="class__zgematrix.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="class__zgematrix.html#a8771aa48ada3b7125f2d0ed63b09a614">~_zgematrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a22f0ce8972362577d67deef0dd2dd201">operator()</a> (const long &amp;, const long &amp;) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a890d9faac9bb238840d1841037a57cfc">write</a> (const char *) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#aeadbdaaeb74b772af5a741d23fd91e08">nullify</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a> () const </td></tr>
<tr><td colspan="2"><h2><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec">m</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix row size  <a href="#a078ae1faad7aa3659a8f7d15cdfa27ec"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0">n</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix column size  <a href="#ad69dfb0c64f2f0ea5f9928ce33a2b1e0"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985">array</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">1D array to store matrix data  <a href="#a5582bee2b868f89c22a455800cb96985"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa">darray</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">array of pointers of column head addresses  <a href="#aef0739e6d23790625a881e082e24c7fa"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="friends"></a>
Friends</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a2609e8a5e769476c76cb9c5111a93e96">operator&lt;&lt;</a> (std::ostream &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="class__zgematrix.html#ac563034ee7e51a0a7ac6df6dad7785d7">t</a> (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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a> (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="class__zgematrix.html#a90909b1184869ea17b589482a0706869">conj</a> (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="class__zgematrix.html#abb37d28cb7970fced6df6b3472683dc1">conjt</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a19b4758587e1a183c2558c26ecefbe0a">idamax</a> (long &amp;, long &amp;, const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a323aa2399b3cedb4589aa44dcdea23f0">damax</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a05ca9bb40768912a7e1bf2b146f9859e">operator+</a> (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="class__zgematrix.html#afe91b54e9779a3321b248e7c57fe6db7">operator-</a> (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="class__zgematrix.html#aaac561b12a6ba6d7e3e2c63965734b43">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#aad859431d64f7ebdb610f328dc1400ba">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a23f35aa8ac41eebc8647887b13d552a3">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#af5b7eef4c888d40bfb8188bcf6587fa7">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#ae0fe24f6ed30c977ff61cb4f98da8ecd">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#aabdb81cac6060d83372d48163e26304e">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a33a1064a59262d1db52799a747574a22">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a11bf6ad152b701a3192ceee1795abb00">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a7b9f49e53b9c64cd42d2dc5317303f96">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a1a369180be23a84baed8eb9d02b724d2">operator+</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a136c4bbb19e8026535a442b444825faf">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a398c24347f9fd0aa931210dfcd9dcb0f">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a6ac23605fe4677da2598d74d61576b26">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#af10f50c16e6e728a993020610e187388">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#af2d8a43599c55362352a54fd4bb2cf31">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#adf7fd747d23c40f6e99ee56b1f5ffad3">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a6e1b1bf3dc0831de907218e97e1b3405">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#aba90831a6b445d6a10b3a63bd49cd27a">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a01526672dbc5c1c23d0a548dce2acd71">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a27ccc98905d794a5acaa62486259ab1b">operator-</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a17b8e0f1131c548a7064ac9d845528a6">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#ac93fd0308a59cc1399c380a0fca5efd5">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a1a5e22239077aff7a55703b5b2a93e98">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a015b01e6d549e8aa56f4c188671ebdec">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a5927c29f1301ee50a00bd12dc8a8bb3b">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a802444f1be5a95e94d4d73a6666efb99">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#ad741b2173cca7de97d44a7c2ece58d2a">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#aa7bcc553015cd123467eac964685b761">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#a2ecb870267922e22dc1319daff900dfe">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#ae05e6040def8e35c7f3d9a618fe0bcde">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#ac7f1958e61f633e7b620dd187b2cb636">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgematrix.html#acf9845b3f43fba0f7e84eee70177bc22">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</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="class__zgematrix.html#a799c7dc9eaacb0ce27a215ed8e135a57">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;, const double &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="class__zgematrix.html#a69d27834ceb600934259bb0115867c87">operator*</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;, const comple &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="class__zgematrix.html#a48c95d93918a9c4917273977d53573ff">operator/</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;, const double &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="class__zgematrix.html#adb013f06d2c146115555ed54988b5f88">operator/</a> (const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;, const comple &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="class__zgematrix.html#add4e8867ebeddadb5dc15a92c9ab143f">operator*</a> (const double &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="class__zgematrix.html#af39a31eacd8eab14886159c343964e26">operator*</a> (const comple &amp;, const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>(DO NOT USE) Smart-temporary Complex Double-precision General Dence Matrix Class </p>

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

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

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00011">array</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__zgematrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// initialize ////////</span>
<span class="comment"></span>  <a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> =0;
  <a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> =0;
  <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a> =NULL;
  <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a> =NULL;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a7d019ac25d1c3b9bbf7709f9858aa018"></a><!-- doxytag: member="_zgematrix::_zgematrix" ref="a7d019ac25d1c3b9bbf7709f9858aa018" args="(const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html#a92c4fd691597c28a3ba1e9d8f79de246">_zgematrix::_zgematrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</a> &amp;&#160;</td>
          <td class="paramname"><em>mat</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p><a class="el" href="class__zgematrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Dence Matrix Class">_zgematrix</a> copy constructor </p>

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

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00011">array</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zgematrix-misc_8hpp_source.html#l00003">nullify()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;<span class="comment"></span>
<span class="comment">  //////// initialize ////////</span>
<span class="comment"></span>  <a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> =mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>;
  <a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> =mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>;
  <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a> =mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>;
  <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a> =mat.<a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>;
  
  mat.<a class="code" href="class__zgematrix.html#aeadbdaaeb74b772af5a741d23fd91e08">nullify</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a8771aa48ada3b7125f2d0ed63b09a614"></a><!-- doxytag: member="_zgematrix::~_zgematrix" ref="a8771aa48ada3b7125f2d0ed63b09a614" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html#a8771aa48ada3b7125f2d0ed63b09a614">_zgematrix::~_zgematrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>zgematrix destructor </p>

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

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00011">array</a>, and <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>;
}
</pre></div>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a22f0ce8972362577d67deef0dd2dd201"></a><!-- doxytag: member="_zgematrix::operator()" ref="a22f0ce8972362577d67deef0dd2dd201" args="(const long &amp;, const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple &amp; _zgematrix::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 object </p>

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

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00019">i</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__zgematrix_8hpp_source.html#l00010">n</a>.</p>

<p>Referenced by <a class="el" href="__zgematrix-io_8hpp_source.html#l00041">write()</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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;0 || j&lt;0 || <a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>&lt;=<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a> || <a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">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">//return array[i+m*j];</span>
  <span class="keywordflow">return</span> <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>[j][<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>];
}
</pre></div>
</div>
</div>
<a class="anchor" id="a890d9faac9bb238840d1841037a57cfc"></a><!-- doxytag: member="_zgematrix::write" ref="a890d9faac9bb238840d1841037a57cfc" args="(const char *) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgematrix.html#a890d9faac9bb238840d1841037a57cfc">_zgematrix::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="__zgematrix-io_8hpp_source.html#l00041">41</a> of file <a class="el" href="__zgematrix-io_8hpp_source.html">_zgematrix-io.hpp</a>.</p>

<p>References <a class="el" href="__zgematrix-misc_8hpp_source.html#l00013">destroy()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00019">i</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zgematrix-io_8hpp_source.html#l00003">operator()()</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;#zgematrix&quot;</span> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; std::endl;
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; j++){
      ofs &lt;&lt; <a class="code" href="class__zgematrix.html#a22f0ce8972362577d67deef0dd2dd201">operator()</a>(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j) &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;
    }
    ofs &lt;&lt; std::endl;
  }
  
  ofs.close();
  <a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="aeadbdaaeb74b772af5a741d23fd91e08"></a><!-- doxytag: member="_zgematrix::nullify" ref="aeadbdaaeb74b772af5a741d23fd91e08" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgematrix.html#aeadbdaaeb74b772af5a741d23fd91e08">_zgematrix::nullify</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>nullify all the matrix data </p>

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

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00011">array</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>, <a class="el" href="__zgematrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__zgematrix_8hpp_source.html#l00010">n</a>.</p>

<p>Referenced by <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00014">_zgematrix()</a>, <a class="el" href="zgematrix-misc_8hpp_source.html#l00067">zgematrix::shallow_copy()</a>, and <a class="el" href="zgematrix-constructor_8hpp_source.html#l00033">zgematrix::zgematrix()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>=0;
  <a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>=0;
  <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>=NULL;
  <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>=NULL;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a447e4807955f2b359831116d90aad098"></a><!-- doxytag: member="_zgematrix::destroy" ref="a447e4807955f2b359831116d90aad098" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">_zgematrix::destroy</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>destroy all the matrix data </p>

<p>Definition at line <a class="el" href="__zgematrix-misc_8hpp_source.html#l00013">13</a> of file <a class="el" href="__zgematrix-misc_8hpp_source.html">_zgematrix-misc.hpp</a>.</p>

<p>References <a class="el" href="__zgematrix_8hpp_source.html#l00011">array</a>, and <a class="el" href="__zgematrix_8hpp_source.html#l00012">darray</a>.</p>

<p>Referenced by <a class="el" href="__zgematrix-calc_8hpp_source.html#l00054">conjt()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00085">damax()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00074">idamax()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00049">operator*()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00053">zgematrix::operator*=()</a>, <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00015">zgematrix::operator+=()</a>, <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00022">operator-()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00034">zgematrix::operator-=()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00003">t()</a>, and <a class="el" href="__zgematrix-io_8hpp_source.html#l00041">write()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>;
  <a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>=NULL;
  <a class="code" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa" title="array of pointers of column head addresses">darray</a>=NULL;
}
</pre></div>
</div>
</div>
<hr/><h2>Friends And Related Function Documentation</h2>
<a class="anchor" id="a2609e8a5e769476c76cb9c5111a93e96"></a><!-- doxytag: member="_zgematrix::operator&lt;&lt;" ref="a2609e8a5e769476c76cb9c5111a93e96" args="(std::ostream &amp;, const zgematrix &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="classzgematrix.html">zgematrix</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="zgematrix-io_8hpp_source.html#l00063">63</a> of file <a class="el" href="zgematrix-io_8hpp_source.html">zgematrix-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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;mat.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;mat.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a>; j++){
      s &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; mat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
    s &lt;&lt; std::endl;
  }
  <span class="keywordflow">return</span> s;
}
</pre></div>
</div>
</div>
<a class="anchor" id="ac563034ee7e51a0a7ac6df6dad7785d7"></a><!-- doxytag: member="_zgematrix::t" ref="ac563034ee7e51a0a7ac6df6dad7785d7" args="(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> <a class="el" href="class__zgematrix.html#ac563034ee7e51a0a7ac6df6dad7785d7">t</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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 zgematrix </p>

<p>Definition at line <a class="el" href="__zgematrix-calc_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.hpp</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(mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>,mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>);
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;newmat.n; j++){
      newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j) =mat(j,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>);
    }
  }
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a29ff7f6e7528f03c4b702ff6755e1282"></a><!-- doxytag: member="_zgematrix::i" ref="a29ff7f6e7528f03c4b702ff6755e1282" args="(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> <a class="el" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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 inverse matrix </p>

<p>Definition at line <a class="el" href="__zgematrix-calc_8hpp_source.html#l00019">19</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.hpp</a>.</p>

<p>Referenced by <a class="el" href="__zgematrix-io_8hpp_source.html#l00003">operator()()</a>, and <a class="el" href="__zgematrix-io_8hpp_source.html#l00041">write()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;This matrix is not square and has no inverse matrix.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> mat_cp(mat);
  <a class="code" href="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> mat_inv(mat_cp.m,mat_cp.n);
  mat_inv.identity();
  mat_cp.zgesv(mat_inv);
  
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(mat_inv);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a90909b1184869ea17b589482a0706869"></a><!-- doxytag: member="_zgematrix::conj" ref="a90909b1184869ea17b589482a0706869" args="(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> <a class="el" href="class__zgematrix.html#a90909b1184869ea17b589482a0706869">conj</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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 conjugate matrix </p>

<p>Definition at line <a class="el" href="__zgematrix-calc_8hpp_source.html#l00043">43</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; j++){
    mat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j) =<a class="code" href="class__zgematrix.html#a90909b1184869ea17b589482a0706869">std::conj</a>(mat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j));
  }}
  
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="abb37d28cb7970fced6df6b3472683dc1"></a><!-- doxytag: member="_zgematrix::conjt" ref="abb37d28cb7970fced6df6b3472683dc1" args="(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> <a class="el" href="class__zgematrix.html#abb37d28cb7970fced6df6b3472683dc1">conjt</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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 conjugate transposed matrix </p>

<p>Definition at line <a class="el" href="__zgematrix-calc_8hpp_source.html#l00054">54</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.hpp</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(mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>,mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;newmat.n; j++){
      newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j) =<a class="code" href="class__zgematrix.html#a90909b1184869ea17b589482a0706869">std::conj</a>(mat(j,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>));
    }
  }
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a19b4758587e1a183c2558c26ecefbe0a"></a><!-- doxytag: member="_zgematrix::idamax" ref="a19b4758587e1a183c2558c26ecefbe0a" args="(long &amp;, long &amp;, const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgematrix.html#a19b4758587e1a183c2558c26ecefbe0a">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="class__zgematrix.html">_zgematrix</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="__zgematrix-calc_8hpp_source.html#l00074">74</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keywordtype">long</span> index( izamax_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1) -1 );
  <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a> =index%mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>;
  j =index/mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>;
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a323aa2399b3cedb4589aa44dcdea23f0"></a><!-- doxytag: member="_zgematrix::damax" ref="a323aa2399b3cedb4589aa44dcdea23f0" args="(const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple <a class="el" href="class__zgematrix.html#a323aa2399b3cedb4589aa44dcdea23f0">damax</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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="__zgematrix-calc_8hpp_source.html#l00085">85</a> of file <a class="el" href="__zgematrix-calc_8hpp_source.html">_zgematrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  comple val( mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[izamax_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1) -1] );
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> val;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a05ca9bb40768912a7e1bf2b146f9859e"></a><!-- doxytag: member="_zgematrix::operator+" ref="a05ca9bb40768912a7e1bf2b146f9859e" args="(const _zgematrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class__zgematrix.html">_zgematrix</a>&amp; operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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>+_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-unary_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-unary_8hpp_source.html">_zgematrix-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="afe91b54e9779a3321b248e7c57fe6db7"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="afe91b54e9779a3321b248e7c57fe6db7" args="(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="class__zgematrix.html">_zgematrix</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>-_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-unary_8hpp_source.html#l00010">10</a> of file <a class="el" href="__zgematrix-unary_8hpp_source.html">_zgematrix-unary.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="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]=-mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]; }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aaac561b12a6ba6d7e3e2c63965734b43"></a><!-- doxytag: member="_zgematrix::operator+" ref="aaac561b12a6ba6d7e3e2c63965734b43" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgematrix.html">zgematrix</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>_zgematrix+zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-zgematrix_8hpp_source.html">_zgematrix-zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]+=matB.<a class="code" href="classzgematrix.html#aaa50b409ff4060aa10ad3c0f9dcd45ef" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]; }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aad859431d64f7ebdb610f328dc1400ba"></a><!-- doxytag: member="_zgematrix::operator+" ref="aad859431d64f7ebdb610f328dc1400ba" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</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>_zgematrix+_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html">_zgematrix-_zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]+=matB.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]; }

  matB.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a23f35aa8ac41eebc8647887b13d552a3"></a><!-- doxytag: member="_zgematrix::operator+" ref="a23f35aa8ac41eebc8647887b13d552a3" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzhematrix.html">zhematrix</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>_zgematrix+zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zhematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-zhematrix_8hpp_source.html">_zgematrix-zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>; j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="af5b7eef4c888d40bfb8188bcf6587fa7"></a><!-- doxytag: member="_zgematrix::operator+" ref="af5b7eef4c888d40bfb8188bcf6587fa7" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zhematrix.html">_zhematrix</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>_zgematrix+_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html">_zgematrix-_zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>; j++){
    matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
  }}
  
  matB.<a class="code" href="class__zhematrix.html#a2acc6b7bde22ce109468a72d8d40abcc">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="ae0fe24f6ed30c977ff61cb4f98da8ecd"></a><!-- doxytag: member="_zgematrix::operator+" ref="ae0fe24f6ed30c977ff61cb4f98da8ecd" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgbmatrix.html">zgbmatrix</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>_zgematrix+zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html">_zgematrix-zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>-matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a>,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aabdb81cac6060d83372d48163e26304e"></a><!-- doxytag: member="_zgematrix::operator+" ref="aabdb81cac6060d83372d48163e26304e" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgbmatrix.html">_zgbmatrix</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>_zgematrix+_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html">_zgematrix-_zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>-matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>+matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  matB.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a33a1064a59262d1db52799a747574a22"></a><!-- doxytag: member="_zgematrix::operator+" ref="a33a1064a59262d1db52799a747574a22" args="(const _zgematrix &amp;, const zgsmatrix &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="class__zgematrix.html">_zgematrix</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="classzgsmatrix.html">zgsmatrix</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>_zgematrix+zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html">_zgematrix-zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgsmatrix.html#a98ae26acaf05df9ca358514b776faafe" title="matrix row size">m</a> || matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a98ae26acaf05df9ca358514b776faafe" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" 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>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>[c];
    matA(z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) += z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a11bf6ad152b701a3192ceee1795abb00"></a><!-- doxytag: member="_zgematrix::operator+" ref="a11bf6ad152b701a3192ceee1795abb00" args="(const _zgematrix &amp;, const _zgsmatrix &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="class__zgematrix.html">_zgematrix</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__zgsmatrix.html">_zgsmatrix</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>_zgematrix+_zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html">_zgematrix-_zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgsmatrix.html#a1be0849915f6b79eb1444150e8bebf31" title="matrix row size">m</a> || matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#a1be0849915f6b79eb1444150e8bebf31" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" 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>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>[c];
    matA(z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) += z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
  }
  
  matB.<a class="code" href="class__zgsmatrix.html#a967720c5efdb91e779a955fee836d01f">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a7b9f49e53b9c64cd42d2dc5317303f96"></a><!-- doxytag: member="_zgematrix::operator+" ref="a7b9f49e53b9c64cd42d2dc5317303f96" args="(const _zgematrix &amp;, const zhsmatrix &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="class__zgematrix.html">_zgematrix</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="a1a369180be23a84baed8eb9d02b724d2"></a><!-- doxytag: member="_zgematrix::operator+" ref="a1a369180be23a84baed8eb9d02b724d2" args="(const _zgematrix &amp;, const _zhsmatrix &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="class__zgematrix.html">_zgematrix</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="a136c4bbb19e8026535a442b444825faf"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a136c4bbb19e8026535a442b444825faf" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgematrix.html">zgematrix</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>_zgematrix-zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgematrix_8hpp_source.html#l00021">21</a> of file <a class="el" href="__zgematrix-zgematrix_8hpp_source.html">_zgematrix-zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]-=matB.<a class="code" href="classzgematrix.html#aaa50b409ff4060aa10ad3c0f9dcd45ef" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]; }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a398c24347f9fd0aa931210dfcd9dcb0f"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a398c24347f9fd0aa931210dfcd9dcb0f" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</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>_zgematrix-_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00022">22</a> of file <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html">_zgematrix-_zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]-=matB.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>]; }
  
  matB.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a6ac23605fe4677da2598d74d61576b26"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a6ac23605fe4677da2598d74d61576b26" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzhematrix.html">zhematrix</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>_zgematrix-zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zhematrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__zgematrix-zhematrix_8hpp_source.html">_zgematrix-zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>; j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)-=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="af10f50c16e6e728a993020610e187388"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="af10f50c16e6e728a993020610e187388" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zhematrix.html">_zhematrix</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>_zgematrix-_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html#l00024">24</a> of file <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html">_zgematrix-_zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){ <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>; j++){
    matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)-=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
  }}
  
  matB.<a class="code" href="class__zhematrix.html#a2acc6b7bde22ce109468a72d8d40abcc">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="af2d8a43599c55362352a54fd4bb2cf31"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="af2d8a43599c55362352a54fd4bb2cf31" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgbmatrix.html">zgbmatrix</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>_zgematrix-zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html">_zgematrix-zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>-matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a>,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)-=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="adf7fd747d23c40f6e99ee56b1f5ffad3"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="adf7fd747d23c40f6e99ee56b1f5ffad3" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgbmatrix.html">_zgbmatrix</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>_zgematrix-_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html#l00026">26</a> of file <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html">_zgematrix-_zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> || matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a summation.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) + (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>-matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>+matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)-=matB(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j);
    }
  }
  
  matB.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a6e1b1bf3dc0831de907218e97e1b3405"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a6e1b1bf3dc0831de907218e97e1b3405" args="(const _zgematrix &amp;, const zgsmatrix &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="class__zgematrix.html">_zgematrix</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="classzgsmatrix.html">zgsmatrix</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>_zgematrix-zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html#l00024">24</a> of file <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html">_zgematrix-zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="classzgsmatrix.html#a98ae26acaf05df9ca358514b776faafe" title="matrix row size">m</a> || matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" 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>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>[c];
    matA(z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) -= z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
  }
  
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aba90831a6b445d6a10b3a63bd49cd27a"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="aba90831a6b445d6a10b3a63bd49cd27a" args="(const _zgematrix &amp;, const _zgsmatrix &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="class__zgematrix.html">_zgematrix</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__zgsmatrix.html">_zgsmatrix</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>_zgematrix-_zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html#l00025">25</a> of file <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html">_zgematrix-_zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>!=matB.<a class="code" href="class__zgsmatrix.html#a1be0849915f6b79eb1444150e8bebf31" title="matrix row size">m</a> || matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a subtraction.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) - (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" 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>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>[c];
    matA(z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) -= z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
  }
  
  matB.<a class="code" href="class__zgsmatrix.html#a967720c5efdb91e779a955fee836d01f">destroy</a>();
  <span class="keywordflow">return</span> matA;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a01526672dbc5c1c23d0a548dce2acd71"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a01526672dbc5c1c23d0a548dce2acd71" args="(const _zgematrix &amp;, const zhsmatrix &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="class__zgematrix.html">_zgematrix</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="a27ccc98905d794a5acaa62486259ab1b"></a><!-- doxytag: member="_zgematrix::operator&#45;" ref="a27ccc98905d794a5acaa62486259ab1b" args="(const _zgematrix &amp;, const _zhsmatrix &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="class__zgematrix.html">_zgematrix</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="a17b8e0f1131c548a7064ac9d845528a6"></a><!-- doxytag: member="_zgematrix::operator*" ref="a17b8e0f1131c548a7064ac9d845528a6" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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>_zgematrix*zcovector operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-zcovector_8hpp_source.html">_zgematrix-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="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>);
  zgemv_( <span class="charliteral">&#39;n&#39;</span>, mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0), mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>,
          vec.<a class="code" href="classzcovector.html#a7c812242cb084ba940fb61755a3c8cf7" title="1D array to store vector data">array</a>, 1, comple(0.0,0.0), newvec.array, 1 );
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ac93fd0308a59cc1399c380a0fca5efd5"></a><!-- doxytag: member="_zgematrix::operator*" ref="ac93fd0308a59cc1399c380a0fca5efd5" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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>_zgematrix*_zcovector operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-__zcovector_8hpp_source.html">_zgematrix-_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="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>);
  zgemv_( <span class="charliteral">&#39;n&#39;</span>, mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0), mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>,
          vec.<a class="code" href="class__zcovector.html#aaa49b9ce62a619d7efca0a392e60d716" title="1D array to store vector data">array</a>, 1, comple(0.0,0.0), newvec.array, 1 );
  
  mat.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  vec.<a class="code" href="class__zcovector.html#a7b0dbef72aa40ca8ccd7aa11ea6bc88a">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newvec);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a1a5e22239077aff7a55703b5b2a93e98"></a><!-- doxytag: member="_zgematrix::operator*" ref="a1a5e22239077aff7a55703b5b2a93e98" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgematrix.html">zgematrix</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>_zgematrix*zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgematrix_8hpp_source.html#l00039">39</a> of file <a class="el" href="__zgematrix-zgematrix_8hpp_source.html">_zgematrix-zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a> );
  zgemm_( <span class="charliteral">&#39;n&#39;</span>, <span class="charliteral">&#39;n&#39;</span>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0),
          matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="classzgematrix.html#aaa50b409ff4060aa10ad3c0f9dcd45ef" title="1D array to store matrix data">array</a>, matB.<a class="code" href="classzgematrix.html#a433dab4cf9fba73d9bc96ec6d626654e" title="matrix row size">m</a>,
          comple(0.0,0.0), newmat.array, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> );
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a015b01e6d549e8aa56f4c188671ebdec"></a><!-- doxytag: member="_zgematrix::operator*" ref="a015b01e6d549e8aa56f4c188671ebdec" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgematrix.html">_zgematrix</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>_zgematrix*_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00041">41</a> of file <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html">_zgematrix-_zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> );
  zgemm_( <span class="charliteral">&#39;n&#39;</span>, <span class="charliteral">&#39;n&#39;</span>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0),
          matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, matB.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, 
          comple(0.0,0.0), newmat.array, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> );
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  matB.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a5927c29f1301ee50a00bd12dc8a8bb3b"></a><!-- doxytag: member="_zgematrix::operator*" ref="a5927c29f1301ee50a00bd12dc8a8bb3b" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzhematrix.html">zhematrix</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>_zgematrix*zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zhematrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__zgematrix-zhematrix_8hpp_source.html">_zgematrix-zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> );
  zhemm_( <span class="charliteral">&#39;R&#39;</span>, <span class="charliteral">&#39;l&#39;</span>, matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0),
          matB.<a class="code" href="classzhematrix.html#a9f868de87a273d9f02ff31700fd2e068" title="1D array to store matrix data">array</a>, matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>,
          comple(0.0,0.0), newmat.array, newmat.m );
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a802444f1be5a95e94d4d73a6666efb99"></a><!-- doxytag: member="_zgematrix::operator*" ref="a802444f1be5a95e94d4d73a6666efb99" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zhematrix.html">_zhematrix</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>_zgematrix*_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html#l00045">45</a> of file <a class="el" href="__zgematrix-__zhematrix_8hpp_source.html">_zgematrix-_zhematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> );
  zhemm_( <span class="charliteral">&#39;R&#39;</span>, <span class="charliteral">&#39;l&#39;</span>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, comple(1.0,0.0),
          matB.<a class="code" href="class__zhematrix.html#a7d20e0d43e98b9c706126d92b8683e82" title="1D array to store matrix data">array</a>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>, matA.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, 
          comple(0.0,0.0), newmat.array, newmat.m );
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  matB.<a class="code" href="class__zhematrix.html#a2acc6b7bde22ce109468a72d8d40abcc">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ad741b2173cca7de97d44a7c2ece58d2a"></a><!-- doxytag: member="_zgematrix::operator*" ref="ad741b2173cca7de97d44a7c2ece58d2a" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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="classzgbmatrix.html">zgbmatrix</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>_zgematrix*zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__zgematrix-zgbmatrix_8hpp_source.html">_zgematrix-zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;newmat.n; j++){
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> k=std::max(<span class="keywordtype">long</span>(0),j-matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>); k&lt;std::min(matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>,j+matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>+1); k++){
        newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa7bcc553015cd123467eac964685b761"></a><!-- doxytag: member="_zgematrix::operator*" ref="aa7bcc553015cd123467eac964685b761" args="(const _zgematrix &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="class__zgematrix.html">_zgematrix</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__zgbmatrix.html">_zgbmatrix</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>_zgematrix*_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html#l00049">49</a> of file <a class="el" href="__zgematrix-__zgbmatrix_8hpp_source.html">_zgematrix-_zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;newmat.n; j++){
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> k=std::max(<span class="keywordtype">long</span>(0),j-matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>); k&lt;std::min(matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,j+matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+1); k++){
        newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,j)+=matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  matB.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="a2ecb870267922e22dc1319daff900dfe"></a><!-- doxytag: member="_zgematrix::operator*" ref="a2ecb870267922e22dc1319daff900dfe" args="(const _zgematrix &amp;, const zgsmatrix &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="class__zgematrix.html">_zgematrix</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="classzgsmatrix.html">zgsmatrix</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>_zgematrix*zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html#l00045">45</a> of file <a class="el" href="__zgematrix-zgsmatrix_8hpp_source.html">_zgematrix-zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="classzgsmatrix.html#a98ae26acaf05df9ca358514b776faafe" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="classzgsmatrix.html#a00a2cb15c41645107d565ba6efae0228" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="classzgsmatrix.html#ac538118e334585236087f35829234452" title="matrix data">data</a>[c];
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
      newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) += matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>)*z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
    }
  }
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ae05e6040def8e35c7f3d9a618fe0bcde"></a><!-- doxytag: member="_zgematrix::operator*" ref="ae05e6040def8e35c7f3d9a618fe0bcde" args="(const _zgematrix &amp;, const _zgsmatrix &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="class__zgematrix.html">_zgematrix</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__zgsmatrix.html">_zgsmatrix</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>_zgematrix*_zgsmatrix operator </p>

<p>Definition at line <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html#l00047">47</a> of file <a class="el" href="__zgematrix-__zgsmatrix_8hpp_source.html">_zgematrix-_zgsmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
<span class="preprocessor">#ifdef  CPPL_DEBUG</span>
<span class="preprocessor"></span>  <span class="keywordflow">if</span>(matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>!=matB.<a class="code" href="class__zgsmatrix.html#a1be0849915f6b79eb1444150e8bebf31" title="matrix row size">m</a>){
    ERROR_REPORT;
    std::cerr &lt;&lt; <span class="stringliteral">&quot;These two matrises can not make a product.&quot;</span> &lt;&lt; std::endl
              &lt;&lt; <span class="stringliteral">&quot;Your input was (&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;) * (&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" 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="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat(matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>, matB.<a class="code" href="class__zgsmatrix.html#ae2f1f4a6454a285b6b50feae90da335c" title="matrix column size">n</a>);
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> c=0; c&lt;matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>.size(); c++){
    <span class="keyword">const</span> <a class="code" href="classzcomponent.html" title="Component Class for Complex Double-precision Sparse Matrix Classes.">zcomponent</a>&amp; z =matB.<a class="code" href="class__zgsmatrix.html#a967bd821b1efa288e865366c7c09c42c" title="matrix data">data</a>[c];
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>=0; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>&lt;matA.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>++){
      newmat(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,z.<a class="code" href="classzcomponent.html#a29f12fee46e753341612b5b47a26a792" title="j index of the component">j</a>) += matA(<a class="code" href="class__zgematrix.html#a29ff7f6e7528f03c4b702ff6755e1282">i</a>,z.<a class="code" href="classzcomponent.html#ada76f64a7e405a2c15b112b3d2e8984c" title="i index of the component">i</a>)*z.<a class="code" href="classzcomponent.html#a6f1a14712fbf8c4ff97775ae22bd6392" title="value of the component">v</a>;
    }
  }
  
  matA.<a class="code" href="class__zgematrix.html#a447e4807955f2b359831116d90aad098">destroy</a>();
  matB.<a class="code" href="class__zgsmatrix.html#a967720c5efdb91e779a955fee836d01f">destroy</a>();
  <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
}
</pre></div>
</div>
</div>
<a class="anchor" id="ac7f1958e61f633e7b620dd187b2cb636"></a><!-- doxytag: member="_zgematrix::operator*" ref="ac7f1958e61f633e7b620dd187b2cb636" args="(const _zgematrix &amp;, const zhsmatrix &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="class__zgematrix.html">_zgematrix</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="acf9845b3f43fba0f7e84eee70177bc22"></a><!-- doxytag: member="_zgematrix::operator*" ref="acf9845b3f43fba0f7e84eee70177bc22" args="(const _zgematrix &amp;, const _zhsmatrix &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="class__zgematrix.html">_zgematrix</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="a799c7dc9eaacb0ce27a215ed8e135a57"></a><!-- doxytag: member="_zgematrix::operator*" ref="a799c7dc9eaacb0ce27a215ed8e135a57" args="(const _zgematrix &amp;, const double &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="class__zgematrix.html">_zgematrix</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>_zgematrix*double operator </p>

<p>Definition at line <a class="el" href="__zgematrix-double_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-double_8hpp_source.html">_zgematrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a69d27834ceb600934259bb0115867c87"></a><!-- doxytag: member="_zgematrix::operator*" ref="a69d27834ceb600934259bb0115867c87" args="(const _zgematrix &amp;, const comple &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="class__zgematrix.html">_zgematrix</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>_zgematrix*comple operator </p>

<p>Definition at line <a class="el" href="__zgematrix-complex_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgematrix-complex_8hpp_source.html">_zgematrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a48c95d93918a9c4917273977d53573ff"></a><!-- doxytag: member="_zgematrix::operator/" ref="a48c95d93918a9c4917273977d53573ff" args="(const _zgematrix &amp;, const double &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="class__zgematrix.html">_zgematrix</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>_zgematrix/double operator </p>

<p>Definition at line <a class="el" href="__zgematrix-double_8hpp_source.html#l00011">11</a> of file <a class="el" href="__zgematrix-double_8hpp_source.html">_zgematrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, 1./d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="adb013f06d2c146115555ed54988b5f88"></a><!-- doxytag: member="_zgematrix::operator/" ref="adb013f06d2c146115555ed54988b5f88" args="(const _zgematrix &amp;, const comple &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="class__zgematrix.html">_zgematrix</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>_zgematrix/comple operator </p>

<p>Definition at line <a class="el" href="__zgematrix-complex_8hpp_source.html#l00011">11</a> of file <a class="el" href="__zgematrix-complex_8hpp_source.html">_zgematrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, 1./d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="add4e8867ebeddadb5dc15a92c9ab143f"></a><!-- doxytag: member="_zgematrix::operator*" ref="add4e8867ebeddadb5dc15a92c9ab143f" args="(const double &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 double &amp;&#160;</td>
          <td class="paramname"><em>d</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__zgematrix.html">_zgematrix</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*_zgematrix operator </p>

<p>Definition at line <a class="el" href="double-__zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="double-__zgematrix_8hpp_source.html">double-_zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="af39a31eacd8eab14886159c343964e26"></a><!-- doxytag: member="_zgematrix::operator*" ref="af39a31eacd8eab14886159c343964e26" args="(const comple &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 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="class__zgematrix.html">_zgematrix</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>comple*_zgematrix operator </p>

<p>Definition at line <a class="el" href="complex-__zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="complex-__zgematrix_8hpp_source.html">complex-_zgematrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_(mat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>*mat.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985" title="1D array to store matrix data">array</a>, 1);  
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="a078ae1faad7aa3659a8f7d15cdfa27ec"></a><!-- doxytag: member="_zgematrix::m" ref="a078ae1faad7aa3659a8f7d15cdfa27ec" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec">_zgematrix::m</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>matrix row size </p>

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

<p>Referenced by <a class="el" href="zgematrix-misc_8hpp_source.html#l00159">_()</a>, <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00003">_zgematrix()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00054">conjt()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00085">damax()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00074">idamax()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00049">operator*()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00053">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00015">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00026">operator-()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00034">zgematrix::operator-=()</a>, <a class="el" href="__zgematrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgematrix-misc_8hpp_source.html#l00067">zgematrix::shallow_copy()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00041">write()</a>, and <a class="el" href="zgematrix-constructor_8hpp_source.html#l00033">zgematrix::zgematrix()</a>.</p>

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

<p>matrix column size </p>

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

<p>Referenced by <a class="el" href="zgematrix-misc_8hpp_source.html#l00159">_()</a>, <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00003">_zgematrix()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00054">conjt()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00085">damax()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00019">i()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00074">idamax()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00049">operator*()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00053">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00015">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00026">operator-()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00034">zgematrix::operator-=()</a>, <a class="el" href="__zgematrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgematrix-misc_8hpp_source.html#l00067">zgematrix::shallow_copy()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00041">write()</a>, and <a class="el" href="zgematrix-constructor_8hpp_source.html#l00033">zgematrix::zgematrix()</a>.</p>

</div>
</div>
<a class="anchor" id="a5582bee2b868f89c22a455800cb96985"></a><!-- doxytag: member="_zgematrix::array" ref="a5582bee2b868f89c22a455800cb96985" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple* <a class="el" href="class__zgematrix.html#a5582bee2b868f89c22a455800cb96985">_zgematrix::array</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>1D array to store matrix data </p>

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

<p>Referenced by <a class="el" href="zgematrix-misc_8hpp_source.html#l00159">_()</a>, <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00003">_zgematrix()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00085">damax()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00013">destroy()</a>, <a class="el" href="__zgematrix-calc_8hpp_source.html#l00074">idamax()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgematrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00053">zgematrix::operator*=()</a>, <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00015">zgematrix::operator+=()</a>, <a class="el" href="__zgematrix-__zgematrix_8hpp_source.html#l00022">operator-()</a>, <a class="el" href="zgematrix-__zgematrix_8hpp_source.html#l00034">zgematrix::operator-=()</a>, <a class="el" href="__zgematrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="zgematrix-misc_8hpp_source.html#l00067">zgematrix::shallow_copy()</a>, <a class="el" href="zgematrix-constructor_8hpp_source.html#l00033">zgematrix::zgematrix()</a>, and <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00031">~_zgematrix()</a>.</p>

</div>
</div>
<a class="anchor" id="aef0739e6d23790625a881e082e24c7fa"></a><!-- doxytag: member="_zgematrix::darray" ref="aef0739e6d23790625a881e082e24c7fa" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple** <a class="el" href="class__zgematrix.html#aef0739e6d23790625a881e082e24c7fa">_zgematrix::darray</a><code> [mutable]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>array of pointers of column head addresses </p>

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

<p>Referenced by <a class="el" href="zgematrix-misc_8hpp_source.html#l00159">_()</a>, <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00003">_zgematrix()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00013">destroy()</a>, <a class="el" href="__zgematrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgematrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="zgematrix-misc_8hpp_source.html#l00067">zgematrix::shallow_copy()</a>, <a class="el" href="zgematrix-constructor_8hpp_source.html#l00033">zgematrix::zgematrix()</a>, and <a class="el" href="__zgematrix-constructor_8hpp_source.html#l00031">~_zgematrix()</a>.</p>

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

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



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

</body>
</html>
