Пример #1
0
        slit_pore_dim=2
)


# Translate to centered at-graphene.center[0],   -graphene.center[1],0 and make box larger in z
graphene.translate([ -graphene.center[0],   -graphene.center[1],0])
graphene.periodicity[2] = sheet_spacing*(2*No_sheets-1)+pore_width_nm



mf_charmm.charmm_psf_psb_FF(graphene,
                            'pore_3x3x1.0nm_3-layer',
                            structure_1 = box_reservior,
                            filename_1 = 'GOMC_reservior_box',
                            FF_filename ="GOMC_pore_water_FF" ,
                            forcefield_files= FF_Graphene_pore_w_solvent_Dict ,
                            residues=residues_Graphene_pore_w_solvent_List ,
                            Bead_to_atom_name_dict = None,
                            fix_residue = Fix_Graphene_residue,
                            fix_res_bonds_angles = Fix_bonds_angles_residues,
                            reorder_res_in_pdb_psf = False
                            )

mf_charmm.charmm_psf_psb_FF(graphene,
                            'pore_3x3x1.0nm_3-layer',
                            structure_1 = box_reservior_w_fake_water,
                            filename_1 = 'GOMC_reservior_fake_water_box',
                            FF_filename ="GOMC_pore_fake_water_FF" ,
                            forcefield_files= FF_Graphene_pore_w_solvent_fake_water_Dict ,
                            residues=residues_Graphene_pore_w_solvent_fake_water_List ,
                            Bead_to_atom_name_dict = None,
                            fix_residue = Fix_Graphene_residue,
Fix_bonds_angles_residues = [water.name]

print('Running: filling liquid box')
water_box_liq = mb.fill_box(compound=[water],
                            density=950,
                            compound_ratio=[1],
                            box=[3.0, 3.0, 3.0])
print('Completed: filling liquid box')

print('Running: filling vapor box')
water_box_vap = mb.fill_box(compound=[
    water,
],
                            n_compounds=[50],
                            box=[60, 60, 60])
print('Completed: filling vapor box')

print('Running: GOMC FF file, and the psf and pdb files')
mf_charmm.charmm_psf_psb_FF(water_box_liq,
                            'Box_0_liq_water_30A_L_cubed_box',
                            structure_1=water_box_vap,
                            filename_1='Box_1_vap_water_600A_L_cubed_box',
                            FF_filename="GOMC_water_FF",
                            forcefield_files=FF_Dict,
                            residues=residues_List,
                            Bead_to_atom_name_dict=None,
                            fix_residue=None,
                            fix_res_bonds_angles=Fix_bonds_angles_residues,
                            reorder_res_in_pdb_psf=False)
print('Completed: GOMC FF file, and the psf and pdb files')
water = mb.load('O', smiles=True)
water.name = Water_res_name
water.energy_minimize(forcefield=FF_file, steps=10**9)

Molecule_Type_List_BC = [water]
residues_Water_box_List = [water.name]
fix_bonds_angle_names = [water.name]

box_reservior = mb.fill_box(compound=[water], density=600, box=[6, 6, 6])

mf_charmm.charmm_psf_psb_FF(box_reservior,
                            filename_box_info + '_reservior',
                            structure_1=None,
                            filename_1=None,
                            FF_filename=filename_box_info,
                            forcefield_files=FF_file,
                            residues=residues_Water_box_List,
                            Bead_to_atom_name_dict=None,
                            fix_residue=None,
                            fix_res_bonds_angles=fix_bonds_angle_names,
                            reorder_res_in_pdb_psf=False)

#create an empty 25 Angstrom box
Empty_box_25A = mb.Compound()
Empty_box_25A.periodicity[0] = 25 / 10
Empty_box_25A.periodicity[1] = 25 / 10
Empty_box_25A.periodicity[2] = 25 / 10
mf_charmm.charmm_psf_psb_FF(Empty_box_25A,
                            'Water_boxes_for_test_box_25A',
                            structure_1=None,
                            filename_1=None,
Пример #4
0
water_between_pores.translate([ -water_between_pores.center[0],   -water_between_pores.center[1], z_shift])

empty_graphene_pore.translate([ -empty_graphene_pore.center[0],   -empty_graphene_pore.center[1], z_shift])

filled_pore = empty_graphene_pore
filled_pore.add(water_between_pores, inherit_periodicity=False)
filled_pore.periodicity[2] = Total_box_z_axis_nm



mf_charmm.charmm_psf_psb_FF(filled_pore,
                            'filled_pore_water_3x3x2.0nm_3-layer',
                            structure_1 = None,
                            filename_1 = None,
                            FF_filename ="GOMC_pore_water_FF" ,
                            forcefield_files= FF_Graphene_pore_w_solvent_Dict ,
                            residues=residues_Graphene_pore_w_solvent_List ,
                            Bead_to_atom_name_dict = None,
                            fix_residue = Fix_Graphene_residue,
                            fix_res_bonds_angles = Fix_bonds_angles_residues,
                            reorder_res_in_pdb_psf = False
                            )




#**************************************************************
# builds empty graphene slit  for 10 Ang or 1nm (end)
#**************************************************************