mailRe: How many rounds does it take?


Others Months | Index by Date | Thread Index
>>   [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Header


Content

Posted by Edward d'Auvergne on December 14, 2012 - 09:50:
Did you run relax with Gary Thompson's multi-processor
framework to take advantage of all your CPU cores?

Yes, I used mpi4py. And in fact it's a hexacore Intel Core i7, not an 
octocore. I'm not sure if I should run mpi4py with the six physical number 
of cores or with the double of that numbers (12 hyperthreaded cores).

You would have to research that one for yourself.  You could also test
with 6 and 12 slaves and see what happens.


Now I tried a big protein–one with >240 assigned residues. It took 2 days 
and 23 rounds to find a optimized spherical diffusion model, and since 
yesterday it churned out 35 prolate diffusion models!

This is quite possible.  I would highly recommend you create plots of
the progression of optimisation such as in: [d'A&G:2008b]

You can obtain the data for the plots by manually opening the results
files in the 'opt' directories and then manually creating the graphs.

I stopped the process after relax made >100 prolate models and tried to 
extract the mentioned parameters (tm, total number of parameters k, global 
AIC, chi2) from the results files in round_x/opt/ to see where it is 
heading.

That is far too many, so something is wrong.


Turns out this appears to be more difficult than expected. I can see the 
chi2 values and all the model-free parameters like S^2 and R_ex, but how 
can I get the AIC or the total number of parameters from?

Is there a relax function which lists all the parameters of the current 
data pipe?

This is true, the information is not stored in the relax data pipes as
it can be quite dynamic and reconstructed from all of the other data.
You could do this programatically.  But you would need to dive into
the relax API (http://www.nmr-relax.com/api/).  You could loop over
all the spins using the spin_loop() function (see the API
documentation) and calculate the number of parameters for each and add
that to the number of diffusion parameters.  Or you could, for
example, in the relax prompt or script modes first import the function
for accessing the analysis specific API:

from specific_fns.setup import get_specific_fn

To understand what is happening, please refer to the API documentation
(http://www.nmr-relax.com/api/).  You could then fetch the method for
obtaining model statistics with:

model_stats = get_specific_fn('model_stats', cdp.pipe_type)

Then to obtain the statistics required to calculate the AIC value,
just call that method with:

k, n, chi2 = model_stats(0, global_stats=True)

If you look at the API documentation, you will see that this specific
call is only valid for the global model of the combined diffusion
tensor and model-free models of all spins, i.e. the results in the
'opt' directories.  It will not work for the other results files.
Then you just need the AIC equation:

AIC = chi2 + 2k.

Regards,

Edward



Related Messages


Powered by MHonArc, Updated Fri Dec 14 12:20:07 2012