Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
tsoc
openmm
Commits
9b6e8314
Commit
9b6e8314
authored
Dec 21, 2012
by
Peter Eastman
Browse files
Renamed a misnamed method in AmoebaMultipoleForce
parent
dcc334a9
Changes
9
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
67 additions
and
67 deletions
+67
-67
plugins/amoeba/openmmapi/include/openmm/AmoebaMultipoleForce.h
...ns/amoeba/openmmapi/include/openmm/AmoebaMultipoleForce.h
+1
-1
plugins/amoeba/openmmapi/src/AmoebaMultipoleForce.cpp
plugins/amoeba/openmmapi/src/AmoebaMultipoleForce.cpp
+1
-1
plugins/amoeba/platforms/cuda/tests/TestCudaAmoebaGeneralizedKirkwoodForce.cpp
...rms/cuda/tests/TestCudaAmoebaGeneralizedKirkwoodForce.cpp
+9
-9
plugins/amoeba/platforms/cuda/tests/TestCudaAmoebaMultipoleForce.cpp
...eba/platforms/cuda/tests/TestCudaAmoebaMultipoleForce.cpp
+22
-22
plugins/amoeba/platforms/reference/tests/TestReferenceAmoebaGeneralizedKirkwoodForce.cpp
...nce/tests/TestReferenceAmoebaGeneralizedKirkwoodForce.cpp
+9
-9
plugins/amoeba/platforms/reference/tests/TestReferenceAmoebaMultipoleForce.cpp
...rms/reference/tests/TestReferenceAmoebaMultipoleForce.cpp
+22
-22
plugins/amoeba/serialization/src/AmoebaMultipoleForceProxy.cpp
...ns/amoeba/serialization/src/AmoebaMultipoleForceProxy.cpp
+1
-1
plugins/amoeba/serialization/tests/TestSerializeAmoebaMultipoleForce.cpp
...serialization/tests/TestSerializeAmoebaMultipoleForce.cpp
+1
-1
wrappers/python/simtk/openmm/app/forcefield.py
wrappers/python/simtk/openmm/app/forcefield.py
+1
-1
No files found.
plugins/amoeba/openmmapi/include/openmm/AmoebaMultipoleForce.h
View file @
9b6e8314
...
...
@@ -191,7 +191,7 @@ public:
*
* @return the index of the particle that was added
*/
int
add
Partic
le
(
double
charge
,
const
std
::
vector
<
double
>&
molecularDipole
,
const
std
::
vector
<
double
>&
molecularQuadrupole
,
int
axisType
,
int
add
Multipo
le
(
double
charge
,
const
std
::
vector
<
double
>&
molecularDipole
,
const
std
::
vector
<
double
>&
molecularQuadrupole
,
int
axisType
,
int
multipoleAtomZ
,
int
multipoleAtomX
,
int
multipoleAtomY
,
double
thole
,
double
dampingFactor
,
double
polarity
);
/**
...
...
plugins/amoeba/openmmapi/src/AmoebaMultipoleForce.cpp
View file @
9b6e8314
...
...
@@ -127,7 +127,7 @@ void AmoebaMultipoleForce::setEwaldErrorTolerance(double tol) {
ewaldErrorTol
=
tol
;
}
int
AmoebaMultipoleForce
::
add
Partic
le
(
double
charge
,
const
std
::
vector
<
double
>&
molecularDipole
,
const
std
::
vector
<
double
>&
molecularQuadrupole
,
int
axisType
,
int
AmoebaMultipoleForce
::
add
Multipo
le
(
double
charge
,
const
std
::
vector
<
double
>&
molecularDipole
,
const
std
::
vector
<
double
>&
molecularQuadrupole
,
int
axisType
,
int
multipoleAtomZ
,
int
multipoleAtomX
,
int
multipoleAtomY
,
double
thole
,
double
dampingFactor
,
double
polarity
)
{
multipoles
.
push_back
(
MultipoleInfo
(
charge
,
molecularDipole
,
molecularQuadrupole
,
axisType
,
multipoleAtomZ
,
multipoleAtomX
,
multipoleAtomY
,
thole
,
dampingFactor
,
polarity
));
return
multipoles
.
size
()
-
1
;
...
...
plugins/amoeba/platforms/cuda/tests/TestCudaAmoebaGeneralizedKirkwoodForce.cpp
View file @
9b6e8314
...
...
@@ -89,7 +89,7 @@ static void setupMultipoleAmmonia(System& system, AmoebaGeneralizedKirkwoodForce
// first N
system.addParticle( 1.4007000e+01 );
amoebaMultipoleForce->add
Partic
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 1, 2, 3, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
amoebaMultipoleForce->add
Multipo
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 1, 2, 3, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
// 3 H attached to first N
...
...
@@ -112,23 +112,23 @@ static void setupMultipoleAmmonia(System& system, AmoebaGeneralizedKirkwoodForce
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 2, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 2, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 2, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 2, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
// second N
system.addParticle( 1.4007000e+01 );
amoebaMultipoleForce->add
Partic
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 5, 6, 7, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
amoebaMultipoleForce->add
Multipo
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 5, 6, 7, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
// 3 H attached to second N
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 6, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 6, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 6, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 6, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
// covalent maps
...
...
@@ -943,7 +943,7 @@ static void setupAndGetForcesEnergyMultipoleVillin( AmoebaMultipoleForce::Polari
quadrupole[7] = data[quadrupoleIndex + 7];
quadrupole[8] = data[quadrupoleIndex + 8];
amoebaMultipoleForce->add
Partic
le( data[chargeIndex], dipole, quadrupole, static_cast<int>(data[axisTypeIndex]),
amoebaMultipoleForce->add
Multipo
le( data[chargeIndex], dipole, quadrupole, static_cast<int>(data[axisTypeIndex]),
static_cast<int>(data[multipoleAtomZIndex]), static_cast<int>(data[multipoleAtomXIndex]), static_cast<int>(data[multipoleAtomYIndex]),
data[tholeIndex], data[dampingFactorIndex], data[polarityIndex] );
data += entriesPerParticle;
...
...
plugins/amoeba/platforms/cuda/tests/TestCudaAmoebaMultipoleForce.cpp
View file @
9b6e8314
...
...
@@ -102,7 +102,7 @@ static void setupMultipoleAmmonia(System& system, AmoebaMultipoleForce* amoebaMu
// first N
system
.
addParticle
(
1.4007000e+01
);
amoebaMultipoleForce
->
add
Partic
le
(
-
5.7960000e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
1
,
2
,
3
,
3.9000000e-01
,
3.1996314e-01
,
1.0730000e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.7960000e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
1
,
2
,
3
,
3.9000000e-01
,
3.1996314e-01
,
1.0730000e-03
);
// 3 H attached to first N
...
...
@@ -125,23 +125,23 @@ static void setupMultipoleAmmonia(System& system, AmoebaMultipoleForce* amoebaMu
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
2
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
2
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
2
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
2
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
// second N
system
.
addParticle
(
1.4007000e+01
);
amoebaMultipoleForce
->
add
Partic
le
(
-
5.796e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
5
,
6
,
7
,
3.9e-01
,
3.1996314e-01
,
1.073e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.796e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
5
,
6
,
7
,
3.9e-01
,
3.1996314e-01
,
1.073e-03
);
// 3 H attached to second N
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
6
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
6
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
6
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
6
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
// covalent maps
...
...
@@ -584,11 +584,11 @@ static void setupAndGetForcesEnergyMultipoleWater( AmoebaMultipoleForce::Nonbond
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -811,11 +811,11 @@ static void testQuadrupoleValidation( FILE* log ){
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -1009,8 +1009,8 @@ static void setupAndGetForcesEnergyMultipoleIonsAndWater( AmoebaMultipoleForce::
ionQuadrupole
[
6
]
=
0.0000000e+00
;
ionQuadrupole
[
7
]
=
0.0000000e+00
;
ionQuadrupole
[
8
]
=
0.0000000e+00
;
amoebaMultipoleForce
->
add
Partic
le
(
-
1.0000000e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.9000000e-01
,
3.9842202e-01
,
4.0000000e-03
);
amoebaMultipoleForce
->
add
Partic
le
(
1.0000000e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.9000000e-01
,
2.2209062e-01
,
1.2000000e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
1.0000000e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.9000000e-01
,
3.9842202e-01
,
4.0000000e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.0000000e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.9000000e-01
,
2.2209062e-01
,
1.2000000e-04
);
// waters
...
...
@@ -1054,11 +1054,11 @@ static void setupAndGetForcesEnergyMultipoleIonsAndWater( AmoebaMultipoleForce::
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
2
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -1293,11 +1293,11 @@ static void setupAndGetForcesEnergyMultipoleLargeWater( AmoebaMultipoleForce::No
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
plugins/amoeba/platforms/reference/tests/TestReferenceAmoebaGeneralizedKirkwoodForce.cpp
View file @
9b6e8314
...
...
@@ -87,7 +87,7 @@ static void setupMultipoleAmmonia(System& system, AmoebaGeneralizedKirkwoodForce
// first N
system.addParticle( 1.4007000e+01 );
amoebaMultipoleForce->add
Partic
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 1, 2, 3, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
amoebaMultipoleForce->add
Multipo
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 1, 2, 3, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
// 3 H attached to first N
...
...
@@ -110,23 +110,23 @@ static void setupMultipoleAmmonia(System& system, AmoebaGeneralizedKirkwoodForce
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 2, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 2, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 2, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 3, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 0, 1, 2, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
// second N
system.addParticle( 1.4007000e+01 );
amoebaMultipoleForce->add
Partic
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 5, 6, 7, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
amoebaMultipoleForce->add
Multipo
le( -5.7960000e-01, nitrogenMolecularDipole, nitrogenMolecularQuadrupole, 2, 5, 6, 7, 3.9000000e-01, 3.1996314e-01, 1.0730000e-03 );
// 3 H attached to second N
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
system.addParticle( 1.0080000e+00 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 6, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Partic
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 6, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 6, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 7, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
amoebaMultipoleForce->add
Multipo
le( 1.9320000e-01, hydrogenMolecularDipole, hydrogenMolecularQuadrupole, 2, 4, 5, 6, 3.9000000e-01, 2.8135002e-01, 4.9600000e-04 );
// covalent maps
...
...
@@ -942,7 +942,7 @@ static void setupAndGetForcesEnergyMultipoleVillin( AmoebaMultipoleForce::Polari
quadrupole[7] = data[quadrupoleIndex + 7];
quadrupole[8] = data[quadrupoleIndex + 8];
amoebaMultipoleForce->add
Partic
le( data[chargeIndex], dipole, quadrupole, static_cast<int>(data[axisTypeIndex]),
amoebaMultipoleForce->add
Multipo
le( data[chargeIndex], dipole, quadrupole, static_cast<int>(data[axisTypeIndex]),
static_cast<int>(data[multipoleAtomZIndex]), static_cast<int>(data[multipoleAtomXIndex]), static_cast<int>(data[multipoleAtomYIndex]),
data[tholeIndex], data[dampingFactorIndex], data[polarityIndex] );
data += entriesPerParticle;
...
...
plugins/amoeba/platforms/reference/tests/TestReferenceAmoebaMultipoleForce.cpp
View file @
9b6e8314
...
...
@@ -100,7 +100,7 @@ static void setupMultipoleAmmonia(System& system, AmoebaMultipoleForce* amoebaMu
// first N
system
.
addParticle
(
1.4007000e+01
);
amoebaMultipoleForce
->
add
Partic
le
(
-
5.7960000e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
1
,
2
,
3
,
3.9000000e-01
,
3.1996314e-01
,
1.0730000e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.7960000e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
1
,
2
,
3
,
3.9000000e-01
,
3.1996314e-01
,
1.0730000e-03
);
// 3 H attached to first N
...
...
@@ -123,23 +123,23 @@ static void setupMultipoleAmmonia(System& system, AmoebaMultipoleForce* amoebaMu
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
2
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
2
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
2
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
3
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
0
,
1
,
2
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
// second N
system
.
addParticle
(
1.4007000e+01
);
amoebaMultipoleForce
->
add
Partic
le
(
-
5.796e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
5
,
6
,
7
,
3.9e-01
,
3.1996314e-01
,
1.073e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.796e-01
,
nitrogenMolecularDipole
,
nitrogenMolecularQuadrupole
,
2
,
5
,
6
,
7
,
3.9e-01
,
3.1996314e-01
,
1.073e-03
);
// 3 H attached to second N
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
system
.
addParticle
(
1.0080000e+00
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
6
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
6
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
6
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
7
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.932e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
2
,
4
,
5
,
6
,
3.9e-01
,
2.8135002e-01
,
4.96e-04
);
// covalent maps
...
...
@@ -580,11 +580,11 @@ static void setupAndGetForcesEnergyMultipoleWater( AmoebaMultipoleForce::Nonbond
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -792,11 +792,11 @@ static void testQuadrupoleValidation( FILE* log ){
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -945,8 +945,8 @@ static void setupAndGetForcesEnergyMultipoleIonsAndWater( AmoebaMultipoleForce::
ionQuadrupole
[
6
]
=
0.0000000e+00
;
ionQuadrupole
[
7
]
=
0.0000000e+00
;
ionQuadrupole
[
8
]
=
0.0000000e+00
;
amoebaMultipoleForce
->
add
Partic
le
(
-
1.0e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.90e-01
,
3.9842202e-01
,
4.00e-03
);
amoebaMultipoleForce
->
add
Partic
le
(
1.0e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.90e-01
,
2.2209062e-01
,
1.20e-04
);
amoebaMultipoleForce
->
add
Multipo
le
(
-
1.0e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.90e-01
,
3.9842202e-01
,
4.00e-03
);
amoebaMultipoleForce
->
add
Multipo
le
(
1.0e+00
,
ionDipole
,
ionQuadrupole
,
5
,
-
1
,
-
1
,
-
1
,
3.90e-01
,
2.2209062e-01
,
1.20e-04
);
// waters
...
...
@@ -990,11 +990,11 @@ static void setupAndGetForcesEnergyMultipoleIonsAndWater( AmoebaMultipoleForce::
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
2
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
@@ -1214,11 +1214,11 @@ static void setupAndGetForcesEnergyMultipoleLargeWater( AmoebaMultipoleForce::No
hydrogenMolecularQuadrupole
[
8
]
=
1.3452570e-04
;
for
(
unsigned
int
jj
=
0
;
jj
<
numberOfParticles
;
jj
+=
3
){
amoebaMultipoleForce
->
add
Partic
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
-
5.1966000e-01
,
oxygenMolecularDipole
,
oxygenMolecularQuadrupole
,
1
,
jj
+
1
,
jj
+
2
,
-
1
,
3.9000000e-01
,
3.0698765e-01
,
8.3700000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
2
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
amoebaMultipoleForce
->
add
Partic
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
amoebaMultipoleForce
->
add
Multipo
le
(
2.5983000e-01
,
hydrogenMolecularDipole
,
hydrogenMolecularQuadrupole
,
0
,
jj
,
jj
+
1
,
-
1
,
3.9000000e-01
,
2.8135002e-01
,
4.9600000e-04
);
}
...
...
plugins/amoeba/serialization/src/AmoebaMultipoleForceProxy.cpp
View file @
9b6e8314
...
...
@@ -177,7 +177,7 @@ void* AmoebaMultipoleForceProxy::deserialize(const SerializationNode& node) cons
molecularQuadrupole
.
push_back
(
quadrupole
.
getDoubleProperty
(
"q7"
)
);
molecularQuadrupole
.
push_back
(
quadrupole
.
getDoubleProperty
(
"q8"
)
);
force
->
add
Partic
le
(
particle
.
getDoubleProperty
(
"charge"
),
molecularDipole
,
molecularQuadrupole
,
force
->
add
Multipo
le
(
particle
.
getDoubleProperty
(
"charge"
),
molecularDipole
,
molecularQuadrupole
,
particle
.
getIntProperty
(
"axisType"
),
particle
.
getIntProperty
(
"multipoleAtomZ"
),
particle
.
getIntProperty
(
"multipoleAtomX"
),
...
...
plugins/amoeba/serialization/tests/TestSerializeAmoebaMultipoleForce.cpp
View file @
9b6e8314
...
...
@@ -83,7 +83,7 @@ void testSerialization() {
for
(
unsigned
int
jj
=
0
;
jj
<
9
;
jj
++
){
molecularQuadrupole
.
push_back
(
static_cast
<
double
>
(
rand
())
);
}
force1
.
add
Partic
le
(
static_cast
<
double
>
(
ii
+
1
),
molecularDipole
,
molecularQuadrupole
,
AmoebaMultipoleForce
::
Bisector
,
force1
.
add
Multipo
le
(
static_cast
<
double
>
(
ii
+
1
),
molecularDipole
,
molecularQuadrupole
,
AmoebaMultipoleForce
::
Bisector
,
ii
+
1
,
ii
+
2
,
ii
+
3
,
static_cast
<
double
>
(
rand
()),
static_cast
<
double
>
(
rand
()),
static_cast
<
double
>
(
rand
())
);
for
(
unsigned
int
jj
=
0
;
jj
<
covalentTypes
.
size
();
jj
++
){
...
...
wrappers/python/simtk/openmm/app/forcefield.py
View file @
9b6e8314
...
...
@@ -3463,7 +3463,7 @@ class AmoebaMultipoleGenerator:
atom
.
multipoleDict
=
savedMultipoleDict
atom
.
polarizationGroups
=
dict
()
newIndex
=
force
.
add
Partic
le
(
savedMultipoleDict
[
'charge'
],
savedMultipoleDict
[
'dipole'
],
savedMultipoleDict
[
'quadrupole'
],
savedMultipoleDict
[
'axisType'
],
newIndex
=
force
.
add
Multipo
le
(
savedMultipoleDict
[
'charge'
],
savedMultipoleDict
[
'dipole'
],
savedMultipoleDict
[
'quadrupole'
],
savedMultipoleDict
[
'axisType'
],
zaxis
,
xaxis
,
yaxis
,
savedMultipoleDict
[
'thole'
],
savedMultipoleDict
[
'pdamp'
],
savedMultipoleDict
[
'polarizability'
])
if
(
atomIndex
==
newIndex
):
force
.
setCovalentMap
(
atomIndex
,
mm
.
AmoebaMultipoleForce
.
Covalent12
,
bonded12ParticleSets
[
atomIndex
])
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment