Commit e47090d9 authored by Donatas Surblys's avatar Donatas Surblys
Browse files

add suport for centroid virial to hybrid angle/dihedral/improper styles

parent 3e49aab5
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -128,6 +128,14 @@ void AngleHybrid::compute(int eflag, int vflag)
        for (j = 0; j < 6; j++)
          vatom[i][j] += vatom_substyle[i][j];
    }
    if (cvflag_atom) {
      n = atom->nlocal;
      if (force->newton_bond) n += atom->nghost;
      double **cvatom_substyle = styles[m]->cvatom;
      for (i = 0; i < n; i++)
        for (j = 0; j < 9; j++)
          cvatom[i][j] += cvatom_substyle[i][j];
    }
  }

  // restore ptrs to original anglelist
@@ -370,6 +378,7 @@ double AngleHybrid::memory_usage()
{
  double bytes = maxeatom * sizeof(double);
  bytes += maxvatom*6 * sizeof(double);
  bytes += maxcvatom*9 * sizeof(double);
  for (int m = 0; m < nstyles; m++) bytes += maxangle[m]*4 * sizeof(int);
  for (int m = 0; m < nstyles; m++)
    if (styles[m]) bytes += styles[m]->memory_usage();
+9 −0
Original line number Diff line number Diff line
@@ -130,6 +130,14 @@ void DihedralHybrid::compute(int eflag, int vflag)
        for (j = 0; j < 6; j++)
          vatom[i][j] += vatom_substyle[i][j];
    }
    if (cvflag_atom) {
      n = atom->nlocal;
      if (force->newton_bond) n += atom->nghost;
      double **cvatom_substyle = styles[m]->cvatom;
      for (i = 0; i < n; i++)
        for (j = 0; j < 9; j++)
          cvatom[i][j] += cvatom_substyle[i][j];
    }
  }

  // restore ptrs to original dihedrallist
@@ -348,6 +356,7 @@ double DihedralHybrid::memory_usage()
{
  double bytes = maxeatom * sizeof(double);
  bytes += maxvatom*6 * sizeof(double);
  bytes += maxcvatom*9 * sizeof(double);
  for (int m = 0; m < nstyles; m++) bytes += maxdihedral[m]*5 * sizeof(int);
  for (int m = 0; m < nstyles; m++)
    if (styles[m]) bytes += styles[m]->memory_usage();
+9 −0
Original line number Diff line number Diff line
@@ -129,6 +129,14 @@ void ImproperHybrid::compute(int eflag, int vflag)
        for (j = 0; j < 6; j++)
          vatom[i][j] += vatom_substyle[i][j];
    }
    if (cvflag_atom) {
      n = atom->nlocal;
      if (force->newton_bond) n += atom->nghost;
      double **cvatom_substyle = styles[m]->cvatom;
      for (i = 0; i < n; i++)
        for (j = 0; j < 9; j++)
          cvatom[i][j] += cvatom_substyle[i][j];
    }
  }

  // restore ptrs to original improperlist
@@ -344,6 +352,7 @@ double ImproperHybrid::memory_usage()
{
  double bytes = maxeatom * sizeof(double);
  bytes += maxvatom*6 * sizeof(double);
  bytes += maxcvatom*9 * sizeof(double);
  for (int m = 0; m < nstyles; m++) bytes += maximproper[m]*5 * sizeof(int);
  for (int m = 0; m < nstyles; m++)
    if (styles[m]) bytes += styles[m]->memory_usage();