Commit Graph

496 Commits

Author SHA1 Message Date
falgout
ecb0295918 Added a fairly general stencil-based approach for building test matrices. 2002-04-04 19:08:35 +00:00
ulrikey
72f7edc43d removed transpose.c, since it is now contained in csr_matop.c in the seq_mv
directory, and changed the calling sequence for hypre_CSRMatrixTranspose.c
in rap.
2001-08-28 16:25:17 +00:00
treadway
d43b4afa55 removed MAKEFLAGS references 2001-08-27 21:24:02 +00:00
treadway
cf57f32309 modified to except pmake option 2001-08-23 19:35:10 +00:00
painter
159aa18884 add argument to hypre_PCGFunctions 2001-08-23 18:28:44 +00:00
panayot
fc111309b6 another fix related to the case of zero num_faces; 2001-08-10 15:46:02 +00:00
panayot
c52fb73d09 Fixed minor memory leak (when num_faces = 0); 2001-08-10 15:25:17 +00:00
ulrikey
68ebc11e68 removed redundant definitions 2001-08-02 14:00:42 +00:00
ulrikey
fadaa57e7a added the possibility to truncate A and P.
P can now be truncated by specifying a truncation factor through -Ptr <xxx>
and/or specifying the max. no. of elements per row desired through
-Pmx <nnn>
A can be truncated by specifying a truncation factor through -Atr <xxx>
Truncation for A is done by determining the max diagonal element , and
eliminating every off-diagonal ellement smaller than the max diag.elmt *trunc
factor and adding this element to the diagonal
Truncation for P is done by eliminating every element per row smaller than
the abs. max elmt of this row * trunc-factor, and renormalizing the row
after truncation   (or determining the max. k elements per row , eliminating
the others and renormalizing)
2001-07-31 20:44:21 +00:00
ulrikey
ad49af592b added symm. Gauss-Seidel (-rlx 2 in command line) 2001-07-31 20:36:26 +00:00
panayot
1f6828b7f8 An older version has been replaced with most recent "bug--free" one. 2001-07-18 20:39:13 +00:00
falgout
9a12c0b9f6 Not supposed to have Makefiles checked into repository. 2001-06-22 01:35:32 +00:00
ulrikey
0cde99f60c new ij interface 2001-06-21 22:46:00 +00:00
treadway
64272662da added LD_FLAGS 2001-06-18 17:45:11 +00:00
panayot
179a3a99e1 minimal change to call matrix_inverse insted of mat_inv. 2001-05-30 01:44:52 +00:00
panayot
3e7713ac57 pseudo inverse of a symmetric positive semi--definite matrix;
uses eigenvector decomposition of symmetric matrix;
2001-05-30 01:43:46 +00:00
panayot
deec1cf94c V--cycle with GS smoothing; stationary solver; 2001-05-30 01:42:14 +00:00
panayot
d75c794dea V--cycle with GS smoothing routine; 2001-05-30 01:41:16 +00:00
panayot
32feabf64a sym_GS_pcg routine. 2001-05-30 01:40:37 +00:00
panayot
32aaec2601 setup routine for spectral AMGe; Colorado version. 2001-05-30 01:38:12 +00:00
panayot
7fa2d3b5a0 interpolation routine for spectral amge; Colorado version. 2001-05-30 01:37:13 +00:00
panayot
86c8617d81 Makefile for spectral amge; Colorado version. 2001-05-30 01:35:39 +00:00
panayot
357b8273f3 Driver for testing spectral amge method; Colorado version. 2001-05-30 01:34:37 +00:00
falgout
0fd11dbbc0 Moved these data files out of the repository and into a common directory. 2001-03-09 18:01:40 +00:00
panayot
e9b11ee06c fix a bug in a temporary array i_dof_index; 2001-02-16 00:30:57 +00:00
panayot
473a5d80ae builds interpolation for spectral agglomerate AMGe; 2001-01-30 17:11:03 +00:00
panayot
e9f7ff4705 multiplicative Schwarz smoother; minimal (element based) overlap. 2001-01-30 17:09:34 +00:00
panayot
b88c248b06 computes schur complements needed in the spectral AMGe interpolation; 2001-01-30 17:08:08 +00:00
panayot
c631a5207e changed name: matinv to mat_inv; 2001-01-30 17:05:40 +00:00
panayot
ce2f8e2809 changed name: matinv to mat_inv 2001-01-30 17:04:43 +00:00
chtong
5ae8d92402 Add a third problem for amge. 2001-01-23 19:40:52 +00:00
chtong
c4208ab6b0 add a second test problem for amge. 2001-01-23 19:40:06 +00:00
chtong
7d807cd7d7 Add a test problem for amge. 2001-01-23 19:39:19 +00:00
ulrikey
2fe5d9666c fixed a bug that caused the code to hang for small thresholds 2000-12-28 18:46:46 +00:00
panayot
1ccef22d01 some prints removed. 2000-12-15 18:08:55 +00:00
panayot
1b586d8370 small test example 2000-12-15 18:06:13 +00:00
panayot
02e8868454 large test example 2000-12-15 18:05:12 +00:00
panayot
bf642ff2c1 Large test example 2000-12-15 18:04:47 +00:00
panayot
b5a198a474 Large test example; 2000-12-15 18:01:20 +00:00
panayot
ecdc0e7f39 Added one more file: compute_dof_function.c 2000-12-15 17:48:32 +00:00
falgout
d9015e48a9 _matrix_vector=>_mv translations 2000-12-14 18:19:22 +00:00
falgout
3ac2d0d8d7 _linear_solvers=>_ls translations 2000-12-14 18:17:26 +00:00
falgout
020612ce4e _linear_solvers=>_ls and _matrix_vector=>_mv translations 2000-12-14 18:16:54 +00:00
painter
4a0ef6c539 driver calls generic Krylov functions directly. The corresponding
functions in HYPRE_csr{gmres,pcg} do nothing but call the generic ones;
all but Create, Destroy, and diagonal scaling are now obsolete.
2000-12-14 16:35:23 +00:00
treadway
9c6831b48f corrected include path 2000-12-12 21:41:41 +00:00
painter
c6aa0df18b restore previous *.h files and definitions of matrix and vector types 2000-12-06 21:39:33 +00:00
treadway
75cfb0de3c fixed syntax error in clean and veryclean, which showed up on osf make 2000-11-16 19:28:18 +00:00
treadway
7cae29a4da added support for $srcdir 2000-11-14 01:17:37 +00:00
treadway
c9ad5b45b8 added support of $srcdir 2000-11-14 01:11:55 +00:00
treadway
5daed1e266 intermediate makefile needed for srcdir support 2000-11-10 22:33:50 +00:00
painter
334f257d50 Conjugate gradient in the file cg.c is replaced by /krylov/pcg.c (the other
conjugate gradient implementation, pcg.c, is left alone).  GMRES in gmres.c
is replaced by krylov/gmres.c.  Names of vector operations have been changed
by inserting "Seq".
2000-10-09 16:36:10 +00:00
panayot
3bf85c7d1d change to allow for triangula elements; 2000-10-03 23:16:33 +00:00
panayot
05ebab88c8 faster version, but requires more temporary memory; 2000-10-03 19:08:32 +00:00
panayot
8f9e5bbd8b fixed a bug in update_entry; 2000-10-02 23:15:43 +00:00
panayot
3510c13703 Final remove. 2000-10-01 21:32:17 +00:00
panayot
6248415a51 Initial commit (not to be used yet) 2000-09-30 00:40:15 +00:00
panayot
6a37cbf9de second version 2000-09-30 00:35:10 +00:00
panayot
46ae51911a first version 2000-09-30 00:30:22 +00:00
ulrikey
215ae315ac cleaned up some unnecessary variables 2000-09-21 17:34:34 +00:00
ulrikey
77c4af115e switch to Panayot's hypre_AMGCreateDomainDof 2000-09-19 23:29:57 +00:00
ulrikey
bfdda1fa0b fixed bugs in schwarz routines and cleaned up memory leaks 2000-09-19 16:55:35 +00:00
ulrikey
e3126ff805 added undefined variables 2000-09-15 22:50:58 +00:00
panayot
c265b4d90e second version; 2000-09-15 22:46:22 +00:00
ulrikey
aa9d6ed7b8 Schwarz routines 2000-09-15 22:34:01 +00:00
ulrikey
9df11ed026 added schwarz method as smoother. (not working yet!) 2000-09-15 22:19:49 +00:00
ulrikey
662467ebd9 added CG and GMRES to the serial AMG-code. 2000-09-14 22:25:54 +00:00
ulrikey
4db2a52496 various changes:
1. cleanup of unnecessary variables
2. added CG and GMRES to the driver, they can be used through -solver x
where x=0 AMG, x=1 AMG-CG, x=2 CG, x=3 AMG-GMRES, x=4 GMRES
the tolerance can be set through -tol
and the Krylov dimension for GMRES through -k
2000-09-14 22:23:29 +00:00
vhenson
12bf509ab1 Added -ns <val>, gives number of sweeps per level 2000-09-13 17:05:18 +00:00
vhenson
c051a50895 added -mu option to give W cycles, etc. 2000-09-12 19:23:37 +00:00
jjones
b1ff92bfbd Added code to interp.c to ignore off-diagonals connecting
different function types.
2000-09-12 18:04:26 +00:00
vhenson
b8f9f4a1ed fixed bug in dof_func initiation 2000-09-12 17:45:47 +00:00
panayot
e21fb069ec This version calls coarsen (RugeLoL) with dof_func capability. 2000-09-08 14:46:43 +00:00
panayot
2acdb2d230 This version has dof_func capabilities (in RugeLoL); 2000-09-08 14:45:49 +00:00
falgout
e1cb80f600 Fixed uninitialized memory read problem. 2000-08-17 22:15:31 +00:00
panayot
e0f384764b amge driver for triangular elements; 2000-08-16 15:13:36 +00:00
panayot
745965c480 Initialized initial graphs (element_node and node_on_boundary) for
triangular elements (reading from files).
2000-08-16 15:12:52 +00:00
panayot
29b35c2a90 This routine groups dofs into physical variables (functions); 2000-08-15 23:52:35 +00:00
panayot
3716e86791 New coarse node selection (nodes on more than 1 AEface are coarse); 2000-08-15 23:51:28 +00:00
panayot
13a82916f3 some printf-s removed. 2000-08-15 23:39:15 +00:00
panayot
eaf6d4ac02 increased dimension of array "first"; 2000-08-15 23:28:46 +00:00
panayot
733df593cc No changes. 2000-08-15 23:25:56 +00:00
panayot
aae1f4ea8c substantially rewritten; spd of the resulting factorization matrix
guaranteed if the original matrix is spd;
                         minimal sparsity pattern used, i.e., ILU(0) one.
                         a nested dissection reordering used;
                         In general, the quality of the factorization is
                         close to symmetric Gauss--Seidel.
2000-08-15 23:21:29 +00:00
panayot
4a8cd57d76 new interpolation rule; interpolation based on averaging on AEfaces;
AE--interior nodes are interpolated based on harmonic extension
    of the boundary data; ---> element--free interpolation, i.e.,
                               no coarse element matrices created;
2000-08-15 23:13:50 +00:00
panayot
b0c449b5e4 Based on new build_interpolation.c routine
(element--free interpolation; no coarse element matrices created;)
2000-08-15 23:12:08 +00:00
panayot
b5d9d15107 Smoothing changed to 1 (pre-) and 1 (post--) ILU solves. 2000-08-15 23:09:26 +00:00
panayot
b38c71cc28 New rap algorithm; more storage, less computations; 2000-08-15 23:08:17 +00:00
panayot
42e9abe4b1 Some output messages have been removed/changed. 2000-07-25 19:28:31 +00:00
panayot
dbdaeaecec some output messages have been removed. 2000-07-25 19:27:52 +00:00
panayot
bf25501ec6 The read format of the initial element_node graph has been changed
to brick elements for elasticity (8 times 3) dofs per element.
2000-07-25 19:26:49 +00:00
panayot
cb50e2b9d1 Some output meassages have been removed. 2000-07-25 19:24:57 +00:00
panayot
e0cad549ad fixed a bug handling systems of PDEs (syztem_size > 1); 2000-06-26 16:10:44 +00:00
falgout
671687af51 Added 'interp.c' to FILES line. 2000-06-24 16:22:20 +00:00
ulrikey
98ea88ed66 added new interpolation based on compatible relaxation,
can be used with option -cri
default number of relaxation steps is 1,
with option -nrlx 2 two relaxation steps will be used and the stencils
will be extended to neighbors of length 2 away.
2000-06-23 22:18:49 +00:00
ulrikey
ba05f2d6c6 added a parameter to routines in indepset.c to be able to use it for CLJP-
as well as for CR-coarsening
2000-06-23 22:16:02 +00:00
ulrikey
c0019d31d8 added comments for -help option
new options are
-cr  for the coarsening based on compatible relaxation
-nrlx <nx> for the number of relaxation steps for cr coarsening (default = 1).
2000-06-13 22:21:05 +00:00
ulrikey
0a53bfc7ef made various changes to add coarsening based on compatible relaxation
as well as fixed many memory leaks
2000-06-13 21:59:48 +00:00
ulrikey
faa07a2637 coarsening based on compatible relaxation 2000-06-13 21:58:13 +00:00
ulrikey
db4bdb3eb0 computes scaled matrix norm for a CSR matrix 2000-06-13 21:56:57 +00:00
panayot
87ed96eb72 this is unnecessary for amge. 2000-05-12 17:50:31 +00:00
panayot
a2d2abe6a3 header file for amge; 2000-05-12 16:12:48 +00:00