Exemplo n.º 1
0
--------
ofs: Outputs the constant temperature and pressure system
"""

job.classification = [['NPT']]
job.tags = [tag for lists in job.classification for tag in lists]

ifs = OEMolIStreamCube("SystemReader", title="System Reader")
ifs.promote_parameter("data_in",
                      promoted_name="system",
                      title='System Input File',
                      description="System input file")

npt = OpenMMnptCube('npt')
npt.promote_parameter('time',
                      promoted_name='picosec',
                      default=10.0,
                      description='Length of MD run in picoseconds')
npt.promote_parameter('temperature',
                      promoted_name='temperature',
                      default=300.0,
                      description='Selected temperature in K')
npt.promote_parameter('pressure',
                      promoted_name='pressure',
                      default=1.0,
                      description='Selected pressure in atm')

# Restraints
npt.promote_parameter('restraints',
                      promoted_name='restraints',
                      default="ca_protein or (noh ligand)",
                      description='Select mask to apply restraints')
Exemplo n.º 2
0
                         default=0,
                         description='Reporter saving interval')
warmup.promote_parameter('outfname',
                         promoted_name='w_outfname',
                         default='warmup',
                         description='Equilibration suffix name')

# The system is equilibrated at the right pressure and temperature in 3 stages
# The main difference between the stages is related to the restraint force used
# to keep the ligand and protein in their starting positions. A relatively strong force
# is applied in the first stage while a relatively small one is applied in the latter

# NPT Equilibration stage 1
equil1 = OpenMMnptCube('equil1', title='equil1')
equil1.promote_parameter('time',
                         promoted_name='eq1_psec',
                         default=100.0,
                         description='Length of MD run in picoseconds')
equil1.promote_parameter('restraints',
                         promoted_name='eq1_restraints',
                         default="noh (ligand or protein)",
                         description='Select mask to apply restarints')
equil1.promote_parameter('restraintWt',
                         promoted_name='eq1_restraintWt',
                         default=2.0,
                         description='Restraint weight')
equil1.promote_parameter('trajectory_interval',
                         promoted_name='eq1_trajectory_interval',
                         default=0,
                         description='Trajectory saving interval')
equil1.promote_parameter('reporter_interval',
                         promoted_name='eq1_reporter_interval',
                         default=0,
                         description='Trajectory saving interval')
warmup.promote_parameter('reporter_interval',
                         promoted_name='w_reporter_interval',
                         default=0,
                         description='Reporter saving interval')
warmup.promote_parameter('outfname',
                         promoted_name='w_outfname',
                         default='warmup',
                         description='Equilibration suffix name')
warmup.promote_parameter('center', promoted_name='center', default=True)

# NPT Equilibration stage
equil = OpenMMnptCube('equil', title='equil')
equil.promote_parameter('time',
                        promoted_name='eq_psec',
                        default=20.0,
                        description='Length of MD run in picoseconds')
equil.promote_parameter('restraints',
                        promoted_name='eq_restraints',
                        default="noh ligand",
                        description='Select mask to apply restraints')
equil.promote_parameter('restraintWt',
                        promoted_name='eq_restraintWt',
                        default=0.1,
                        description='Restraint weight in kcal/(mol A^2')
equil.promote_parameter('trajectory_interval',
                        promoted_name='eq_trajectory_interval',
                        default=0,
                        description='Trajectory saving interval')
equil.promote_parameter('reporter_interval',
                        promoted_name='eq_reporter_interval',
Exemplo n.º 4
0
job.description = """
Run an unrestrained NPT simulation at 300K and 1atm
"""

job.classification = [['Simulation']]
job.tags = [tag for lists in job.classification for tag in lists]

ifs = OEMolIStreamCube("SystemReader", title="System Reader")
ifs.promote_parameter("data_in", promoted_name="system", title='System Input File',
                      description="System input file")

prod = OpenMMnptCube('production')

# Set simulation time
prod.promote_parameter('time', promoted_name='picosec', default=2000)

# Set the temperature in K
prod.promote_parameter('temperature', promoted_name='temperature', default=300.0,
                       description='Selected temperature in K')

# Set the pressure in atm
prod.promote_parameter('pressure', promoted_name='pressure', default=1.0,
                       description='Selected pressure in atm')

# Trajectory and logging info frequency intervals
prod.promote_parameter('trajectory_interval', promoted_name='trajectory_interval', default=1000,
                       description='Trajectory saving interval')
prod.promote_parameter('reporter_interval', promoted_name='reporter_interval', default=10000,
                       description='Reporter saving interval')