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
6f67100a
"ssh:/git@developer.sourcefind.cn:2222/one/spconv.git" did not exist on "d17a00e02bc34423728038096d025131d1e99245"
Commit
6f67100a
authored
Jul 23, 2009
by
Mark Friedrichs
Browse files
Added notes regarding Gbsa OBC calculation for future generations
parent
344805a8
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
19 additions
and
0 deletions
+19
-0
platforms/reference/src/gbsa/CpuImplicitSolvent.cpp
platforms/reference/src/gbsa/CpuImplicitSolvent.cpp
+14
-0
platforms/reference/src/gbsa/CpuObc.cpp
platforms/reference/src/gbsa/CpuObc.cpp
+5
-0
No files found.
platforms/reference/src/gbsa/CpuImplicitSolvent.cpp
View file @
6f67100a
...
@@ -814,6 +814,20 @@ int CpuImplicitSolvent::computeAceNonPolarForce( const ImplicitSolventParameters
...
@@ -814,6 +814,20 @@ int CpuImplicitSolvent::computeAceNonPolarForce( const ImplicitSolventParameters
// 1 + 1 + pow + 3 + 1 + 2 FLOP
// 1 + 1 + pow + 3 + 1 + 2 FLOP
// the original ACE equation is based on Eq.2 of
// M. Schaefer, C. Bartels and M. Karplus, "Solution Conformations
// and Thermodynamics of Structured Peptides: Molecular Dynamics
// Simulation with an Implicit Solvation Model", J. Mol. Biol.,
// 284, 835-848 (1998) (ACE Method)
// The original equation includes the factor (atomicRadii[atomI]/bornRadii[atomI]) to the first power,
// whereas here the ratio is raised to the sixth power: (atomicRadii[atomI]/bornRadii[atomI])**6
// This modification was made by Jay Ponder who observed it gave better correlations w/
// observed values. He did not think it was important enough to write up, so there is
// no paper to cite.
for
(
int
atomI
=
0
;
atomI
<
numberOfAtoms
;
atomI
++
){
for
(
int
atomI
=
0
;
atomI
<
numberOfAtoms
;
atomI
++
){
if
(
bornRadii
[
atomI
]
>
0.0
){
if
(
bornRadii
[
atomI
]
>
0.0
){
RealOpenMM
r
=
atomicRadii
[
atomI
]
+
probeRadius
;
RealOpenMM
r
=
atomicRadii
[
atomI
]
+
probeRadius
;
...
...
platforms/reference/src/gbsa/CpuObc.cpp
View file @
6f67100a
...
@@ -291,6 +291,11 @@ int CpuObc::computeBornRadii( RealOpenMM** atomCoordinates, RealOpenMM* bornRadi
...
@@ -291,6 +291,11 @@ int CpuObc::computeBornRadii( RealOpenMM** atomCoordinates, RealOpenMM* bornRadi
RealOpenMM
ratio
=
LN
(
(
u_ij
/
l_ij
)
);
RealOpenMM
ratio
=
LN
(
(
u_ij
/
l_ij
)
);
RealOpenMM
term
=
l_ij
-
u_ij
+
fourth
*
r
*
(
u_ij2
-
l_ij2
)
+
(
half
*
rInverse
*
ratio
)
+
(
fourth
*
scaledRadiusJ
*
scaledRadiusJ
*
rInverse
)
*
(
l_ij2
-
u_ij2
);
RealOpenMM
term
=
l_ij
-
u_ij
+
fourth
*
r
*
(
u_ij2
-
l_ij2
)
+
(
half
*
rInverse
*
ratio
)
+
(
fourth
*
scaledRadiusJ
*
scaledRadiusJ
*
rInverse
)
*
(
l_ij2
-
u_ij2
);
// this case (atom i completely inside atom j) is not considered in the original paper
// Jay Ponder and the authors of Tinker recognized this and
// worked out the details
if
(
offsetRadiusI
<
(
scaledRadiusJ
-
r
)
){
if
(
offsetRadiusI
<
(
scaledRadiusJ
-
r
)
){
term
+=
two
*
(
radiusIInverse
-
l_ij
);
term
+=
two
*
(
radiusIInverse
-
l_ij
);
}
}
...
...
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