get__perm__c_8c.html

来自「SuperLU is a general purpose library for」· HTML 代码 · 共 436 行 · 第 1/2 页

HTML
436
字号
      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top">void get_colamd           </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">const int&nbsp;</td>          <td class="mdname" nowrap> <em>m</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>const 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>const int&nbsp;</td>          <td class="mdname" nowrap> <em>nnz</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>colptr</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>rowind</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"></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="aecb6e6e7a3e97356050bcfdf2573796"></a><!-- doxytag: member="get_perm_c.c::get_perm_c" ref="aecb6e6e7a3e97356050bcfdf2573796" args="(int ispec, SuperMatrix *A, int *perm_c)" --><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 get_perm_c           </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">int&nbsp;</td>          <td class="mdname" nowrap> <em>ispec</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"></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> GET_PERM_C obtains a permutation matrix Pc, by applying the multiple minimum degree ordering code by Joseph Liu to matrix A'*A or A+A'. or using approximate minimum degree column ordering by Davis et. al. The LU factorization of A*Pc tends to have less fill than the LU  factorization of A.</pre><p><pre> Arguments =========</pre><p><pre> ispec   (input) int         Specifies the type of column ordering to reduce fill:         = 1: minimum degree on the structure of A^T * A         = 2: minimum degree on the structure of A^T + A         = 3: approximate minimum degree for unsymmetric matrices         If ispec == 0, the natural ordering (i.e., Pc = I) is returned.</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; Dtype = _D; Mtype = GE. In the future,         more general A can be handled.</pre><p><pre> perm_c  (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. </pre>     </td>  </tr></table><a class="anchor" name="90f30e2b284864f6a800a98ceaff8fbc"></a><!-- doxytag: member="get_perm_c.c::getata" ref="90f30e2b284864f6a800a98ceaff8fbc" args="(const int m, const int n, const int nz, int *colptr, int *rowind, int *atanz, int **ata_colptr, int **ata_rowind)" --><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 getata           </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">const int&nbsp;</td>          <td class="mdname" nowrap> <em>m</em>, </td>        </tr>        <tr>          <td class="md" nowrap align="right"></td>          <td class="md"></td>          <td class="md" nowrap>const 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>const int&nbsp;</td>          <td class="mdname" nowrap> <em>nz</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>colptr</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>rowind</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>atanz</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>ata_colptr</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>ata_rowind</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> Form the structure of A'*A. A is an m-by-n matrix in column oriented format represented by (colptr, rowind). The output A'*A is in column oriented format (symmetrically, also row oriented), represented by (ata_colptr, ata_rowind).</pre><p><pre> This routine is modified from GETATA routine by Tim Davis. The complexity of this algorithm is: SUM_{i=1,m} r(i)^2, i.e., the sum of the square of the row counts.</pre><p><pre> Questions =========     o  Do I need to withhold the *dense* rows?     o  How do I know the number of nonzeros in A'*A? </pre>     </td>  </tr></table><hr size="1"><address style="align: right;"><small>Generated on Fri Aug 1 22:40:40 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 + -
显示快捷键?