Dear Charles,

I am wondering whether you or anyone has an example of
refining an ensemble with Lipari-Szabo order parameters?
The capability seems to be there in xplor-nih (see OrderPot
in python help files) but has anyone used it? A test case would
be helpful if it exists.

with best regards and many thanks,

Matthias Buck
Assistant Professor
Physiology & Biophysics Department
Case Western Reserve Univ.
Medical School, E646
2109 Adelbert Road
Cleveland, Ohio, 44106

fax      216-368-1693
phone 216-368-8651

e-mail [email protected]
http://mbalster.cwru.edu/

----- Original Message ----- 
From: <[email protected]>
To: "RMB Hoffman" <[email protected]>
Cc: <[email protected]>
Sent: Wednesday, June 28, 2006 2:53 PM
Subject: Re: [Xplor-nih] ensemble averaging and pdbToPSF problems


> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> 
> Hi Ryan--
> 
>> 
>> 1) What is the difference, if any, between potList.add vs.
>> potList.append?
> 
> There is no difference. I now prefer append, because it's the name used
> for Python lists.
> 
>> 
>> 2) For ensemble-averaging the NOEs, the script eginput/gb3_ensemble/
>> tor_cross_two_all.py gives values for an NOE term and an 'enoe' term.
>> Why are there two NOE potentials with the same data? The data
>> 'hbond.tbl' is inputed twice, once using legacy XPLOR syntax and the
>> other using the Python interface. The enoe is added to the potList
>> immediately after inputting. But the AvePot function is only applied
>> to NOE (not enoe).
> 
> There are two distinct potential terms. The AvePot version restrains
> each individual ensemble member to obey the noe restraints, while the
> ensemble term applies ensures that the ensemble average distances are
> restrained. There is no reason the XplorPot was used instead of an NOE
> pot- either is fine.
> 
>> 
>> 3) Is the correct way to implement the ensemble averaging to first
>> load the potentials as if it's a single-conformer simulation and
>> subsequently apply AvePot? I seem to get into trouble when I directly
>> load the restraints with AvePot (into a potList), getting errors that
>> say something along the lines of "XplorPot requires an Xplor
>> simulation." Where I'm going with this: how do I ensemble average
>> some terms and not others? Should I use functions like create_NOEPot
>> and protocol.initDihedrals to input the data, apply AvePot to the
>> potential terms I want ensemble averaged, and then append all of them
>> (ensemble-averaged and -nonaveraged) into a single potList?
> 
> The potential term must support ensemble averaging in order to use it
> with the EnsembleSimulation- XplorPot does not, which is why you get
> those errors. All you can do with non-ensemble aware terms is to
> ensemble-average the resulting energies using AvePot. The easiest way to
> use AvePot is
>  AvePot(OtherPot,args)
> where OtherPot is some other (probably non-ensemble-aware term like
> XplorPot), and args are the arguments usually passed to the potential
> term's constructor. Hence:
>  AvePot(XplorPot,"BOND")
> will instantiate an ensemble-averaged bond energy term.
> 
> You can also ensemble average terms which have previously been created
> from the underlying (non-ensemble) Simulation:
> 
> from noePotTools import create_NOEPot
> rawHB = create_NOEPot("noe-HB","hbond.tbl",esim=xplor.simulation)
> noeHB  = AvePot(rawHB)
> 
> but here you must be very careful which Simulation the averaged term is
> referencing. Constrast that line with
> 
> noe = create_NOEPot("noe","noe.tbl")
> 
> which creates an energy term to restraint the ensemble-averaged NOE
> restraints. 
> 
> You can use noeHB and noe together in ensemble refinement. rawHB should
> not be used except in construction of noeHB.
> 
> 
>> 
>> 4) I have a PDB that fails to generate a well-behaved PSF with the
>> following sequence:
>>    from psfGen import pdbToPSF
>>    protocol.initCoords(myPDB)
>>    pdbToPSF(myPDB)
>> 
>> At least I think it fails; I get a crash with a "singular D matrix"
>> message. 
> 
> The message is from the IVM, probably because all the coordinates are
> undefined... 
> 
> The sequence should be:
> 
> from psfGen import pdbToPSF
> pdbToPSF(myPDB)
> protocol.initCoords(myPDB)
> 
> You may still have some uninitialized atom positions in the PDB file, so
> you might try protocol.addUnknownAtoms() in that case.
> 
> best regards--
> Charles
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.3 (GNU/Linux)
> Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/>
> 
> iD8DBQFEotAePK2zrJwS/lYRAp2wAJoCeBzkgnnLW9gGI4KtwpCGcGPHRACcCLlY
> C08yAWHE+KNLGLY8q/a87Z8=
> =g52M
> -----END PGP SIGNATURE-----
> _______________________________________________
> Xplor-nih mailing list
> [email protected]
> http://dcb.cit.nih.gov/mailman/listinfo/xplor-nih

Reply via email to