Blob Blame Raw
<!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/slu_util.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&nbsp;Page</span></a></li>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>SRC/slu_util.h File Reference</h1>Utility header file. <a href="#_details">More...</a>
<p>
<code>#include &lt;stdio.h&gt;</code><br>
<code>#include &lt;stdlib.h&gt;</code><br>
<code>#include &lt;string.h&gt;</code><br>
<code>#include &lt;assert.h&gt;</code><br>
<code>#include &quot;<a class="el" href="superlu__enum__consts_8h-source.html">superlu_enum_consts.h</a>&quot;</code><br>

<p>
<a href="slu__util_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="structsuperlu__options__t.html">superlu_options_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structe__node.html">e_node</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Headers for 4 types of dynamatically managed memory.  <a href="structe__node.html#_details">More...</a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structLU__stack__t.html">LU_stack_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structmem__usage__t.html">mem_usage_t</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="slu__util_8h.html#745e85e3ef4b1267858c9df86608518c">FIRSTCOL_OF_SNODE</a>(i)&nbsp;&nbsp;&nbsp;(xsup[i])</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#9b7b2a5116ee487722b0967317ab6360">NO_MARKER</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="slu__util_8h.html#06193b28f40a4779ae7737711642eb45">NUM_TEMPV</a>(m, w, t, b)&nbsp;&nbsp;&nbsp;( SUPERLU_MAX(m, (t + b)*w) )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#aba7be0a786a716c200675ac43827e2a">USER_ABORT</a>(msg)&nbsp;&nbsp;&nbsp;superlu_abort_and_exit(msg)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#a4b133a54309e2c6e4ba69f3ff1141c2">ABORT</a>(err_msg)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#232b101af98715228590ae6e089f4c65">USER_MALLOC</a>(size)&nbsp;&nbsp;&nbsp;superlu_malloc(size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#55a5ed83733c30850c14cc7b3f922a54">SUPERLU_MALLOC</a>(size)&nbsp;&nbsp;&nbsp;USER_MALLOC(size)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#d7924033040c27afdb4a51ac9f8295b1">USER_FREE</a>(addr)&nbsp;&nbsp;&nbsp;superlu_free(addr)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#9672c5511c3efd9467e4d375a347c192">SUPERLU_FREE</a>(addr)&nbsp;&nbsp;&nbsp;USER_FREE(addr)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#35401f732a50d2a0af33db1ea224b1f6">CHECK_MALLOC</a>(where)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#dca8259e9d345c7cbaaa0608a1acdfd4">SUPERLU_MAX</a>(x, y)&nbsp;&nbsp;&nbsp;( (x) &gt; (y) ? (x) : (y) )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#7147dd5df1048562cd4ab83e9fd808d9">SUPERLU_MIN</a>(x, y)&nbsp;&nbsp;&nbsp;( (x) &lt; (y) ? (x) : (y) )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#445a44f88349753bc17f28fbac4df382">L_SUB_START</a>(col)&nbsp;&nbsp;&nbsp;( Lstore-&gt;rowind_colptr[col] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#8de2450f2d4cf12794954b63a319c423">L_SUB</a>(ptr)&nbsp;&nbsp;&nbsp;( Lstore-&gt;rowind[ptr] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#79b13489e4cd00b09633e0c5e0be1b7c">L_NZ_START</a>(col)&nbsp;&nbsp;&nbsp;( Lstore-&gt;nzval_colptr[col] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#0ea367a3afecd30b570d0a46cc819cdf">L_FST_SUPC</a>(superno)&nbsp;&nbsp;&nbsp;( Lstore-&gt;sup_to_col[superno] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#c641190b1a047ebcf224372cb3dfec68">U_NZ_START</a>(col)&nbsp;&nbsp;&nbsp;( Ustore-&gt;colptr[col] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#cbd74ce05240823854ebfcd301f200e8">U_SUB</a>(ptr)&nbsp;&nbsp;&nbsp;( Ustore-&gt;rowind[ptr] )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#2b7cf2a3641be7b89138615764d60ba3">EMPTY</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="slu__util_8h.html#a93f0eb578d23995850d61f7d61c55c1">FALSE</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="slu__util_8h.html#a8cecfc5c5c054d2875c03e77b7be15d">TRUE</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="slu__util_8h.html#b9ccb8b9963ca083d7f36f5d3acc5744">NO_MEMTYPE</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="slu__util_8h.html#d3754689b2ab3abc8b3afe4facdd76f3">GluIntArray</a>(n)&nbsp;&nbsp;&nbsp;(5 * (n) + 5)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#aa1b4d4ec24548decf1f389060a7d878">NODROP</a>&nbsp;&nbsp;&nbsp;( 0x0000 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#fb51a22d4d20fb9e39acd95129344997">DROP_BASIC</a>&nbsp;&nbsp;&nbsp;( 0x0001 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#34a649fce94fb9a61524f3b18161aef8">DROP_PROWS</a>&nbsp;&nbsp;&nbsp;( 0x0002 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#741f1ee3e9529b1384492787d09a0c70">DROP_COLUMN</a>&nbsp;&nbsp;&nbsp;( 0x0004 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#e56780c0f0b5afa706231cbe2b1ee82f">DROP_AREA</a>&nbsp;&nbsp;&nbsp;( 0x0008 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#72349305248ecb540ca43f404884bef5">DROP_SECONDARY</a>&nbsp;&nbsp;&nbsp;( 0x000E )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#c6089af2caea8fef6aa343cb16fd1646">DROP_DYNAMIC</a>&nbsp;&nbsp;&nbsp;( 0x0010 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#ea78484190db0dd61d91743797bf6bfe">DROP_INTERP</a>&nbsp;&nbsp;&nbsp;( 0x0100 )</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#90dea7f830398b8c30be7488e24089bb">MILU_ALPHA</a>&nbsp;&nbsp;&nbsp;(1.0e-2)</td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#aae6020bb33e780ff6edbd4e45ce08ac">flops_t</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#30f473cd214dc43270f7a4d54b2887d2">Logical</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef struct <a class="el" href="structe__node.html">e_node</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#c071de4d8a39e15f13c92a5f60bc16f0">ExpHeader</a></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="slu__util_8h.html#2c43be55861c6e4ee5b806ac16cc382c">Destroy_SuperMatrix_Store</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Deallocate the structure pointing to the actual storage of the matrix.  <a href="#2c43be55861c6e4ee5b806ac16cc382c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#4257e4d9cca1db286b73154d81ec3880">Destroy_CompCol_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#98cbb427c29a6be1760288b63857bc12">Destroy_CompRow_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#de01201644d38ff78cd1824ff2e5022b">Destroy_SuperNode_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#4de38e1c0ef18dd0791cb206c7f5348f">Destroy_CompCol_Permuted</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A is of type Stype==NCP.  <a href="#4de38e1c0ef18dd0791cb206c7f5348f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#9f7e658f2e17e08b2d88fadc11f2b437">Destroy_Dense_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A is of type Stype==DN.  <a href="#9f7e658f2e17e08b2d88fadc11f2b437"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#263122009c4421188a14285798b7bff7">get_perm_c</a> (int, <a class="el" href="structSuperMatrix.html">SuperMatrix</a> *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#4792687285a879f7955029421ba99795">set_default_options</a> (<a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *options)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the default values for the options argument.  <a href="#4792687285a879f7955029421ba99795"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#fce6cba2b855a4b046f6521d5dd1beb4">ilu_set_default_options</a> (<a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *options)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the default values for the options argument for ILU.  <a href="#fce6cba2b855a4b046f6521d5dd1beb4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#df9c573cbfb4520a5ea820702d27cfa5">sp_preorder</a> (<a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *, <a class="el" href="structSuperMatrix.html">SuperMatrix</a> *, int *, int *, <a class="el" href="structSuperMatrix.html">SuperMatrix</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#bd38b081866ed2c3e4959c4c0560913c">superlu_abort_and_exit</a> (char *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Global statistics variale.  <a href="#bd38b081866ed2c3e4959c4c0560913c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#7ec97fcbe08a55ad56048a43919d6843">superlu_malloc</a> (size_t)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#c5e3eb5cdc6962ab8238dd3e663bea67">intMalloc</a> (int)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#f7f89277b471647ea6b3581ca11becd3">intCalloc</a> (int)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#1745be2114a7b66ea7632292b03cb3ce">superlu_free</a> (void *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#eaaa4cb43f415698df4f891e1a1afaa4">SetIWork</a> (int, int, int, int *, int **, int **, int **, int **, int **, int **, int **)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set up pointers for integer working arrays.  <a href="#eaaa4cb43f415698df4f891e1a1afaa4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#f8198f26bef3c82fbb8601fc5a8e0d9e">sp_coletree</a> (int *, int *, int *, int, int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#a9dcebe0d2709ff7ab053c3acb8f35af">relax_snode</a> (const int, int *, const int, int *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#de3f23f612ced035318a59623b6925e5">heap_relax_snode</a> (const int, int *, const int, int *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#23057ebe27329fd8fc65970c7c3e2b3f">mark_relax</a> (int, int *, int *, int *, int *, int *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#2212f489d8bb77b74c61e0a7442796a8">ilu_relax_snode</a> (const int, int *, const int, int *, int *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#cd37f89f3fd101b2860c26b45bd4c2a1">ilu_heap_relax_snode</a> (const int, int *, const int, int *, int *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#b71db926d60d7b8fd739df197b766366">resetrep_col</a> (const int, const int *, int *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset repfnz[] for the current column.  <a href="#b71db926d60d7b8fd739df197b766366"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#0bccee6dda29384503240026c062bfc6">spcoletree</a> (int *, int *, int *, int, int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#44084fde835d2ccaa25e9fd942a72b7a">TreePostorder</a> (int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#0c6777573bbfe81917cd381e0090d355">SuperLU_timer_</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Timer function.  <a href="#0c6777573bbfe81917cd381e0090d355"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#72be96e75e58564c4322ef9ef73ca65f">sp_ienv</a> (int)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#4d9eb0e1ec853020a42e867b4ff3018c">lsame_</a> (char *, char *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#8ddc46fddd8c0c53fc9e77fefdf9a456">xerbla_</a> (char *, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#b0dfb6551008bcad5e758defdbd13006">ifill</a> (int *, int, int)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fills an integer array with a given value.  <a href="#b0dfb6551008bcad5e758defdbd13006"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#01ded59744addeefd265dbb22d9f37d0">snode_profile</a> (int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#c33e407326ae1dc222aee7ff08f322cf">super_stats</a> (int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#9e29ce75ab694aa7fdb32b7644f9da69">check_repfnz</a> (int, int, int, int *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check whether repfnz[] == EMPTY after reset.  <a href="#9e29ce75ab694aa7fdb32b7644f9da69"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#47292875a12f5601efa82a4350656db8">PrintSumm</a> (char *, int, int, int)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a summary of the testing results.  <a href="#47292875a12f5601efa82a4350656db8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#3b979ab4f4e75bdc1b89106dde6c8d72">StatInit</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#a157fecae472b8ef5ce79bd59876099d">StatPrint</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#b0fb3345d479a7ac24f75f0e64bdff4b">StatFree</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#48208ca68e95c765c0c55c12b196d79e">print_panel_seg</a> (int, int, int, int, int *, int *)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Diagnostic print of segment info after panel_dfs().  <a href="#48208ca68e95c765c0c55c12b196d79e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#8a3ba6cbe163f9c12f6f10ee8ba98fc7">print_int_vec</a> (char *, int, int *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="slu__util_8h.html#de363dcb4babb66fa0e5f51bd2e6e42c">slu_PrintInt10</a> (char *, int, int *)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
-- SuperLU routine (version 4.1) -- Univ. of California Berkeley, Xerox Palo Alto Research Center, and Lawrence Berkeley National Lab. November, 2010 <hr><h2>Define Documentation</h2>
<a class="anchor" name="a4b133a54309e2c6e4ba69f3ff1141c2"></a><!-- doxytag: member="slu_util.h::ABORT" ref="a4b133a54309e2c6e4ba69f3ff1141c2" args="(err_msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define ABORT          </td>
          <td>(</td>
          <td class="paramtype">err_msg&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment">{ <span class="keywordtype">char</span> msg[256];\
   sprintf(msg,<span class="stringliteral">"%s at line %d in file %s\n"</span>,err_msg,__LINE__, __FILE__);\
   <a class="code" href="slu__util_8h.html#aba7be0a786a716c200675ac43827e2a">USER_ABORT</a>(msg); }
</pre></div>
</div>
</div><p>
<a class="anchor" name="35401f732a50d2a0af33db1ea224b1f6"></a><!-- doxytag: member="slu_util.h::CHECK_MALLOC" ref="35401f732a50d2a0af33db1ea224b1f6" args="(where)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CHECK_MALLOC          </td>
          <td>(</td>
          <td class="paramtype">where&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<b>Value:</b><div class="fragment"><pre class="fragment">{                 \
    <span class="keyword">extern</span> <span class="keywordtype">int</span> superlu_malloc_total;        \
    printf(<span class="stringliteral">"%s: malloc_total %d Bytes\n"</span>,     \
           where, superlu_malloc_total); \
}
</pre></div>
</div>
</div><p>
<a class="anchor" name="e56780c0f0b5afa706231cbe2b1ee82f"></a><!-- doxytag: member="slu_util.h::DROP_AREA" ref="e56780c0f0b5afa706231cbe2b1ee82f" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_AREA&nbsp;&nbsp;&nbsp;( 0x0008 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="fb51a22d4d20fb9e39acd95129344997"></a><!-- doxytag: member="slu_util.h::DROP_BASIC" ref="fb51a22d4d20fb9e39acd95129344997" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_BASIC&nbsp;&nbsp;&nbsp;( 0x0001 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="741f1ee3e9529b1384492787d09a0c70"></a><!-- doxytag: member="slu_util.h::DROP_COLUMN" ref="741f1ee3e9529b1384492787d09a0c70" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_COLUMN&nbsp;&nbsp;&nbsp;( 0x0004 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c6089af2caea8fef6aa343cb16fd1646"></a><!-- doxytag: member="slu_util.h::DROP_DYNAMIC" ref="c6089af2caea8fef6aa343cb16fd1646" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_DYNAMIC&nbsp;&nbsp;&nbsp;( 0x0010 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="ea78484190db0dd61d91743797bf6bfe"></a><!-- doxytag: member="slu_util.h::DROP_INTERP" ref="ea78484190db0dd61d91743797bf6bfe" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_INTERP&nbsp;&nbsp;&nbsp;( 0x0100 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="34a649fce94fb9a61524f3b18161aef8"></a><!-- doxytag: member="slu_util.h::DROP_PROWS" ref="34a649fce94fb9a61524f3b18161aef8" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_PROWS&nbsp;&nbsp;&nbsp;( 0x0002 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="72349305248ecb540ca43f404884bef5"></a><!-- doxytag: member="slu_util.h::DROP_SECONDARY" ref="72349305248ecb540ca43f404884bef5" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define DROP_SECONDARY&nbsp;&nbsp;&nbsp;( 0x000E )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="2b7cf2a3641be7b89138615764d60ba3"></a><!-- doxytag: member="slu_util.h::EMPTY" ref="2b7cf2a3641be7b89138615764d60ba3" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define EMPTY&nbsp;&nbsp;&nbsp;(-1)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a93f0eb578d23995850d61f7d61c55c1"></a><!-- doxytag: member="slu_util.h::FALSE" ref="a93f0eb578d23995850d61f7d61c55c1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FALSE&nbsp;&nbsp;&nbsp;0          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="745e85e3ef4b1267858c9df86608518c"></a><!-- doxytag: member="slu_util.h::FIRSTCOL_OF_SNODE" ref="745e85e3ef4b1267858c9df86608518c" args="(i)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define FIRSTCOL_OF_SNODE          </td>
          <td>(</td>
          <td class="paramtype">i&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;(xsup[i])</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d3754689b2ab3abc8b3afe4facdd76f3"></a><!-- doxytag: member="slu_util.h::GluIntArray" ref="d3754689b2ab3abc8b3afe4facdd76f3" args="(n)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GluIntArray          </td>
          <td>(</td>
          <td class="paramtype">n&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;(5 * (n) + 5)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="0ea367a3afecd30b570d0a46cc819cdf"></a><!-- doxytag: member="slu_util.h::L_FST_SUPC" ref="0ea367a3afecd30b570d0a46cc819cdf" args="(superno)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define L_FST_SUPC          </td>
          <td>(</td>
          <td class="paramtype">superno&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Lstore-&gt;sup_to_col[superno] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="79b13489e4cd00b09633e0c5e0be1b7c"></a><!-- doxytag: member="slu_util.h::L_NZ_START" ref="79b13489e4cd00b09633e0c5e0be1b7c" args="(col)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define L_NZ_START          </td>
          <td>(</td>
          <td class="paramtype">col&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Lstore-&gt;nzval_colptr[col] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="8de2450f2d4cf12794954b63a319c423"></a><!-- doxytag: member="slu_util.h::L_SUB" ref="8de2450f2d4cf12794954b63a319c423" args="(ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define L_SUB          </td>
          <td>(</td>
          <td class="paramtype">ptr&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Lstore-&gt;rowind[ptr] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="445a44f88349753bc17f28fbac4df382"></a><!-- doxytag: member="slu_util.h::L_SUB_START" ref="445a44f88349753bc17f28fbac4df382" args="(col)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define L_SUB_START          </td>
          <td>(</td>
          <td class="paramtype">col&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Lstore-&gt;rowind_colptr[col] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="90dea7f830398b8c30be7488e24089bb"></a><!-- doxytag: member="slu_util.h::MILU_ALPHA" ref="90dea7f830398b8c30be7488e24089bb" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define MILU_ALPHA&nbsp;&nbsp;&nbsp;(1.0e-2)          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9b7b2a5116ee487722b0967317ab6360"></a><!-- doxytag: member="slu_util.h::NO_MARKER" ref="9b7b2a5116ee487722b0967317ab6360" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NO_MARKER&nbsp;&nbsp;&nbsp;3          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="b9ccb8b9963ca083d7f36f5d3acc5744"></a><!-- doxytag: member="slu_util.h::NO_MEMTYPE" ref="b9ccb8b9963ca083d7f36f5d3acc5744" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NO_MEMTYPE&nbsp;&nbsp;&nbsp;4          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="aa1b4d4ec24548decf1f389060a7d878"></a><!-- doxytag: member="slu_util.h::NODROP" ref="aa1b4d4ec24548decf1f389060a7d878" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NODROP&nbsp;&nbsp;&nbsp;( 0x0000 )          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="06193b28f40a4779ae7737711642eb45"></a><!-- doxytag: member="slu_util.h::NUM_TEMPV" ref="06193b28f40a4779ae7737711642eb45" args="(m, w, t, b)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NUM_TEMPV          </td>
          <td>(</td>
          <td class="paramtype">m,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">w,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">t,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">b&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( SUPERLU_MAX(m, (t + b)*w) )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9672c5511c3efd9467e4d375a347c192"></a><!-- doxytag: member="slu_util.h::SUPERLU_FREE" ref="9672c5511c3efd9467e4d375a347c192" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SUPERLU_FREE          </td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;USER_FREE(addr)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="55a5ed83733c30850c14cc7b3f922a54"></a><!-- doxytag: member="slu_util.h::SUPERLU_MALLOC" ref="55a5ed83733c30850c14cc7b3f922a54" args="(size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SUPERLU_MALLOC          </td>
          <td>(</td>
          <td class="paramtype">size&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;USER_MALLOC(size)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="dca8259e9d345c7cbaaa0608a1acdfd4"></a><!-- doxytag: member="slu_util.h::SUPERLU_MAX" ref="dca8259e9d345c7cbaaa0608a1acdfd4" args="(x, y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SUPERLU_MAX          </td>
          <td>(</td>
          <td class="paramtype">x,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">y&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( (x) &gt; (y) ? (x) : (y) )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="7147dd5df1048562cd4ab83e9fd808d9"></a><!-- doxytag: member="slu_util.h::SUPERLU_MIN" ref="7147dd5df1048562cd4ab83e9fd808d9" args="(x, y)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SUPERLU_MIN          </td>
          <td>(</td>
          <td class="paramtype">x,         <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">y&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( (x) &lt; (y) ? (x) : (y) )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a8cecfc5c5c054d2875c03e77b7be15d"></a><!-- doxytag: member="slu_util.h::TRUE" ref="a8cecfc5c5c054d2875c03e77b7be15d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define TRUE&nbsp;&nbsp;&nbsp;1          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c641190b1a047ebcf224372cb3dfec68"></a><!-- doxytag: member="slu_util.h::U_NZ_START" ref="c641190b1a047ebcf224372cb3dfec68" args="(col)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define U_NZ_START          </td>
          <td>(</td>
          <td class="paramtype">col&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Ustore-&gt;colptr[col] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="cbd74ce05240823854ebfcd301f200e8"></a><!-- doxytag: member="slu_util.h::U_SUB" ref="cbd74ce05240823854ebfcd301f200e8" args="(ptr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define U_SUB          </td>
          <td>(</td>
          <td class="paramtype">ptr&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;( Ustore-&gt;rowind[ptr] )</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="aba7be0a786a716c200675ac43827e2a"></a><!-- doxytag: member="slu_util.h::USER_ABORT" ref="aba7be0a786a716c200675ac43827e2a" args="(msg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USER_ABORT          </td>
          <td>(</td>
          <td class="paramtype">msg&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;superlu_abort_and_exit(msg)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="d7924033040c27afdb4a51ac9f8295b1"></a><!-- doxytag: member="slu_util.h::USER_FREE" ref="d7924033040c27afdb4a51ac9f8295b1" args="(addr)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USER_FREE          </td>
          <td>(</td>
          <td class="paramtype">addr&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;superlu_free(addr)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="232b101af98715228590ae6e089f4c65"></a><!-- doxytag: member="slu_util.h::USER_MALLOC" ref="232b101af98715228590ae6e089f4c65" args="(size)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define USER_MALLOC          </td>
          <td>(</td>
          <td class="paramtype">size&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;superlu_malloc(size)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="c071de4d8a39e15f13c92a5f60bc16f0"></a><!-- doxytag: member="slu_util.h::ExpHeader" ref="c071de4d8a39e15f13c92a5f60bc16f0" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structe__node.html">e_node</a>  <a class="el" href="structe__node.html">ExpHeader</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="aae6020bb33e780ff6edbd4e45ce08ac"></a><!-- doxytag: member="slu_util.h::flops_t" ref="aae6020bb33e780ff6edbd4e45ce08ac" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef float <a class="el" href="slu__util_8h.html#aae6020bb33e780ff6edbd4e45ce08ac">flops_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="30f473cd214dc43270f7a4d54b2887d2"></a><!-- doxytag: member="slu_util.h::Logical" ref="30f473cd214dc43270f7a4d54b2887d2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef unsigned char <a class="el" href="slu__util_8h.html#30f473cd214dc43270f7a4d54b2887d2">Logical</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="9e29ce75ab694aa7fdb32b7644f9da69"></a><!-- doxytag: member="slu_util.h::check_repfnz" ref="9e29ce75ab694aa7fdb32b7644f9da69" args="(int, int, int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void check_repfnz           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="4257e4d9cca1db286b73154d81ec3880"></a><!-- doxytag: member="slu_util.h::Destroy_CompCol_Matrix" ref="4257e4d9cca1db286b73154d81ec3880" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_CompCol_Matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="4de38e1c0ef18dd0791cb206c7f5348f"></a><!-- doxytag: member="slu_util.h::Destroy_CompCol_Permuted" ref="4de38e1c0ef18dd0791cb206c7f5348f" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_CompCol_Permuted           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="98cbb427c29a6be1760288b63857bc12"></a><!-- doxytag: member="slu_util.h::Destroy_CompRow_Matrix" ref="98cbb427c29a6be1760288b63857bc12" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_CompRow_Matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="9f7e658f2e17e08b2d88fadc11f2b437"></a><!-- doxytag: member="slu_util.h::Destroy_Dense_Matrix" ref="9f7e658f2e17e08b2d88fadc11f2b437" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_Dense_Matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="2c43be55861c6e4ee5b806ac16cc382c"></a><!-- doxytag: member="slu_util.h::Destroy_SuperMatrix_Store" ref="2c43be55861c6e4ee5b806ac16cc382c" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_SuperMatrix_Store           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="de01201644d38ff78cd1824ff2e5022b"></a><!-- doxytag: member="slu_util.h::Destroy_SuperNode_Matrix" ref="de01201644d38ff78cd1824ff2e5022b" args="(SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Destroy_SuperNode_Matrix           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="263122009c4421188a14285798b7bff7"></a><!-- doxytag: member="slu_util.h::get_perm_c" ref="263122009c4421188a14285798b7bff7" args="(int, SuperMatrix *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void get_perm_c           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>ispec</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>perm_c</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<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> 
</div>
</div><p>
<a class="anchor" name="de3f23f612ced035318a59623b6925e5"></a><!-- doxytag: member="slu_util.h::heap_relax_snode" ref="de3f23f612ced035318a59623b6925e5" args="(const int, int *, const int, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void heap_relax_snode           </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>et</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>relax_columns</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>descendants</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
 Purpose
 =======
    <a class="el" href="relax__snode_8c.html#d70bc12cb9031ab8aba4a37a18be46e3">relax_snode()</a> - Identify the initial relaxed supernodes, assuming that 
    the matrix has been reordered according to the postorder of the etree.
 </pre> 
</div>
</div><p>
<a class="anchor" name="b0dfb6551008bcad5e758defdbd13006"></a><!-- doxytag: member="slu_util.h::ifill" ref="b0dfb6551008bcad5e758defdbd13006" args="(int *, int, int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ifill           </td>
          <td>(</td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="cd37f89f3fd101b2860c26b45bd4c2a1"></a><!-- doxytag: member="slu_util.h::ilu_heap_relax_snode" ref="cd37f89f3fd101b2860c26b45bd4c2a1" args="(const int, int *, const int, int *, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ilu_heap_relax_snode           </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>et</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>relax_columns</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>descendants</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_fsupc</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
 Purpose
 =======
    <a class="el" href="ilu__heap__relax__snode_8c.html#ac1a978dda622cdb58c3c2eaee4b4030">ilu_heap_relax_snode()</a> - Identify the initial relaxed supernodes,
    assuming that the matrix has been reordered according to the postorder
    of the etree.
 </pre> 
</div>
</div><p>
<a class="anchor" name="2212f489d8bb77b74c61e0a7442796a8"></a><!-- doxytag: member="slu_util.h::ilu_relax_snode" ref="2212f489d8bb77b74c61e0a7442796a8" args="(const int, int *, const int, int *, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ilu_relax_snode           </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>et</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>relax_columns</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>descendants</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_fsupc</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
 Purpose
 =======
    <a class="el" href="ilu__relax__snode_8c.html#e0e2bbb8507d800766030635a3bd5a7e">ilu_relax_snode()</a> - Identify the initial relaxed supernodes, assuming
    that the matrix has been reordered according to the postorder of the
    etree.
 </pre> 
</div>
</div><p>
<a class="anchor" name="fce6cba2b855a4b046f6521d5dd1beb4"></a><!-- doxytag: member="slu_util.h::ilu_set_default_options" ref="fce6cba2b855a4b046f6521d5dd1beb4" args="(superlu_options_t *options)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ilu_set_default_options           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *&nbsp;</td>
          <td class="paramname"> <em>options</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="f7f89277b471647ea6b3581ca11becd3"></a><!-- doxytag: member="slu_util.h::intCalloc" ref="f7f89277b471647ea6b3581ca11becd3" args="(int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* intCalloc           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c5e3eb5cdc6962ab8238dd3e663bea67"></a><!-- doxytag: member="slu_util.h::intMalloc" ref="c5e3eb5cdc6962ab8238dd3e663bea67" args="(int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* intMalloc           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="4d9eb0e1ec853020a42e867b4ff3018c"></a><!-- doxytag: member="slu_util.h::lsame_" ref="4d9eb0e1ec853020a42e867b4ff3018c" args="(char *, char *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int lsame_           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>ca</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname"> <em>cb</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
    Purpose   
    =======</pre><p>
<pre>    LSAME returns .TRUE. if CA is the same letter as CB regardless of case.</pre><p>
<pre>    Arguments   
    =========</pre><p>
<pre>    CA      (input) CHARACTER*1   
    CB      (input) CHARACTER*1   
            CA and CB specify the single characters to be compared.</pre><p>
<pre>   ===================================================================== 
</pre> 
</div>
</div><p>
<a class="anchor" name="23057ebe27329fd8fc65970c7c3e2b3f"></a><!-- doxytag: member="slu_util.h::mark_relax" ref="23057ebe27329fd8fc65970c7c3e2b3f" args="(int, int *, int *, int *, int *, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int mark_relax           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_fsupc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>xa_begin</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>xa_end</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>asub</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>marker</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
 Purpose
 =======
    <a class="el" href="mark__relax_8c.html#5e85b0273eec011f0027d8506a20350e">mark_relax()</a> - record the rows used by the relaxed supernodes.
 </pre> 
</div>
</div><p>
<a class="anchor" name="8a3ba6cbe163f9c12f6f10ee8ba98fc7"></a><!-- doxytag: member="slu_util.h::print_int_vec" ref="8a3ba6cbe163f9c12f6f10ee8ba98fc7" args="(char *, int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int print_int_vec           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="48208ca68e95c765c0c55c12b196d79e"></a><!-- doxytag: member="slu_util.h::print_panel_seg" ref="48208ca68e95c765c0c55c12b196d79e" args="(int, int, int, int, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void print_panel_seg           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="47292875a12f5601efa82a4350656db8"></a><!-- doxytag: member="slu_util.h::PrintSumm" ref="47292875a12f5601efa82a4350656db8" args="(char *, int, int, int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void PrintSumm           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="a9dcebe0d2709ff7ab053c3acb8f35af"></a><!-- doxytag: member="slu_util.h::relax_snode" ref="a9dcebe0d2709ff7ab053c3acb8f35af" args="(const int, int *, const int, int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void relax_snode           </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>et</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>relax_columns</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>descendants</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>relax_end</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
 Purpose
 =======
    <a class="el" href="relax__snode_8c.html#d70bc12cb9031ab8aba4a37a18be46e3">relax_snode()</a> - Identify the initial relaxed supernodes, assuming that 
    the matrix has been reordered according to the postorder of the etree.
 </pre> 
</div>
</div><p>
<a class="anchor" name="b71db926d60d7b8fd739df197b766366"></a><!-- doxytag: member="slu_util.h::resetrep_col" ref="b71db926d60d7b8fd739df197b766366" args="(const int, const int *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void resetrep_col           </td>
          <td>(</td>
          <td class="paramtype">const &nbsp;</td>
          <td class="paramname"> <em>int</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="4792687285a879f7955029421ba99795"></a><!-- doxytag: member="slu_util.h::set_default_options" ref="4792687285a879f7955029421ba99795" args="(superlu_options_t *options)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void set_default_options           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *&nbsp;</td>
          <td class="paramname"> <em>options</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="eaaa4cb43f415698df4f891e1a1afaa4"></a><!-- doxytag: member="slu_util.h::SetIWork" ref="eaaa4cb43f415698df4f891e1a1afaa4" args="(int, int, int, int *, int **, int **, int **, int **, int **, int **, int **)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void SetIWork           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int **&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="de363dcb4babb66fa0e5f51bd2e6e42c"></a><!-- doxytag: member="slu_util.h::slu_PrintInt10" ref="de363dcb4babb66fa0e5f51bd2e6e42c" args="(char *, int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int slu_PrintInt10           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="01ded59744addeefd265dbb22d9f37d0"></a><!-- doxytag: member="slu_util.h::snode_profile" ref="01ded59744addeefd265dbb22d9f37d0" args="(int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void snode_profile           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="f8198f26bef3c82fbb8601fc5a8e0d9e"></a><!-- doxytag: member="slu_util.h::sp_coletree" ref="f8198f26bef3c82fbb8601fc5a8e0d9e" args="(int *, int *, int *, int, int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sp_coletree           </td>
          <td>(</td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="72be96e75e58564c4322ef9ef73ca65f"></a><!-- doxytag: member="slu_util.h::sp_ienv" ref="72be96e75e58564c4322ef9ef73ca65f" args="(int)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sp_ienv           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>ispec</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<pre>
    Purpose   
    =======</pre><p>
<pre>    <a class="el" href="slu__util_8h.html#72be96e75e58564c4322ef9ef73ca65f">sp_ienv()</a> is inquired to choose machine-dependent parameters for the
    local environment. See ISPEC for a description of the parameters.</pre><p>
<pre>    This version provides a set of parameters which should give good,   
    but not optimal, performance on many of the currently available   
    computers.  Users are encouraged to modify this subroutine to set   
    the tuning parameters for their particular machine using the option   
    and problem size information in the arguments.</pre><p>
<pre>    Arguments   
    =========</pre><p>
<pre>    ISPEC   (input) int
            Specifies the parameter to be returned as the value of SP_IENV.   
            = 1: the panel size w; a panel consists of w consecutive
	         columns of matrix A in the process of Gaussian elimination.
		 The best value depends on machine's cache characters.
            = 2: the relaxation parameter relax; if the number of
	         nodes (columns) in a subtree of the elimination tree is less
		 than relax, this subtree is considered as one supernode,
		 regardless of their row structures.
            = 3: the maximum size for a supernode in complete LU;
	    = 4: the minimum row dimension for 2-D blocking to be used;
	    = 5: the minimum column dimension for 2-D blocking to be used;
	    = 6: the estimated fills factor for L and U, compared with A;
	    = 7: the maximum size for a supernode in ILU.</pre><p>
<pre>   (SP_IENV) (output) int
            &gt;= 0: the value of the parameter specified by ISPEC   
            &lt; 0:  if SP_IENV = -k, the k-th argument had an illegal value.</pre><p>
<pre>    ===================================================================== 
</pre> 
</div>
</div><p>
<a class="anchor" name="df9c573cbfb4520a5ea820702d27cfa5"></a><!-- doxytag: member="slu_util.h::sp_preorder" ref="df9c573cbfb4520a5ea820702d27cfa5" args="(superlu_options_t *, SuperMatrix *, int *, int *, SuperMatrix *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sp_preorder           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *&nbsp;</td>
          <td class="paramname"> <em>options</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname"> <em>A</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>perm_c</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>etree</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> *&nbsp;</td>
          <td class="paramname"> <em>AC</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<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> 
</div>
</div><p>
<a class="anchor" name="0bccee6dda29384503240026c062bfc6"></a><!-- doxytag: member="slu_util.h::spcoletree" ref="0bccee6dda29384503240026c062bfc6" args="(int *, int *, int *, int, int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int spcoletree           </td>
          <td>(</td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="b0fb3345d479a7ac24f75f0e64bdff4b"></a><!-- doxytag: member="slu_util.h::StatFree" ref="b0fb3345d479a7ac24f75f0e64bdff4b" args="(SuperLUStat_t *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void StatFree           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="3b979ab4f4e75bdc1b89106dde6c8d72"></a><!-- doxytag: member="slu_util.h::StatInit" ref="3b979ab4f4e75bdc1b89106dde6c8d72" args="(SuperLUStat_t *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void StatInit           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a157fecae472b8ef5ce79bd59876099d"></a><!-- doxytag: member="slu_util.h::StatPrint" ref="a157fecae472b8ef5ce79bd59876099d" args="(SuperLUStat_t *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void StatPrint           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="c33e407326ae1dc222aee7ff08f322cf"></a><!-- doxytag: member="slu_util.h::super_stats" ref="c33e407326ae1dc222aee7ff08f322cf" args="(int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void super_stats           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="bd38b081866ed2c3e4959c4c0560913c"></a><!-- doxytag: member="slu_util.h::superlu_abort_and_exit" ref="bd38b081866ed2c3e4959c4c0560913c" args="(char *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void superlu_abort_and_exit           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="1745be2114a7b66ea7632292b03cb3ce"></a><!-- doxytag: member="slu_util.h::superlu_free" ref="1745be2114a7b66ea7632292b03cb3ce" args="(void *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void superlu_free           </td>
          <td>(</td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="7ec97fcbe08a55ad56048a43919d6843"></a><!-- doxytag: member="slu_util.h::superlu_malloc" ref="7ec97fcbe08a55ad56048a43919d6843" args="(size_t)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* superlu_malloc           </td>
          <td>(</td>
          <td class="paramtype">size_t&nbsp;</td>
          <td class="paramname"> <em>size</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Precision-independent memory-related routines. (Shared by [sdcz]<a class="el" href="memory_8c.html" title="Precision-independent memory-related routines.">memory.c</a>) 
</div>
</div><p>
<a class="anchor" name="0c6777573bbfe81917cd381e0090d355"></a><!-- doxytag: member="slu_util.h::SuperLU_timer_" ref="0c6777573bbfe81917cd381e0090d355" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">double SuperLU_timer_           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="44084fde835d2ccaa25e9fd942a72b7a"></a><!-- doxytag: member="slu_util.h::TreePostorder" ref="44084fde835d2ccaa25e9fd942a72b7a" args="(int, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int* TreePostorder           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="8ddc46fddd8c0c53fc9e77fefdf9a456"></a><!-- doxytag: member="slu_util.h::xerbla_" ref="8ddc46fddd8c0c53fc9e77fefdf9a456" args="(char *, int *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int xerbla_           </td>
          <td>(</td>
          <td class="paramtype">char *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Nov 22 10:23:48 2010 for SuperLU by&nbsp;
<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>