Hi Cristian,

I've had some issues recently too with software on nmrbox. In my case
cyana... (am I allowed to say cyana on this list? ;)) Anyway I've noticed
that the more newly updated nmrbox servers will not run certain aspects of
cyana while the old servers still work ok. So I suggest you try an old
server and see if your problem goes away. Try lts2021-33.nmrbox.org? If the
problem goes away but persists on the newer system you have the error on
you can contact the nmrbox people about it. Or let me know and I can help
you elevate it to their attention - I need to do this for cyana anyway. My
guess is a legacy library that got updated and no longer works the way the
old compiled versions of these software expect.

Scott

On Tue, Jul 5, 2022 at 6:49 PM Cristian E. <
[email protected]> wrote:

> Hi,
>
> I have been using a script to refine a NMR structure using NOEs, RDCs,
> SAXS and other data without problems until recently. Now, the same script
> results in a Segmentation fault (core dumped) error. After doing some
> trouble shooting, I noticed that the program runs fine when I remove the
> RDC part in the script, but I don't know what the issue is. I use Xplor-NIH
> in NMRBOX. Here is the code and the last lines in the output.
>
> Thanks for the help,
>
> Cristian
>
> ###########################################################################
>
> import psfGen
>
> outfilename = 'SCRIPT_STRUCTURE.pdb'
>
>
> import protocol
>
> protocol.initRandomSeed(3422)   # by specific seed number
>
>
> # Load paramaters.
>
> protocol.initParams(files=['nucleic'])
>
> psfGen.pdbToPSF(pdb_filename)
> protocol.initCoords(pdb_filename)
> xplor.simulation.deleteAtoms("not known")
>
>
> from potList import PotList
> potList = PotList()
> crossTerms = PotList()
>
>
> from simulationTools import StaticRamp, MultRamp, InitialParams, AnnealIVM
>
> highTempParams = []
> rampedParams = []
>
> #
> # Set up distance restraint potential
> #
> import noePotTools
> noe = PotList('noe')
> for (name, scale, table) in [('all', 1, noe_tbl),
>                                                           ]:
>     pot = noePotTools.create_NOEPot(name, table)
>
>     pot.setScale(scale)
>     noe.append(pot)
> potList.append(noe)
> rampedParams.append(MultRamp(2, 50, "noe.setScale( VALUE )"))
>
>
> import xplorPot
>
> # Set up dihedral angles
> protocol.initDihedrals(dihedral_tbl,
>                        #useDefaults=False  # by default, symmetric
> sidechain
>                                            # restraints are included
>                        )
> potList.append( xplorPot.XplorPot('CDIH') )
> highTempParams.append( StaticRamp("potList['CDIH'].setScale(10)") )
> rampedParams.append( StaticRamp("potList['CDIH'].setScale(200)") )
>
> #
> # Set up potential for base-pair planarity restraints.
> #
> protocol.initPlanarity(plane_tbl)
> potList.append(xplorPot.XplorPot('PLAN'))
>
>
> # Set up statistical torsion angle potential (torsionDB).
> #
> import torsionDBPotTools
> torsiondb =
> torsionDBPotTools.create_TorsionDBPot(name='torsiondb',system='rna')
> potList.append(torsiondb)
> rampedParams.append(MultRamp(0.5, 4, "torsiondb.setScale(VALUE)"))
>
>
> # Setup parameters for atom-atom repulsive term (van der Waals-like term).
> #
> from repelPotTools import create_RepelPot,initRepel
> repel = create_RepelPot('repel')
> potList.append(repel)
> rampedParams.append( StaticRamp("initRepel(repel,use14=False)") )
> rampedParams.append( MultRamp(.004, 4, "repel.setScale( VALUE)") )
> # nonbonded interaction only between C1' atoms
> highTempParams.append( StaticRamp("""initRepel(repel,
>                                                use14=True,
>                                                scale=0.004,
>                                                repel=1.2,
>                                                moveTol=45,
>                                                interactingAtoms="name C1'"
>                                                )""") )
>
>
> # Selected 1-4 interactions.
>
> import torsionDBPotTools
> repel14 = torsionDBPotTools.create_Terminal14Pot('repel14')
> potList.append(repel14)
> highTempParams.append(StaticRamp("repel14.setScale(0)"))
> rampedParams.append(MultRamp(0.004, 4, "repel14.setScale(VALUE)"))
>
> # Set up bond length potential.
>
> potList.append(xplorPot.XplorPot('BOND'))
> # (The setup of this term remains unchanged throughout; no need to involve
> # highTempParams and/or rampedParams.)
>
>
> #
> # Set up bond angle potential.
>
> potList.append(xplorPot.XplorPot('ANGL'))
> rampedParams.append(MultRamp(0.4, 1.0, "potList['ANGL'].setScale(VALUE)"))
>
> #
> # Set up improper dihedral angle potential.
>
> potList.append(xplorPot.XplorPot('IMPR'))
> rampedParams.append(MultRamp(0.1, 1.0, "potList['IMPR'].setScale(VALUE)"))
>
> ###RDC
>
> from varTensorTools import create_VarTensor
> from rdcPotTools import create_RDCPot, scale_toNH
> from varTensorTools import calcTensorOrientation, calcTensor
>
> media={}
>
> for medium, Da, Rh in tensor_list:
>         #print(medium,Da, Rh, tensor_list)
>         oTensor = create_VarTensor(medium)
>         oTensor.setDa(Da)
>         oTensor.setRh(Rh)
>         oTensor.setFreedom ("varyDa, varyRh" )
>         #oTensor.setFreedom ("fixDa, fixRh" )
>         media[medium] = oTensor
>
> highTempParams.append(StaticRamp("""
> for medium in media.values():
>     calcTensorOrientation(medium)
> """) )
>
>
> rdcs = PotList('rdc')
>
> for medium, expt, rdc_file, scale in rdc_exp_list:
>     #print(experiments_list, medium, expt, rdc_file, scale,
> media_dictionary)
>     rdc = create_RDCPot("%s_%s"%(medium,expt), file=rdc_file,
> oTensor=media[medium])
>
>     #rdc.setScale(scale)
>     scale_toNH(rdc)
>     rdc.setShowAllRestraints(1) #all restraints are printed during analysis
>     rdc.setThreshold(1.5)       # in Hz
>     rdcs.append(rdc)
>
>
> potList.append(rdcs)
> rampedParams.append( MultRamp(0.01,1, "rdcs.setScale( VALUE )") )
>
> ### SAXS term ###########
>
> #from solnXRayPotTools import create_solnXRayPot
> import solnXRayPotTools
>
>
> xray=solnXRayPotTools.create_solnXRayPot('xray',
>                         experiment=saxs_data, #data file with columns q,
> I, err
>                         numPoints=100, #specifies the number of datapoints
> to sample
>                         normalizeIndex=-3, #specifies which grid point to
> use to normalize data. -3 specifies normalization which minimizes the Chi^2
> value.
>                         preweighted=False)
>
> xrayCorrect=solnXRayPotTools.create_solnXRayPot('xray-c',
>                                experiment=saxs_data,
>                                numPoints=100,  #should be the same as
> 'xray'
>                                normalizeIndex=-3,
>                                preweighted=False)
>
>
> solnXRayPotTools.useGlobs(xray)  #uses atom globbing aproximation
>
> xray.setNumAngles(100)           #number of angles in solid angle averaging
>
> xrayCorrect.setNumAngles(500)   # use a large number for correction term
>
> xray.setScale(50)               #restrint weight value
>
> xray.setCmpType("plain") #'plain'
>
> potList.append(xray)            #add to potlist energy terms
>
> crossTerms.append(xrayCorrect)
>
>
> from solnScatPotTools import fitParams
>
> rampedParams.append(
>     StaticRamp(
>     "fitParams(xrayCorrect);xray.calcGlobCorrect(xrayCorrect.calcd())",
>     stride=100))
>
>
> # Give atoms uniform weights, except for anisotropy axes (if any).
> #
> protocol.massSetup()
>
> #
> # Set up IVM object(s).
> #
> # IVM object for torsion-angle dynamics/minimization.
> import ivm
> dyn = ivm.IVM()
>
> protocol.torsionTopology(dyn, flexRiboseRing='resid 1:24')
>
> ### Optional IVM object for final Cartesian minimization.
> minc = ivm.IVM()
> protocol.cartesianTopology(minc)
>
> #
> # Temperature set up.
> #
> temp_ini = 3000.0   # initial temperature
> temp_fin = 25.0     # final temperature
>
>
> def calcOneStructure(loopInfo):
>     """Calculate a structure.
>
>     """
>
>     # Fix up covalent geometry.
>     # (The torsion restraints may include ring torsions and distort
> geometry.)
>     while True:
>         try:
>             protocol.fixupCovalentGeom(maxIters=100, useVDW=1)
>             break
>         except protocol.CovalentViolation:
>             pass
>
>     #
>     # High Temperature Dynamics Stage.
>     #
>
>     # Initialize parameters for high temperature dynamics.
>     InitialParams(rampedParams)
>     InitialParams(highTempParams) # purposedly overides some
>                                                   # setups in rampedParams
>
>     # Set up IVM object and run.
>     protocol.initDynamics(dyn,
>                           potList=potList,
>                           bathTemp=temp_ini,
>                           initVelocities=1,
>                           finalTime=15,   # run for finalTime or
>                           numSteps=15001, # numSteps * 0.001, whichever is
> less
>                           printInterval=100)
>
>     dyn.setETolerance(temp_ini/100) # used to find stepsize (default:
> temp/1000)
>
>     dyn.run()
>
>     #
>     # Simulated Annealing Stage.
>     #
>
>     # Initialize parameters for annealing.
>     InitialParams(rampedParams)
>
>     # Set up IVM object for annealing.
>     protocol.initDynamics(dyn,
>                           potList=potList,
>                           finalTime=0.63,  # run for finalTime or
>                           numSteps=631,   # numSteps * 0.001, whichever is
> less
>                           printInterval=100)
>
>     # Set up cooling loop and run.
>     AnnealIVM(initTemp=temp_ini,
>               finalTemp=temp_fin,
>               tempStep=12.5,
>               ivm=dyn,
>               rampedParams=rampedParams).run()
>
>     #
>     # Torsion angle minimization.
>     #
>     protocol.initMinimize(dyn,
>                           potList=potList,
>                           printInterval=50)
>     dyn.run()
>
>     #
>     # Cartesian minimization (optional).
>     #
>     protocol.initMinimize(minc,
>                           potList=potList,
>                           dEPred=10)
>     minc.run()
>
>
> from simulationTools import StructureLoop
> StructureLoop(numStructures=nstructures,
>               #pdbFilesIn=infilename,
>               pdbTemplate=outfilename,
>               doWriteStructures=True,
>               structLoopAction=calcOneStructure,
>               # Arguments for generating structure statistics:
>               genViolationStats=True,
>               averageSortPots=[potList['noe'], # terms for structure
> sorting
>                                potList['PLAN'],
>                                potList['xray'],
>                                potList['CDIH'],
>                                potList['rdc']],
>               averageTopFraction=FRACTION,  # top fraction of structs. to
> report on
>               averageFilename="SCRIPT_ave.pdb",
>               averagePotList=potList,  # terms analyzed
>               averageFitSel='not (name H* or resname ANI)', # selection to
> fit
>               ).run()                                       # to average
> struct.
>                                                         # and report
> precision
>
>
> #################################################################
>
> Log:
>
> GU12_ref_RDC_SAXS.py(373): StructureLoop(numStructures=nstructures,
> StructureLoop: calculating structure 0
> GU12_ref_RDC_SAXS.py(306):         try:
> GU12_ref_RDC_SAXS.py(307):
>  protocol.fixupCovalentGeom(maxIters=100, useVDW=1)
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> GU12_ref_RDC_SAXS.py(308):             break
> GU12_ref_RDC_SAXS.py(317):     InitialParams(rampedParams)
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> [stdin](1): xplor.execfile('GU12_ref_RDC_SAXS.py')
> Segmentation fault (core dumped)
>
> ########################################################################
>
> To unsubscribe from the XPLOR-NIH list, click the following link:
> Bad URL Removed - see why - 
> https://ees.sps.nih.gov/services/Pages/Anti-Virus.aspx?SUBED1=XPLOR-NIH&A=1
>


-- 
------------------------
Scott A. Robson

########################################################################

To unsubscribe from the XPLOR-NIH list, click the following link:
http://list.nih.gov/cgi-bin/wa.exe?SUBED1=XPLOR-NIH&A=1

Reply via email to