Skip to content

Commit 3bd6c7f

Browse files
authored
Merge pull request #101 from amcadmus/devel
lammps support atom parameter "aparam"
2 parents 3a0a048 + 123db3e commit 3bd6c7f

File tree

6 files changed

+232
-99
lines changed

6 files changed

+232
-99
lines changed

source/lib/include/NNPInter.h

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,8 @@ class NNPInter
6464
const vector<int> & atype,
6565
const vector<VALUETYPE> & box,
6666
const int nghost = 0,
67-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
67+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
68+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
6869
void compute (ENERGYTYPE & ener,
6970
vector<VALUETYPE> & force,
7071
vector<VALUETYPE> & virial,
@@ -73,7 +74,8 @@ class NNPInter
7374
const vector<VALUETYPE> & box,
7475
const int nghost,
7576
const LammpsNeighborList & lmp_list,
76-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
77+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
78+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
7779
void compute (ENERGYTYPE & ener,
7880
vector<VALUETYPE> & force,
7981
vector<VALUETYPE> & virial,
@@ -82,7 +84,8 @@ class NNPInter
8284
const vector<VALUETYPE> & coord,
8385
const vector<int> & atype,
8486
const vector<VALUETYPE> & box,
85-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
87+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
88+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
8689
void compute (ENERGYTYPE & ener,
8790
vector<VALUETYPE> & force,
8891
vector<VALUETYPE> & virial,
@@ -93,10 +96,12 @@ class NNPInter
9396
const vector<VALUETYPE> & box,
9497
const int nghost,
9598
const LammpsNeighborList & lmp_list,
96-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
99+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
100+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
97101
VALUETYPE cutoff () const {assert(inited); return rcut;};
98102
int numb_types () const {assert(inited); return ntypes;};
99103
int dim_fparam () const {assert(inited); return dfparam;};
104+
int dim_aparam () const {assert(inited); return daparam;};
100105
private:
101106
Session* session;
102107
int num_intra_nthreads, num_inter_nthreads;
@@ -109,6 +114,10 @@ class NNPInter
109114
VALUETYPE cell_size;
110115
int ntypes;
111116
int dfparam;
117+
int daparam;
118+
void validate_fparam_aparam(const int & nloc,
119+
const vector<VALUETYPE> &fparam,
120+
const vector<VALUETYPE> &aparam)const ;
112121
};
113122

114123
class NNPInterModelDevi
@@ -125,7 +134,8 @@ class NNPInterModelDevi
125134
const vector<VALUETYPE> & coord,
126135
const vector<int> & atype,
127136
const vector<VALUETYPE> & box,
128-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
137+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
138+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
129139
void compute (vector<ENERGYTYPE> & all_ener,
130140
vector<vector<VALUETYPE> > & all_force,
131141
vector<vector<VALUETYPE> > & all_virial,
@@ -134,7 +144,8 @@ class NNPInterModelDevi
134144
const vector<VALUETYPE> & box,
135145
const int nghost,
136146
const LammpsNeighborList & lmp_list,
137-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
147+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
148+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
138149
void compute (vector<ENERGYTYPE> & all_ener,
139150
vector<vector<VALUETYPE> > & all_force,
140151
vector<vector<VALUETYPE> > & all_virial,
@@ -145,10 +156,12 @@ class NNPInterModelDevi
145156
const vector<VALUETYPE> & box,
146157
const int nghost,
147158
const LammpsNeighborList & lmp_list,
148-
const vector<VALUETYPE> fparam = vector<VALUETYPE>());
159+
const vector<VALUETYPE> & fparam = vector<VALUETYPE>(),
160+
const vector<VALUETYPE> & aparam = vector<VALUETYPE>());
149161
VALUETYPE cutoff () const {assert(inited); return rcut;};
150162
int numb_types () const {assert(inited); return ntypes;};
151163
int dim_fparam () const {assert(inited); return dfparam;};
164+
int dim_aparam () const {assert(inited); return daparam;};
152165
#ifndef HIGH_PREC
153166
void compute_avg (ENERGYTYPE & dener,
154167
const vector<ENERGYTYPE > & all_energy);
@@ -176,6 +189,10 @@ class NNPInterModelDevi
176189
VALUETYPE cell_size;
177190
int ntypes;
178191
int dfparam;
192+
int daparam;
193+
void validate_fparam_aparam(const int & nloc,
194+
const vector<VALUETYPE> &fparam,
195+
const vector<VALUETYPE> &aparam)const ;
179196
};
180197

181198

0 commit comments

Comments
 (0)