예제 #1
0
total_steps = round(total_simulation_time.__div__(simulation_time_step))

# Yank (replica exchange) simulation settings
output_data = str(str(top_directory) + "/output.nc")
number_replicas = 30
min_temp = 10.0 * unit.kelvin
max_temp = 200.0 * unit.kelvin
temperature_list = get_temperature_list(min_temp, max_temp, number_replicas)
print("Using " + str(len(temperature_list)) + " replicas.")

cgmodel = CGModel(positions=native_structure)
model_angle_list = cgmodel.bond_angle_list

angle_list = []
for angle in model_angle_list:
    if all([cgmodel.get_particle_type(i) == "backbone" for i in angle]):
        angle_list.append(angle)

bond_angle_list = []
bin_counts_list = []

bond_angle_force_constant_list = [
    unit.Quantity((0.001 * 10**i),
                  unit.kilocalorie_per_mole / unit.radian / unit.radian)
    for i in range(grid_size)
]
for constant in bond_angle_force_constant_list:
    bond_angle_force_constants = {'bb_bb_bb_angle_k': constant}
    cgmodel = CGModel(positions=native_structure,
                      bond_angle_force_constants=bond_angle_force_constants)
예제 #2
0
total_steps = round(total_simulation_time.__div__(simulation_time_step))

# Yank (replica exchange) simulation settings
output_data = str(str(top_directory) + "/output.nc")
number_replicas = 30
min_temp = 10.0 * unit.kelvin
max_temp = 200.0 * unit.kelvin
temperature_list = get_temperature_list(min_temp, max_temp, number_replicas)
print("Using " + str(len(temperature_list)) + " replicas.")

cgmodel = CGModel()
model_torsion_list = cgmodel.torsion_list

torsion_list = []
for torsion in model_torsion_list:
    if all([cgmodel.get_particle_type(i) == "backbone" for i in torsion]):
        torsion_list.append(torsion)

torsions_list = []
bin_counts_list = []

torsion_force_constant_list = [0.001 * 10**i for i in range(grid_size)]
for constant in torsion_force_constant_list:
    torsion_force_constants = {'bb_bb_bb_bb_torsion_k': constant}
    cgmodel = CGModel(torsion_force_constants=torsion_force_constants)

    output_data = str(
        str(top_directory) + "/" + str(round(constant, 3)) + ".nc")
    if not os.path.exists(output_data):
        replica_energies, replica_positions, replica_states = run_replica_exchange(
            cgmodel.topology,