Hi Edward.
I now seem to have problems how to solve:
relax -s
Relax_disp.test_bug_21665_cpmg_two_fields_two_delaytimes_fail_relax_disp
-------
Traceback (most recent call last):
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/test_suite/system_tests/relax_disp.py",
line 295, in test_bug_21665_cpmg_two_fields_two_delaytimes_fail_relax_disp
relax_disp.Relax_disp(pipe_name="compare_128_FT_R2eff",
pipe_bundle="cpmg_disp_sod1d90a", results_dir=self.tmpdir,
models=['R2eff'], grid_inc=3, mc_sim_num=5, modsel='AIC',
pre_run_dir=None, insignificance=1.0, numeric_only=False,
mc_sim_all_models=False, eliminate=True)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/auto_analyses/relax_disp.py",
line 116, in __init__
self.run()
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/auto_analyses/relax_disp.py",
line 451, in run
self.optimise(model=model)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/auto_analyses/relax_disp.py",
line 350, in optimise
self.interpreter.grid_search(inc=self.grid_inc)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/prompt/uf_objects.py",
line 221, in __call__
self._backend(*new_args, **uf_kargs)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/pipe_control/minimise.py",
line 152, in grid_search
grid_search(lower=lower, upper=upper, inc=inc,
constraints=constraints, verbosity=verbosity)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/api.py",
line 1093, in grid_search
self.minimise(min_algor='grid', lower=lower, upper=upper, inc=inc,
constraints=constraints, verbosity=verbosity, sim_index=sim_index)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/api.py",
line 1142, in minimise
self._minimise_r2eff(min_algor=min_algor, min_options=min_options,
func_tol=func_tol, grad_tol=grad_tol, max_iterations=max_iterations,
constraints=constraints, scaling=scaling, verbosity=verbosity,
sim_index=sim_index, lower=lower, upper=upper, inc=inc)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/api.py",
line 382, in _minimise_r2eff
values.append(average_intensity(spin=spin, exp_type=exp_type,
frq=frq, offset=offset, point=point, time=time, sim_index=sim_index))
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/disp_data.py",
line 114, in average_intensity
int_keys = find_intensity_keys(exp_type=exp_type, frq=frq,
offset=offset, point=point, time=time)
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/disp_data.py",
line 347, in find_intensity_keys
raise RelaxError("No intensity data could be found corresponding
to the spectrometer frequency of %s MHz, dispersion point of %s and
relaxation time of %s s." % (frq*1e-6, point, time))
RelaxError: RelaxError: No intensity data could be found corresponding
to the spectrometer frequency of 499.86214 MHz, dispersion point of
50.0 and relaxation time of 0.06 s
--------------
I can point the error stems from:
File
"/sbinlab2/tlinnet/software/NMR-relax/relax_trunk/specific_analyses/relax_disp/api.py",
line 382, in _minimise_r2eff
values.append(average_intensity(spin=spin, exp_type=exp_type,
frq=frq, offset=offset, point=point, time=time, sim_index=sim_index))
---------------
# Loop over each spectrometer frequency and dispersion point.
for exp_type, frq, offset, point in loop_exp_frq_offset_point():
....
for time in cdp.relax_time_list:
values.append(average_intensity(spin=spin,
exp_type=exp_type, frq=frq, offset=offset, point=point, time=time,
sim_index=sim_index))
errors.append(average_intensity(spin=spin,
exp_type=exp_type, frq=frq, offset=offset, point=point, time=time,
error=True))
times.append(time)
-------------
I think this should be solvable with something like:
---------------
# Loop over each spectrometer frequency and dispersion point.
for exp_type, frq, offset, point in
loop_exp_frq_offset_point_time():
....
values.append(average_intensity(spin=spin,
exp_type=exp_type, frq=frq, offset=offset, point=point, time=time,
sim_index=sim_index))
errors.append(average_intensity(spin=spin,
exp_type=exp_type, frq=frq, offset=offset, point=point, time=time,
error=True))
times.append(time)
-------------
What do you think ?
2014-02-20 18:44 GMT+01:00 Troels Emtekær Linnet <tlinnet@xxxxxxxxxxxxx>:
Hi Edward.
I found that the main error was the return of the dispersion points
from the function loop_point().
It seemed that the minimal change would be to add an extra check in
this function, and this
extra check should be dependent on the time point.
And hence i modified the loop_point() to take time as an argument, and
switching the order
would give me the time point.
Best
Troels
2014-02-20 18:27 GMT+01:00 Edward d'Auvergne <edward@xxxxxxxxxxxxx>:
Hi Troels,
Is there a reason for switching the order? It's useful to have that
in the commit message too. I can see they are switched from the code
that was changed, but I cannot see why.
Cheers,
Edward
On 20 February 2014 18:16, <tlinnet@xxxxxxxxxxxxx> wrote:
Author: tlinnet
Date: Thu Feb 20 18:16:51 2014
New Revision: 22222
URL: http://svn.gna.org/viewcvs/relax?rev=22222&view=rev
Log:
Switched the looping over time points and dispersion points.
Regarding bug #21665, (https://gna.org/bugs/?21665) - Running a CPMG
analysis with two fields at two delay times.
Modified:
trunk/specific_analyses/relax_disp/disp_data.py
Modified: trunk/specific_analyses/relax_disp/disp_data.py
URL:
http://svn.gna.org/viewcvs/relax/trunk/specific_analyses/relax_disp/disp_data.py?rev=22222&r1=22221&r2=22222&view=diff
==============================================================================
--- trunk/specific_analyses/relax_disp/disp_data.py (original)
+++ trunk/specific_analyses/relax_disp/disp_data.py Thu Feb 20 18:16:51
2014
@@ -869,10 +869,10 @@
for frq, mi in loop_frq(return_indices=True):
# Then loop over the offset data.
for offset, oi in loop_offset(exp_type=exp_type, frq=frq,
return_indices=True):
- # Then the dispersion points.
- for point, di in loop_point(exp_type=exp_type, frq=frq,
offset=offset, return_indices=True):
- # Finally the relaxation times.
- for time, ti in loop_time(return_indices=True):
+ # Then the relaxation times.
+ for time, ti in loop_time(return_indices=True):
+ # Finally the dispersion points.
+ for point, di in loop_point(exp_type=exp_type,
frq=frq, offset=offset, time=time, return_indices=True):
# Yield the data.
if return_indices:
yield exp_type, frq, offset, point, time,
ei, mi, oi, di, ti
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-commits mailing list
relax-commits@xxxxxxx
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-commits
_______________________________________________
relax (http://www.nmr-relax.com)
This is the relax-devel mailing list
relax-devel@xxxxxxx
To unsubscribe from this list, get a password
reminder, or change your subscription options,
visit the list information page at
https://mail.gna.org/listinfo/relax-devel