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
0f8da117
Commit
0f8da117
authored
Aug 18, 2010
by
Mark Friedrichs
Browse files
Allow setting of initial temeperature from command line
parent
4025e9af
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
8 additions
and
4 deletions
+8
-4
plugins/amoeba/platforms/cuda/tests/AmoebaTinkerParameterFile.cpp
...amoeba/platforms/cuda/tests/AmoebaTinkerParameterFile.cpp
+8
-4
No files found.
plugins/amoeba/platforms/cuda/tests/AmoebaTinkerParameterFile.cpp
View file @
0f8da117
...
@@ -5281,10 +5281,12 @@ static void setVelocitiesBasedOnTemperature( const System& system, int seed, std
...
@@ -5281,10 +5281,12 @@ static void setVelocitiesBasedOnTemperature( const System& system, int seed, std
double
mass
=
system
.
getParticleMass
(
ii
);
double
mass
=
system
.
getParticleMass
(
ii
);
finalKineticEnergy
+=
mass
*
(
velocities
[
ii
][
0
]
*
velocities
[
ii
][
0
]
+
velocities
[
ii
][
1
]
*
velocities
[
ii
][
1
]
+
velocities
[
ii
][
2
]
*
velocities
[
ii
][
2
]);
finalKineticEnergy
+=
mass
*
(
velocities
[
ii
][
0
]
*
velocities
[
ii
][
0
]
+
velocities
[
ii
][
1
]
*
velocities
[
ii
][
1
]
+
velocities
[
ii
][
2
]
*
velocities
[
ii
][
2
]);
}
}
finalKineticEnergy
*=
0.5
;
double
finalT
=
(
finalKineticEnergy
)
/
(
degreesOfFreedom
*
BOLTZ
);
(
void
)
fprintf
(
log
,
"%s KE=%15.7e
approximate
T=%15.7e desiredT=%15.7e dof=%12.3f final KE=%12.3e
\n
"
,
(
void
)
fprintf
(
log
,
"%s KE=%15.7e
~
T=%15.7e desiredT=%15.7e dof=%12.3f final KE=%12.3e
T=%12.3e
\n
"
,
methodName
.
c_str
(),
kineticEnergy
,
approximateT
,
temperature
,
methodName
.
c_str
(),
kineticEnergy
,
approximateT
,
temperature
,
degreesOfFreedom
,
0.5
*
finalKineticEnergy
);
degreesOfFreedom
,
finalKineticEnergy
,
finalT
);
}
}
...
@@ -5503,6 +5505,7 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
...
@@ -5503,6 +5505,7 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
// tolerance for thermostat
// tolerance for thermostat
double
temperatureTolerance
=
3.0
;
double
temperatureTolerance
=
3.0
;
double
initialTemperature
=
300.0
;
int
energyMinimize
=
1
;
int
energyMinimize
=
1
;
int
applyAssertion
=
0
;
int
applyAssertion
=
0
;
...
@@ -5550,9 +5553,9 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
...
@@ -5550,9 +5553,9 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
std
::
vector
<
Vec3
>
velocities
;
std
::
vector
<
Vec3
>
velocities
;
velocities
.
resize
(
numberOfAtoms
);
velocities
.
resize
(
numberOfAtoms
);
double
initialT
=
300.0
;
setIntFromMap
(
inputArgumentMap
,
"randomNumberSeed"
,
randomNumberSeed
);
setIntFromMap
(
inputArgumentMap
,
"randomNumberSeed"
,
randomNumberSeed
);
setVelocitiesBasedOnTemperature
(
system
,
randomNumberSeed
,
velocities
,
initialT
,
log
);
setDoubleFromMap
(
inputArgumentMap
,
"temperature"
,
initialTemperature
);
setVelocitiesBasedOnTemperature
(
system
,
randomNumberSeed
,
velocities
,
initialTemperature
,
log
);
context
->
setVelocities
(
velocities
);
context
->
setVelocities
(
velocities
);
// energy minimize
// energy minimize
...
@@ -5574,6 +5577,7 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
...
@@ -5574,6 +5577,7 @@ void testEnergyConservation( std::string parameterFileName, MapStringInt& forceM
(
void
)
fprintf
(
log
,
"Energy pre/post energies [%15.7e %15.7e] [%15.7e %15.7e].
\n
"
,
(
void
)
fprintf
(
log
,
"Energy pre/post energies [%15.7e %15.7e] [%15.7e %15.7e].
\n
"
,
preState
.
getKineticEnergy
(),
preState
.
getPotentialEnergy
(),
preState
.
getKineticEnergy
(),
preState
.
getPotentialEnergy
(),
postState
.
getKineticEnergy
(),
postState
.
getPotentialEnergy
()
);
postState
.
getKineticEnergy
(),
postState
.
getPotentialEnergy
()
);
(
void
)
fflush
(
log
);
}
}
if
(
intermediateStateFile
){
if
(
intermediateStateFile
){
writeIntermediateStateFile
(
*
context
,
intermediateStateFile
,
log
);
writeIntermediateStateFile
(
*
context
,
intermediateStateFile
,
log
);
...
...
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