Hi, It's not a problem. This user function is not ideally designed yet. Maybe changing the argument from 'error' to 'set_error' would improve it. This user function also needs to be modified to be able to set list and dictionary type parameter values, but this is very difficult. For example the r2 parameter in the dispersion analysis which is used for the R2eff or R1rho rate in the absence of exchange. This is currently a list with the elements ordered with the order of spectrometer frequencies. But you cannot assume this structure as it can change in the future (as often happens). And in the user functions, the aim is to avoid all programming concepts so the user should not be presented with the concept of lists and dictionaries, or at least this should be minimised. So there has to be some abstraction for the user - i.e. they simply specify the value and the qualifier which is the magnetic field strength. Anyway, that was a bit of an aside! Regards, Edward On 23 October 2013 21:28, Troels Emtekær Linnet <tlinnet@xxxxxxxxxxxxx> wrote:
Oh, well, that is embarrasing. I understood from the help lines, that the error flag was to return error messages, if the value was not set. Silly. Den 23/10/2013 18.50 skrev "Edward d'Auvergne" <edward@xxxxxxxxxxxxx>:Hi, Was this unexpected? The error flag allows the parameter error rather than value to be set, so that is the correct behaviour. Were you trying to do something different? Regards, Edward On 23 October 2013 18:26, Troels Emtekær Linnet <tlinnet@xxxxxxxxxxxxx> wrote:Hi Edward. This test script: ---------- pipe.create(pipe_name='test', bundle='test', pipe_type='relax_disp') spin.create(spin_name='N', spin_num=1, res_name='V', res_num=2, mol_name=None) spin.create(spin_name='N', spin_num=2, res_name='F', res_num=3, mol_name=None) spin.create(spin_name='N', spin_num=3, res_name='G', res_num=4, mol_name=None) spin.create(spin_name='N', spin_num=4, res_name='R', res_num=5, mol_name=None) spin.create(spin_name='N', spin_num=5, res_name='C', res_num=6, mol_name=None) relax_disp.cluster('model_cluster', ':2@N') relax_disp.cluster('model_cluster', ':3@N') value.set(val = 8.5, param='r2', spin_id=':2@N', error=True) value.set(val = 500, param='kex', spin_id=':3@N', error=True) state.save('test', force=True) ---------- If I load the saved state, and inspect the spins in the spin viewer, I see that the parameters are set for: r2_err = 8.5 kex_err = 500 Is this the expected behavior? best Troels _______________________________________________ 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