<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<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.5.5 -->
<div class="navigation" id="top">
<div class="tabs">
<ul>
<li><a href="index.html"><span>Main Page</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="contents">
<h1>SRC/colamd.h File Reference</h1>Colamd prototypes and definitions. <a href="#_details">More...</a>
<p>
<code>#include <stdlib.h></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 </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 </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 </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e92bb10d09f7cd004f07d1baddf90548">COLAMD_KNOBS</a> 20</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#411703fc0a994b83ec0e00df1abfc0f7">COLAMD_STATS</a> 20</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#45a417439d08823fa620ca00d834dd61">COLAMD_DENSE_ROW</a> 0</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#f92de54efdec91d7ab64e7bec07eb12c">COLAMD_DENSE_COL</a> 1</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#babfabfa19364ec563aa9c15bcc9714e">COLAMD_DEFRAG_COUNT</a> 2</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#6a4201ce55dfa3a6375b90097e8c747e">COLAMD_STATUS</a> 3</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#569d56a773011e0b4e465b3f5830e80b">COLAMD_INFO1</a> 4</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2161fd78bbd688f943250d1d7583284b">COLAMD_INFO2</a> 5</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#15d83814c573d742764ff83e9d1d67fc">COLAMD_INFO3</a> 6</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#a754fd30d924c5c8d2d402fa0a482d72">COLAMD_OK</a> (0)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#c0d7f3882e6e9e39527aa2195dd23789">COLAMD_OK_BUT_JUMBLED</a> (1)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2347fb9e509c8bf9b97a50f96dea281c">COLAMD_ERROR_A_not_present</a> (-1)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#51d3f9714a4cb80c0f54dea5d0c5f95f">COLAMD_ERROR_p_not_present</a> (-2)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#8e848cfde5cdf42fcb316695305f8002">COLAMD_ERROR_nrow_negative</a> (-3)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#2feedddbe535286cbea9eca9fca91f45">COLAMD_ERROR_ncol_negative</a> (-4)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#7147ea7a9d673f17ef856e9914f90c81">COLAMD_ERROR_nnz_negative</a> (-5)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#58b5d911cc825b4334ade136bad3afd3">COLAMD_ERROR_p0_nonzero</a> (-6)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#323108d44db4186fad5a2066139f70b7">COLAMD_ERROR_A_too_small</a> (-7)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#3b6df4a489ed0c7de8ad12251cdac5d6">COLAMD_ERROR_col_length_negative</a> (-8)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#0559e0ff07deab1841e7aaee8cde51e6">COLAMD_ERROR_row_index_out_of_bounds</a> (-9)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#703f11265b521c931cdd44709d141fca">COLAMD_ERROR_out_of_memory</a> (-10)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e97b9ba07b455e4ce07c53a4d71c1169">COLAMD_ERROR_internal_error</a> (-999)</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#339fb9b07ed315667cc4542c15116c83">COLAMD_C</a>(n_col) ((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 </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#52e8a8827c11d9c2a1f1b87e09bc8dc0">COLAMD_R</a>(n_row) ((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 </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 struct <a class="el" href="structColamd__Col__struct.html">Colamd_Col_struct</a> </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 struct <a class="el" href="structColamd__Row__struct.html">Colamd_Row_struct</a> </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 </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 </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 </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 class="el" href="ilu__zdrop__row_8c.html#c900805a486cbb8489e3c176ed6e0d8e">A</a>[], int p[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS])</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="colamd_8h.html#e3d0175d1cb36f6cb16dfe96bbf946a3">symamd</a> (int n, int <a class="el" href="ilu__zdrop__row_8c.html#c900805a486cbb8489e3c176ed6e0d8e">A</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 </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 </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" title="Colamd prototypes and definitions.">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" title="A sparse matrix column ordering algorithm.">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)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_C </td>
<td>(</td>
<td class="paramtype">n_col </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> ((int) (((n_col) + 1) * sizeof (<a class="el" href="structColamd__Col__struct.html">Colamd_Col</a>) / sizeof (int)))</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="babfabfa19364ec563aa9c15bcc9714e"></a><!-- doxytag: member="colamd.h::COLAMD_DEFRAG_COUNT" ref="babfabfa19364ec563aa9c15bcc9714e" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_DEFRAG_COUNT 2 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="f92de54efdec91d7ab64e7bec07eb12c"></a><!-- doxytag: member="colamd.h::COLAMD_DENSE_COL" ref="f92de54efdec91d7ab64e7bec07eb12c" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_DENSE_COL 1 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="45a417439d08823fa620ca00d834dd61"></a><!-- doxytag: member="colamd.h::COLAMD_DENSE_ROW" ref="45a417439d08823fa620ca00d834dd61" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_DENSE_ROW 0 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="2347fb9e509c8bf9b97a50f96dea281c"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_A_not_present" ref="2347fb9e509c8bf9b97a50f96dea281c" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_A_not_present (-1) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="323108d44db4186fad5a2066139f70b7"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_A_too_small" ref="323108d44db4186fad5a2066139f70b7" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_A_too_small (-7) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="3b6df4a489ed0c7de8ad12251cdac5d6"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_col_length_negative" ref="3b6df4a489ed0c7de8ad12251cdac5d6" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_col_length_negative (-8) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="e97b9ba07b455e4ce07c53a4d71c1169"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_internal_error" ref="e97b9ba07b455e4ce07c53a4d71c1169" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_internal_error (-999) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="2feedddbe535286cbea9eca9fca91f45"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_ncol_negative" ref="2feedddbe535286cbea9eca9fca91f45" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_ncol_negative (-4) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="7147ea7a9d673f17ef856e9914f90c81"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_nnz_negative" ref="7147ea7a9d673f17ef856e9914f90c81" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_nnz_negative (-5) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="8e848cfde5cdf42fcb316695305f8002"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_nrow_negative" ref="8e848cfde5cdf42fcb316695305f8002" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_nrow_negative (-3) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="703f11265b521c931cdd44709d141fca"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_out_of_memory" ref="703f11265b521c931cdd44709d141fca" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_out_of_memory (-10) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="58b5d911cc825b4334ade136bad3afd3"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_p0_nonzero" ref="58b5d911cc825b4334ade136bad3afd3" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_p0_nonzero (-6) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="51d3f9714a4cb80c0f54dea5d0c5f95f"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_p_not_present" ref="51d3f9714a4cb80c0f54dea5d0c5f95f" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_p_not_present (-2) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="0559e0ff07deab1841e7aaee8cde51e6"></a><!-- doxytag: member="colamd.h::COLAMD_ERROR_row_index_out_of_bounds" ref="0559e0ff07deab1841e7aaee8cde51e6" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_ERROR_row_index_out_of_bounds (-9) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="569d56a773011e0b4e465b3f5830e80b"></a><!-- doxytag: member="colamd.h::COLAMD_INFO1" ref="569d56a773011e0b4e465b3f5830e80b" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_INFO1 4 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="2161fd78bbd688f943250d1d7583284b"></a><!-- doxytag: member="colamd.h::COLAMD_INFO2" ref="2161fd78bbd688f943250d1d7583284b" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_INFO2 5 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="15d83814c573d742764ff83e9d1d67fc"></a><!-- doxytag: member="colamd.h::COLAMD_INFO3" ref="15d83814c573d742764ff83e9d1d67fc" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_INFO3 6 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="e92bb10d09f7cd004f07d1baddf90548"></a><!-- doxytag: member="colamd.h::COLAMD_KNOBS" ref="e92bb10d09f7cd004f07d1baddf90548" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_KNOBS 20 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="a754fd30d924c5c8d2d402fa0a482d72"></a><!-- doxytag: member="colamd.h::COLAMD_OK" ref="a754fd30d924c5c8d2d402fa0a482d72" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_OK (0) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="c0d7f3882e6e9e39527aa2195dd23789"></a><!-- doxytag: member="colamd.h::COLAMD_OK_BUT_JUMBLED" ref="c0d7f3882e6e9e39527aa2195dd23789" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_OK_BUT_JUMBLED (1) </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="52e8a8827c11d9c2a1f1b87e09bc8dc0"></a><!-- doxytag: member="colamd.h::COLAMD_R" ref="52e8a8827c11d9c2a1f1b87e09bc8dc0" args="(n_row)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_R </td>
<td>(</td>
<td class="paramtype">n_row </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> ((int) (((n_row) + 1) * sizeof (<a class="el" href="structColamd__Row__struct.html">Colamd_Row</a>) / sizeof (int)))</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="a6980d68bd04f7567d7d0bd40b244c2f"></a><!-- doxytag: member="colamd.h::COLAMD_RECOMMENDED" ref="a6980d68bd04f7567d7d0bd40b244c2f" args="(nnz, n_row, n_col)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_RECOMMENDED </td>
<td>(</td>
<td class="paramtype">nnz, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">n_row, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">n_col </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<b>Value:</b><div class="fragment"><pre class="fragment">( \
((nnz) < 0 || (n_row) < 0 || (n_col) < 0) \
? \
(-1) \
: \
(2 * (nnz) + <a class="code" href="colamd_8h.html#339fb9b07ed315667cc4542c15116c83">COLAMD_C</a> (n_col) + <a class="code" href="colamd_8h.html#52e8a8827c11d9c2a1f1b87e09bc8dc0">COLAMD_R</a> (n_row) + (n_col) + ((nnz) / 5)) \
)
</pre></div>
</div>
</div><p>
<a class="anchor" name="411703fc0a994b83ec0e00df1abfc0f7"></a><!-- doxytag: member="colamd.h::COLAMD_STATS" ref="411703fc0a994b83ec0e00df1abfc0f7" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_STATS 20 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="6a4201ce55dfa3a6375b90097e8c747e"></a><!-- doxytag: member="colamd.h::COLAMD_STATUS" ref="6a4201ce55dfa3a6375b90097e8c747e" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define COLAMD_STATUS 3 </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="059db10cdebbb878b50bfcd2e023315a"></a><!-- doxytag: member="colamd.h::Colamd_Col" ref="059db10cdebbb878b50bfcd2e023315a" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structColamd__Col__struct.html">Colamd_Col_struct</a> <a class="el" href="structColamd__Col__struct.html">Colamd_Col</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="8a1ceeb79ebba705abb1d27469f4a358"></a><!-- doxytag: member="colamd.h::Colamd_Row" ref="8a1ceeb79ebba705abb1d27469f4a358" args="" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">typedef struct <a class="el" href="structColamd__Row__struct.html">Colamd_Row_struct</a> <a class="el" href="structColamd__Row__struct.html">Colamd_Row</a> </td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="f5cec4b6391e4c20abfaa6da39975bca"></a><!-- doxytag: member="colamd.h::colamd" ref="f5cec4b6391e4c20abfaa6da39975bca" args="(int n_row, int n_col, int Alen, int A[], int p[], double knobs[COLAMD_KNOBS], int stats[COLAMD_STATS])" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int colamd </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> <em>n_row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>n_col</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>Alen</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>A</em>[], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>p</em>[], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double </td>
<td class="paramname"> <em>knobs</em>[COLAMD_KNOBS], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>stats</em>[COLAMD_STATS]</td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="9b48c9b9eb5dce7e9ca42174208b1015"></a><!-- doxytag: member="colamd.h::colamd_recommended" ref="9b48c9b9eb5dce7e9ca42174208b1015" args="(int nnz, int n_row, int n_col)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int colamd_recommended </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> <em>nnz</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>n_row</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>n_col</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="7cfa2e07413d0bc9489f10ac881faa51"></a><!-- doxytag: member="colamd.h::colamd_report" ref="7cfa2e07413d0bc9489f10ac881faa51" args="(int stats[COLAMD_STATS])" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void colamd_report </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> <em>stats</em>[COLAMD_STATS] </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="e582ce20a46b5ef39434acb9d66fe2ca"></a><!-- doxytag: member="colamd.h::colamd_set_defaults" ref="e582ce20a46b5ef39434acb9d66fe2ca" args="(double knobs[COLAMD_KNOBS])" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void colamd_set_defaults </td>
<td>(</td>
<td class="paramtype">double </td>
<td class="paramname"> <em>knobs</em>[COLAMD_KNOBS] </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="e3d0175d1cb36f6cb16dfe96bbf946a3"></a><!-- doxytag: member="colamd.h::symamd" ref="e3d0175d1cb36f6cb16dfe96bbf946a3" args="(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 *))" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int symamd </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> <em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>A</em>[], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>p</em>[], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>perm</em>[], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double </td>
<td class="paramname"> <em>knobs</em>[COLAMD_KNOBS], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"> <em>stats</em>[COLAMD_STATS], </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void *(*)(size_t, size_t) </td>
<td class="paramname"> <em>allocate</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">void(*)(void *) </td>
<td class="paramname"> <em>release</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="948750692c453eb36edc5b77a670ec54"></a><!-- doxytag: member="colamd.h::symamd_report" ref="948750692c453eb36edc5b77a670ec54" args="(int stats[COLAMD_STATS])" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void symamd_report </td>
<td>(</td>
<td class="paramtype">int </td>
<td class="paramname"> <em>stats</em>[COLAMD_STATS] </td>
<td> ) </td>
<td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Nov 22 10:23:47 2010 for SuperLU by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>