Blame view

fvn_sparse/AMD/README.txt 8.82 KB
422234dc3   daniau   git-svn-id: https...
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
  AMD Version 2.2, Copyright (c) 2007 by Timothy A.
  Davis, Patrick R. Amestoy, and Iain S. Duff.  All Rights Reserved.
  AMD is available under alternate licences; contact T. Davis for details.
  
  AMD:  a set of routines for permuting sparse matrices prior to
      factorization.  Includes a version in C, a version in Fortran, and a MATLAB
      mexFunction.
  
  Requires UFconfig, in the ../UFconfig directory relative to this directory.
  
  Quick start (Unix, or Windows with Cygwin):
  
      To compile, test, and install AMD, you may wish to first configure the
      installation by editting the ../UFconfig/UFconfig.mk file.  Next, cd to this
      directory (AMD) and type "make" (or "make lib" if you do not have MATLAB).
      To compile and run a demo program for the Fortran version, type
      "make fortran".  When done, type "make clean" to remove unused *.o files
      (keeps the compiled libraries and demo programs).  See the User Guide
      (Doc/AMD_UserGuide.pdf), or ../UFconfig/UFconfig.mk for more details.
  
  Quick start (for MATLAB users);
  
      To compile, test, and install the AMD mexFunction, cd to the
      AMD/MATLAB directory and type amd_make at the MATLAB prompt.
  
  If you have MATLAB 7.2 or earlier and use "make mex", you must first edit
  UFconfig/UFconfig.h to remove the "-largeArrayDims" option from the MEX command
  (or just use amd_make.m inside MATLAB).
  
  -------------------------------------------------------------------------------
  
  AMD License:
  
      Your use or distribution of AMD or any modified version of
      AMD implies that you agree to this License.
  
      This library is free software; you can redistribute it and/or
      modify it under the terms of the GNU Lesser General Public
      License as published by the Free Software Foundation; either
      version 2.1 of the License, or (at your option) any later version.
  
      This library is distributed in the hope that it will be useful,
      but WITHOUT ANY WARRANTY; without even the implied warranty of
      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      Lesser General Public License for more details.
  
      You should have received a copy of the GNU Lesser General Public
      License along with this library; if not, write to the Free Software
      Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
      USA
  
      Permission is hereby granted to use or copy this program under the
      terms of the GNU LGPL, provided that the Copyright, this License,
      and the Availability of the original version is retained on all copies.
      User documentation of any code that uses this code or any modified
      version of this code must cite the Copyright, this License, the
      Availability note, and "Used by permission." Permission to modify
      the code and to distribute modified code is granted, provided the
      Copyright, this License, and the Availability note are retained,
      and a notice that the code was modified is included.
  
  Availability:
  
      http://www.cise.ufl.edu/research/sparse/amd
  
  -------------------------------------------------------------------------------
  
  This is the AMD README file.  It is a terse overview of AMD.
  Refer to the User Guide (Doc/AMD_UserGuide.pdf) for how to install
  and use AMD.
  
  Description:
  
      AMD is a set of routines for pre-ordering sparse matrices prior to Cholesky
      or LU factorization, using the approximate minimum degree ordering
      algorithm.  Written in ANSI/ISO C with a MATLAB interface, and in
      Fortran 77.
  
  Authors:
  
      Timothy A. Davis (davis at cise.ufl.edu), University of Florida.
      Patrick R. Amestory, ENSEEIHT, Toulouse, France.
      Iain S. Duff, Rutherford Appleton Laboratory, UK.
  
  Acknowledgements:
  
      This work was supported by the National Science Foundation, under
      grants DMS-9504974, DMS-9803599, and CCR-0203270.
  
      Portions of this work were done while on sabbatical at Stanford University
      and Lawrence Berkeley National Laboratory (with funding from the SciDAC
      program).  I would like to thank Gene Golub, Esmond Ng, and Horst Simon
      for making this sabbatical possible.
  
  -------------------------------------------------------------------------------
  Files and directories in the AMD distribution:
  -------------------------------------------------------------------------------
  
      ---------------------------------------------------------------------------
      Subdirectories of the AMD directory:
      ---------------------------------------------------------------------------
  
      Doc		documentation
      Source	primary source code
      Include	include file for use in your code that calls AMD
      Demo	demo programs.  also serves as test of the AMD installation.
      MATLAB	AMD mexFunction for MATLAB, and supporting m-files
      Lib		where the compiled C-callable and Fortran-callable
  		AMD libraries placed.
  
      ---------------------------------------------------------------------------
      Files in the AMD directory:
      ---------------------------------------------------------------------------
  
      Makefile	top-level Makefile for GNU make or original make.
  		Windows users would require Cygwin to use "make"
  
      README.txt	this file
  
      ---------------------------------------------------------------------------
      Doc directory: documentation
      ---------------------------------------------------------------------------
  
      ChangeLog			change log
      License			the AMD License
      Makefile			for creating the documentation
      AMD_UserGuide.bib		AMD User Guide (references)
      AMD_UserGuide.tex		AMD User Guide (LaTeX)
      AMD_UserGuide.pdf		AMD User Guide (PDF)
      lesser.txt			the GNU LGPL license
  
      ---------------------------------------------------------------------------
      Source directory:
      ---------------------------------------------------------------------------
  
      amd_order.c			user-callable, primary AMD ordering routine
      amd_control.c		user-callable, prints the control parameters
      amd_defaults.c		user-callable, sets default control parameters
      amd_info.c			user-callable, prints the statistics from AMD
  
      amd_1.c			non-user-callable, construct A+A'
      amd_2.c			user-callable, primary ordering kernel
  				(a C version of amd.f and amdbar.f, with
  				post-ordering added)
      amd_aat.c			non-user-callable, computes nnz (A+A')
      amd_dump.c			non-user-callable, debugging routines
      amd_postorder.c		non-user-callable, postorder
      amd_post_tree.c		non-user-callable, postorder just one tree
      amd_valid.c			non-user-callable, verifies a matrix
      amd_preprocess.c		non-user-callable, computes A', removes duplic
  
      amd.f			user-callable Fortran 77 version
      amdbar.f			user-callable Fortran 77 version
  
      ---------------------------------------------------------------------------
      Include directory:
      ---------------------------------------------------------------------------
  
      amd.h			include file for C programs that use AMD
      amd_internal.h		non-user-callable, include file for AMD
  
      ---------------------------------------------------------------------------
      Demo directory:
      ---------------------------------------------------------------------------
  
      Makefile			for GNU make or original make
  
      amd_demo.c			C demo program for AMD
      amd_demo.out		output of amd_demo.c
  
      amd_demo2.c			C demo program for AMD, jumbled matrix
      amd_demo2.out		output of amd_demo2.c
  
      amd_l_demo.c		C demo program for AMD (UF_long version)
      amd_l_demo.out		output of amd_l_demo.c
  
      amd_simple.c		simple C demo program for AMD
      amd_simple.out		output of amd_simple.c
  
      amd_f77demo.f		Fortran 77 demo program for AMD
      amd_f77demo.out		output of amd_f77demo.f
  
      amd_f77simple.c		simple Fortran 77 demo program for AMD
      amd_f77simple.out		output of amd_f77simple.f
  
      amd_f77cross.f		Fortran 77 demo, calls the C version of AMD
      amd_f77cross.out		output of amd_f77cross.f
      amd_f77wrapper.c		Fortran-callable wrapper for C version of AMD
  
      ---------------------------------------------------------------------------
      MATLAB directory:
      ---------------------------------------------------------------------------
  
      GNUmakefile			a nice Makefile, for GNU make
      Makefile			an ugly Unix Makefile (for older make's)
  
      Contents.m			for "help amd2" listing of toolbox contents
  
      amd2.m			MATLAB help file for AMD
      amd_make.m			MATLAB m-file for compiling AMD mexFunction
      amd_install.m		compile and install the AMD mexFunction
  
      amd_mex.c			AMD mexFunction for MATLAB
  
      amd_demo.m			MATLAB demo for AMD
      amd_demo.m.out		diary output of amd_demo.m
      can_24.mat			input file for AMD demo
  
      ---------------------------------------------------------------------------
      Lib directory:  libamd.a and libamdf77.a libraries placed here
      ---------------------------------------------------------------------------
  
      GNUmakefile			a nice Makefile, for GNU make
      Makefile			an ugly Unix Makefile (for older make's)
      libamd.def			AMD definitions for Windows