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)
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,