DFT-FE
1.1.0-pre
Density Functional Theory With Finite-Elements
Loading...
Searching...
No Matches
workspace
include
linearSolverDevice.h
Go to the documentation of this file.
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (c) 2017-2025 The Regents of the University of Michigan and DFT-FE
4
// authors.
5
//
6
// This file is part of the DFT-FE code.
7
//
8
// The DFT-FE code is free software; you can use it, redistribute
9
// it, and/or modify it under the terms of the GNU Lesser General
10
// Public License as published by the Free Software Foundation; either
11
// version 2.1 of the License, or (at your option) any later version.
12
// The full text of the license can be found in the file LICENSE at
13
// the top level of the DFT-FE distribution.
14
//
15
// ---------------------------------------------------------------------
16
//
17
18
19
#if defined(DFTFE_WITH_DEVICE)
20
# ifndef linearSolverDevice_H_
21
# define linearSolverDevice_H_
22
23
# include <
linearSolverProblemDevice.h
>
24
# include <
DeviceTypeConfig.h
>
25
namespace
dftfe
26
{
27
/**
28
* @brief Abstract linear solver base class.
29
*
30
* @author Sambit Das, Gourab Panigrahi
31
*/
32
class
linearSolverDevice
33
{
34
public
:
35
/// Constructor
36
linearSolverDevice();
37
38
/**
39
* @brief Solve linear system, A*x=Rhs
40
*
41
* @param problem linearSolverProblemDevice object (functor) to compute Rhs and A*x, and preconditioning
42
* @param relTolerance Tolerance (relative) required for convergence.
43
* @param maxNumberIterations Maximum number of iterations.
44
* @param debugLevel Debug output level:
45
* 0 - no debug output
46
* 1 - limited debug output
47
* 2 - all debug output.
48
*/
49
virtual
void
50
solve(linearSolverProblemDevice &problem,
51
const
double
absTolerance,
52
const
unsigned
int
maxNumberIterations,
53
const
int
debugLevel = 0,
54
bool
distributeFlag =
true
) = 0;
55
56
private
:
57
};
58
59
}
// namespace dftfe
60
# endif
// linearSolverDevice_H_
61
#endif
DeviceTypeConfig.h
linearSolverProblemDevice.h
dftfe
Definition
pseudoPotentialToDftfeConverter.cc:34
Generated by
1.13.2