colamd_8h.html

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

HTML
1,059
字号
<!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/colamd.h 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/colamd.h File Reference</h1>Colamd prototypes and definitions. <a href="#_details">More...</a><p><code>#include &lt;stdlib.h&gt;</code><br><p><a href="colamd_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"><tr><td></td></tr><tr><td colspan="2"><br><h2>Data Structures</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structColamd__Col__struct.html">Colamd_Col_struct</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structColamd__Row__struct.html">Colamd_Row_struct</a></td></tr><tr><td colspan="2"><br><h2>Defines</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e92bb10d09f7cd004f07d1baddf90548">COLAMD_KNOBS</a>&nbsp;&nbsp;&nbsp;20</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#411703fc0a994b83ec0e00df1abfc0f7">COLAMD_STATS</a>&nbsp;&nbsp;&nbsp;20</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#45a417439d08823fa620ca00d834dd61">COLAMD_DENSE_ROW</a>&nbsp;&nbsp;&nbsp;0</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#f92de54efdec91d7ab64e7bec07eb12c">COLAMD_DENSE_COL</a>&nbsp;&nbsp;&nbsp;1</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#babfabfa19364ec563aa9c15bcc9714e">COLAMD_DEFRAG_COUNT</a>&nbsp;&nbsp;&nbsp;2</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#6a4201ce55dfa3a6375b90097e8c747e">COLAMD_STATUS</a>&nbsp;&nbsp;&nbsp;3</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#569d56a773011e0b4e465b3f5830e80b">COLAMD_INFO1</a>&nbsp;&nbsp;&nbsp;4</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2161fd78bbd688f943250d1d7583284b">COLAMD_INFO2</a>&nbsp;&nbsp;&nbsp;5</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#15d83814c573d742764ff83e9d1d67fc">COLAMD_INFO3</a>&nbsp;&nbsp;&nbsp;6</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#a754fd30d924c5c8d2d402fa0a482d72">COLAMD_OK</a>&nbsp;&nbsp;&nbsp;(0)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#c0d7f3882e6e9e39527aa2195dd23789">COLAMD_OK_BUT_JUMBLED</a>&nbsp;&nbsp;&nbsp;(1)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2347fb9e509c8bf9b97a50f96dea281c">COLAMD_ERROR_A_not_present</a>&nbsp;&nbsp;&nbsp;(-1)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#51d3f9714a4cb80c0f54dea5d0c5f95f">COLAMD_ERROR_p_not_present</a>&nbsp;&nbsp;&nbsp;(-2)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#8e848cfde5cdf42fcb316695305f8002">COLAMD_ERROR_nrow_negative</a>&nbsp;&nbsp;&nbsp;(-3)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2feedddbe535286cbea9eca9fca91f45">COLAMD_ERROR_ncol_negative</a>&nbsp;&nbsp;&nbsp;(-4)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#7147ea7a9d673f17ef856e9914f90c81">COLAMD_ERROR_nnz_negative</a>&nbsp;&nbsp;&nbsp;(-5)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#58b5d911cc825b4334ade136bad3afd3">COLAMD_ERROR_p0_nonzero</a>&nbsp;&nbsp;&nbsp;(-6)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#323108d44db4186fad5a2066139f70b7">COLAMD_ERROR_A_too_small</a>&nbsp;&nbsp;&nbsp;(-7)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#3b6df4a489ed0c7de8ad12251cdac5d6">COLAMD_ERROR_col_length_negative</a>&nbsp;&nbsp;&nbsp;(-8)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#0559e0ff07deab1841e7aaee8cde51e6">COLAMD_ERROR_row_index_out_of_bounds</a>&nbsp;&nbsp;&nbsp;(-9)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#703f11265b521c931cdd44709d141fca">COLAMD_ERROR_out_of_memory</a>&nbsp;&nbsp;&nbsp;(-10)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e97b9ba07b455e4ce07c53a4d71c1169">COLAMD_ERROR_internal_error</a>&nbsp;&nbsp;&nbsp;(-999)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#339fb9b07ed315667cc4542c15116c83">COLAMD_C</a>(n_col)&nbsp;&nbsp;&nbsp;((int) (((n_col) + 1) * sizeof (<a class="el" href="structColamd__Col__struct.html">Colamd_Col</a>) / sizeof (int)))</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#52e8a8827c11d9c2a1f1b87e09bc8dc0">COLAMD_R</a>(n_row)&nbsp;&nbsp;&nbsp;((int) (((n_row) + 1) * sizeof (<a class="el" href="structColamd__Row__struct.html">Colamd_Row</a>) / sizeof (int)))</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#a6980d68bd04f7567d7d0bd40b244c2f">COLAMD_RECOMMENDED</a>(nnz, n_row, n_col)</td></tr><tr><td colspan="2"><br><h2>Typedefs</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structColamd__Col__struct.html">Colamd_Col_struct</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#059db10cdebbb878b50bfcd2e023315a">Colamd_Col</a></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structColamd__Row__struct.html">Colamd_Row_struct</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#8a1ceeb79ebba705abb1d27469f4a358">Colamd_Row</a></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#9b48c9b9eb5dce7e9ca42174208b1015">colamd_recommended</a> (int nnz, int n_row, int n_col)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e582ce20a46b5ef39434acb9d66fe2ca">colamd_set_defaults</a> (double knobs[COLAMD_KNOBS])</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#f5cec4b6391e4c20abfaa6da39975bca">colamd</a> (int n_row, int n_col, int Alen, int A[], int p[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS])</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e3d0175d1cb36f6cb16dfe96bbf946a3">symamd</a> (int n, int A[], int p[], int perm[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS], void *(*allocate)(size_t, size_t), void(*release)(void *))</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#7cfa2e07413d0bc9489f10ac881faa51">colamd_report</a> (int stats[COLAMD_STATS])</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#948750692c453eb36edc5b77a670ec54">symamd_report</a> (int stats[COLAMD_STATS])</td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2><pre>     ==========================================================================    === colamd/symamd prototypes and definitions =============================    ==========================================================================</pre><p><pre>    You must include this file (<a class="el" href="colamd_8h.html">colamd.h</a>) in any routine that uses colamd,    symamd, or the related macros and definitions.</pre><p><pre>    Authors:</pre><p><pre>	The authors of the code itself are Stefan I. Larimore and Timothy A.	Davis (<a href="mailto:davis@cise.ufl.edu">davis@cise.ufl.edu</a>), University of Florida.  The algorithm was	developed in collaboration with John Gilbert, Xerox PARC, and Esmond	Ng, Oak Ridge National Laboratory.</pre><p><pre>    Date:</pre><p><pre>	September 8, 2003.  Version 2.3.</pre><p><pre>    Acknowledgements:</pre><p><pre>	This work was supported by the National Science Foundation, under	grants DMS-9504974 and DMS-9803599.</pre><p><pre>    Notice:</pre><p><pre>	Copyright (c) 1998-2003 by the University of Florida.	All Rights Reserved.</pre><p><pre>	THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY	EXPRESSED OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.</pre><p><pre>	Permission is hereby granted to use, copy, modify, and/or distribute	this program, provided that the Copyright, this License, and the	Availability of the original version is retained on all copies and made	accessible to the end-user of any code or package that includes COLAMD	or any modified version of COLAMD.</pre><p><pre>    Availability:</pre><p><pre>	The colamd/symamd library is available at</pre><p><pre>	    <a href="http://www.cise.ufl.edu/research/sparse/colamd/">http://www.cise.ufl.edu/research/sparse/colamd/</a></pre><p><pre>	This is the <a href="http://www.cise.ufl.edu/research/sparse/colamd/colamd.h">http://www.cise.ufl.edu/research/sparse/colamd/colamd.h</a>	file.  It is required by the <a class="el" href="colamd_8c.html">colamd.c</a>, colamdmex.c, and symamdmex.c	files, and by any C code that calls the routines whose prototypes are	listed below, or that uses the colamd/symamd definitions listed below. </pre> <hr><h2>Define Documentation</h2><a class="anchor" name="339fb9b07ed315667cc4542c15116c83"></a><!-- doxytag: member="colamd.h::COLAMD_C" ref="339fb9b07ed315667cc4542c15116c83" args="(n_col)" --><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">#define COLAMD_C          </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">n_col&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;((int) (((n_col) + 1) * sizeof (<a class="el" href="structColamd__Col__struct.html">Colamd_Col</a>) / sizeof (int)))</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="babfabfa19364ec563aa9c15bcc9714e"></a><!-- doxytag: member="colamd.h::COLAMD_DEFRAG_COUNT" ref="babfabfa19364ec563aa9c15bcc9714e" args="" --><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">#define COLAMD_DEFRAG_COUNT&nbsp;&nbsp;&nbsp;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="f92de54efdec91d7ab64e7bec07eb12c"></a><!-- doxytag: member="colamd.h::COLAMD_DENSE_COL" ref="f92de54efdec91d7ab64e7bec07eb12c" args="" --><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">#define COLAMD_DENSE_COL&nbsp;&nbsp;&nbsp;1          </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="45a417439d08823fa620ca00d834dd61"></a><!-- doxytag: member="colamd.h::COLAMD_DENSE_ROW" ref="45a417439d08823fa620ca00d834dd61" args="" --><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">#define COLAMD_DENSE_ROW&nbsp;&nbsp;&nbsp;0          </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="2347fb9e509c8bf9b97a50f96dea281c"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_A_not_present" ref="2347fb9e509c8bf9b97a50f96dea281c" args="" --><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">#define COLAMD_ERROR_A_not_present&nbsp;&nbsp;&nbsp;(-1)          </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="323108d44db4186fad5a2066139f70b7"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_A_too_small" ref="323108d44db4186fad5a2066139f70b7" args="" --><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">#define COLAMD_ERROR_A_too_small&nbsp;&nbsp;&nbsp;(-7)          </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="3b6df4a489ed0c7de8ad12251cdac5d6"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_col_length_negative" ref="3b6df4a489ed0c7de8ad12251cdac5d6" args="" --><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">#define COLAMD_ERROR_col_length_negative&nbsp;&nbsp;&nbsp;(-8)          </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="e97b9ba07b455e4ce07c53a4d71c1169"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_internal_error" ref="e97b9ba07b455e4ce07c53a4d71c1169" args="" --><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">#define COLAMD_ERROR_internal_error&nbsp;&nbsp;&nbsp;(-999)          </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="2feedddbe535286cbea9eca9fca91f45"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_ncol_negative" ref="2feedddbe535286cbea9eca9fca91f45" args="" --><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">#define COLAMD_ERROR_ncol_negative&nbsp;&nbsp;&nbsp;(-4)          </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="7147ea7a9d673f17ef856e9914f90c81"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_nnz_negative" ref="7147ea7a9d673f17ef856e9914f90c81" args="" --><p><table class="mdTable" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>

⌨️ 快捷键说明

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