Note that I used the CR72 model as a base for many other slow exchange models as it is a robust and quick solution which in most cases accurately approximates the parameters of other models, especially the numeric models.
Regards, Edward On 18 August 2014 16:38, Edward d'Auvergne <[email protected]> wrote: > Hi, > > The model IT99 is extremely different to all other models, hence it is > not nested in the auto-analysis. No other model approximates it > parameters in any meaningful sense. See > test_suite/shared_data/dispersion/software_comparison for example. I > think that the model IT99 should have no corresponding nested model: > > MODEL_NESTING = { > ... > MODEL_IT99: None > ... > } > > To see this problem, just take any test data and optimise both CR72 > and IT99 and see if you can get any parameters to be close between the > two models. The new model nesting protocol is really starting to > worry me. Why did it change in the first place? > > Regards, > > Edward > > > > > On 12 August 2014 10:54, <[email protected]> wrote: >> Author: tlinnet >> Date: Tue Aug 12 10:54:49 2014 >> New Revision: 24988 >> >> URL: http://svn.gna.org/viewcvs/relax?rev=24988&view=rev >> Log: >> Fix for nesting kex, when model is CR72, and analysed models is IT99. >> >> sr #3135(https://gna.org/support/?3135): Optimisation of the R1 relaxation >> rate for the off-resonance R1rho relaxation dispersion models. >> >> Modified: >> branches/R1_fitting/specific_analyses/relax_disp/variables.py >> >> branches/R1_fitting/test_suite/unit_tests/_specific_analyses/_relax_disp/test_variables.py >> >> Modified: branches/R1_fitting/specific_analyses/relax_disp/variables.py >> URL: >> http://svn.gna.org/viewcvs/relax/branches/R1_fitting/specific_analyses/relax_disp/variables.py?rev=24988&r1=24987&r2=24988&view=diff >> ============================================================================== >> --- branches/R1_fitting/specific_analyses/relax_disp/variables.py >> (original) >> +++ branches/R1_fitting/specific_analyses/relax_disp/variables.py Tue >> Aug 12 10:54:49 2014 >> @@ -911,6 +911,10 @@ >> elif param == 'phi_ex' and compa_model.model in >> MODEL_LIST_ANALYTIC_CPMG + MODEL_LIST_NUMERIC_CPMG and model in >> MODEL_LIST_ANALYTIC_CPMG + MODEL_LIST_NUMERIC_CPMG: >> continue >> >> + # Special situation, where 'kex'=1/tex can still be nested >> from IT99 model. >> + elif param == 'tex' and compa_model.model in >> MODEL_LIST_ANALYTIC_CPMG + MODEL_LIST_NUMERIC_CPMG and model in >> MODEL_LIST_ANALYTIC_CPMG + MODEL_LIST_NUMERIC_CPMG: >> + continue >> + >> # Else break out of the loop. >> else: >> # Break the for loop, if not found. >> @@ -953,6 +957,13 @@ >> if compa_model.model in MODEL_LIST_R1RHO_W_R1_ONLY + >> MODEL_LIST_R1RHO_FIT_R1_ONLY: >> return model_info, compa_model >> >> + # Special case for IT99. >> + elif model in [MODEL_IT99]: >> + # Loop over the models. >> + for compa_model in compa_models: >> + # If one of the comparable models is in list with R1rho R1, >> return this. >> + if compa_model.model in MODEL_LIST_ANALYTIC_CPMG + >> MODEL_LIST_NUMERIC_CPMG: >> + return model_info, compa_model >> >> # If there is no comparable models according to EXP_TYPE, check if some >> models can be nested anyway. >> else: >> >> Modified: >> branches/R1_fitting/test_suite/unit_tests/_specific_analyses/_relax_disp/test_variables.py >> URL: >> http://svn.gna.org/viewcvs/relax/branches/R1_fitting/test_suite/unit_tests/_specific_analyses/_relax_disp/test_variables.py?rev=24988&r1=24987&r2=24988&view=diff >> ============================================================================== >> --- >> branches/R1_fitting/test_suite/unit_tests/_specific_analyses/_relax_disp/test_variables.py >> (original) >> +++ >> branches/R1_fitting/test_suite/unit_tests/_specific_analyses/_relax_disp/test_variables.py >> Tue Aug 12 10:54:49 2014 >> @@ -151,9 +151,27 @@ >> model = MODEL_CR72 >> >> # Test the return. >> - print nesting_model(self_models=self_models, model=model) >> self.assertEqual(nesting_model(self_models=self_models, >> model=model)[1].model, MODEL_LM63) >> >> + ## Test MODEL_IT99 model request, when models are CR72. >> + # Define all the models tested in the analysis. >> + self_models = [MODEL_R2EFF, MODEL_NOREX, MODEL_CR72, MODEL_IT99] >> + >> + # Define which current model is selected >> + model = MODEL_IT99 >> + >> + # Test the return. >> + self.assertEqual(nesting_model(self_models=self_models, >> model=model)[1].model, MODEL_CR72) >> + >> + ## Test MODEL_CR72 model request, when models are MODEL_IT99. >> + # Define all the models tested in the analysis. >> + self_models = [MODEL_R2EFF, MODEL_NOREX, MODEL_IT99, MODEL_CR72] >> + >> + # Define which current model is selected >> + model = MODEL_CR72 >> + >> + # Test the return. >> + self.assertEqual(nesting_model(self_models=self_models, >> model=model)[1].model, MODEL_IT99) >> >> >> def test_nesting_model_cpmg_mmq(self): >> >> >> _______________________________________________ >> 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

