def _execute(self, directory, available_resources): from paprika.evaluator import Setup # Construct the restraints to keep the host in place and # with an open cavity. static_restraints = Setup.build_static_restraints( self.complex_coordinate_path, len(self.attach_lambdas), None, None, self.restraint_schemas.get("static", []), ) conformational_restraints = Setup.build_conformational_restraints( self.complex_coordinate_path, self.attach_lambdas, None, None, self.restraint_schemas.get("conformational", []), ) # Construct the restraints to keep the guest at the correct # distance and orientation relative to the host. symmetry_restraints = Setup.build_symmetry_restraints( self.complex_coordinate_path, len(self.attach_lambdas), self.restraint_schemas.get("symmetry", []), ) wall_restraints = Setup.build_wall_restraints( self.complex_coordinate_path, len(self.attach_lambdas), self.restraint_schemas.get("wall", []), ) guest_restraints = Setup.build_guest_restraints( self.complex_coordinate_path, self.attach_lambdas, None, self.restraint_schemas.get("guest", []), ) self._save_restraints( directory, static_restraints, conformational_restraints, symmetry_restraints, wall_restraints, guest_restraints, )
def _execute(self, directory, available_resources): from paprika.evaluator import Setup # Construct the restraints to keep the host in place and # with an open cavity. static_restraints = Setup.build_static_restraints( self.complex_coordinate_path, len(self.attach_lambdas), self.n_pull_windows, None, self.restraint_schemas.get("static", []), ) conformational_restraints = Setup.build_conformational_restraints( self.complex_coordinate_path, self.attach_lambdas, self.n_pull_windows, None, self.restraint_schemas.get("conformational", []), ) # Construct the restraints to keep the guest at the correct # distance to the host. guest_restraints = Setup.build_guest_restraints( self.complex_coordinate_path, self.attach_lambdas, self.n_pull_windows, self.restraint_schemas.get("guest", []), ) # Remove the attach phases from the restraints as these restraints are # only being used for the pull phase. for restraint in ( static_restraints + conformational_restraints + guest_restraints ): for key in restraint.phase["attach"]: restraint.phase["attach"][key] = None self._save_restraints( directory, static_restraints, conformational_restraints, None, None, guest_restraints, )