Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.


From CYANA Wiki

Jump to: navigation, search

In this tutorial we will determine the resonance assignments and the structure of a protein-ligand complex using modules of CYANA.

...

And ultimately you can try to improve your structure results by studying and applying the options available within the FLYA and noeassign modules of CYANA.



Contents

 [hide


CYANA setup for the AUREMN Practical NMR Course in Campino (24-26 February 2018)

Please follow the following steps carefully (exact Linux commands are given below; you may copy them to a terminal):

...

Hint: More information on the CYANA commands etc. is in the CYANA 3.0 Reference Manual.

Automated resonance assignment

Resonance assignment within cyana is done using the module FLYA.

...

At the very minimum, for small systems and in favorable cases, a NOESY experiment may be sufficient to get an assignment and enough distance restraints for a structure calculation.

Experimental input data

Spectra are processed and referenced relative to each other. Peak lists in XEASY format are prepared by automatic peak picking with a visualization program such as CcpNmr Analysis, NMRdraw or NMRview and saved as XXX.peaks, where XXX denotes the name of the xeasy peak list file. Then they are cleaned (unnecessary water and noise peaks removed).

...

Linker sequences serve to keep two or more molecules close in coordinate space during calculations, is usually between 15-20 elements long and is composed of dummy atoms that allow the linking.

SPECTRUM definitions in the CYANA library

When you start CYANA, the program reads the library and displays the full path name of the library file. You can open the standard library file to inspect, for example, the NMR experiment definitions that define which expected peaks are generated by FLYA. For instance, the definition for the HNCA spectrum (search for 'HNCA' in the library file 'cyana.lib') is

...

Each line below defines a (formal) magnetization transfer pathway that gives rise to an expected peak. in the case of HNCA there are two lines, corresponding to the intraresidual and sequential peak. For instance, the definition for the intraresidual peak starts with the probability to observe the peak (0.980), followed by a series of atom types, e.g. H_AMI for amide proton etc. An expected peak is generated for each molecular fragment in which these atom types occur connected by single covalent bonds. The atoms whose chemical shifts appear in the spectrum are identified by their labels followed by ':', e.g. for HNCA 'HN:', 'N:', and 'C:'.

Exercise 1: Determine the spectrum type

For the HCCCHToscy, determine the spectrum type and put the definition in the HCCCHTocsy.peaks file with the appropriate syntax.

...

Hint: For information on how to use the vi terminal editor: vi editor

Exercise 2: Run FLYA

  • work in the copy of the data directory ('cd flyabb')

Using the text editor of your choice, create your 'init.cya' macro as outlined (The init macro) and also your 'CALC.cya' macro (The FLYA CALC macro) to run FLYA. Be extra careful to avoid typos and unwanted spaces in coma lists etc.

Execution scripts or "macros" in CYANA

For more complex task within CYANA, rather than to enter the execution commands line by line at the CYANA prompt, the necessary commands are collected in a file named '*.cya'. Collecting the commands in macros has the added advantage, that the macros serve as a record allowing to reconstruct previous calculations.

The init macro

The initialization macro file has the fixed name 'init.cya' and is executed automatically each time CYANA is started. It can also be called any time one wants to reinitialize the program by typing 'init'. It contains normally at least two commands that read the CYANA library and the protein sequence:

...

The protein sequence is stored in three-letter code in the file 'demo.seq'.

The FLYA CALC macro

The 'CALC.cya' starts with the specification of the names of the input peak lists:

...

To kill all processes running (from you):

skill -u <username>

FLYA output files

The FLYA algorithm will produce the following output files:

  • flya.prot: Consensus assigned chemical shifts. This file contains a chemical shift for every atom that has been assigned to least one peak.
  • flya.tab: Table with details about the chemical shift assignment of each atom (comparison with reference shifts). In this file you can see for each atom whether the assignment is "strong" (self-consistent) or "weak" (only tentative).
  • flya.txt: Assignment statistics
  • flya.pdf: Graphical representation of the assignment results
  • XXX_exp.peaks: List of expected peaks, corresponding to input peak list XXX.peaks
  • XXX_asn.peaks: Assigned peak list, corresponding to input peak list XXX.peaks

The flya.txt file

This output file starts with overall assignment statistics for each group of atoms as defined by 'analyzeassign_group:=...':

...

There is more information on the results of the assignment calculation in the 'flya.txt' file (not described here).

The flya.tab file

This file provides information about the chemical shift assignment of each individual atom:

...

  • Ref: Chemical shift value in the reference chemical shift list (ref.prot). It was not used in the calculation.
  • Shift: Consensus chemical shift value from FLYA
  • Dev = Ref - Shift
  • Extent: Number of runs in which the atom was assigned by FLYA.
  • Inside: Percentage of chemical shift values from the (10) independent runs of FLYA that agree (within the tolerance) with the consensus value.
  • inref: Percentage of chemical shift values from the (10) independent runs of FLYA that agree (within the tolerance) with the reference value.
  • Outcome of the assignment:
    • strong: "strong" assignment, i.e. Inside > 80%.
    • =: Assignment that agrees with reference, i.e. Dev < tolerance.
    • !: Assignment that does not agree with the reference, i.e. Dev > tolerance.
    • (atom name): Correct assignment, if within the same residue (no residue number given), or the neighboring residues.

The flya.pdf file

This PDF file provides a graphical representation of the 'flya.tab' file. Each assignment for an atom is represented by a colored rectangle.

...

Respective light colors indicate assignments not classified as strong by the chemical shift consolidation. The row labeled HN/Hα shows for each residue HN on the left and Hα in the center. The N/Cα/C’ row shows for each residue the N, Cα, and C’ assignments from left to right. The rows β-η show the side-chain assignments for the heavy atoms in the center and hydrogen atoms to the left and right. In the case of branched side-chains, the corresponding row is split into an upper part for one branch and a lower part for the other branch.

Exercise 3: Analyze the FLYA results

  • Analyze your FLYA results using 'less' or a graphical text editor and a pdf viewer.

...

Hint: Use the terminal command 'gs' to view pdf files (control-C to quit gracefully):

gs flya.pdf

Using Talos to generate torsion angle restraints

Torsion angle restraints from the backbone chemical shifts help restrict angular conformation space. We wish to use only "strong assignments" to generate these restraints.

If you do not have TALOS installed get it from here. It is part of the nmrpipe software package.

Exercise 4: Calculate backbone torsion angle restraints using Talos

Hint: Copy the FLYA results into a new folder, since otherwise you will overwrite your original 'flya.prot' file.

...

Hint: change to a cshell before running cyana (since talos needs a cshell to run):

csh

Automated NOESY assignment and structure calculation

We will perform an automated NOE restraint assignment and structure calculation by torsion angle dynamics.

The 'flya.prot' file from the automated resonance assignment will be used together with the (unassigned) NOESY peak lists to assign the NOESY peaks and to generate distance restraints. The structure is calculated in cycles, essentially testing the NOE assignment and iteratively refining it, in order to compute the three-dimensional structure of the protein.

Exercise 5: Run noeassign

Copy the 'flyabb' directory and give it the name 'noebb', then delete all the files and data we do not need to reduce clutter and have better oversight.

...

Inside the 'noebb' directory, use a text editor to edit the 'CALC.cya' file for noeassign as outlined.

The noeassign CALC macro

peaks:= cnoesy.peaks,nnoesy.peaks,aro.peaks 	
prot:= flya.prot                   		
restraints:= talos.aco                    		
tolerance:= 0.040,0.030,0.45            		
structures := 100,20                      		
steps:= 10000                       		
randomseed:= 434726    
                  		
noeassign peaks=$peaks prot=$prot autoaco

...

You can check the statistics (and success of 'noeassign') by running:

cyanatable

Creating the ligand library file for CYANA

In the next three exercises you will create the ligand library file for CYANA from scratch. Do this carefully and check your result, otherwise your structure calculation will not work as intended.

Exercise 6: Drawing the molecule and obtaining the SMILES code

  • make a copy of the libex and work in there (libexbb)

...


Hint: To look at the supplied image file in the terminal, use:

xdg-open LIG.png

Exercise 7: Converting the SMILES code to mol2

  • work in the copy of the libex directory ('cd libexbb')

...

Hovering over atoms will display their names!

Exercise 8: Converting the mol2 file to a lib file for CYANA

  • work in the copy of the libex directory ('cd libexbb')
  • unpack the tool to convert the mol2 to a *.lib file

...

This will write the library file containing actual atom names rather than numbers.

Alternative Exercise 6-8: Converting a pdb file to a lib file for CYANA

In case you were unsuccessful with exercises 6-8 in terms of getting a working ligand library file, do not dispair! There is an easy workaround that you may be able to use in the real case as well, converting a pdb file to a library file for CYANA.

...

You can run the tests outlined above, using anneal etc to test your library file.

Calculating the structure of the protein-ligand complex

Exercise 9: (Semi-automatic) Intermolecular cross peaks assignment and structure calculation

Since the molecular system contains protein and ligand, CYANA has to read the 'LIG.lib' file in addition to the regular 'cyana.lib' file. The sequence file needs to contain the protein and the ligand (and a linker to connect the two).

...

Run the calculation:

cyana -n 33 CALC.cya

Comparing the calculated NMR structure to an XRAY reference structure

Exercise 10: Compare the NMR structure to the Xray structure

Download (www.rcsb.org) the xray structure with ID: 5c5a

...

Use to chimera specific commands to overlay the two structures and compare the structures visually.

Exercise 11: Preparing an xray structure to use within CYANA

Deposited structures often lack specific features. i.e. Xray structures usually lack proton coordinates.

...

Execute the 'CALC_reg.cya' macro in the CYANA shell (or use only one processor, do not distribute the job):

cyana CALC_reg.cya

Exercise 12: Calclulate the RMSD of NMR vs. xray structure using a CYANA macro

Using the INCLAN language of CYANA (Writing and using INCLAN macros,Using INCLAN variables,Using INCLAN control statements) it is possible to write complex macros that interact with the FORTRAN code of CYANA. Reading internal variables and manipulating them to achieves custom task.

...

read demoLong.seq

rmsd range=15-111 structure=final.pdb reference=reg_xray.pdb

atom select "BACKBONE 15-111"
t=rmsdmean
j=rindex('333')
n=0
s=0.0
do i ifira(j) ifira(j+1)-1
  if (element(i).gt.1) then
    n=n+1
    s=s+displacement(i)
   end if
end do
print "RMSD of the LIG: ${s/n} ($n atoms)"

read pdb final.pdb
structure mean
write pdb mean.pdb

read pdb mean.pdb
read pdb reg_xray.pdb append

atom select "BACKBONE 15-111"
t=rmsdmean
atom select "WITHCOORDALL"
j=rindex('333')
n=0
s=0.0
do i ifira(j) ifira(j+1)-1
  if (element(i).gt.1.and.asel(i)) then
    n=n+1
    s=s+displacement(i)*2
  end if
end do
print "Displacement of the LIG (to ref xray): ${s/n} ($n atoms)"

Beyond The Basics: Improving the final structure

FLYA options

There are a variety of commands to modify FLYA runs to accommodate experimental labeling schemes or apply previous assignments etc...

...

And last the 'runs' option can be set for flya as we did in the exercise ('flya runs=10').


neoassign options

To learn more about noeassign consult the tutorial Structure calculation with automated NOESY assignment. Other options for neoassign are described here: CYANA_Macro:_noeassign

Exercise 13: Mapping restraints onto a known structure

One can map the calculated restraints, such as distance restraints (upl/lol) onto a known structure (in the example here an xray structure). This is another approach to analyze restraints and their influence on the results.

...

  • If the restraints do not match with the xray structure, does it mean they are wrong?
  • If you tried the two options, what is (are) the difference(s)?
  • Did you look at the LIG.upl/lol files in the demo_data folder, what are they? What type of NMR experiments are there to obtain them?

Exercise 14: Work on improving the final structure

Using what you have learned so far, employing some of the options of FLYA and noeassign, consider if it is possible to improve the resolution of the final structure.

...