From b5b8227902e2c0e1f97ee409494c092ce6487717 Mon Sep 17 00:00:00 2001 From: cschran Date: Wed, 8 Dec 2021 11:49:04 +0000 Subject: [PATCH] Add analytical stress tensor --- src/nnp_acsf.F | 63 ++++- src/nnp_environment.F | 1 + src/nnp_environment_types.F | 3 +- src/nnp_force.F | 35 ++- tests/NNP/regtest-1/H2O-64_C-NNP_MD-NpT.inp | 289 ++++++++++++++++++++ tests/NNP/regtest-1/TEST_FILES | 1 + 6 files changed, 383 insertions(+), 9 deletions(-) create mode 100644 tests/NNP/regtest-1/H2O-64_C-NNP_MD-NpT.inp diff --git a/src/nnp_acsf.F b/src/nnp_acsf.F index a116bf23e9..d10b5e0189 100644 --- a/src/nnp_acsf.F +++ b/src/nnp_acsf.F @@ -51,15 +51,16 @@ CONTAINS !> \param nnp ... !> \param i ... !> \param dsymdxyz ... +!> \param stress ... !> \date 2020-10-10 !> \author Christoph Schran (christoph.schran@rub.de) ! ************************************************************************************************** - SUBROUTINE nnp_calc_acsf(nnp, i, dsymdxyz) + SUBROUTINE nnp_calc_acsf(nnp, i, dsymdxyz, stress) TYPE(nnp_type), INTENT(INOUT), POINTER :: nnp INTEGER, INTENT(IN) :: i REAL(KIND=dp), DIMENSION(:, :, :), INTENT(INOUT), & - OPTIONAL :: dsymdxyz + OPTIONAL :: dsymdxyz, stress CHARACTER(len=*), PARAMETER :: routineN = 'nnp_calc_acsf', routineP = moduleN//':'//routineN @@ -105,6 +106,11 @@ CONTAINS dsymdxyz(l, m, i) = dsymdxyz(l, m, i) + forcetmp(l, sf) dsymdxyz(l, m, jj) = dsymdxyz(l, m, jj) - forcetmp(l, sf) END DO + IF (PRESENT(stress)) THEN + DO l = 1, 3 + stress(:, l, m) = stress(:, l, m) + rvect1(:)*forcetmp(l, sf) + END DO + END IF nnp%rad(ind)%y(m) = nnp%rad(ind)%y(m) + symtmp(sf) END DO END DO @@ -144,6 +150,12 @@ CONTAINS dsymdxyz(l, m, kk) = dsymdxyz(l, m, kk) & + force3tmp(l, 3, sf) END DO + IF (PRESENT(stress)) THEN + DO l = 1, 3 + stress(:, l, m) = stress(:, l, m) - rvect1(:)*force3tmp(l, 2, sf) + stress(:, l, m) = stress(:, l, m) - rvect2(:)*force3tmp(l, 3, sf) + END DO + END IF nnp%ang(ind)%y(m - off) = nnp%ang(ind)%y(m - off) + symtmp(sf) END DO END IF @@ -177,6 +189,12 @@ CONTAINS dsymdxyz(l, m, kk) = dsymdxyz(l, m, kk) & + force3tmp(l, 3, sf) END DO + IF (PRESENT(stress)) THEN + DO l = 1, 3 + stress(:, l, m) = stress(:, l, m) - rvect1(:)*force3tmp(l, 2, sf) + stress(:, l, m) = stress(:, l, m) - rvect2(:)*force3tmp(l, 3, sf) + END DO + END IF nnp%ang(ind)%y(m - off) = nnp%ang(ind)%y(m - off) + symtmp(sf) END DO END IF @@ -259,7 +277,11 @@ CONTAINS CALL nnp_check_extrapolation(nnp, ind) IF (PRESENT(dsymdxyz)) THEN - CALL nnp_scale_acsf(nnp, ind, dsymdxyz) + IF (PRESENT(stress)) THEN + CALL nnp_scale_acsf(nnp, ind, dsymdxyz, stress) + ELSE + CALL nnp_scale_acsf(nnp, ind, dsymdxyz) + END IF ELSE CALL nnp_scale_acsf(nnp, ind) END IF @@ -316,15 +338,16 @@ CONTAINS !> \param nnp ... !> \param ind ... !> \param dsymdxyz ... +!> \param stress ... !> \date 2020-10-10 !> \author Christoph Schran (christoph.schran@rub.de) ! ************************************************************************************************** - SUBROUTINE nnp_scale_acsf(nnp, ind, dsymdxyz) + SUBROUTINE nnp_scale_acsf(nnp, ind, dsymdxyz, stress) TYPE(nnp_type), INTENT(INOUT) :: nnp INTEGER, INTENT(IN) :: ind REAL(KIND=dp), DIMENSION(:, :, :), INTENT(OUT), & - OPTIONAL :: dsymdxyz + OPTIONAL :: dsymdxyz, stress INTEGER :: j, k, off @@ -430,6 +453,36 @@ CONTAINS END IF END IF + IF (PRESENT(stress)) THEN + IF (nnp%scale_acsf) THEN + DO j = 1, nnp%n_rad(ind) + stress(:, :, j) = stress(:, :, j)/ & + (nnp%rad(ind)%loc_max(j) - & + nnp%rad(ind)%loc_min(j))* & + (nnp%scmax - nnp%scmin) + END DO + off = nnp%n_rad(ind) + DO j = 1, nnp%n_ang(ind) + stress(:, :, j + off) = stress(:, :, j + off)/ & + (nnp%ang(ind)%loc_max(j) - & + nnp%ang(ind)%loc_min(j))* & + (nnp%scmax - nnp%scmin) + END DO + ELSE IF (nnp%scale_sigma_acsf) THEN + DO j = 1, nnp%n_rad(ind) + stress(:, :, j) = stress(:, :, j)/ & + nnp%rad(ind)%sigma(j)* & + (nnp%scmax - nnp%scmin) + END DO + off = nnp%n_rad(ind) + DO j = 1, nnp%n_ang(ind) + stress(:, :, j + off) = stress(:, :, j + off)/ & + nnp%ang(ind)%sigma(j)* & + (nnp%scmax - nnp%scmin) + END DO + END IF + END IF + END SUBROUTINE nnp_scale_acsf ! ************************************************************************************************** diff --git a/src/nnp_environment.F b/src/nnp_environment.F index 1af809da6b..9ce44ebc6c 100644 --- a/src/nnp_environment.F +++ b/src/nnp_environment.F @@ -287,6 +287,7 @@ CONTAINS ALLOCATE (nnp_env%committee_energy(nnp_env%n_committee)) ALLOCATE (nnp_env%myforce(3, nnp_env%num_atoms, nnp_env%n_committee)) ALLOCATE (nnp_env%committee_forces(3, nnp_env%num_atoms, nnp_env%n_committee)) + ALLOCATE (nnp_env%committee_stress(3, 3, nnp_env%n_committee)) CALL section_vals_val_get(nnp_env%nnp_input, "NNP_INPUT_FILE_NAME", c_val=file_name) CALL parser_create(parser, file_name, para_env=logger%para_env) diff --git a/src/nnp_environment_types.F b/src/nnp_environment_types.F index 68cbe89f92..a32766f170 100644 --- a/src/nnp_environment_types.F +++ b/src/nnp_environment_types.F @@ -119,7 +119,7 @@ MODULE nnp_environment_types INTEGER, ALLOCATABLE, DIMENSION(:) :: ele_ind, nuc_atoms, sort, sort_inv REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :) :: coord REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :) :: myforce - REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :) :: committee_forces + REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :) :: committee_forces, committee_stress CHARACTER(len=default_string_length), & ALLOCATABLE, DIMENSION(:) :: atoms REAL(KIND=dp), DIMENSION(:, :), ALLOCATABLE :: nnp_forces @@ -413,6 +413,7 @@ CONTAINS IF (ALLOCATED(nnp_env%coord)) DEALLOCATE (nnp_env%coord) IF (ALLOCATED(nnp_env%myforce)) DEALLOCATE (nnp_env%myforce) IF (ALLOCATED(nnp_env%committee_forces)) DEALLOCATE (nnp_env%committee_forces) + IF (ALLOCATED(nnp_env%committee_stress)) DEALLOCATE (nnp_env%committee_stress) IF (ALLOCATED(nnp_env%atoms)) DEALLOCATE (nnp_env%atoms) IF (ALLOCATED(nnp_env%nnp_forces)) DEALLOCATE (nnp_env%nnp_forces) diff --git a/src/nnp_force.F b/src/nnp_force.F index 347b3a2239..4bfd5475be 100644 --- a/src/nnp_force.F +++ b/src/nnp_force.F @@ -19,7 +19,8 @@ MODULE nnp_force cp_print_key_finished_output,& cp_print_key_should_output,& cp_print_key_unit_nr - USE cp_subsys_types, ONLY: cp_subsys_type + USE cp_subsys_types, ONLY: cp_subsys_get,& + cp_subsys_type USE cp_units, ONLY: cp_unit_from_cp2k USE distribution_1d_types, ONLY: distribution_1d_type USE input_section_types, ONLY: section_vals_get_subs_vals,& @@ -38,6 +39,7 @@ MODULE nnp_force USE particle_types, ONLY: particle_type USE periodic_table, ONLY: get_ptable_info USE physcon, ONLY: angstrom + USE virial_types, ONLY: virial_type #include "./base/base_uses.f90" IMPLICIT NONE @@ -68,14 +70,16 @@ CONTAINS INTEGER :: handle, i, i_com, ig, ind, istart, j, k, & m, mecalc INTEGER, ALLOCATABLE, DIMENSION(:) :: allcalc + LOGICAL :: calc_stress REAL(KIND=dp), ALLOCATABLE, DIMENSION(:) :: denergydsym - REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :) :: dsymdxyz + REAL(KIND=dp), ALLOCATABLE, DIMENSION(:, :, :) :: dsymdxyz, stress TYPE(atomic_kind_type), DIMENSION(:), POINTER :: atomic_kind_set TYPE(cp_logger_type), POINTER :: logger TYPE(cp_subsys_type), POINTER :: subsys TYPE(distribution_1d_type), POINTER :: local_particles TYPE(particle_type), DIMENSION(:), POINTER :: particle_set TYPE(section_vals_type), POINTER :: print_section + TYPE(virial_type), POINTER :: virial CALL timeset(routineN, handle) @@ -88,10 +92,17 @@ CONTAINS subsys=subsys, local_particles=local_particles, & atomic_kind_set=atomic_kind_set) + CALL cp_subsys_get(subsys, & + virial=virial) + + calc_stress = virial%pv_availability .AND. (.NOT. virial%pv_numer) + IF (calc_stress .AND. .NOT. calc_forces) CPABORT('Stress cannot be calculated without forces') + ! Initialize energy and gradient: nnp%atomic_energy(:, :) = 0.0_dp IF (calc_forces) nnp%myforce(:, :, :) = 0.0_dp IF (calc_forces) nnp%committee_forces(:, :, :) = 0.0_dp + IF (calc_stress) nnp%committee_stress(:, :, :) = 0.0_dp !fill coord array ig = 1 @@ -138,7 +149,13 @@ CONTAINS nnp%arc(ind)%layer(1)%node_grad(:) = 0.0_dp ALLOCATE (dsymdxyz(3, nnp%arc(ind)%n_nodes(1), nnp%num_atoms)) dsymdxyz(:, :, :) = 0.0_dp - CALL nnp_calc_acsf(nnp, i, dsymdxyz) + IF (calc_stress) THEN + ALLOCATE (stress(3, 3, nnp%arc(ind)%n_nodes(1))) + stress(:, :, :) = 0.0_dp + CALL nnp_calc_acsf(nnp, i, dsymdxyz, stress) + ELSE + CALL nnp_calc_acsf(nnp, i, dsymdxyz) + END IF ELSE CALL nnp_calc_acsf(nnp, i) END IF @@ -160,6 +177,10 @@ CONTAINS nnp%myforce(m, k, i_com) = nnp%myforce(m, k, i_com) - denergydsym(j)*dsymdxyz(m, j, k) END DO END DO + IF (calc_stress) THEN + nnp%committee_stress(:, :, i_com) = nnp%committee_stress(:, :, i_com) - & + denergydsym(j)*stress(:, :, j) + END IF END DO DEALLOCATE (denergydsym) END IF @@ -168,6 +189,9 @@ CONTAINS !deallocate memory IF (calc_forces) THEN DEALLOCATE (dsymdxyz) + IF (calc_stress) THEN + DEALLOCATE (stress) + END IF END IF END DO ! loop over num_atoms @@ -191,6 +215,11 @@ CONTAINS END DO END IF + IF (calc_stress) THEN + CALL mp_sum(nnp%committee_stress, logger%para_env%group) + virial%pv_virial = SUM(nnp%committee_stress, DIM=3)/REAL(nnp%n_committee, dp) + END IF + ! Bias the standard deviation of committee disagreement IF (nnp%bias) THEN CALL nnp_bias_sigma(nnp, calc_forces) diff --git a/tests/NNP/regtest-1/H2O-64_C-NNP_MD-NpT.inp b/tests/NNP/regtest-1/H2O-64_C-NNP_MD-NpT.inp new file mode 100644 index 0000000000..c5a614acc8 --- /dev/null +++ b/tests/NNP/regtest-1/H2O-64_C-NNP_MD-NpT.inp @@ -0,0 +1,289 @@ +&GLOBAL + PROJECT H2O-64_C-NNP_MD-NpT + RUN_TYPE MD + PRINT_LEVEL LOW +&END GLOBAL + +&FORCE_EVAL + METHOD NNP + STRESS_TENSOR ANALYTICAL + &NNP + NNP_INPUT_FILE_NAME NNP/bulkH2O-jcp2020-cnnp/nnp-1/input.nn + SCALE_FILE_NAME NNP/bulkH2O-jcp2020-cnnp/nnp-1/scaling.data + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-1/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-2/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-3/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-4/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-5/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-6/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-7/weights + &END MODEL + &MODEL + WEIGHTS NNP/bulkH2O-jcp2020-cnnp/nnp-8/weights + &END MODEL + &PRINT + &FORCES_SIGMA + &EACH + MD 1 + &END EACH + &END FORCES_SIGMA + &FORCES + &EACH + MD 1 + &END EACH + &END FORCES + &ENERGIES + &EACH + MD 1 + &END EACH + &END ENERGIES + &END PRINT + &END NNP + &SUBSYS + &COORD + O 1.78547e+01 1.48936e+01 4.30373e+00 + H 1.88171e+01 1.48191e+01 4.30668e+00 + H 1.76046e+01 1.40681e+01 4.71635e+00 + O 5.08473e+00 -2.09187e+00 -1.25202e+01 + H 5.79642e+00 -1.44510e+00 -1.27056e+01 + H 5.42957e+00 -2.91898e+00 -1.21944e+01 + O 4.02996e+00 7.60544e+00 -3.68524e+00 + H 4.27003e+00 6.94768e+00 -4.41446e+00 + H 4.77458e+00 8.28889e+00 -3.67208e+00 + O -1.22265e+01 1.88922e+01 1.22586e+01 + H -1.30864e+01 1.91960e+01 1.25589e+01 + H -1.24514e+01 1.85998e+01 1.13819e+01 + O 1.36461e+00 4.68750e+00 1.60747e+01 + H 7.72200e-01 5.33188e+00 1.57089e+01 + H 9.29141e-01 4.08655e+00 1.67302e+01 + O -3.42189e+00 3.99641e+00 1.25722e+01 + H -2.47934e+00 4.05205e+00 1.23867e+01 + H -3.57781e+00 4.18579e+00 1.34994e+01 + O -1.24581e+01 5.26919e+00 -2.78020e+00 + H -1.16741e+01 4.62996e+00 -2.73820e+00 + H -1.31545e+01 4.83976e+00 -3.28648e+00 + O -1.28746e+01 1.42299e+01 1.09750e+01 + H -1.24085e+01 1.34881e+01 1.12941e+01 + H -1.21702e+01 1.49231e+01 1.07995e+01 + O 1.62166e+01 1.09216e+01 2.09580e+00 + H 1.57766e+01 1.01531e+01 2.51719e+00 + H 1.67008e+01 1.05417e+01 1.31827e+00 + O 1.01736e+01 1.29294e+01 3.09205e+00 + H 1.07736e+01 1.26309e+01 3.73607e+00 + H 9.56179e+00 1.21322e+01 2.94022e+00 + O 7.77605e+00 4.98249e+00 -2.29855e+00 + H 8.07228e+00 4.60108e+00 -1.47153e+00 + H 6.99714e+00 5.40667e+00 -2.04022e+00 + O 1.45828e+01 2.43851e+00 2.33359e+00 + H 1.38598e+01 2.38788e+00 1.70989e+00 + H 1.44095e+01 3.36726e+00 2.62982e+00 + O -6.66475e+00 9.71604e+00 2.17394e+01 + H -6.28708e+00 1.01763e+01 2.09149e+01 + H -5.93185e+00 9.37252e+00 2.22292e+01 + O 1.00730e+00 7.62893e+00 -3.71784e+00 + H 1.95122e+00 7.70838e+00 -3.49284e+00 + H 7.82096e-01 6.70589e+00 -3.39957e+00 + O -2.00359e+00 8.81074e+00 4.64761e+00 + H -2.33580e+00 9.40933e+00 3.96349e+00 + H -1.02960e+00 8.88476e+00 4.52207e+00 + O 1.22512e+01 1.02395e+01 9.10079e+00 + H 1.26698e+01 1.09565e+01 8.67039e+00 + H 1.27142e+01 9.38279e+00 8.86118e+00 + O -2.44413e-01 1.58435e+01 1.32546e+01 + H 4.70418e-03 1.66272e+01 1.27534e+01 + H -4.22892e-01 1.52262e+01 1.25256e+01 + O 1.72535e+01 -6.21439e+00 1.89575e+01 + H 1.72624e+01 -7.18011e+00 1.89259e+01 + H 1.64465e+01 -5.96877e+00 1.85268e+01 + O 1.57232e+00 8.55013e+00 3.48535e+00 + H 1.78649e+00 8.35399e+00 4.39869e+00 + H 9.16331e-01 7.79040e+00 3.31060e+00 + O 9.73687e+00 1.05344e+01 -1.23350e+01 + H 9.33966e+00 1.14367e+01 -1.23735e+01 + H 1.07177e+01 1.06235e+01 -1.25126e+01 + O 3.19186e+00 -1.70399e+00 6.69143e+00 + H 2.64086e+00 -9.10809e-01 6.70096e+00 + H 3.29213e+00 -1.99342e+00 7.64120e+00 + O 5.01286e+00 3.41556e+00 7.01155e+00 + H 5.25540e+00 3.30163e+00 7.95343e+00 + H 5.82406e+00 3.47012e+00 6.52344e+00 + O 1.62156e+01 -8.66637e-01 -2.85105e+00 + H 1.70564e+01 -1.46010e+00 -2.85949e+00 + H 1.58233e+01 -9.45766e-01 -1.95729e+00 + O 1.83924e+01 1.54523e+01 9.37872e+00 + H 1.77021e+01 1.55025e+01 1.00248e+01 + H 1.90378e+01 1.61722e+01 9.59111e+00 + O 1.24374e+01 -8.71873e+00 -6.55194e+00 + H 1.32456e+01 -9.18214e+00 -6.25474e+00 + H 1.17443e+01 -9.43587e+00 -6.45253e+00 + O -2.12768e+00 -4.80632e+00 1.36396e+01 + H -1.96159e+00 -3.92263e+00 1.32748e+01 + H -3.14023e+00 -4.92484e+00 1.35854e+01 + O 5.47695e+00 -1.27886e+01 1.81295e+01 + H 6.04948e+00 -1.29269e+01 1.88822e+01 + H 4.74944e+00 -1.34313e+01 1.82705e+01 + O 9.06380e+00 1.35284e+01 1.29268e+01 + H 9.07296e+00 1.44234e+01 1.26473e+01 + H 9.45712e+00 1.34905e+01 1.38276e+01 + O 6.54756e+00 -1.19597e+01 1.23068e+01 + H 5.90365e+00 -1.14874e+01 1.28455e+01 + H 7.46789e+00 -1.16610e+01 1.25290e+01 + O -3.25432e+00 -2.19516e+00 1.51833e+01 + H -3.21119e+00 -2.38945e+00 1.42337e+01 + H -4.18029e+00 -2.00474e+00 1.54965e+01 + O 1.91612e+01 2.06427e+01 4.17300e+00 + H 1.82599e+01 2.04221e+01 4.00929e+00 + H 1.91792e+01 2.15952e+01 4.03867e+00 + O 1.66290e+01 4.75612e+00 3.61679e+00 + H 1.74165e+01 4.29018e+00 3.87743e+00 + H 1.59040e+01 4.43119e+00 4.10392e+00 + O -1.44686e+01 1.26932e+00 -6.11559e+00 + H -1.39041e+01 5.86834e-01 -6.47353e+00 + H -1.47800e+01 1.12280e+00 -5.19548e+00 + O 2.42216e+00 1.29159e+01 4.10819e+00 + H 1.94154e+00 1.35142e+01 3.57260e+00 + H 2.79204e+00 1.23487e+01 3.45220e+00 + O 1.73061e+01 1.46385e+01 1.43734e+00 + H 1.63960e+01 1.47548e+01 1.71543e+00 + H 1.76820e+01 1.46746e+01 2.27931e+00 + O 3.42317e+00 1.38776e+01 8.37823e+00 + H 4.23289e+00 1.39700e+01 7.90067e+00 + H 3.52615e+00 1.31451e+01 8.97284e+00 + O -4.91217e+00 2.36164e+01 2.01281e+01 + H -4.02584e+00 2.34706e+01 1.97583e+01 + H -4.83605e+00 2.41434e+01 2.09762e+01 + O 2.03093e+01 8.75645e+00 -1.55507e+00 + H 2.10323e+01 9.38853e+00 -1.42815e+00 + H 2.04404e+01 8.12820e+00 -2.30558e+00 + O 1.76327e+01 6.21611e+00 -1.45303e+00 + H 1.71851e+01 6.65247e+00 -2.18930e+00 + H 1.75960e+01 6.94078e+00 -7.72611e-01 + O -1.18565e+01 -3.09341e+00 6.38427e+00 + H -1.19187e+01 -3.99992e+00 6.73656e+00 + H -1.09607e+01 -2.82121e+00 6.56532e+00 + O 1.43422e+01 -5.83286e+00 5.75163e+00 + H 1.42072e+01 -6.54550e+00 5.13562e+00 + H 1.40520e+01 -6.07263e+00 6.61672e+00 + O -1.09658e+00 6.20827e+00 5.58702e+00 + H -2.04987e+00 5.94104e+00 5.55373e+00 + H -6.82508e-01 5.41005e+00 5.89003e+00 + O 8.13776e+00 2.00921e+00 1.68148e+01 + H 8.76908e+00 1.47311e+00 1.62659e+01 + H 8.54559e+00 2.38894e+00 1.76389e+01 + O 5.85530e-02 -5.94011e-01 1.74546e+01 + H 9.62140e-01 -3.14517e-01 1.72799e+01 + H 8.96428e-02 -1.51268e+00 1.77940e+01 + O 2.76735e+01 6.07294e-01 1.20603e+01 + H 2.83472e+01 7.61041e-01 1.26958e+01 + H 2.71949e+01 -1.57857e-01 1.24586e+01 + O 9.89541e+00 -7.95756e+00 8.17742e+00 + H 9.62897e+00 -8.79966e+00 8.58524e+00 + H 9.28724e+00 -7.36014e+00 8.69880e+00 + O -4.41370e+00 2.01893e+01 8.05879e+00 + H -3.76101e+00 2.08195e+01 7.70885e+00 + H -4.49934e+00 1.95070e+01 7.38700e+00 + O 1.69978e+01 3.63080e+00 1.16373e+01 + H 1.73181e+01 3.30370e+00 1.25129e+01 + H 1.70855e+01 4.57727e+00 1.16857e+01 + O 6.48319e+00 1.09264e+01 3.40103e+00 + H 5.63763e+00 1.09926e+01 2.85932e+00 + H 6.32943e+00 1.16692e+01 4.05745e+00 + O 4.49883e+00 7.78536e+00 1.31436e+01 + H 3.57897e+00 7.92015e+00 1.28978e+01 + H 4.40785e+00 7.58602e+00 1.41304e+01 + O 2.23801e+01 -2.58249e+00 1.98136e+01 + H 2.25024e+01 -2.69404e+00 1.88603e+01 + H 2.32700e+01 -2.40926e+00 2.01391e+01 + O 7.60549e+00 2.01167e+01 1.52318e+00 + H 7.40576e+00 2.04479e+01 2.44617e+00 + H 6.89393e+00 1.95406e+01 1.16986e+00 + O -9.80851e+00 1.51818e+01 5.82547e+00 + H -8.98420e+00 1.54916e+01 6.23087e+00 + H -9.53181e+00 1.46114e+01 5.10912e+00 + O 1.89878e+00 3.39080e+00 9.95468e+00 + H 2.53193e+00 3.64424e+00 1.06749e+01 + H 2.50766e+00 2.74971e+00 9.48478e+00 + O 9.54794e+00 1.39595e+01 -3.42910e+00 + H 8.80101e+00 1.35453e+01 -2.93926e+00 + H 1.02792e+01 1.39828e+01 -2.79475e+00 + O -3.92553e+00 -7.74473e+00 -9.61729e+00 + H -3.86420e+00 -6.99741e+00 -8.98787e+00 + H -3.75817e+00 -8.54726e+00 -9.04343e+00 + O 4.40924e-01 1.07127e+01 1.20586e+01 + H 8.39311e-01 9.90666e+00 1.24284e+01 + H 3.58876e-01 1.05758e+01 1.11107e+01 + O 1.21277e+01 6.70656e+00 3.12351e+00 + H 1.18665e+01 6.60036e+00 4.03971e+00 + H 1.13586e+01 6.98032e+00 2.60943e+00 + O 2.64855e+01 8.45521e+00 -1.18313e+01 + H 2.64488e+01 8.37541e+00 -1.08669e+01 + H 2.59151e+01 7.70284e+00 -1.22222e+01 + O 8.76592e+00 6.61206e+00 4.83144e+00 + H 9.47545e+00 7.33383e+00 4.67087e+00 + H 7.97602e+00 7.11755e+00 4.74199e+00 + O -4.62340e+00 1.64770e+01 6.19871e+00 + H -3.86477e+00 1.63481e+01 6.84392e+00 + H -4.32266e+00 1.73531e+01 5.96346e+00 + O 1.34005e+01 1.83837e-01 -4.66240e+00 + H 1.42490e+01 6.28182e-01 -4.64394e+00 + H 1.29981e+01 4.69258e-01 -5.47766e+00 + O 4.34821e+00 7.30338e+00 3.29043e+00 + H 3.53537e+00 7.62296e+00 3.70824e+00 + H 4.26206e+00 6.32561e+00 3.39956e+00 + O 1.95906e+01 -1.17755e+01 2.21130e+01 + H 1.93794e+01 -1.16587e+01 2.30772e+01 + H 1.92405e+01 -1.09217e+01 2.17462e+01 + &END COORD + &CELL + ABC [angstrom] 12.42 12.42 12.42 + PERIODIC XYZ + &END CELL + &END SUBSYS +&END FORCE_EVAL + +&MOTION + &MD + ENSEMBLE NPT_F + STEPS 10 + TIMESTEP 0.5 + TEMPERATURE 300 + &THERMOSTAT + TYPE CSVR + REGION GLOBAL + &CSVR + TIMECON 30.00 + &END CSVR + &END THERMOSTAT + &BAROSTAT + PRESSURE 1 + &END BAROSTAT + &PRINT + FORCE_LAST + &ENERGY + &EACH + MD 1 + &END EACH + &END ENERGY + &END PRINT + &END MD + &PRINT + &TRAJECTORY + &EACH + MD 1 + &END EACH + &END TRAJECTORY + &END PRINT +&END MOTION diff --git a/tests/NNP/regtest-1/TEST_FILES b/tests/NNP/regtest-1/TEST_FILES index ab8d6775bd..58389f9366 100644 --- a/tests/NNP/regtest-1/TEST_FILES +++ b/tests/NNP/regtest-1/TEST_FILES @@ -4,6 +4,7 @@ H2O-64_NNP_MD.inp 2 1.0E-14 0.375124218267E+04 H2O_C-NNP_MD.inp 2 1.0E-14 0.586488095231E+02 H2O-64_C-NNP_MD.inp 2 1.0E-14 0.375124235844E+04 +H2O-64_C-NNP_MD-NpT.inp 2 1.0E-14 0.375126784023E+04 H2O-64_C-NNP_MD-NpT-numeric.inp 2 1.0E-14 0.375124841615E+04 H2O-64_C-NNP_biased_MD.inp 2 1.0E-14 0.375124232248E+04 H2O-64_C-NNP_biased_MD_restart.inp 2 1.0E-14 0.375124124406E+04