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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 6939 - (show annotations)
Mon Jan 20 03:37:18 2020 UTC (5 weeks, 2 days ago) by uqaeller
File MIME type: text/plain
File size: 2215 byte(s)
Updated the copyright header.


1
2 /*****************************************************************************
3 *
4 * Copyright (c) 2003-2020 by The University of Queensland
5 * http://www.uq.edu.au
6 *
7 * Primary Business: Queensland, Australia
8 * Licensed under the Apache License, version 2.0
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Development until 2012 by Earth Systems Science Computational Center (ESSCC)
12 * Development 2012-2013 by School of Earth Sciences
13 * Development from 2014-2017 by Centre for Geoscience Computing (GeoComp)
14 * Development from 2019 by School of Earth and Environmental Sciences
15 **
16 *****************************************************************************/
17
18
19 #ifndef __PASO_SOLVER_H__
20 #define __PASO_SOLVER_H__
21
22 #include "Paso.h"
23 #include "Functions.h"
24 #include "performance.h"
25 #include "SystemMatrix.h"
26
27 namespace paso {
28
29 #define TOLERANCE_FOR_SCALARS (double)(0.)
30
31 void solve_free(SystemMatrix* A);
32
33 SolverResult Solver(SystemMatrix_ptr, double*, double*, Options*, Performance*);
34
35 void Solver_free(SystemMatrix*);
36
37 SolverResult Solver_BiCGStab(SystemMatrix_ptr A, double* B, double* X,
38 dim_t* iter, double* tolerance, Performance* pp);
39
40 SolverResult Solver_PCG(SystemMatrix_ptr A, double* B, double* X, dim_t* iter,
41 double* tolerance, Performance* pp);
42
43 SolverResult Solver_TFQMR(SystemMatrix_ptr A, double* B, double* X, dim_t* iter,
44 double* tolerance, Performance* pp);
45
46 SolverResult Solver_MINRES(SystemMatrix_ptr A, double* B, double* X,
47 dim_t* iter, double* tolerance, Performance* pp);
48
49 SolverResult Solver_GMRES(SystemMatrix_ptr A, double* r, double* x,
50 dim_t* num_iter, double* tolerance,
51 dim_t length_of_recursion, dim_t restart,
52 Performance* pp);
53
54 SolverResult Solver_GMRES2(Function* F, const double* f0, const double* x0,
55 double* x, dim_t* iter, double* tolerance,
56 Performance* pp);
57
58 SolverResult Solver_NewtonGMRES(Function* F, double* x, Options* options,
59 Performance* pp);
60
61 } // namespace paso
62
63 #endif // __PASO_SOLVER_H__
64

Properties

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

  ViewVC Help
Powered by ViewVC 1.1.26