@@ -32,7 +32,7 @@ namespace dftd4 {
32
32
* Calculate all distance pairs and store in matrix.
33
33
*
34
34
* @param mol Molecule object.
35
- * @param realIdx List for real atoms excluding ghost/non atoms
35
+ * @param realIdx List for real atoms excluding ghost/non atoms.
36
36
* @param dist Distance matrix (inout).
37
37
* @return Exit status.
38
38
*/
@@ -42,11 +42,23 @@ extern int calc_distances(
42
42
TMatrix<double > &dist
43
43
);
44
44
45
+ /* *
46
+ * Initialize real indices to all atoms in the molecule.
47
+ *
48
+ * @param nat Number of atoms in the molecule.
49
+ * @param realIdx Vector to store the real indices.
50
+ * @return void
51
+ */
52
+ void initializeRealIdx (int nat, TVector<int > &realIdx);
53
+
54
+ // /////////////////////////////////////////////////////////////////////////////
55
+ // /////////////////////////////////////////////////////////////////////////////
56
+
45
57
/* *
46
58
* Wrapper for error function coordination number.
47
59
*
48
60
* @param mol Molecule object.
49
- * @param realIdx List for real atoms excluding ghost/non atoms
61
+ * @param realIdx List for real atoms excluding ghost/non atoms.
50
62
* @param dist Distance matrix.
51
63
* @param cn Vector of coordination numbers.
52
64
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
@@ -64,11 +76,31 @@ extern int get_ncoord_erf(
64
76
bool lgrad = false
65
77
);
66
78
79
+ /* *
80
+ * Wrapper for error function coordination number.
81
+ *
82
+ * @param mol Molecule object.
83
+ * @param dist Distance matrix.
84
+ * @param cn Vector of coordination numbers.
85
+ * @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
86
+ * @param dcndr Derivative of coordination number.
87
+ * @param lgrad Flag for gradient computation.
88
+ * @return Exit status.
89
+ */
90
+ extern int get_ncoord_erf (
91
+ const TMolecule &mol,
92
+ const TMatrix<double > &dist,
93
+ double cutoff,
94
+ TVector<double > &cn,
95
+ TMatrix<double > &dcndr,
96
+ bool lgrad = false
97
+ );
98
+
67
99
/* *
68
100
* Calculate error function coordination number.
69
101
*
70
102
* @param mol Molecule object.
71
- * @param realIdx List for real atoms excluding ghost/non atoms
103
+ * @param realIdx List for real atoms excluding ghost/non atoms.
72
104
* @param dist Distance matrix.
73
105
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
74
106
* @param cn Vector of coordination numbers.
@@ -87,7 +119,7 @@ extern int ncoord_erf(
87
119
* w.r.t. nuclear coordinates.
88
120
*
89
121
* @param mol Molecule object.
90
- * @param realIdx List for real atoms excluding ghost/non atoms
122
+ * @param realIdx List for real atoms excluding ghost/non atoms.
91
123
* @param dist Distance matrix.
92
124
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
93
125
* @param cn Vector of coordination numbers.
@@ -103,11 +135,14 @@ extern int dncoord_erf(
103
135
TMatrix<double > &dcndr
104
136
);
105
137
138
+ // /////////////////////////////////////////////////////////////////////////////
139
+ // /////////////////////////////////////////////////////////////////////////////
140
+
106
141
/* *
107
142
* Wrapper for error function coordination number for DFT-D4.
108
143
*
109
144
* @param mol Molecule object.
110
- * @param realIdx List for real atoms excluding ghost/non atoms
145
+ * @param realIdx List for real atoms excluding ghost/non atoms.
111
146
* @param dist Distance matrix.
112
147
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
113
148
* @param cn Vector of coordination numbers.
@@ -123,11 +158,29 @@ extern int get_ncoord_d4(
123
158
bool lgrad = false
124
159
);
125
160
161
+ /* *
162
+ * Wrapper for error function coordination number for DFT-D4.
163
+ *
164
+ * @param mol Molecule object.
165
+ * @param dist Distance matrix.
166
+ * @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
167
+ * @param cn Vector of coordination numbers.
168
+ * @return Exit status.
169
+ */
170
+ extern int get_ncoord_d4 (
171
+ const TMolecule &mol,
172
+ const TMatrix<double > &dist,
173
+ double cutoff,
174
+ TVector<double > &cn,
175
+ TMatrix<double > &dcndr,
176
+ bool lgrad = false
177
+ );
178
+
126
179
/* *
127
180
* Calculate covalent coordination number for DFT-D4.
128
181
*
129
182
* @param mol Molecule object.
130
- * @param realIdx List for real atoms excluding ghost/non atoms
183
+ * @param realIdx List for real atoms excluding ghost/non atoms.
131
184
* @param dist Distance matrix.
132
185
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
133
186
* @param cn Vector of coordination numbers.
@@ -146,7 +199,7 @@ extern int ncoord_d4(
146
199
* w.r.t. nuclear coordinates
147
200
*
148
201
* @param mol Molecule object.
149
- * @param realIdx List for real atoms excluding ghost/non atoms
202
+ * @param realIdx List for real atoms excluding ghost/non atoms.
150
203
* @param dist Distance matrix.
151
204
* @param cutoff Real-space cutoff (default: @see {dftd_cutoff.h}).
152
205
* @param cn Vector of coordination numbers.
@@ -162,6 +215,9 @@ extern int dncoord_d4(
162
215
TMatrix<double > &dcndr
163
216
);
164
217
218
+ // /////////////////////////////////////////////////////////////////////////////
219
+ // /////////////////////////////////////////////////////////////////////////////
220
+
165
221
/* *
166
222
* Error function counting function for coordination number contributions.
167
223
*
0 commit comments