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

Diff of /trunk/paso/src/Preconditioner.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3792 by caltinay, Thu Oct 27 03:41:51 2011 UTC revision 3793 by gross, Wed Feb 1 07:39:43 2012 UTC
# Line 19  Line 19 
19  #include "performance.h"  #include "performance.h"
20  #include "BOOMERAMG.h"  #include "BOOMERAMG.h"
21    
22    #define PRECONDITIONER_NO_ERROR 0
23    #define PRECONDITIONER_MAXITER_REACHED 1
24    #define PRECONDITIONER_INPUT_ERROR -1
25    #define PRECONDITIONER_MEMORY_ERROR -9
26    #define PRECONDITIONER_BREAKDOWN -10
27    #define PRECONDITIONER_NEGATIVE_NORM_ERROR -11
28    #define PRECONDITIONER_DIVERGENCE -12
29    
30    
31  #define PASO_AMG_UNDECIDED -1  #define PASO_AMG_UNDECIDED -1
32  #define PASO_AMG_IN_F 0  #define PASO_AMG_IN_F 0
# Line 40  typedef struct Paso_Preconditioner_Smoot Line 48  typedef struct Paso_Preconditioner_Smoot
48  void Paso_Preconditioner_Smoother_free(Paso_Preconditioner_Smoother * in);  void Paso_Preconditioner_Smoother_free(Paso_Preconditioner_Smoother * in);
49  void Paso_Preconditioner_LocalSmoother_free(Paso_Preconditioner_LocalSmoother * in);  void Paso_Preconditioner_LocalSmoother_free(Paso_Preconditioner_LocalSmoother * in);
50    
51    
52  Paso_Preconditioner_Smoother* Paso_Preconditioner_Smoother_alloc(Paso_SystemMatrix * A_p, const bool_t jacobi, const bool_t is_local, const bool_t verbose);  Paso_Preconditioner_Smoother* Paso_Preconditioner_Smoother_alloc(Paso_SystemMatrix * A_p, const bool_t jacobi, const bool_t is_local, const bool_t verbose);
53  Paso_Preconditioner_LocalSmoother* Paso_Preconditioner_LocalSmoother_alloc(Paso_SparseMatrix * A_p,const bool_t jacobi, const bool_t verbose);  Paso_Preconditioner_LocalSmoother* Paso_Preconditioner_LocalSmoother_alloc(Paso_SparseMatrix * A_p,const bool_t jacobi, const bool_t verbose);
54    
55  void Paso_Preconditioner_Smoother_solve(Paso_SystemMatrix* A, Paso_Preconditioner_Smoother * gs, double * x, const double * b, const dim_t sweeps, const bool_t x_is_initial);  void Paso_Preconditioner_Smoother_solve(Paso_SystemMatrix* A, Paso_Preconditioner_Smoother * gs, double * x, const double * b, const dim_t sweeps, const bool_t x_is_initial);
56  void Paso_Preconditioner_LocalSmoother_solve(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x, const double * b, const dim_t sweeps, const bool_t x_is_initial);  void Paso_Preconditioner_LocalSmoother_solve(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x, const double * b, const dim_t sweeps, const bool_t x_is_initial);
57    err_t Paso_Preconditioner_Smoother_solve_byTolerance(Paso_SystemMatrix* A, Paso_Preconditioner_Smoother * gs, double * x, const double * b, const double tol, dim_t *sweeps, const bool_t x_is_initial);
58    
59  void Paso_Preconditioner_LocalSmoother_Sweep(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);  void Paso_Preconditioner_LocalSmoother_Sweep(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);
60  void Paso_Preconditioner_LocalSmoother_Sweep_sequential(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);  void Paso_Preconditioner_LocalSmoother_Sweep_sequential(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);
# Line 52  void Paso_Preconditioner_LocalSmoother_S Line 62  void Paso_Preconditioner_LocalSmoother_S
62  void Paso_Preconditioner_LocalSmoother_Sweep_colored(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);  void Paso_Preconditioner_LocalSmoother_Sweep_colored(Paso_SparseMatrix* A, Paso_Preconditioner_LocalSmoother * gs, double * x);
63    
64    
65    
66  /* Local preconditioner */  /* Local preconditioner */
67  struct Paso_Preconditioner_AMG {  struct Paso_Preconditioner_AMG {
68     dim_t level;     dim_t level;

Legend:
Removed from v.3792  
changed lines
  Added in v.3793

  ViewVC Help
Powered by ViewVC 1.1.26