Warning, empty return. Subhalo [i] at snapNum [j] not in tree
Flaminia Fortuni
5 Jun '18
Hello everyone,
I'm doing some kind of analysis through the whole Illustris-3 simulation (then I'd like to do the same for Illustris-1), using GroupCat Files and SubLink Merger Trees for SnapNumber= [38, 41, 45, 49, 54, 60, 63, 68, 73, 78, 85, 91, 99, 108, 119, 135] .
It happens that when I walk the trees of some objects, my scripts breaks and python gives me this advice:
Warning, empty return. Subhalo [649] at snapNum [68] not in tree.
Not much at high z , but really often at low z (high SnapNum).
What's the reason? What should I do to be sure that I can continue my analysis?
Thanks for your answer
Flaminia
Dylan Nelson
11 Jun '18
Hi Flaminia,
If you take a look at the loadTree() function in sublink.py, you can see where this occurs. When this happens, the return is None, so you should just add a check for this return value, and if it happens, you can handle it as appropriate. Perhaps, depending on your science goals, you simply wish to skip ahead to the next subhalo in this case.
This warning occurs because, as implied, the subhalo is not in (any) tree. Meaning, it has no progenitors at previous time. This would be possible (or probable) for low-mass subhalos, near the resolution limit, for instance.
Hello everyone, I'm doing some kind of analysis through the whole Illustris-3 simulation (then I'd like to do the same for Illustris-1), using GroupCat Files and SubLink Merger Trees for SnapNumber= [38, 41, 45, 49, 54, 60, 63, 68, 73, 78, 85, 91, 99, 108, 119, 135] . It happens that when I walk the trees of some objects, my scripts breaks and python gives me this advice:
Warning, empty return. Subhalo [649] at snapNum [68] not in tree.
Not much at high z , but really often at low z (high SnapNum). What's the reason? What should I do to be sure that I can continue my analysis? Thanks for your answer Flaminia
Hi Flaminia,
If you take a look at the loadTree() function in sublink.py, you can see where this occurs. When this happens, the return is
None
, so you should just add a check for this return value, and if it happens, you can handle it as appropriate. Perhaps, depending on your science goals, you simply wish to skip ahead to the next subhalo in this case.This warning occurs because, as implied, the subhalo is not in (any) tree. Meaning, it has no progenitors at previous time. This would be possible (or probable) for low-mass subhalos, near the resolution limit, for instance.