1 |
|
|
2 |
/* $Id$ */ |
/* $Id$ */ |
3 |
|
|
4 |
/* |
/******************************************************* |
5 |
******************************************************************************** |
* |
6 |
* Copyright 2006 by ACcESS MNRF * |
* Copyright 2003-2007 by ACceSS MNRF |
7 |
* * |
* Copyright 2007 by University of Queensland |
8 |
* http://www.access.edu.au * |
* |
9 |
* Primary Business: Queensland, Australia * |
* http://esscc.uq.edu.au |
10 |
* Licensed under the Open Software License version 3.0 * |
* Primary Business: Queensland, Australia |
11 |
* http://www.opensource.org/licenses/osl-3.0.php * |
* Licensed under the Open Software License version 3.0 |
12 |
******************************************************************************** |
* http://www.opensource.org/licenses/osl-3.0.php |
13 |
*/ |
* |
14 |
|
*******************************************************/ |
15 |
|
|
16 |
/**************************************************************/ |
/**************************************************************/ |
17 |
|
|
54 |
#define PASO_RILU 22 |
#define PASO_RILU 22 |
55 |
#define PASO_AMG 23 |
#define PASO_AMG 23 |
56 |
#define PASO_TRILINOS 24 |
#define PASO_TRILINOS 24 |
57 |
|
#define PASO_NONLINEAR_GMRES 25 |
58 |
|
#define PASO_TFQMR 26 |
59 |
|
#define PASO_MINRES 27 |
60 |
|
|
61 |
typedef struct { |
typedef struct { |
62 |
index_t method; |
index_t method; |
63 |
index_t package; |
index_t package; |
64 |
bool_t symmetric; |
bool_t symmetric; |
65 |
double tolerance; |
double tolerance; |
66 |
|
double absolute_tolerance; |
67 |
|
double inner_tolerance; |
68 |
|
bool_t adapt_inner_tolerance; |
69 |
|
|
70 |
bool_t verbose; |
bool_t verbose; |
71 |
bool_t reordering; |
bool_t reordering; |
72 |
double final_residual; |
double final_residual; |
73 |
index_t preconditioner; |
index_t preconditioner; |
74 |
dim_t iter_max; |
dim_t iter_max; |
75 |
|
dim_t inner_iter_max; |
76 |
dim_t iter; |
dim_t iter; |
77 |
double drop_tolerance; |
double drop_tolerance; |
78 |
double drop_storage; |
double drop_storage; |
87 |
void Paso_Options_setDefaults(Paso_Options* in); |
void Paso_Options_setDefaults(Paso_Options* in); |
88 |
index_t Paso_Options_getPackage(index_t solver,index_t package, bool_t symmetry); |
index_t Paso_Options_getPackage(index_t solver,index_t package, bool_t symmetry); |
89 |
index_t Paso_Options_getSolver(index_t solver,index_t package, bool_t symmetry); |
index_t Paso_Options_getSolver(index_t solver,index_t package, bool_t symmetry); |
90 |
|
#define Paso_Options_copy(in,out) memcpy((Paso_Options*)out,(Paso_Options*)in,sizeof(Paso_Options)) |
91 |
|
|
92 |
#endif /* #ifndef INC_PASO_OPTIONS */ |
#endif /* #ifndef INC_PASO_OPTIONS */ |
|
|
|
|
|
|
|
|
|
|
/* |
|
|
* $Log$ |
|
|
* Revision 1.2 2005/09/15 03:44:38 jgs |
|
|
* Merge of development branch dev-02 back to main trunk on 2005-09-15 |
|
|
* |
|
|
* Revision 1.1.2.2 2005/09/07 00:59:08 gross |
|
|
* some inconsistent renaming fixed to make the linking work. |
|
|
* |
|
|
* Revision 1.1.2.1 2005/09/05 06:29:46 gross |
|
|
* These files have been extracted from finley to define a stand alone libray for iterative |
|
|
* linear solvers on the ALTIX. main entry through Paso_solve. this version compiles but |
|
|
* has not been tested yet. |
|
|
* |
|
|
* |
|
|
*/ |
|