VuisterLab / cing

Automated Validation of NMR Structures
http://nmr.le.ac.uk
2 stars 4 forks source link

null dihedral restraints imported to CING fail while exporting to xplor #334

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
In about 3% of all entries in my initial NMR_REDO runs the following error is 
thrown. I take 2l0g as an example. 2rs7, 2rs6, 2lfj, 2l92, 2l93, 2rrb, 2lea, 
2kyt, 2kw1 for example have the same problem.

2l0g has 1 omega dihedral restraint with a value 
(http://restraintsgrid.bmrb.wisc.edu/NRG/MRGridServlet?db_username=wattos1&forma
t=n/a&mrblock_id=489856&pdb_id=2l0g&request_type=block&subtype=n/a&type=dihedral
+angle). The other omega angles don't have restraints but are still listed 
(i.e. with null values). 

The omega angles are imported into CING (e.g. 
http://nmr.cmbi.ru.nl/NRG-CING/data/l0/2l0g/2l0g.cing/2l0g/HTML/Restraints/dihed
ral_constraint_list_1.html#_top), but as they don't have values, give errors 
when their value is asked for by e.g. $C/python/cing/PluginCode/xplor.py in 
exportDihedralRestraint2xplor. Methods such as analyze in classes.py (a method 
of a dih restraint) give warnings:

WARNING: Lower bound is None; skipping this angle for this model.
WARNING: Failed to calculate a violation angle.

The errors:

Traceback (most recent call last):
  File "/home/i/workspace/cing/python/cing/Scripts/refineEntry.py", line 302, in <module>
    status = mainRefineEntry(*sys.argv[1:])
  File "/home/i/workspace/cing/python/cing/Scripts/refineEntry.py", line 236, in mainRefineEntry
    if project.fullRedo(modelCountAnneal = modelCountAnneal, bestAnneal = bestAnneal, best = best):  
  File "/home/i/workspace/cing/python/cing/PluginCode/xplor.py", line 482, in fullRedo
    parameters = fullAnnealAndRefine( config, project, options)
  File "/home/i/workspace/cing/python/Refine/refine.py", line 587, in fullAnnealAndRefine
    parameters = fullAnneal(config, project, options)
  File "/home/i/workspace/cing/python/Refine/refine.py", line 678, in fullAnneal
    parameters = doSetup(config, project, basePath, options)
  File "/home/i/workspace/cing/python/Refine/refine.py", line 149, in doSetup
    drl.export2xplor(fname)
  File "/home/i/workspace/cing/python/cing/PluginCode/xplor.py", line 205, in exportDihList2xplor
    fprintf( fp, '%s\n', dr.export2xplor() )
  File "/home/i/workspace/cing/python/cing/PluginCode/xplor.py", line 183, in exportDihedralRestraint2xplor
    delta = math.fabs( dihedralRestraint.upper-dihedralRestraint.lower )

prevent CING from continuing and NMR_REDO from re-refining. I suggest we check 
in exportDihedralRestraint2xplor if a dihedral value is null. If so, we don't 
export the restraint.

Original issue reported on code.google.com by WGTouw on 1 Dec 2012 at 9:46

GoogleCodeExporter commented 9 years ago
Sounds good.

Original comment by jurge...@gmail.com on 1 Dec 2012 at 6:23

GoogleCodeExporter commented 9 years ago
This issue was closed by revision r1197.

Original comment by WGTouw on 3 Dec 2012 at 11:58