DFT-EFE
 
Loading...
Searching...
No Matches
Defaults.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (c) 2021. *
3 * The Regents of the University of Michigan and DFT-EFE developers. *
4 * *
5 * This file is part of the DFT-EFE code. *
6 * *
7 * DFT-EFE is free software: you can redistribute it and/or modify *
8 * it under the terms of the Lesser GNU General Public License as *
9 * published by the Free Software Foundation, either version 3 of *
10 * the License, or (at your option) any later version. *
11 * *
12 * DFT-EFE is distributed in the hope that it will be useful, but *
13 * WITHOUT ANY WARRANTY; without even the implied warranty *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
15 * See the Lesser GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU Lesser General Public *
18 * License at the top level of DFT-EFE distribution. If not, see *
19 * <https://www.gnu.org/licenses/>. *
20 ******************************************************************************/
21
22/*
23 * @author Avirup Sircar
24 */
25
26#ifndef dftefeBasisDefaults_h
27#define dftefeBasisDefaults_h
28
29#include <utils/TypeConfig.h>
31#include <string>
33
34namespace dftefe
35{
36 namespace basis
37 {
38 template <utils::MemorySpace memorySpace>
40 {
41 public:
42 //
43 // The CG Preconditioner Type chosen for L2 Projection
44 //
46
47 //
48 // The number of batched gemms done: 1 for HOST, 50 for DEVICE
49 //
51
52 //
53 // Maximum iteration for CG
54 //
55 static const size_type MAX_ITER;
56
57 //
58 // Absolute tolerance of the residual |AX-b|
59 //
60 static const double ABSOLUTE_TOL;
61
62 //
63 // Relative tolerance of the residual |AX-b|/|b|
64 //
65 static const double RELATIVE_TOL;
66
67 //
68 // Maximum residual tolerance for divergence
69 //
70 static const double DIVERGENCE_TOL;
71
72 }; // end of class L2ProjectionDefaults
73
75 {
76 public:
77 //
78 // The maximum refinement steps used for adaptive mesh generation
79 // algorithm.
80 //
82
83 }; // end of class GenerateMeshDefaults
84
86 {
87 public:
88 //
89 // The maximum refinement steps used for adaptive mesh generation
90 // algorithm.
91 //
93 static const double ENRICHMENT_ORTHO_COEFF_TOL;
94
95 }; // end of class ECIDefaults
96
97 template <utils::MemorySpace memorySpace>
99 {
100 public:
101 //
102 // The number of batched gemms done: 1 for HOST, 50 for DEVICE
103 //
105
106 }; // end of class BasisDataStorageDefaults
107
109 {
110 public:
113 }; // end of class MaxSizeDefaults
114 } // end of namespace basis
115} // end of namespace dftefe
116#endif // dftefebasisDefaults_h
static const size_type CELL_BATCH_SIZE
Definition: Defaults.h:104
Definition: Defaults.h:86
static const size_type ENRICHMENT_BATCH_SIZE
Definition: Defaults.h:92
static const double ENRICHMENT_ORTHO_COEFF_TOL
Definition: Defaults.h:93
Definition: Defaults.h:75
static const size_type MAX_REFINEMENT_STEPS
Definition: Defaults.h:81
Definition: Defaults.h:40
static const size_type CELL_BATCH_SIZE
Definition: Defaults.h:50
static const size_type MAX_ITER
Definition: Defaults.h:55
static const double ABSOLUTE_TOL
Definition: Defaults.h:60
static const double RELATIVE_TOL
Definition: Defaults.h:65
static const double DIVERGENCE_TOL
Definition: Defaults.h:70
static const linearAlgebra::PreconditionerType PC_TYPE
Setting all the L2ProjectionDefaults.
Definition: Defaults.h:45
Definition: Defaults.h:109
static const global_size_type GLOBAL_SIZE_TYPE_MAX
Definition: Defaults.h:112
static const size_type SIZE_TYPE_MAX
Definition: Defaults.h:111
PreconditionerType
Definition: LinearAlgebraTypes.h:41
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9
std::uint64_t global_size_type
Definition: TypeConfig.h:10