"plugins/vscode:/vscode.git/clone" did not exist on "eafdce763a96398f0480ac3fe0f4bb58ba4c14e1"
simulateCharmm.py 1.19 KB
Newer Older
1
2
3
from simtk.openmm.app import *
from simtk.openmm import *
from simtk.unit import *
4
5
from sys import stdout, exit, stderr

6
# Read the PSF
Jason Swails's avatar
Jason Swails committed
7
psf = CharmmPsfFile('ala_ala_ala.psf')
8
9
10
11

# Get the coordinates from the PDB
pdb = PDBFile('ala_ala_ala.pdb')

12
13
14
15
16
17
18
19
20
# Load the parameter set.
params = CharmmParameterSet('charmm22.rtf', 'charmm22.par')

# NOTICE:
# -------
# The CHARMM 22 parameter set is out-of-date and NOT recommended for general
# use. It is included here as an illustrative example, but for production
# simulations you should download the latest versions of the force fields at
# http://mackerell.umaryland.edu/CHARMM_ff_params.html
21
22

# Instantiate the system
Jason Swails's avatar
Jason Swails committed
23
24
system = psf.createSystem(params, nonbondedMethod=NoCutoff,
                          nonbondedCutoff=None)
25
26
27
28
29
30
31
32
33
34
integrator = LangevinIntegrator(300*kelvin, 1/picosecond, 0.002*picoseconds)
simulation = Simulation(psf.topology, system, integrator)
simulation.context.setPositions(pdb.getPositions())
simulation.minimizeEnergy()
simulation.reporters.append(PDBReporter('ch_output.pdb', 1000))
simulation.reporters.append(
        StateDataReporter(stdout, 1000, step=True, potentialEnergy=True,
                          temperature=True)
)
simulation.step(10000)