55 |
|
#include "primitives/Molecule.hpp" |
56 |
|
#include "primitives/StuntDouble.hpp" |
57 |
|
#include "UseTheForce/fCutoffPolicy.h" |
58 |
– |
#include "UseTheForce/DarkSide/fElectrostaticSummationMethod.h" |
59 |
– |
#include "UseTheForce/DarkSide/fElectrostaticScreeningMethod.h" |
58 |
|
#include "UseTheForce/DarkSide/fSwitchingFunctionType.h" |
59 |
|
#include "UseTheForce/doForces_interface.h" |
60 |
|
#include "UseTheForce/DarkSide/neighborLists_interface.h" |
63 |
– |
#include "UseTheForce/DarkSide/electrostatic_interface.h" |
61 |
|
#include "UseTheForce/DarkSide/switcheroo_interface.h" |
62 |
|
#include "utils/MemoryUtils.hpp" |
63 |
|
#include "utils/simError.h" |
762 |
|
useSP = 0; |
763 |
|
useBoxDipole = 0; |
764 |
|
|
768 |
– |
|
765 |
|
if (simParams_->haveElectrostaticSummationMethod()) { |
766 |
|
std::string myMethod = simParams_->getElectrostaticSummationMethod(); |
767 |
|
toUpper(myMethod); |
861 |
|
MPI_Allreduce(&temp, &useAtomicVirial_, 1, MPI_INT, MPI_LOR, MPI_COMM_WORLD); |
862 |
|
|
863 |
|
#endif |
868 |
– |
|
864 |
|
fInfo_.SIM_uses_PBC = usePBC; |
865 |
|
fInfo_.SIM_uses_DirectionalAtoms = useDirectionalAtom; |
866 |
|
fInfo_.SIM_uses_LennardJones = useLennardJones; |
1143 |
|
if (simParams_->haveElectrostaticSummationMethod()) { |
1144 |
|
std::string myMethod = simParams_->getElectrostaticSummationMethod(); |
1145 |
|
toUpper(myMethod); |
1146 |
< |
|
1147 |
< |
// For the time being, we're tethering the LJ shifted behavior to the |
1148 |
< |
// electrostaticSummationMethod keyword options |
1146 |
> |
|
1147 |
> |
// For the time being, we're tethering the LJ shifted behavior to the |
1148 |
> |
// electrostaticSummationMethod keyword options |
1149 |
|
if (myMethod == "SHIFTED_POTENTIAL") { |
1150 |
|
ljsp_ = 1; |
1151 |
|
} else if (myMethod == "SHIFTED_FORCE") { |
1175 |
|
rsw_ = 0.85 * rcut_; |
1176 |
|
} |
1177 |
|
|
1178 |
+ |
Electrostatic::setElectrostaticCutoffRadius(rcut_, rsw_); |
1179 |
|
notifyFortranCutoffs(&rcut_, &rsw_, &ljsp_, &ljsf_); |
1180 |
|
|
1181 |
|
} else { |
1191 |
|
void SimInfo::setupElectrostaticSummationMethod( int isError ) { |
1192 |
|
|
1193 |
|
int errorOut; |
1194 |
< |
int esm = NONE; |
1195 |
< |
int sm = UNDAMPED; |
1194 |
> |
ElectrostaticSummationMethod esm = NONE; |
1195 |
> |
ElectrostaticScreeningMethod sm = UNDAMPED; |
1196 |
|
RealType alphaVal; |
1197 |
|
RealType dielectric; |
1198 |
|
|
1279 |
|
} |
1280 |
|
} |
1281 |
|
|
1282 |
< |
// let's pass some summation method variables to fortran |
1283 |
< |
setElectrostaticSummationMethod( &esm ); |
1284 |
< |
setFortranElectrostaticMethod( &esm ); |
1285 |
< |
setScreeningMethod( &sm ); |
1286 |
< |
setDampingAlpha( &alphaVal ); |
1291 |
< |
setReactionFieldDielectric( &dielectric ); |
1282 |
> |
|
1283 |
> |
Electrostatic::setElectrostaticSummationMethod( esm ); |
1284 |
> |
Electrostatic::setElectrostaticScreeningMethod( sm ); |
1285 |
> |
Electrostatic::setDampingAlpha( alphaVal ); |
1286 |
> |
Electrostatic::setReactionFieldDielectric( dielectric ); |
1287 |
|
initFortranFF( &errorOut ); |
1288 |
|
} |
1289 |
|
|
1470 |
|
|
1471 |
|
|
1472 |
|
[ Ixx -Ixy -Ixz ] |
1473 |
< |
J =| -Iyx Iyy -Iyz | |
1473 |
> |
J =| -Iyx Iyy -Iyz | |
1474 |
|
[ -Izx -Iyz Izz ] |
1475 |
|
*/ |
1476 |
|
|