Commit Graph

963 Commits

Author SHA1 Message Date
kolev1
df0528b310 Plugged a memory leak. 2009-09-18 22:48:49 +00:00
kolev1
7946048c89 Several improvements in the zero-conductivity-regions version of AMS, which
should give a cheaper and more robust solver on most problems.
2009-08-31 22:20:03 +00:00
ulrikey
08a41748fc removed unused variables 2009-08-18 14:23:35 +00:00
ulrikey
f067b77a82 fixed various memory leaks 2009-08-14 17:49:14 +00:00
ulrikey
81b4a12219 added new interpolation operators for aggressive coarsening 2009-08-13 22:43:47 +00:00
kolev1
b88deab80f Added a more robust version of AMS for problems with zero-conductivity regions,
where the matrix is singular Ker(A)=Ran(G0).

To use this version, provide a list of the interior nodes in the zero
conductivity region using AMSSetInteriorNodes(). This will constructs G0 and AMS
for A+G0G0^T.  For compatibility, the PCG residual is periodically projected
onto Ker(G0^T).  This is done in AMSSolve() and can be adjusted with
AMSSetProjectionFrequency().
2009-07-20 00:36:39 +00:00
ulrikey
1673b0bbdc *** empty log message *** 2009-05-05 16:36:36 +00:00
ulrikey
6c86d7f019 nitialzed plot_file_name with empty string 2009-05-05 16:25:46 +00:00
kolev1
a654e42155 Fixed a potential uninitialized memory read (which was harmless but valgrind
complained about it).
2009-04-28 20:46:44 +00:00
kolev1
e9173a0c2e Account for empty rows in G and make sure that AMS works for problems with
zero conductivity regions.
2009-03-06 00:23:03 +00:00
ulrikey
2a93a4a941 corrected documentation 2009-01-09 16:20:54 +00:00
falgout
e541649226 Escaped a few underscores in the comments so that the reference manual builds. 2008-10-01 23:15:47 +00:00
kolev
6362cc6ab3 Added Fortran interface for AMS. 2008-09-30 22:21:10 +00:00
kolev
c4d9da0d6c Improved version of the AMSConstructDiscreteGradient() function, which
generates the discrete gradient matrix based on edge information provided
by the user. This simplifies the use of AMS.
2008-09-30 19:43:24 +00:00
ulrikey
2170e6b46a added ClearVector to BicCGSTAB 2008-07-31 23:11:54 +00:00
ulrikey
9b10be18fa fixed a few potential segfaults 2008-07-29 16:28:44 +00:00
kolev
68d2decdbb Several updates in AMS:
- improved relaxation options (SSOR, Kaczmarz)
- new solver type (9) with discrete divergence
2008-07-28 20:23:13 +00:00
ulrikey
74729cd858 added a few functions to make them accessible for Fortran users 2008-07-24 22:13:08 +00:00
falgout
aed363b227 Okay, this time I think I've gotten rid of the cast warnings correctly. 2008-07-23 17:20:27 +00:00
falgout
39ddf688dc Removed (char *) cast that I added in the previous commit. 2008-07-23 15:23:14 +00:00
falgout
4b51736021 Changed comments in two interfaces and fixed the implementation of one of them.
These two interfaces (search for 'RDF') are probably not useful.
2008-07-23 01:40:40 +00:00
kolev
3c32194086 Added the copyright header. 2008-07-18 17:50:35 +00:00
ulrikey
b39374690d replaced copyright headers 2008-07-18 01:34:48 +00:00
baker59
c52c6035dd Checking in a number of changes:
1) Added the FlexGMRES and LGMRES solvers to the IJ, Struct and SStruct
interfaces.

2) Added the absolute tolerance interface functions (for all Krylov
solvers) to the Struct and SStruct interfaces (including fortran).

3) Added the absolute tolerance interface functions to the IJ fortran
interface.

4) Added the absolute tolerance check to the AMG Hybrid solver.

5) Updated some documentation information in the interface header files.
2008-05-23 20:26:43 +00:00
falgout
5f302dbb54 Fixed an interface bug with SetDofFunc.
Cleaned up this file a bit and added a few 'RDF' comments about other interface
routines that look incorrect.
2008-05-16 17:32:28 +00:00
kolev
7c07437510 Fixed a compiler warning, see issue256. 2008-05-12 18:26:14 +00:00
baker59
743b325637 Added absolute tolerance convergence check for BiCGStab and PCG. 2008-05-02 21:21:07 +00:00
baker59
7edac43629 Added two additional options for creating the primary matrix for the hybrid
approach (now 1,2,3,4 and 6 are valid).
2008-05-01 20:28:33 +00:00
baker59
eca1f9f05c Added absolute tolerance convergence check to PCG and BiCGStab (now work the same as GMRES). Left in some existing code for backwards compatibility. 2008-05-01 17:30:19 +00:00
baker59
0d32527875 Added absolute convergence tolerance stopping criteria to GMRES. 2008-04-25 23:27:23 +00:00
baker59
553131fd5d Fixed bug for when max_levels = 1. 2008-04-22 22:13:36 +00:00
kolev
12323a603b Added two new solver types to AMS:
- type 20 corresponds to a 4x4 block coarse matrix with interpolation [G Pi]
- type 0 is a Hiptmair-like smoother
2008-03-04 19:38:30 +00:00
kolev
61121e62c3 Made sure that the hypre_F90_NAME_LAPACK/hypre_F90_NAME_BLAS macros are used correctly. See issue169. 2008-02-07 00:43:22 +00:00
ulrikey
74ad3f823e fixed a bug, undefined comm_pkg. 2008-02-05 21:19:53 +00:00
baker59
47f5932948 Added option for not assuming matrix blocks are SPD for Schwarz smoothers. 2008-01-29 23:45:34 +00:00
baker59
cbca5f0384 Added the option to not assume the matrix blocks for the Schwarz
smoothers are SPD (this primarily involved adding a new user option
and replacing the LAPACK and ESSL functions that do the inversions
with ones that use LU instead of Cholesky factorizations).

Added the new hypre error checking to Schwarz smoothers.
2008-01-29 23:44:05 +00:00
ulrikey
caa157cb32 removed some lines where a wrong error flag was raised. 2007-12-11 16:28:16 +00:00
ulrikey
5133161e52 fixed a bug, which caused the no global partition option to fail. 2007-12-11 15:33:41 +00:00
ulrikey
2c206fd354 added some changes, fixed some bugs regarding using Euclid as a smoother in AMG 2007-11-30 21:35:35 +00:00
ulrikey
1f597b89e2 adjusted printout 2007-11-19 17:41:35 +00:00
ulrikey
3c53de2e94 changed copyright statement to reflect new management. 2007-11-13 19:34:01 +00:00
falgout
f51d426c0c Fixed some reference manual problems. 2007-11-13 18:56:42 +00:00
ulrikey
def1d6d379 added functions to individually set Euclid's parameters to be more
consistent with other hypre preconditioners.
2007-11-09 23:19:54 +00:00
ulrikey
5262f2e6fc corrected typo 2007-11-06 23:43:12 +00:00
ulrikey
b872712124 restore previous values 2007-11-06 23:41:34 +00:00
ulrikey
db39fac478 fixed 2 potential bugs 2007-11-06 23:12:37 +00:00
ulrikey
49852daabe fixed OPenMP problems 2007-11-05 22:41:58 +00:00
ulrikey
13a6d191cd renamed function 'ssort' to 'hypre_ssort' to avoid conflict with
potential other functions using the same name
2007-10-16 20:48:08 +00:00
baker59
15e1ae30f2 Added:
- nodal direct interpolation for systems AMG
 - truncation by max number of elements for nodal interpolation routines

Modified:
 - nodal interpolation using diagonal only to check the signs (this way it is equivalent to the unknown approach interpolation)
2007-09-25 20:09:45 +00:00
ulrikey
16805f1a9b some bug fixes and new capabilities for compatible relaxation 2007-08-31 00:05:54 +00:00