Commit Graph

410 Commits

Author SHA1 Message Date
falgout
620f46872a Fixed an uninitialized memory read problem and a potential performance issue for
problems in less than 3 dimensions.
2011-11-02 20:37:56 +00:00
falgout
e519cc20c4 Added a new hypre_error_w_msg() routine to throw errors or warnings with an
informational message attached, and used this to replace several warning messages
that were being printed in PFMG.
2011-09-22 20:39:35 +00:00
baker59
bc70fe14d0 added some comments about AP 2011-04-26 19:08:58 +00:00
falgout
f60991bfc4 Fixed the comment, which incorrectly said "non-Galerkin". 2011-03-11 16:02:52 +00:00
falgout
0c7c19bb1a Rewrote VectorClearAllValues() to be simpler and used it in the constant
coefficient version of PFMG to insure that boundary values are set to zero.
The previously used ClearBoundGhostValues() routine requires a lot of box
calculations that can be expensive.
2011-03-09 02:17:46 +00:00
falgout
b3acb4893f Fixed a couple of threading problems. 2011-03-01 17:10:23 +00:00
falgout
9f1f2f7fc2 Added [issue663] reference to one of the comments. 2011-01-19 23:35:41 +00:00
falgout
8d4a3851c1 Forgot to remove south/north from the shared OpenMP variables. 2011-01-19 23:02:34 +00:00
falgout
37e709e857 Rewrote PFMG constant-coeff variable-diag non-Galerkin routines and threaded. 2011-01-19 22:48:06 +00:00
falgout
e86279b488 Threaded some loops that were previously not. 2011-01-14 18:45:54 +00:00
falgout
2b07c64640 These OpenMP changes actually run correctly now.
Much of this code is not threaded.
2011-01-13 23:10:56 +00:00
falgout
4e59e511ab I believe these are all mistakes in the openmp implementation. 2011-01-12 02:08:12 +00:00
falgout
3f0a439827 Changed the Fortran interface to use a Fortran MPI communicator.
Also implemented the new F90 types and macros for all of the interfaces.
2011-01-06 23:20:57 +00:00
falgout
7995260b56 Used a script to remove 6 spaces after HYPRE_Int to improve indentation 2010-12-23 01:25:40 +00:00
falgout
e76d059c57 Fixed the constant coefficient PFMG solvers and added regression tests 2010-12-23 00:47:50 +00:00
falgout
d636ba377d Fixed the size of a Fortran communicator to be 'int' not 'HYPRE_Int'.
Changed the communicator type in all Fortran interface routines to use
the new hypre_F90_Comm type.
2010-12-21 19:34:30 +00:00
falgout
e3181f26b1 Added 64 bit feature using HYPRE_Int (see tracker [issue489] for details).
Changed MPI routines to hypre_MPI routines.
Added hypre_printf, etc. routines.
Added AUTOTEST tests to look for 'int' and 'MPI_' calls.
Added a new approach for the Fortran interface (not implemented everywhere yet).
2010-12-20 19:27:44 +00:00
falgout
ef268a4b29 Added some comments on power-of-two restrictions for PFMG, SysPFMG, and SMG for
periodic problems.
2010-11-08 22:32:10 +00:00
falgout
3e4a8f7851 Changed PFMG and SysPFMG to be more flexible with non-power of two periodic grids. 2010-11-06 00:26:41 +00:00
falgout
3163add433 Just reformatted some comments. 2010-11-05 22:28:40 +00:00
falgout
a096e956b5 Added additional reference and user manual documentation for LOBPCG. 2010-01-29 22:32:52 +00:00
falgout
6fdb8c74fd Changed to install only one hypre lib file. 2010-01-29 01:40:29 +00:00
falgout
0d5b565145 Removed most of the ref docs for the storage-dependent Krylov routines. 2010-01-20 01:10:01 +00:00
falgout
9f26a7739a Changed 'cp -fpd' to 'cp -fpPR' for better portability.
This should work on the Mac now in particular.
2010-01-14 18:17:53 +00:00
falgout
8ed12c2264 Added the release number to the names of hypre shared libraries (see [issue181]).
Also removed the HYPRE_LSI library because it was nearly identical to HYPRE.
2010-01-14 01:16:24 +00:00
baker59
ea0b06f460 Add a fortran function to set the restart parameter for GMRES. 2009-07-02 18:57:45 +00:00
ulrikey
5daffe8cad added ClearVector to bicgstab 2008-07-31 23:11:23 +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
b365889e9f Completed the implementation of SetNeighborBox for all variable types:
- Generalized the Struct communication routines to handle data transformations
- Added more flexibility to Set(Box)Values routines for efficiency.
- Inter-part shared boundary data is now updated appropriately
- Added SetNeighborPart function (to replace SetNeighborBox)
- Added a finite-element-style input file capability for the sstruct driver
- The Split solver can now be used standalone (added to struct/sstruct drivers)
- Added a Jacobi block solver to Split (useful for regression testing)
- Added regression tests for the new SetNeighborPart features
2008-01-23 01:14:45 +00:00
ulrikey
d1591ac26f changed copyright statement to reflect new management. 2007-11-13 19:56:09 +00:00
ulrikey
ce64157a05 fixed OPenMP compile problems 2007-11-05 23:38:36 +00:00
barrylee
6b9f5f9cb8 Set the temp. vector ghostlayers to be that of incoming vector. 2007-09-26 22:24:35 +00:00
barrylee
aaa9096603 Yet another relaxation weight change. Handling of highly variable stencils. 2007-05-31 16:14:44 +00:00
barrylee
af31d14f68 Changes to computedxyz to get better sense of coarsening direction and
better weights for Jacobi.
2007-04-06 17:25:52 +00:00
barrylee
956fcf613c New automatic determination of Jacobi weights. Also different weights
are used on different levels (pfmg).
2007-03-30 17:22:42 +00:00
painter
8cd16acd62 fix conditionals on matvec create&destroy 2007-03-12 17:35:28 +00:00
barrylee
be7a9cfd41 Removed a conditional for the matvec destruction. 2007-03-12 16:36:31 +00:00
painter
cc4fc18d2a Delete a convergence test which doesn't work right with multiple processors.
It could be made to work right, but it's not presently worth the trouble
because there's another equivalent convergence test already here, which does
work correctly.
2007-03-10 00:09:08 +00:00
painter
05b12eba47 1. initialize the new weight veraibles in the struct hypre_PFMGRelaxData.
2. If hypre_PFMGRelaxSetType changes the Jacobi weight in a
 hypre_PointRelaxData struct, make sure the ypre_PFMGRelaxData struct
 contains the same weight.  This sort of thing should be done too when
 the weight coding in hypre_PFMGRelaxSetType is migrated to the setup
 function.
3. Also in hypre_PFMGRelaxSetType, don't change a weight which has already
  been set by the user.
2007-03-10 00:06:57 +00:00
painter
925861b231 With the present versions of the hypre_PFMGRelaxSetType/SetJacobiWeight
functions, the weight should be set first.
2007-03-10 00:01:34 +00:00
painter
7dcb11dbb9 Add "Get" functions corresponding to new "Set" functions for weighted
Jacobi weights.
2007-03-09 23:59:58 +00:00
barrylee
a89770c3fa Changes to incorporate weighted Jacobi changes. 2007-03-09 18:08:48 +00:00
barrylee
2838877367 Changes to incorporate new weighted Jacobi weights. 2007-03-09 18:05:37 +00:00
barrylee
19ad299013 Add a patch for the center= 0 Nan problem. 2007-02-07 19:27:38 +00:00
baker59
b805f26de6 Added a timing debugging tool (inactive currently). 2007-01-26 17:41:18 +00:00
baker59
132dbf2705 Max distance is not a hypre_Index - not an int. 2006-12-29 22:33:46 +00:00
painter
057632667b straightforward computation of residual sum-of-squares if more than one
pointset (when the other method is inaccurate)
2006-12-12 22:15:57 +00:00
painter
d040cb7078 declare the new functions which I checked in a few days ago 2006-12-05 00:41:59 +00:00
painter
58ab00af51 Add optional convergence test based on relative residual norm; default
off for pfmg, on for jacobi.  c.f. Issue35.
2006-12-01 23:57:03 +00:00