diff --git a/src/.gitignore b/src/.gitignore
index 26a19bf85..853b0c5a1 100644
--- a/src/.gitignore
+++ b/src/.gitignore
@@ -1,821 +1,912 @@
 Makefile.package*
 lammps-icms-win.exe
 lammps-icms-win.zip
 lammps-icms-mpich-win.exe
 lammps-icms-mpich-win.zip
 lmp_*
 
 colvarproxy_lammps.cpp
 colvarproxy_lammps.h
 fix_colvars.cpp
 fix_colvars.h
 dump_molfile.cpp
 dump_molfile.h
 molfile_interface.cpp
 molfile_interface.h
 molfile_plugin.h
 vmdplugin.h
 
 angle_cg_cmm.cpp
 angle_cg_cmm.h
 angle_charmm.cpp
 angle_charmm.h
 angle_charmm_omp.cpp
 angle_charmm_omp.h
 angle_class2.cpp
 angle_class2.h
 angle_class2_omp.cpp
 angle_class2_omp.h
 angle_cosine.cpp
 angle_cosine.h
 angle_cosine_omp.cpp
 angle_cosine_omp.h
 angle_cosine_delta.cpp
 angle_cosine_delta.h
 angle_cosine_delta_omp.cpp
 angle_cosine_delta_omp.h
 angle_cosine_periodic.cpp
 angle_cosine_periodic.h
 angle_cosine_periodic_omp.cpp
 angle_cosine_periodic_omp.h
 angle_cosine_shift.cpp
 angle_cosine_shift.h
 angle_cosine_shift_omp.cpp
 angle_cosine_shift_omp.h
 angle_cosine_shift_exp.cpp
 angle_cosine_shift_exp.h
 angle_cosine_shift_exp_omp.cpp
 angle_cosine_shift_exp_omp.h
 angle_cosine_squared.cpp
 angle_cosine_squared.h
 angle_cosine_squared_omp.cpp
 angle_cosine_squared_omp.h
 angle_dipole.cpp
 angle_dipole.h
 angle_dipole_omp.cpp
 angle_dipole_omp.h
+angle_fourier.cpp
+angle_fourier.h
+angle_fourier_omp.cpp
+angle_fourier_omp.h
+angle_fourier_simple.cpp
+angle_fourier_simple.h
+angle_fourier_simple_omp.cpp
+angle_fourier_simple_omp.h
 angle_harmonic.cpp
 angle_harmonic.h
 angle_harmonic_omp.cpp
 angle_harmonic_omp.h
 angle_hybrid.cpp
 angle_hybrid.h
+angle_quartic.cpp
+angle_quartic.h
+angle_quartic_omp.cpp
+angle_quartic_omp.h
 angle_sdk.cpp
 angle_sdk.h
 angle_sdk_omp.cpp
 angle_sdk_omp.h
 angle_table.cpp
 angle_table.h
 angle_table_omp.cpp
 angle_table_omp.h
 atom_vec_angle.cpp
 atom_vec_angle.h
 atom_vec_bond.cpp
 atom_vec_bond.h
 atom_vec_colloid.cpp
 atom_vec_colloid.h
 atom_vec_dipole.cpp
 atom_vec_dipole.h
 atom_vec_electron.cpp
 atom_vec_electron.h
 atom_vec_ellipsoid.cpp
 atom_vec_ellipsoid.h
 atom_vec_full.cpp
 atom_vec_full.h
 atom_vec_granular.cpp
 atom_vec_granular.h
 atom_vec_molecular.cpp
 atom_vec_molecular.h
 atom_vec_peri.cpp
 atom_vec_peri.h
 bond_class2.cpp
 bond_class2.h
 bond_class2_omp.cpp
 bond_class2_omp.h
 bond_fene.cpp
 bond_fene.h
 bond_fene_omp.cpp
 bond_fene_omp.h
 bond_fene_expand.cpp
 bond_fene_expand.h
 bond_fene_expand_omp.cpp
 bond_fene_expand_omp.h
 bond_harmonic.cpp
 bond_harmonic.h
 bond_harmonic_omp.cpp
 bond_harmonic_omp.h
 bond_harmonic_shift.cpp
 bond_harmonic_shift.h
 bond_harmonic_shift_omp.cpp
 bond_harmonic_shift_omp.h
 bond_harmonic_shift_cut.cpp
 bond_harmonic_shift_cut.h
 bond_harmonic_shift_cut_omp.cpp
 bond_harmonic_shift_cut_omp.h
 bond_morse.cpp
 bond_morse.h
 bond_morse_omp.cpp
 bond_morse_omp.h
 bond_nonlinear.cpp
 bond_nonlinear.h
 bond_nonlinear_omp.cpp
 bond_nonlinear_omp.h
 bond_quartic.cpp
 bond_quartic.h
 bond_quartic_omp.cpp
 bond_quartic_omp.h
 bond_table.cpp
 bond_table.h
 bond_table_omp.cpp
 bond_table_omp.h
 cg_cmm_parms.cpp
 cg_cmm_parms.h
+commgrid.cpp
+commgrid.h
 compute_ackland_atom.cpp
 compute_ackland_atom.h
+compute_cna_atom2.cpp
+compute_cna_atom2.h
 compute_damage_atom.cpp
 compute_damage_atom.h
 compute_erotate_asphere.cpp
 compute_erotate_asphere.h
 compute_event_displace.cpp
 compute_event_displace.h
 compute_ke_atom_eff.cpp
 compute_ke_atom_eff.h
 compute_ke_eff.cpp
 compute_ke_eff.h
 compute_temp_asphere.cpp
 compute_temp_asphere.h
 compute_temp_deform_eff.cpp
 compute_temp_deform_eff.h
 compute_temp_eff.cpp
 compute_temp_eff.h
 compute_temp_region_eff.cpp
 compute_temp_region_eff.h
 compute_temp_rotate.cpp
 compute_temp_rotate.h
 dihedral_omp.cpp
 dihedral_omp.h
 dihedral_charmm.cpp
 dihedral_charmm.h
 dihedral_charmm_omp.cpp
 dihedral_charmm_omp.h
 dihedral_class2.cpp
 dihedral_class2.h
 dihedral_class2_omp.cpp
 dihedral_class2_omp.h
 dihedral_cosine_shift_exp.cpp
 dihedral_cosine_shift_exp.h
 dihedral_cosine_shift_exp_omp.cpp
 dihedral_cosine_shift_exp_omp.h
+dihedral_fourier.cpp
+dihedral_fourier.h
+dihedral_fourier_omp.cpp
+dihedral_fourier_omp.h
 dihedral_harmonic.cpp
 dihedral_harmonic.h
 dihedral_harmonic_omp.cpp
 dihedral_harmonic_omp.h
 dihedral_helix.cpp
 dihedral_helix.h
 dihedral_helix_omp.cpp
 dihedral_helix_omp.h
 dihedral_hybrid.cpp
 dihedral_hybrid.h
 dihedral_multi_harmonic.cpp
 dihedral_multi_harmonic.h
 dihedral_multi_harmonic_omp.cpp
 dihedral_multi_harmonic_omp.h
+dihedral_nharmonic.cpp
+dihedral_nharmonic.h
+dihedral_nharmonic_omp.cpp
+dihedral_nharmonic_omp.h
 dihedral_opls.cpp
 dihedral_opls.h
 dihedral_opls_omp.cpp
 dihedral_opls_omp.h
+dihedral_quadratic.cpp
+dihedral_quadratic.h
+dihedral_quadratic_omp.cpp
+dihedral_quadratic_omp.h
 dihedral_table.cpp
 dihedral_table.h
 dihedral_table_omp.cpp
 dihedral_table_omp.h
 dump_xtc.cpp
 dump_xtc.h
 ewald.cpp
 ewald.h
 ewald_cg.cpp
 ewald_cg.h
+ewald_disp.cpp
+ewald_disp.h
 ewald_omp.cpp
 ewald_omp.h
 ewald_n.cpp
 ewald_n.h
 fft3d.cpp
 fft3d.h
 fft3d_wrap.cpp
 fft3d_wrap.h
 fix_addtorque.cpp
 fix_addtorque.h
 fix_append_atoms.cpp
 fix_append_atoms.h
 fix_atc.cpp
 fix_atc.h
 fix_bond_break.cpp
 fix_bond_break.h
 fix_bond_create.cpp
 fix_bond_create.h
 fix_bond_swap.cpp
 fix_bond_swap.h
 fix_event.cpp
 fix_event.h
 fix_event_prd.cpp
 fix_event_prd.h
 fix_event_tad.cpp
 fix_event_tad.h
 fix_freeze.cpp
 fix_freeze.h
 fix_gcmc.cpp
 fix_gcmc.h
 fix_gpu.cpp
 fix_gpu.h
 fix_gravity_omp.cpp
 fix_gravity_omp.h
 fix_imd.cpp
 fix_imd.h
 fix_langevin_eff.cpp
 fix_langevin_eff.h
 fix_msst.cpp
 fix_msst.h
 fix_neb.cpp
 fix_neb.h
 neigh_derive_omp.cpp
 neigh_full_omp.cpp
 neigh_gran_omp.cpp
 neigh_half_bin_omp.cpp
 neigh_half_multi_omp.cpp
 neigh_half_nsq_omp.cpp
 neigh_respa_omp.cpp
 neighbor_omp.h
 fix_nh_asphere.cpp
 fix_nh_asphere.h
 fix_nph_asphere.cpp
 fix_nph_asphere.h
 fix_npt_asphere.cpp
 fix_npt_asphere.h
 fix_nve_asphere.cpp
 fix_nve_asphere.h
 fix_nve_asphere_noforce.cpp
 fix_nve_asphere_noforce.h
 fix_nvt_asphere.cpp
 fix_nvt_asphere.h
 fix_nh_eff.cpp
 fix_nh_eff.h
 fix_nph_eff.cpp
 fix_nph_eff.h
 fix_nphug.cpp
 fix_nphug.h
 fix_npt_eff.cpp
 fix_npt_eff.h
 fix_nve_eff.cpp
 fix_nve_eff.h
 fix_nve_line.cpp
 fix_nve_line.h
 fix_nvt_eff.cpp
 fix_nvt_eff.h
 fix_nvt_sllod_eff.cpp
 fix_nvt_sllod_eff.h
 fix_nve_sphere_omp.cpp
 fix_nve_sphere_omp.h
 fix_nve_tri.cpp
 fix_nve_tri.h
 fix_omp.cpp
 fix_omp.h
 fix_peri_neigh.cpp
 fix_peri_neigh.h
 fix_peri_neigh_omp.cpp
 fix_peri_neigh_omp.h
 fix_poems.cpp
 fix_poems.h
 fix_pour.cpp
 fix_pour.h
 fix_pour_omp.cpp
 fix_pour_omp.h
 fix_qeq_comb.cpp
 fix_qeq_comb.h
 fix_qeq_comb_omp.cpp
 fix_qeq_comb_omp.h
 fix_qeq_reax.cpp
 fix_qeq_reax.h
 fix_reax_bonds.cpp
 fix_reax_bonds.h
 fix_reax_c.cpp
 fix_reax_c.h
 fix_reaxc_bonds.cpp
 fix_reaxc_bonds.h
+fix_rigid.cpp
+fix_rigid.h
+fix_rigid_nh.cpp
+fix_rigid_nh.h
+fix_rigid_nph.cpp
+fix_rigid_nph.h
+fix_rigid_npt.cpp
+fix_rigid_npt.h
+fix_rigid_nve.cpp
+fix_rigid_nve.h
+fix_rigid_nvt.cpp
+fix_rigid_nvt.h
 fix_shear_history_omp.cpp
 fix_shear_history_omp.h
 fix_smd.cpp
 fix_smd.h
 fix_spring_pull.cpp
 fix_spring_pull.h
 fix_srd.cpp
 fix_srd.h
 fix_temp_rescale_eff.cpp
 fix_temp_rescale_eff.h
 fix_wall_colloid.cpp
 fix_wall_colloid.h
 fix_wall_gran.cpp
 fix_wall_gran.h
 fix_wall_gran_omp.cpp
 fix_wall_gran_omp.h
 fix_wall_piston.cpp
 fix_wall_piston.h
 fix_wall_srd.cpp
 fix_wall_srd.h
 gpu_extra.h
 improper_class2.cpp
 improper_class2.h
 improper_class2_omp.cpp
 improper_class2_omp.h
 improper_cossq.cpp
 improper_cossq.h
 improper_cossq_omp.cpp
 improper_cossq_omp.h
 improper_cvff.cpp
 improper_cvff.h
 improper_cvff_omp.cpp
 improper_cvff_omp.h
+improper_fourier.cpp
+improper_fourier.h
+improper_fourier_omp.cpp
+improper_fourier_omp.h
 improper_harmonic.cpp
 improper_harmonic.h
 improper_harmonic_omp.cpp
 improper_harmonic_omp.h
 improper_hybrid.cpp
 improper_hybrid.h
 improper_ring.cpp
 improper_ring.h
 improper_ring_omp.cpp
 improper_ring_omp.h
 improper_umbrella.cpp
 improper_umbrella.h
 improper_umbrella_omp.cpp
 improper_umbrella_omp.h
 kissfft.h
 lj_sdk_common.h
 math_complex.h
 math_vector.h
+msm.cpp
+msm.h
+msm_omp.cpp
+msm_omp.h
 neb.cpp
 neb.h
 pair_adp.cpp
 pair_adp.h
 pair_adp_omp.cpp
 pair_adp_omp.h
 pair_airebo.cpp
 pair_airebo.h
 pair_airebo_omp.cpp
 pair_airebo_omp.h
 pair_beck_omp.cpp
 pair_beck_omp.h
 pair_born_omp.cpp
 pair_born_omp.h
 pair_born_coul_long.cpp
 pair_born_coul_long.h
 pair_born_coul_long_omp.cpp
 pair_born_coul_long_omp.h
+pair_born_coul_msm.cpp
+pair_born_coul_msm.h
+pair_born_coul_msm_omp.cpp
+pair_born_coul_msm_omp.h
 pair_born_coul_wolf_omp.cpp
 pair_born_coul_wolf_omp.h
 pair_brownian.cpp
 pair_brownian.h
 pair_brownian_omp.cpp
 pair_brownian_omp.h
 pair_brownian_poly.cpp
 pair_brownian_poly.h
 pair_brownian_poly_omp.cpp
 pair_brownian_poly_omp.h
 pair_buck_gpu.cpp
 pair_buck_gpu.h
 pair_buck_omp.cpp
 pair_buck_omp.h
 pair_buck_coul_cut_gpu.cpp
 pair_buck_coul_cut_gpu.h
 pair_buck_coul_cut_omp.cpp
 pair_buck_coul_cut_omp.h
 pair_buck_coul_long.cpp
 pair_buck_coul_long.h
 pair_buck_coul_long_gpu.cpp
 pair_buck_coul_long_gpu.h
 pair_buck_coul_long_omp.cpp
 pair_buck_coul_long_omp.h
+pair_buck_coul_msm.cpp
+pair_buck_coul_msm.h
+pair_buck_coul_msm_omp.cpp
+pair_buck_coul_msm_omp.h
 pair_buck_coul.cpp
 pair_buck_coul.h
 pair_buck_coul_omp.cpp
 pair_buck_coul_omp.h
+pair_buck_long_coul_long.cpp
+pair_buck_long_coul_long.h
+pair_buck_long_coul_long_omp.cpp
+pair_buck_long_coul_long_omp.h
 pair_cdeam.cpp
 pair_cdeam.h
 pair_cdeam_omp.cpp
 pair_cdeam_omp.h
 pair_cg_cmm.cpp
 pair_cg_cmm.h
 pair_cg_cmm_omp.cpp
 pair_cg_cmm_omp.h
 pair_cg_cmm_coul_cut.cpp
 pair_cg_cmm_coul_cut.h
 pair_cg_cmm_coul_long.cpp
 pair_cg_cmm_coul_long.h
 pair_cmm_common.cpp
 pair_cmm_common.h
 pair_cg_cmm_gpu.cpp
 pair_cg_cmm_gpu.h
 pair_cg_cmm_coul_long_gpu.cpp
 pair_cg_cmm_coul_long_gpu.h
 pair_cg_cmm_coul_msm.cpp
 pair_cg_cmm_coul_msm.h
 pair_cg_cmm_coul_msm_gpu.cpp
 pair_cg_cmm_coul_msm_gpu.h
 pair_comb.cpp
 pair_comb.h
 pair_comb_omp.cpp
 pair_comb_omp.h
 pair_colloid.cpp
 pair_colloid.h
 pair_colloid_omp.cpp
 pair_colloid_omp.h
 pair_coul_cut_omp.cpp
 pair_coul_cut_omp.h
 pair_coul_debye_omp.cpp
 pair_coul_debye_omp.h
 pair_coul_diel.cpp
 pair_coul_diel.h
 pair_coul_diel_omp.cpp
 pair_coul_diel_omp.h
 pair_coul_long.cpp
 pair_coul_long.h
 pair_coul_long_gpu.cpp
 pair_coul_long_gpu.h
 pair_coul_long_omp.cpp
 pair_coul_long_omp.h
+pair_coul_msm.cpp
+pair_coul_msm.h
+pair_coul_msm_omp.cpp
+pair_coul_msm_omp.h
 pair_coul_wolf_omp.cpp
 pair_coul_wolf_omp.h
 pair_dipole_cut.cpp
 pair_dipole_cut.h
 pair_dipole_cut_omp.cpp
 pair_dipole_cut_omp.h
 pair_dipole_sf.cpp
 pair_dipole_sf.h
 pair_dipole_sf_omp.cpp
 pair_dipole_sf_omp.h
 pair_dpd_omp.cpp
 pair_dpd_omp.h
 pair_dpd_tstat_omp.cpp
 pair_dpd_tstat_omp.h
 pair_dsmc.cpp
 pair_dsmc.h
 pair_eam.cpp
 pair_eam.h
 pair_eam_gpu.cpp
 pair_eam_gpu.h
 pair_eam_omp.cpp
 pair_eam_omp.h
 pair_eam_opt.cpp
 pair_eam_opt.h
 pair_eam_alloy.cpp
 pair_eam_alloy.h
 pair_eam_alloy_gpu.cpp
 pair_eam_alloy_gpu.h
 pair_eam_alloy_omp.cpp
 pair_eam_alloy_omp.h
 pair_eam_alloy_opt.cpp
 pair_eam_alloy_opt.h
 pair_eam_fs.cpp
 pair_eam_fs.h
 pair_eam_fs_gpu.cpp
 pair_eam_fs_gpu.h
 pair_eam_fs_omp.cpp
 pair_eam_fs_omp.h
 pair_eam_fs_opt.cpp
 pair_eam_fs_opt.h
 pair_edip.cpp
 pair_edip.h
 pair_edip_omp.cpp
 pair_edip_omp.h
 pair_eff_cut.cpp
 pair_eff_cut.h
 pair_eff_inline.h
 pair_eim.cpp
 pair_eim.h
 pair_eim_omp.cpp
 pair_eim_omp.h
 pair_gauss_omp.cpp
 pair_gauss_omp.h
 pair_gauss_cut.cpp
 pair_gauss_cut.h
 pair_gauss_cut_omp.cpp
 pair_gauss_cut_omp.h
 pair_gayberne.cpp
 pair_gayberne.h
 pair_gayberne_gpu.cpp
 pair_gayberne_gpu.h
 pair_gayberne_omp.cpp
 pair_gayberne_omp.h
 pair_gran_hertz_history.cpp
 pair_gran_hertz_history.h
 pair_gran_hertz_history_omp.cpp
 pair_gran_hertz_history_omp.h
 pair_gran_hooke.cpp
 pair_gran_hooke.h
 pair_gran_hooke_omp.cpp
 pair_gran_hooke_omp.h
 pair_gran_hooke_history.cpp
 pair_gran_hooke_history.h
 pair_gran_hooke_history_omp.cpp
 pair_gran_hooke_history_omp.h
 pair_hbond_dreiding_lj.cpp
 pair_hbond_dreiding_lj.h
 pair_hbond_dreiding_lj_omp.cpp
 pair_hbond_dreiding_lj_omp.h
 pair_hbond_dreiding_morse.cpp
 pair_hbond_dreiding_morse.h
 pair_hbond_dreiding_morse_omp.cpp
 pair_hbond_dreiding_morse_omp.h
 pair_lcbop.cpp
 pair_lcbop.h
 pair_line_lj.cpp
 pair_line_lj.h
 pair_line_lj_omp.cpp
 pair_line_lj_omp.h
 pair_lj_charmm_coul_charmm.cpp
 pair_lj_charmm_coul_charmm.h
 pair_lj_charmm_coul_charmm_omp.cpp
 pair_lj_charmm_coul_charmm_omp.h
 pair_lj_charmm_coul_charmm_implicit.cpp
 pair_lj_charmm_coul_charmm_implicit.h
 pair_lj_charmm_coul_charmm_implicit_omp.cpp
 pair_lj_charmm_coul_charmm_implicit_omp.h
 pair_lj_charmm_coul_long.cpp
 pair_lj_charmm_coul_long.h
 pair_lj_charmm_coul_long_gpu.cpp
 pair_lj_charmm_coul_long_gpu.h
 pair_lj_charmm_coul_long_omp.cpp
 pair_lj_charmm_coul_long_omp.h
 pair_lj_charmm_coul_long_opt.cpp
 pair_lj_charmm_coul_long_opt.h
+pair_lj_charmm_coul_msm.cpp
+pair_lj_charmm_coul_msm.h
+pair_lj_charmm_coul_msm_omp.cpp
+pair_lj_charmm_coul_msm_omp.h
 pair_lj_charmm_coul_pppm_omp.cpp
 pair_lj_charmm_coul_pppm_omp.h
 pair_lj_class2.cpp
 pair_lj_class2.h
 pair_lj_class2_gpu.cpp
 pair_lj_class2_gpu.h
 pair_lj_class2_omp.cpp
 pair_lj_class2_omp.h
 pair_lj_class2_coul_cut.cpp
 pair_lj_class2_coul_cut.h
 pair_lj_class2_coul_cut_omp.cpp
 pair_lj_class2_coul_cut_omp.h
 pair_lj_class2_coul_long.cpp
 pair_lj_class2_coul_long.h
 pair_lj_class2_coul_long_gpu.cpp
 pair_lj_class2_coul_long_gpu.h
 pair_lj_class2_coul_long_omp.cpp
 pair_lj_class2_coul_long_omp.h
 pair_lj_class2_coul_pppm_omp.cpp
 pair_lj_class2_coul_pppm_omp.h
 pair_lj_coul.cpp
 pair_lj_coul.h
 pair_lj_coul_omp.cpp
 pair_lj_coul_omp.h
 pair_lj_cubic_omp.cpp
 pair_lj_cubic_omp.h
 pair_lj_cut_coul_cut_omp.cpp
 pair_lj_cut_coul_cut_omp.h
 pair_lj_cut_coul_debye_omp.cpp
 pair_lj_cut_coul_debye_omp.h
 pair_lj_cut_coul_long.cpp
 pair_lj_cut_coul_long.h
 pair_lj_cut_coul_long_omp.cpp
 pair_lj_cut_coul_long_omp.h
 pair_lj_cut_coul_long_opt.cpp
 pair_lj_cut_coul_long_opt.h
 pair_lj_cut_coul_long_tip4p.cpp
 pair_lj_cut_coul_long_tip4p.h
 pair_lj_cut_coul_long_tip4p_omp.cpp
 pair_lj_cut_coul_long_tip4p_omp.h
 pair_lj_cut_coul_long_tip4p_opt.cpp
 pair_lj_cut_coul_long_tip4p_opt.h
+pair_lj_cut_coul_msm.cpp
+pair_lj_cut_coul_msm.h
+pair_lj_cut_coul_msm_omp.cpp
+pair_lj_cut_coul_msm_omp.h
 pair_lj_cut_coul_pppm_omp.cpp
 pair_lj_cut_coul_pppm_omp.h
 pair_lj_cut_coul_pppm_tip4p_omp.cpp
 pair_lj_cut_coul_pppm_tip4p_omp.h
+pair_lj_cut_tip4p_long.cpp
+pair_lj_cut_tip4p_long.h
+pair_lj_cut_tip4p_long_omp.cpp
+pair_lj_cut_tip4p_long_omp.h
+pair_lj_cut_tip4p_long_opt.cpp
+pair_lj_cut_tip4p_long_opt.h
+pair_lj_long_coul_long.cpp
+pair_lj_long_coul_long.h
+pair_lj_long_coul_long_omp.cpp
+pair_lj_long_coul_long_omp.h
 pair_lj_cut_gpu.cpp
 pair_lj_cut_gpu.h
 pair_lj_cut_omp.cpp
 pair_lj_cut_omp.h
 pair_lj_cut_opt.cpp
 pair_lj_cut_opt.h
 pair_lj_cut_tgpu.cpp
 pair_lj_cut_tgpu.h
 pair_lj_expand_gpu.cpp
 pair_lj_expand_gpu.h
 pair_lj_expand_omp.cpp
 pair_lj_expand_omp.h
 pair_lj_gromacs_omp.cpp
 pair_lj_gromacs_omp.h
 pair_lj_gromacs_coul_gromacs_omp.cpp
 pair_lj_gromacs_coul_gromacs_omp.h
 pair_lj_smooth_omp.cpp
 pair_lj_smooth_omp.h
 pair_lj_smooth_linear_omp.cpp
 pair_lj_smooth_linear_omp.h
 pair_lj_cut_coul_cut_gpu.cpp
 pair_lj_cut_coul_cut_gpu.h
 pair_lj_cut_coul_long_gpu.cpp
 pair_lj_cut_coul_long_gpu.h
 pair_lj_sdk.cpp
 pair_lj_sdk.h
 pair_lj_sdk_gpu.cpp
 pair_lj_sdk_gpu.h
 pair_lj_sdk_omp.cpp
 pair_lj_sdk_omp.h
 pair_lj_sdk_coul_long.cpp
 pair_lj_sdk_coul_long.h
 pair_lj_sdk_coul_long_gpu.cpp
 pair_lj_sdk_coul_long_gpu.h
 pair_lj_sdk_coul_long_omp.cpp
 pair_lj_sdk_coul_long_omp.h
 pair_lj_sf.cpp
 pair_lj_sf.h
 pair_lj_sf_omp.cpp
 pair_lj_sf_omp.h
 pair_lj96_cut_omp.cpp
 pair_lj96_cut_omp.h
 pair_lj96_cut_gpu.cpp
 pair_lj96_cut_gpu.h
 pair_lubricateU.cpp
 pair_lubricateU.h
 pair_lubricateU_poly.cpp
 pair_lubricateU_poly.h
 pair_lubricate_poly.cpp
 pair_lubricate_poly.h
 pair_lubricate_poly_omp.cpp
 pair_lubricate_poly_omp.h
 pair_lubricate.cpp
 pair_lubricate.h
 pair_lubricate_omp.cpp
 pair_lubricate_omp.h
 pair_meam.cpp
 pair_meam.h
 pair_meam_spline.cpp
 pair_meam_spline.h
 pair_meam_spline_omp.cpp
 pair_meam_spline_omp.h
 pair_morse_gpu.cpp
 pair_morse_gpu.h
 pair_morse_omp.cpp
 pair_morse_omp.h
 pair_morse_opt.cpp
 pair_morse_opt.h
 pair_omp.cpp
 pair_omp.h
 pair_omp_gpu.cpp
 pair_omp_gpu.h
 pair_peri_lps.cpp
 pair_peri_lps.h
 pair_peri_lps_omp.cpp
 pair_peri_lps_omp.h
 pair_peri_pmb.cpp
 pair_peri_pmb.h
 pair_peri_pmb_omp.cpp
 pair_peri_pmb_omp.h
 pair_reax.cpp
 pair_reax.h
 pair_reax_fortran.h
 pair_reax_c.cpp
 pair_reax_c.h
 pair_rebo.cpp
 pair_rebo.h
 pair_rebo_omp.cpp
 pair_rebo_omp.h
 pair_resquared.cpp
 pair_resquared.h
 pair_resquared_gpu.cpp
 pair_resquared_gpu.h
 pair_resquared_omp.cpp
 pair_resquared_omp.h
 pair_soft_omp.cpp
 pair_soft_omp.h
 pair_sw.cpp
 pair_sw.h
 pair_sw_omp.cpp
 pair_sw_omp.h
 pair_table_gpu.cpp
 pair_table_gpu.h
 pair_table_omp.cpp
 pair_table_omp.h
 pair_tersoff.cpp
 pair_tersoff.h
 pair_tersoff_omp.cpp
 pair_tersoff_omp.h
 pair_tersoff_table.cpp
 pair_tersoff_table.h
 pair_tersoff_table_omp.cpp
 pair_tersoff_table_omp.h
 pair_tersoff_zbl.cpp
 pair_tersoff_zbl.h
 pair_tersoff_zbl_omp.cpp
 pair_tersoff_zbl_omp.h
 pair_tri_lj.cpp
 pair_tri_lj.h
 pair_tri_lj_omp.cpp
 pair_tri_lj_omp.h
 pair_yukawa_gpu.cpp
 pair_yukawa_gpu.h
 pair_yukawa_omp.cpp
 pair_yukawa_omp.h
 pair_yukawa_colloid.cpp
 pair_yukawa_colloid.h
 pair_yukawa_colloid_omp.cpp
 pair_yukawa_colloid_omp.h
 pppm.cpp
 pppm.h
 pppm_cg.cpp
 pppm_cg.h
 pppm_cg_omp.cpp
 pppm_cg_omp.h
+pppm_disp.cpp
+pppm_disp.h
+pppm_disp_tip4p.cpp
+pppm_disp_tip4p.h
 pppm_gpu.cpp
 pppm_gpu.h
+pppm_old.cpp
+pppm_old.h
 pppm_omp.cpp
 pppm_omp.h
 pppm_proxy.cpp
 pppm_proxy.h
 pppm_tip4p.cpp
 pppm_tip4p.h
 pppm_tip4p_omp.cpp
 pppm_tip4p_omp.h
 pppm_tip4p_proxy.cpp
 pppm_tip4p_proxy.h
 prd.cpp
 prd.h
 reader_molfile.cpp
 reader_molfile.h
 reaxc_allocate.cpp
 reaxc_allocate.h
 reaxc_basic_comm.cpp
 reaxc_basic_comm.h
 reaxc_bond_orders.cpp
 reaxc_bond_orders.h
 reaxc_bonds.cpp
 reaxc_bonds.h
 reaxc_control.cpp
 reaxc_control.h
 reaxc_defs.h
 reaxc_ffield.cpp
 reaxc_ffield.h
 reaxc_forces.cpp
 reaxc_forces.h
 reaxc_hydrogen_bonds.cpp
 reaxc_hydrogen_bonds.h
 reaxc_init_md.cpp
 reaxc_init_md.h
 reaxc_io_tools.cpp
 reaxc_io_tools.h
 reaxc_list.cpp
 reaxc_list.h
 reaxc_lookup.cpp
 reaxc_lookup.h
 reaxc_multi_body.cpp
 reaxc_multi_body.h
 reaxc_nonbonded.cpp
 reaxc_nonbonded.h
 reaxc_reset_tools.cpp
 reaxc_reset_tools.h
 reaxc_system_props.cpp
 reaxc_system_props.h
 reaxc_tool_box.cpp
 reaxc_tool_box.h
 reaxc_torsion_angles.cpp
 reaxc_torsion_angles.h
 reaxc_traj.cpp
 reaxc_traj.h
 reaxc_types.h
 reaxc_valence_angles.cpp
 reaxc_valence_angles.h
 reaxc_vector.cpp
 reaxc_vector.h
 remap.cpp
 remap.h
 remap_wrap.cpp
 remap_wrap.h
 style_angle.h
 style_atom.h
+style_body.h
 style_bond.h
 style_command.h
 style_compute.h
 style_dihedral.h
 style_dump.h
 style_fix.h
 style_improper.h
 style_integrate.h
 style_kspace.h
 style_lb.h
 style_minimize.h
 style_pair.h
 style_reader.h
 style_region.h
 tad.cpp
 tad.h
 temper.cpp
 temper.h
 thr_data.cpp
 thr_data.h
 thr_omp.cpp
 thr_omp.h
 verlet_split.cpp
 verlet_split.h
 xdr_compat.cpp
 xdr_compat.h