enable and apply clang-format
This commit is contained in:
@ -1,4 +1,3 @@
|
||||
// clang-format off
|
||||
/* ----------------------------------------------------------------------
|
||||
LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
|
||||
https://www.lammps.org/, Sandia National Laboratories
|
||||
@ -37,8 +36,7 @@ using namespace LAMMPS_NS;
|
||||
|
||||
/* ---------------------------------------------------------------------- */
|
||||
|
||||
ComputeBasalAtom::ComputeBasalAtom(LAMMPS *lmp, int narg, char **arg) :
|
||||
Compute(lmp, narg, arg)
|
||||
ComputeBasalAtom::ComputeBasalAtom(LAMMPS *lmp, int narg, char **arg) : Compute(lmp, narg, arg)
|
||||
{
|
||||
if (narg != 3) error->all(FLERR, "Illegal compute basal/atom command");
|
||||
|
||||
@ -182,15 +180,12 @@ void ComputeBasalAtom::compute_peratom()
|
||||
// n0 near neighbors with: distsq<1.45*r0_sq
|
||||
// n1 near neighbors with: distsq<1.55*r0_sq
|
||||
|
||||
double n0_dist_sq = 1.45*r0_sq,
|
||||
n1_dist_sq = 1.55*r0_sq;
|
||||
double n0_dist_sq = 1.45 * r0_sq, n1_dist_sq = 1.55 * r0_sq;
|
||||
int n0 = 0, n1 = 0;
|
||||
for (j = 0; j < n; j++) {
|
||||
if (distsq[j] < n1_dist_sq) {
|
||||
nearest_n1[n1++] = nearest[j];
|
||||
if (distsq[j] < n0_dist_sq) {
|
||||
nearest_n0[n0++] = nearest[j];
|
||||
}
|
||||
if (distsq[j] < n0_dist_sq) nearest_n0[n0++] = nearest[j];
|
||||
}
|
||||
}
|
||||
|
||||
@ -198,8 +193,8 @@ void ComputeBasalAtom::compute_peratom()
|
||||
double bond_angle;
|
||||
double norm_j, norm_k;
|
||||
chi[0] = chi[1] = chi[2] = chi[3] = chi[4] = chi[5] = chi[6] = chi[7] = 0;
|
||||
double x_ij, y_ij, z_ij, x_ik, y_ik, z_ik, xmean5, ymean5, zmean5,
|
||||
xmean6, ymean6, zmean6, xmean7, ymean7, zmean7;
|
||||
double x_ij, y_ij, z_ij, x_ik, y_ik, z_ik, xmean5, ymean5, zmean5, xmean6, ymean6, zmean6,
|
||||
xmean7, ymean7, zmean7;
|
||||
auto x3 = new double[n0];
|
||||
auto y3 = new double[n0];
|
||||
auto z3 = new double[n0];
|
||||
@ -208,7 +203,7 @@ void ComputeBasalAtom::compute_peratom()
|
||||
y_ij = x[i][1] - x[nearest_n0[j]][1];
|
||||
z_ij = x[i][2] - x[nearest_n0[j]][2];
|
||||
norm_j = sqrt(x_ij * x_ij + y_ij * y_ij + z_ij * z_ij);
|
||||
if (norm_j <= 0.) {continue;}
|
||||
if (norm_j <= 0.0) continue;
|
||||
for (k = j + 1; k < n0; k++) {
|
||||
x_ik = x[i][0] - x[nearest_n0[k]][0];
|
||||
y_ik = x[i][1] - x[nearest_n0[k]][1];
|
||||
@ -231,8 +226,7 @@ void ComputeBasalAtom::compute_peratom()
|
||||
if (chi[0] == 2) {
|
||||
k2[0] = 0;
|
||||
j1[0] = 1;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
k2[0] = 0;
|
||||
k2[1] = 0;
|
||||
k2[2] = 1;
|
||||
@ -284,17 +278,26 @@ void ComputeBasalAtom::compute_peratom()
|
||||
var5 = var6 = var7 = 0.0;
|
||||
//find standard deviations
|
||||
for (j = 0; j < count; j++) {
|
||||
var5 = var5 + x5[j]*x5[j]-2*x5[j]*xmean5+xmean5*xmean5+y5[j]*y5[j]-2*y5[j]*ymean5+ymean5*ymean5+z5[j]*z5[j]-2*z5[j]*zmean5+zmean5*zmean5;
|
||||
var6 = var6 + x6[j]*x6[j]-2*x6[j]*xmean6+xmean6*xmean6+y6[j]*y6[j]-2*y6[j]*ymean6+ymean6*ymean6+z6[j]*z6[j]-2*z6[j]*zmean6+zmean6*zmean6;
|
||||
var7 = var7 + x7[j]*x7[j]-2*x7[j]*xmean7+xmean7*xmean7+y7[j]*y7[j]-2*y7[j]*ymean7+ymean7*ymean7+z7[j]*z7[j]-2*z7[j]*zmean7+zmean7*zmean7;
|
||||
var5 = var5 + x5[j] * x5[j] - 2 * x5[j] * xmean5 + xmean5 * xmean5 + y5[j] * y5[j] -
|
||||
2 * y5[j] * ymean5 + ymean5 * ymean5 + z5[j] * z5[j] - 2 * z5[j] * zmean5 +
|
||||
zmean5 * zmean5;
|
||||
var6 = var6 + x6[j] * x6[j] - 2 * x6[j] * xmean6 + xmean6 * xmean6 + y6[j] * y6[j] -
|
||||
2 * y6[j] * ymean6 + ymean6 * ymean6 + z6[j] * z6[j] - 2 * z6[j] * zmean6 +
|
||||
zmean6 * zmean6;
|
||||
var7 = var7 + x7[j] * x7[j] - 2 * x7[j] * xmean7 + xmean7 * xmean7 + y7[j] * y7[j] -
|
||||
2 * y7[j] * ymean7 + ymean7 * ymean7 + z7[j] * z7[j] - 2 * z7[j] * zmean7 +
|
||||
zmean7 * zmean7;
|
||||
}
|
||||
//select sign combination with minimum standard deviation
|
||||
if (var5 < var6) {
|
||||
if (var5 < var7) { value = 0;}
|
||||
else {value = 2;}
|
||||
}
|
||||
else if (var6 < var7) {value = 1;}
|
||||
else {value = 2;}
|
||||
if (var5 < var7)
|
||||
value = 0;
|
||||
else
|
||||
value = 2;
|
||||
} else if (var6 < var7) {
|
||||
value = 1;
|
||||
} else
|
||||
value = 2;
|
||||
//BPV is average of cross products of all neighbor vectors which are part of 180 degree angles
|
||||
BPV[i][0] = 0;
|
||||
BPV[i][1] = 0;
|
||||
@ -304,13 +307,11 @@ void ComputeBasalAtom::compute_peratom()
|
||||
BPV[i][0] = BPV[i][0] + x5[k];
|
||||
BPV[i][1] = BPV[i][1] + y5[k];
|
||||
BPV[i][2] = BPV[i][2] + z5[k];
|
||||
}
|
||||
else if (value == 1) {
|
||||
} else if (value == 1) {
|
||||
BPV[i][0] = BPV[i][0] + x6[k];
|
||||
BPV[i][1] = BPV[i][1] + y6[k];
|
||||
BPV[i][2] = BPV[i][2] + z6[k];
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
BPV[i][0] = BPV[i][0] + x7[k];
|
||||
BPV[i][1] = BPV[i][1] + y7[k];
|
||||
BPV[i][2] = BPV[i][2] + z7[k];
|
||||
@ -382,9 +383,15 @@ void ComputeBasalAtom::compute_peratom()
|
||||
var5 = var6 = var7 = 0;
|
||||
//get standard deviations
|
||||
for (m = 0; m < 3; m++) {
|
||||
var5 = var5 + x5[m]*x5[m]-2*x5[m]*xmean5+xmean5*xmean5+y5[m]*y5[m]-2*y5[m]*ymean5+ymean5*ymean5+z5[m]*z5[m]-2*z5[m]*zmean5+zmean5*zmean5;
|
||||
var6 = var6 + x6[m]*x6[m]-2*x6[m]*xmean6+xmean6*xmean6+y6[m]*y6[m]-2*y6[m]*ymean6+ymean6*ymean6+z6[m]*z6[m]-2*z6[m]*zmean6+zmean6*zmean6;
|
||||
var7 = var7 + x7[m]*x7[m]-2*x7[m]*xmean7+xmean7*xmean7+y7[m]*y7[m]-2*y7[m]*ymean7+ymean7*ymean7+z7[m]*z7[m]-2*z7[m]*zmean7+zmean7*zmean7;
|
||||
var5 = var5 + x5[m] * x5[m] - 2 * x5[m] * xmean5 + xmean5 * xmean5 + y5[m] * y5[m] -
|
||||
2 * y5[m] * ymean5 + ymean5 * ymean5 + z5[m] * z5[m] - 2 * z5[m] * zmean5 +
|
||||
zmean5 * zmean5;
|
||||
var6 = var6 + x6[m] * x6[m] - 2 * x6[m] * xmean6 + xmean6 * xmean6 + y6[m] * y6[m] -
|
||||
2 * y6[m] * ymean6 + ymean6 * ymean6 + z6[m] * z6[m] - 2 * z6[m] * zmean6 +
|
||||
zmean6 * zmean6;
|
||||
var7 = var7 + x7[m] * x7[m] - 2 * x7[m] * xmean7 + xmean7 * xmean7 + y7[m] * y7[m] -
|
||||
2 * y7[m] * ymean7 + ymean7 * ymean7 + z7[m] * z7[m] - 2 * z7[m] * zmean7 +
|
||||
zmean7 * zmean7;
|
||||
}
|
||||
//choose minimum standard deviation
|
||||
if (var5 < S0) {
|
||||
@ -409,21 +416,22 @@ void ComputeBasalAtom::compute_peratom()
|
||||
}
|
||||
}
|
||||
//if there are less than two ~180 degree bond angles, the algorithm returns null
|
||||
} else BPV[i][0] = BPV[i][1] = BPV[i][2] = 0.0;
|
||||
} else
|
||||
BPV[i][0] = BPV[i][1] = BPV[i][2] = 0.0;
|
||||
|
||||
delete[] x3;
|
||||
delete[] y3;
|
||||
delete[] z3;
|
||||
|
||||
//normalize BPV:
|
||||
double Mag = sqrt(BPV[i][0]*BPV[i][0] +
|
||||
BPV[i][1]*BPV[i][1] + BPV[i][2]*BPV[i][2]);
|
||||
double Mag = sqrt(BPV[i][0] * BPV[i][0] + BPV[i][1] * BPV[i][1] + BPV[i][2] * BPV[i][2]);
|
||||
if (Mag > 0) {
|
||||
BPV[i][0] = BPV[i][0] / Mag;
|
||||
BPV[i][1] = BPV[i][1] / Mag;
|
||||
BPV[i][2] = BPV[i][2] / Mag;
|
||||
}
|
||||
} else BPV[i][0] = BPV[i][1] = BPV[i][2] = 0.0;
|
||||
} else
|
||||
BPV[i][0] = BPV[i][1] = BPV[i][2] = 0.0;
|
||||
}
|
||||
}
|
||||
/* ----------------------------------------------------------------------
|
||||
@ -454,8 +462,10 @@ void ComputeBasalAtom::select(int k, int n, double *arr)
|
||||
j = ir;
|
||||
a = arr[l + 1];
|
||||
while (true) {
|
||||
do i++; while (arr[i] < a);
|
||||
do j--; while (arr[j] > a);
|
||||
do i++;
|
||||
while (arr[i] < a);
|
||||
do j--;
|
||||
while (arr[j] > a);
|
||||
if (j < i) break;
|
||||
std::swap(arr[i], arr[j]);
|
||||
}
|
||||
@ -506,8 +516,10 @@ void ComputeBasalAtom::select2(int k, int n, double *arr, int *iarr)
|
||||
a = arr[l + 1];
|
||||
ia = iarr[l + 1];
|
||||
while (true) {
|
||||
do i++; while (arr[i] < a);
|
||||
do j--; while (arr[j] > a);
|
||||
do i++;
|
||||
while (arr[i] < a);
|
||||
do j--;
|
||||
while (arr[j] > a);
|
||||
if (j < i) break;
|
||||
std::swap(arr[i], arr[j]);
|
||||
std::swap(iarr[i], iarr[j]);
|
||||
|
||||
Reference in New Issue
Block a user