TNG300-1 snapshot 40 discrepancies (Wind masses)

ML van Loon
  • 24 Jan

Hi,
I've been working with TNG300-1 for some time now and have noticed something weird about snapshot 40. I have made some of my own catalogues using the stellar particle data, omitting wind particles in my calculations of stellar mass, centre of mass, galactic velocity and shapes.
For all other snapshots that I have used my scripts on, I am left with around 2-3 million galaxies once omitting those that are only wind particles. (I have used snapshots 99,91,84,78,59,50,39) For snap 40 I have ~588 thousand.
Furthermore, a comparison of catalogue mass vs my summation of particle masses that omit wind particles yields very similar results for all snapshots except 40. M_nowind/M is always 1 to within 1e-6 or so and for snapshot 40 it ranges between 0.88 and 1.37.
When taking the intersection of a subsample of the galaxies in my catalogue and the Stellar Circularities, Angular Momenta, Axis Ratios catalogue, I am usually left with around 70-100 thousand galaxies, whereas snapshot 40 leaves me with 1225.
As the stats for snapshot 39 are the same as the other snapshots, I have to assume this is not some redshift evolution effect, but something internal to snapshot 40.
I was wondering if you were aware of these differences and if some bug (likely to do with the wind particles) has created these effects?
Is there anything I need to account for in my research?

Dylan Nelson
  • 30 Jan

I ran the following short calculation:

In [1]: sim = temet.sim('tng300-1')
                                                                                                                   In [2]: for snap in np.arange(100):
   ...:     sim.setSnap(snap)
   ...:     pt4_ages = sim.stars('GFM_StellarFormationTime')
   ...:     num_wind = np.count_nonzero(pt4_ages < 0)                                                                 ...:     print(snap, num_wind, '%.2f%%' % (num_wind/pt4_ages.size*100))
   ...:

with output

0 4 100.00%
1 3860 93.71%
2 113501 91.02%                                                                                                    3 307543 89.58%
4 715974 87.16%
5 1165662 85.38%
...
38 6416122 1.99%
39 6050076 1.79%
40 5894633 1.71%
41 5471820 1.50%
42 5253025 1.39%
...

which is to say, I don't see anything strange with snapshot 40 of TNG300-1 in terms of the number of wind particles.

If you can post specific code that shows the issue I can look a bit more.

ML van Loon
  • 3
  • 31 Jan

Providing code will be a bit difficult as I don't use the standard snapshot data for my research so anything I put down will seem very arbitrary to you. I can explain what I have though. My snapshot files include only particles that are in galaxies (to conserve disk space). For each galaxy I create a 'Wind_Flag' that is 1 if the galaxy consists of only wind particles. If so, it is discarded from the sample (as I only want stellar particles).
If I check how many galaxies are pure wind for snapshot 40 and 39 for example, I get:

print(len(Wind_Flag), sum(Wind_Flag), len(Wind_Flag)-sum(Wind_Flag))
18203464-15198736 = 3004728 (snap 39)
10003744 - 9415361= 588383 (snap 40)

I checked other snapshots, and they are very comparable to snapshot 39

Using my snapshot files, I recalculated all galaxy stellar masses without wind particles (summation over all non-wind PT4 masses). Using the given TNG catalogue 'SubhaloMassType' for PT4 as 'Mass_inclwind' and my own galaxy stellar masses as 'Mass':

Mass = np.log10(Mass) + 10.0
Mass_inclwind = np.log10(Mass_inclwind) + 10.0
print(min(Mass / Mass_inclwind), max(Mass / Mass_inclwind), np.mean(Mass / Mass_inclwind))
print(min(10 \** Mass / 10 \** Mass_inclwind), max(10 \** Mass / 10 \** Mass_inclwind), np.mean(10 \** Mass / 10 \** Mass_inclwind))

output:

for snap 39:
0.9999999304208406 1.0000000691017683 0.9999999999995614
0.9999986731006627 1.0000013239949628 0.9999999999959204

for snap 40:
-0.0 2.0033477850095753 0.49626923092942854
7.644250009431158e-06 inf inf

I checked other snapshots, and they are very comparable to snapshot 39.

It cannot be something in the creation of my snapshot files as I have used the same generalised scripts for each snapshot and all others agree. I also did snap 40 twice in case the files were damaged or something

Dylan Nelson

I assume by galaxy you mean subhalo.

if we consider the SubhaloWindMass field, then for TNG300-1 at snapshots 38, 39, 40, 41, 42, the total number of subhalos with this field greater than zero is:

for snap in [38,39,40,41,42]:
    sim = temet.sim('tng300-1', snap=snap)
    SubhaloWindMass = sim.subhalos('SubhaloWindMass')
    print(snap,np.count_nonzero(SubhaloWindMass))

38 141128
39 131235
40 129123
41 113797
42 112093

do you find the same numbers? If so, there cannot be more "galaxies that are pure wind" than this number.

Perhaps you are counting subhalos where wind mass, and/or stellar mass, is zero?

  • Page 1 of 1