/[escript]/trunk/paso/src/Options.h
ViewVC logotype

Contents of /trunk/paso/src/Options.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2353 - (show annotations)
Wed Apr 1 01:49:47 2009 UTC (10 years, 6 months ago) by artak
File MIME type: text/plain
File size: 2476 byte(s)
AMG levels parameter moved to options file. Now one can set how many levels AMG will go in SetDefauls. Default value is 3.
1
2 /*******************************************************
3 *
4 * Copyright (c) 2003-2008 by University of Queensland
5 * Earth Systems Science Computational Center (ESSCC)
6 * http://www.uq.edu.au/esscc
7 *
8 * Primary Business: Queensland, Australia
9 * Licensed under the Open Software License version 3.0
10 * http://www.opensource.org/licenses/osl-3.0.php
11 *
12 *******************************************************/
13
14
15 /**************************************************************/
16
17 /* Paso: SystemMatrix and SystemVector */
18
19 /**************************************************************/
20
21 /* Copyrights by ACcESS Australia 2003,2004,2005 */
22 /* Author: gross@access.edu.au */
23
24 /**************************************************************/
25
26 #ifndef INC_PASO_OPTIONS
27 #define INC_PASO_OPTIONS
28
29 #include "Paso_MPI.h"
30
31 /* solver options */
32
33 #define PASO_DEFAULT 0
34 #define PASO_DIRECT 1
35 #define PASO_CHOLEVSKY 2
36 #define PASO_PCG 3
37 #define PASO_CR 4
38 #define PASO_CGS 5
39 #define PASO_BICGSTAB 6
40 #define PASO_SSOR 7
41 #define PASO_ILU0 8
42 #define PASO_ILUT 9
43 #define PASO_JACOBI 10
44 #define PASO_GMRES 11
45 #define PASO_PRES20 12
46 #define PASO_LUMPING 13
47 #define PASO_SCSL 14
48 #define PASO_MKL 15
49 #define PASO_UMFPACK 16
50 #define PASO_NO_REORDERING 17
51 #define PASO_MINIMUM_FILL_IN 18
52 #define PASO_NESTED_DISSECTION 19
53 #define PASO_ITERATIVE 20
54 #define PASO_PASO 21
55 #define PASO_RILU 22
56 #define PASO_AMG 23
57 #define PASO_TRILINOS 24
58 #define PASO_NONLINEAR_GMRES 25
59 #define PASO_TFQMR 26
60 #define PASO_MINRES 27
61 #define PASO_GS 28
62
63 typedef struct {
64 index_t method;
65 index_t package;
66 bool_t symmetric;
67 double tolerance;
68 double absolute_tolerance;
69 double inner_tolerance;
70 bool_t adapt_inner_tolerance;
71
72 bool_t verbose;
73 bool_t reordering;
74 double final_residual;
75 index_t preconditioner;
76 dim_t iter_max;
77 dim_t inner_iter_max;
78 dim_t iter;
79 double drop_tolerance;
80 double drop_storage;
81 dim_t truncation;
82 dim_t restart;
83 dim_t sweeps;
84 dim_t AMGlevels;
85 double couplingParam;
86
87 } Paso_Options;
88
89 /* interfaces: */
90
91
92 PASO_DLL_API
93 void Paso_Options_setDefaults(Paso_Options* in);
94
95 index_t Paso_Options_getPackage(index_t solver,index_t package, bool_t symmetry, Paso_MPIInfo *mpi_info);
96
97 index_t Paso_Options_getSolver(index_t solver,index_t package, bool_t symmetry, Paso_MPIInfo *mpi_info);
98
99 #define Paso_Options_copy(in,out) memcpy((Paso_Options*)out,(Paso_Options*)in,sizeof(Paso_Options))
100
101 #endif /* #ifndef INC_PASO_OPTIONS */

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.26