util_8c.html
来自「SuperLU is a general purpose library for」· HTML 代码 · 共 1,060 行 · 第 1/3 页
HTML
1,060 行
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"><title>SuperLU: SRC/util.c File Reference</title><link href="doxygen.css" rel="stylesheet" type="text/css"><link href="tabs.css" rel="stylesheet" type="text/css"></head><body><!-- Generated by Doxygen 1.4.6 --><div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> </ul></div><div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div><h1>SRC/util.c File Reference</h1>Utility functions. <a href="#_details">More...</a><p><code>#include <math.h></code><br><code>#include "<a class="el" href="slu__ddefs_8h-source.html">slu_ddefs.h</a>"</code><br><table border="0" cellpadding="0" cellspacing="0"><tr><td></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="util_8c.html#70f31d2c4d8d0802751120e07028bd3a">NBUCKS</a> 10</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Get the statistics of the supernodes. <a href="#70f31d2c4d8d0802751120e07028bd3a"></a><br></td></tr><tr><td colspan="2"><br><h2>Functions</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#060bded38730c2e58fa7f7e19c43ba08">superlu_abort_and_exit</a> (char *msg)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Global statistics variale. <a href="#060bded38730c2e58fa7f7e19c43ba08"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.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"> </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 </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#3a041511849362ed44688698c86a9039">print_options</a> (<a class="el" href="structsuperlu__options__t.html">superlu_options_t</a> *options)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Print the options setting. <a href="#3a041511849362ed44688698c86a9039"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#c16a0aea75cf99b4d38ec4ede6f13eb4">Destroy_SuperMatrix_Store</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Deallocate the structure pointing to the actual storage of the matrix. <a href="#c16a0aea75cf99b4d38ec4ede6f13eb4"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#27491a8171a480d6c98e6d1e535e1973">Destroy_CompCol_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#6292e6a8f2b75101294f2e99927b5d2a">Destroy_CompRow_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#ea724a390aed4ef00a4b8ed783c60014">Destroy_SuperNode_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#7285ca16a0b84b4333d71efeb65c0126">Destroy_CompCol_Permuted</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">A is of type Stype==NCP. <a href="#7285ca16a0b84b4333d71efeb65c0126"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#301f89dc9483e5bcdc47fc96e8645cf7">Destroy_Dense_Matrix</a> (<a class="el" href="structSuperMatrix.html">SuperMatrix</a> *A)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">A is of type Stype==DN. <a href="#301f89dc9483e5bcdc47fc96e8645cf7"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#67bce8b2142b3be41583de4fbea02cb0">resetrep_col</a> (const int nseg, const int *segrep, int *repfnz)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Reset repfnz[] for the current column. <a href="#67bce8b2142b3be41583de4fbea02cb0"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#cac794ae60517b94cb755975b51b9538">countnz</a> (const int n, int *xprune, int *nnzL, int *nnzU, <a class="el" href="structGlobalLU__t.html">GlobalLU_t</a> *Glu)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Count the total number of nonzeros in factors L and U, and in the symmetrically reduced L. <a href="#cac794ae60517b94cb755975b51b9538"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#4b97838714471334eba3f4de948d6e7a">fixupL</a> (const int n, const int *perm_r, <a class="el" href="structGlobalLU__t.html">GlobalLU_t</a> *Glu)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Fix up the data storage lsub for L-subscripts. It removes the subscript sets for structural pruning, and applies permuation to the remaining subscripts. <a href="#4b97838714471334eba3f4de948d6e7a"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#9e2ebe03503cdfc4ab20306d028ca312">print_panel_seg</a> (int n, int w, int jcol, int nseg, int *segrep, int *repfnz)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Diagnostic print of segment info after panel_dfs(). <a href="#9e2ebe03503cdfc4ab20306d028ca312"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#9b8745daf1fd22070364570977fe1ccc">StatInit</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#ef88fef229bf26ba82b50d99c20ad915">StatPrint</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#7d50e009f6f1f4ba8a63cdd912a0d31d">StatFree</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="slu__util_8h.html#aae6020bb33e780ff6edbd4e45ce08ac">flops_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#60256c1cabadcd15f555ed6e9d7eedef">LUFactFlops</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="slu__util_8h.html#aae6020bb33e780ff6edbd4e45ce08ac">flops_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#fdfc4cfea288d5639fb7321929550b8a">LUSolveFlops</a> (<a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#e289773c377a566a2f77c88b21d7f4ae">ifill</a> (int *a, int alen, int ival)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Fills an integer array with a given value. <a href="#e289773c377a566a2f77c88b21d7f4ae"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#1040b7d1545dbf58b7af05d48621ed0a">super_stats</a> (int nsuper, int *xsup)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#5789a3d7549a127e955680283ecfe44e">SpaSize</a> (int n, int np, float sum_npw)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#9daf07581bce8c0f5c879c5899ce419c">DenseSize</a> (int n, float sum_nw)</td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#f27aecac055064fa7581c854848f7e7b">check_repfnz</a> (int n, int w, int jcol, int *repfnz)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Check whether repfnz[] == EMPTY after reset. <a href="#f27aecac055064fa7581c854848f7e7b"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#a88c72f09a077ee18043edff386f4a2c">PrintSumm</a> (char *type, int nfail, int nrun, int nerrs)</td></tr><tr><td class="mdescLeft"> </td><td class="mdescRight">Print a summary of the testing results. <a href="#a88c72f09a077ee18043edff386f4a2c"></a><br></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#ac67c35b47f2aa92a3202769d3eebdeb">print_int_vec</a> (char *what, int n, int *vec)</td></tr><tr><td colspan="2"><br><h2>Variables</h2></td></tr><tr><td class="memItemLeft" nowrap align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="util_8c.html#17dfd68739139149a72dfcbd88bcdf24">max_sup_size</a></td></tr></table><hr><a name="_details"></a><h2>Detailed Description</h2><pre> -- SuperLU routine (version 3.0) -- Univ. of California Berkeley, Xerox Palo Alto Research Center, and Lawrence Berkeley National Lab. October 15, 2003</pre><p><pre> Copyright (c) 1994 by Xerox Corporation. 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 or copy this program for any purpose, provided the above notices are retained on all copies. Permission to modify the code and to distribute modified code is granted, provided the above notices are retained, and a notice that the code was modified is included with the above copyright notice. </pre> <hr><h2>Define Documentation</h2><a class="anchor" name="70f31d2c4d8d0802751120e07028bd3a"></a><!-- doxytag: member="util.c::NBUCKS" ref="70f31d2c4d8d0802751120e07028bd3a" args="" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define NBUCKS 10 </td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><hr><h2>Function Documentation</h2><a class="anchor" name="f27aecac055064fa7581c854848f7e7b"></a><!-- doxytag: member="util.c::check_repfnz" ref="f27aecac055064fa7581c854848f7e7b" args="(int n, int w, int jcol, int *repfnz)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void check_repfnz </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">int </td> <td class="mdname" nowrap> <em>n</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>w</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>jcol</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>repfnz</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><a class="anchor" name="cac794ae60517b94cb755975b51b9538"></a><!-- doxytag: member="util.c::countnz" ref="cac794ae60517b94cb755975b51b9538" args="(const int n, int *xprune, int *nnzL, int *nnzU, GlobalLU_t *Glu)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void countnz </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">const int </td> <td class="mdname" nowrap> <em>n</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>xprune</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>nnzL</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int * </td> <td class="mdname" nowrap> <em>nnzU</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap><a class="el" href="structGlobalLU__t.html">GlobalLU_t</a> * </td> <td class="mdname" nowrap> <em>Glu</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><a class="anchor" name="9daf07581bce8c0f5c879c5899ce419c"></a><!-- doxytag: member="util.c::DenseSize" ref="9daf07581bce8c0f5c879c5899ce419c" args="(int n, float sum_nw)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">float DenseSize </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">int </td> <td class="mdname" nowrap> <em>n</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>float </td> <td class="mdname" nowrap> <em>sum_nw</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><a class="anchor" name="27491a8171a480d6c98e6d1e535e1973"></a><!-- doxytag: member="util.c::Destroy_CompCol_Matrix" ref="27491a8171a480d6c98e6d1e535e1973" args="(SuperMatrix *A)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void Destroy_CompCol_Matrix </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> * </td> <td class="mdname1" valign="top" nowrap> <em>A</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><a class="anchor" name="7285ca16a0b84b4333d71efeb65c0126"></a><!-- doxytag: member="util.c::Destroy_CompCol_Permuted" ref="7285ca16a0b84b4333d71efeb65c0126" args="(SuperMatrix *A)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void Destroy_CompCol_Permuted </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> * </td> <td class="mdname1" valign="top" nowrap> <em>A</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td><p> </td> </tr></table><a class="anchor" name="6292e6a8f2b75101294f2e99927b5d2a"></a><!-- doxytag: member="util.c::Destroy_CompRow_Matrix" ref="6292e6a8f2b75101294f2e99927b5d2a" args="(SuperMatrix *A)" --><p><table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">void Destroy_CompRow_Matrix </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top"><a class="el" href="structSuperMatrix.html">SuperMatrix</a> * </td> <td class="mdname1" valign="top" nowrap> <em>A</em> </td> <td class="md" valign="top"> ) </td> <td class="md" nowrap></td> </tr> </table> </td> </tr></table><table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?