DFT-EFE
 
Loading...
Searching...
No Matches
ElectrostaticLocalFE.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 dftefeElectrostaticLocalFE_h
27#define dftefeElectrostaticLocalFE_h
28
43#include "Defaults.h"
44#include <ksdft/KSAttributes.h>
46
47namespace dftefe
48{
49 namespace ksdft
50 {
51 template <typename ValueTypeBasisData,
52 typename ValueTypeBasisCoeff,
53 typename ValueTypeWaveFnBasisData,
54 utils::MemorySpace memorySpace,
55 size_type dim>
57 : public ElectrostaticFE<ValueTypeBasisData,
58 ValueTypeBasisCoeff,
59 ValueTypeWaveFnBasisData,
60 memorySpace,
61 dim>
62 {
63 public:
64 using ValueType = typename ElectrostaticFE<ValueTypeBasisData,
65 ValueTypeBasisCoeff,
66 ValueTypeWaveFnBasisData,
67 memorySpace,
68 dim>::ValueType;
69 using Storage = typename ElectrostaticFE<ValueTypeBasisData,
70 ValueTypeBasisCoeff,
71 ValueTypeWaveFnBasisData,
72 memorySpace,
73 dim>::Storage;
74 using RealType = typename ElectrostaticFE<ValueTypeBasisData,
75 ValueTypeBasisCoeff,
76 ValueTypeWaveFnBasisData,
77 memorySpace,
78 dim>::RealType;
79
80 public:
84 // used if analytical vself canellation route taken
86 const std::vector<utils::Point> &atomCoordinates,
87 const std::vector<double> & atomCharges,
88 const double & smearedChargeRadius,
90 & electronChargeDensity,
91 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
92 ValueTypeBasisData,
94 dim>> feBMTotalCharge,
95 std::shared_ptr<
97 feBDTotalChargeStiffnessMatrix,
98 std::shared_ptr<
100 feBDNuclearChargeRhs,
101 std::shared_ptr<
103 feBDElectronicChargeRhs,
104 std::shared_ptr<
105 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
106 memorySpace>> feBDHamiltonian,
107 const utils::ScalarSpatialFunctionReal &externalPotentialFunction,
109 linAlgOpContext,
110 const size_type maxCellBlock,
111 bool useDealiiMatrixFreePoissonSolve = true,
113
114 // used if numerical poisson solve vself canellation route taken
116 const std::vector<utils::Point> &atomCoordinates,
117 const std::vector<double> & atomCharges,
118 const double & smearedChargeRadius,
120 & electronChargeDensity,
121 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
122 ValueTypeBasisData,
124 dim>> feBMTotalCharge,
125 std::shared_ptr<
127 feBDTotalChargeStiffnessMatrix,
128 std::shared_ptr<
130 feBDNuclearChargeRhs,
131 std::shared_ptr<
133 feBDElectronicChargeRhs,
134 std::shared_ptr<
136 feBDNuclChargeStiffnessMatrixNumSol,
137 std::shared_ptr<
139 feBDNuclChargeRhsNumSol,
140 std::shared_ptr<
141 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
142 memorySpace>> feBDHamiltonian,
143 const utils::ScalarSpatialFunctionReal &externalPotentialFunction,
145 linAlgOpContext,
146 const size_type maxCellBlock,
147 bool useDealiiMatrixFreePoissonSolve = true,
149
150 // used if delta rho approach is taken with phi total from 1D KS solve
151 // with analytical vself energy cancellation
153 const std::vector<utils::Point> &atomCoordinates,
154 const std::vector<std::string> & atomSymbols,
155 const std::vector<double> & atomCharges,
156 const double & smearedChargeRadius,
158 &atomicTotalElectroPotentialFunction,
160 &atomicElectronicChargeDensityFunction,
161 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
162 ValueTypeBasisData,
164 dim>>
165 feBMTotalCharge, // will be same as bc of totalCharge -
166 // atomicTotalCharge
167 std::shared_ptr<
169 feBDTotalChargeStiffnessMatrix,
170 std::shared_ptr<
172 feBDNuclearChargeRhs,
173 std::shared_ptr<
175 feBDElectronicChargeRhs,
176 std::shared_ptr<
177 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
178 memorySpace>> feBDHamiltonian,
179 const utils::ScalarSpatialFunctionReal &externalPotentialFunction,
181 linAlgOpContext,
182 const size_type maxCellBlock,
183 const std::unordered_map<std::string,
184 std::shared_ptr<atoms::AtomTCIASpline>>
185 fieldToTCIASplineMap = {},
186 const bool useDealiiMatrixFreePoissonSolve = true,
187 const bool calculateIntegralDeltaRho = false,
189
190
192
193 // used if analytical vself canellation route taken
194 void
196 const std::vector<utils::Point> & atomCoordinates,
197 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
198 ValueTypeBasisData,
200 dim>> feBMTotalCharge,
201 std::shared_ptr<
203 feBDTotalChargeStiffnessMatrix,
204 std::shared_ptr<
206 feBDNuclearChargeRhs,
207 std::shared_ptr<
209 feBDElectronicChargeRhs,
210 std::shared_ptr<
211 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
212 memorySpace>> feBDHamiltonian,
213 const utils::ScalarSpatialFunctionReal &externalPotentialFunction);
214
215 // used if numerical poisson solve vself canellation route taken
216 void
218 const std::vector<utils::Point> & atomCoordinates,
219 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
220 ValueTypeBasisData,
222 dim>> feBMTotalCharge,
223 std::shared_ptr<
225 feBDTotalChargeStiffnessMatrix,
226 std::shared_ptr<
228 feBDNuclearChargeRhs,
229 std::shared_ptr<
231 feBDElectronicChargeRhs,
232 std::shared_ptr<
234 feBDNuclChargeStiffnessMatrixNumSol,
235 std::shared_ptr<
237 feBDNuclChargeRhsNumSol,
238 std::shared_ptr<
239 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
240 memorySpace>> feBDHamiltonian,
241 const utils::ScalarSpatialFunctionReal &externalPotentialFunction);
242
243 // used if delta rho approach is taken with phi total from 1D KS solve
244 // with analytical vself energy cancellation
245 void
247 const std::vector<utils::Point> &atomCoordinates,
249 &atomicTotalElectroPotentialFunction,
251 &atomicElectronicChargeDensityFunction,
252 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
253 ValueTypeBasisData,
255 dim>> feBMTotalCharge,
256 std::shared_ptr<
258 feBDTotalChargeStiffnessMatrix,
259 std::shared_ptr<
261 feBDNuclearChargeRhs,
262 std::shared_ptr<
264 feBDElectronicChargeRhs,
265 std::shared_ptr<
266 const basis::FEBasisDataStorage<ValueTypeWaveFnBasisData,
267 memorySpace>> feBDHamiltonian,
268 const utils::ScalarSpatialFunctionReal &externalPotentialFunction);
269
270 void
273 &electronChargeDensity);
274
275 void
276 getLocal(Storage &cellWiseStorage) const override;
277
278 void
279 evalEnergy();
280
282 getEnergy() const override;
283
284 std::vector<quadrature::QuadratureValuesContainer<ValueType, memorySpace>>
285 getFunctionalDerivative() const override;
286
287 void
291 bool updateGhostX,
292 bool updateGhostY) const override;
293
294 bool
295 hasLocalComponent() const override;
296
297 bool
298 hasNonLocalComponent() const override;
299
300 private:
301 /* Solves the nuclear potential problem, gets \sum \integral b_sm*V_sm ,
302 * gets \sum \integral V_sm * rho, \sum V_smAtRhoQuadPts
303 */
304 void
306 std::shared_ptr<
308 feBDNuclearChargeStiffnessMatrix,
309 std::shared_ptr<
311 feBDNuclearChargeRhs);
312
313 void
315
316 void
318
325 std::vector<utils::Point> d_atomCoordinates;
327 const std::vector<double> d_atomCharges;
331
332 // Causing memory errors: Change these to smart pointers
337 quadrature::QuadratureValuesContainer<ValueTypeBasisCoeff,
341 d_atomicElectronChargeDensity /*,d_atomicElectronChargeDensityNucQuad*/;
346
357
360
363 std::vector<linearAlgebra::MultiVector<ValueType, memorySpaceHost> *>
365
366 std::vector<std::shared_ptr<basis::FEBasisManager<ValueTypeBasisCoeff,
367 ValueTypeBasisData,
369 dim>>>
371
372 std::shared_ptr<const basis::FEBasisOperations<ValueTypeBasisCoeff,
373 ValueTypeBasisData,
375 dim>>
377 std::shared_ptr<const basis::FEBasisOperations<ValueTypeBasisCoeff,
378 ValueTypeBasisData,
380 dim>>
382 std::shared_ptr<const basis::FEBasisOperations<ValueTypeBasisCoeff,
383 ValueTypeWaveFnBasisData,
384 memorySpace,
385 dim>>
387
388 std::shared_ptr<const basis::FEBasisManager<ValueTypeBasisCoeff,
389 ValueTypeBasisData,
391 dim>>
393 std::shared_ptr<
396 std::shared_ptr<
399 std::shared_ptr<
402 std::shared_ptr<
405 std::shared_ptr<linearAlgebra::LinAlgOpContext<memorySpace>>
407 std::shared_ptr<linearAlgebra::LinAlgOpContext<memorySpaceHost>>
409 std::vector<RealType> d_nuclearChargeQuad;
411 std::shared_ptr<
413 ValueTypeBasisCoeff,
415 dim>>
417 std::shared_ptr<
419 ValueTypeBasisCoeff,
420 memorySpace,
421 dim>>
424
426
427 std::map<
428 std::string,
429 std::shared_ptr<
432
435
436 std::vector<std::string> d_atomSymbolVec;
437 const std::unordered_map<std::string,
438 std::shared_ptr<atoms::AtomTCIASpline>>
443
446 std::vector<size_type> d_numCellDofs;
449
450 }; // end of class ElectrostaticLocalFE
451 } // end of namespace ksdft
452} // end of namespace dftefe
454#endif // dftefeElectrostaticLocalFE_h
Definition: AtomSuperpositionFunction.h:55
An abstract class to store and access data for a given basis, such as the basis function values on a ...
Definition: FEBasisDataStorage.h:54
An abstract class to encapsulate the partitioning of a finite element basis across multiple processor...
Definition: FEBasisManager.h:44
Definition: FEBasisOperations.h:64
A derived class of linearAlgebra::LinearSolverFunction to encapsulate the Poisson partial differentia...
Definition: PoissonLinearSolverFunctionFE.h:77
A derived class of linearAlgebra::LinearSolverFunction to encapsulate the Poisson partial differentia...
Definition: PoissonSolverDealiiMatrixFreeFE.h:83
A derived class of linearAlgebra::OperatorContext to encapsulate the action of a discrete operator on...
Definition: ElectrostaticFE.h:66
Definition: ElectrostaticLocalFE.h:62
RealType d_intRhoAtPhiAt
Definition: ElectrostaticLocalFE.h:433
void getLocal(Storage &cellWiseStorage) const override
Definition: ElectrostaticLocalFE.t.cpp:2108
typename ElectrostaticFE< ValueTypeBasisData, ValueTypeBasisCoeff, ValueTypeWaveFnBasisData, memorySpace, dim >::ValueType ValueType
Definition: ElectrostaticLocalFE.h:68
RealType d_energy
Definition: ElectrostaticLocalFE.h:329
std::vector< quadrature::QuadratureValuesContainer< ValueType, memorySpace > > getFunctionalDerivative() const override
Definition: ElectrostaticLocalFE.t.cpp:2789
std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > d_feBDNuclChargeRhsNumSol
Definition: ElectrostaticLocalFE.h:404
~ElectrostaticLocalFE()
Definition: ElectrostaticLocalFE.t.cpp:448
const size_type d_numAtoms
Definition: ElectrostaticLocalFE.h:326
void deleteStorages()
Definition: ElectrostaticLocalFE.t.cpp:463
std::vector< utils::Point > d_atomCoordinates
Definition: ElectrostaticLocalFE.h:325
quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > * d_scratchDensRhoQuad
Definition: ElectrostaticLocalFE.h:350
std::vector< size_type > d_numCellDofs
Definition: ElectrostaticLocalFE.h:446
double d_integralAtRho
Definition: ElectrostaticLocalFE.h:442
RealType d_nuclearSelfEnergy
Definition: ElectrostaticLocalFE.h:330
quadrature::QuadratureValuesContainer< ValueType, memorySpaceHost > * d_scratchPotNuclearQuad
Definition: ElectrostaticLocalFE.h:356
void evalEnergy()
Definition: ElectrostaticLocalFE.t.cpp:2590
std::shared_ptr< electrostatics::PoissonSolverDealiiMatrixFreeFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpace, dim > > d_poissonSolverDealiiMatFree
Definition: ElectrostaticLocalFE.h:422
void nuclearPotentialSolve(std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > feBDNuclearChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > feBDNuclearChargeRhs)
Definition: ElectrostaticLocalFE.t.cpp:2181
quadrature::QuadratureValuesContainer< ValueType, memorySpaceHost > * d_scratchPotHamQuad
Definition: ElectrostaticLocalFE.h:352
quadrature::QuadratureValuesContainer< ValueType, memorySpaceHost > * d_correctionPotRhoQuad
Definition: ElectrostaticLocalFE.h:345
utils::ConditionalOStream d_rootCout
Definition: ElectrostaticLocalFE.h:425
std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > d_feBDNuclearChargeRhs
Definition: ElectrostaticLocalFE.h:401
bool hasNonLocalComponent() const override
Definition: ElectrostaticLocalFE.t.cpp:2865
void reinitBasis(const std::vector< utils::Point > &atomCoordinates, std::shared_ptr< const basis::FEBasisManager< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpaceHost, dim > > feBMTotalCharge, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > feBDTotalChargeStiffnessMatrix, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > feBDNuclearChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > feBDElectronicChargeRhs, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeWaveFnBasisData, memorySpace > > feBDHamiltonian, const utils::ScalarSpatialFunctionReal &externalPotentialFunction)
Definition: ElectrostaticLocalFE.t.cpp:878
const std::unordered_map< std::string, std::shared_ptr< atoms::AtomTCIASpline > > d_fieldToTCIASplineMap
Definition: ElectrostaticLocalFE.h:439
bool d_isTCIEnabled
Definition: ElectrostaticLocalFE.h:440
std::vector< RealType > d_nuclearChargeQuad
Definition: ElectrostaticLocalFE.h:409
std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > d_feBDTotalChargeStiffnessMatrix
Definition: ElectrostaticLocalFE.h:395
std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpaceHost > > d_linAlgOpContextHost
Definition: ElectrostaticLocalFE.h:408
quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > * d_scratchDensNuclearQuad
Definition: ElectrostaticLocalFE.h:348
std::vector< linearAlgebra::MultiVector< ValueType, memorySpaceHost > * > d_nuclearChargesPotential
Definition: ElectrostaticLocalFE.h:364
void reinitField(const quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > &electronChargeDensity)
Definition: ElectrostaticLocalFE.t.cpp:1849
std::vector< std::string > d_atomSymbolVec
Definition: ElectrostaticLocalFE.h:436
const bool d_isCalculateIntegralDeltaRho
Definition: ElectrostaticLocalFE.h:320
void computeNuclearSelfEnergy()
Definition: ElectrostaticLocalFE.t.cpp:2379
const std::vector< double > d_atomCharges
Definition: ElectrostaticLocalFE.h:327
const size_type d_numComponents
Definition: ElectrostaticLocalFE.h:324
const size_type d_maxCellBlock
Definition: ElectrostaticLocalFE.h:323
std::map< std::string, std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > > d_feBasisDataStorageRhsMap
Definition: ElectrostaticLocalFE.h:431
std::shared_ptr< linearAlgebra::LinAlgOpContext< memorySpace > > d_linAlgOpContext
Definition: ElectrostaticLocalFE.h:406
quadrature::QuadratureValuesContainer< ValueTypeBasisCoeff, memorySpaceHost > * d_atomicTotalElecPotElectronicQuad
Definition: ElectrostaticLocalFE.h:339
quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > * d_nuclearChargesDensity
Definition: ElectrostaticLocalFE.h:334
std::shared_ptr< const basis::FEBasisOperations< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpaceHost, dim > > d_feBasisOpElectronic
Definition: ElectrostaticLocalFE.h:381
typename ElectrostaticFE< ValueTypeBasisData, ValueTypeBasisCoeff, ValueTypeWaveFnBasisData, memorySpace, dim >::RealType RealType
Definition: ElectrostaticLocalFE.h:78
bool hasLocalComponent() const override
Definition: ElectrostaticLocalFE.t.cpp:2850
const quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > * d_electronChargeDensity
Definition: ElectrostaticLocalFE.h:336
RealType d_totNuclearChargeQuad
Definition: ElectrostaticLocalFE.h:423
std::shared_ptr< const basis::FEBasisOperations< ValueTypeBasisCoeff, ValueTypeWaveFnBasisData, memorySpace, dim > > d_feBasisOpHamiltonian
Definition: ElectrostaticLocalFE.h:386
RealType d_integralPhiAtxbSmear
Definition: ElectrostaticLocalFE.h:433
bool d_isNumericalVSelfSolve
Definition: ElectrostaticLocalFE.h:321
double d_integralDiffVZZCorrVSmearxSumBZZCorrBSmear
Definition: ElectrostaticLocalFE.h:441
typename ElectrostaticFE< ValueTypeBasisData, ValueTypeBasisCoeff, ValueTypeWaveFnBasisData, memorySpace, dim >::Storage Storage
Definition: ElectrostaticLocalFE.h:73
std::vector< std::shared_ptr< basis::FEBasisManager< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpaceHost, dim > > > d_feBMNuclearCharge
Definition: ElectrostaticLocalFE.h:370
Storage d_elecCellWiseTemp
Definition: ElectrostaticLocalFE.h:448
RealType d_correctionEnergyAtomic
Definition: ElectrostaticLocalFE.h:434
quadrature::QuadratureValuesContainer< ValueType, memorySpaceHost > * d_scratchPotRhoQuad
Definition: ElectrostaticLocalFE.h:354
bool d_useDealiiMatrixFreePoissonSolve
Definition: ElectrostaticLocalFE.h:319
std::shared_ptr< electrostatics::PoissonLinearSolverFunctionFE< ValueTypeBasisData, ValueTypeBasisCoeff, memorySpaceHost, dim > > d_linearSolverFunction
Definition: ElectrostaticLocalFE.h:416
size_type d_basisOverlapSize
Definition: ElectrostaticLocalFE.h:447
quadrature::QuadratureValuesContainer< ValueType, memorySpaceHost > * d_correctionPotHamQuad
Definition: ElectrostaticLocalFE.h:343
std::shared_ptr< const basis::FEBasisDataStorage< ValueTypeBasisData, memorySpaceHost > > d_feBDElectronicChargeRhs
Definition: ElectrostaticLocalFE.h:398
size_type d_cellTimesNumVecPoisson
Definition: ElectrostaticLocalFE.h:410
void applyNonLocal(linearAlgebra::MultiVector< ValueTypeWaveFnBasisData, memorySpace > &X, linearAlgebra::MultiVector< ValueTypeWaveFnBasisData, memorySpace > &Y, bool updateGhostX, bool updateGhostY) const override
Definition: ElectrostaticLocalFE.t.cpp:2829
linearAlgebra::MultiVector< ValueTypeBasisCoeff, memorySpaceHost > * d_totalChargePotential
Definition: ElectrostaticLocalFE.h:362
const double d_smearedChargeRadius
Definition: ElectrostaticLocalFE.h:328
size_type d_S
Definition: ElectrostaticLocalFE.h:444
std::shared_ptr< const basis::FEBasisOperations< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpaceHost, dim > > d_feBasisOpNuclear
Definition: ElectrostaticLocalFE.h:376
quadrature::QuadratureValuesContainer< ValueType, memorySpace > * d_potentialHamQuadMemspace
Definition: ElectrostaticLocalFE.h:359
SpinStorageLayout d_layout
Definition: ElectrostaticLocalFE.h:445
RealType getEnergy() const override
Definition: ElectrostaticLocalFE.t.cpp:2768
std::shared_ptr< const basis::FEBasisManager< ValueTypeBasisCoeff, ValueTypeBasisData, memorySpaceHost, dim > > d_feBMTotalCharge
Definition: ElectrostaticLocalFE.h:392
quadrature::QuadratureValuesContainer< RealType, memorySpaceHost > d_atomicElectronChargeDensity
Definition: ElectrostaticLocalFE.h:341
bool d_isDeltaRhoSolve
Definition: ElectrostaticLocalFE.h:322
Definition: LinAlgOpContext.h:52
An class template to encapsulate a MultiVector. A MultiVector is a collection of vectors belonging t...
Definition: MultiVector.h:134
Definition: QuadratureValuesContainer.h:39
Provides an interface to print based on whether a certain condition is met or not....
Definition: ConditionalOStream.h:47
Abstract base for scalar functions of a spatial point.
Definition: ScalarSpatialFunction.h:23
SpinMode
Definition: KSAttributes.h:55
SpinStorageLayout
Definition: HamiltonianSpinBlockCopyKernels.h:40
MemorySpace
Definition: MemorySpaceType.h:37
dealii includes
Definition: AtomFieldDataSpherical.cpp:31
std::uint64_t size_type
Definition: TypeConfig.h:9
static constexpr utils::MemorySpace memorySpaceHost
Definition: Defaults.h:213
Definition: TypeConfig.h:17