In fact we saw this issue firstly with dummy decay mode. Then we found this also happens when decaying on-shell particles. For example the errors I posted is produced for decaying tt~ events with the default settings.
I am not confident to answer if I am using spinmode only, but if the default setting is then yes I am using it, and also I am using dummy decay mode to modify the helicity.
I am relooking at the files and I feel the problem is that even if the "decay_struct" are stored after being converted to string. Once they are loaded they are converted back to dictionaries.
I add a try except to the loading part:
716 for me in generate_all.all_ME:
717 for d in generate_all.all_ME[me]['decays']:
718 try:
719 tmp_ds = eval(d['decay_struct'])
720 except TypeError:
721 print("eval error")
722 if d['decay_struct'] == "":
723 print("decay_struct is empty string")
724 else:
725 print(type(d['decay_struct']))
726 else:
727 d['decay_struct'] = tmp_ds
With this try except part MadSpin now works and when I look at the output file I find the 'decay_struct' are all dictionaries.
Thanks for your quick response!
In fact we saw this issue firstly with dummy decay mode. Then we found this also happens when decaying on-shell particles. For example the errors I posted is produced for decaying tt~ events with the default settings.
I am not confident to answer if I am using spinmode only, but if the default setting is then yes I am using it, and also I am using dummy decay mode to modify the helicity.
I am relooking at the files and I feel the problem is that even if the "decay_struct" are stored after being converted to string. Once they are loaded they are converted back to dictionaries.
I add a try except to the loading part:
716 for me in generate_ all.all_ ME: all.all_ ME[me][ 'decays' ]: 'decay_ struct' ]) d['decay_ struct' ]))
717 for d in generate_
718 try:
719 tmp_ds = eval(d[
720 except TypeError:
721 print("eval error")
722 if d['decay_struct'] == "":
723 print("decay_struct is empty string")
724 else:
725 print(type(
726 else:
727 d['decay_struct'] = tmp_ds
With this try except part MadSpin now works and when I look at the output file I find the 'decay_struct' are all dictionaries.
Cheers,
Sitian