from modeller.automodel import * class mymodel(automodel): def special_restraints(self, aln): rsr = self.restraints for ids in (('CB:155', 'O6B:325'), ('OE2:145', 'O1L:325'), ('N:152', 'O7B:325'), ('OD2:193', 'O6A:325'),): atoms = [self.atoms[i] for i in ids] rsr.add(forms.upper_bound(group=physical.upper_distance, feature=features.distance(*atoms), mean=3.5, stdev=0.1)) env = environ() env.io.hetatm = True a = mymodel(env, alnfile='aligoment.pir', knowns=('1lmp'), sequence='seq') a.starting_model = 1 a.ending_model = 5 a.make()