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

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

<p><a href="class__zgbmatrix-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__zgbmatrix.html#ab665406fee3fda7f1f7bc9ceb7f8ea54">_zgbmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#afd9da6a30206fc114886dc271226d2c3">_zgbmatrix</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#af6e3e3ba7a6c93009f553b8499ef7fe8">~_zgbmatrix</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgematrix.html">_zgematrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#ad5d9185c26769751670324d437817651">to_zgematrix</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">comple &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a3f515a17b95cd507c24516076d6ecff7">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__zgbmatrix.html#a2c266cf98a87c437d500e5f511b25a6e">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__zgbmatrix.html#a48f830b2fd97fb7133d4441b0d8f28a3">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__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf">m</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix row size  <a href="#a2c7cdee481455ef265dc77dea7cd03cf"></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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6">n</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">matrix column size  <a href="#a743983e0c14c2d3917b51c510ee957f6"></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__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c">kl</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">lower band width  <a href="#a0a88723ded8d7728a8b90ddfd28e5d0c"></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__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77">ku</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">upper band width  <a href="#a0b32db6f9ae374d5d390e24686433a77"></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__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2">array</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">1D array to store matrix data  <a href="#aa218c85602f938d62eb6441a70ad73e2"></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__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401">darray</a></td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">array of pointers of column head addresses  <a href="#ab8b95e78780f362713cd2d149f19b401"></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__zgbmatrix.html#a1896756e5e81dec94dec21acbea2061e">operator&lt;&lt;</a> (std::ostream &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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#aeb574dbb37169c619d518775aae2fe8a">t</a> (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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a> (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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#ac1332a21f4f5e1941b83b64a8040af11">conj</a> (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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a936de3b13e0ce0bf14b7b103182fdbb7">conjt</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a87d62b5f051ebe9acef30bfd7d3412fa">operator+</a> (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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#ae51e78d07b6dedf45a85487ca4a4bfe0">operator-</a> (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__zgbmatrix.html#aedb18d5be2f5a3a17e1d5c47e40be438">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a2f69ff9df631e84aab552808937b87c8">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a4da1ce6a6327493081005bc70768f6ce">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a489f4de3d741a5569e3524577d486d89">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a76804a518732080ca7f65bec2af5ded1">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a03b9493dbbe4d36f49d3c72121b428a2">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a3a21a6177909bf340048d6b862ed624f">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a33a6c54ba10955c04c387a1834a36f09">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a83947fccc3d369ce03f3692861659008">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#ac5f839fcbd7685a9741fc7edeb0ba487">operator+</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#ab91343637888c40ab2c6a174310d0b60">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a5f5ef6878394b2c06b582e3e5b75e729">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#aa66e4d0b13aa1dd79de9e7384bc91d05">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#ab3b70f67408624626d3dbdc3299057c8">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a9fa9f51096a584e81090f8981b2283d4">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a6481a65ea328b0cc22a3cb3696c10cbf">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#abf49db5662b9e5411091d6cf49166bba">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#add44d295fbda5a321efab741a78566d0">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a4fb3c1500bee1c0f131919eac130d06b">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#aca237baf9eda5040d9f03925b0511efd">operator-</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#afb618041283b205a77410a1285242ad9">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a4aa4185414aec04ad8a0db1e1e5fcc97">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a78b9da91f9a0d0c4a15cb7a413776eed">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a4cb1bee622be6a45ac7fc5531c3aec31">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#ad82b801941592dee252606913604a075">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a799076da85bda395a3e6d0682ce2ecb7">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a09d7e7fdee4735333fc59458c62cdf7a">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#ad649c109677371676a28da4607af4a0b">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a93ed74ca20afe8dd05fffe3535b68349">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a3707a05ab4347556f46643af77af207a">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#af73668b2a7ebc910e8d849399ebb7cf2">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html#a111df52641cf76565f256a3fa166b2f1">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#abe02a916a23fd9e3a05d81753b73b41d">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a6afd12eec2cb265e6cc8aa81a330050f">operator*</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;, const comple &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a2da13b8d810f9a41d7225fc8af71addf">operator/</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;, const double &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#ae76074a8f87e95c796a82d70bddb1a84">operator/</a> (const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> &amp;, const comple &amp;)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a0bfa375305fbb25bae2c64c303970586">operator*</a> (const double &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__zgbmatrix.html">_zgbmatrix</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class__zgbmatrix.html#a578320079c671a83043b44ff4740be9c">operator*</a> (const comple &amp;, const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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 Band Matrix Class </p>

<p>Definition at line <a class="el" href="__zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix_8hpp_source.html">_zgbmatrix.hpp</a>.</p>
</div><hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="ab665406fee3fda7f1f7bc9ceb7f8ea54"></a><!-- doxytag: member="_zgbmatrix::_zgbmatrix" ref="ab665406fee3fda7f1f7bc9ceb7f8ea54" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html#ab665406fee3fda7f1f7bc9ceb7f8ea54">_zgbmatrix::_zgbmatrix</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__zgbmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Band Matrix Class">_zgbmatrix</a> constructor </p>

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

<p>References <a class="el" href="__zgbmatrix_8hpp_source.html#l00013">array</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00014">darray</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00011">kl</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00012">ku</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__zgbmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> =0;
  <a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> =0;
  <a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> =0;
  <a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a> =0;
  <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a> =NULL;
  <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a> =NULL;
}
</pre></div>
</div>
</div>
<a class="anchor" id="afd9da6a30206fc114886dc271226d2c3"></a><!-- doxytag: member="_zgbmatrix::_zgbmatrix" ref="afd9da6a30206fc114886dc271226d2c3" args="(const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html#ab665406fee3fda7f1f7bc9ceb7f8ea54">_zgbmatrix::_zgbmatrix</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Band Matrix Class">_zgbmatrix</a> copy constructor </p>

<p>Definition at line <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00015">15</a> of file <a class="el" href="__zgbmatrix-constructor_8hpp_source.html">_zgbmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="__zgbmatrix_8hpp_source.html#l00013">array</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00014">darray</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00011">kl</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00012">ku</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zgbmatrix-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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> =mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>;
  <a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> =mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>;
  <a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> =mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>;
  <a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a> =mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>;
  <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a> =mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>;
  <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a> =mat.<a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a>;

  mat.<a class="code" href="class__zgbmatrix.html#a48f830b2fd97fb7133d4441b0d8f28a3">nullify</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="af6e3e3ba7a6c93009f553b8499ef7fe8"></a><!-- doxytag: member="_zgbmatrix::~_zgbmatrix" ref="af6e3e3ba7a6c93009f553b8499ef7fe8" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html#af6e3e3ba7a6c93009f553b8499ef7fe8">_zgbmatrix::~_zgbmatrix</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__zgbmatrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Band Matrix Class">_zgbmatrix</a> destructor </p>

<p>Definition at line <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00034">34</a> of file <a class="el" href="__zgbmatrix-constructor_8hpp_source.html">_zgbmatrix-constructor.hpp</a>.</p>

<p>References <a class="el" href="__zgbmatrix_8hpp_source.html#l00013">array</a>, and <a class="el" href="__zgbmatrix_8hpp_source.html#l00014">darray</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a>;  
}
</pre></div>
</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="ad5d9185c26769751670324d437817651"></a><!-- doxytag: member="_zgbmatrix::to_zgematrix" ref="ad5d9185c26769751670324d437817651" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgematrix.html">_zgematrix</a> <a class="el" href="class__zgbmatrix.html#ad5d9185c26769751670324d437817651">_zgbmatrix::to_zgematrix</a> </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>convert to <a class="el" href="class__zgematrix.html" title="(DO NOT USE) Smart-temporary Complex Double-precision General Dence Matrix Class">_zgematrix</a> </p>

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

<p>References <a class="el" href="dcovector-misc_8hpp_source.html#l00134">_()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00016">destroy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00018">i</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00011">kl</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00012">ku</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00009">m</a>, and <a class="el" href="__zgbmatrix_8hpp_source.html#l00010">n</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a> newmat( <a class="code" href="classzgematrix.html" title="Complex Double-precision General Dence Matrix Class.">zgematrix</a>(<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>).zero() );
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =(*this)(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  <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="a3f515a17b95cd507c24516076d6ecff7"></a><!-- doxytag: member="_zgbmatrix::operator()" ref="a3f515a17b95cd507c24516076d6ecff7" args="(const long &amp;, const long &amp;) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple &amp; _zgbmatrix::operator() </td>
          <td>(</td>
          <td class="paramtype">const long &amp;&#160;</td>
          <td class="paramname"><em>i</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const long &amp;&#160;</td>
          <td class="paramname"><em>j</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>operator() for const object </p>

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

<p>References <a class="el" href="__zgbmatrix_8hpp_source.html#l00014">darray</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00018">i</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00011">kl</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00012">ku</a>, and <a class="el" href="__zgbmatrix_8hpp_source.html#l00009">m</a>.</p>

<p>Referenced by <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;0 || j&lt;0 || <a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>&lt;=<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a> || n&lt;=j || i-j&gt;<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> || j-<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&gt;<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a> ){
    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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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[ku+i+(kl+ku)*j];</span>
  <span class="keywordflow">return</span> <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a>[j][<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>-j+<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>];
}
</pre></div>
</div>
</div>
<a class="anchor" id="a2c266cf98a87c437d500e5f511b25a6e"></a><!-- doxytag: member="_zgbmatrix::write" ref="a2c266cf98a87c437d500e5f511b25a6e" args="(const char *) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgbmatrix.html#a2c266cf98a87c437d500e5f511b25a6e">_zgbmatrix::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="__zgbmatrix-io_8hpp_source.html#l00042">42</a> of file <a class="el" href="__zgbmatrix-io_8hpp_source.html">_zgbmatrix-io.hpp</a>.</p>

<p>References <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00016">destroy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00018">i</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00011">kl</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00012">ku</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00009">m</a>, <a class="el" href="__zgbmatrix_8hpp_source.html#l00010">n</a>, and <a class="el" href="__zgbmatrix-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;#zgbmatrix&quot;</span> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; <a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a> &lt;&lt; std::endl;
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      ofs &lt;&lt; <a class="code" href="class__zgbmatrix.html#a3f515a17b95cd507c24516076d6ecff7">operator()</a>(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) &lt;&lt; <span class="stringliteral">&quot; &quot;</span>;
    }
    ofs &lt;&lt; std::endl;
  }
  
  ofs.close();
  <a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
}
</pre></div>
</div>
</div>
<a class="anchor" id="a48f830b2fd97fb7133d4441b0d8f28a3"></a><!-- doxytag: member="_zgbmatrix::nullify" ref="a48f830b2fd97fb7133d4441b0d8f28a3" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgbmatrix.html#a48f830b2fd97fb7133d4441b0d8f28a3">_zgbmatrix::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="__zgbmatrix-misc_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-misc_8hpp_source.html">_zgbmatrix-misc.hpp</a>.</p>

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

<p>Referenced by <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00015">_zgbmatrix()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, and <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>=0;
  <a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>=0;
  <a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>=0;
  <a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>=0;
  <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>=NULL;
  <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a>=NULL;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a30eb8221fd3a4046e3c3eb6ba9902bc8"></a><!-- doxytag: member="_zgbmatrix::destroy" ref="a30eb8221fd3a4046e3c3eb6ba9902bc8" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void <a class="el" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">_zgbmatrix::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="__zgbmatrix-misc_8hpp_source.html#l00016">16</a> of file <a class="el" href="__zgbmatrix-misc_8hpp_source.html">_zgbmatrix-misc.hpp</a>.</p>

<p>References <a class="el" href="__zgbmatrix_8hpp_source.html#l00013">array</a>, and <a class="el" href="__zgbmatrix_8hpp_source.html#l00014">darray</a>.</p>

<p>Referenced by <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">conjt()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00099">zgbmatrix::operator*=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00048">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00016">zgbmatrix::operator+=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00003">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">operator-()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00058">zgbmatrix::operator-=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00026">zgematrix::operator-=()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, and <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">write()</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>;
  <span class="keyword">delete</span> [] <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" title="array of pointers of column head addresses">darray</a>;
  <a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>=NULL;
  <a class="code" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401" 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="a1896756e5e81dec94dec21acbea2061e"></a><!-- doxytag: member="_zgbmatrix::operator&lt;&lt;" ref="a1896756e5e81dec94dec21acbea2061e" args="(std::ostream &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">std::ostream&amp; operator&lt;&lt; </td>
          <td>(</td>
          <td class="paramtype">std::ostream &amp;&#160;</td>
          <td class="paramname"><em>s</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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="__zgbmatrix-io_8hpp_source.html#l00023">23</a> of file <a class="el" href="__zgbmatrix-io_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>++){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=0; j&lt;mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>; j++){
      <span class="keywordflow">if</span>( <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-j&gt;mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> || j-<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&gt;mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a> ){ s &lt;&lt; <span class="stringliteral">&quot; x&quot;</span>; }
      <span class="keywordflow">else</span>{ s &lt;&lt; <span class="stringliteral">&quot; &quot;</span> &lt;&lt; mat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j); }
    }
    s &lt;&lt; std::endl;
  }
  
  mat.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> s;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aeb574dbb37169c619d518775aae2fe8a"></a><!-- doxytag: member="_zgbmatrix::t" ref="aeb574dbb37169c619d518775aae2fe8a" args="(const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> <a class="el" href="class__zgbmatrix.html#aeb574dbb37169c619d518775aae2fe8a">t</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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 transposed zgbmatrix </p>

<p>Definition at line <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-calc_8hpp_source.html">_zgbmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>, mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-newmat.kl); j&lt;std::min(newmat.n,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+newmat.ku+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =mat(j,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>);
    }
  }
  
  mat.<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="a3e22d8768746522bf49ef5be07f82387"></a><!-- doxytag: member="_zgbmatrix::i" ref="a3e22d8768746522bf49ef5be07f82387" args="(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> <a class="el" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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="__zgbmatrix-calc_8hpp_source.html#l00018">18</a> of file <a class="el" href="__zgbmatrix-calc_8hpp_source.html">_zgbmatrix-calc.hpp</a>.</p>

<p>Referenced by <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, and <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>!=mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<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="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</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.zgbsv(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="ac1332a21f4f5e1941b83b64a8040af11"></a><!-- doxytag: member="_zgbmatrix::conj" ref="ac1332a21f4f5e1941b83b64a8040af11" args="(const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> <a class="el" href="class__zgbmatrix.html#ac1332a21f4f5e1941b83b64a8040af11">conj</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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="__zgbmatrix-calc_8hpp_source.html#l00043">43</a> of file <a class="el" href="__zgbmatrix-calc_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      mat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =<a class="code" href="class__zgbmatrix.html#ac1332a21f4f5e1941b83b64a8040af11">std::conj</a>(mat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j));
    }
  }
  
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a936de3b13e0ce0bf14b7b103182fdbb7"></a><!-- doxytag: member="_zgbmatrix::conjt" ref="a936de3b13e0ce0bf14b7b103182fdbb7" args="(const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> <a class="el" href="class__zgbmatrix.html#a936de3b13e0ce0bf14b7b103182fdbb7">conjt</a> </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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 zgbmatrix </p>

<p>Definition at line <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">56</a> of file <a class="el" href="__zgbmatrix-calc_8hpp_source.html">_zgbmatrix-calc.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>, mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-newmat.kl); j&lt;std::min(newmat.n,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+newmat.ku+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =<a class="code" href="class__zgbmatrix.html#ac1332a21f4f5e1941b83b64a8040af11">std::conj</a>(mat(j,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>));
    }
  }
  
  mat.<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="a87d62b5f051ebe9acef30bfd7d3412fa"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a87d62b5f051ebe9acef30bfd7d3412fa" args="(const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</a>&amp; operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>+_zgbmatrix operator </p>

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

<p>Definition at line <a class="el" href="__zgbmatrix-unary_8hpp_source.html#l00010">10</a> of file <a class="el" href="__zgbmatrix-unary_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;(mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>++){
    mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>] =-mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>[<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>];
  }
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aedb18d5be2f5a3a17e1d5c47e40be438"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="aedb18d5be2f5a3a17e1d5c47e40be438" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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(matB);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<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="a2f69ff9df631e84aab552808937b87c8"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a2f69ff9df631e84aab552808937b87c8" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> matB;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a4da1ce6a6327493081005bc70768f6ce"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a4da1ce6a6327493081005bc70768f6ce" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> || matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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( matB.<a class="code" href="classzhematrix.html#a4431c33c07ba437ea65491d437413a3c">to_zgematrix</a>() );
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<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="a489f4de3d741a5569e3524577d486d89"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a489f4de3d741a5569e3524577d486d89" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> || matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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(matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a76804a518732080ca7f65bec2af5ded1"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a76804a518732080ca7f65bec2af5ded1" args="(const _zgbmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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">if</span>(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>&gt;=matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a> &amp;&amp; matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>&gt;=matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
        matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    <span class="keywordflow">return</span> matA;
  }
  
  <span class="keywordflow">else</span>{
    <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,std::max(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>,matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>),std::max(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>,matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>));
    newmat.zero();
    
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matA.<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="a03b9493dbbe4d36f49d3c72121b428a2"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a03b9493dbbe4d36f49d3c72121b428a2" args="(const _zgbmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator+ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix+_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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">if</span>(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>&gt;matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> &amp;&amp; matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>&gt;matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matB.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
    <span class="keywordflow">return</span> matA;
  }

  <span class="keywordflow">else</span> <span class="keywordflow">if</span>(matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>&gt;matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> &amp;&amp; matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>&gt;matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
    <span class="keywordflow">return</span> matB;
  }
  
  <span class="keywordflow">else</span>{
    <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,std::max(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>,matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>),std::max(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>,matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>));
    newmat.zero();
    
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a3a21a6177909bf340048d6b862ed624f"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a3a21a6177909bf340048d6b862ed624f" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a33a6c54ba10955c04c387a1834a36f09"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a33a6c54ba10955c04c387a1834a36f09" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a83947fccc3d369ce03f3692861659008"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="a83947fccc3d369ce03f3692861659008" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="ac5f839fcbd7685a9741fc7edeb0ba487"></a><!-- doxytag: member="_zgbmatrix::operator+" ref="ac5f839fcbd7685a9741fc7edeb0ba487" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="ab91343637888c40ab2c6a174310d0b60"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="ab91343637888c40ab2c6a174310d0b60" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html#l00027">27</a> of file <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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(-matB);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<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="a5f5ef6878394b2c06b582e3e5b75e729"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="a5f5ef6878394b2c06b582e3e5b75e729" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00026">26</a> of file <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j) =matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)-matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
  <span class="keywordflow">return</span> matB;
}
</pre></div>
</div>
</div>
<a class="anchor" id="aa66e4d0b13aa1dd79de9e7384bc91d05"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="aa66e4d0b13aa1dd79de9e7384bc91d05" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-zgematrix operator</p>
<p>_zgbmatrix-zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html#l00027">27</a> of file <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>!=matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> || matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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( (-matB).<a class="code" href="class__zgbmatrix.html#ad5d9185c26769751670324d437817651">to_zgematrix</a>() );
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<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="ab3b70f67408624626d3dbdc3299057c8"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="ab3b70f67408624626d3dbdc3299057c8" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html#l00031">31</a> of file <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>!=matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> || matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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(matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a>);
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)=-matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
      newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a9fa9f51096a584e81090f8981b2283d4"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="a9fa9f51096a584e81090f8981b2283d4" args="(const _zgbmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html#l00044">44</a> of file <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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">if</span>(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>&gt;=matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a> &amp;&amp; matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>&gt;=matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matB.<a class="code" href="classzgbmatrix.html#a760031d62091c1ce2808a1b07c7f81bf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
        matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)-=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    <span class="keywordflow">return</span> matA;
  }
  
  <span class="keywordflow">else</span>{
    <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,std::max(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>,matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>),std::max(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>,matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>));
    newmat.zero();
    
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)-=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    <span class="keywordflow">return</span> <a class="code" href="dcovector-misc_8hpp.html#a297beda6502b0d92c99576d2fb9548cb">_</a>(newmat);
  }
}
</pre></div>
</div>
</div>
<a class="anchor" id="a6481a65ea328b0cc22a3cb3696c10cbf"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="a6481a65ea328b0cc22a3cb3696c10cbf" args="(const _zgbmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator- </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix-_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">57</a> of file <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" 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 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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">if</span>(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>&gt;matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a> &amp;&amp; matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>&gt;matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>){
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matB.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)-=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matB.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">destroy</a>();
    <span class="keywordflow">return</span> matA;
  }
  
  <span class="keywordflow">else</span>{
    <a class="code" href="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat(matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>,matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,std::max(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>,matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>),std::max(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>,matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>));
    newmat.zero();
    
    <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); j&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> j=std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); j++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)-=matB(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j);
      }
    }
    
    matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="abf49db5662b9e5411091d6cf49166bba"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="abf49db5662b9e5411091d6cf49166bba" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="add44d295fbda5a321efab741a78566d0"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="add44d295fbda5a321efab741a78566d0" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a4fb3c1500bee1c0f131919eac130d06b"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="a4fb3c1500bee1c0f131919eac130d06b" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="aca237baf9eda5040d9f03925b0511efd"></a><!-- doxytag: member="_zgbmatrix::operator&#45;" ref="aca237baf9eda5040d9f03925b0511efd" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="afb618041283b205a77410a1285242ad9"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="afb618041283b205a77410a1285242ad9" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*zcovector operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-zcovector_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>);
  zgbmv_( <span class="charliteral">&#39;n&#39;</span>, mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>, mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>, comple(1.0,0.0), mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>,
          mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1, 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__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a4aa4185414aec04ad8a0db1e1e5fcc97"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a4aa4185414aec04ad8a0db1e1e5fcc97" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*_zcovector operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>);
  zgbmv_( <span class="charliteral">&#39;n&#39;</span>, mat.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>, mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>, comple(1.0,0.0), mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>,
          mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1, 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__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a78b9da91f9a0d0c4a15cb7a413776eed"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a78b9da91f9a0d0c4a15cb7a413776eed" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html#l00051">51</a> of file <a class="el" href="__zgbmatrix-zgematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="classzgematrix.html#aa2cfc802c95c61389455c6a8ff266d9a" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); k&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); k++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<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="a4cb1bee622be6a45ac7fc5531c3aec31"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a4cb1bee622be6a45ac7fc5531c3aec31" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*_zgematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html#l00049">49</a> of file <a class="el" href="__zgbmatrix-__zgematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="class__zgematrix.html#ad69dfb0c64f2f0ea5f9928ce33a2b1e0" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); k&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); k++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="ad82b801941592dee252606913604a075"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="ad82b801941592dee252606913604a075" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*zgematrix operator</p>
<p>_zgbmatrix*zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html#l00051">51</a> of file <a class="el" href="__zgbmatrix-zhematrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="classzhematrix.html#a03e22e408f98102f65c1b8b4acc4c082" title="matrix column size">n</a> );
  newmat.zero();

  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); k&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); k++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<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="a799076da85bda395a3e6d0682ce2ecb7"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a799076da85bda395a3e6d0682ce2ecb7" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*_zhematrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html#l00059">59</a> of file <a class="el" href="__zgbmatrix-__zhematrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="class__zhematrix.html#a3cd8e436cf59991845c6b8e66d56c023" title="matrix column size">n</a> );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>); k&lt;std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1); k++){
        newmat(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+=matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a09d7e7fdee4735333fc59458c62cdf7a"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a09d7e7fdee4735333fc59458c62cdf7a" args="(const _zgbmatrix &amp;, const zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html#l00084">84</a> of file <a class="el" href="__zgbmatrix-zgbmatrix_8hpp_source.html">_zgbmatrix-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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat( matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a>, std::min(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+matB.<a class="code" href="classzgbmatrix.html#af8f8a5015069bdb6c268652ee25838c0" title="lower band width">kl</a>,matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>-1), std::min(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+matB.<a class="code" href="classzgbmatrix.html#a2a36d59681d1b2f13120a4b4be9203e8" title="upper band width">ku</a>,matB.<a class="code" href="classzgbmatrix.html#ae648f83ec8f7cbc28335265c10e6fe45" title="matrix column size">n</a>-1) );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-newmat.kl); j&lt;std::min(newmat.n,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+newmat.ku+1); j++){
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> k=std::max( std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>), 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( std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1), 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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+= matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<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="ad649c109677371676a28da4607af4a0b"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="ad649c109677371676a28da4607af4a0b" args="(const _zgbmatrix &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00100">100</a> of file <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html">_zgbmatrix-_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__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a> &lt;&lt; <span class="stringliteral">&quot;x&quot;</span> &lt;&lt; matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" 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="classzgbmatrix.html" title="Complex Double-precision General Band Matrix Class.">zgbmatrix</a> newmat( matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>, matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, std::min(matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+matB.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>,matA.<a class="code" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf" title="matrix row size">m</a>-1), std::min(matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+matB.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>,matB.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>-1) );
  newmat.zero();
  
  <span class="keywordflow">for</span>(<span class="keywordtype">long</span> <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>=0; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>&lt;newmat.<a class="code" href="class__zgematrix.html#a078ae1faad7aa3659a8f7d15cdfa27ec" title="matrix row size">m</a>; <a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-newmat.kl); j&lt;std::min(newmat.n,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+newmat.ku+1); j++){
      <span class="keywordflow">for</span>(<span class="keywordtype">long</span> k=std::max( std::max(<span class="keywordtype">long</span>(0),<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>-matA.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>), 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( std::min(matA.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>,<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>+matA.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1), 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__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,j)+= matA(<a class="code" href="class__zgbmatrix.html#a3e22d8768746522bf49ef5be07f82387">i</a>,k)*matB(k,j);
      }
    }
  }
  
  matA.<a class="code" href="class__zgbmatrix.html#a30eb8221fd3a4046e3c3eb6ba9902bc8">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="a93ed74ca20afe8dd05fffe3535b68349"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a93ed74ca20afe8dd05fffe3535b68349" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classzgsmatrix.html">zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="a3707a05ab4347556f46643af77af207a"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a3707a05ab4347556f46643af77af207a" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</a> &amp;&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class__zgsmatrix.html">_zgsmatrix</a> &amp;&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

</div>
</div>
<a class="anchor" id="af73668b2a7ebc910e8d849399ebb7cf2"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="af73668b2a7ebc910e8d849399ebb7cf2" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="a111df52641cf76565f256a3fa166b2f1"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a111df52641cf76565f256a3fa166b2f1" args="(const _zgbmatrix &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__zgbmatrix.html">_zgbmatrix</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="abe02a916a23fd9e3a05d81753b73b41d"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="abe02a916a23fd9e3a05d81753b73b41d" args="(const _zgbmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*double operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-double_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-double_8hpp_source.html">_zgbmatrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a6afd12eec2cb265e6cc8aa81a330050f"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a6afd12eec2cb265e6cc8aa81a330050f" args="(const _zgbmatrix &amp;, const comple &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator* </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix*comple operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00003">3</a> of file <a class="el" href="__zgbmatrix-complex_8hpp_source.html">_zgbmatrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a2da13b8d810f9a41d7225fc8af71addf"></a><!-- doxytag: member="_zgbmatrix::operator/" ref="a2da13b8d810f9a41d7225fc8af71addf" args="(const _zgbmatrix &amp;, const double &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator/ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix/double operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-double_8hpp_source.html#l00011">11</a> of file <a class="el" href="__zgbmatrix-double_8hpp_source.html">_zgbmatrix-double.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, 1./d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="ae76074a8f87e95c796a82d70bddb1a84"></a><!-- doxytag: member="_zgbmatrix::operator/" ref="ae76074a8f87e95c796a82d70bddb1a84" args="(const _zgbmatrix &amp;, const comple &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</a> operator/ </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class__zgbmatrix.html">_zgbmatrix</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>_zgbmatrix/comple operator </p>

<p>Definition at line <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00011">11</a> of file <a class="el" href="__zgbmatrix-complex_8hpp_source.html">_zgbmatrix-complex.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, 1./d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a0bfa375305fbb25bae2c64c303970586"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a0bfa375305fbb25bae2c64c303970586" args="(const double &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</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*_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="double-__zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="double-__zgbmatrix_8hpp_source.html">double-_zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zdscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" title="1D array to store matrix data">array</a>, 1);
  <span class="keywordflow">return</span> mat;
}
</pre></div>
</div>
</div>
<a class="anchor" id="a578320079c671a83043b44ff4740be9c"></a><!-- doxytag: member="_zgbmatrix::operator*" ref="a578320079c671a83043b44ff4740be9c" args="(const comple &amp;, const _zgbmatrix &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class__zgbmatrix.html">_zgbmatrix</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__zgbmatrix.html">_zgbmatrix</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*_zgbmatrix operator </p>

<p>Definition at line <a class="el" href="complex-__zgbmatrix_8hpp_source.html#l00003">3</a> of file <a class="el" href="complex-__zgbmatrix_8hpp_source.html">complex-_zgbmatrix.hpp</a>.</p>
<div class="fragment"><pre class="fragment">{VERBOSE_REPORT;
  zscal_((mat.<a class="code" href="class__zgbmatrix.html#a0a88723ded8d7728a8b90ddfd28e5d0c" title="lower band width">kl</a>+mat.<a class="code" href="class__zgbmatrix.html#a0b32db6f9ae374d5d390e24686433a77" title="upper band width">ku</a>+1)*mat.<a class="code" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6" title="matrix column size">n</a>, d, mat.<a class="code" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2" 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="a2c7cdee481455ef265dc77dea7cd03cf"></a><!-- doxytag: member="_zgbmatrix::m" ref="a2c7cdee481455ef265dc77dea7cd03cf" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="class__zgbmatrix.html#a2c7cdee481455ef265dc77dea7cd03cf">_zgbmatrix::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="__zgbmatrix_8hpp_source.html#l00009">9</a> of file <a class="el" href="__zgbmatrix_8hpp_source.html">_zgbmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">conjt()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00018">i()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00099">zgbmatrix::operator*=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00048">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00016">zgbmatrix::operator+=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00003">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">operator-()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00058">zgbmatrix::operator-=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00026">zgematrix::operator-=()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">write()</a>, and <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="a743983e0c14c2d3917b51c510ee957f6"></a><!-- doxytag: member="_zgbmatrix::n" ref="a743983e0c14c2d3917b51c510ee957f6" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long <a class="el" href="class__zgbmatrix.html#a743983e0c14c2d3917b51c510ee957f6">_zgbmatrix::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="__zgbmatrix_8hpp_source.html#l00010">10</a> of file <a class="el" href="__zgbmatrix_8hpp_source.html">_zgbmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">conjt()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00018">i()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00099">zgbmatrix::operator*=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00048">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00016">zgbmatrix::operator+=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00003">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">operator-()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00058">zgbmatrix::operator-=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00026">zgematrix::operator-=()</a>, <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">write()</a>, and <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>.</p>

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

<p>lower band width </p>

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

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">conjt()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00099">zgbmatrix::operator*=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00048">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00016">zgbmatrix::operator+=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00003">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">operator-()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00058">zgbmatrix::operator-=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00026">zgematrix::operator-=()</a>, <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">write()</a>, and <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>.</p>

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

<p>upper band width </p>

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

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00043">conj()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00056">conjt()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00099">zgbmatrix::operator*=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00048">zgematrix::operator*=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00003">operator+()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00016">zgbmatrix::operator+=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00003">zgematrix::operator+=()</a>, <a class="el" href="__zgbmatrix-__zgbmatrix_8hpp_source.html#l00057">operator-()</a>, <a class="el" href="zgbmatrix-__zgbmatrix_8hpp_source.html#l00058">zgbmatrix::operator-=()</a>, <a class="el" href="zgematrix-__zgbmatrix_8hpp_source.html#l00026">zgematrix::operator-=()</a>, <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00023">operator&lt;&lt;()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="__zgbmatrix-calc_8hpp_source.html#l00003">t()</a>, <a class="el" href="__zgbmatrix-cast_8hpp_source.html#l00003">to_zgematrix()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00042">write()</a>, and <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="aa218c85602f938d62eb6441a70ad73e2"></a><!-- doxytag: member="_zgbmatrix::array" ref="aa218c85602f938d62eb6441a70ad73e2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple* <a class="el" href="class__zgbmatrix.html#aa218c85602f938d62eb6441a70ad73e2">_zgbmatrix::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="__zgbmatrix_8hpp_source.html#l00013">13</a> of file <a class="el" href="__zgbmatrix_8hpp_source.html">_zgbmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00016">destroy()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-__zcovector_8hpp_source.html#l00003">operator*()</a>, <a class="el" href="__zgbmatrix-unary_8hpp_source.html#l00010">operator-()</a>, <a class="el" href="__zgbmatrix-complex_8hpp_source.html#l00011">operator/()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>, and <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00034">~_zgbmatrix()</a>.</p>

</div>
</div>
<a class="anchor" id="ab8b95e78780f362713cd2d149f19b401"></a><!-- doxytag: member="_zgbmatrix::darray" ref="ab8b95e78780f362713cd2d149f19b401" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">comple** <a class="el" href="class__zgbmatrix.html#ab8b95e78780f362713cd2d149f19b401">_zgbmatrix::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="__zgbmatrix_8hpp_source.html#l00014">14</a> of file <a class="el" href="__zgbmatrix_8hpp_source.html">_zgbmatrix.hpp</a>.</p>

<p>Referenced by <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00170">_()</a>, <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00003">_zgbmatrix()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00016">destroy()</a>, <a class="el" href="__zgbmatrix-misc_8hpp_source.html#l00003">nullify()</a>, <a class="el" href="__zgbmatrix-io_8hpp_source.html#l00003">operator()()</a>, <a class="el" href="zgbmatrix-misc_8hpp_source.html#l00072">zgbmatrix::shallow_copy()</a>, <a class="el" href="zgbmatrix-constructor_8hpp_source.html#l00037">zgbmatrix::zgbmatrix()</a>, and <a class="el" href="__zgbmatrix-constructor_8hpp_source.html#l00034">~_zgbmatrix()</a>.</p>

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