1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176
|
<!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/slacon.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 Page</span></a></li>
<li><a href="annotated.html"><span>Data Structures</span></a></li>
<li class="current"><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="contents">
<h1>SRC/slacon.c File Reference</h1>Estimates the 1-norm. <a href="#_details">More...</a>
<p>
<code>#include <math.h></code><br>
<code>#include "<a class="el" href="slu__Cnames_8h-source.html">slu_Cnames.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="slacon_8c.html#51b3babab7bbf03500dbc5ede2a682b3">d_sign</a>(a, b) (b >= 0 ? fabs(a) : -fabs(a))</td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="slacon_8c.html#dccc1e5692ca1dd160d0ca2a17e1b12c">i_dnnt</a>(a) ( a>=0 ? floor(a+.5) : -floor(.5-a) )</td></tr>
<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="slacon_8c.html#865b6cfd089f47842f95ecfcb1c88355">slacon_</a> (int *n, float *v, float *x, int *isgn, float *est, int *kase)</td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<pre>
-- SuperLU routine (version 2.0) --
Univ. of California Berkeley, Xerox Palo Alto Research Center,
and Lawrence Berkeley National Lab.
November 15, 1997
</pre> <hr><h2>Define Documentation</h2>
<a class="anchor" name="51b3babab7bbf03500dbc5ede2a682b3"></a><!-- doxytag: member="slacon.c::d_sign" ref="51b3babab7bbf03500dbc5ede2a682b3" args="(a, b)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define d_sign </td>
<td>(</td>
<td class="paramtype">a, <tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">b </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> (b >= 0 ? fabs(a) : -fabs(a))</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<a class="anchor" name="dccc1e5692ca1dd160d0ca2a17e1b12c"></a><!-- doxytag: member="slacon.c::i_dnnt" ref="dccc1e5692ca1dd160d0ca2a17e1b12c" args="(a)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define i_dnnt </td>
<td>(</td>
<td class="paramtype">a </td>
<td class="paramname"> </td>
<td> ) </td>
<td width="100%"> ( a>=0 ? floor(a+.5) : -floor(.5-a) )</td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="865b6cfd089f47842f95ecfcb1c88355"></a><!-- doxytag: member="slacon.c::slacon_" ref="865b6cfd089f47842f95ecfcb1c88355" args="(int *n, float *v, float *x, int *isgn, float *est, int *kase)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int slacon_ </td>
<td>(</td>
<td class="paramtype">int * </td>
<td class="paramname"> <em>n</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float * </td>
<td class="paramname"> <em>v</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float * </td>
<td class="paramname"> <em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int * </td>
<td class="paramname"> <em>isgn</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">float * </td>
<td class="paramname"> <em>est</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int * </td>
<td class="paramname"> <em>kase</em></td><td> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td><td width="100%"></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>
<pre>
Purpose
=======</pre><p>
<pre> SLACON estimates the 1-norm of a square matrix A.
Reverse communication is used for evaluating matrix-vector products.</pre><p>
<pre> Arguments
=========</pre><p>
<pre> N (input) INT
The order of the matrix. N >= 1.</pre><p>
<pre> V (workspace) FLOAT PRECISION array, dimension (N)
On the final return, V = A*W, where EST = norm(V)/norm(W)
(W is not returned).</pre><p>
<pre> X (input/output) FLOAT PRECISION array, dimension (N)
On an intermediate return, X should be overwritten by
A * X, if KASE=1,
A' * X, if KASE=2,
and SLACON must be re-called with all the other parameters
unchanged.</pre><p>
<pre> ISGN (workspace) INT array, dimension (N)</pre><p>
<pre> EST (output) FLOAT PRECISION
An estimate (a lower bound) for norm(A).</pre><p>
<pre> KASE (input/output) INT
On the initial call to SLACON, KASE should be 0.
On an intermediate return, KASE will be 1 or 2, indicating
whether X should be overwritten by A * X or A' * X.
On the final return from SLACON, KASE will again be 0.</pre><p>
<pre> Further Details
======= =======</pre><p>
<pre> Contributed by Nick Higham, University of Manchester.
Originally named CONEST, dated March 16, 1988.</pre><p>
<pre> Reference: N.J. Higham, "FORTRAN codes for estimating the one-norm of
a real or <a class="el" href="structcomplex.html">complex</a> matrix, with applications to condition estimation",
ACM Trans. Math. Soft., vol. 14, no. 4, pp. 381-396, December 1988.
=====================================================================
</pre>
</div>
</div><p>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Thu Aug 25 13:43:49 2011 for SuperLU by
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.5 </small></address>
</body>
</html>
|