File: spooles.2.2.html

package info (click to toggle)
spooles 2.2-14
  • links: PTS, VCS
  • area: main
  • in suites: bullseye, buster, sid
  • size: 19,680 kB
  • sloc: ansic: 146,836; sh: 7,571; csh: 3,615; makefile: 1,969; perl: 74
file content (297 lines) | stat: -rw-r--r-- 9,600 bytes parent folder | download | duplicates (5)
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
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
<html>
<!-- *************************************************************** -->
<head>
<title>
SPOOLES 2.2 : SParse Object Oriented Linear Equations Solver
</title>
</head>
<!-- *************************************************************** -->
<h2>
SPOOLES 2.2 : SParse Object Oriented Linear Equations Solver
</h2>
<hr>
<b>SPOOLES</b> is a library for solving sparse real and complex
linear systems of equations, written in the C language using object
oriented design.
At present, there is the following functionality: 
<ol>
<li>
Compute multiple minimum degree, generalized nested dissection 
and multisection orderings of matrices with symmetric structure. 
</p>
<li>
Factor and solve square linear systems of equations with 
symmetric structure, with or without pivoting for stability. 
The factorization can be symmetric LDL<sup>T</sup>,
Hermitian LDL<sup>H</sup>, 
or nonsymmetric LDU. 
A direct factorization or a
drop tolerance factorization can be computed. 
The factors and solve can be done in serial
mode, multithreaded with Solaris or POSIX threads, or with MPI.
</p>
<li>
Factor and solve overdetermined full rank systems of equations
using a multifrontal QR factorization, in serial or using POSIX
threads.
</p>
<li>
Solve square linear systems using a variety of Krylov iterative
methods.
The preconditioner is a drop tolerance factorization, with or
without pivoting for stability.
</ol>
</p>
<!-- *************************************************************** -->
<hr>
<p>
The SPOOLES library has been developed by members of the Mathematics 
and Engineering Analysis Unit of Boeing Phantom Works.
The library was supported in part by DARPA contract
DABT63-95-C-0122 and the DoD High Performance Computing
Modernization Program Common HPC Software Support Initiative.
</p> 
Individuals who have contributed to this package include:
<ol>
<li> Cleve Ashcraft, Boeing Phantom Works
<li> Roger Grimes, Boeing Phantom Works
<li> Joseph Liu, York University
<li> Jim Patterson, Boeing Phantom Works
<li> Dan Pierce, Boeing Phantom Works
<li> Yichi Pierce, Boeing Phantom Works
<li> Peter Schartz, CSAR Corporation
<li> Juergen Schulze, University of Paderborn
<li> Wei-Pai Tang, University of Waterloo
<li> David Wah, Boeing Phantom Works
<li> Jason Wu, Boeing Phantom Works
</ol>
<p>
<b>
This release is entirely within the public domain; 
there are no licensing restrictions,
and there is no warranty of any sort.
</b>
</p><p>
Contact <tt>cleve.ashcraft@boeing.com</tt> for more information, 
comments and bug reports.
</p>
<!-- *************************************************************** -->
<hr>
<p>
The library is available as a gzip'd, tar'd file that contains the
entire source, drivers and LaTeX documentation. 
There are four Postscript files that contain much of the documentation.
</p>
<ol>
<li> 
<a href="ReferenceManual.ps.gz">
ReferenceManual.ps.gz 
</a>
--- "The Reference Manual for SPOOLES, Release 2.2:
An Object Oriented Software Library for Solving Sparse Linear
Systems of Equations",
over 400 pages, every object, method and
driver is documented.
</p>

<li> 
<a href="FrontTrees.ps.gz">
FrontTrees.ps.gz 
</a>
--- "Ordering Sparse Matrices and Transforming Front Trees",
20, pages,
describes the different ordering methods in the library and
the effect of the front trees on performance.
</p>

<li> 
<a href="LinSol.ps.gz">
LinSol.ps.gz 
</a>
--- "Wrapper Objects for Solving a Linear System of Equations
using SPOOLES 2.2",
58 pages, provides the most gentle introduction to the library,
documents a set of software objects written to incorporate the
SPOOLES linear solver into the CSAR-Nastran finite element software
package.
</p>

<li> 
<a href="AllInOne.ps.gz">
AllInOne.ps.gz 
</a>
--- "Solving Linear Systems using SPOOLES 2.2",
54 pages, contains example programs with commentary,
a general introduction to the library, much more detail
than the "Wrapper Objects" document immediately above.
</p>

<li> 
<a href="Eigen.ps.gz">
Eigen.ps.gz 
</a>
--- "Integrating the SPOOLES 2.2 Sparse Linear Algebra Library into
the LANCZOS Block-Shifted Lanczos Eigensolver",
42 pages, 
documents a set of software objects written to incorporate the
SPOOLES linear solver into an eigenanalysis package,
also funded by DARPA contract DABT63-95-C-0122 and 
the DoD High Performance Computing
Modernization Program Common HPC Software Support Initiative.
</p>

<li> 
<a href="ASHCRAFC.ps.gz">
ASHCRAFC.ps.gz
</a>
"SPOOLES: An Object-Oriented Sparse Matrix Library",
a paper to be included in the Proceedings of the 
1999 SIAM Conference on Parallel Processing for Scientific Computing,
March 22-27, 1999.
</p>
</ol>
<p>
<!-- *************************************************************** -->
In addition, the following PostScript files document the SPOOLES
modules:
</p>
<table><tr>
<td><a href="A2.ps.gz">A2.ps.gz</a></td>
<td><a href="DV.ps.gz">DV.ps.gz</a></td>
<td><a href="I2Ohash.ps.gz">I2Ohash.ps.gz</a></td>
<td><a href="MSMD.ps.gz">MSMD.ps.gz</a></td>
<td><a href="SubMtx.ps.gz">SubMtx.ps.gz</a></td>
</tr><tr>
<td><a href="BKL.ps.gz">BKL.ps.gz</a></td>
<td><a href="DenseMtx.ps.gz">DenseMtx.ps.gz</a></td>
<td><a href="IIheap.ps.gz">IIheap.ps.gz</a></td>
<td><a href="MT.ps.gz">MT.ps.gz</a></td>
<td><a href="SubMtxList.ps.gz">SubMtxList.ps.gz</a></td>
</tr><tr>
<td><a href="BPG.ps.gz">BPG.ps.gz</a></td>
<td><a href="Drand.ps.gz">Drand.ps.gz</a></td>
<td><a href="IV.ps.gz">IV.ps.gz</a></td>
<td><a href="Network.ps.gz">Network.ps.gz</a></td>
<td><a href="SubMtxManager.ps.gz">SubMtxManager.ps.gz</a></td>
</tr><tr>
<td><a href="Chv.ps.gz">Chv.ps.gz</a></td>
<td><a href="EGraph.ps.gz">EGraph.ps.gz</a></td>
<td><a href="IVL.ps.gz">IVL.ps.gz</a></td>
<td><a href="PatchAndGoInfo.ps.gz">PatchAndGoInfo.ps.gz</a></td>
<td><a href="SymbFac.ps.gz">SymbFac.ps.gz</a></td>
</tr><tr>
<td><a href="ChvList.ps.gz">ChvList.ps.gz</a></td>
<td><a href="ETree.ps.gz">ETree.ps.gz</a></td>
<td><a href="Ideq.ps.gz">Ideq.ps.gz</a></td>
<td><a href="Pencil.ps.gz">Pencil.ps.gz</a></td>
<td><a href="Tree.ps.gz">Tree.ps.gz</a></td>
</tr><tr>
<td><a href="ChvManager.ps.gz">ChvManager.ps.gz</a></td>
<td><a href="FrontMtx.ps.gz">FrontMtx.ps.gz</a></td>
<td><a href="InpMtx.ps.gz">InpMtx.ps.gz</a></td>
<td><a href="Perm.ps.gz">Perm.ps.gz</a></td>
<td><a href="Utilities.ps.gz">Utilities.ps.gz</a></td>
</tr><tr>
<td><a href="Coords.ps.gz">Coords.ps.gz</a></td>
<td><a href="GPart.ps.gz">GPart.ps.gz</a></td>
<td><a href="Lock.ps.gz">Lock.ps.gz</a></td>
<td><a href="SemiImplMtx.ps.gz">SemiImplMtx.ps.gz</a></td>
<td><a href="ZV.ps.gz">ZV.ps.gz</a></td>
</tr><tr>
<td><a href="DSTree.ps.gz">DSTree.ps.gz</a></td>
<td><a href="Graph.ps.gz">Graph.ps.gz</a></td>
<td><a href="MPI.ps.gz">MPI.ps.gz</a></td>
<td><a href="SolveMap.ps.gz">SolveMap.ps.gz</a></td>
<td><a href="misc.ps.gz">misc.ps.gz</a></td>
</tr></table>
<hr>
<p>
Changes since the 2.0 release.
<ol>
<li> Semi-implicit factorizations to reduce storage and/or
operation counts for direct and approximate factorizations.
(See the <tt> SemiImplMtx </tt> directory.)
</p>
<li> Krylov solvers for real SPD, symmetric indefinite,
and nonsymmetric linear systems. 
(See the <tt> Iter </tt> directory.)
The preconditioner is a drop tolerance approximate factorization 
obtained from the <tt> FrontMtx </tt> object.
There also exists a simpler ILU drop tolerance factorization
in the <tt> ILUMtx </tt> directory.
</p>
<li>
There is a "patch-and-go" functionality for factorizations
that must be modified on the fly.
One application is found in singular or near singular matrices
from structural analysis applications.
Another application is for matrices from interior point methods.
In both cases, the presence of a zero or small pivot element
requires special handling.
</p>
<li>
There is a "wrapper" object to solve linear systems
found in the <tt> LinSol </tt> directory.
It was used to incorporate the <b> SPOOLES </b> library into
the CSAR-Nastran finite element package.
</p>
<li>
There is a "wrapper" object used in an eigenanalysis package
found in the <tt> Eigen </tt> directory.
</p>
<li>
Several bugs were fixed in the multithreaded and MPI solvers.
Users of the <b> SPOOLES 2.0 </b> versions should upgrade.
</p>
<li>
The user manual and reference manual documentation has been
reorganized. There is a new <tt> documentation </tt>
directory, with five subdirectories:
</p>
<ol>
<li>
<tt> documentation/Install </tt> holds 
"SPOOLES 2.2 Installation Manual",
the installation manual.
</p>
<li>
<tt> documentation/AllInOne </tt> holds 
"Solving Linear Systems using SPOOLES 2.2",
the driver programs manual.
</p>
<li>
<tt> documentation/FrontTrees </tt> holds 
"Ordering Sparse Matrices and Transforming Front Trees",
the ordering manual.
</p>
<li>
<tt> documentation/ReferenceManual </tt> holds 
"The Reference Manual for SPOOLES, Release 2.2:
An Object Oriented Software Library for Solving Sparse Linear
Systems of Equations",
the complete reference manual.
</p>
<li>
<tt> documentation/PP99 </tt> holds 
"SPOOLES: An Object-Oriented Sparse Matrix Library",
a paper to be included in the Proceedings of the 
1999 SIAM Conference on Parallel Processing for Scientific Computing,
March 22-27, 1999.
</p>
</ol>
</p>
</ol>
<!-- *************************************************************** -->
<hr>
<p>
Changes since the 1.0 release.
<ol>
<li> Complex linear systems are now supported
</p><p>
<li> Factor storage has been reorganized to improve parallel solves
</p><p>
<li> Several bugs in the MPI solvers have been fixed
</ol>
</p><p>
<!-- *************************************************************** -->
<hr>