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/ilu_cpivotL.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.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/ilu_cpivotL.c File Reference</h1>Performs numerical pivoting. <a href="#_details">More...</a>
<p>
<code>#include &lt;math.h&gt;</code><br>
<code>#include &lt;stdlib.h&gt;</code><br>
<code>#include &quot;<a class="el" href="slu__cdefs_8h-source.html">slu_cdefs.h</a>&quot;</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&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="ilu__cpivotL_8c.html#95ed41486ca0ed53262e4b8934d4afac">SGN</a>(x)&nbsp;&nbsp;&nbsp;((x)&gt;=0?1:-1)</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="ilu__cpivotL_8c.html#5eadb2e028608a33e9de84d4d6895796">ilu_cpivotL</a> (const int jcol, const double u, int *usepr, int *perm_r, int diagind, int *swap, int *iswap, int *marker, int *pivrow, double fill_tol, <a class="el" href="superlu__enum__consts_8h.html#0cb73c13a7c2390c3a9a0a8913477ff0">milu_t</a> milu, <a class="el" href="structcomplex.html">complex</a> drop_sum, <a class="el" href="structGlobalLU__t.html">GlobalLU_t</a> *Glu, <a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *stat)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<pre>
 -- SuperLU routine (version 4.0) --
 Lawrence Berkeley National Laboratory
 June 30, 2009
 </pre> <hr><h2>Define Documentation</h2>
<a class="anchor" name="95ed41486ca0ed53262e4b8934d4afac"></a><!-- doxytag: member="ilu_cpivotL.c::SGN" ref="95ed41486ca0ed53262e4b8934d4afac" args="(x)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SGN          </td>
          <td>(</td>
          <td class="paramtype">x&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%">&nbsp;&nbsp;&nbsp;((x)&gt;=0?1:-1)</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="5eadb2e028608a33e9de84d4d6895796"></a><!-- doxytag: member="ilu_cpivotL.c::ilu_cpivotL" ref="5eadb2e028608a33e9de84d4d6895796" args="(const int jcol, const double u, int *usepr, int *perm_r, int diagind, int *swap, int *iswap, int *marker, int *pivrow, double fill_tol, milu_t milu, complex drop_sum, GlobalLU_t *Glu, SuperLUStat_t *stat)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ilu_cpivotL           </td>
          <td>(</td>
          <td class="paramtype">const int&nbsp;</td>
          <td class="paramname"> <em>jcol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const double&nbsp;</td>
          <td class="paramname"> <em>u</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>usepr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>perm_r</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>diagind</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>swap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>iswap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>marker</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&nbsp;</td>
          <td class="paramname"> <em>pivrow</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">double&nbsp;</td>
          <td class="paramname"> <em>fill_tol</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="superlu__enum__consts_8h.html#0cb73c13a7c2390c3a9a0a8913477ff0">milu_t</a>&nbsp;</td>
          <td class="paramname"> <em>milu</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structcomplex.html">complex</a>&nbsp;</td>
          <td class="paramname"> <em>drop_sum</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structGlobalLU__t.html">GlobalLU_t</a> *&nbsp;</td>
          <td class="paramname"> <em>Glu</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structSuperLUStat__t.html">SuperLUStat_t</a> *&nbsp;</td>
          <td class="paramname"> <em>stat</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
 =======
   Performs the numerical pivoting on the current column of L,
   and the CDIV operation.</pre><p>
<pre>   Pivot policy:
   (1) Compute thresh = u * max_(i&gt;=j) <a class="el" href="slamch_8c.html#3aa069ac3980707dae1e0530f50d59e4">abs(A_ij)</a>;
   (2) IF user specifies pivot row k and <a class="el" href="slamch_8c.html#3aa069ac3980707dae1e0530f50d59e4">abs(A_kj)</a> &gt;= thresh THEN
	     pivot row = k;
	 ELSE IF <a class="el" href="slamch_8c.html#3aa069ac3980707dae1e0530f50d59e4">abs(A_jj)</a> &gt;= thresh THEN
	     pivot row = j;
	 ELSE
	     pivot row = m;</pre><p>
<pre>   Note: If you absolutely want to use a given pivot order, then set u=0.0.</pre><p>
<pre>   Return value: 0	  success;
		   i &gt; 0  U(i,i) is exactly zero.
 </pre> 
</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Mon Nov 22 10:23:47 2010 for SuperLU by&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>