back to Table of Contents

17. Sequence restraints on design

17.1 MAX_MUTATIONS modifier

The number of allowed mutations with respect to the template sequence may be restricted by placing:
MAX_MUTATIONS maximum_number_of_mutations
in the parameters section of the inputfile. For example:
MAX_MUTATIONS 7
will permit only seven mutations with respect to the template sequence.

This option may be used only with JOBTYPE GA; if defined with another jobtype, this option will be ignored, with a warning message.

examples/max_mutations/gb1.max_6_mut.input and its output demonstrate this. Note that the solution in examples/max_mutations/gb1.max_6_mut.pdb differs from the natural sequence only at six positions.

17.2 User-defined sequence restraint functions

Arbitrary user-defined sequence restraints may be defined. Like MAX_MUTATIONS, this can only be used for JOBTYPE GA.

While this functionality has not yet been used, there may be possible uses for user-defined sequence restraints. For example, this could be used for selecting for or against the presence of a particular protease site. For therapeutic purposes, it might be advantageous for a designed protein to not have sequences that are recognized by a given patient's MHC type (reviewed by Marshall et al 2003).

The user may write functions that parse this file and compare it to the sequence encoded by CHROMOSOME structure of interest. The user's function should be called by sequence_restraint.cpp: generate_custom_sequence_CHROMOSOME; this function should be modified at the indicated place to call it.

If there is some file that needs to be read by the user-defined function, include the following in the inputfile:
SEQUENCE_RESTRAINT_FILE some_file_with_sequence_restraint_information

The filename will be stored in extern char *SEQ_FILTER_INPUTFILENAME; this may be read as an argument to the user function, as shown in the generate_custom_sequence_CHROMOSOME source code. Functions for converting between CHROMOSOMEs and sequences, and vice versa, are in sequence_CHROMOSOME_stuff.h and sequence_CHROMOSOME_stuff.cpp.

back to Table of Contents