Print

Print


Hi All
I seem to be having lost of nmr star problems

specifically

I tried to import  the nmr star file I had working the other day I get

Traceback (most recent call last):
  File
"/home/garyt/programs/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py",
line 1403, in __call__
    return self.func(*args)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/format/gui/ImportExportFormatPopup.py",
line 979, in ok
    if (not self.apply()):
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/format/gui/ImportExportFormatPopup.py",
line 992, in apply
    returnValue = self.importExportFile(self.component) # If none, will do
all components
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/format/gui/ImportExportFormatPopup.py",
line 799, in importExportFile
    returnValue = rwFunc(*addArgs,**addKeywds)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/format/converters/DataFormat.py",
line 951, in readProject
    self.getFullProject(fileName,**keywds)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/format/converters/NmrStarFormat.py",
line 500, in getFullProject
    status = self.file.read(**keywds)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccp/format/nmrStar/projectIO.py",
line 240, in read
    self.sequenceFiles.append(NmrStarSequenceFile(self.name,self,saveFrame))
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccp/format/general/formatIO.py",
line 100, in __init__
    self.initialize(*args,**keywds)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccp/format/nmrStar/sequenceIO.py",
line 121, in initialize
    self.parseSaveFrame()
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccp/format/nmrStar/sequenceIO.py",
line 194, in parseSaveFrame
    originalChainCode = tableTags['Asym_ID'][i]
KeyError: 'Asym_ID'


this is actually with a file that analysis exported

also when I try to export an nmr star file with the project I am dealing
with i get

 Using CCPN version 2.0.b3, NMR-STAR version 3.1.
  Warning: No Ccpn__2_0_b3__To_NmrStar__3_1__ constants dictionary
available, using Ccpn_To_NmrStar default.
Exception in Tkinter callback
Traceback (most recent call last):
  File
"/home/garyt/programs/ccpnmr/python2.5/lib/python2.5/lib-tk/Tkinter.py",
line 1403, in __call__
    return self.func(*args)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/ccpnmr/eci/EntryCompletionFrame.py",
line 8406, in exportNmrStar31
    nmrStarExport.createFile(fileName)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 201, in createFile
    self.loopSaveFrameData(0)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 292, in loopSaveFrameData
    self.setSaveFrameData(self.nmrStarSfDict['name'])
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 407, in setSaveFrameData

 self.loopStarLevelObjects('saveFrame',saveFrameName,ccpnLoopInfo,self.writeStarSfDict,self.nmrStarSfDict)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 692, in loopStarLevelObjects
    if not self.setTableData(tableName,saveFrame = starElement):
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 442, in setTableData

 self.loopStarLevelObjects('table',tableName,ccpnLoopInfo,self.writeStarTableDict,self.nmrStarTableDict,starElement
= table)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 653, in loopStarLevelObjects
    presetValues =
self.setStarTagPresets(starElement,starElementName,tagNames,writeTags,conditionalTags,ccpnLoopInfo,parentCcpnLoopInfo,writeStarElementDict,nmrStarElementDict)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 1230, in setStarTagPresets

 self.setAtomPresetValues(measurementByIndividualAtom,presetValues,'',nmrStarElementDict,atomHandling)
  File
"/home/garyt/programs/ccpnmr/ccpnmr2.1/python/msd/nmrStar/IO/NmrStarExport.py",
line 1454, in setAtomPresetValues
    self.coordinateInfoMap[chain] = (pdbChainCode,cChain)
UnboundLocalError: local variable 'cChain' referenced before assignment


now I think I have solution for the second problem....

      if not self.coordinateInfoMap.has_key(chain):
        pdbChainCode = None
        if self.ccpnVar.has_key('structureEnsemble'):
          structureEnsemble = self.ccpnVar['structureEnsemble']

          # Or by code?
          cChain = structureEnsemble.findFirstCoordChain(chain = chain)

          if cChain:
            origChainCodeApplData =
cChain.findFirstApplicationData(application = 'pdb', keyword =
'originalChainCode')

            if origChainCodeApplData:
              pdbChainCode = origChainCodeApplData.value

        self.coordinateInfoMap[chain] = (pdbChainCode,cChain)

needs to change to

      if not self.coordinateInfoMap.has_key(chain):
        pdbChainCode = None
        if self.ccpnVar.has_key('structureEnsemble'):
          structureEnsemble = self.ccpnVar['structureEnsemble']

          # Or by code?
          cChain = structureEnsemble.findFirstCoordChain(chain = chain)

          if cChain:
            origChainCodeApplData =
cChain.findFirstApplicationData(application = 'pdb', keyword =
'originalChainCode')

            if origChainCodeApplData:
              pdbChainCode = origChainCodeApplData.value

            self.coordinateInfoMap[chain] = (pdbChainCode,cChain)

so the statement self.coordinateInfoMap[chain] = (pdbChainCode,cChain) needs
to be indented under if origChainCodeApplData os it is only applied if
cChain exists...

as usual any help welcome


regards
gary