690 NAMD_bug(
"PmePencilZ::submitReductions, pmeKSpaceCompute not initialized");
697 double energy_F = energy;
707 scale1 = elecLambdaUp;
708 scale2 = elecLambda2Up;
716 scale1 = elecLambdaDown;
717 scale2 = elecLambda2Down;
725 scale1 = 1.0 - elecLambdaUp;
726 scale2 = 1.0 - elecLambda2Up;
734 scale1 = 1.0 - elecLambdaDown;
735 scale2 = 1.0 - elecLambda2Down;
745 scale1 = -1.0 * (elecLambdaUp + elecLambdaDown - 1.0);
746 scale2 = -1.0 * (elecLambda2Up + elecLambda2Down - 1.0);
752 for (
size_t i = 0; i < 9; ++i) {
755 #if NODEGROUP_FORCE_REGISTER 761 double energy_TI_1 = 0.0;
762 double energy_TI_2 = 0.0;
768 scale1 = elecLambdaUp;
769 energy_TI_1 = energy;
775 scale1 = elecLambdaDown;
776 energy_TI_2 = energy;
782 scale1 = 1.0 - elecLambdaUp;
783 energy_TI_1 = -1.0 * energy;
789 scale1 = 1.0 - elecLambdaDown;
790 energy_TI_2 = -1.0 * energy;
797 scale1 = -1.0 * (elecLambdaUp + elecLambdaDown - 1.0);
798 energy_TI_1 = -1.0 * energy;
799 energy_TI_2 = -1.0 * energy;
804 #if NODEGROUP_FORCE_REGISTER 812 #ifdef NODEGROUP_FORCE_REGISTER 816 nodeReduction->item(REDUCTION_VIRIAL_SLOW_XX) += virial[0];
817 nodeReduction->item(REDUCTION_VIRIAL_SLOW_XY) += virial[1];
818 nodeReduction->item(REDUCTION_VIRIAL_SLOW_XZ) += virial[2];
819 nodeReduction->item(REDUCTION_VIRIAL_SLOW_YX) += virial[3];
820 nodeReduction->item(REDUCTION_VIRIAL_SLOW_YY) += virial[4];
821 nodeReduction->item(REDUCTION_VIRIAL_SLOW_YZ) += virial[5];
822 nodeReduction->item(REDUCTION_VIRIAL_SLOW_ZX) += virial[6];
823 nodeReduction->item(REDUCTION_VIRIAL_SLOW_ZY) += virial[7];
824 nodeReduction->item(REDUCTION_VIRIAL_SLOW_ZZ) += virial[8];
827 reduction->
item(REDUCTION_VIRIAL_SLOW_XX) += virial[0];
828 reduction->
item(REDUCTION_VIRIAL_SLOW_XY) += virial[1];
829 reduction->
item(REDUCTION_VIRIAL_SLOW_XZ) += virial[2];
830 reduction->
item(REDUCTION_VIRIAL_SLOW_YX) += virial[3];
831 reduction->
item(REDUCTION_VIRIAL_SLOW_YY) += virial[4];
832 reduction->
item(REDUCTION_VIRIAL_SLOW_YZ) += virial[5];
833 reduction->
item(REDUCTION_VIRIAL_SLOW_ZX) += virial[6];
834 reduction->
item(REDUCTION_VIRIAL_SLOW_ZY) += virial[7];
835 reduction->
item(REDUCTION_VIRIAL_SLOW_ZZ) += virial[8];
839 bool ready_to_submit =
true;
844 if (ready_to_submit) {
std::array< PmeKSpaceCompute *, NUM_GRID_MAX > pmeKSpaceComputes
SimParameters * simParameters
const unsigned int NUM_GRID_MAX
void NAMD_bug(const char *err_msg)
std::array< int, NUM_GRID_MAX > energyReady