# YASARA MACRO # TOPIC: 5. Structure prediction # TITLE: Building a homology model # REQUIRES: Structure # AUTHOR: Elmar Krieger # LICENSE: GPL # DESCRIPTION: This builds a homology model using a FASTA sequence of the target, and optionally template structures and alignments # Parameter section - adjust as needed # ==================================== # You can either set the target structure by clicking on Options > Macro > Set target, # or by uncommenting the line below and specifying it directly. #MacroTarget='/home/myname/projects/homologymodels/t0120' # Number of PSI-BLAST iterations psiblasts = 6 # Maximum PSI-BLAST Evalue allowed for templates evalue = 0.5 # Maximum number of PDB templates to use templates = 5 # Maximum number of ambiguous alignments to consider per template alignments = 5 # Maximum oligomerization state, build at most dimeric models oligostate = 2 # Normally no change required below this point # Sanity checks if MacroTarget=='' RaiseError "This macro requires a target. Either edit the macro file or click Options > Macro > Set target to choose a target sequence" Clear # Do we have a target sequence? command1='pass' seqfilename='(MacroTarget).fasta' seq = FileSize (seqfilename) if seq # Yes, create a command to specify the sequence file command1='SequenceFile (seqfilename)' # Do we have alignments? alifilename='(MacroTarget)_align.fasta' ali = FileSize (alifilename) if ali # Yes, use the alignments instead of the target sequence command1='AlignFile (alifilename)' # Do we have templates? command2='pass' for i=001 to 999 for ext in 'pdb','yob' tmpfilename='(MacroTarget)_t(i).(ext)' tmp = FileSize (tmpfilename) if tmp # Load template and name it T001.. tmp = Load(ext) (tmpfilename) NameObj (tmp),T(i) # Create command to select all templates command2='TemplateObj all' # Template found, try next continue 2 break # Build the model Experiment HomologyModeling # Specify either a target sequence or an alignment file (command1) # Specify any templates that have been loaded (command2) # Set parameters defined at the beginning # Number of PSI-BLAST iterations PsiBLASTs (psiblasts) # The maximum PSI-BLAST Evalue (minimum can be set to avoid easy models) EValue Max=(evalue),Min=0 # Maximum oligomerization state OligoState (oligostate) # Maximum number of templates to consider, and how many with the same sequence Templates (templates),SameSeq=1 # Maximum number of ambiguous alignments to consider per template Alignments (alignments) # And some less important parameters # Speed of animations: fast/normal/slow Animation Normal # Number of samples to try per loop (see OptimizeLoop command) LoopSamples 50 # The common start for result filenames ResultFile (MacroTarget) Experiment On Wait ExpEnd # Tell about the homology modeling report ShowMessage 'To view a detailed homology modeling report, open (MacroTarget).html in your browser.' Wait ContinueButton HideMessage