The argument checking is reasonable, but the code: + #spins = spin_ids_to_containers(spin_ids) + + spins_list = [] + for spin_id in self.model_loop(): + spins_list.append(spin_id[0]) + + spins = spin_ids_to_containers(spins_list)
breaks the logic. This cannot be done, as the code calling model_statistics() must be looping over the models (i.e. the model_loop()), so you cannot have the model_loop() inside it. Any API method which accepts the model_info argument will follow this logic. Regards, Edward On 5 May 2014 17:23, Edward d'Auvergne <[email protected]> wrote: > The original code was correct. The full test suite passes when this > change is not included. Why did you make this change? What was the > purpose? I'm a little confused. > > Regards, > > Edward > > > > On 5 May 2014 17:15, Troels Emtekær Linnet <[email protected]> wrote: >> Ehhhh. >> >> Can you suggest a change? >> >> Best >> Troels >> >> 2014-05-05 17:05 GMT+02:00 Edward d'Auvergne <[email protected]>: >>> Hi, >>> >>> I now have the failure when running: >>> >>> $ ./relax -s Relax_disp.test_hansen_cpmg_data_auto_analysis >>> >>> This is because the change is incorrect. The model_statistics() >>> method is called once for each individual model - for each iteration >>> of the model_loop(), which for the dispersion analysis is each spin >>> cluster (or individual spins). The logic: >>> >>> spins_list = [] >>> for spin_id in self.model_loop(): >>> spins_list.append(spin_id[0]) >>> >>> spins = spin_ids_to_containers(spins_list) >>> >>> is incorrect as the model_loop() loops over all spin clusters. >>> Therefore the 'spins' object will now be a list of the first spin >>> system from all clusters. Previously it was simply a list of all the >>> spins for the current spin cluster. I hope this makes sense. >>> >>> Regards, >>> >>> Edward >>> >>> >>> >>> On 5 May 2014 16:52, Troels Emtekær Linnet <[email protected]> wrote: >>>> Now ready to be tested with: >>>> >>>> relax -s Relax_disp.test_hansen_cpmg_data_auto_analysis -d >>>> >>>> >>>> ---------- Forwarded message ---------- >>>> From: <[email protected]> >>>> Date: 2014-05-05 16:46 GMT+02:00 >>>> Subject: r22958 - /trunk/specific_analyses/relax_disp/api.py >>>> To: [email protected] >>>> >>>> >>>> Author: tlinnet >>>> Date: Mon May 5 16:46:10 2014 >>>> New Revision: 22958 >>>> >>>> URL: http://svn.gna.org/viewcvs/relax?rev=22958&view=rev >>>> Log: >>>> Inserted commit r22954 to fix the AIC method selection. >>>> >>>> The command used was: >>>> svn merge -r22953:r22954 . >>>> >>>> ..... >>>> Attempt to fix function model_statistics() in API for relax_disp. >>>> >>>> bug #22012(https://gna.org/bugs/?22012): dx.map not implemented >>>> for pipe type relax_disp. >>>> >>>> Modified: >>>> trunk/specific_analyses/relax_disp/api.py >>>> ..... >>>> >>>> >>>> Modified: >>>> trunk/specific_analyses/relax_disp/api.py >>>> >>>> Modified: trunk/specific_analyses/relax_disp/api.py >>>> URL: >>>> http://svn.gna.org/viewcvs/relax/trunk/specific_analyses/relax_disp/api.py?rev=22958&r1=22957&r2=22958&view=diff >>>> ============================================================================== >>>> --- trunk/specific_analyses/relax_disp/api.py (original) >>>> +++ trunk/specific_analyses/relax_disp/api.py Mon May 5 16:46:10 2014 >>>> @@ -678,9 +678,21 @@ >>>> @rtype: tuple of (int, int, float) >>>> """ >>>> >>>> + # Bad argument combination. >>>> + if model_info == None and spin_id == None: >>>> + raise RelaxError("Either the model_info or spin_id >>>> argument must be supplied.") >>>> + elif model_info != None and spin_id != None: >>>> + raise RelaxError("The model_info arg " + repr(model_info) >>>> + " and spin_id arg " + repr(spin_id) + " clash. Only one should be >>>> supplied.") >>>> + >>>> # Unpack the data. >>>> spin_ids = model_info >>>> - spins = spin_ids_to_containers(spin_ids) >>>> + #spins = spin_ids_to_containers(spin_ids) >>>> + >>>> + spins_list = [] >>>> + for spin_id in self.model_loop(): >>>> + spins_list.append(spin_id[0]) >>>> + >>>> + spins = spin_ids_to_containers(spins_list) >>>> >>>> # The number of parameters for the cluster. >>>> k = param_num(spins=spins) >>>> >>>> >>>> _______________________________________________ >>>> relax (http://www.nmr-relax.com) >>>> >>>> This is the relax-commits mailing list >>>> [email protected] >>>> >>>> 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 >>>> [email protected] >>>> >>>> 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 _______________________________________________ relax (http://www.nmr-relax.com) This is the relax-devel mailing list [email protected] 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

