QMCPACK
NLPPJob.h
Go to the documentation of this file.
1
//////////////////////////////////////////////////////////////////////////////////////
2
// This file is distributed under the University of Illinois/NCSA Open Source License.
3
// See LICENSE file in top directory for details.
4
//
5
// Copyright (c) 2020 QMCPACK developers.
6
//
7
// File developed by: Ye Luo, yeluo@anl.gov, Argonne National Laboratory
8
//
9
// File created by: Ye Luo, yeluo@anl.gov, Argonne National Laboratory
10
//////////////////////////////////////////////////////////////////////////////////////
11
12
13
#ifndef QMCPLUSPLUS_NLPPJob_H
14
#define QMCPLUSPLUS_NLPPJob_H
15
16
#include "
OhmmsPETE/TinyVector.h
"
17
18
namespace
qmcplusplus
19
{
20
/** meta data for NLPP calculation of a pair of ion and electron
21
This is not just meta data.
22
elec pos ion_elec_dist etc.
23
This is an AoS data element.
24
*/
25
template
<
typename
T>
26
struct
NLPPJob
27
{
28
using
RealType
= T;
29
using
PosType
=
TinyVector<RealType, 3>
;
30
const
int
ion_id
;
31
const
int
electron_id
;
32
const
RealType
ion_elec_dist
;
33
const
PosType
ion_elec_displ
;
34
35
/** This allows construction using emplace back
36
* could be a way to pull it off with aggregate initialization
37
* but it is nontrivial
38
*/
39
NLPPJob
(
const
int
ion_id_in,
40
const
int
electron_id_in,
41
const
RealType
ion_elec_dist_in,
42
const
PosType
& ion_elec_displ_in)
43
:
ion_id
(ion_id_in),
44
electron_id
(electron_id_in),
45
ion_elec_dist
(ion_elec_dist_in),
46
ion_elec_displ
(ion_elec_displ_in)
47
{}
48
};
49
}
// namespace qmcplusplus
50
#endif
qmcplusplus::TinyVector
Fixed-size array.
Definition:
OhmmsTinyMeta.h:30
qmcplusplus
helper functions for EinsplineSetBuilder
Definition:
Configuration.h:43
qmcplusplus::NLPPJob::NLPPJob
NLPPJob(const int ion_id_in, const int electron_id_in, const RealType ion_elec_dist_in, const PosType &ion_elec_displ_in)
This allows construction using emplace back could be a way to pull it off with aggregate initializati...
Definition:
NLPPJob.h:39
qmcplusplus::NLPPJob::RealType
T RealType
Definition:
NLPPJob.h:28
TinyVector.h
qmcplusplus::NLPPJob::ion_elec_dist
const RealType ion_elec_dist
Definition:
NLPPJob.h:32
qmcplusplus::NLPPJob::electron_id
const int electron_id
Definition:
NLPPJob.h:31
qmcplusplus::NLPPJob::ion_id
const int ion_id
Definition:
NLPPJob.h:30
qmcplusplus::NLPPJob::ion_elec_displ
const PosType ion_elec_displ
Definition:
NLPPJob.h:33
src
QMCHamiltonians
NLPPJob.h
Generated on Fri Jun 28 2024 10:45:19 for QMCPACK by
1.8.14