diff --git a/src/.gitignore b/src/.gitignore index 02b05b364..0db6a21a7 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -1,1027 +1,1031 @@ /Makefile.package /Makefile.package.settings /MAKE/MINE /Make.py.last /lmp_* /style_*.h /*_gpu.h /*_gpu.cpp /*_intel.h /*_intel.cpp /*_kokkos.h /*_kokkos.cpp /*_omp.h /*_omp.cpp /*_tally.h /*_tally.cpp /*_rx.h /*_rx.cpp /kokkos.cpp /kokkos.h /kokkos_type.h /manifold*.cpp /manifold*.h /fix_*manifold*.cpp /fix_*manifold*.h /fix_qeq*.cpp /fix_qeq*.h /compute_test_nbl.cpp /compute_test_nbl.h /pair_multi_lucy.cpp /pair_multi_lucy.h /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 /type_detector.h /intel_buffers.cpp /intel_buffers.h /intel_intrinsics.h /intel_preprocess.h /intel_simd.h /compute_sna_atom.cpp /compute_sna_atom.h /compute_snad_atom.cpp /compute_snad_atom.h /compute_snav_atom.cpp /compute_snav_atom.h /openmp_snap.h /pair_snap.cpp /pair_snap.h /sna.cpp /sna.h /atom_vec_wavepacket.cpp /atom_vec_wavepacket.h /fix_nve_awpmd.cpp /fix_nve_awpmd.h /pair_awpmd_cut.cpp /pair_awpmd_cut.h /angle_cg_cmm.cpp /angle_cg_cmm.h /angle_charmm.cpp /angle_charmm.h /angle_class2.cpp /angle_class2.h /angle_cosine.cpp /angle_cosine.h /angle_cosine_delta.cpp /angle_cosine_delta.h /angle_cosine_periodic.cpp /angle_cosine_periodic.h /angle_cosine_shift.cpp /angle_cosine_shift.h /angle_cosine_shift_exp.cpp /angle_cosine_shift_exp.h /angle_cosine_squared.cpp /angle_cosine_squared.h /angle_dipole.cpp /angle_dipole.h /angle_fourier.cpp /angle_fourier.h /angle_fourier_simple.cpp /angle_fourier_simple.h /angle_harmonic.cpp /angle_harmonic.h /angle_quartic.cpp /angle_quartic.h /angle_sdk.cpp /angle_sdk.h /angle_table.cpp /angle_table.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_dpd.cpp /atom_vec_dpd.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_full_hars.cpp /atom_vec_full_hars.h /atom_vec_granular.cpp /atom_vec_granular.h /atom_vec_meso.cpp /atom_vec_meso.h /atom_vec_molecular.cpp /atom_vec_molecular.h /atom_vec_peri.cpp /atom_vec_peri.h /atom_vec_template.cpp /atom_vec_template.h /body_nparticle.cpp /body_nparticle.h /bond_class2.cpp /bond_class2.h /bond_fene.cpp /bond_fene.h /bond_fene_expand.cpp /bond_fene_expand.h /bond_harmonic.cpp /bond_harmonic.h /bond_harmonic_shift.cpp /bond_harmonic_shift.h /bond_harmonic_shift_cut.cpp /bond_harmonic_shift_cut.h /bond_morse.cpp /bond_morse.h /bond_nonlinear.cpp /bond_nonlinear.h /bond_quartic.cpp /bond_quartic.h /bond_table.cpp /bond_table.h /cg_cmm_parms.cpp /cg_cmm_parms.h /commgrid.cpp /commgrid.h /compute_ackland_atom.cpp /compute_ackland_atom.h /compute_basal_atom.cpp /compute_basal_atom.h /compute_body_local.cpp /compute_body_local.h /compute_cna_atom2.cpp /compute_cna_atom2.h /compute_damage_atom.cpp /compute_damage_atom.h /compute_dilatation_atom.cpp /compute_dilatation_atom.h /compute_dpd.cpp /compute_dpd.h /compute_dpd_atom.cpp /compute_dpd_atom.h /compute_erotate_asphere.cpp /compute_erotate_asphere.h /compute_erotate_rigid.cpp /compute_erotate_rigid.h /compute_event_displace.cpp /compute_event_displace.h /compute_fep.cpp /compute_fep.h /compute_force_tally.cpp /compute_force_tally.h /compute_heat_flux_tally.cpp /compute_heat_flux_tally.h /compute_ke_atom_eff.cpp /compute_ke_atom_eff.h /compute_ke_eff.cpp /compute_ke_eff.h /compute_ke_rigid.cpp /compute_ke_rigid.h /compute_meso_e_atom.cpp /compute_meso_e_atom.h /compute_meso_rho_atom.cpp /compute_meso_rho_atom.h /compute_meso_t_atom.cpp /compute_meso_t_atom.h /compute_msd_nongauss.cpp /compute_msd_nongauss.h /compute_pe_tally.cpp /compute_pe_tally.h /compute_plasticity_atom.cpp /compute_plasticity_atom.h +/compute_pressure_grem.cpp +/compute_pressure_grem.h /compute_rigid_local.cpp /compute_rigid_local.h /compute_spec_atom.cpp /compute_spec_atom.h /compute_stress_tally.cpp /compute_stress_tally.h /compute_temp_asphere.cpp /compute_temp_asphere.h /compute_temp_body.cpp /compute_temp_body.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 /compute_ti.cpp /compute_ti.h /compute_voronoi_atom.cpp /compute_voronoi_atom.h /dihedral_charmm.cpp /dihedral_charmm.h /dihedral_class2.cpp /dihedral_class2.h /dihedral_cosine_shift_exp.cpp /dihedral_cosine_shift_exp.h /dihedral_fourier.cpp /dihedral_fourier.h /dihedral_harmonic.cpp /dihedral_harmonic.h /dihedral_helix.cpp /dihedral_helix.h /dihedral_hybrid.cpp /dihedral_hybrid.h /dihedral_multi_harmonic.cpp /dihedral_multi_harmonic.h /dihedral_nharmonic.cpp /dihedral_nharmonic.h /dihedral_opls.cpp /dihedral_opls.h /dihedral_quadratic.cpp /dihedral_quadratic.h /dihedral_spherical.cpp /dihedral_spherical.h /dihedral_table.cpp /dihedral_table.h /dump_atom_gz.cpp /dump_atom_gz.h /dump_xyz_gz.cpp /dump_xyz_gz.h /dump_atom_mpiio.cpp /dump_atom_mpiio.h /dump_cfg_gz.cpp /dump_cfg_gz.h /dump_cfg_mpiio.cpp /dump_cfg_mpiio.h /dump_custom_gz.cpp /dump_custom_gz.h /dump_custom_mpiio.cpp /dump_custom_mpiio.h /dump_custom_vtk.cpp /dump_custom_vtk.h /dump_h5md.cpp /dump_h5md.h /dump_nc.cpp /dump_nc.h /dump_nc_mpiio.cpp /dump_nc_mpiio.h /dump_xtc.cpp /dump_xtc.h /dump_xyz_mpiio.cpp /dump_xyz_mpiio.h /ewald.cpp /ewald.h /ewald_cg.cpp /ewald_cg.h /ewald_disp.cpp /ewald_disp.h /ewald_n.cpp /ewald_n.h /fft3d.cpp /fft3d.h /fft3d_wrap.cpp /fft3d_wrap.h /fix_adapt_fep.cpp /fix_adapt_fep.h /fix_addtorque.cpp /fix_addtorque.h /fix_append_atoms.cpp /fix_append_atoms.h /fix_atc.cpp /fix_atc.h /fix_ave_correlate_long.cpp /fix_ave_correlate_long.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_cmap.cpp /fix_cmap.h /fix_deposit.cpp /fix_deposit.h /fix_dpd_energy.cpp /fix_dpd_energy.h /fix_efield.cpp /fix_efield.h /fix_eos_cv.cpp /fix_eos_cv.h /fix_eos_table.cpp /fix_eos_table.h /fix_evaporate.cpp /fix_evaporate.h /fix_viscosity.cpp /fix_viscosity.h /fix_ehex.cpp /fix_ehex.h /fix_event.cpp /fix_event.h /fix_event_prd.cpp /fix_event_prd.h /fix_event_tad.cpp /fix_event_tad.h /fix_flow_gauss.cpp /fix_flow_gauss.h /fix_freeze.cpp /fix_freeze.h /fix_gcmc.cpp /fix_gcmc.h /fix_gld.cpp /fix_gld.h /fix_gle.cpp /fix_gle.h /fix_gpu.cpp /fix_gpu.h +/fix_grem.cpp +/fix_grem.h /fix_imd.cpp /fix_imd.h /fix_ipi.cpp /fix_ipi.h /fix_lambdah_calc.cpp /fix_lambdah_calc.h /fix_langevin_eff.cpp /fix_langevin_eff.h /fix_lb_fluid.cpp /fix_lb_fluid.h /fix_lb_momentum.cpp /fix_lb_momentum.h /fix_lb_pc.cpp /fix_lb_pc.h /fix_lb_rigid_pc_sphere.cpp /fix_lb_rigid_pc_sphere.h /fix_lb_viscous.cpp /fix_lb_viscous.h /fix_load_report.cpp /fix_load_report.h /fix_meso.cpp /fix_meso.h /fix_meso_stationary.cpp /fix_meso_stationary.h /fix_msst.cpp /fix_msst.h /fix_neb.cpp /fix_neb.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_nh_body.cpp /fix_nh_body.h /fix_nph_body.cpp /fix_nph_body.h /fix_npt_body.cpp /fix_npt_body.h /fix_nvt_body.cpp /fix_nvt_body.h /fix_nve_body.cpp /fix_nve_body.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_tri.cpp /fix_nve_tri.h /fix_oneway.cpp /fix_oneway.h /fix_orient_bcc.cpp /fix_orient_bcc.h /fix_orient_fcc.cpp /fix_orient_fcc.h /fix_peri_neigh.cpp /fix_peri_neigh.h /fix_phonon.cpp /fix_phonon.h /fix_poems.cpp /fix_poems.h /fix_pour.cpp /fix_pour.h /fix_qeq_comb.cpp /fix_qeq_comb.h /fix_qeq_reax.cpp /fix_qeq_fire.cpp /fix_qeq_fire.h /fix_qeq_reax.h /fix_qmmm.cpp /fix_qmmm.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_reaxc_species.cpp /fix_reaxc_species.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_rigid_nh_small.cpp /fix_rigid_nh_small.h /fix_rigid_nph_small.cpp /fix_rigid_nph_small.h /fix_rigid_npt_small.cpp /fix_rigid_npt_small.h /fix_rigid_nve_small.cpp /fix_rigid_nve_small.h /fix_rigid_nvt_small.cpp /fix_rigid_nvt_small.h /fix_rigid_small.cpp /fix_rigid_small.h /fix_shake.cpp /fix_shake.h /fix_shardlow.cpp /fix_shardlow.h /fix_smd.cpp /fix_smd.h /fix_species.cpp /fix_species.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_thermal_conductivity.cpp /fix_thermal_conductivity.h /fix_ti_rs.cpp /fix_ti_rs.h /fix_ti_spring.cpp /fix_ti_spring.h /fix_ttm.cpp /fix_ttm.h /fix_tune_kspace.cpp /fix_tune_kspace.h /fix_wall_colloid.cpp /fix_wall_colloid.h /fix_wall_gran.cpp /fix_wall_gran.h /fix_wall_gran_region.cpp /fix_wall_gran_region.h /fix_wall_piston.cpp /fix_wall_piston.h /fix_wall_srd.cpp /fix_wall_srd.h /gpu_extra.h /gridcomm.cpp /gridcomm.h /group_ndx.cpp /group_ndx.h /ndx_group.cpp /ndx_group.h /improper_class2.cpp /improper_class2.h /improper_cossq.cpp /improper_cossq.h /improper_cvff.cpp /improper_cvff.h /improper_distance.cpp /improper_distance.h /improper_fourier.cpp /improper_fourier.h /improper_harmonic.cpp /improper_harmonic.h /improper_hybrid.cpp /improper_hybrid.h /improper_ring.cpp /improper_ring.h /improper_umbrella.cpp /improper_umbrella.h /kissfft.h /lj_sdk_common.h /math_complex.h /math_vector.h /mgpt_*.cpp /mgpt_*.h /msm.cpp /msm.h /msm_cg.cpp /msm_cg.h /neb.cpp /neb.h /pair_adp.cpp /pair_adp.h /pair_airebo.cpp /pair_airebo.h /pair_airebo_morse.cpp /pair_airebo_morse.h /pair_body.cpp /pair_body.h /pair_bop.cpp /pair_bop.h /pair_born_coul_long.cpp /pair_born_coul_long.h /pair_born_coul_msm.cpp /pair_born_coul_msm.h /pair_brownian.cpp /pair_brownian.h /pair_brownian_poly.cpp /pair_brownian_poly.h /pair_buck_coul_long.cpp /pair_buck_coul_long.h /pair_buck_coul_msm.cpp /pair_buck_coul_msm.h /pair_buck_coul.cpp /pair_buck_coul.h /pair_buck_long_coul_long.cpp /pair_buck_long_coul_long.h /pair_cdeam.cpp /pair_cdeam.h /pair_cg_cmm.cpp /pair_cg_cmm.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_coul_msm.cpp /pair_cg_cmm_coul_msm.h /pair_comb.cpp /pair_comb.h /pair_comb3.cpp /pair_comb3.h /pair_colloid.cpp /pair_colloid.h /pair_coul_diel.cpp /pair_coul_diel.h /pair_coul_long.cpp /pair_coul_long.h /pair_coul_msm.cpp /pair_coul_msm.h /pair_dipole_cut.cpp /pair_dipole_cut.h /pair_dipole_sf.cpp /pair_dipole_sf.h /pair_dpd_mt.cpp /pair_dpd_mt.h /pair_dsmc.cpp /pair_dsmc.h /pair_eam.cpp /pair_eam.h /pair_eam_opt.cpp /pair_eam_opt.h /pair_eam_alloy.cpp /pair_eam_alloy.h /pair_eam_alloy_opt.cpp /pair_eam_alloy_opt.h /pair_eam_fs.cpp /pair_eam_fs.h /pair_eam_fs_opt.cpp /pair_eam_fs_opt.h /pair_edip.cpp /pair_edip.h /pair_eff_cut.cpp /pair_eff_cut.h /pair_eff_inline.h /pair_eim.cpp /pair_eim.h /pair_gauss_cut.cpp /pair_gauss_cut.h /pair_gayberne.cpp /pair_gayberne.h /pair_gran_easy.cpp /pair_gran_easy.h /pair_gran_hertz_history.cpp /pair_gran_hertz_history.h /pair_gran_hooke.cpp /pair_gran_hooke.h /pair_gran_hooke_history.cpp /pair_gran_hooke_history.h /pair_gw.cpp /pair_gw.h /pair_gw_zbl.cpp /pair_gw_zbl.h /pair_hbond_dreiding_lj.cpp /pair_hbond_dreiding_lj.h /pair_hbond_dreiding_morse.cpp /pair_hbond_dreiding_morse.h /pair_lcbop.cpp /pair_lcbop.h /pair_line_lj.cpp /pair_line_lj.h /pair_list.cpp /pair_list.h /pair_lj_charmm_coul_charmm.cpp /pair_lj_charmm_coul_charmm.h /pair_lj_charmm_coul_charmm_implicit.cpp /pair_lj_charmm_coul_charmm_implicit.h /pair_lj_charmm_coul_long.cpp /pair_lj_charmm_coul_long.h /pair_lj_charmm_coul_long_opt.cpp /pair_lj_charmm_coul_long_opt.h /pair_lj_charmm_coul_long_soft.cpp /pair_lj_charmm_coul_long_soft.h /pair_lj_charmm_coul_msm.cpp /pair_lj_charmm_coul_msm.h /pair_lj_class2.cpp /pair_lj_class2.h /pair_lj_class2_coul_cut.cpp /pair_lj_class2_coul_cut.h /pair_lj_class2_coul_long.cpp /pair_lj_class2_coul_long.h /pair_lj_coul.cpp /pair_lj_coul.h /pair_coul_cut_soft.cpp /pair_coul_cut_soft.h /pair_coul_long_soft.cpp /pair_coul_long_soft.h /pair_lj_cut_coul_cut_soft.cpp /pair_lj_cut_coul_cut_soft.h /pair_lj_cut_tip4p_cut.cpp /pair_lj_cut_tip4p_cut.h /pair_lj_cut_coul_long.cpp /pair_lj_cut_coul_long.h /pair_lj_cut_coul_long_opt.cpp /pair_lj_cut_coul_long_opt.h /pair_lj_cut_coul_long_soft.cpp /pair_lj_cut_coul_long_soft.h /pair_lj_cut_coul_msm.cpp /pair_lj_cut_coul_msm.h /pair_lj_cut_dipole_cut.cpp /pair_lj_cut_dipole_cut.h /pair_lj_cut_dipole_long.cpp /pair_lj_cut_dipole_long.h /pair_lj_cut_*hars_*.cpp /pair_lj_cut_*hars_*.h /pair_lj_cut_soft.cpp /pair_lj_cut_soft.h /pair_lj_cut_tip4p_long.cpp /pair_lj_cut_tip4p_long.h /pair_lj_cut_tip4p_long_opt.cpp /pair_lj_cut_tip4p_long_opt.h /pair_lj_cut_tip4p_long_soft.cpp /pair_lj_cut_tip4p_long_soft.h /pair_lj_long_coul_long.cpp /pair_lj_long_coul_long.h /pair_lj_long_coul_long_opt.cpp /pair_lj_long_coul_long_opt.h /pair_lj_long_dipole_long.cpp /pair_lj_long_dipole_long.h /pair_lj_long_tip4p_long.cpp /pair_lj_long_tip4p_long.h /pair_lj_cut_opt.cpp /pair_lj_cut_opt.h /pair_lj_cut_tgpu.cpp /pair_lj_cut_tgpu.h /pair_lj_sdk.cpp /pair_lj_sdk.h /pair_lj_sdk_coul_long.cpp /pair_lj_sdk_coul_long.h /pair_lj_sdk_coul_msm.cpp /pair_lj_sdk_coul_msm.h /pair_lj_sf.cpp /pair_lj_sf.h /pair_lj_sf_dipole_sf.cpp /pair_lj_sf_dipole_sf.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.cpp /pair_lubricate.h /pair_meam.cpp /pair_meam.h /pair_meam_spline.cpp /pair_meam_spline.h /pair_meam_sw_spline.cpp /pair_meam_sw_spline.h /pair_morse_opt.cpp /pair_morse_opt.h /pair_morse_soft.cpp /pair_morse_soft.h /pair_nb3b_harmonic.cpp /pair_nb3b_harmonic.h /pair_nm_cut.cpp /pair_nm_cut.h /pair_nm_cut_coul_cut.cpp /pair_nm_cut_coul_cut.h /pair_nm_cut_coul_long.cpp /pair_nm_cut_coul_long.h /pair_peri_eps.cpp /pair_peri_eps.h /pair_peri_lps.cpp /pair_peri_lps.h /pair_peri_pmb.cpp /pair_peri_pmb.h /pair_peri_ves.cpp /pair_peri_ves.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_resquared.cpp /pair_resquared.h /pair_sph_heatconduction.cpp /pair_sph_heatconduction.h /pair_sph_idealgas.cpp /pair_sph_idealgas.h /pair_sph_lj.cpp /pair_sph_lj.h /pair_sph_rhosum.cpp /pair_sph_rhosum.h /pair_sph_taitwater.cpp /pair_sph_taitwater.h /pair_sph_taitwater_morris.cpp /pair_sph_taitwater_morris.h /pair_sw.cpp /pair_sw.h /pair_tersoff.cpp /pair_tersoff.h /pair_tersoff_mod.cpp /pair_tersoff_mod.h /pair_tersoff_table.cpp /pair_tersoff_table.h /pair_tersoff_zbl.cpp /pair_tersoff_zbl.h /pair_tip4p_cut.cpp /pair_tip4p_cut.h /pair_tip4p_long.cpp /pair_tip4p_long.h /pair_tip4p_long_soft.cpp /pair_tip4p_long_soft.h /pair_tri_lj.cpp /pair_tri_lj.h /pair_yukawa_colloid.cpp /pair_yukawa_colloid.h /pppm.cpp /pppm.h /pppm_cg.cpp /pppm_cg.h /pppm_disp.cpp /pppm_disp.h /pppm_disp_tip4p.cpp /pppm_disp_tip4p.h /pppm_old.cpp /pppm_old.h /pppm_proxy.cpp /pppm_proxy.h /pppm_stagger.cpp /pppm_stagger.h /pppm_tip4p.cpp /pppm_tip4p.h /pppm_tip4p_proxy.cpp /pppm_tip4p_proxy.h /pppm_tip4p_cg.cpp /pppm_tip4p_cg.h /prd.cpp /prd.h /python.cpp /python.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 /restart_mpiio.cpp /restart_mpiio.h /smd_kernels.h /smd_material_models.cpp /smd_material_models.h /smd_math.h /tad.cpp /tad.h /temper.cpp /temper.h /thr_data.cpp /thr_data.h /verlet_split.cpp /verlet_split.h /write_dump.cpp /write_dump.h /xdr_compat.cpp /xdr_compat.h /atom_vec_smd.cpp /atom_vec_smd.h /compute_saed.cpp /compute_saed.h /compute_saed_consts.h /compute_smd_contact_radius.cpp /compute_smd_contact_radius.h /compute_smd_damage.cpp /compute_smd_damage.h /compute_smd_hourglass_error.cpp /compute_smd_hourglass_error.h /compute_smd_internal_energy.cpp /compute_smd_internal_energy.h /compute_smd_plastic_strain.cpp /compute_smd_plastic_strain.h /compute_smd_plastic_strain_rate.cpp /compute_smd_plastic_strain_rate.h /compute_smd_rho.cpp /compute_smd_rho.h /compute_smd_tlsph_defgrad.cpp /compute_smd_tlsph_defgrad.h /compute_smd_tlsph_dt.cpp /compute_smd_tlsph_dt.h /compute_smd_tlsph_num_neighs.cpp /compute_smd_tlsph_num_neighs.h /compute_smd_tlsph_shape.cpp /compute_smd_tlsph_shape.h /compute_smd_tlsph_strain.cpp /compute_smd_tlsph_strain.h /compute_smd_tlsph_strain_rate.cpp /compute_smd_tlsph_strain_rate.h /compute_smd_tlsph_stress.cpp /compute_smd_tlsph_stress.h /compute_smd_triangle_mesh_vertices.cpp /compute_smd_triangle_mesh_vertices.h /compute_smd_ulsph_effm.cpp /compute_smd_ulsph_effm.h /compute_smd_ulsph_num_neighs.cpp /compute_smd_ulsph_num_neighs.h /compute_smd_ulsph_strain.cpp /compute_smd_ulsph_strain.h /compute_smd_ulsph_strain_rate.cpp /compute_smd_ulsph_strain_rate.h /compute_smd_ulsph_stress.cpp /compute_smd_ulsph_stress.h /compute_smd_vol.cpp /compute_smd_vol.h /compute_temp_cs.cpp /compute_temp_cs.h /compute_temp_drude.cpp /compute_temp_drude.h /compute_xrd.cpp /compute_xrd.h /compute_xrd_consts.h /fix_atom_swap.cpp /fix_atom_swap.h /fix_ave_spatial_sphere.cpp /fix_ave_spatial_sphere.h /fix_drude.cpp /fix_drude.h /fix_drude_transform.cpp /fix_drude_transform.h /fix_langevin_drude.cpp /fix_langevin_drude.h /fix_pimd.cpp /fix_pimd.h /fix_qbmsst.cpp /fix_qbmsst.h /fix_qtb.cpp /fix_qtb.h /fix_rattle.cpp /fix_rattle.h /fix_saed_vtk.cpp /fix_saed_vtk.h /fix_smd_adjust_dt.cpp /fix_smd_adjust_dt.h /fix_smd_integrate_tlsph.cpp /fix_smd_integrate_tlsph.h /fix_smd_integrate_ulsph.cpp /fix_smd_integrate_ulsph.h /fix_smd_move_triangulated_surface.cpp /fix_smd_move_triangulated_surface.h /fix_smd_setvel.cpp /fix_smd_setvel.h /fix_smd_tlsph_reference_configuration.cpp /fix_smd_tlsph_reference_configuration.h /fix_smd_wall_surface.cpp /fix_smd_wall_surface.h /fix_srp.cpp /fix_srp.h /fix_tfmc.cpp /fix_tfmc.h /fix_ttm_mod.cpp /fix_ttm_mod.h /pair_born_coul_long_cs.cpp /pair_born_coul_long_cs.h /pair_born_coul_dsf_cs.cpp /pair_born_coul_dsf_cs.h /pair_buck_coul_long_cs.cpp /pair_buck_coul_long_cs.h /pair_coul_long_cs.cpp /pair_coul_long_cs.h /pair_lj_cut_thole_long.cpp /pair_lj_cut_thole_long.h /pair_plum_hb.cpp /pair_plum_hb.h /pair_plum_hp.cpp /pair_plum_hp.h /pair_polymorphic.cpp /pair_polymorphic.h /pair_smd_hertz.cpp /pair_smd_hertz.h /pair_smd_tlsph.cpp /pair_smd_tlsph.h /pair_smd_triangulated_surface.cpp /pair_smd_triangulated_surface.h /pair_smd_ulsph.cpp /pair_smd_ulsph.h /pair_srp.cpp /pair_srp.h /pair_thole.cpp /pair_thole.h /pair_buck_mdf.cpp /pair_buck_mdf.h /pair_dpd_conservative.cpp /pair_dpd_conservative.h /pair_dpd_fdt.cpp /pair_dpd_fdt.h /pair_dpd_fdt_energy.cpp /pair_dpd_fdt_energy.h /pair_lennard_mdf.cpp /pair_lennard_mdf.h /pair_lj_cut_coul_long_cs.cpp /pair_lj_cut_coul_long_cs.h /pair_lj_mdf.cpp /pair_lj_mdf.h /pair_mgpt.cpp /pair_mgpt.h /pair_morse_smooth_linear.cpp /pair_morse_smooth_linear.h /pair_smtbq.cpp /pair_smtbq.h /pair_vashishta*.cpp /pair_vashishta*.h diff --git a/src/USER-MISC/compute_pressure_grem.cpp b/src/USER-MISC/compute_pressure_grem.cpp new file mode 100644 index 000000000..387bde642 --- /dev/null +++ b/src/USER-MISC/compute_pressure_grem.cpp @@ -0,0 +1,149 @@ +/* ---------------------------------------------------------------------- + LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator + http://lammps.sandia.gov, Sandia National Laboratories + Steve Plimpton, sjplimp@sandia.gov + + Copyright (2003) Sandia Corporation. Under the terms of Contract + DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains + certain rights in this software. This software is distributed under + the GNU General Public License. + + See the README file in the top-level LAMMPS directory. +------------------------------------------------------------------------- */ + +#include +#include +#include +#include "compute_pressure_grem.h" +#include "atom.h" +#include "update.h" +#include "domain.h" +#include "modify.h" +#include "fix.h" +#include "force.h" +#include "pair.h" +#include "kspace.h" +#include "error.h" + +using namespace LAMMPS_NS; + +/* ---------------------------------------------------------------------- + Last argument is the id of the gREM fix +------------------------------------------------------------------------- */ + +ComputePressureGrem::ComputePressureGrem(LAMMPS *lmp, int narg, char **arg) : + ComputePressure(lmp, narg-1, arg) +{ + fix_grem = arg[narg-1]; +} + +/* ---------------------------------------------------------------------- */ + +void ComputePressureGrem::init() +{ + ComputePressure::init(); + + // Initialize hook to gREM fix + int ifix = modify->find_fix(fix_grem); + if (ifix < 0) + error->all(FLERR,"Fix grem ID for compute pressure/grem does not exist"); + + int dim; + scale_grem = (double *)modify->fix[ifix]->extract("scale_grem",dim); + + if (scale_grem == NULL || dim != 0) + error->all(FLERR,"Cannot extract gREM scale factor from fix grem"); +} + +/* ---------------------------------------------------------------------- + compute total pressure, averaged over Pxx, Pyy, Pzz +------------------------------------------------------------------------- */ + +double ComputePressureGrem::compute_scalar() +{ + invoked_scalar = update->ntimestep; + if (update->vflag_global != invoked_scalar) + error->all(FLERR,"Virial was not tallied on needed timestep"); + + // invoke temperature if it hasn't been already + + double t; + if (keflag) { + if (temperature->invoked_scalar != update->ntimestep) + t = temperature->compute_scalar() * (*scale_grem); + else t = temperature->scalar * (*scale_grem); + } + + if (dimension == 3) { + inv_volume = 1.0 / (domain->xprd * domain->yprd * domain->zprd); + virial_compute(3,3); + if (keflag) + scalar = (temperature->dof * boltz * t + + virial[0] + virial[1] + virial[2]) / 3.0 * inv_volume * nktv2p; + else + scalar = (virial[0] + virial[1] + virial[2]) / 3.0 * inv_volume * nktv2p; + } else { + inv_volume = 1.0 / (domain->xprd * domain->yprd); + virial_compute(2,2); + if (keflag) + scalar = (temperature->dof * boltz * t + + virial[0] + virial[1]) / 2.0 * inv_volume * nktv2p; + else + scalar = (virial[0] + virial[1]) / 2.0 * inv_volume * nktv2p; + } + + return scalar; +} + +/* ---------------------------------------------------------------------- + compute pressure tensor + assume KE tensor has already been computed +------------------------------------------------------------------------- */ + +void ComputePressureGrem::compute_vector() +{ + invoked_vector = update->ntimestep; + if (update->vflag_global != invoked_vector) + error->all(FLERR,"Virial was not tallied on needed timestep"); + + if (force->kspace && kspace_virial && force->kspace->scalar_pressure_flag) + error->all(FLERR,"Must use 'kspace_modify pressure/scalar no' for " + "tensor components with kspace_style msm"); + + // invoke temperature if it hasn't been already + + double *ke_tensor; + if (keflag) { + if (temperature->invoked_vector != update->ntimestep) + temperature->compute_vector(); + ke_tensor = temperature->vector; + } + for (int i = 0; i < 6; i++) + ke_tensor[i] *= *scale_grem; + + if (dimension == 3) { + inv_volume = 1.0 / (domain->xprd * domain->yprd * domain->zprd); + virial_compute(6,3); + if (keflag) { + for (int i = 0; i < 6; i++) + vector[i] = (ke_tensor[i] + virial[i]) * inv_volume * nktv2p; + } else + for (int i = 0; i < 6; i++) + vector[i] = virial[i] * inv_volume * nktv2p; + } else { + inv_volume = 1.0 / (domain->xprd * domain->yprd); + virial_compute(4,2); + if (keflag) { + vector[0] = (ke_tensor[0] + virial[0]) * inv_volume * nktv2p; + vector[1] = (ke_tensor[1] + virial[1]) * inv_volume * nktv2p; + vector[3] = (ke_tensor[3] + virial[3]) * inv_volume * nktv2p; + vector[2] = vector[4] = vector[5] = 0.0; + } else { + vector[0] = virial[0] * inv_volume * nktv2p; + vector[1] = virial[1] * inv_volume * nktv2p; + vector[3] = virial[3] * inv_volume * nktv2p; + vector[2] = vector[4] = vector[5] = 0.0; + } + } +} + diff --git a/src/compute_pressure.h b/src/USER-MISC/compute_pressure_grem.h similarity index 73% copy from src/compute_pressure.h copy to src/USER-MISC/compute_pressure_grem.h index 4ff116837..8d30af932 100644 --- a/src/compute_pressure.h +++ b/src/USER-MISC/compute_pressure_grem.h @@ -1,92 +1,91 @@ /* -*- c++ -*- ---------------------------------------------------------- LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator http://lammps.sandia.gov, Sandia National Laboratories Steve Plimpton, sjplimp@sandia.gov Copyright (2003) Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software. This software is distributed under the GNU General Public License. See the README file in the top-level LAMMPS directory. ------------------------------------------------------------------------- */ #ifdef COMPUTE_CLASS -ComputeStyle(pressure,ComputePressure) +ComputeStyle(pressure/grem,ComputePressureGrem) #else -#ifndef LMP_COMPUTE_PRESSURE_H -#define LMP_COMPUTE_PRESSURE_H +#ifndef LMP_COMPUTE_PRESSURE_GREM_H +#define LMP_COMPUTE_PRESSURE_GREM_H -#include "compute.h" +#include "compute_pressure.h" namespace LAMMPS_NS { -class ComputePressure : public Compute { +class ComputePressureGrem : public ComputePressure { public: - ComputePressure(class LAMMPS *, int, char **); - virtual ~ComputePressure(); - void init(); - double compute_scalar(); - void compute_vector(); - void reset_extra_compute_fix(const char *); + ComputePressureGrem(class LAMMPS *, int, char **); + virtual ~ComputePressureGrem() {}; + virtual void init(); + virtual double compute_scalar(); + virtual void compute_vector(); protected: - double boltz,nktv2p,inv_volume; - int nvirial,dimension; - double **vptr; - double *kspace_virial; - Compute *temperature; - char *id_temp; - double virial[6]; - int keflag,pairflag,bondflag,angleflag,dihedralflag,improperflag; - int fixflag,kspaceflag; - - void virial_compute(int, int); + // Access to gREM fix scale factor + char *fix_grem; + double *scale_grem; }; } #endif #endif /* ERROR/WARNING messages: E: Illegal ... command Self-explanatory. Check the input script syntax and compare to the documentation for the command. You can use -echo screen as a command-line option when running LAMMPS to see the offending line. E: Compute pressure must use group all Virial contributions computed by potentials (pair, bond, etc) are computed on all atoms. E: Could not find compute pressure temperature ID The compute ID for calculating temperature does not exist. E: Compute pressure temperature ID does not compute temperature The compute ID assigned to a pressure computation must compute temperature. E: Compute pressure requires temperature ID to include kinetic energy The keflag cannot be used unless a temperature compute is provided. E: Virial was not tallied on needed timestep You are using a thermo keyword that requires potentials to have tallied the virial, but they didn't on this timestep. See the variable doc page for ideas on how to make this work. E: Must use 'kspace_modify pressure/scalar no' for tensor components with kspace_style msm Otherwise MSM will compute only a scalar pressure. See the kspace_modify command for details on this setting. +E: Fix grem ID for compute pressure/grem does not exist + +Compute pressure/grem was passed an invalid fix id + +E: Cannot extract gREM scale factor from fix grem + +The fix id passed to compute pressure/grem refers to an incompatible fix + */ diff --git a/src/USER-MISC/fix_grem.cpp b/src/USER-MISC/fix_grem.cpp new file mode 100644 index 000000000..7778052d2 --- /dev/null +++ b/src/USER-MISC/fix_grem.cpp @@ -0,0 +1,239 @@ +/* ---------------------------------------------------------------------- + LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator + http://lammps.sandia.gov, Sandia National Laboratories + Steve Plimpton, sjplimp@sandia.gov + + Copyright (2003) Sandia Corporation. Under the terms of Contract + DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains + certain rights in this software. This software is distributed under + the GNU General Public License. + + See the README file in the top-level LAMMPS directory. + + Force scaling fix for gREM. + Cite: http://dx.doi.org/10.1063/1.3432176 + Cite: http://dx.doi.org/10.1021/acs.jpcb.5b07614 + +------------------------------------------------------------------------- */ + +/* ---------------------------------------------------------------------- + Contributing author: Edyta Malolepsza (Broad Institute) + Contributing author: David Stelter (Boston University) + Contributing author: Tom Keyes (Boston University) +------------------------------------------------------------------------- */ + +#include +#include +#include +#include "comm.h" +#include "fix_grem.h" +#include "atom.h" +#include "force.h" +#include "update.h" +#include "modify.h" +#include "domain.h" +#include "input.h" +#include "compute.h" +#include "memory.h" +#include "error.h" + +using namespace LAMMPS_NS; +using namespace FixConst; + +enum{NONE,CONSTANT,EQUAL,ATOM}; + +/* ---------------------------------------------------------------------- */ + +FixGrem::FixGrem(LAMMPS *lmp, int narg, char **arg) : + Fix(lmp, narg, arg) +{ + if (narg < 8) error->all(FLERR,"Illegal fix grem command"); + + scalar_flag = 1; + vector_flag = 1; + size_vector = 3; + global_freq = 1; + extscalar = 1; + extvector = 1; + + // tbath - temp of bath, the same as defined in thermostat + + lambda = force->numeric(FLERR,arg[3]); + eta = force->numeric(FLERR,arg[4]); + h0 = force->numeric(FLERR,arg[5]); + tbath = force->numeric(FLERR,arg[6]); + pressref = force->numeric(FLERR,arg[7]); + + // create a new compute temp style + // id = fix-ID + temp + // compute group = all since pressure is always global (group all) + // and thus its KE/temperature contribution should use group all + + int n = strlen(id) + 6; + id_temp = new char[n]; + strcpy(id_temp,id); + strcat(id_temp,"_temp"); + + char **newarg = new char*[3]; + newarg[0] = id_temp; + newarg[1] = (char *) "all"; + newarg[2] = (char *) "temp"; + modify->add_compute(3,newarg); + delete [] newarg; + tflag = 1; + + // create a new compute pressure style + // id = fix-ID + press, compute group = all + // pass id_temp as 4th arg to pressure constructor + + n = strlen(id) + 7; + id_press = new char[n]; + strcpy(id_press,id); + strcat(id_press,"_press"); + + newarg = new char*[5]; + newarg[0] = id_press; + newarg[1] = (char *) "all"; + newarg[2] = (char *) "pressure/grem"; + newarg[3] = id_temp; + newarg[4] = id; + modify->add_compute(5,newarg); + delete [] newarg; + + // create a new compute ke style + // id = fix-ID + ke + + n = strlen(id) + 8; + id_ke = new char[n]; + strcpy(id_ke,id); + strcat(id_ke,"_ke"); + + newarg = new char*[3]; + newarg[0] = id_ke; + newarg[1] = (char *) "all"; + newarg[2] = (char *) "ke"; + modify->add_compute(3,newarg); + delete [] newarg; + keflag = 1; + + // create a new compute pe style + // id = fix-ID + pe + + n = strlen(id) + 9; + id_pe = new char[n]; + strcpy(id_pe,id); + strcat(id_pe,"_pe"); + + newarg = new char*[3]; + newarg[0] = id_pe; + newarg[1] = (char *) "all"; + newarg[2] = (char *) "pe"; + modify->add_compute(3,newarg); + delete [] newarg; + peflag = 1; + +} + +/* ---------------------------------------------------------------------- */ + +FixGrem::~FixGrem() +{ + // delete temperature, pressure and energies if fix created them + + if (tflag) modify->delete_compute(id_temp); + if (pflag) modify->delete_compute(id_press); + if (keflag) modify->delete_compute(id_ke); + if (peflag) modify->delete_compute(id_pe); + delete [] id_temp; + delete [] id_press; + delete [] id_ke; + delete [] id_pe; + +} + +/* ---------------------------------------------------------------------- */ + +int FixGrem::setmask() +{ + int mask = 0; + mask |= POST_FORCE; + return mask; +} + +/* ---------------------------------------------------------------------- */ + +void FixGrem::init() +{ + + // add check of sign of eta + + // set temperature and pressure ptrs + + int icompute = modify->find_compute(id_temp); + if (icompute < 0) + error->all(FLERR,"Temperature ID for fix scaledforce does not exist"); + temperature = modify->compute[icompute]; + + icompute = modify->find_compute(id_ke); + if (icompute < 0) + error->all(FLERR,"Ke ID for fix scaledforce does not exist"); + ke = modify->compute[icompute]; + + icompute = modify->find_compute(id_pe); + if (icompute < 0) + error->all(FLERR,"Pe ID for fix scaledforce does not exist"); + pe = modify->compute[icompute]; +} + +/* ---------------------------------------------------------------------- */ + +void FixGrem::setup(int vflag) +{ + if (strstr(update->integrate_style,"verlet")) + post_force(vflag); +} + +/* ---------------------------------------------------------------------- */ + +void FixGrem::min_setup(int vflag) +{ + post_force(vflag); +} + +/* ---------------------------------------------------------------------- */ + +void FixGrem::post_force(int vflag) +{ + double **f = atom->f; + int *mask = atom->mask; + int nlocal = atom->nlocal; + + double tmpvolume = domain->xprd * domain->yprd * domain->zprd; + double tmppe = pe->compute_scalar(); + // potential energy + double tmpenthalpy = tmppe+pressref*tmpvolume/(force->nktv2p); + + double teffective = lambda+eta*(tmpenthalpy-h0); + scale_grem = tbath/teffective; + + for (int i = 0; i < nlocal; i++) + if (mask[i] & groupbit) { + f[i][0] *= scale_grem; + f[i][1] *= scale_grem; + f[i][2] *= scale_grem; + } + pe->addstep(update->ntimestep+1); +} + +/* ---------------------------------------------------------------------- + extract scale factor +------------------------------------------------------------------------- */ + +void *FixGrem::extract(const char *str, int &dim) +{ + dim=0; + if (strcmp(str,"scale_grem") == 0) { + return &scale_grem; + } + return NULL; +} diff --git a/src/USER-MISC/fix_grem.h b/src/USER-MISC/fix_grem.h new file mode 100644 index 000000000..e5087436b --- /dev/null +++ b/src/USER-MISC/fix_grem.h @@ -0,0 +1,84 @@ +/* ---------------------------------------------------------------------- + LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator + http://lammps.sandia.gov, Sandia National Laboratories + Steve Plimpton, sjplimp@sandia.gov + + Copyright (2003) Sandia Corporation. Under the terms of Contract + DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains + certain rights in this software. This software is distributed under + the GNU General Public License. + + See the README file in the top-level LAMMPS directory. +------------------------------------------------------------------------- */ + +#ifdef FIX_CLASS + +FixStyle(grem,FixGrem) + +#else + +#ifndef LMP_FIX_GREM_H +#define LMP_FIX_GREM_H + +#include "fix.h" + +namespace LAMMPS_NS { + +class FixGrem : public Fix { + public: + FixGrem(class LAMMPS *, int, char **); + ~FixGrem(); + int setmask(); + void init(); + void setup(int); + void min_setup(int); + void post_force(int); + void *extract(const char *, int &); + double scale_grem; + + private: + double lambda,eta,h0,tbath,pressref; + + protected: + char *id_temp,*id_press,*id_ke,*id_pe; + class Compute *temperature,*pressure,*ke,*pe; + int pflag,tflag,keflag,peflag; + +}; + +} + +#endif +#endif + +/* ERROR/WARNING messages: + +E: Illegal ... command + +Self-explanatory. Check the input script syntax and compare to the +documentation for the command. You can use -echo screen as a +command-line option when running LAMMPS to see the offending line. + +E: Region ID for fix grem does not exist + +Self-explanatory. + +E: Variable name for fix grem does not exist + +Self-explanatory. + +E: Variable for fix grem is invalid style + +Self-explanatory. + +E: Cannot use variable energy with constant force in fix grem + +This is because for constant force, LAMMPS can compute the change +in energy directly. + +E: Must use variable energy with fix grem + +Must define an energy vartiable when applyting a dynamic +force during minimization. + +*/ diff --git a/src/compute_pressure.h b/src/compute_pressure.h index 4ff116837..a59a64e63 100644 --- a/src/compute_pressure.h +++ b/src/compute_pressure.h @@ -1,92 +1,92 @@ /* -*- c++ -*- ---------------------------------------------------------- LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator http://lammps.sandia.gov, Sandia National Laboratories Steve Plimpton, sjplimp@sandia.gov Copyright (2003) Sandia Corporation. Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains certain rights in this software. This software is distributed under the GNU General Public License. See the README file in the top-level LAMMPS directory. ------------------------------------------------------------------------- */ #ifdef COMPUTE_CLASS ComputeStyle(pressure,ComputePressure) #else #ifndef LMP_COMPUTE_PRESSURE_H #define LMP_COMPUTE_PRESSURE_H #include "compute.h" namespace LAMMPS_NS { class ComputePressure : public Compute { public: ComputePressure(class LAMMPS *, int, char **); virtual ~ComputePressure(); - void init(); - double compute_scalar(); - void compute_vector(); + virtual void init(); + virtual double compute_scalar(); + virtual void compute_vector(); void reset_extra_compute_fix(const char *); protected: double boltz,nktv2p,inv_volume; int nvirial,dimension; double **vptr; double *kspace_virial; Compute *temperature; char *id_temp; double virial[6]; int keflag,pairflag,bondflag,angleflag,dihedralflag,improperflag; int fixflag,kspaceflag; void virial_compute(int, int); }; } #endif #endif /* ERROR/WARNING messages: E: Illegal ... command Self-explanatory. Check the input script syntax and compare to the documentation for the command. You can use -echo screen as a command-line option when running LAMMPS to see the offending line. E: Compute pressure must use group all Virial contributions computed by potentials (pair, bond, etc) are computed on all atoms. E: Could not find compute pressure temperature ID The compute ID for calculating temperature does not exist. E: Compute pressure temperature ID does not compute temperature The compute ID assigned to a pressure computation must compute temperature. E: Compute pressure requires temperature ID to include kinetic energy The keflag cannot be used unless a temperature compute is provided. E: Virial was not tallied on needed timestep You are using a thermo keyword that requires potentials to have tallied the virial, but they didn't on this timestep. See the variable doc page for ideas on how to make this work. E: Must use 'kspace_modify pressure/scalar no' for tensor components with kspace_style msm Otherwise MSM will compute only a scalar pressure. See the kspace_modify command for details on this setting. */