sp__preorder_8c.html

来自「SuperLU is a general purpose library for」· HTML 代码 · 共 176 行

HTML
176
字号
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>SuperLU: SRC/sp_preorder.c File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.4.6 --><div class="tabs">  <ul>    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>    <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>    <li id="current"><a href="files.html"><span>Files</span></a></li>  </ul></div><div class="tabs">  <ul>    <li><a href="files.html"><span>File&nbsp;List</span></a></li>    <li><a href="globals.html"><span>Globals</span></a></li>  </ul></div><h1>SRC/sp_preorder.c File Reference</h1>Permute and performs functions on columns of orginal matrix. <a href="#_details">More...</a><p><code>#include &quot;<a class="el" href="slu__ddefs_8h-source.html">slu_ddefs.h</a>&quot;</code><br><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sp__preorder_8c.html#d3a9a45f02456022c7eba79e17e215bc">sp_preorder</a> (<a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *options, <a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A, int *perm_c, int *etree, <a class="el" href="structSuperMatrix.html">SuperMatrix</a> *AC)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sp__preorder_8c.html#c79059104ae6abf212c41986820d358c">check_perm</a> (char *what, int n, int *perm)</td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2><hr><h2>Function Documentation</h2><a class="anchor" name="c79059104ae6abf212c41986820d358c"></a><!-- doxytag: member="sp_preorder.c::check_perm" ref="c79059104ae6abf212c41986820d358c" args="(char *what, int n, int *perm)" --><p><table class="mdTable" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top">int check_perm           </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">char *&nbsp;</td>          <td class="mdname" nowrap> <em>what</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>int&nbsp;</td>          <td class="mdname" nowrap> <em>n</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>int *&nbsp;</td>          <td class="mdname" nowrap> <em>perm</em></td>        </tr>        <tr>          <td class="md"></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"></td>        </tr>      </table>    </td>  </tr></table><table cellspacing="5" cellpadding="0" border="0">  <tr>    <td>      &nbsp;    </td>    <td><p>    </td>  </tr></table><a class="anchor" name="d3a9a45f02456022c7eba79e17e215bc"></a><!-- doxytag: member="sp_preorder.c::sp_preorder" ref="d3a9a45f02456022c7eba79e17e215bc" args="(superlu_options_t *options, SuperMatrix *A, int *perm_c, int *etree, SuperMatrix *AC)" --><p><table class="mdTable" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top">void sp_preorder           </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top"><a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *&nbsp;</td>          <td class="mdname" nowrap> <em>options</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>          <td class="mdname" nowrap> <em>A</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>int *&nbsp;</td>          <td class="mdname" nowrap> <em>perm_c</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>int *&nbsp;</td>          <td class="mdname" nowrap> <em>etree</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>          <td class="mdname" nowrap> <em>AC</em></td>        </tr>        <tr>          <td class="md"></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"></td>        </tr>      </table>    </td>  </tr></table><table cellspacing="5" cellpadding="0" border="0">  <tr>    <td>      &nbsp;    </td>    <td><p><pre> Purpose =======</pre><p><pre> <a class="el" href="slu__util_8h.html#df9c573cbfb4520a5ea820702d27cfa5">sp_preorder()</a> permutes the columns of the original matrix. It performs the following steps:</pre><p><pre>    1. Apply column permutation perm_c[] to A's column pointers to form AC;</pre><p><pre>    2. If options-&gt;Fact = DOFACT, then       (1) Compute column elimination tree etree[] of AC'AC;       (2) Post order etree[] to get a postordered elimination tree etree[],           and a postorder permutation post[];       (3) Apply post[] permutation to columns of AC;       (4) Overwrite perm_c[] with the product perm_c * post.</pre><p><pre> Arguments =========</pre><p><pre> options (input) superlu_options_t*         Specifies whether or not the elimination tree will be re-used.         If options-&gt;Fact == DOFACT, this means first time factor A,          etree is computed, postered, and output.         Otherwise, re-factor A, etree is input, unchanged on exit.</pre><p><pre> A       (input) SuperMatrix*         Matrix A in A*X=B, of dimension (A-&gt;nrow, A-&gt;ncol). The number         of the linear equations is A-&gt;nrow. Currently, the type of A can be:         Stype = NC or SLU_NCP; Mtype = SLU_GE.         In the future, more general A may be handled.</pre><p><pre> perm_c  (input/output) int*	   Column permutation vector of size A-&gt;ncol, which defines the          permutation matrix Pc; perm_c[i] = j means column i of A is          in position j in A*Pc.         If options-&gt;Fact == DOFACT, perm_c is both input and output.         On output, it is changed according to a postorder of etree.         Otherwise, perm_c is input.</pre><p><pre> etree   (input/output) int*         Elimination tree of Pc'*A'*A*Pc, dimension A-&gt;ncol.         If options-&gt;Fact == DOFACT, etree is an output argument,         otherwise it is an input argument.         Note: etree is a vector of parent pointers for a forest whose         vertices are the integers 0 to A-&gt;ncol-1; etree[root]==A-&gt;ncol.</pre><p><pre> AC      (output) SuperMatrix*         The resulting matrix after applied the column permutation         perm_c[] to matrix A. The type of AC can be:         Stype = SLU_NCP; Dtype = A-&gt;Dtype; Mtype = SLU_GE. </pre>     </td>  </tr></table><hr size="1"><address style="align: right;"><small>Generated on Fri Aug 1 22:40:41 2008 for SuperLU by&nbsp;<a href="http://www.doxygen.org/index.html"><img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address></body></html>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?