Unverified Commit 3b76ab56 authored by Axel Kohlmeyer's avatar Axel Kohlmeyer
Browse files

port gravity changes to rigid fixes to USER-OMP package versions

parent a11b886b
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -383,6 +383,19 @@ void FixRigidNHOMP::compute_forces_and_torques()
    torque[ibody][1] = all[ibody][4] + langextra[ibody][4];
    torque[ibody][2] = all[ibody][5] + langextra[ibody][5];
  }

  // add gravity force to COM of each body

  if (id_gravity) {
#if defined(_OPENMP)
#pragma omp parallel for default(none) private(ibody) schedule(static)
#endif
    for (ibody = 0; ibody < nbody; ibody++) {
      fcm[ibody][0] += gvec[0]*masstotal[ibody];
      fcm[ibody][1] += gvec[1]*masstotal[ibody];
      fcm[ibody][2] += gvec[2]*masstotal[ibody];
    }
  }
}

/* ---------------------------------------------------------------------- */
+13 −0
Original line number Diff line number Diff line
@@ -256,6 +256,19 @@ void FixRigidOMP::compute_forces_and_torques()
    torque[ibody][1] = all[ibody][4] + langextra[ibody][4];
    torque[ibody][2] = all[ibody][5] + langextra[ibody][5];
  }

  // add gravity force to COM of each body

  if (id_gravity) {
#if defined(_OPENMP)
#pragma omp parallel for default(none) private(ibody) schedule(static)
#endif
    for (int ibody = 0; ibody < nbody; ibody++) {
      fcm[ibody][0] += gvec[0]*masstotal[ibody];
      fcm[ibody][1] += gvec[1]*masstotal[ibody];
      fcm[ibody][2] += gvec[2]*masstotal[ibody];
    }
  }
}

/* ---------------------------------------------------------------------- */
+15 −0
Original line number Diff line number Diff line
@@ -196,6 +196,21 @@ void FixRigidSmallOMP::compute_forces_and_torques()
      tcm[2] += langextra[ibody][5];
    }
  }

  // add gravity force to COM of each body

  if (id_gravity) {
#if defined(_OPENMP)
#pragma omp parallel for default(none) private(ibody) schedule(static)
#endif
    for (int ibody = 0; ibody < nbody; ibody++) {
      double * _noalias const fcm = body[ibody].fcm;
      const double mass = body[ibody].mass;
      fcm[0] += gvec[0]*mass;
      fcm[1] += gvec[1]*mass;
      fcm[2] += gvec[2]*mass;
    }
  }
}

/* ---------------------------------------------------------------------- */