# Example for: model.patch(), topology(), parameters.read() # This will define a CYS-CYS disulfide bond between residues 3 and 22. from modeller import * from modeller.scripts import complete_pdb env = environ() env.io.atom_files_directory = ['../atom_files'] env.libs.topology.read(file='$(LIB)/top_heav.lib') env.libs.parameters.read(file='$(LIB)/par.lib') # Create the disulfide bond: def patches(mdl): mdl.patch(residue_type='DISU', residues=(mdl.residues['3:'], mdl.residues['22:'])) # Read the sequence: code = '1fas' mdl = complete_pdb(env, code, special_patches=patches) # Create the stereochemical restraints sel = selection(mdl) mdl.restraints.make(sel, restraint_type='stereo', spline_on_site=False) # Calculate the energy to test the disulfide: sel.energy()