Commit 51743655 authored by ares20105's avatar ares20105
Browse files

add force modifications. Previous code does not call force modify, thus the...

add force modifications. Previous code does not call force modify, thus the dynamical matrix calculation does not work for other potentials defined via modify
parent 738f155c
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@
#include "improper.h"
#include "kspace.h"
#include "update.h"
#include "modify.h"
#include "neighbor.h"
#include "pair.h"
#include "timer.h"
@@ -385,6 +386,7 @@ void DynamicalMatrix::displace_atom(int local_idx, int direction, int magnitude)
void DynamicalMatrix::update_force()
{
    force_clear();
    int n_post_force = modify->n_post_force;

    if (pair_compute_flag) {
        force->pair->compute(eflag,vflag);
@@ -405,6 +407,11 @@ void DynamicalMatrix::update_force()
        comm->reverse_comm();
        timer->stamp(Timer::COMM);
    }

    // force modifications, 
    if (n_post_force) modify->post_force(vflag);
    timer->stamp(Timer::MODIFY);

    ++ update->nsteps;
}