Commit 07afe1c6 authored by Aidan Thompson's avatar Aidan Thompson
Browse files

Added basic element map

parent db43aadf
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -106,6 +106,13 @@ ComputeMLIAP::ComputeMLIAP(LAMMPS *lmp, int narg, char **arg) :
  nmax = 0;
  gamma_max = 0;

  // create a minimal map, placeholder for more general map

  memory->create(map,atom->ntypes+1,"compute_mliap:map");

  for (int i = 1; i <= atom->ntypes; i++)
    map[i] = i-1;

}

/* ---------------------------------------------------------------------- */
+4 −16
Original line number Diff line number Diff line
@@ -92,9 +92,7 @@ void MLIAPDescriptorSNAP::forward(int* map, NeighList* list, double **descriptor
    const double ytmp = x[i][1];
    const double ztmp = x[i][2];
    const int itype = type[i];
    // element map not yet implemented
    // const int ielem = map[itype];
    const int ielem = itype-1;
    const int ielem = map[itype];

    jlist = list->firstneigh[i];
    jnum = list->numneigh[i];
@@ -118,9 +116,7 @@ void MLIAPDescriptorSNAP::forward(int* map, NeighList* list, double **descriptor
      delz = x[j][2] - ztmp;
      rsq = delx*delx + dely*dely + delz*delz;
      int jtype = type[j];
      // element map not yet implemented
      // const int jelem = map[jtype];
      const int jelem = jtype-1;
      const int jelem = map[jtype];

      if (rsq < cutsq[ielem][jelem]) {
        snaptr->rij[ninside][0] = delx;
@@ -291,11 +287,7 @@ void MLIAPDescriptorSNAP::param_backward(int *map, NeighList* list,
    const double ytmp = x[i][1];
    const double ztmp = x[i][2];
    const int itype = type[i];
    int ielem = itype-1;
    // element map not yet implemented
    // if (chemflag)
    // element map not yet implemented
    //   ielem = map[itype];
    const int ielem = map[itype];

    jlist = firstneigh[i];
    jnum = numneigh[i];
@@ -319,17 +311,13 @@ void MLIAPDescriptorSNAP::param_backward(int *map, NeighList* list,
      delz = x[j][2] - ztmp;
      rsq = delx*delx + dely*dely + delz*delz;
      int jtype = type[j];
      int jelem = jtype-1;
      // element map not yet implemented
      // if (chemflag)
      // jelem = map[jtype];
      const int jelem = map[jtype];

      if (rsq < cutsq[ielem][jelem]) {
        snaptr->rij[ninside][0] = delx;
        snaptr->rij[ninside][1] = dely;
        snaptr->rij[ninside][2] = delz;
        snaptr->inside[ninside] = j;
      // element map not yet implemented
	snaptr->wj[ninside] = wjelem[jelem];
	snaptr->rcutij[ninside] = sqrt(cutsq[ielem][jelem]);
        snaptr->element[ninside] = jelem; // element index for chem snap
+1 −3
Original line number Diff line number Diff line
@@ -117,9 +117,7 @@ void MLIAPModelLinear::param_gradient(int *map, NeighList* list,

    i = list->ilist[ii];
    const int itype = type[i];
    // element map not yet implemented
    // const int ielem = map[itype];
    const int ielem = itype-1;
    const int ielem = map[itype];
    const int elemoffset = nparams*ielem;

    int l = elemoffset+1;
+1 −3
Original line number Diff line number Diff line
@@ -143,9 +143,7 @@ void MLIAPModelQuadratic::param_gradient(int *map, NeighList* list,

    i = list->ilist[ii];
    const int itype = type[i];
    // element map not yet implemented
    // const int ielem = map[itype];
    const int ielem = itype-1;
    const int ielem = map[itype];
    const int elemoffset = nparams*ielem;

    // linear contributions