<!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"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>Cyclops Tensor Framework: CTF_int::tensor Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">Cyclops Tensor Framework
   </div>
   <div id="projectbrief">a parallel framework for tensor contractions</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li><a href="files.html"><span>Files</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>Data&#160;Structures</span></a></li>
      <li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('classCTF__int_1_1tensor.html','');});
</script>
<div id="doc-content">
<!-- 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>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark">&#160;</span>Pages</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>

<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Data Fields</a> &#124;
<a href="#pro-methods">Protected Member Functions</a>  </div>
  <div class="headertitle">
<div class="title">CTF_int::tensor Class Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>internal distributed tensor class  
 <a href="classCTF__int_1_1tensor.html#details">More...</a></p>

<p><code>#include &lt;<a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for CTF_int::tensor:</div>
<div class="dyncontent">
<div class="center"><img src="classCTF__int_1_1tensor__inherit__graph.png" border="0" usemap="#CTF__int_1_1tensor_inherit__map" alt="Inheritance graph"/></div>
<map name="CTF__int_1_1tensor_inherit__map" id="CTF__int_1_1tensor_inherit__map">
<area shape="rect" id="node2" href="classCTF_1_1Tensor.html" title="an instance of a tensor within a CTF world " alt="" coords="168,70,312,111"/><area shape="rect" id="node3" href="classCTF_1_1Matrix.html" title="Matrix class which encapsulates a 2D tensor. " alt="" coords="362,5,502,46"/><area shape="rect" id="node4" href="classCTF_1_1Scalar.html" title="Scalar class which encapsulates a 0D tensor. " alt="" coords="361,70,503,111"/><area shape="rect" id="node5" href="classCTF_1_1Vector.html" title="Vector class which encapsulates a 1D tensor. " alt="" coords="361,135,503,177"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for CTF_int::tensor:</div>
<div class="dyncontent">
<div class="center"><img src="classCTF__int_1_1tensor__coll__graph.png" border="0" usemap="#CTF__int_1_1tensor_coll__map" alt="Collaboration graph"/></div>
<map name="CTF__int_1_1tensor_coll__map" id="CTF__int_1_1tensor_coll__map">
<area shape="rect" id="node2" href="classCTF__int_1_1topology.html" title="CTF_int::topology" alt="" coords="5,109,131,136"/><area shape="rect" id="node5" href="classCTF_1_1World.html" title="an instance of the CTF library (world) on a MPI communicator " alt="" coords="80,200,171,227"/><area shape="rect" id="node3" href="classCTF__int_1_1CommData.html" title="CTF_int::CommData" alt="" coords="57,5,201,32"/><area shape="rect" id="node4" href="classCTF__int_1_1mapping.html" title="CTF_int::mapping" alt="" coords="195,200,321,227"/><area shape="rect" id="node6" href="classCTF__int_1_1algstrct.html" title="algstrct (algebraic structure) defines the elementwise operations computed in each tensor contraction..." alt="" coords="403,200,523,227"/></map>
<center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:aca0348910567ff37786b9ab98594780d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF_1_1Idx__Tensor.html">CTF::Idx_Tensor</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aca0348910567ff37786b9ab98594780d">operator[]</a> (char const *idx_map)</td></tr>
<tr class="memdesc:aca0348910567ff37786b9ab98594780d"><td class="mdescLeft">&#160;</td><td class="mdescRight">associated an index map with the tensor for future operation  <a href="#aca0348910567ff37786b9ab98594780d">More...</a><br/></td></tr>
<tr class="separator:aca0348910567ff37786b9ab98594780d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d7666f6822d86ec82d0b201b8d076f3"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0d7666f6822d86ec82d0b201b8d076f3">tensor</a> ()</td></tr>
<tr class="separator:a0d7666f6822d86ec82d0b201b8d076f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a582bf9f50a9304807a57db8abd71e5d9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a582bf9f50a9304807a57db8abd71e5d9">~tensor</a> ()</td></tr>
<tr class="memdesc:a582bf9f50a9304807a57db8abd71e5d9"><td class="mdescLeft">&#160;</td><td class="mdescRight">class free self  <a href="#a582bf9f50a9304807a57db8abd71e5d9">More...</a><br/></td></tr>
<tr class="separator:a582bf9f50a9304807a57db8abd71e5d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3f0b2bc09705d0d4d124a7dc93484b93"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a3f0b2bc09705d0d4d124a7dc93484b93">free_self</a> ()</td></tr>
<tr class="memdesc:a3f0b2bc09705d0d4d124a7dc93484b93"><td class="mdescLeft">&#160;</td><td class="mdescRight">destructor  <a href="#a3f0b2bc09705d0d4d124a7dc93484b93">More...</a><br/></td></tr>
<tr class="separator:a3f0b2bc09705d0d4d124a7dc93484b93"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2915ace9df413cc5c32049d178287651"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *other, bool copy=1, bool alloc_data=1)</td></tr>
<tr class="memdesc:a2915ace9df413cc5c32049d178287651"><td class="mdescLeft">&#160;</td><td class="mdescRight">creates tensor copy, unfolds other if other is folded  <a href="#a2915ace9df413cc5c32049d178287651">More...</a><br/></td></tr>
<tr class="separator:a2915ace9df413cc5c32049d178287651"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c65c97c142c856775718feadcf5f676"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a1c65c97c142c856775718feadcf5f676">tensor</a> (<a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *<a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, int <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, int const *edge_len, int const *<a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="classCTF_1_1World.html">CTF::World</a> *<a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>, bool alloc_data=false, char const *<a class="el" href="classCTF__int_1_1tensor.html#ac6eebbc9c29b4f7f3743f79780a043e7">name</a>=NULL, bool <a class="el" href="classCTF__int_1_1tensor.html#ad9879aa3c27ea65feead0fe0a7e5e966">profile</a>=1)</td></tr>
<tr class="memdesc:a1c65c97c142c856775718feadcf5f676"><td class="mdescLeft">&#160;</td><td class="mdescRight">defines a tensor object with some mapping (if alloc_data)  <a href="#a1c65c97c142c856775718feadcf5f676">More...</a><br/></td></tr>
<tr class="separator:a1c65c97c142c856775718feadcf5f676"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab2ec811121935a4404bbe9bb6268f5c4"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ab2ec811121935a4404bbe9bb6268f5c4">calc_phase</a> () const </td></tr>
<tr class="memdesc:ab2ec811121935a4404bbe9bb6268f5c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">compute the cyclic phase of each tensor dimension  <a href="#ab2ec811121935a4404bbe9bb6268f5c4">More...</a><br/></td></tr>
<tr class="separator:ab2ec811121935a4404bbe9bb6268f5c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a7b337f02b2fc20ca4b255a66408b4d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0a7b337f02b2fc20ca4b255a66408b4d">calc_tot_phase</a> () const </td></tr>
<tr class="memdesc:a0a7b337f02b2fc20ca4b255a66408b4d"><td class="mdescLeft">&#160;</td><td class="mdescRight">calculate the total number of blocks of the tensor  <a href="#a0a7b337f02b2fc20ca4b255a66408b4d">More...</a><br/></td></tr>
<tr class="separator:a0a7b337f02b2fc20ca4b255a66408b4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab75781544f88bc1b89dcd2c3ebbd9ff1"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ab75781544f88bc1b89dcd2c3ebbd9ff1">calc_nvirt</a> () const </td></tr>
<tr class="memdesc:ab75781544f88bc1b89dcd2c3ebbd9ff1"><td class="mdescLeft">&#160;</td><td class="mdescRight">calculate virtualization factor of tensor return virtualization factor  <a href="#ab75781544f88bc1b89dcd2c3ebbd9ff1">More...</a><br/></td></tr>
<tr class="separator:ab75781544f88bc1b89dcd2c3ebbd9ff1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a338df65dcf108d7e06d8c27df1d44639"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a338df65dcf108d7e06d8c27df1d44639">set_padding</a> ()</td></tr>
<tr class="memdesc:a338df65dcf108d7e06d8c27df1d44639"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets padding and local size of a tensor given a mapping  <a href="#a338df65dcf108d7e06d8c27df1d44639">More...</a><br/></td></tr>
<tr class="separator:a338df65dcf108d7e06d8c27df1d44639"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8fde26849a05f5ad3d6913f90f53447"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa8fde26849a05f5ad3d6913f90f53447">set_zero</a> ()</td></tr>
<tr class="memdesc:aa8fde26849a05f5ad3d6913f90f53447"><td class="mdescLeft">&#160;</td><td class="mdescRight">elects a mapping and sets tensor data to zero  <a href="#aa8fde26849a05f5ad3d6913f90f53447">More...</a><br/></td></tr>
<tr class="separator:aa8fde26849a05f5ad3d6913f90f53447"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeecce683c46bd4ec2b1c106f2863c0f7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aeecce683c46bd4ec2b1c106f2863c0f7">set</a> (char const *val)</td></tr>
<tr class="memdesc:aeecce683c46bd4ec2b1c106f2863c0f7"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets tensor data to val  <a href="#aeecce683c46bd4ec2b1c106f2863c0f7">More...</a><br/></td></tr>
<tr class="separator:aeecce683c46bd4ec2b1c106f2863c0f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4deee6307957ff58f22d40b6f60be556"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a4deee6307957ff58f22d40b6f60be556">zero_out_padding</a> ()</td></tr>
<tr class="memdesc:a4deee6307957ff58f22d40b6f60be556"><td class="mdescLeft">&#160;</td><td class="mdescRight">sets padded portion of tensor to zero (this should be maintained internally)  <a href="#a4deee6307957ff58f22d40b6f60be556">More...</a><br/></td></tr>
<tr class="separator:a4deee6307957ff58f22d40b6f60be556"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7f74fd6d0bfa79b1da955f11cf292eb"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ad7f74fd6d0bfa79b1da955f11cf292eb">print_map</a> (FILE *stream=stdout, bool allcall=1) const </td></tr>
<tr class="memdesc:ad7f74fd6d0bfa79b1da955f11cf292eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">displays mapping information  <a href="#ad7f74fd6d0bfa79b1da955f11cf292eb">More...</a><br/></td></tr>
<tr class="separator:ad7f74fd6d0bfa79b1da955f11cf292eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4ae83a8adc60604d3cd6bbe88531eb6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa4ae83a8adc60604d3cd6bbe88531eb6">set_name</a> (char const *<a class="el" href="classCTF__int_1_1tensor.html#ac6eebbc9c29b4f7f3743f79780a043e7">name</a>)</td></tr>
<tr class="memdesc:aa4ae83a8adc60604d3cd6bbe88531eb6"><td class="mdescLeft">&#160;</td><td class="mdescRight">set the tensor name  <a href="#aa4ae83a8adc60604d3cd6bbe88531eb6">More...</a><br/></td></tr>
<tr class="separator:aa4ae83a8adc60604d3cd6bbe88531eb6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bc18d3dcc48828d16a26e947169da44"><td class="memItemLeft" align="right" valign="top">char const *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a8bc18d3dcc48828d16a26e947169da44">get_name</a> () const </td></tr>
<tr class="memdesc:a8bc18d3dcc48828d16a26e947169da44"><td class="mdescLeft">&#160;</td><td class="mdescRight">get the tensor name  <a href="#a8bc18d3dcc48828d16a26e947169da44">More...</a><br/></td></tr>
<tr class="separator:a8bc18d3dcc48828d16a26e947169da44"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71910487d8f60ffe9cf8ec4d5b07d75a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a71910487d8f60ffe9cf8ec4d5b07d75a">profile_on</a> ()</td></tr>
<tr class="memdesc:a71910487d8f60ffe9cf8ec4d5b07d75a"><td class="mdescLeft">&#160;</td><td class="mdescRight">turn on profiling  <a href="#a71910487d8f60ffe9cf8ec4d5b07d75a">More...</a><br/></td></tr>
<tr class="separator:a71910487d8f60ffe9cf8ec4d5b07d75a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a050bc339877e05ff26e5d7c49cc6bdd3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a050bc339877e05ff26e5d7c49cc6bdd3">profile_off</a> ()</td></tr>
<tr class="memdesc:a050bc339877e05ff26e5d7c49cc6bdd3"><td class="mdescLeft">&#160;</td><td class="mdescRight">turn off profiling  <a href="#a050bc339877e05ff26e5d7c49cc6bdd3">More...</a><br/></td></tr>
<tr class="separator:a050bc339877e05ff26e5d7c49cc6bdd3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e87e703e10c7edb3eb33c1ff7919868"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0e87e703e10c7edb3eb33c1ff7919868">get_raw_data</a> (char **<a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, int64_t *<a class="el" href="classCTF__int_1_1tensor.html#ae90b56ccd442adbb0205119c600c9c1a">size</a>) const </td></tr>
<tr class="memdesc:a0e87e703e10c7edb3eb33c1ff7919868"><td class="mdescLeft">&#160;</td><td class="mdescRight">get raw data pointer without copy WARNING: includes padding  <a href="#a0e87e703e10c7edb3eb33c1ff7919868">More...</a><br/></td></tr>
<tr class="separator:a0e87e703e10c7edb3eb33c1ff7919868"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1df17d4129ad9efb4f0d6554149d059f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write</a> (int64_t num_pair, char const *alpha, char const *beta, char *mapped_data, char const rw='w')</td></tr>
<tr class="memdesc:a1df17d4129ad9efb4f0d6554149d059f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add tensor data new=alpha*new+beta*old with &lt;key, value&gt; pairs where key is the global index for the value.  <a href="#a1df17d4129ad9efb4f0d6554149d059f">More...</a><br/></td></tr>
<tr class="separator:a1df17d4129ad9efb4f0d6554149d059f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a244fffc1e559ad12fd42ef25c8250f4c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a244fffc1e559ad12fd42ef25c8250f4c">read</a> (int64_t num_pair, char const *alpha, char const *beta, char *const mapped_data)</td></tr>
<tr class="memdesc:a244fffc1e559ad12fd42ef25c8250f4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">read tensor data with &lt;key, value&gt; pairs where key is the global index for the value, which gets filled in with beta times the old values plus alpha times the values read from the tensor.  <a href="#a244fffc1e559ad12fd42ef25c8250f4c">More...</a><br/></td></tr>
<tr class="separator:a244fffc1e559ad12fd42ef25c8250f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3c9dc1dd1a70bd3ad33cf7b547d4fa65"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read</a> (char const *idx, <a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;prl, <a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;blk, bool unpack)</td></tr>
<tr class="memdesc:a3c9dc1dd1a70bd3ad33cf7b547d4fa65"><td class="mdescLeft">&#160;</td><td class="mdescRight">returns local data of tensor with parallel distribution prl and local blocking blk  <a href="#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">More...</a><br/></td></tr>
<tr class="separator:a3c9dc1dd1a70bd3ad33cf7b547d4fa65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08ca1838f6db21755082af8146c02d67"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a08ca1838f6db21755082af8146c02d67">read</a> (int64_t num_pair, char *const mapped_data)</td></tr>
<tr class="memdesc:a08ca1838f6db21755082af8146c02d67"><td class="mdescLeft">&#160;</td><td class="mdescRight">read tensor data with &lt;key, value&gt; pairs where key is the global index for the value, which gets filled in.  <a href="#a08ca1838f6db21755082af8146c02d67">More...</a><br/></td></tr>
<tr class="separator:a08ca1838f6db21755082af8146c02d67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a156694ac1b80fba3d326d8cf533f7087"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a156694ac1b80fba3d326d8cf533f7087">allread</a> (int64_t *num_pair, char **all_data)</td></tr>
<tr class="memdesc:a156694ac1b80fba3d326d8cf533f7087"><td class="mdescLeft">&#160;</td><td class="mdescRight">read entire tensor with each processor (in packed layout). WARNING: will use an 'unscalable' amount of memory.  <a href="#a156694ac1b80fba3d326d8cf533f7087">More...</a><br/></td></tr>
<tr class="separator:a156694ac1b80fba3d326d8cf533f7087"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e98694e8c1bd49a3577667f54f91a58"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a2e98694e8c1bd49a3577667f54f91a58">allread</a> (int64_t *num_pair, char *all_data)</td></tr>
<tr class="memdesc:a2e98694e8c1bd49a3577667f54f91a58"><td class="mdescLeft">&#160;</td><td class="mdescRight">read entire tensor with each processor (in packed layout). WARNING: will use an 'unscalable' amount of memory.  <a href="#a2e98694e8c1bd49a3577667f54f91a58">More...</a><br/></td></tr>
<tr class="separator:a2e98694e8c1bd49a3577667f54f91a58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad00e69a78e633b35fa82fea1dd0e2ba2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice</a> (int const *offsets_B, int const *ends_B, char const *beta, <a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *A, int const *offsets_A, int const *ends_A, char const *alpha)</td></tr>
<tr class="memdesc:ad00e69a78e633b35fa82fea1dd0e2ba2"><td class="mdescLeft">&#160;</td><td class="mdescRight">cuts out a slice (block) of this tensor = B B[offsets,ends)=beta*B[offsets,ends) + alpha*A[offsets_A,ends_A)  <a href="#ad00e69a78e633b35fa82fea1dd0e2ba2">More...</a><br/></td></tr>
<tr class="separator:ad00e69a78e633b35fa82fea1dd0e2ba2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94adf90f6737329650d5b39b78c7a096"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *A, int *const *permutation_A, char const *alpha, int *const *permutation_B, char const *beta)</td></tr>
<tr class="separator:a94adf90f6737329650d5b39b78c7a096"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e0eb27643a49793a9f7f8e3f438bd08"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local</a> (int64_t *num_pair, char **mapped_data) const </td></tr>
<tr class="memdesc:a0e0eb27643a49793a9f7f8e3f438bd08"><td class="mdescLeft">&#160;</td><td class="mdescRight">read tensor data pairs local to processor.  <a href="#a0e0eb27643a49793a9f7f8e3f438bd08">More...</a><br/></td></tr>
<tr class="separator:a0e0eb27643a49793a9f7f8e3f438bd08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4071ae4b55fb8eef4df6f837fc2ee90d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *B)</td></tr>
<tr class="memdesc:a4071ae4b55fb8eef4df6f837fc2ee90d"><td class="mdescLeft">&#160;</td><td class="mdescRight">copy A into this (B). Realloc if necessary  <a href="#a4071ae4b55fb8eef4df6f837fc2ee90d">More...</a><br/></td></tr>
<tr class="separator:a4071ae4b55fb8eef4df6f837fc2ee90d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67c818faec6854b869b446f0df368b4e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a67c818faec6854b869b446f0df368b4e">reduce_sum</a> (char *result)</td></tr>
<tr class="memdesc:a67c818faec6854b869b446f0df368b4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs an elementwise summation reduction on a tensor.  <a href="#a67c818faec6854b869b446f0df368b4e">More...</a><br/></td></tr>
<tr class="separator:a67c818faec6854b869b446f0df368b4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acf04e588a4e88f8afeb733b77f38e127"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#acf04e588a4e88f8afeb733b77f38e127">reduce_sum</a> (char *result, <a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *sr_other)</td></tr>
<tr class="memdesc:acf04e588a4e88f8afeb733b77f38e127"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs an elementwise summation reduction on a tensor with summation defined by sr_other.  <a href="#acf04e588a4e88f8afeb733b77f38e127">More...</a><br/></td></tr>
<tr class="separator:acf04e588a4e88f8afeb733b77f38e127"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5f830c630eaf94b2c181223830257c3d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a5f830c630eaf94b2c181223830257c3d">reduce_sumabs</a> (char *result)</td></tr>
<tr class="memdesc:a5f830c630eaf94b2c181223830257c3d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs an elementwise absolute value summation reduction on a tensor.  <a href="#a5f830c630eaf94b2c181223830257c3d">More...</a><br/></td></tr>
<tr class="separator:a5f830c630eaf94b2c181223830257c3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f65f4daf74164b5615afa0264bd4108"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0f65f4daf74164b5615afa0264bd4108">reduce_sumabs</a> (char *result, <a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *sr_other)</td></tr>
<tr class="memdesc:a0f65f4daf74164b5615afa0264bd4108"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs an elementwise absolute value summation reduction on a tensor.  <a href="#a0f65f4daf74164b5615afa0264bd4108">More...</a><br/></td></tr>
<tr class="separator:a0f65f4daf74164b5615afa0264bd4108"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a060c682068cbea1c17965157bf14447e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a060c682068cbea1c17965157bf14447e">reduce_sumsq</a> (char *result)</td></tr>
<tr class="memdesc:a060c682068cbea1c17965157bf14447e"><td class="mdescLeft">&#160;</td><td class="mdescRight">computes the sum of squares of the elements  <a href="#a060c682068cbea1c17965157bf14447e">More...</a><br/></td></tr>
<tr class="separator:a060c682068cbea1c17965157bf14447e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aabcb0312efb496017c5ea18a580562b9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aabcb0312efb496017c5ea18a580562b9">get_max_abs</a> (int n, char *<a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>) const </td></tr>
<tr class="memdesc:aabcb0312efb496017c5ea18a580562b9"><td class="mdescLeft">&#160;</td><td class="mdescRight">obtains the largest n elements (in absolute value) of the tensor  <a href="#aabcb0312efb496017c5ea18a580562b9">More...</a><br/></td></tr>
<tr class="separator:aabcb0312efb496017c5ea18a580562b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7cdeb34e3340d9dc67010ebc170e896"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#af7cdeb34e3340d9dc67010ebc170e896">print</a> (FILE *fp=stdout, char const *cutoff=NULL) const </td></tr>
<tr class="memdesc:af7cdeb34e3340d9dc67010ebc170e896"><td class="mdescLeft">&#160;</td><td class="mdescRight">prints tensor data to file using process 0  <a href="#af7cdeb34e3340d9dc67010ebc170e896">More...</a><br/></td></tr>
<tr class="separator:af7cdeb34e3340d9dc67010ebc170e896"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa8949343fdaccbebcc107274e97f6777"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare</a> (const <a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *A, FILE *fp, char const *cutoff)</td></tr>
<tr class="memdesc:aa8949343fdaccbebcc107274e97f6777"><td class="mdescLeft">&#160;</td><td class="mdescRight">prints two sets of tensor data side-by-side to file using process 0  <a href="#aa8949343fdaccbebcc107274e97f6777">More...</a><br/></td></tr>
<tr class="separator:aa8949343fdaccbebcc107274e97f6777"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a920ef76415a8a63f078d9fa8f751a5b8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a920ef76415a8a63f078d9fa8f751a5b8">orient_subworld</a> (<a class="el" href="classCTF_1_1World.html">CTF::World</a> *greater_world, int &amp;bw_mirror_rank, int &amp;fw_mirror_rank, <a class="el" href="classCTF__int_1_1distribution.html">distribution</a> *&amp;odst, char **sub_buffer_)</td></tr>
<tr class="memdesc:a920ef76415a8a63f078d9fa8f751a5b8"><td class="mdescLeft">&#160;</td><td class="mdescRight">maps data from this world (subcomm) to the correct order of processors with respect to a parent (greater_world) comm  <a href="#a920ef76415a8a63f078d9fa8f751a5b8">More...</a><br/></td></tr>
<tr class="separator:a920ef76415a8a63f078d9fa8f751a5b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfddbdeaaa4a7dfb1c87659b75c70a65"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#adfddbdeaaa4a7dfb1c87659b75c70a65">add_to_subworld</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *tsr_sub, char const *alpha, char const *beta)</td></tr>
<tr class="memdesc:adfddbdeaaa4a7dfb1c87659b75c70a65"><td class="mdescLeft">&#160;</td><td class="mdescRight">accumulates this tensor to a tensor object defined on a different world  <a href="#adfddbdeaaa4a7dfb1c87659b75c70a65">More...</a><br/></td></tr>
<tr class="separator:adfddbdeaaa4a7dfb1c87659b75c70a65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdbb0c2c1df4b2114cbf33714a68a82e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#afdbb0c2c1df4b2114cbf33714a68a82e">add_from_subworld</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *tsr_sub, char const *alpha, char const *beta)</td></tr>
<tr class="memdesc:afdbb0c2c1df4b2114cbf33714a68a82e"><td class="mdescLeft">&#160;</td><td class="mdescRight">accumulates this tensor from a tensor object defined on a different world  <a href="#afdbb0c2c1df4b2114cbf33714a68a82e">More...</a><br/></td></tr>
<tr class="separator:afdbb0c2c1df4b2114cbf33714a68a82e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a781432a987886c2478200d8d7472c6d4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a781432a987886c2478200d8d7472c6d4">unfold</a> ()</td></tr>
<tr class="memdesc:a781432a987886c2478200d8d7472c6d4"><td class="mdescLeft">&#160;</td><td class="mdescRight">undo the folding of a local tensor block unsets is_folded and deletes rec_tsr  <a href="#a781432a987886c2478200d8d7472c6d4">More...</a><br/></td></tr>
<tr class="separator:a781432a987886c2478200d8d7472c6d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a314dfeb62e80fd5bfea22903c8febd97"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a314dfeb62e80fd5bfea22903c8febd97">fold</a> (int nfold, int const *fold_idx, int const *idx_map, int *all_fdim, int **all_flen)</td></tr>
<tr class="memdesc:a314dfeb62e80fd5bfea22903c8febd97"><td class="mdescLeft">&#160;</td><td class="mdescRight">fold a tensor by putting the symmetry-preserved portion in the leading dimensions of the tensor sets is_folded and creates rec_tsr with aliased data  <a href="#a314dfeb62e80fd5bfea22903c8febd97">More...</a><br/></td></tr>
<tr class="separator:a314dfeb62e80fd5bfea22903c8febd97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0f5757dbb7fcef64106e1224245a925"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *other)</td></tr>
<tr class="memdesc:ac0f5757dbb7fcef64106e1224245a925"><td class="mdescLeft">&#160;</td><td class="mdescRight">pulls data from an tensor with an aliased buffer  <a href="#ac0f5757dbb7fcef64106e1224245a925">More...</a><br/></td></tr>
<tr class="separator:ac0f5757dbb7fcef64106e1224245a925"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92ca1ca094b3504cc856bb03aa580b1f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a92ca1ca094b3504cc856bb03aa580b1f">clear_mapping</a> ()</td></tr>
<tr class="memdesc:a92ca1ca094b3504cc856bb03aa580b1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">zeros out mapping  <a href="#a92ca1ca094b3504cc856bb03aa580b1f">More...</a><br/></td></tr>
<tr class="separator:a92ca1ca094b3504cc856bb03aa580b1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c3b7b2282d4041df613607d44cfb5df"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a2c3b7b2282d4041df613607d44cfb5df">redistribute</a> (<a class="el" href="classCTF__int_1_1distribution.html">distribution</a> const &amp;old_dist, int const *old_offsets=NULL, int *const *old_permutation=NULL, int const *new_offsets=NULL, int *const *new_permutation=NULL)</td></tr>
<tr class="memdesc:a2c3b7b2282d4041df613607d44cfb5df"><td class="mdescLeft">&#160;</td><td class="mdescRight">permutes the data of a tensor to its new layout  <a href="#a2c3b7b2282d4041df613607d44cfb5df">More...</a><br/></td></tr>
<tr class="separator:a2c3b7b2282d4041df613607d44cfb5df"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad41a4ca98fba6a5eaf0aada092c83f4e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ad41a4ca98fba6a5eaf0aada092c83f4e">map_tensor_rem</a> (int num_phys_dims, <a class="el" href="classCTF__int_1_1CommData.html">CommData</a> *phys_comm, int fill=0)</td></tr>
<tr class="memdesc:ad41a4ca98fba6a5eaf0aada092c83f4e"><td class="mdescLeft">&#160;</td><td class="mdescRight">map the remainder of a tensor  <a href="#ad41a4ca98fba6a5eaf0aada092c83f4e">More...</a><br/></td></tr>
<tr class="separator:ad41a4ca98fba6a5eaf0aada092c83f4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af963f03f8410e2af6dac15f8e16c87bc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#af963f03f8410e2af6dac15f8e16c87bc">extract_diag</a> (int const *idx_map, int rw, <a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&amp;new_tsr, int **idx_map_new)</td></tr>
<tr class="memdesc:af963f03f8410e2af6dac15f8e16c87bc"><td class="mdescLeft">&#160;</td><td class="mdescRight">extracts the diagonal of a tensor if the index map specifies to do so  <a href="#af963f03f8410e2af6dac15f8e16c87bc">More...</a><br/></td></tr>
<tr class="separator:af963f03f8410e2af6dac15f8e16c87bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:a1c9b106ed78c5529d50ea1ac4cd3d813"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF_1_1World.html">CTF::World</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a></td></tr>
<tr class="memdesc:a1c9b106ed78c5529d50ea1ac4cd3d813"><td class="mdescLeft">&#160;</td><td class="mdescRight">distributed processor context on which tensor is defined  <a href="#a1c9b106ed78c5529d50ea1ac4cd3d813">More...</a><br/></td></tr>
<tr class="separator:a1c9b106ed78c5529d50ea1ac4cd3d813"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a95e7d747c8e824d47c246ba1d5b283b7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a></td></tr>
<tr class="memdesc:a95e7d747c8e824d47c246ba1d5b283b7"><td class="mdescLeft">&#160;</td><td class="mdescRight">algstrct on which tensor elements and operations are defined  <a href="#a95e7d747c8e824d47c246ba1d5b283b7">More...</a><br/></td></tr>
<tr class="separator:a95e7d747c8e824d47c246ba1d5b283b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a01d1845d3407020e5c3724ac9a8ede66"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a></td></tr>
<tr class="memdesc:a01d1845d3407020e5c3724ac9a8ede66"><td class="mdescLeft">&#160;</td><td class="mdescRight">symmetries among tensor dimensions  <a href="#a01d1845d3407020e5c3724ac9a8ede66">More...</a><br/></td></tr>
<tr class="separator:a01d1845d3407020e5c3724ac9a8ede66"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a248c9ece4f75adfdc25599b7900ab1ef"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a></td></tr>
<tr class="memdesc:a248c9ece4f75adfdc25599b7900ab1ef"><td class="mdescLeft">&#160;</td><td class="mdescRight">number of tensor dimensions  <a href="#a248c9ece4f75adfdc25599b7900ab1ef">More...</a><br/></td></tr>
<tr class="separator:a248c9ece4f75adfdc25599b7900ab1ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab10166c977c707184e26c026c5b11fc6"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a></td></tr>
<tr class="memdesc:ab10166c977c707184e26c026c5b11fc6"><td class="mdescLeft">&#160;</td><td class="mdescRight">unpadded tensor edge lengths  <a href="#ab10166c977c707184e26c026c5b11fc6">More...</a><br/></td></tr>
<tr class="separator:ab10166c977c707184e26c026c5b11fc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec0bb6504e2ad703ec7b674ef0d984ac"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aec0bb6504e2ad703ec7b674ef0d984ac">pad_edge_len</a></td></tr>
<tr class="memdesc:aec0bb6504e2ad703ec7b674ef0d984ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">padded tensor edge lengths  <a href="#aec0bb6504e2ad703ec7b674ef0d984ac">More...</a><br/></td></tr>
<tr class="separator:aec0bb6504e2ad703ec7b674ef0d984ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae011d15d2bfec4b627344604d82adab5"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ae011d15d2bfec4b627344604d82adab5">padding</a></td></tr>
<tr class="memdesc:ae011d15d2bfec4b627344604d82adab5"><td class="mdescLeft">&#160;</td><td class="mdescRight">padding along each edge length (less than distribution phase)  <a href="#ae011d15d2bfec4b627344604d82adab5">More...</a><br/></td></tr>
<tr class="separator:ae011d15d2bfec4b627344604d82adab5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6eebbc9c29b4f7f3743f79780a043e7"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ac6eebbc9c29b4f7f3743f79780a043e7">name</a></td></tr>
<tr class="memdesc:ac6eebbc9c29b4f7f3743f79780a043e7"><td class="mdescLeft">&#160;</td><td class="mdescRight">name given to tensor  <a href="#ac6eebbc9c29b4f7f3743f79780a043e7">More...</a><br/></td></tr>
<tr class="separator:ac6eebbc9c29b4f7f3743f79780a043e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af47c0013fc320fc96fb601f38e4c3a77"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#af47c0013fc320fc96fb601f38e4c3a77">is_scp_padded</a></td></tr>
<tr class="memdesc:af47c0013fc320fc96fb601f38e4c3a77"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether tensor data has additional padding  <a href="#af47c0013fc320fc96fb601f38e4c3a77">More...</a><br/></td></tr>
<tr class="separator:af47c0013fc320fc96fb601f38e4c3a77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa53a002f8e37203fc0275c0776c2e976"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa53a002f8e37203fc0275c0776c2e976">scp_padding</a></td></tr>
<tr class="memdesc:aa53a002f8e37203fc0275c0776c2e976"><td class="mdescLeft">&#160;</td><td class="mdescRight">additional padding, may be greater than ScaLAPACK phase  <a href="#aa53a002f8e37203fc0275c0776c2e976">More...</a><br/></td></tr>
<tr class="separator:aa53a002f8e37203fc0275c0776c2e976"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d0ba1dede97462aa9f24796e2c434e6"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a4d0ba1dede97462aa9f24796e2c434e6">sym_table</a></td></tr>
<tr class="memdesc:a4d0ba1dede97462aa9f24796e2c434e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">order-by-order table of dimensional symmetry relations  <a href="#a4d0ba1dede97462aa9f24796e2c434e6">More...</a><br/></td></tr>
<tr class="separator:a4d0ba1dede97462aa9f24796e2c434e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a0f727aa36ba7d74a6fd788e7ab99f1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a0a0f727aa36ba7d74a6fd788e7ab99f1">is_mapped</a></td></tr>
<tr class="memdesc:a0a0f727aa36ba7d74a6fd788e7ab99f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether a mapping has been selected  <a href="#a0a0f727aa36ba7d74a6fd788e7ab99f1">More...</a><br/></td></tr>
<tr class="separator:a0a0f727aa36ba7d74a6fd788e7ab99f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd917fd431d94d10ce50c10161fc6a8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1topology.html">topology</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a></td></tr>
<tr class="memdesc:afd917fd431d94d10ce50c10161fc6a8c"><td class="mdescLeft">&#160;</td><td class="mdescRight">topology to which the tensor is mapped  <a href="#afd917fd431d94d10ce50c10161fc6a8c">More...</a><br/></td></tr>
<tr class="separator:afd917fd431d94d10ce50c10161fc6a8c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa5a865e85b2b340bec06c6547513df82"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1mapping.html">mapping</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a></td></tr>
<tr class="memdesc:aa5a865e85b2b340bec06c6547513df82"><td class="mdescLeft">&#160;</td><td class="mdescRight">mappings of each tensor dimension onto topology dimensions  <a href="#aa5a865e85b2b340bec06c6547513df82">More...</a><br/></td></tr>
<tr class="separator:aa5a865e85b2b340bec06c6547513df82"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae90b56ccd442adbb0205119c600c9c1a"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ae90b56ccd442adbb0205119c600c9c1a">size</a></td></tr>
<tr class="memdesc:ae90b56ccd442adbb0205119c600c9c1a"><td class="mdescLeft">&#160;</td><td class="mdescRight">current size of local tensor data chunk (mapping-dependent)  <a href="#ae90b56ccd442adbb0205119c600c9c1a">More...</a><br/></td></tr>
<tr class="separator:ae90b56ccd442adbb0205119c600c9c1a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9394d302202f0b12c77319e5a8c3fc64"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a9394d302202f0b12c77319e5a8c3fc64">is_folded</a></td></tr>
<tr class="memdesc:a9394d302202f0b12c77319e5a8c3fc64"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether the data is folded/transposed into a (lower-order) tensor  <a href="#a9394d302202f0b12c77319e5a8c3fc64">More...</a><br/></td></tr>
<tr class="separator:a9394d302202f0b12c77319e5a8c3fc64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a80cdb7beb76590808b65c519a1622871"><td class="memItemLeft" align="right" valign="top">int *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a80cdb7beb76590808b65c519a1622871">inner_ordering</a></td></tr>
<tr class="memdesc:a80cdb7beb76590808b65c519a1622871"><td class="mdescLeft">&#160;</td><td class="mdescRight">ordering of the dimensions according to which the tensori s folded  <a href="#a80cdb7beb76590808b65c519a1622871">More...</a><br/></td></tr>
<tr class="separator:a80cdb7beb76590808b65c519a1622871"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7143cc7f19beb0346925d449fdfb595c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a7143cc7f19beb0346925d449fdfb595c">rec_tsr</a></td></tr>
<tr class="memdesc:a7143cc7f19beb0346925d449fdfb595c"><td class="mdescLeft">&#160;</td><td class="mdescRight">representation of folded tensor (shares data pointer)  <a href="#a7143cc7f19beb0346925d449fdfb595c">More...</a><br/></td></tr>
<tr class="separator:a7143cc7f19beb0346925d449fdfb595c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab5d7420e4f2ec1a15b5d029723510957"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ab5d7420e4f2ec1a15b5d029723510957">is_cyclic</a></td></tr>
<tr class="memdesc:ab5d7420e4f2ec1a15b5d029723510957"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether the tensor data is cyclically distributed (blocked if false)  <a href="#ab5d7420e4f2ec1a15b5d029723510957">More...</a><br/></td></tr>
<tr class="separator:ab5d7420e4f2ec1a15b5d029723510957"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a78819ce884044b706a4c2407c97ba729"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a78819ce884044b706a4c2407c97ba729">is_data_aliased</a></td></tr>
<tr class="memdesc:a78819ce884044b706a4c2407c97ba729"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether the tensor data is an alias of another tensor object's data  <a href="#a78819ce884044b706a4c2407c97ba729">More...</a><br/></td></tr>
<tr class="separator:a78819ce884044b706a4c2407c97ba729"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ec4040dd8b93ecf75c8fbf4253b6073"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a1ec4040dd8b93ecf75c8fbf4253b6073">slay</a></td></tr>
<tr class="memdesc:a1ec4040dd8b93ecf75c8fbf4253b6073"><td class="mdescLeft">&#160;</td><td class="mdescRight">tensor object associated with tensor object whose data pointer needs to be preserved, needed for ScaLAPACK wrapper FIXME: home buffer should presumably take care of this...  <a href="#a1ec4040dd8b93ecf75c8fbf4253b6073">More...</a><br/></td></tr>
<tr class="separator:a1ec4040dd8b93ecf75c8fbf4253b6073"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48672036dc4b0b8ad77f7ff195ccda77"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a></td></tr>
<tr class="memdesc:a48672036dc4b0b8ad77f7ff195ccda77"><td class="mdescLeft">&#160;</td><td class="mdescRight">if true tensor has a zero edge length, so is zero, which short-cuts stuff  <a href="#a48672036dc4b0b8ad77f7ff195ccda77">More...</a><br/></td></tr>
<tr class="separator:a48672036dc4b0b8ad77f7ff195ccda77"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b53be5506764ac20d297ba05faf8f35"><td class="memItemLeft" >union {</td></tr>
<tr class="memitem:aed15090c89ebe24fd7328957e1b9b382"><td class="memItemLeft" >&#160;&#160;&#160;char *&#160;&#160;&#160;<a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a></td></tr>
<tr class="separator:aed15090c89ebe24fd7328957e1b9b382"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a7ad310b30ff6c9150981478903ffa2"><td class="memItemLeft" >&#160;&#160;&#160;char *&#160;&#160;&#160;<a class="el" href="classCTF__int_1_1tensor.html#aeedfb90158cd104a867a975d853ed7e6">pairs</a></td></tr>
<tr class="separator:a7a7ad310b30ff6c9150981478903ffa2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7b53be5506764ac20d297ba05faf8f35"><td class="memItemLeft" valign="top">};&#160;</td><td class="memItemRight" valign="bottom"></td></tr>
<tr class="memdesc:a7b53be5506764ac20d297ba05faf8f35"><td class="mdescLeft">&#160;</td><td class="mdescRight">tensor data, either the data or the key-value pairs should exist at any given time  <a href="#a7b53be5506764ac20d297ba05faf8f35">More...</a><br/></td></tr>
<tr class="separator:a7b53be5506764ac20d297ba05faf8f35"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa7423735e014208b2d58f2b1fcf43ef6"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa7423735e014208b2d58f2b1fcf43ef6">has_home</a></td></tr>
<tr class="memdesc:aa7423735e014208b2d58f2b1fcf43ef6"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether the tensor has a home mapping/buffer  <a href="#aa7423735e014208b2d58f2b1fcf43ef6">More...</a><br/></td></tr>
<tr class="separator:aa7423735e014208b2d58f2b1fcf43ef6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a94a032fa1b4349db7faaabc17f34c0a0"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a94a032fa1b4349db7faaabc17f34c0a0">home_buffer</a></td></tr>
<tr class="memdesc:a94a032fa1b4349db7faaabc17f34c0a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">buffer associated with home mapping of tensor, to which it is returned  <a href="#a94a032fa1b4349db7faaabc17f34c0a0">More...</a><br/></td></tr>
<tr class="separator:a94a032fa1b4349db7faaabc17f34c0a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa60f1476a89a8da0d22ce5e3db05f308"><td class="memItemLeft" align="right" valign="top">int64_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#aa60f1476a89a8da0d22ce5e3db05f308">home_size</a></td></tr>
<tr class="memdesc:aa60f1476a89a8da0d22ce5e3db05f308"><td class="mdescLeft">&#160;</td><td class="mdescRight">size of home buffer  <a href="#aa60f1476a89a8da0d22ce5e3db05f308">More...</a><br/></td></tr>
<tr class="separator:aa60f1476a89a8da0d22ce5e3db05f308"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0874aacfaab789ea316c8e8e374a5d1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ad0874aacfaab789ea316c8e8e374a5d1">is_home</a></td></tr>
<tr class="memdesc:ad0874aacfaab789ea316c8e8e374a5d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether the latest tensor data is in the home buffer  <a href="#ad0874aacfaab789ea316c8e8e374a5d1">More...</a><br/></td></tr>
<tr class="separator:ad0874aacfaab789ea316c8e8e374a5d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9879aa3c27ea65feead0fe0a7e5e966"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ad9879aa3c27ea65feead0fe0a7e5e966">profile</a></td></tr>
<tr class="memdesc:ad9879aa3c27ea65feead0fe0a7e5e966"><td class="mdescLeft">&#160;</td><td class="mdescRight">whether profiling should be done for contractions/sums involving this tensor  <a href="#ad9879aa3c27ea65feead0fe0a7e5e966">More...</a><br/></td></tr>
<tr class="separator:ad9879aa3c27ea65feead0fe0a7e5e966"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a1efff834588edb7ea25c7951543e19a5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a1efff834588edb7ea25c7951543e19a5">init</a> (<a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *<a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, int <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, int const *edge_len, int const *<a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="classCTF_1_1World.html">CTF::World</a> *<a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>, bool alloc_data, char const *<a class="el" href="classCTF__int_1_1tensor.html#ac6eebbc9c29b4f7f3743f79780a043e7">name</a>, bool <a class="el" href="classCTF__int_1_1tensor.html#ad9879aa3c27ea65feead0fe0a7e5e966">profile</a>)</td></tr>
<tr class="memdesc:a1efff834588edb7ea25c7951543e19a5"><td class="mdescLeft">&#160;</td><td class="mdescRight">initializes tensor data  <a href="#a1efff834588edb7ea25c7951543e19a5">More...</a><br/></td></tr>
<tr class="separator:a1efff834588edb7ea25c7951543e19a5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae94379b8794e1fd1e2a19fe0aa25423f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classCTF__int_1_1PairIterator.html">PairIterator</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ae94379b8794e1fd1e2a19fe0aa25423f">read_all_pairs</a> (int64_t *num_pair)</td></tr>
<tr class="memdesc:ae94379b8794e1fd1e2a19fe0aa25423f"><td class="mdescLeft">&#160;</td><td class="mdescRight">read all pairs with each processor (packed)  <a href="#ae94379b8794e1fd1e2a19fe0aa25423f">More...</a><br/></td></tr>
<tr class="separator:ae94379b8794e1fd1e2a19fe0aa25423f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab092588e88b7ee3b46eea1cb18a95a01"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data</a> (<a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *other)</td></tr>
<tr class="memdesc:ab092588e88b7ee3b46eea1cb18a95a01"><td class="mdescLeft">&#160;</td><td class="mdescRight">copies all tensor data from other  <a href="#ab092588e88b7ee3b46eea1cb18a95a01">More...</a><br/></td></tr>
<tr class="separator:ab092588e88b7ee3b46eea1cb18a95a01"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a4a61d49a3d89b61e07fc344c9bb947"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classCTF__int_1_1tensor.html#a5a4a61d49a3d89b61e07fc344c9bb947">set_distribution</a> (char const *idx, <a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;prl, <a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;blk)</td></tr>
<tr class="memdesc:a5a4a61d49a3d89b61e07fc344c9bb947"><td class="mdescLeft">&#160;</td><td class="mdescRight">set edge mappings as specified  <a href="#a5a4a61d49a3d89b61e07fc344c9bb947">More...</a><br/></td></tr>
<tr class="separator:a5a4a61d49a3d89b61e07fc344c9bb947"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>internal distributed tensor class </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00019">19</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a0d7666f6822d86ec82d0b201b8d076f3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CTF_int::tensor::tensor </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00029">29</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a582bf9f50a9304807a57db8abd71e5d9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CTF_int::tensor::~tensor </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>class free self </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00059">59</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a2915ace9df413cc5c32049d178287651"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CTF_int::tensor::tensor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *&#160;</td>
          <td class="paramname"><em>other</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>copy</em> = <code>1</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>alloc_data</em> = <code>1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>creates tensor copy, unfolds other if other is folded </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>tensor to copy </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">copy</td><td>whether to copy mapping and data </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alloc_data</td><td>whether th allocate data </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00074">74</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="util_8h.html#aa786fc43d4857c3ab9f2c777b4e6f9c5">DPRINTF</a>, <a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac6eebbc9c29b4f7f3743f79780a043e7">name</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad9879aa3c27ea65feead0fe0a7e5e966">profile</a>, <a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, <a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

</div>
</div>
<a class="anchor" id="a1c65c97c142c856775718feadcf5f676"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CTF_int::tensor::tensor </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *&#160;</td>
          <td class="paramname"><em>sr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>order</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>edge_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>sym</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1World.html">CTF::World</a> *&#160;</td>
          <td class="paramname"><em>wrld</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>alloc_data</em> = <code>false</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>name</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>profile</em> = <code>1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>defines a tensor object with some mapping (if alloc_data) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sr</td><td>defines the tensor arithmetic for this tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">order</td><td>number of dimensions of tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">edge_len</td><td>edge lengths of tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sym</td><td>symmetries of tensor (e.g. symmetric matrix -&gt; sym={SY, NS}) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">wrld</td><td>a distributed context for the tensor to live in </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">name_</td><td>an optionary name for the tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">profile</td><td>set to 1 to profile contractions involving this tensor </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00063">63</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="afdbb0c2c1df4b2114cbf33714a68a82e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::add_from_subworld </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td>
          <td class="paramname"><em>tsr_sub</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>accumulates this tensor from a tensor object defined on a different world </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">tsr_sub</td><td>id of tensor on a subcomm of this <a class="el" href="namespaceCTF.html">CTF</a> inst </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">tC_sub</td><td><a class="el" href="namespaceCTF.html">CTF</a> instance on a mpi subcomm </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor for this tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">beta</td><td>scaling factor for tensor tsr </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00769">769</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a89db948c1d5862aedf37333109f52ed5">CTF_int::cyclic_reshuffle()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a920ef76415a8a63f078d9fa8f751a5b8">orient_subworld()</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a2566862e15adb8f1c297ca327bd275d8">CTF::Tensor&lt; dtype, is_ord &gt;::add_from_subworld()</a>.</p>

</div>
</div>
<a class="anchor" id="adfddbdeaaa4a7dfb1c87659b75c70a65"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::add_to_subworld </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td>
          <td class="paramname"><em>tsr_sub</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>accumulates this tensor to a tensor object defined on a different world </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">tsr_sub</td><td>tensor on a subcomm of this world </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor for this tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">beta</td><td>scaling factor for tensor tsr </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00723">723</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a89db948c1d5862aedf37333109f52ed5">CTF_int::cyclic_reshuffle()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1tensor.html#a920ef76415a8a63f078d9fa8f751a5b8">orient_subworld()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a2c314c8f9a3212492a4142681dc4fe36">CTF_int::distribution::size</a>, and <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a65d14ea334e3cefbb58775d7cc229f2a">CTF::Tensor&lt; dtype, is_ord &gt;::add_to_subworld()</a>, and <a class="el" href="group__scheduler.html#gad6021b1e4bbd3086aa08a12d49a8006c">CTF::Schedule::partition_and_execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a4071ae4b55fb8eef4df6f837fc2ee90d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::align </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *&#160;</td>
          <td class="paramname"><em>B</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>copy A into this (B). Realloc if necessary </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>tensor to copy align mapping of thisa tensor to that of B </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">B</td><td>tensor handle of B </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01118">1118</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#a8f981fa025bee7b7cf9ce3f227a17cbd">CTF_int::comp_dim_map()</a>, <a class="el" href="namespaceCTF__int.html#a2a356d262bfd801e5826f1a10a3e0c6b">CTF_int::copy_mapping()</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a>, <a class="el" href="classCTF__int_1_1tensor.html#a9394d302202f0b12c77319e5a8c3fc64">is_folded</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, <a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a384d14673316d2b191f0a675a06fa92a">CTF::Tensor&lt; dtype, is_ord &gt;::align()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>.</p>

</div>
</div>
<a class="anchor" id="a156694ac1b80fba3d326d8cf533f7087"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::allread </td>
          <td>(</td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>all_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read entire tensor with each processor (in packed layout). WARNING: will use an 'unscalable' amount of memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">num_pair</td><td>number of values read </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">mapped_data</td><td>values read (allocated by library) </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01096">1096</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1PairIterator.html#a89b74356324e8791216770a47480ebd1">CTF_int::PairIterator::ptr</a>, <a class="el" href="classCTF__int_1_1PairIterator.html#a0e116b59a15d17c7c86577b6947280fe">CTF_int::PairIterator::read_val()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a1edd86d0c01e22dbc9ebbcc1266ebf1a">CTF::Tensor&lt; dtype, is_ord &gt;::read_all()</a>.</p>

</div>
</div>
<a class="anchor" id="a2e98694e8c1bd49a3577667f54f91a58"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::allread </td>
          <td>(</td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>all_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read entire tensor with each processor (in packed layout). WARNING: will use an 'unscalable' amount of memory. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">num_pair</td><td>number of values read </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">preallocated</td><td>mapped_data values read </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01108">1108</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="classCTF__int_1_1PairIterator.html#a0e116b59a15d17c7c86577b6947280fe">CTF_int::PairIterator::read_val()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

</div>
</div>
<a class="anchor" id="ab75781544f88bc1b89dcd2c3ebbd9ff1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int64_t CTF_int::tensor::calc_nvirt </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>calculate virtualization factor of tensor return virtualization factor </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00274">274</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="classCTF__int_1_1mapping.html#a625fef50bfaf2cb745e8029f392bc8ba">CTF_int::mapping::child</a>, <a class="el" href="classCTF__int_1_1mapping.html#a052b45d72ccc81f7b2dc3733ed191102">CTF_int::mapping::has_child</a>, <a class="el" href="classCTF__int_1_1mapping.html#a9bab9b6b206df8d62f24b865178f2508">CTF_int::mapping::np</a>, <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>, and <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a6467d1823920a2517896c8b91d6961db">CTF_int::VIRTUAL_MAP</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="ab2ec811121935a4404bbe9bb6268f5c4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int * CTF_int::tensor::calc_phase </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>compute the cyclic phase of each tensor dimension </p>
<dl class="section return"><dt>Returns</dt><dd>int * of cyclic phases </dd></dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00251">251</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, and <a class="el" href="classCTF__int_1_1mapping.html#a2a5bd0e2288efc726fb28f8ee3ef0bb8">CTF_int::mapping::calc_phase()</a>.</p>

</div>
</div>
<a class="anchor" id="a0a7b337f02b2fc20ca4b255a66408b4d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::calc_tot_phase </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>calculate the total number of blocks of the tensor </p>
<dl class="section return"><dt>Returns</dt><dd>int total phase factor </dd></dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00263">263</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>.</p>

</div>
</div>
<a class="anchor" id="a92ca1ca094b3504cc856bb03aa580b1f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::clear_mapping </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>zeros out mapping </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01486">1486</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="classCTF__int_1_1mapping.html#a978a0d5a32794f3ba8a4b8bd6538bb71">CTF_int::mapping::clear()</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, and <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="aa8949343fdaccbebcc107274e97f6777"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::compare </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td>
          <td class="paramname"><em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>fp</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>cutoff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>prints two sets of tensor data side-by-side to file using process 0 </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>tensor to compare against </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fp</td><td>file to print to e.g. stdout </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cutoff</td><td>do not print values of absolute value smaller than this </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01266">1266</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="classCTF__int_1_1algstrct.html#aa80a73e2fa10cef1d89aa7af50cb7142">CTF_int::algstrct::abs</a>, <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="classCTF_1_1World.html#a35f4d03089ce47d15399ad84346e741d">CTF::World::cdt</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1CommData.html#a2e44e9388319684b2c7d016d6f073688">CTF_int::CommData::cm</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a3b2cbb7747e99e8a579cd4ae48f56bea">CTF_int::algstrct::el_size</a>, <a class="el" href="classCTF__int_1_1algstrct.html#acbfa67d79afa69ecf84c4c36022694a8">CTF_int::algstrct::isequal()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a38168eae49423cb3d78a2287135dd391">CTF_int::algstrct::min()</a>, <a class="el" href="classCTF__int_1_1CommData.html#acb6d1c38320971e5b1f451cb58c0fc24">CTF_int::CommData::np</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1algstrct.html#ad061b95d3a41549bc3b754c92812eb43">CTF_int::algstrct::pair_size()</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a860d4471789cb8b2bc3ff9025e097b76">CTF_int::algstrct::print()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad7f74fd6d0bfa79b1da955f11cf292eb">print_map()</a>, <a class="el" href="classCTF__int_1_1CommData.html#af4652db6b44e9fc5c0eb39c27422e611">CTF_int::CommData::rank</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1PairIterator.html#adafb57c2301f27107c65cb6d1a7109cc">CTF_int::PairIterator::sort()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a0d5c2e28500b9e00e19faf21fa3b9447">CTF::Tensor&lt; dtype, is_ord &gt;::compare()</a>.</p>

</div>
</div>
<a class="anchor" id="ab092588e88b7ee3b46eea1cb18a95a01"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::copy_tensor_data </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>copies all tensor data from other </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>tensor to copy from </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00093">93</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a2a356d262bfd801e5826f1a10a3e0c6b">CTF_int::copy_mapping()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa7423735e014208b2d58f2b1fcf43ef6">has_home</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94a032fa1b4349db7faaabc17f34c0a0">home_buffer</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa60f1476a89a8da0d22ce5e3db05f308">home_size</a>, <a class="el" href="classCTF__int_1_1tensor.html#a80cdb7beb76590808b65c519a1622871">inner_ordering</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab5d7420e4f2ec1a15b5d029723510957">is_cyclic</a>, <a class="el" href="classCTF__int_1_1tensor.html#a9394d302202f0b12c77319e5a8c3fc64">is_folded</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad0874aacfaab789ea316c8e8e374a5d1">is_home</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0a0f727aa36ba7d74a6fd788e7ab99f1">is_mapped</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1tensor.html#aec0bb6504e2ad703ec7b674ef0d984ac">pad_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ae011d15d2bfec4b627344604d82adab5">padding</a>, <a class="el" href="classCTF__int_1_1tensor.html#aeedfb90158cd104a867a975d853ed7e6">pairs</a>, <a class="el" href="classCTF__int_1_1tensor.html#a7143cc7f19beb0346925d449fdfb595c">rec_tsr</a>, <a class="el" href="classCTF__int_1_1tensor.html#ae90b56ccd442adbb0205119c600c9c1a">size</a>, <a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, <a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="classCTF__int_1_1tensor.html#a4d0ba1dede97462aa9f24796e2c434e6">sym_table</a>, <a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

</div>
</div>
<a class="anchor" id="af963f03f8410e2af6dac15f8e16c87bc"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::extract_diag </td>
          <td>(</td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>idx_map</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>rw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&amp;&#160;</td>
          <td class="paramname"><em>new_tsr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&#160;</td>
          <td class="paramname"><em>idx_map_new</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>extracts the diagonal of a tensor if the index map specifies to do so </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">idx_map</td><td>index map of tensor for this operation </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">rw</td><td>if 1 this writes to the diagonal, if 0 it reads the diagonal </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">new_tsrw</td><td>if rw=1 this will be output as new tensor if rw=0 this should be input as the tensor of the extracted diagonal </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">idx_map_new</td><td>if rw=1 this will be the new index map </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01642">1642</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1summation.html#a820acf119a8d9d6ce3a8e338046d0693">CTF_int::summation::execute()</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daa074799b4a423a065ba5a9cdd29f013a9">CTF_int::NEGATIVE</a>, <a class="el" href="group__CTF.html#ga06c201f90533d5b49cd039c960327968">NS</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>.</p>

</div>
</div>
<a class="anchor" id="a314dfeb62e80fd5bfea22903c8febd97"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::fold </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nfold</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>fold_idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>idx_map</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>all_fdim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&#160;</td>
          <td class="paramname"><em>all_flen</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>fold a tensor by putting the symmetry-preserved portion in the leading dimensions of the tensor sets is_folded and creates rec_tsr with aliased data </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">nfold</td><td>number of global indices we are folding </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">fold_idx</td><td>which global indices we are folding </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">idx_map</td><td>how this tensor indices map to the global indices </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">all_fdim</td><td>number of dimensions including unfolded dimensions </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">all_flen</td><td>edge lengths including unfolded dimensions </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01400">1400</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#a0ab08ae37b2f8f8cbcff3961c26fc350">CTF_int::calc_dim()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="group__CTF.html#ga06c201f90533d5b49cd039c960327968">NS</a>, and <a class="el" href="namespaceCTF__int.html#a1cd0c203a2d16c0983993febbe1b2d33">CTF_int::sy_packed_size()</a>.</p>

</div>
</div>
<a class="anchor" id="a3f0b2bc09705d0d4d124a7dc93484b93"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::free_self </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>destructor </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00033">33</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, and <a class="el" href="util_8h.html#aa786fc43d4857c3ab9f2c777b4e6f9c5">DPRINTF</a>.</p>

<p>Referenced by <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, and <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>.</p>

</div>
</div>
<a class="anchor" id="aabcb0312efb496017c5ea18a580562b9"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::get_max_abs </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>obtains the largest n elements (in absolute value) of the tensor </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">n</td><td>number of elements to fill </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">data</td><td>preallocated array of size at least n, in which to put the elements </td></tr>
  </table>
  </dd>
</dl>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a90fb83bf1a41af0f6708643715066c37">CTF::Tensor&lt; dtype, is_ord &gt;::get_max_abs()</a>.</p>

</div>
</div>
<a class="anchor" id="a8bc18d3dcc48828d16a26e947169da44"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char const * CTF_int::tensor::get_name </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>get the tensor name </p>
<dl class="section return"><dt>Returns</dt><dd>tensor name </dd></dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00465">465</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a0e87e703e10c7edb3eb33c1ff7919868"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::get_raw_data </td>
          <td>(</td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>get raw data pointer without copy WARNING: includes padding </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">data</td><td>raw local data in char * format </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">size</td><td>number of elements in data </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00477">477</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Idx__Tensor.html#af99ba678cc9e698ca98db485ec6b694a">CTF::Idx_Tensor::execute()</a>, <a class="el" href="classCTF__int_1_1Term.html#a62798c48408baf1eb20395199e12db1b">CTF_int::Term::operator double()</a>, and <a class="el" href="classCTF__int_1_1Term.html#a98a28207dd04e5857569587912761519">CTF_int::Term::operator int64_t()</a>.</p>

</div>
</div>
<a class="anchor" id="a1efff834588edb7ea25c7951543e19a5"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *&#160;</td>
          <td class="paramname"><em>sr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>order</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>edge_len</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>sym</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1World.html">CTF::World</a> *&#160;</td>
          <td class="paramname"><em>wrld</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>alloc_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>profile</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>initializes tensor data </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">sr</td><td>defines the tensor arithmetic for this tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">order</td><td>number of dimensions of tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">edge_len</td><td>edge lengths of tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sym</td><td>symmetries of tensor (e.g. symmetric matrix -&gt; sym={SY, NS}) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">wrld</td><td>a distributed context for the tensor to live in </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">name_an</td><td>optionary name for the tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">profile</td><td>set to 1 to profile contractions involving this tensor </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00174">174</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1algstrct.html#ac648f0c21957da6f8df1889b384d325d">CTF_int::algstrct::clone()</a>, <a class="el" href="util_8h.html#aa786fc43d4857c3ab9f2c777b4e6f9c5">DPRINTF</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902af589e013084b09d0a3d185c30c3eaee9">CTF_int::NOT_MAPPED</a>, <a class="el" href="group__CTF.html#ga06c201f90533d5b49cd039c960327968">NS</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, and <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>.</p>

<p>Referenced by <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, and <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>.</p>

</div>
</div>
<a class="anchor" id="ad41a4ca98fba6a5eaf0aada092c83f4e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::map_tensor_rem </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>num_phys_dims</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1CommData.html">CommData</a> *&#160;</td>
          <td class="paramname"><em>phys_comm</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>fill</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>map the remainder of a tensor </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num_phys_dims</td><td>number of physical processor grid dimensions </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">phys_comm</td><td>dimensional communicators </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01591">1591</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a5cb8bb094a83b49b8adde9c9aedf0060">CTF_int::mapping::cdt</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a625fef50bfaf2cb745e8029f392bc8ba">CTF_int::mapping::child</a>, <a class="el" href="classCTF__int_1_1mapping.html#a052b45d72ccc81f7b2dc3733ed191102">CTF_int::mapping::has_child</a>, <a class="el" href="namespaceCTF__int.html#aaff88168367634c8395dedf5d3b75fc9">CTF_int::map_tensor()</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902af589e013084b09d0a3d185c30c3eaee9">CTF_int::NOT_MAPPED</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a175d783fed262b4c4c9960393ffd9593">CTF_int::PHYSICAL_MAP</a>, and <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="aca0348910567ff37786b9ab98594780d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF_1_1Idx__Tensor.html">Idx_Tensor</a> CTF_int::tensor::operator[] </td>
          <td>(</td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>idx_map</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>associated an index map with the tensor for future operation </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">idx_map_</td><td>index assignment for this tensor </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00024">24</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a920ef76415a8a63f078d9fa8f751a5b8"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::orient_subworld </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF_1_1World.html">CTF::World</a> *&#160;</td>
          <td class="paramname"><em>greater_world</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>bw_mirror_rank</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int &amp;&#160;</td>
          <td class="paramname"><em>fw_mirror_rank</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1distribution.html">distribution</a> *&amp;&#160;</td>
          <td class="paramname"><em>odst</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>sub_buffer_</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>maps data from this world (subcomm) to the correct order of processors with respect to a parent (greater_world) comm </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">greater_world</td><td>comm with respect to which the data needs to be ordered </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">bw_mirror_rank</td><td>processor rank in greater_world from which data is received </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">fw_mirror_rank</td><td>processor rank in greater_world to which data is sent </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">distribution</td><td>mapping of data on output defined on oriented subworld </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">sub_buffer_</td><td>allocated buffer of received data on oriented subworld </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00537">537</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF_1_1World.html#a03f07dfadafa91965352d30f151b1b89">CTF::World::comm</a>, <a class="el" href="namespaceCTF__int.html#a936a0e4d2c9fd9a76f841d62eb2d26ad">CTF_int::get_distribution_size()</a>, <a class="el" href="namespaceCTF__int.html#abb40a799b5b98188e18600175cf2b8e7">CTF_int::mst_alloc()</a>, <a class="el" href="classCTF_1_1World.html#a65b0fcb2736f25522c8009efd87cc8b7">CTF::World::rank</a>, <a class="el" href="classCTF__int_1_1distribution.html#ad6b8dc593ed3de2c61572634c2bf28df">CTF_int::distribution::serialize()</a>, and <a class="el" href="classCTF__int_1_1distribution.html#a2c314c8f9a3212492a4142681dc4fe36">CTF_int::distribution::size</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#afdbb0c2c1df4b2114cbf33714a68a82e">add_from_subworld()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#adfddbdeaaa4a7dfb1c87659b75c70a65">add_to_subworld()</a>.</p>

</div>
</div>
<a class="anchor" id="a94adf90f6737329650d5b39b78c7a096"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::permute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td>
          <td class="paramname"><em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *const *&#160;</td>
          <td class="paramname"><em>permutation_A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *const *&#160;</td>
          <td class="paramname"><em>permutation_B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">
<p>Permutes a tensor along each dimension skips if perm set to -1, generalizes slice. one of permutation_A or permutation_B has to be set to NULL, if multiworld read, then the parent world tensor should not be being permuted </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>pure-operand tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">permutation_A</td><td>mappings for each dimension of A indices </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor for A </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">permutation_B</td><td>mappings for each dimension of B (this) indices </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor for current values of B </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00482">482</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a8626ce8c5a1851492401ecd46509d7a2">CTF_int::depermute_keys()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a>, <a class="el" href="classCTF_1_1World.html#a9545f08ac9938e2c0fa76e969b6eab76">CTF::World::np</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="namespaceCTF__int.html#a375bf9583d7f714f40aac46e6e7afa67">CTF_int::permute_keys()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a2050e7ca102cb8ac3b94bb18cb7cee9a">CTF::Tensor&lt; dtype, is_ord &gt;::permute()</a>.</p>

</div>
</div>
<a class="anchor" id="af7cdeb34e3340d9dc67010ebc170e896"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::print </td>
          <td>(</td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>fp</em> = <code>stdout</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>cutoff</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>prints tensor data to file using process 0 </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">fp</td><td>file to print to e.g. stdout </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">cutoff</td><td>do not print values of absolute value smaller than this </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01191">1191</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, and <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#ae7a21b902c3964d8446d28523db5f736">CTF::Tensor&lt; dtype, is_ord &gt;::print()</a>.</p>

</div>
</div>
<a class="anchor" id="ad7f74fd6d0bfa79b1da955f11cf292eb"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::print_map </td>
          <td>(</td>
          <td class="paramtype">FILE *&#160;</td>
          <td class="paramname"><em>stream</em> = <code>stdout</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>allcall</em> = <code>1</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>displays mapping information </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">stream</td><td>output log (e.g. stdout) </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">allcall</td><td>(if 1 print only with proc 0) </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00442">442</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, and <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>.</p>

</div>
</div>
<a class="anchor" id="a050bc339877e05ff26e5d7c49cc6bdd3"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::profile_off </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>turn off profiling </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00473">473</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#af59b4cddab8367d60dec028a033223a9">CTF::Tensor&lt; dtype, is_ord &gt;::profile_off()</a>.</p>

</div>
</div>
<a class="anchor" id="a71910487d8f60ffe9cf8ec4d5b07d75a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::profile_on </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>turn on profiling </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00469">469</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a23fe000ae4f93d9aff977e4a3a97189a">CTF::Tensor&lt; dtype, is_ord &gt;::profile_on()</a>.</p>

</div>
</div>
<a class="anchor" id="ac0f5757dbb7fcef64106e1224245a925"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::pull_alias </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> const *&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>pulls data from an tensor with an aliased buffer </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">other</td><td>tensor with aliased data to pull from </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01475">1475</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a2a356d262bfd801e5826f1a10a3e0c6b">CTF_int::copy_mapping()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a>, <a class="el" href="classCTF__int_1_1tensor.html#a78819ce884044b706a4c2407c97ba729">is_data_aliased</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad0874aacfaab789ea316c8e8e374a5d1">is_home</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, and <a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a>.</p>

</div>
</div>
<a class="anchor" id="a244fffc1e559ad12fd42ef25c8250f4c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::read </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *const&#160;</td>
          <td class="paramname"><em>mapped_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read tensor data with &lt;key, value&gt; pairs where key is the global index for the value, which gets filled in with beta times the old values plus alpha times the values read from the tensor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num_pair</td><td>number of pairs to read </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor of read value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">beta</td><td>scaling factor of old value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">mapped_data</td><td>pairs to write </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00884">884</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#ae8eece350c37635f8b03dd660fcc85ff">CTF::Tensor&lt; dtype, is_ord &gt;::read()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>.</p>

</div>
</div>
<a class="anchor" id="a3c9dc1dd1a70bd3ad33cf7b547d4fa65"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char * CTF_int::tensor::read </td>
          <td>(</td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;&#160;</td>
          <td class="paramname"><em>prl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;&#160;</td>
          <td class="paramname"><em>blk</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&#160;</td>
          <td class="paramname"><em>unpack</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>returns local data of tensor with parallel distribution prl and local blocking blk </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">idx</td><td>assignment of characters to each dim </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">prl</td><td>mesh processor topology with character labels </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">blk</td><td>local blocking with processor labels </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">unpack</td><td>whether to unpack from symmetric layout </td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>local piece of data of tensor in this distribution </dd></dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00954">954</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa7423735e014208b2d58f2b1fcf43ef6">has_home</a>, <a class="el" href="classCTF__int_1_1tensor.html#a78819ce884044b706a4c2407c97ba729">is_data_aliased</a>, <a class="el" href="group__CTF.html#ga06c201f90533d5b49cd039c960327968">NS</a>, <a class="el" href="classCTF__int_1_1tensor.html#a244fffc1e559ad12fd42ef25c8250f4c">read()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a2c3b7b2282d4041df613607d44cfb5df">redistribute()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a5a4a61d49a3d89b61e07fc344c9bb947">set_distribution()</a>.</p>

</div>
</div>
<a class="anchor" id="a08ca1838f6db21755082af8146c02d67"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::read </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *const&#160;</td>
          <td class="paramname"><em>mapped_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read tensor data with &lt;key, value&gt; pairs where key is the global index for the value, which gets filled in. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num_pair</td><td>number of pairs to read </td></tr>
    <tr><td class="paramdir">[in,out]</td><td class="paramname">mapped_data</td><td>pairs to read </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00891">891</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="ae94379b8794e1fd1e2a19fe0aa25423f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1PairIterator.html">PairIterator</a> CTF_int::tensor::read_all_pairs </td>
          <td>(</td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>num_pair</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>read all pairs with each processor (packed) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">num_pair</td><td>number of values read return pair iterator with allocated all pairs read </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01054">1054</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, and <a class="el" href="classCTF__int_1_1PairIterator.html#adafb57c2301f27107c65cb6d1a7109cc">CTF_int::PairIterator::sort()</a>.</p>

</div>
</div>
<a class="anchor" id="a0e0eb27643a49793a9f7f8e3f438bd08"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::read_local </td>
          <td>(</td>
          <td class="paramtype">int64_t *&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char **&#160;</td>
          <td class="paramname"><em>mapped_data</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>read tensor data pairs local to processor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">num_pair</td><td>number of values read </td></tr>
    <tr><td class="paramdir">[out]</td><td class="paramname">mapped_data</td><td>values read </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00982">982</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1mapping.html#a2a5bd0e2288efc726fb28f8ee3ef0bb8">CTF_int::mapping::calc_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#af84c428334afa124381fd053aa81ffcf">CTF_int::mapping::calc_phys_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#aa73b202697a32946f299580fe1bb02c3">CTF_int::mapping::calc_phys_rank()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a5cb8bb094a83b49b8adde9c9aedf0060">CTF_int::mapping::cdt</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a>, <a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#a9394d302202f0b12c77319e5a8c3fc64">is_folded</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0a0f727aa36ba7d74a6fd788e7ab99f1">is_mapped</a>, <a class="el" href="classCTF__int_1_1topology.html#acfa50662928550ab13f93c49e97d9a1d">CTF_int::topology::lda</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1tensor.html#aec0bb6504e2ad703ec7b674ef0d984ac">pad_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ae011d15d2bfec4b627344604d82adab5">padding</a>, <a class="el" href="classCTF__int_1_1tensor.html#aeedfb90158cd104a867a975d853ed7e6">pairs</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a175d783fed262b4c4c9960393ffd9593">CTF_int::PHYSICAL_MAP</a>, <a class="el" href="namespaceCTF__int.html#a374438c96d62484d36c13a8ab21851d6">CTF_int::read_loc_pairs()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ae90b56ccd442adbb0205119c600c9c1a">size</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, <a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="util_8h.html#ac14eb95810f807880d0df7258bb42e69">TAU_FSTART</a>, <a class="el" href="util_8h.html#a04ab823c4692b0c7d5fd2d88b9fd3ad3">TAU_FSTOP</a>, <a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a>, and <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF_1_1Tensor.html#aad2cf5a5b48fdf6a7abe87c30a23ebd3">CTF::Tensor&lt; dtype, is_ord &gt;::read_local()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>.</p>

</div>
</div>
<a class="anchor" id="a2c3b7b2282d4041df613607d44cfb5df"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::redistribute </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1distribution.html">distribution</a> const &amp;&#160;</td>
          <td class="paramname"><em>old_dist</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>old_offsets</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *const *&#160;</td>
          <td class="paramname"><em>old_permutation</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>new_offsets</em> = <code>NULL</code>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *const *&#160;</td>
          <td class="paramname"><em>new_permutation</em> = <code>NULL</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>permutes the data of a tensor to its new layout </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">old_dist</td><td>previous distribution to remap data from </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01498">1498</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="util_8h.html#a5376571bbf4cdc9782683635f366f89a">ABORT</a>, <a class="el" href="namespaceCTF__int.html#a4bab76b9f2ba659c151e821b66b38277">CTF_int::block_reshuffle()</a>, <a class="el" href="namespaceCTF__int.html#af0765b41aee6197ddf0a142c82bccb93">CTF_int::can_block_reshuffle()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a89db948c1d5862aedf37333109f52ed5">CTF_int::cyclic_reshuffle()</a>, <a class="el" href="util_8h.html#aa786fc43d4857c3ab9f2c777b4e6f9c5">DPRINTF</a>, <a class="el" href="namespaceCTF__int.html#abb40a799b5b98188e18600175cf2b8e7">CTF_int::mst_alloc()</a>, <a class="el" href="namespaceCTF__int.html#aeb4256c43de088436d046089e5af3bf0">CTF_int::padded_reshuffle()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a8d717eea615cf277128ea9465d5fa237">CTF_int::distribution::phase</a>, <a class="el" href="classCTF__int_1_1distribution.html#a2c314c8f9a3212492a4142681dc4fe36">CTF_int::distribution::size</a>, <a class="el" href="classCTF_1_1Timer.html#ae57372094c8a16200ce39d35fde6b216">CTF::Timer::start()</a>, <a class="el" href="classCTF_1_1Timer.html#ac56848c5fa2659778d3dce0285f0d34c">CTF::Timer::stop()</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, and <a class="el" href="util_8h.html#a44038d6794d6b0659fe2782e19aba933">VPRINTF</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>.</p>

</div>
</div>
<a class="anchor" id="a67c818faec6854b869b446f0df368b4e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::reduce_sum </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs an elementwise summation reduction on a tensor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>result of reduction operation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01140">1140</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="acf04e588a4e88f8afeb733b77f38e127"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::reduce_sum </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *&#160;</td>
          <td class="paramname"><em>sr_other</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs an elementwise summation reduction on a tensor with summation defined by sr_other. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>result of reduction operation </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sr_other</td><td>an algebraic structure (at least a monoid) defining the summation operation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01144">1144</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="classCTF__int_1_1algstrct.html#a44c8d85008beab9bd9ff1610ac8c04e6">CTF_int::algstrct::addid()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a3b2cbb7747e99e8a579cd4ae48f56bea">CTF_int::algstrct::el_size</a>, <a class="el" href="classCTF__int_1_1summation.html#a820acf119a8d9d6ce3a8e338046d0693">CTF_int::summation::execute()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

</div>
</div>
<a class="anchor" id="a5f830c630eaf94b2c181223830257c3d"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::reduce_sumabs </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs an elementwise absolute value summation reduction on a tensor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>result of reduction operation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01158">1158</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a0f65f4daf74164b5615afa0264bd4108"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::reduce_sumabs </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a> const *&#160;</td>
          <td class="paramname"><em>sr_other</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Performs an elementwise absolute value summation reduction on a tensor. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>result of reduction operation </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">sr_other</td><td>an algebraic structure (at least a monoid) defining the summation operation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01162">1162</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1summation.html#a820acf119a8d9d6ce3a8e338046d0693">CTF_int::summation::execute()</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a4b5eb9b4153f7ef12abb733b0bac61a5">CTF_int::algstrct::mulid()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

</div>
</div>
<a class="anchor" id="a060c682068cbea1c17965157bf14447e"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::reduce_sumsq </td>
          <td>(</td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>result</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>computes the sum of squares of the elements </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">result</td><td>result of reduction operation </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01177">1177</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="classCTF__int_1_1contraction.html#aa55b3c410c174c99294a8d05d6b540a4">CTF_int::contraction::execute()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

</div>
</div>
<a class="anchor" id="aeecce683c46bd4ec2b1c106f2863c0f7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::set </td>
          <td>(</td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>val</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>sets tensor data to val </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00325">325</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

</div>
</div>
<a class="anchor" id="a5a4a61d49a3d89b61e07fc344c9bb947"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::set_distribution </td>
          <td>(</td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>idx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;&#160;</td>
          <td class="paramname"><em>prl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF_1_1Idx__Partition.html">CTF::Idx_Partition</a> const &amp;&#160;</td>
          <td class="paramname"><em>blk</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>set edge mappings as specified </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">idx</td><td>assignment of characters to each dim </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">prl</td><td>mesh processor topology with character labels </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">blk</td><td>local blocking with processor labels </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00896">896</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1mapping.html#a5cb8bb094a83b49b8adde9c9aedf0060">CTF_int::mapping::cdt</a>, <a class="el" href="namespaceCTF__int.html#abb92f7981effecec306d755d66396438">CTF_int::check_self_mapping()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a625fef50bfaf2cb745e8029f392bc8ba">CTF_int::mapping::child</a>, <a class="el" href="namespaceCTF__int.html#a2554ca81f1ab41c1eada36d88633f9e8">CTF_int::conv_idx()</a>, <a class="el" href="classCTF__int_1_1topology.html#a842e076cf1e4965caf4754b97082dba5">CTF_int::topology::dim_comm</a>, <a class="el" href="namespaceCTF__int.html#aacc62c9c401454d2e1bc5d19093bd954">CTF_int::find_topology()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a052b45d72ccc81f7b2dc3733ed191102">CTF_int::mapping::has_child</a>, <a class="el" href="classCTF_1_1Idx__Partition.html#a5103a5e8bd3d26c032e78796e2cdc448">CTF::Idx_Partition::idx</a>, <a class="el" href="classCTF_1_1Partition.html#a15e0c91e95d788162342a33012fce879">CTF::Partition::lens</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902af589e013084b09d0a3d185c30c3eaee9">CTF_int::NOT_MAPPED</a>, <a class="el" href="classCTF__int_1_1mapping.html#a9bab9b6b206df8d62f24b865178f2508">CTF_int::mapping::np</a>, <a class="el" href="classCTF__int_1_1CommData.html#acb6d1c38320971e5b1f451cb58c0fc24">CTF_int::CommData::np</a>, <a class="el" href="classCTF_1_1Partition.html#af3cfa824b604a0ad227f63574876de26">CTF::Partition::order</a>, <a class="el" href="classCTF_1_1Idx__Partition.html#a9dad5b1236db938f7f293062a0a4b645">CTF::Idx_Partition::part</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a175d783fed262b4c4c9960393ffd9593">CTF_int::PHYSICAL_MAP</a>, <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>, and <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a6467d1823920a2517896c8b91d6961db">CTF_int::VIRTUAL_MAP</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="aa4ae83a8adc60604d3cd6bbe88531eb6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::set_name </td>
          <td>(</td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>set the tensor name </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>to set </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00459">459</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, and <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>.</p>

<p>Referenced by <a class="el" href="classCTF_1_1Tensor.html#a05397e50b8f15562a49ebc9cacbd905d">CTF::Tensor&lt; dtype, is_ord &gt;::set_name()</a>.</p>

</div>
</div>
<a class="anchor" id="a338df65dcf108d7e06d8c27df1d44639"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::set_padding </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>sets padding and local size of a tensor given a mapping </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00291">291</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a2a5bd0e2288efc726fb28f8ee3ef0bb8">CTF_int::mapping::calc_phase()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, and <a class="el" href="namespaceCTF__int.html#a1cd0c203a2d16c0983993febbe1b2d33">CTF_int::sy_packed_size()</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="aa8fde26849a05f5ad3d6913f90f53447"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::set_zero </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>elects a mapping and sets tensor data to zero </p>
<p>btopo = get_best_topo(bnvirt, btopo, wrld-&gt;cdt, 0, bmemuse); </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00331">331</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="util_8h.html#aa786fc43d4857c3ab9f2c777b4e6f9c5">DPRINTF</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daab98dcad452c01410d0f4a8f25fc694ad">CTF_int::ERROR</a>, <a class="el" href="namespaceCTF__int.html#ad720c984473b9e88ee4436ce9b6284cf">CTF_int::get_best_topo()</a>, <a class="el" href="namespaceCTF__int.html#aaff88168367634c8395dedf5d3b75fc9">CTF_int::map_tensor()</a>, <a class="el" href="namespaceCTF__int.html#af1c2f44083aecb8a4f53c193588bcdb2">CTF_int::mst_alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#a529616abad71482c0fa79eefd8f112a4">CTF_int::proc_bytes_available()</a>, and <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>.</p>

</div>
</div>
<a class="anchor" id="ad00e69a78e633b35fa82fea1dd0e2ba2"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::slice </td>
          <td>(</td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>offsets_B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>ends_B</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a> *&#160;</td>
          <td class="paramname"><em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>offsets_A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int const *&#160;</td>
          <td class="paramname"><em>ends_A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>cuts out a slice (block) of this tensor = B B[offsets,ends)=beta*B[offsets,ends) + alpha*A[offsets_A,ends_A) </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">offsets_B</td><td>bottom left corner of block </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ends_B</td><td>top right corner of block </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor of this tensor </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">A</td><td>tensor who owns pure-operand slice </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">offsets</td><td>bottom left corner of block of A </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">ends</td><td>top right corner of block of A </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor of tensor A </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00621">621</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#ae401e52f6ea7d0868d76035792a38c39">CTF_int::alloc()</a>, <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a005087c59da9d5776bc5240db8f01468">CTF_int::depad_tsr()</a>, <a class="el" href="classCTF__int_1_1algstrct.html#a3b2cbb7747e99e8a579cd4ae48f56bea">CTF_int::algstrct::el_size</a>, <a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab10166c977c707184e26c026c5b11fc6">lens</a>, <a class="el" href="classCTF_1_1World.html#a9545f08ac9938e2c0fa76e969b6eab76">CTF::World::np</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="namespaceCTF__int.html#ad9478c28bd97c55349ee49c59955f699">CTF_int::pad_key()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a95e7d747c8e824d47c246ba1d5b283b7">sr</a>, <a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1c9b106ed78c5529d50ea1ac4cd3d813">wrld</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#adfddbdeaaa4a7dfb1c87659b75c70a65">add_to_subworld()</a>.</p>

</div>
</div>
<a class="anchor" id="a781432a987886c2478200d8d7472c6d4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void CTF_int::tensor::unfold </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>undo the folding of a local tensor block unsets is_folded and deletes rec_tsr </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01365">1365</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="namespaceCTF__int.html#a0ab08ae37b2f8f8cbcff3961c26fc350">CTF_int::calc_dim()</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a0fe103d83911a54d79c592986d7b5380">CTF_int::nosym_transpose()</a>, <a class="el" href="group__CTF.html#ga06c201f90533d5b49cd039c960327968">NS</a>, and <a class="el" href="namespaceCTF__int.html#a1cd0c203a2d16c0983993febbe1b2d33">CTF_int::sy_packed_size()</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, and <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>.</p>

</div>
</div>
<a class="anchor" id="a1df17d4129ad9efb4f0d6554149d059f"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::write </td>
          <td>(</td>
          <td class="paramtype">int64_t&#160;</td>
          <td class="paramname"><em>num_pair</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>alpha</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const *&#160;</td>
          <td class="paramname"><em>beta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&#160;</td>
          <td class="paramname"><em>mapped_data</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char const&#160;</td>
          <td class="paramname"><em>rw</em> = <code>'w'</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Add tensor data new=alpha*new+beta*old with &lt;key, value&gt; pairs where key is the global index for the value. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">num_pair</td><td>number of pairs to write </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">alpha</td><td>scaling factor of written (read) value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">beta</td><td>scaling factor of old (existing) value </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">mapped_data</td><td>pairs to write </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">rw</td><td>weather to read (r) or write (w) </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l00799">799</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="common_8h.html#a821326052e3e2bf1fb2d678e9e9a6004">ASSERT</a>, <a class="el" href="classCTF__int_1_1mapping.html#a2a5bd0e2288efc726fb28f8ee3ef0bb8">CTF_int::mapping::calc_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#af84c428334afa124381fd053aa81ffcf">CTF_int::mapping::calc_phys_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#aa73b202697a32946f299580fe1bb02c3">CTF_int::mapping::calc_phys_rank()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a5cb8bb094a83b49b8adde9c9aedf0060">CTF_int::mapping::cdt</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a39823db336305f0a9d4938af312c0921">data</a>, <a class="el" href="util_8h.html#a5c8ef3c24dad2c469a42784a9a39403b">DEBUG_PRINTF</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa5a865e85b2b340bec06c6547513df82">edge_map</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daab98dcad452c01410d0f4a8f25fc694ad">CTF_int::ERROR</a>, <a class="el" href="classCTF__int_1_1tensor.html#a48672036dc4b0b8ad77f7ff195ccda77">has_zero_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0a0f727aa36ba7d74a6fd788e7ab99f1">is_mapped</a>, <a class="el" href="classCTF__int_1_1topology.html#acfa50662928550ab13f93c49e97d9a1d">CTF_int::topology::lda</a>, <a class="el" href="classCTF__int_1_1tensor.html#a248c9ece4f75adfdc25599b7900ab1ef">order</a>, <a class="el" href="classCTF__int_1_1tensor.html#aec0bb6504e2ad703ec7b674ef0d984ac">pad_edge_len</a>, <a class="el" href="classCTF__int_1_1tensor.html#ae011d15d2bfec4b627344604d82adab5">padding</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a175d783fed262b4c4c9960393ffd9593">CTF_int::PHYSICAL_MAP</a>, <a class="el" href="classCTF__int_1_1tensor.html#a338df65dcf108d7e06d8c27df1d44639">set_padding()</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, <a class="el" href="classCTF__int_1_1tensor.html#a01d1845d3407020e5c3724ac9a8ede66">sym</a>, <a class="el" href="util_8h.html#ac14eb95810f807880d0df7258bb42e69">TAU_FSTART</a>, <a class="el" href="util_8h.html#a04ab823c4692b0c7d5fd2d88b9fd3ad3">TAU_FSTOP</a>, <a class="el" href="classCTF__int_1_1tensor.html#afd917fd431d94d10ce50c10161fc6a8c">topo</a>, <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>, and <a class="el" href="namespaceCTF__int.html#a00c1788bea9209b7471211e5eacb3b42">CTF_int::wr_pairs_layout()</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a6284429f794b74b35defadb6d5ce236e">CTF::Tensor&lt; dtype, is_ord &gt;::write()</a>.</p>

</div>
</div>
<a class="anchor" id="a4deee6307957ff58f22d40b6f60be556"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::zero_out_padding </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>sets padded portion of tensor to zero (this should be maintained internally) </p>

<p>Definition at line <a class="el" href="untyped__tensor_8cxx_source.html#l01692">1692</a> of file <a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a>.</p>

<p>References <a class="el" href="namespaceCTF__int.html#a738c9376296e60ec23209d20c3016604">CTF_int::alloc_ptr()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a2a5bd0e2288efc726fb28f8ee3ef0bb8">CTF_int::mapping::calc_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#af84c428334afa124381fd053aa81ffcf">CTF_int::mapping::calc_phys_phase()</a>, <a class="el" href="classCTF__int_1_1mapping.html#aa73b202697a32946f299580fe1bb02c3">CTF_int::mapping::calc_phys_rank()</a>, <a class="el" href="classCTF__int_1_1mapping.html#a5cb8bb094a83b49b8adde9c9aedf0060">CTF_int::mapping::cdt</a>, <a class="el" href="namespaceCTF__int.html#ad3899b1bc5df7d52296d66e33e8284fd">CTF_int::cfree()</a>, <a class="el" href="namespaceCTF__int.html#a206ee3db2a4dbf48dc452d8bd27b5902a175d783fed262b4c4c9960393ffd9593">CTF_int::PHYSICAL_MAP</a>, <a class="el" href="namespaceCTF__int.html#ac01b588c87fead5d2e130a9a563795daaf8f4b9edaace64d679f40b5e708fa247">CTF_int::SUCCESS</a>, <a class="el" href="util_8h.html#ac14eb95810f807880d0df7258bb42e69">TAU_FSTART</a>, <a class="el" href="util_8h.html#a04ab823c4692b0c7d5fd2d88b9fd3ad3">TAU_FSTOP</a>, <a class="el" href="classCTF__int_1_1mapping.html#abcacfe1d7e0234c806cc4e65840eae62">CTF_int::mapping::type</a>, and <a class="el" href="namespaceCTF__int.html#a43140761995d69aeec6d35c792fee278">CTF_int::zero_padding()</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>, and <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>.</p>

</div>
</div>
<h2 class="groupheader">Field Documentation</h2>
<a class="anchor" id="a7b53be5506764ac20d297ba05faf8f35"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">union { ... } </td>
        </tr>
      </table>
</div><div class="memdoc">

<p>tensor data, either the data or the key-value pairs should exist at any given time </p>

</div>
</div>
<a class="anchor" id="a39823db336305f0a9d4938af312c0921"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CTF_int::tensor::data</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00111">111</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#adfddbdeaaa4a7dfb1c87659b75c70a65">add_to_subworld()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#acf04e588a4e88f8afeb733b77f38e127">reduce_sum()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0f65f4daf74164b5615afa0264bd4108">reduce_sumabs()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a060c682068cbea1c17965157bf14447e">reduce_sumsq()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="aa5a865e85b2b340bec06c6547513df82"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1mapping.html">mapping</a>* CTF_int::tensor::edge_map</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>mappings of each tensor dimension onto topology dimensions </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00091">91</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="namespaceCTF__int.html#abb92f7981effecec306d755d66396438">CTF_int::check_self_mapping()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#aa01538e94978256fdc9353821be07c2e">CTF_int::ctr_2d_gen_build()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="namespaceCTF__int.html#aa9b27832fcf013baebe48754037d082a">CTF_int::map_self_indices()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="aa7423735e014208b2d58f2b1fcf43ef6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::has_home</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether the tensor has a home mapping/buffer </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00115">115</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a48672036dc4b0b8ad77f7ff195ccda77"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::has_zero_edge_len</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>if true tensor has a zero edge length, so is zero, which short-cuts stuff </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00108">108</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="a94a032fa1b4349db7faaabc17f34c0a0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CTF_int::tensor::home_buffer</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>buffer associated with home mapping of tensor, to which it is returned </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00117">117</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="aa60f1476a89a8da0d22ce5e3db05f308"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int64_t CTF_int::tensor::home_size</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>size of home buffer </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00119">119</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a80cdb7beb76590808b65c519a1622871"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::inner_ordering</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>ordering of the dimensions according to which the tensori s folded </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00097">97</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>.</p>

</div>
</div>
<a class="anchor" id="ab5d7420e4f2ec1a15b5d029723510957"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::is_cyclic</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether the tensor data is cyclically distributed (blocked if false) </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00101">101</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, and <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>.</p>

</div>
</div>
<a class="anchor" id="a78819ce884044b706a4c2407c97ba729"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::is_data_aliased</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether the tensor data is an alias of another tensor object's data </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00103">103</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a3c9dc1dd1a70bd3ad33cf7b547d4fa65">read()</a>.</p>

</div>
</div>
<a class="anchor" id="a9394d302202f0b12c77319e5a8c3fc64"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::is_folded</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether the data is folded/transposed into a (lower-order) tensor </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00095">95</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>.</p>

</div>
</div>
<a class="anchor" id="ad0874aacfaab789ea316c8e8e374a5d1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::is_home</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether the latest tensor data is in the home buffer </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00121">121</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a0a0f727aa36ba7d74a6fd788e7ab99f1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::is_mapped</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether a mapping has been selected </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00087">87</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="af47c0013fc320fc96fb601f38e4c3a77"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::is_scp_padded</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether tensor data has additional padding </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00081">81</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

</div>
</div>
<a class="anchor" id="ab10166c977c707184e26c026c5b11fc6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::lens</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>unpadded tensor edge lengths </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00073">73</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="group__CCSD.html#ga8f423d0fab0387b0eac5b94c26171dac">ccsd()</a>, <a class="el" href="group__fastasassy.html#ga88e02dc67c92c34807897eaaba1ed1ff">check_asym()</a>, <a class="el" href="group__fastasassy.html#gae4fa965289e1bdc26c48c4f9f866a919">check_sym()</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#a3e85f2ceae52dd5318a1bea1b1ebb262">CTF_int::get_full_intm()</a>, <a class="el" href="group__fastasassy.html#gae804fd6006c5b57523f0d37400a36a6f">get_rand_as_tsr()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="ac6eebbc9c29b4f7f3743f79780a043e7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CTF_int::tensor::name</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>name given to tensor </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00079">79</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="group__scheduler.html#ga6c4e54f5494fc48daecf47899180f292">CTF::TensorOperation::name()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a248c9ece4f75adfdc25599b7900ab1ef"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int CTF_int::tensor::order</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>number of tensor dimensions </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00071">71</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#afdbb0c2c1df4b2114cbf33714a68a82e">add_from_subworld()</a>, <a class="el" href="namespaceCTF__int.html#a4082eac11541737ef81bbf55bdee422c">CTF_int::add_sym_perm()</a>, <a class="el" href="classCTF__int_1_1tensor.html#adfddbdeaaa4a7dfb1c87659b75c70a65">add_to_subworld()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="group__fastasassy.html#ga88e02dc67c92c34807897eaaba1ed1ff">check_asym()</a>, <a class="el" href="namespaceCTF__int.html#abb92f7981effecec306d755d66396438">CTF_int::check_self_mapping()</a>, <a class="el" href="group__fastasassy.html#gae4fa965289e1bdc26c48c4f9f866a919">check_sym()</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF__int_1_1contraction.html#a07160500f93c1ad2e6760d8b8d7a51c7">CTF_int::contraction::contraction()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#aa01538e94978256fdc9353821be07c2e">CTF_int::ctr_2d_gen_build()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="group__fastasassy.html#ga9679e0ede24be1a50182e7dbadd7a22d">fast_tensor_ctr()</a>, <a class="el" href="namespaceCTF__int.html#a3e85f2ceae52dd5318a1bea1b1ebb262">CTF_int::get_full_intm()</a>, <a class="el" href="group__fastasassy.html#gae804fd6006c5b57523f0d37400a36a6f">get_rand_as_tsr()</a>, <a class="el" href="namespaceCTF__int.html#a088b435571328701f9f8d18730a732fa">CTF_int::get_sym_perms()</a>, <a class="el" href="classCTF_1_1Idx__Tensor.html#aa49522e3d8121f63b1924e0a4f0d1ea4">CTF::Idx_Tensor::Idx_Tensor()</a>, <a class="el" href="namespaceCTF__int.html#aa9b27832fcf013baebe48754037d082a">CTF_int::map_self_indices()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="namespaceCTF__int.html#a93bb8c044a49cc770524e27f97fd4fc7">CTF_int::order_perm()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>, <a class="el" href="classCTF__int_1_1summation.html#ad21b38fd0d5805aaaec5211e247de029">CTF_int::summation::summation()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="aec0bb6504e2ad703ec7b674ef0d984ac"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::pad_edge_len</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>padded tensor edge lengths </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00075">75</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="ae011d15d2bfec4b627344604d82adab5"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::padding</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>padding along each edge length (less than distribution phase) </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00077">77</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="aeedfb90158cd104a867a975d853ed7e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">char* CTF_int::tensor::pairs</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00112">112</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>.</p>

</div>
</div>
<a class="anchor" id="ad9879aa3c27ea65feead0fe0a7e5e966"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool CTF_int::tensor::profile</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>whether profiling should be done for contractions/sums involving this tensor </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00123">123</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a7143cc7f19beb0346925d449fdfb595c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a>* CTF_int::tensor::rec_tsr</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>representation of folded tensor (shares data pointer) </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00099">99</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>.</p>

</div>
</div>
<a class="anchor" id="aa53a002f8e37203fc0275c0776c2e976"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::scp_padding</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>additional padding, may be greater than ScaLAPACK phase </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00083">83</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

</div>
</div>
<a class="anchor" id="ae90b56ccd442adbb0205119c600c9c1a"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int64_t CTF_int::tensor::size</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>current size of local tensor data chunk (mapping-dependent) </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00093">93</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a1ec4040dd8b93ecf75c8fbf4253b6073"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a>* CTF_int::tensor::slay</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>tensor object associated with tensor object whose data pointer needs to be preserved, needed for ScaLAPACK wrapper FIXME: home buffer should presumably take care of this... </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00106">106</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

</div>
</div>
<a class="anchor" id="a95e7d747c8e824d47c246ba1d5b283b7"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1algstrct.html">algstrct</a>* CTF_int::tensor::sr</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>algstrct on which tensor elements and operations are defined </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00067">67</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="namespaceCTF__int.html#a3e85f2ceae52dd5318a1bea1b1ebb262">CTF_int::get_full_intm()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="group__scheduler.html#gad6021b1e4bbd3086aa08a12d49a8006c">CTF::Schedule::partition_and_execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, <a class="el" href="classCTF_1_1Sparse__Tensor.html#a935f2927eff54c17617b27c9489e726b">CTF::Sparse_Tensor&lt; dtype, is_ord &gt;::Sparse_Tensor()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, <a class="el" href="classCTF_1_1Tensor.html#a5ff5c76040ebf0eb52854a66a953cfcf">CTF::Tensor&lt; dtype, is_ord &gt;::Tensor()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>.</p>

</div>
</div>
<a class="anchor" id="a01d1845d3407020e5c3724ac9a8ede66"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::sym</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>symmetries among tensor dimensions </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00069">69</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="namespaceCTF__int.html#a4082eac11541737ef81bbf55bdee422c">CTF_int::add_sym_perm()</a>, <a class="el" href="group__CCSD.html#ga8f423d0fab0387b0eac5b94c26171dac">ccsd()</a>, <a class="el" href="group__fastasassy.html#ga88e02dc67c92c34807897eaaba1ed1ff">check_asym()</a>, <a class="el" href="group__fastasassy.html#gae4fa965289e1bdc26c48c4f9f866a919">check_sym()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="namespaceCTF__int.html#a3e85f2ceae52dd5318a1bea1b1ebb262">CTF_int::get_full_intm()</a>, <a class="el" href="group__fastasassy.html#gae804fd6006c5b57523f0d37400a36a6f">get_rand_as_tsr()</a>, <a class="el" href="namespaceCTF__int.html#a088b435571328701f9f8d18730a732fa">CTF_int::get_sym_perms()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="namespaceCTF__int.html#a93bb8c044a49cc770524e27f97fd4fc7">CTF_int::order_perm()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="a4d0ba1dede97462aa9f24796e2c434e6"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* CTF_int::tensor::sym_table</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>order-by-order table of dimensional symmetry relations </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00085">85</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, and <a class="el" href="namespaceCTF__int.html#aa9b27832fcf013baebe48754037d082a">CTF_int::map_self_indices()</a>.</p>

</div>
</div>
<a class="anchor" id="afd917fd431d94d10ce50c10161fc6a8c"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF__int_1_1topology.html">topology</a>* CTF_int::tensor::topo</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>topology to which the tensor is mapped </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00089">89</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#aa01538e94978256fdc9353821be07c2e">CTF_int::ctr_2d_gen_build()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1distribution.html#a9f98bfd9322160184becac06d71405b2">CTF_int::distribution::distribution()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ac0f5757dbb7fcef64106e1224245a925">pull_alias()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a0e0eb27643a49793a9f7f8e3f438bd08">read_local()</a>, <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, and <a class="el" href="classCTF__int_1_1tensor.html#a1df17d4129ad9efb4f0d6554149d059f">write()</a>.</p>

</div>
</div>
<a class="anchor" id="a1c9b106ed78c5529d50ea1ac4cd3d813"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classCTF_1_1World.html">CTF::World</a>* CTF_int::tensor::wrld</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>distributed processor context on which tensor is defined </p>

<p>Definition at line <a class="el" href="untyped__tensor_8h_source.html#l00065">65</a> of file <a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a>.</p>

<p>Referenced by <a class="el" href="classCTF__int_1_1tensor.html#a4071ae4b55fb8eef4df6f837fc2ee90d">align()</a>, <a class="el" href="classCTF_1_1Tensor.html#a384d14673316d2b191f0a675a06fa92a">CTF::Tensor&lt; dtype, is_ord &gt;::align()</a>, <a class="el" href="group__fastasassy.html#ga88e02dc67c92c34807897eaaba1ed1ff">check_asym()</a>, <a class="el" href="group__fastasassy.html#gae4fa965289e1bdc26c48c4f9f866a919">check_sym()</a>, <a class="el" href="classCTF__int_1_1tensor.html#aa8949343fdaccbebcc107274e97f6777">compare()</a>, <a class="el" href="classCTF_1_1Tensor.html#a53e15ed810bbd83ab94206f66f99b915">CTF::Tensor&lt; dtype, is_ord &gt;::contract()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ab092588e88b7ee3b46eea1cb18a95a01">copy_tensor_data()</a>, <a class="el" href="namespaceCTF__int.html#ac3ceed0c15fab3c567652059f4d92588">CTF_int::desymmetrize()</a>, <a class="el" href="classCTF__int_1_1scaling.html#a05bf6c564805ed645c4105a3cdd645ed">CTF_int::scaling::execute()</a>, <a class="el" href="namespaceCTF__int.html#a3e85f2ceae52dd5318a1bea1b1ebb262">CTF_int::get_full_intm()</a>, <a class="el" href="group__fastasassy.html#gae804fd6006c5b57523f0d37400a36a6f">get_rand_as_tsr()</a>, <a class="el" href="group__CTF.html#ga2b80ae28a1adacdc9f51bc0f88dfb6df">CTF::Vector&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Scalar.html#a02cc0594b88ecd7ad6e536178dc096fd">CTF::Scalar&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Matrix.html#a10bcb5867b357aa3db878c6694bdbd3c">CTF::Matrix&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF_1_1Tensor.html#af97391e843b7e4a8893aa87f68a4dd0d">CTF::Tensor&lt; dtype, is_ord &gt;::operator=()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a94adf90f6737329650d5b39b78c7a096">permute()</a>, <a class="el" href="classCTF__int_1_1tensor.html#ad00e69a78e633b35fa82fea1dd0e2ba2">slice()</a>, <a class="el" href="group__slice__gemm.html#ga847a504f012e1cdb7f9c68dd819b4d03">slice_gemm()</a>, <a class="el" href="classCTF_1_1Tensor.html#a72b5eb51418fee62e95a3cea514c50f2">CTF::Tensor&lt; dtype, is_ord &gt;::sum()</a>, <a class="el" href="classCTF__int_1_1summation.html#a0b0286f1b6fabb303bbe881b24012461">CTF_int::summation::sum_tensors()</a>, <a class="el" href="namespaceCTF__int.html#a4cf8d1df64327ab8ca17c7947dbcfa02">CTF_int::symmetrize()</a>, <a class="el" href="classCTF__int_1_1tensor.html#a2915ace9df413cc5c32049d178287651">tensor()</a>, and <a class="el" href="classCTF_1_1Idx__Tensor.html#a2c7710095b76ac3a8a7d5a7ea3f6fc5a">CTF::Idx_Tensor::where_am_i()</a>.</p>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="untyped__tensor_8h_source.html">untyped_tensor.h</a></li>
<li><a class="el" href="untyped__tensor_8cxx_source.html">untyped_tensor.cxx</a></li>
</ul>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="namespaceCTF__int.html">CTF_int</a></li><li class="navelem"><a class="el" href="classCTF__int_1_1tensor.html">tensor</a></li>
    <li class="footer">Generated on Wed Apr 8 2015 15:57:40 for Cyclops Tensor Framework by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.6 </li>
  </ul>
</div>
</body>
</html>