From bfaa959daccdb474f28b948af4850bccbd949fed Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Wed, 28 Jan 2026 14:51:42 +0100 Subject: [PATCH 01/14] Split up docs into sections --- source/soap/index.rst | 1619 +--------------------------- source/soap/membership_files.rst | 49 + source/soap/particle_selection.rst | 164 +++ source/soap/property_filters.rst | 83 ++ source/soap/property_table.rst | 1301 ++++++++++++++++++++++ 5 files changed, 1618 insertions(+), 1598 deletions(-) create mode 100644 source/soap/membership_files.rst create mode 100644 source/soap/particle_selection.rst create mode 100644 source/soap/property_filters.rst create mode 100644 source/soap/property_table.rst diff --git a/source/soap/index.rst b/source/soap/index.rst index bb50589..d04956f 100644 --- a/source/soap/index.rst +++ b/source/soap/index.rst @@ -1,1559 +1,30 @@ -SOAP halo catalogues -==================== +Halo catalogues +================= -SOAP computes different types of properties, depending on how particles -are included (by radius, in projection...). For all types, we use the -halo membership and centre of potential as determined by the input halo -catalogue. This documentation is generated using the SOAP parameter -file, and so the properties listed reflect those present in the current -run of SOAP, rather than all possible properties. +When we observe the real Universe, the light from distant objects +takes time to reach us. This means we see these objects as they were +when the light was emitted. More distant objects are seen as they were +at earlier times. -Property types --------------- +The FLAMINGO simulations attempt to replicate this effect for easier +comparison with observations. We place several virtual observers in +the simulated volume of space at the present day, and as the +simulation evolves we identify and store particles which cross each +observer's lightcone. A particle crosses the lightcone when it passes +exactly the distance at which light emitted from it would arrive at +the observer today. -Subhalo quantities (SH) -^^^^^^^^^^^^^^^^^^^^^^^ +The FLAMINGO lightcone outputs include particle data, HEALPix maps, and +halo catalogues. These are described in the following sections: -are computed for each subhalo identified by the halo finder, -irrespective of whether it is a field halo or a satellite (or even -satellite of satellite and so on). They include all particles that they -halo finder has determined are bound to the subhalo. Subhalo properties -are contained within the group ``BoundSubhalo`` in the output file. +.. toctree:: + :maxdepth: 2 -Exclusive sphere quantities (ES) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + particle_selection + property_filters + property_table + membership_files -are similar to subhalo quantities, but they include only the particles -that are bound to the subhalo, and apply an additional radial cut -(aperture). We use eight different aperture radii (10, 30, 50, 100, 300, -500, 1000, 3000 kpc), so that every (sub-)halo has eight of these. -Exclusive sphere properties are contained within a group -``ExclusiveSphere/XXXkpc``, where ``XXX`` is the corresponding aperture -radius. - -Inclusive sphere quantities (IS) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -use the same physical aperture radii as the exclusive sphere quantities, -but include all particles within the radius, regardless of their -membership status. They are stored within a group -``InclusiveSphere/XXXkpc``. - -Exclusive projected quantities (EP) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -are similar to exclusive sphere quantities, except that their aperture -filter is applied in projection, and this for independent projections -along the x-, y- and z-axis. Along the projection axis, we do not apply -any radial cut, so that the depth corresponds to all particles bound to -the (sub-)halo. With four projected aperture radii (10, 30, 50, 100 -kpc), we then have twelve sets of projected aperture quantities for each -(sub-)halo. Projected aperture quantities are stored in a group named -``ProjectedAperture/XXXkpc/projP``, where ``XXX`` is the corresponding -aperture radius, and ``P`` corresponds to a particular projection -direction (``x``, ``y`` or ``z``). - -Spherical overdensity properties (SO) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -are fundamentally different from the three other types in that their -aperture radius is determined from the density profile and is different -for different halos. They always include all particles within a sphere -around the centre of potential, regardless of halo membership. The -radius is either the radius at which the density reaches a certain -target value (50 crit, 100 crit, 200 crit, 500 crit, 1000 crit, 2500 -crit, 200 mean, BN98) or a multiple of such a radius (5xR 500 crit). -Details of the spherical overdensity calculation are given at the end of -this document. Spherical overdensities are only computed for centrals, -i.e. field halos. The inclusive sphere quantities are stored in a group -``SO/XXX``, where ``XXX`` can be either ``XXX_mean`` for density -multiples of the mean density, ``XXX_crit`` for density multiples of the -critical density, ``BN98`` for the overdensity definition of Bryan & -Norman (1998), and ``YxR_XXX_ZZZ`` for multiples of some other radius -(e.g. ``5xR_2500_mean``). The latter can only be computed after the -corresponding density multiple SO radius has been computed. This is -achieved by ordering the calculations. - -InputHalos -^^^^^^^^^^ - -Some properties are directly copied from the original halo catalogue -that was passed to SOAP. These are stored in a separate group, -``InputHalos``. - -SOAP -^^^^ - -Some properties are computed by SOAP using the other halo properties -present in the catalogue. These are stored in a separate group, -``SOAP``. This is just done for convenience; these quantities can be -computed from the SOAP output alone. - -The table below lists -^^^^^^^^^^^^^^^^^^^^^ - -all the groups in the output file which containing datasets. Note that -there will be three groups (``x``, ``y`` or ``z``) for each -``ProjectedAperture`` variation. Each halo variation can have a filter -applied to it. If a halo does not satisfy the filter then the variation -will not be calculated for that halo. More information on filters can be -found in the next section. - - -+------------------------------------+----------------------------------------+------------+-------------+ -| Group name (HDF5) | Group name (swiftsimio) | Inclusive? | Filter | -+====================================+========================================+============+=============+ -| ``BoundSubhalo`` | ``bound_subhalo`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/200_crit`` | ``spherical_overdensity_200_crit`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/50_crit`` | ``spherical_overdensity_50_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/100_crit`` | ``spherical_overdensity_100_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/200_mean`` | ``spherical_overdensity_200_mean`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/500_crit`` | ``spherical_overdensity_500_crit`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/5xR_500_crit`` | ``spherical_overdensity_5xr_500_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/1000_crit`` | ``spherical_overdensity_1000_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/2500_crit`` | ``spherical_overdensity_2500_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/BN98`` | ``spherical_overdensity_bn98`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/10kpc`` | ``exclusive_sphere_10kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/30kpc`` | ``exclusive_sphere_30kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/50kpc`` | ``exclusive_sphere_50kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/100kpc`` | ``exclusive_sphere_100kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/300kpc`` | ``exclusive_sphere_300kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/500kpc`` | ``exclusive_sphere_500kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/1000kpc`` | ``exclusive_sphere_1000kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/3000kpc`` | ``exclusive_sphere_3000kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/10kpc`` | ``inclusive_sphere_10kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/30kpc`` | ``inclusive_sphere_30kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/50kpc`` | ``inclusive_sphere_50kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/100kpc`` | ``inclusive_sphere_100kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/300kpc`` | ``inclusive_sphere_300kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/500kpc`` | ``inclusive_sphere_500kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/1000kpc`` | ``inclusive_sphere_1000kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/3000kpc`` | ``inclusive_sphere_3000kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/10kpc/projP`` | ``projected_aperture_10kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/30kpc/projP`` | ``projected_aperture_30kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/50kpc/projP`` | ``projected_aperture_50kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/100kpc/projP`` | ``projected_aperture_100kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SOAP`` | ``soap`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos`` | ``input_halos`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos/HBTplus`` | ``input_halos_hbtplus`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos/FOF`` | ``input_halos_fof`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ - -Property categories -------------------- - -Halo properties only make sense if the subhalo contains sufficient -particles. Halo finders are often run with a configuration that requires -at least 20 particles for a satellite subhalo. However, even for those -particle numbers, a lot of the properties computed by SOAP will be zero -(e.g. the gas mass within a 10 kpc aperture), or have values that are -outliers compared to the full halo population because of undersampling. -We can save a lot of disk space by filtering these out by applying -appropriate cuts. Filtering means setting the value of the property to -``NaN``; HDF5 file compression then very effectively reduces the data -storage required to store these properties, while the size of the arrays -that the end user sees remains unchanged. Evidently, we can also save on -computing time by not computing properties that are filtered out. - -Since different properties can have very different requirements, -filtering is done in categories, where each category corresponds to a -set of quantities that are filtered using the same criterion. Inclusive, -exclusive or projected quantities with different aperture radii (or -overdensity criteria) can be used to create profiles. In order for these -profiles to make sense, we have to apply a consistent cut across all the -different aperture radii (or overdensity criteria) for the same subhalo -property type. Or in other words: the quantities for an inclusive sphere -with a 10 kpc aperture radius will use the same filter mask as the -quantities of the inclusive sphere with a 3000 kpc aperture radius, even -though the latter by construction has many more particles. - -Basic quantities (basic) -^^^^^^^^^^^^^^^^^^^^^^^^ - -are never filtered out, and hence are calculated for all objects in the -input halo catalogue. - -General quantities (general) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the total number of particles bound to the -subhalo. - -Gas quantities (gas) -^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of gas particles bound to the subhalo. - -DM quantities (dm) -^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of DM particles bound to the subhalo. - -Stellar quantities (star) -^^^^^^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of star particles bound to the subhalo. - -Baryon quantities (baryon) -^^^^^^^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of gas and star particles bound to the -subhalo. - -Note that there are no quantities that use a BH or neutrino particle -number filter. - -The particle number thresholds are set in the parameter file. The -different categories are summarised in the table below. - -+---------+-----------------------------------------------------------------------+ -| Name | criterion | -+=========+=======================================================================+ -| basic | (all halos) | -+---------+-----------------------------------------------------------------------+ -| general | :math:`N_{\rm{}gas}+N_{\rm{}dm}+N_{\rm{}star}+N_{\rm{}BH} \geq{} 100` | -+---------+-----------------------------------------------------------------------+ -| gas | :math:`N_{\rm{}gas} \geq{} 100` | -+---------+-----------------------------------------------------------------------+ -| dm | :math:`N_{\rm{}dm} \geq{} 100` | -+---------+-----------------------------------------------------------------------+ -| star | :math:`N_{\rm{}star} \geq{} 100` | -+---------+-----------------------------------------------------------------------+ -| baryon | :math:`N_{\rm{}gas}+N_{\rm{}star} \geq{} 100` | -+---------+-----------------------------------------------------------------------+ - -Overview table --------------- - -The table below lists all the properties that are computed by SOAP when -run in HYDRO mode. For dark matter only (DMO) mode only the properties -colored violet/purple are computed. This table is automatically -generated by SOAP from the source code, so that all names, types, units, -categories and descriptions match what is actually used and output by -SOAP. For each quantity, the table indicates for which halo types the -property is computed. Superscript numbers refer to more detailed -explanations for some of the properties and match the numbers in the -next section. If swiftsimio has been used to load a catalogue then the -fields names are in snake_case rather than CamelCase, e.g. -``CentreOfMass`` becomes ``centre_of_mass``. - -Note that quantities are given in the base units of the simulation -snapshot. The attributes of each SOAP dataset contains all the relevant -meta-data to convert between physical and co-moving units, i.e. -information about how the quantity depends on the scale-factor, and what -the conversion factor to and from CGS units is. All quantities are -:math:`h`-free. The conversion of the base units to CGS is given by: - -==== ============== -Unit CGS conversion -==== ============== -L 3.086e+24 cm -M 1.988e+43 g -t 3.086e+19 s -T 1 K -==== ============== - -For example, a property whose units are listed as M/t will have units of -velocity, where :math:`1 \, \rm{M/t} = 1\, \rm{km/s}`. The scale factor -is explicitly included for comoving properties (e.g. the units of -HaloCentre are aL) - -.. container:: landscape - - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | Name | Shape | Type | Units | SH | ES | IS | EP | SO | Category | Compression | Description | - +===================================================================================+=======+=========+====================================================+====+====+====+====+====+==========+=========================================================+===================================+ - | BlackHolesDynamicalMass | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH dynamical mass. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH subgrid mass. | - | | | | | | | | | | | | | - | BlackHolesSubgridMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | basic | 1 pc accurate | Centre of mass. | - | | | | | | | | | | | | | - | CentreOfMass\ :math:`^{1}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | basic | 0.1 km/s accurate | Centre of mass velocity. | - | | | | | | | | | | | | | - | CentreOfMassVelocity\ :math:`^{1}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | - | | | | | | | | | | | | NFW profile. Minimum particle | - | Concentration\ :math:`^{2}` | | | | | | | | | | | radius set to softening length | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | - | | | | | | | | | | | | NFW profile. No particle | - | ConcentrationUnsoftened | | | | | | | | | | | softening. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | - | | | | | | | | | | | | particles assuming an NFW | - | DarkMatterConcentration\ :math:`^{2}` | | | | | | | | | | | profile. Minimum particle radius | - | | | | | | | | | | | | set to softening length | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | - | | | | | | | | | | | | particles assuming an NFW | - | DarkMatterConcentration­Unsoftened | | | | | | | | | | | profile. No particle softening | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total DM mass. | - | | | | | | | | | | | | | - | DarkMatterMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of the particle furthest | - | | | | | | | | | | | | from the halo centre | - | EncloseRadius | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass. | - | | | | | | | | | | | | | - | GasMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in | - | | | | | | | | | | | | metals. | - | GasMassFractionInMetals\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Stellar half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusStars\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | - | | | | | | | | | | | | accounting for particle softening | - | MaximumCircularVelocity\ :math:`^{5}` | | | | | | | | | | | lengths. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | - | | | | | | | | | | | | MaximumCircularVelocityUnsoftened | - | MaximumCircularVelocity­Radius­Unsoftened\ :math:`^{5}` | | | | | | | | | | | is reached. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | - | | | | | | | | | | | | not accounting for particle | - | MaximumCircularVelocity­Unsoftened\ :math:`^{5}` | | | | | | | | | | | softening lengths. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | y | y | y | y | y | basic | Store less bits | ID of most massive black hole. | - | | | | | | | | | | | | | - | MostMassiveBlackHole­ID | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of most massive black hole. | - | | | | | | | | | | | | | - | MostMassiveBlackHole­Mass\ :math:`^{6}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Noise suppressed total neutrino | - | | | | | | | | | | | | mass. | - | NoiseSuppressedNeutrino­Mass\ :math:`^{7}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of black hole particles. | - | | | | | | | | | | | | | - | NumberOfBlackHoleParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of dark matter particles. | - | | | | | | | | | | | | | - | NumberOfDarkMatterParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of gas particles. | - | | | | | | | | | | | | | - | NumberOfGasParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | n | n | n | n | y | basic | no compression | Number of neutrino particles. | - | | | | | | | | | | | | | - | NumberOfNeutrinoParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of star particles. | - | | | | | | | | | | | | | - | NumberOfStarParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total neutrino particle mass. | - | | | | | | | | | | | | | - | RawNeutrinoMass\ :math:`^{7}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of a sphere satisfying a | - | | | | | | | | | | | | spherical overdensity criterion. | - | SORadius | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total star formation rate. | - | | | | | | | | | | | | | - | StarFormationRate\ :math:`^{8}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in metals | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Metals\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass. | - | | | | | | | | | | | | | - | StellarMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | metals. | - | StellarMassFractionIn­Metals | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass. | - | | | | | | | | | | | | | - | TotalMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event. | - | | | | | | | | | | | | | - | BlackHolesLastEventScalefactor | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | - | | | | | | | | | | | | | - | ComptonY\ :math:`^{9}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | - | | | | | | | | | | | | Excludes gas that was recently | - | ComptonYWithoutRecent­AGNHeating\ :math:`^{9}` | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kinetic Sunyaey-Zel’dovich | - | | | | | | | | | | | | effect, assuming a line of sight | - | DopplerB\ :math:`^{10}` | | | | | | | | | | | towards the position of the first | - | | | | | | | | | | | | lightcone observer. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature. | - | GasComptonYTemperature\ :math:`^{11}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasComptonYTemperature­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding gas that | - | GasComptonYTemperature­Without­Recent­AGNHeating\ :math:`^{11}` | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasComptonYTemperature­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core and gas that was | - | | | | | | | | | | | | recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron. | - | | | | | | | | | | | | | - | GasMassFractionInIron\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass in oxygen. | - | | | | | | | | | | | | | - | GasMassFractionInOxygen\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature. | - | GasTemperature\ :math:`^{13}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureCoreExcision\ :math:`^{12}` | | | | | | | | | | | excised core. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding cool gas | - | GasTemperatureWithout­Cool­Gas\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding cool gas | - | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K | - | | | | | | | | | | | | and gas that was recently heated | - | | | | | | | | | | | | by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, gas below 1e5 K and | - | | | | | | | | | | | | gas that was recently heated by | - | | | | | | | | | | | | AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Cool­Gas­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core and gas below 1e5 K. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding gas that | - | GasTemperatureWithout­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, and gas that was | - | | | | | | | | | | | | recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusTotal\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of gas with a | - | | | | | | | | | | | | temperature above 1e5 K. | - | HotGasMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | - | | | | | | | | | | | | a satellite outside this FOF | - | MassFractionExternal\ :math:`^{14}` | | | | | | | | | | | group. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | - | | | | | | | | | | | | a satellite in the same FOF | - | MassFractionSatellites\ :math:`^{14}` | | | | | | | | | | | group. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas accretion rate of most | - | | | | | | | | | | | | massive black hole. | - | MostMassiveBlackHole­Accretion­Rate | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event | - | | | | | | | | | | | | for most massive black hole. | - | MostMassiveBlackHole­Last­Event­Scalefactor | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | general | 1 pc accurate | Position of most massive black | - | | | | | | | | | | | | hole. | - | MostMassiveBlackHole­Position | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Velocity of most massive black | - | | | | | | | | | | | | hole relative to the simulation | - | MostMassiveBlackHole­Velocity | | | | | | | | | | | volume. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the total | - | ProjectedTotalInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedTotalInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the total mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal value as (1,1), | - | | | | | | | | | | | | (2,2), (1,2). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. | - | SpectroscopicLikeTemperature\ :math:`^{15}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Excludes gas in the | - | SpectroscopicLikeTemperature­Core­Excision\ :math:`^{12,15}` | | | | | | | | | | | inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Exclude gas that was | - | SpectroscopicLikeTemperature­Without­Recent­AGNHeating\ :math:`^{15}` | | | | | | | | | | | recently heated by AGN | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Exclude gas that was | - | SpectroscopicLikeTemperature­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | recently heated by AGN. Excludes | - | | | | | | | | | | | | gas in the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Bullock et al. (2001) spin | - | | | | | | | | | | | | parameter. | - | SpinParameter\ :math:`^{16}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of star-forming gas. | - | | | | | | | | | | | | | - | StarFormingGasMass\ :math:`^{8}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Iron\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in oxygen | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Oxygen\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total thermal energy of the gas. | - | | | | | | | | | | | | | - | ThermalEnergyGas\ :math:`^{17}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the total mass | - | TotalInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the total | - | TotalInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the | - | TotalInertiaTensorReduced | | | | | | | | | | | total mass distribution, relative | - | | | | | | | | | | | | to the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | TotalInertiaTensorReduced­Noniterative | | | | | | | | | | | from the total mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosity\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityCoreExcision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. | - | XRayLuminosityInRestframe\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas in | - | XRayLuminosityInRestframe­Core­Excision | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas that | - | XRayLuminosityInRestframe­Without­Recent­AGNHeating | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas that | - | XRayLuminosityInRestframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | was recently heated by AGN. | - | | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityWithout­Recent­AGNHeating | | | | | | | | | | | Excludes gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Core­Excision | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | gas, relative to the centre of | - | AngularMomentumGas\ :math:`^{19}` | | | | | | | | | | | potential and gas centre of mass | - | | | | | | | | | | | | velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total gas mass | - | | | | | | | | | | | | that is co-rotating. | - | DiscToTotalGasMassFraction | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | gas | 1 pc accurate | Centre of mass of gas. | - | | | | | | | | | | | | | - | GasCentreOfMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | n | n | n | y | gas | 0.1 km/s accurate | Centre of mass velocity of gas. | - | | | | | | | | | | | | | - | GasCentreOfMassVelocity | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the gas mass | - | GasInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the gas | - | GasInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the gas | - | GasInertiaTensorReduced | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | GasInertiaTensorReduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the gas along the projection | - | GasProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the gas centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the gas. Measured relative to | - | GasVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | the gas centre of mass velocity. | - | | | | | | | | | | | | The order of the components of | - | | | | | | | | | | | | the dispersion tensor is XX YY ZZ | - | | | | | | | | | | | | XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusGas\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for gas, relative to | - | | | | | | | | | | | | the centre of potential and the | - | KappaCorotGas\ :math:`^{22}` | | | | | | | | | | | centre of mass velocity of the | - | | | | | | | | | | | | gas. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the gas, | - | | | | | | | | | | | | relative to the gas centre of | - | KineticEnergyGas\ :math:`^{23}` | | | | | | | | | | | mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the gas | - | ProjectedGasInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedGasInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal value as (1,1), | - | | | | | | | | | | | | (2,2), (1,2). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | dark matter, relative to the | - | AngularMomentumDarkMatter\ :math:`^{19}` | | | | | | | | | | | centre of potential and DM centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the DM mass | - | DarkMatterInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single interation from the DM | - | DarkMatterInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the DM | - | DarkMatterInertiaTensor­Reduced | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single interation | - | DarkMatterInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the DM mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the DM along the projection | - | DarkMatterProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the DM centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the dark matter. Measured | - | DarkMatterVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | relative to the DM centre of mass | - | | | | | | | | | | | | velocity. The order of the | - | | | | | | | | | | | | components of the dispersion | - | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Dark matter half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusDarkMatter\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity | - | | | | | | | | | | | | calculated using dark matter | - | MaximumDarkMatterCircular­Velocity | | | | | | | | | | | particles when accounting for | - | | | | | | | | | | | | particle softening lengths.. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | - | | | | | | | | | | | | MaximumDarkMatterCircularVelocity | - | MaximumDarkMatterCircular­Velocity­Radius | | | | | | | | | | | is reached. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | stars, relative to the centre of | - | AngularMomentumStars\ :math:`^{19}` | | | | | | | | | | | potential and stellar centre of | - | | | | | | | | | | | | mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total stellar | - | | | | | | | | | | | | mass that is co-rotating. | - | DiscToTotalStellarMass­Fraction | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for stars, relative | - | | | | | | | | | | | | to the centre of potential and | - | KappaCorotStars\ :math:`^{22}` | | | | | | | | | | | the centre of mass velocity of | - | | | | | | | | | | | | the stars. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the | - | | | | | | | | | | | | stars, relative to the stellar | - | KineticEnergyStars\ :math:`^{23}` | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Luminosity weighted mean stellar | - | | | | | | | | | | | | age. The weight is the r band | - | LuminosityWeightedMean­Stellar­Age | | | | | | | | | | | luminosity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass weighted mean stellar age. | - | | | | | | | | | | | | | - | MassWeightedMeanStellar­Age | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the stellar | - | ProjectedStellarInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedStellarInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | - | | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal value as | - | | | | | | | | | | | | (1,1), (2,2), (1,2). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | y | y | n | y | star | 1 pc accurate | Centre of mass of stars. | - | | | | | | | | | | | | | - | StellarCentreOfMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | y | y | n | y | star | 0.1 km/s accurate | Centre of mass velocity of stars. | - | | | | | | | | | | | | | - | StellarCentreOfMassVelocity | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the stellar mass | - | StellarInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the stellar | - | StellarInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the | - | StellarInertiaTensor­Reduced | | | | | | | | | | | stellar mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | StellarInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | - | | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar initial mass. | - | | | | | | | | | | | | | - | StellarInitialMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 9 | float32 | dimensionless | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar luminosity in the 9 | - | | | | | | | | | | | | GAMA bands. | - | StellarLuminosity\ :math:`^{24}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | iron. | - | StellarMassFractionIn­Iron | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | oxygen. | - | StellarMassFractionIn­Oxygen | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the stars along the projection | - | StellarProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the stellar | - | | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the stars. Measured relative | - | StellarVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | to the stellar centre of mass | - | | | | | | | | | | | | velocity. The order of the | - | | | | | | | | | | | | components of the dispersion | - | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of baryons | - | | | | | | | | | | | | (gas and stars), relative to the | - | AngularMomentumBaryons\ :math:`^{19}` | | | | | | | | | | | centre of potential and baryonic | - | | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Baryonic (gas and stars) half | - | | | | | | | | | | | | mass radius. | - | HalfMassRadiusBaryons | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for baryons (gas and | - | | | | | | | | | | | | stars), relative to the centre of | - | KappaCorotBaryons\ :math:`^{22}` | | | | | | | | | | | potential and the centre of mass | - | | | | | | | | | | | | velocity of the baryons. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Index of this halo in the | - | | | | | | | | | | | | original halo finder catalogue | - | HaloCatalogueIndex | | | | | | | | | | | (first halo has index=0). | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | Input | 1 pc accurate | The centre of the subhalo as | - | | | | | | | | | | | | given by the halo finder. Used as | - | HaloCentre | | | | | | | | | | | reference for all relative | - | | | | | | | | | | | | positions. For VR and HBTplus | - | | | | | | | | | | | | this is equal to the position of | - | | | | | | | | | | | | the most bound particle in the | - | | | | | | | | | | | | subhalo. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Whether the halo finder flagged | - | | | | | | | | | | | | the halo as central (1) or | - | IsCentral | | | | | | | | | | | satellite (0). | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Total number of particles bound | - | | | | | | | | | | | | to the subhalo. | - | NumberOfBoundParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Level of the subhalo in the | - | | | | | | | | | | | | merging hierarchy. | - | Depth | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the descendant of this | - | | | | | | | | | | | | subhalo. | - | DescendantTrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | ID of the host FOF halo of this | - | | | | | | | | | | | | subhalo. Hostless halos have | - | HostFOFId | | | | | | | | | | | HostFOFId == -1 | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum mass of this subhalo | - | | | | | | | | | | | | across its evolutionary history | - | LastMaxMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Largest value of maximum circular | - | | | | | | | | | | | | velocity of this subhalo across | - | LastMaxVmaxPhysical | | | | | | | | | | | its evolutionary history | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the parent of this | - | | | | | | | | | | | | subhalo. | - | NestedParentTrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Snapshot when this subhalo was | - | | | | | | | | | | | | formed. | - | SnapshotIndexOfBirth | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | - | | | | | | | | | | | | had its maximum mass. | - | SnapshotIndexOfLastMax­Mass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | - | | | | | | | | | | | | had its largest maximum circular | - | SnapshotIndexOfLastMax­Vmax | | | | | | | | | | | velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Unique ID for this subhalo which | - | | | | | | | | | | | | is consistent across snapshots. | - | TrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | FOF | 1 pc accurate | Centre of mass of the host FOF | - | | | | | | | | | | | | halo of this subhalo. Zero for | - | Centres | | | | | | | | | | | satellite and hostless subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | FOF | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of the host FOF halo of this | - | | | | | | | | | | | | subhalo. Zero for satellite and | - | Masses | | | | | | | | | | | hostless subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | FOF | no compression | Number of particles in the host | - | | | | | | | | | | | | FOF halo of this subhalo. Zero | - | Sizes | | | | | | | | | | | for satellite and hostless | - | | | | | | | | | | | | subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | SOAP | no compression | Index (within the SOAP arrays) of | - | | | | | | | | | | | | the top level parent of this | - | HostHaloIndex | | | | | | | | | | | subhalo. -1 for central subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Whether this halo is included in | - | | | | | | | | | | | | the reduced snapshot. | - | IncludedInReducedSnapshot | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Ranking by mass of the halo | - | | | | | | | | | | | | within its parent field halo. | - | SubhaloRankByBoundMass | | | | | | | | | | | Zero for the most massive halo in | - | | | | | | | | | | | | the field halo. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - - -Non-trivial properties ----------------------- - -:math:`^{1}`\ The centre of mass and centre of mass velocity -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -are computed using all particle types except neutrinos (since neutrinos -can never be bound to a halo). - -:math:`^{2}`\ The concentration -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -is computed using the method described in Wang et al. (2023), but using -a fifth order polynomial fit to the R1-concentration relation for -:math:`1 0, \\ - 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ - \end{cases} - \end{equation} - -the corotational kinetic energy given by - -.. math:: - - \begin{equation} - K_{\rm{}corot,comp} = \sum_{i={\rm{}comp}} \begin{cases} - K_{{\rm{}rot,comp},i}, &L_{{\rm{}comp},p,i} > 0, \\ - 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ - \end{cases} - \end{equation} - -the rotational kinetic energy given by - -.. math:: - - \begin{equation} - K_{{\rm{}rot,comp},i} = \frac{1}{2} \frac{L_{{\rm{}comp},p,i}^2}{m_i R_i^2}, - \end{equation} - -the projected angular momentum along the angular momentum direction -given by - -.. math:: - - \begin{equation} - L_{{\rm{}comp},p,i} = \vec{L}_i \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}, - \end{equation} - -and the orthogonal distance to the angular momentum vector given by - -.. math:: - - \begin{equation} - R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right), - \end{equation} - -where the angular momentum vector and the relative position and velocity -are the same as above for consistency. - -:math:`^{23}`\ The kinetic energy -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -of the gas and stars is computed using the same relative velocities as -used for other properties, i.e. relative to the centre of mass velocity -of the gas and stars respectively. - -:math:`^{24}`\ Luminosities are given in the GAMA bands -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -and are always using the same order as in the snapshots: u, g, r, i, z, -Y, J, H, K. These are rest-frame dust-free AB-luminosities of the star -particles. These were computed using the BC03 (GALAXEV) models convolved -with different filter bands and interpolated in log-log (f(log(Z), -log(age)) = log(flux)) as used in the dust-free modelling of Trayford et -al. (2015). The luminosities are given in dimensionless units. They have -been divided by 3631 Jy already, i.e. they can be turned into absolute -AB-magnitudes (rest-frame absolute maggies) directly by applying -2.5 -log10(L) without additional corrections. Spherical overdensity calculations ---------------------------------- @@ -1664,52 +135,4 @@ the only place where neutrinos explicitly enter the algorithm, except for the neutrino masses computed for the SOs. Neutrinos are not included in the calculation of the centre of mass and centre of mass velocity. -Group membership files ----------------------- - -Before SOAP can be run we generate a set of files which contain halo -membership information for each particle in the SWIFT snapshot. The -datasets in these files are stored in the same order and with the same -partitioning between files as the datasets in the snapshots. This allows -SOAP to read halo membership information for sub-regions of the -simulation volume without reading the full halo-finder output. These -files may also be useful for visualising the input halo catalogue. - -The group membership files are HDF5 files with one group for each -particle type, named PartType0, PartType1, ... as in the snapshots. Each -group contains the following datasets: - -#. ``GroupNr_bound``: for each particle in the corresponding snapshot - file this contains the array index of the subhalo which the particle - is bound to. If a particle is not bound to any subhalo it will have - ``GroupNr_bound``\ =-1. - -#. ``Rank_bound``: the ranking by total energy of this particle within - the subhalo it belongs to, or -1 if the particle is not bound to any - subhalo. The particle with the most negative total energy has - ``Rank_bound``\ =0. - -#. ``GroupNr_all``: (VELOCIraptor only) for each particle in the - corresponding snapshot file this contains the array index of the VR - group which the particle belongs to, regardless of whether it is - bound or unbound. Particles in no group have ``GroupNr_all``\ =-1. - -#. ``FOFGroupIDs``: the 3D FOF group the particle is part of. This field - is only present if a FOF snapshot is listed in the parameter file. - This field is present in the snapshots themselves, but for FLAMINGO - hydro simulations the FOF was regenerated. If this field is present - it will overwrite the value from the snapshots when SOAP is run. - -The GroupNr values stored here are zero based array indexes into the -full subhalo catalogue, and not the subhalos IDs. For example the first -group in the VELOCIraptor catalogue has GroupNr=0 and ID=1. - -The script ‘make_virtual_snapshot.py‘ will combine snapshot and group -membership files into a single virtual snapshot file. This virtual file -can be read by swiftsimio and gadgetviewer to provide halo membership -information alongside other particle properties. Using the virtual file -along with the spatial masking functionality within swiftsimio means it -is possible to quickly load all the particles bound to a given subhalo. -.. |image| image:: images/image7.png -.. |image1| image:: images/image4.png diff --git a/source/soap/membership_files.rst b/source/soap/membership_files.rst new file mode 100644 index 0000000..bccb792 --- /dev/null +++ b/source/soap/membership_files.rst @@ -0,0 +1,49 @@ +Group membership files +---------------------- + +Before SOAP can be run we generate a set of files which contain halo +membership information for each particle in the SWIFT snapshot. The +datasets in these files are stored in the same order and with the same +partitioning between files as the datasets in the snapshots. This allows +SOAP to read halo membership information for sub-regions of the +simulation volume without reading the full halo-finder output. These +files may also be useful for visualising the input halo catalogue. + +The group membership files are HDF5 files with one group for each +particle type, named PartType0, PartType1, ... as in the snapshots. Each +group contains the following datasets: + +#. ``GroupNr_bound``: for each particle in the corresponding snapshot + file this contains the array index of the subhalo which the particle + is bound to. If a particle is not bound to any subhalo it will have + ``GroupNr_bound``\ =-1. + +#. ``Rank_bound``: the ranking by total energy of this particle within + the subhalo it belongs to, or -1 if the particle is not bound to any + subhalo. The particle with the most negative total energy has + ``Rank_bound``\ =0. + +#. ``GroupNr_all``: (VELOCIraptor only) for each particle in the + corresponding snapshot file this contains the array index of the VR + group which the particle belongs to, regardless of whether it is + bound or unbound. Particles in no group have ``GroupNr_all``\ =-1. + +#. ``FOFGroupIDs``: the 3D FOF group the particle is part of. This field + is only present if a FOF snapshot is listed in the parameter file. + This field is present in the snapshots themselves, but for FLAMINGO + hydro simulations the FOF was regenerated. If this field is present + it will overwrite the value from the snapshots when SOAP is run. + +The GroupNr values stored here are zero based array indexes into the +full subhalo catalogue, and not the subhalos IDs. For example the first +group in the VELOCIraptor catalogue has GroupNr=0 and ID=1. + +The script ‘make_virtual_snapshot.py‘ will combine snapshot and group +membership files into a single virtual snapshot file. This virtual file +can be read by swiftsimio and gadgetviewer to provide halo membership +information alongside other particle properties. Using the virtual file +along with the spatial masking functionality within swiftsimio means it +is possible to quickly load all the particles bound to a given subhalo. + +.. |image| image:: images/image7.png +.. |image1| image:: images/image4.png diff --git a/source/soap/particle_selection.rst b/source/soap/particle_selection.rst new file mode 100644 index 0000000..6fe7704 --- /dev/null +++ b/source/soap/particle_selection.rst @@ -0,0 +1,164 @@ +Property types +-------------- + +Subhalo quantities (SH) +^^^^^^^^^^^^^^^^^^^^^^^ + +are computed for each subhalo identified by the halo finder, +irrespective of whether it is a field halo or a satellite (or even +satellite of satellite and so on). They include all particles that they +halo finder has determined are bound to the subhalo. Subhalo properties +are contained within the group ``BoundSubhalo`` in the output file. + +Exclusive sphere quantities (ES) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +are similar to subhalo quantities, but they include only the particles +that are bound to the subhalo, and apply an additional radial cut +(aperture). We use eight different aperture radii (10, 30, 50, 100, 300, +500, 1000, 3000 kpc), so that every (sub-)halo has eight of these. +Exclusive sphere properties are contained within a group +``ExclusiveSphere/XXXkpc``, where ``XXX`` is the corresponding aperture +radius. + +Inclusive sphere quantities (IS) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +use the same physical aperture radii as the exclusive sphere quantities, +but include all particles within the radius, regardless of their +membership status. They are stored within a group +``InclusiveSphere/XXXkpc``. + +Exclusive projected quantities (EP) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +are similar to exclusive sphere quantities, except that their aperture +filter is applied in projection, and this for independent projections +along the x-, y- and z-axis. Along the projection axis, we do not apply +any radial cut, so that the depth corresponds to all particles bound to +the (sub-)halo. With four projected aperture radii (10, 30, 50, 100 +kpc), we then have twelve sets of projected aperture quantities for each +(sub-)halo. Projected aperture quantities are stored in a group named +``ProjectedAperture/XXXkpc/projP``, where ``XXX`` is the corresponding +aperture radius, and ``P`` corresponds to a particular projection +direction (``x``, ``y`` or ``z``). + +Spherical overdensity properties (SO) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +are fundamentally different from the three other types in that their +aperture radius is determined from the density profile and is different +for different halos. They always include all particles within a sphere +around the centre of potential, regardless of halo membership. The +radius is either the radius at which the density reaches a certain +target value (50 crit, 100 crit, 200 crit, 500 crit, 1000 crit, 2500 +crit, 200 mean, BN98) or a multiple of such a radius (5xR 500 crit). +Details of the spherical overdensity calculation are given at the end of +this document. Spherical overdensities are only computed for centrals, +i.e. field halos. The inclusive sphere quantities are stored in a group +``SO/XXX``, where ``XXX`` can be either ``XXX_mean`` for density +multiples of the mean density, ``XXX_crit`` for density multiples of the +critical density, ``BN98`` for the overdensity definition of Bryan & +Norman (1998), and ``YxR_XXX_ZZZ`` for multiples of some other radius +(e.g. ``5xR_2500_mean``). The latter can only be computed after the +corresponding density multiple SO radius has been computed. This is +achieved by ordering the calculations. + +InputHalos +^^^^^^^^^^ + +Some properties are directly copied from the original halo catalogue +that was passed to SOAP. These are stored in a separate group, +``InputHalos``. + +SOAP +^^^^ + +Some properties are computed by SOAP using the other halo properties +present in the catalogue. These are stored in a separate group, +``SOAP``. This is just done for convenience; these quantities can be +computed from the SOAP output alone. + +The table below lists +^^^^^^^^^^^^^^^^^^^^^ + +all the groups in the output file which containing datasets. Note that +there will be three groups (``x``, ``y`` or ``z``) for each +``ProjectedAperture`` variation. Each halo variation can have a filter +applied to it. If a halo does not satisfy the filter then the variation +will not be calculated for that halo. More information on filters can be +found in the next section. + + ++------------------------------------+----------------------------------------+------------+-------------+ +| Group name (HDF5) | Group name (swiftsimio) | Inclusive? | Filter | ++====================================+========================================+============+=============+ +| ``BoundSubhalo`` | ``bound_subhalo`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/200_crit`` | ``spherical_overdensity_200_crit`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/50_crit`` | ``spherical_overdensity_50_crit`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/100_crit`` | ``spherical_overdensity_100_crit`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/200_mean`` | ``spherical_overdensity_200_mean`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/500_crit`` | ``spherical_overdensity_500_crit`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/5xR_500_crit`` | ``spherical_overdensity_5xr_500_crit`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/1000_crit`` | ``spherical_overdensity_1000_crit`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/2500_crit`` | ``spherical_overdensity_2500_crit`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SO/BN98`` | ``spherical_overdensity_bn98`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/10kpc`` | ``exclusive_sphere_10kpc`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/30kpc`` | ``exclusive_sphere_30kpc`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/50kpc`` | ``exclusive_sphere_50kpc`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/100kpc`` | ``exclusive_sphere_100kpc`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/300kpc`` | ``exclusive_sphere_300kpc`` | n | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/500kpc`` | ``exclusive_sphere_500kpc`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/1000kpc`` | ``exclusive_sphere_1000kpc`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ExclusiveSphere/3000kpc`` | ``exclusive_sphere_3000kpc`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/10kpc`` | ``inclusive_sphere_10kpc`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/30kpc`` | ``inclusive_sphere_30kpc`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/50kpc`` | ``inclusive_sphere_50kpc`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/100kpc`` | ``inclusive_sphere_100kpc`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/300kpc`` | ``inclusive_sphere_300kpc`` | y | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/500kpc`` | ``inclusive_sphere_500kpc`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/1000kpc`` | ``inclusive_sphere_1000kpc`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InclusiveSphere/3000kpc`` | ``inclusive_sphere_3000kpc`` | y | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ProjectedAperture/10kpc/projP`` | ``projected_aperture_10kpc_projP`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ProjectedAperture/30kpc/projP`` | ``projected_aperture_30kpc_projP`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ProjectedAperture/50kpc/projP`` | ``projected_aperture_50kpc_projP`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``ProjectedAperture/100kpc/projP`` | ``projected_aperture_100kpc_projP`` | n | general | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``SOAP`` | ``soap`` | - | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InputHalos`` | ``input_halos`` | - | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InputHalos/HBTplus`` | ``input_halos_hbtplus`` | - | | ++------------------------------------+----------------------------------------+------------+-------------+ +| ``InputHalos/FOF`` | ``input_halos_fof`` | - | | ++------------------------------------+----------------------------------------+------------+-------------+ + diff --git a/source/soap/property_filters.rst b/source/soap/property_filters.rst new file mode 100644 index 0000000..b23aafa --- /dev/null +++ b/source/soap/property_filters.rst @@ -0,0 +1,83 @@ +Property categories +------------------- + +Halo properties only make sense if the subhalo contains sufficient +particles. Halo finders are often run with a configuration that requires +at least 20 particles for a satellite subhalo. However, even for those +particle numbers, a lot of the properties computed by SOAP will be zero +(e.g. the gas mass within a 10 kpc aperture), or have values that are +outliers compared to the full halo population because of undersampling. +We can save a lot of disk space by filtering these out by applying +appropriate cuts. Filtering means setting the value of the property to +``NaN``; HDF5 file compression then very effectively reduces the data +storage required to store these properties, while the size of the arrays +that the end user sees remains unchanged. Evidently, we can also save on +computing time by not computing properties that are filtered out. + +Since different properties can have very different requirements, +filtering is done in categories, where each category corresponds to a +set of quantities that are filtered using the same criterion. Inclusive, +exclusive or projected quantities with different aperture radii (or +overdensity criteria) can be used to create profiles. In order for these +profiles to make sense, we have to apply a consistent cut across all the +different aperture radii (or overdensity criteria) for the same subhalo +property type. Or in other words: the quantities for an inclusive sphere +with a 10 kpc aperture radius will use the same filter mask as the +quantities of the inclusive sphere with a 3000 kpc aperture radius, even +though the latter by construction has many more particles. + +Basic quantities (basic) +^^^^^^^^^^^^^^^^^^^^^^^^ + +are never filtered out, and hence are calculated for all objects in the +input halo catalogue. + +General quantities (general) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +use a filter based on the total number of particles bound to the +subhalo. + +Gas quantities (gas) +^^^^^^^^^^^^^^^^^^^^ + +use a filter based on the number of gas particles bound to the subhalo. + +DM quantities (dm) +^^^^^^^^^^^^^^^^^^ + +use a filter based on the number of DM particles bound to the subhalo. + +Stellar quantities (star) +^^^^^^^^^^^^^^^^^^^^^^^^^ + +use a filter based on the number of star particles bound to the subhalo. + +Baryon quantities (baryon) +^^^^^^^^^^^^^^^^^^^^^^^^^^ + +use a filter based on the number of gas and star particles bound to the +subhalo. + +Note that there are no quantities that use a BH or neutrino particle +number filter. + +The particle number thresholds are set in the parameter file. The +different categories are summarised in the table below. + ++---------+-----------------------------------------------------------------------+ +| Name | criterion | ++=========+=======================================================================+ +| basic | (all halos) | ++---------+-----------------------------------------------------------------------+ +| general | :math:`N_{\rm{}gas}+N_{\rm{}dm}+N_{\rm{}star}+N_{\rm{}BH} \geq{} 100` | ++---------+-----------------------------------------------------------------------+ +| gas | :math:`N_{\rm{}gas} \geq{} 100` | ++---------+-----------------------------------------------------------------------+ +| dm | :math:`N_{\rm{}dm} \geq{} 100` | ++---------+-----------------------------------------------------------------------+ +| star | :math:`N_{\rm{}star} \geq{} 100` | ++---------+-----------------------------------------------------------------------+ +| baryon | :math:`N_{\rm{}gas}+N_{\rm{}star} \geq{} 100` | ++---------+-----------------------------------------------------------------------+ + diff --git a/source/soap/property_table.rst b/source/soap/property_table.rst new file mode 100644 index 0000000..2f3d380 --- /dev/null +++ b/source/soap/property_table.rst @@ -0,0 +1,1301 @@ +Overview table +-------------- + +The table below lists all the properties that are computed by SOAP when +run in HYDRO mode. For dark matter only (DMO) mode only the properties +colored violet/purple are computed. This table is automatically +generated by SOAP from the source code, so that all names, types, units, +categories and descriptions match what is actually used and output by +SOAP. For each quantity, the table indicates for which halo types the +property is computed. Superscript numbers refer to more detailed +explanations for some of the properties and match the numbers in the +next section. If swiftsimio has been used to load a catalogue then the +fields names are in snake_case rather than CamelCase, e.g. +``CentreOfMass`` becomes ``centre_of_mass``. + +Note that quantities are given in the base units of the simulation +snapshot. The attributes of each SOAP dataset contains all the relevant +meta-data to convert between physical and co-moving units, i.e. +information about how the quantity depends on the scale-factor, and what +the conversion factor to and from CGS units is. All quantities are +:math:`h`-free. The conversion of the base units to CGS is given by: + +==== ============== +Unit CGS conversion +==== ============== +L 3.086e+24 cm +M 1.988e+43 g +t 3.086e+19 s +T 1 K +==== ============== + +For example, a property whose units are listed as M/t will have units of +velocity, where :math:`1 \, \rm{M/t} = 1\, \rm{km/s}`. The scale factor +is explicitly included for comoving properties (e.g. the units of +HaloCentre are aL) + +.. container:: landscape + + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | Name | Shape | Type | Units | SH | ES | IS | EP | SO | Category | Compression | Description | + +===================================================================================+=======+=========+====================================================+====+====+====+====+====+==========+=========================================================+===================================+ + | BlackHolesDynamicalMass | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH dynamical mass. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH subgrid mass. | + | | | | | | | | | | | | | + | BlackHolesSubgridMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | basic | 1 pc accurate | Centre of mass. | + | | | | | | | | | | | | | + | CentreOfMass\ :math:`^{1}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | basic | 0.1 km/s accurate | Centre of mass velocity. | + | | | | | | | | | | | | | + | CentreOfMassVelocity\ :math:`^{1}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | + | | | | | | | | | | | | NFW profile. Minimum particle | + | Concentration\ :math:`^{2}` | | | | | | | | | | | radius set to softening length | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | + | | | | | | | | | | | | NFW profile. No particle | + | ConcentrationUnsoftened | | | | | | | | | | | softening. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | + | | | | | | | | | | | | particles assuming an NFW | + | DarkMatterConcentration\ :math:`^{2}` | | | | | | | | | | | profile. Minimum particle radius | + | | | | | | | | | | | | set to softening length | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | + | | | | | | | | | | | | particles assuming an NFW | + | DarkMatterConcentration­Unsoftened | | | | | | | | | | | profile. No particle softening | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total DM mass. | + | | | | | | | | | | | | | + | DarkMatterMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of the particle furthest | + | | | | | | | | | | | | from the halo centre | + | EncloseRadius | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass. | + | | | | | | | | | | | | | + | GasMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in | + | | | | | | | | | | | | metals. | + | GasMassFractionInMetals\ :math:`^{3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Stellar half mass radius. | + | | | | | | | | | | | | | + | HalfMassRadiusStars\ :math:`^{4}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | + | | | | | | | | | | | | accounting for particle softening | + | MaximumCircularVelocity\ :math:`^{5}` | | | | | | | | | | | lengths. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | + | | | | | | | | | | | | MaximumCircularVelocityUnsoftened | + | MaximumCircularVelocity­Radius­Unsoftened\ :math:`^{5}` | | | | | | | | | | | is reached. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | + | | | | | | | | | | | | not accounting for particle | + | MaximumCircularVelocity­Unsoftened\ :math:`^{5}` | | | | | | | | | | | softening lengths. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | y | y | y | y | y | basic | Store less bits | ID of most massive black hole. | + | | | | | | | | | | | | | + | MostMassiveBlackHole­ID | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of most massive black hole. | + | | | | | | | | | | | | | + | MostMassiveBlackHole­Mass\ :math:`^{6}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Noise suppressed total neutrino | + | | | | | | | | | | | | mass. | + | NoiseSuppressedNeutrino­Mass\ :math:`^{7}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of black hole particles. | + | | | | | | | | | | | | | + | NumberOfBlackHoleParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of dark matter particles. | + | | | | | | | | | | | | | + | NumberOfDarkMatterParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of gas particles. | + | | | | | | | | | | | | | + | NumberOfGasParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint32 | dimensionless | n | n | n | n | y | basic | no compression | Number of neutrino particles. | + | | | | | | | | | | | | | + | NumberOfNeutrinoParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of star particles. | + | | | | | | | | | | | | | + | NumberOfStarParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total neutrino particle mass. | + | | | | | | | | | | | | | + | RawNeutrinoMass\ :math:`^{7}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of a sphere satisfying a | + | | | | | | | | | | | | spherical overdensity criterion. | + | SORadius | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total star formation rate. | + | | | | | | | | | | | | | + | StarFormationRate\ :math:`^{8}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in metals | + | | | | | | | | | | | | for gas that is star-forming. | + | StarFormingGasMassFraction­In­Metals\ :math:`^{8,3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass. | + | | | | | | | | | | | | | + | StellarMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | + | | | | | | | | | | | | metals. | + | StellarMassFractionIn­Metals | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass. | + | | | | | | | | | | | | | + | TotalMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event. | + | | | | | | | | | | | | | + | BlackHolesLastEventScalefactor | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | + | | | | | | | | | | | | | + | ComptonY\ :math:`^{9}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | + | | | | | | | | | | | | Excludes gas that was recently | + | ComptonYWithoutRecent­AGNHeating\ :math:`^{9}` | | | | | | | | | | | heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kinetic Sunyaey-Zel’dovich | + | | | | | | | | | | | | effect, assuming a line of sight | + | DopplerB\ :math:`^{10}` | | | | | | | | | | | towards the position of the first | + | | | | | | | | | | | | lightcone observer. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | + | | | | | | | | | | | | temperature. | + | GasComptonYTemperature\ :math:`^{11}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasComptonYTemperature­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | + | | | | | | | | | | | | temperature, excluding gas that | + | GasComptonYTemperature­Without­Recent­AGNHeating\ :math:`^{11}` | | | | | | | | | | | was recently heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasComptonYTemperature­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core and gas that was | + | | | | | | | | | | | | recently heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron. | + | | | | | | | | | | | | | + | GasMassFractionInIron\ :math:`^{3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass in oxygen. | + | | | | | | | | | | | | | + | GasMassFractionInOxygen\ :math:`^{3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature. | + | GasTemperature\ :math:`^{13}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasTemperatureCoreExcision\ :math:`^{12}` | | | | | | | | | | | excised core. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding cool gas | + | GasTemperatureWithout­Cool­Gas\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding cool gas | + | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K | + | | | | | | | | | | | | and gas that was recently heated | + | | | | | | | | | | | | by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, gas below 1e5 K and | + | | | | | | | | | | | | gas that was recently heated by | + | | | | | | | | | | | | AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasTemperatureWithout­Cool­Gas­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core and gas below 1e5 K. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding gas that | + | GasTemperatureWithout­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | was recently heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | + | | | | | | | | | | | | temperature, excluding the inner | + | GasTemperatureWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, and gas that was | + | | | | | | | | | | | | recently heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total half mass radius. | + | | | | | | | | | | | | | + | HalfMassRadiusTotal\ :math:`^{4}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of gas with a | + | | | | | | | | | | | | temperature above 1e5 K. | + | HotGasMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | + | | | | | | | | | | | | a satellite outside this FOF | + | MassFractionExternal\ :math:`^{14}` | | | | | | | | | | | group. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | + | | | | | | | | | | | | a satellite in the same FOF | + | MassFractionSatellites\ :math:`^{14}` | | | | | | | | | | | group. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas accretion rate of most | + | | | | | | | | | | | | massive black hole. | + | MostMassiveBlackHole­Accretion­Rate | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event | + | | | | | | | | | | | | for most massive black hole. | + | MostMassiveBlackHole­Last­Event­Scalefactor | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | general | 1 pc accurate | Position of most massive black | + | | | | | | | | | | | | hole. | + | MostMassiveBlackHole­Position | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Velocity of most massive black | + | | | | | | | | | | | | hole relative to the simulation | + | MostMassiveBlackHole­Velocity | | | | | | | | | | | volume. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the total | + | ProjectedTotalInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | + | | | | | | | | | | | | Only calculated when we have more | + | | | | | | | | | | | | than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | dimensionless | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | ProjectedTotalInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the total mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal value as (1,1), | + | | | | | | | | | | | | (2,2), (1,2). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | + | | | | | | | | | | | | temperature. | + | SpectroscopicLikeTemperature\ :math:`^{15}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | + | | | | | | | | | | | | temperature. Excludes gas in the | + | SpectroscopicLikeTemperature­Core­Excision\ :math:`^{12,15}` | | | | | | | | | | | inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | + | | | | | | | | | | | | temperature. Exclude gas that was | + | SpectroscopicLikeTemperature­Without­Recent­AGNHeating\ :math:`^{15}` | | | | | | | | | | | recently heated by AGN | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | + | | | | | | | | | | | | temperature. Exclude gas that was | + | SpectroscopicLikeTemperature­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | recently heated by AGN. Excludes | + | | | | | | | | | | | | gas in the inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Bullock et al. (2001) spin | + | | | | | | | | | | | | parameter. | + | SpinParameter\ :math:`^{16}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of star-forming gas. | + | | | | | | | | | | | | | + | StarFormingGasMass\ :math:`^{8}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron | + | | | | | | | | | | | | for gas that is star-forming. | + | StarFormingGasMassFraction­In­Iron\ :math:`^{8,3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in oxygen | + | | | | | | | | | | | | for gas that is star-forming. | + | StarFormingGasMassFraction­In­Oxygen\ :math:`^{8,3}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total thermal energy of the gas. | + | | | | | | | | | | | | | + | ThermalEnergyGas\ :math:`^{17}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | + | | | | | | | | | | | | iteratively from the total mass | + | TotalInertiaTensor | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal triangle as | + | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | + | | | | | | | | | | | | (1,3), (2,3). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the total | + | TotalInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed iteratively from the | + | TotalInertiaTensorReduced | | | | | | | | | | | total mass distribution, relative | + | | | | | | | | | | | | to the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | TotalInertiaTensorReduced­Noniterative | | | | | | | | | | | from the total mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal triangle as (1,1), | + | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | + | | | | | | | | | | | | (2,3). Only calculated when we | + | | | | | | | | | | | | have more than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | + | | | | | | | | | | | | luminosity in three bands. | + | XRayLuminosity\ :math:`^{18}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | + | | | | | | | | | | | | luminosity in three bands. | + | XRayLuminosityCoreExcision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | + | | | | | | | | | | | | core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | + | | | | | | | | | | | | in three bands. | + | XRayLuminosityInRestframe\ :math:`^{18}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | + | | | | | | | | | | | | in three bands. Excludes gas in | + | XRayLuminosityInRestframe­Core­Excision | | | | | | | | | | | the inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | + | | | | | | | | | | | | in three bands. Excludes gas that | + | XRayLuminosityInRestframe­Without­Recent­AGNHeating | | | | | | | | | | | was recently heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | + | | | | | | | | | | | | in three bands. Excludes gas that | + | XRayLuminosityInRestframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | was recently heated by AGN. | + | | | | | | | | | | | | Excludes gas in the inner excised | + | | | | | | | | | | | | core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | + | | | | | | | | | | | | luminosity in three bands. | + | XRayLuminosityWithout­Recent­AGNHeating | | | | | | | | | | | Excludes gas that was recently | + | | | | | | | | | | | | heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | + | | | | | | | | | | | | luminosity in three bands. | + | XRayLuminosityWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas that was recently | + | | | | | | | | | | | | heated by AGN. Excludes gas in | + | | | | | | | | | | | | the inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity\ :math:`^{18}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | + | | | | | | | | | | | | core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­In­Restframe\ :math:`^{18}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­In­Restframe­Core­Excision | | | | | | | | | | | Excludes gas in the inner excised | + | | | | | | | | | | | | core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | + | | | | | | | | | | | | heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | Exclude gas that was recently | + | | | | | | | | | | | | heated by AGN. Excludes gas in | + | | | | | | | | | | | | the inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | + | | | | | | | | | | | | heated by AGN. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | + | | | | | | | | | | | | luminosity in three bands. | + | XRayPhotonLuminosity­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Exclude gas that was recently | + | | | | | | | | | | | | heated by AGN. Excludes gas in | + | | | | | | | | | | | | the inner excised core | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | + | | | | | | | | | | | | gas, relative to the centre of | + | AngularMomentumGas\ :math:`^{19}` | | | | | | | | | | | potential and gas centre of mass | + | | | | | | | | | | | | velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total gas mass | + | | | | | | | | | | | | that is co-rotating. | + | DiscToTotalGasMassFraction | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | gas | 1 pc accurate | Centre of mass of gas. | + | | | | | | | | | | | | | + | GasCentreOfMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | n | n | n | y | gas | 0.1 km/s accurate | Centre of mass velocity of gas. | + | | | | | | | | | | | | | + | GasCentreOfMassVelocity | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | + | | | | | | | | | | | | iteratively from the gas mass | + | GasInertiaTensor | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal triangle as | + | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | + | | | | | | | | | | | | (1,3), (2,3). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the gas | + | GasInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed iteratively from the gas | + | GasInertiaTensorReduced | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | GasInertiaTensorReduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal triangle as (1,1), | + | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | + | | | | | | | | | | | | (2,3). Only calculated when we | + | | | | | | | | | | | | have more than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the gas along the projection | + | GasProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the gas centre | + | | | | | | | | | | | | of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the gas. Measured relative to | + | GasVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | the gas centre of mass velocity. | + | | | | | | | | | | | | The order of the components of | + | | | | | | | | | | | | the dispersion tensor is XX YY ZZ | + | | | | | | | | | | | | XY XZ YZ. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas half mass radius. | + | | | | | | | | | | | | | + | HalfMassRadiusGas\ :math:`^{4}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for gas, relative to | + | | | | | | | | | | | | the centre of potential and the | + | KappaCorotGas\ :math:`^{22}` | | | | | | | | | | | centre of mass velocity of the | + | | | | | | | | | | | | gas. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the gas, | + | | | | | | | | | | | | relative to the gas centre of | + | KineticEnergyGas\ :math:`^{23}` | | | | | | | | | | | mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the gas | + | ProjectedGasInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | + | | | | | | | | | | | | Only calculated when we have more | + | | | | | | | | | | | | than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | dimensionless | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | ProjectedGasInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal value as (1,1), | + | | | | | | | | | | | | (2,2), (1,2). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | + | | | | | | | | | | | | dark matter, relative to the | + | AngularMomentumDarkMatter\ :math:`^{19}` | | | | | | | | | | | centre of potential and DM centre | + | | | | | | | | | | | | of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | + | | | | | | | | | | | | iteratively from the DM mass | + | DarkMatterInertiaTensor | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal triangle as | + | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | + | | | | | | | | | | | | (1,3), (2,3). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | + | | | | | | | | | | | | single interation from the DM | + | DarkMatterInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed iteratively from the DM | + | DarkMatterInertiaTensor­Reduced | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed in a single interation | + | DarkMatterInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the DM mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal triangle as (1,1), | + | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | + | | | | | | | | | | | | (2,3). Only calculated when we | + | | | | | | | | | | | | have more than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the DM along the projection | + | DarkMatterProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the DM centre | + | | | | | | | | | | | | of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the dark matter. Measured | + | DarkMatterVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | relative to the DM centre of mass | + | | | | | | | | | | | | velocity. The order of the | + | | | | | | | | | | | | components of the dispersion | + | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Dark matter half mass radius. | + | | | | | | | | | | | | | + | HalfMassRadiusDarkMatter\ :math:`^{4}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity | + | | | | | | | | | | | | calculated using dark matter | + | MaximumDarkMatterCircular­Velocity | | | | | | | | | | | particles when accounting for | + | | | | | | | | | | | | particle softening lengths.. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | + | | | | | | | | | | | | MaximumDarkMatterCircularVelocity | + | MaximumDarkMatterCircular­Velocity­Radius | | | | | | | | | | | is reached. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | + | | | | | | | | | | | | stars, relative to the centre of | + | AngularMomentumStars\ :math:`^{19}` | | | | | | | | | | | potential and stellar centre of | + | | | | | | | | | | | | mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total stellar | + | | | | | | | | | | | | mass that is co-rotating. | + | DiscToTotalStellarMass­Fraction | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for stars, relative | + | | | | | | | | | | | | to the centre of potential and | + | KappaCorotStars\ :math:`^{22}` | | | | | | | | | | | the centre of mass velocity of | + | | | | | | | | | | | | the stars. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the | + | | | | | | | | | | | | stars, relative to the stellar | + | KineticEnergyStars\ :math:`^{23}` | | | | | | | | | | | centre of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Luminosity weighted mean stellar | + | | | | | | | | | | | | age. The weight is the r band | + | LuminosityWeightedMean­Stellar­Age | | | | | | | | | | | luminosity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass weighted mean stellar age. | + | | | | | | | | | | | | | + | MassWeightedMeanStellar­Age | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the stellar | + | ProjectedStellarInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | + | | | | | | | | | | | | Only calculated when we have more | + | | | | | | | | | | | | than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | dimensionless | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | ProjectedStellarInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | + | | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal value as | + | | | | | | | | | | | | (1,1), (2,2), (1,2). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | y | y | n | y | star | 1 pc accurate | Centre of mass of stars. | + | | | | | | | | | | | | | + | StellarCentreOfMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | y | y | n | y | star | 0.1 km/s accurate | Centre of mass velocity of stars. | + | | | | | | | | | | | | | + | StellarCentreOfMassVelocity | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | + | | | | | | | | | | | | iteratively from the stellar mass | + | StellarInertiaTensor | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal triangle as | + | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | + | | | | | | | | | | | | (1,3), (2,3). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | + | | | | | | | | | | | | single iteration from the stellar | + | StellarInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | + | | | | | | | | | | | | the halo centre. Diagonal | + | | | | | | | | | | | | components and one off-diagonal | + | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | + | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | + | | | | | | | | | | | | calculated when we have more than | + | | | | | | | | | | | | 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed iteratively from the | + | StellarInertiaTensor­Reduced | | | | | | | | | | | stellar mass distribution, | + | | | | | | | | | | | | relative to the halo centre. | + | | | | | | | | | | | | Diagonal components and one | + | | | | | | | | | | | | off-diagonal triangle as (1,1), | + | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | + | | | | | | | | | | | | (2,3). Only calculated when we | + | | | | | | | | | | | | have more than 20 particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | dimensionless | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | + | | | | | | | | | | | | computed in a single iteration | + | StellarInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | + | | | | | | | | | | | | distribution, relative to the | + | | | | | | | | | | | | halo centre. Diagonal components | + | | | | | | | | | | | | and one off-diagonal triangle as | + | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | + | | | | | | | | | | | | (1,3), (2,3). Only calculated | + | | | | | | | | | | | | when we have more than 20 | + | | | | | | | | | | | | particles. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar initial mass. | + | | | | | | | | | | | | | + | StellarInitialMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 9 | float32 | dimensionless | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar luminosity in the 9 | + | | | | | | | | | | | | GAMA bands. | + | StellarLuminosity\ :math:`^{24}` | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | + | | | | | | | | | | | | iron. | + | StellarMassFractionIn­Iron | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | + | | | | | | | | | | | | oxygen. | + | StellarMassFractionIn­Oxygen | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the stars along the projection | + | StellarProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the stellar | + | | | | | | | | | | | | centre of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | + | | | | | | | | | | | | of the stars. Measured relative | + | StellarVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | to the stellar centre of mass | + | | | | | | | | | | | | velocity. The order of the | + | | | | | | | | | | | | components of the dispersion | + | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of baryons | + | | | | | | | | | | | | (gas and stars), relative to the | + | AngularMomentumBaryons\ :math:`^{19}` | | | | | | | | | | | centre of potential and baryonic | + | | | | | | | | | | | | centre of mass velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Baryonic (gas and stars) half | + | | | | | | | | | | | | mass radius. | + | HalfMassRadiusBaryons | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | dimensionless | y | y | y | n | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for baryons (gas and | + | | | | | | | | | | | | stars), relative to the centre of | + | KappaCorotBaryons\ :math:`^{22}` | | | | | | | | | | | potential and the centre of mass | + | | | | | | | | | | | | velocity of the baryons. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Index of this halo in the | + | | | | | | | | | | | | original halo finder catalogue | + | HaloCatalogueIndex | | | | | | | | | | | (first halo has index=0). | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | Input | 1 pc accurate | The centre of the subhalo as | + | | | | | | | | | | | | given by the halo finder. Used as | + | HaloCentre | | | | | | | | | | | reference for all relative | + | | | | | | | | | | | | positions. For VR and HBTplus | + | | | | | | | | | | | | this is equal to the position of | + | | | | | | | | | | | | the most bound particle in the | + | | | | | | | | | | | | subhalo. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Whether the halo finder flagged | + | | | | | | | | | | | | the halo as central (1) or | + | IsCentral | | | | | | | | | | | satellite (0). | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Total number of particles bound | + | | | | | | | | | | | | to the subhalo. | + | NumberOfBoundParticles | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Level of the subhalo in the | + | | | | | | | | | | | | merging hierarchy. | + | Depth | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the descendant of this | + | | | | | | | | | | | | subhalo. | + | DescendantTrackId | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | ID of the host FOF halo of this | + | | | | | | | | | | | | subhalo. Hostless halos have | + | HostFOFId | | | | | | | | | | | HostFOFId == -1 | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum mass of this subhalo | + | | | | | | | | | | | | across its evolutionary history | + | LastMaxMass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Largest value of maximum circular | + | | | | | | | | | | | | velocity of this subhalo across | + | LastMaxVmaxPhysical | | | | | | | | | | | its evolutionary history | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the parent of this | + | | | | | | | | | | | | subhalo. | + | NestedParentTrackId | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Snapshot when this subhalo was | + | | | | | | | | | | | | formed. | + | SnapshotIndexOfBirth | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | + | | | | | | | | | | | | had its maximum mass. | + | SnapshotIndexOfLastMax­Mass | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | + | | | | | | | | | | | | had its largest maximum circular | + | SnapshotIndexOfLastMax­Vmax | | | | | | | | | | | velocity. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Unique ID for this subhalo which | + | | | | | | | | | | | | is consistent across snapshots. | + | TrackId | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | FOF | 1 pc accurate | Centre of mass of the host FOF | + | | | | | | | | | | | | halo of this subhalo. Zero for | + | Centres | | | | | | | | | | | satellite and hostless subhalos. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | FOF | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of the host FOF halo of this | + | | | | | | | | | | | | subhalo. Zero for satellite and | + | Masses | | | | | | | | | | | hostless subhalos. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | uint64 | dimensionless | n | n | n | n | n | FOF | no compression | Number of particles in the host | + | | | | | | | | | | | | FOF halo of this subhalo. Zero | + | Sizes | | | | | | | | | | | for satellite and hostless | + | | | | | | | | | | | | subhalos. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int64 | dimensionless | n | n | n | n | n | SOAP | no compression | Index (within the SOAP arrays) of | + | | | | | | | | | | | | the top level parent of this | + | HostHaloIndex | | | | | | | | | | | subhalo. -1 for central subhalos. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Whether this halo is included in | + | | | | | | | | | | | | the reduced snapshot. | + | IncludedInReducedSnapshot | | | | | | | | | | | | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Ranking by mass of the halo | + | | | | | | | | | | | | within its parent field halo. | + | SubhaloRankByBoundMass | | | | | | | | | | | Zero for the most massive halo in | + | | | | | | | | | | | | the field halo. | + +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ + + +Non-trivial properties +---------------------- + +:math:`^{1}`\ The centre of mass and centre of mass velocity +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +are computed using all particle types except neutrinos (since neutrinos +can never be bound to a halo). + +:math:`^{2}`\ The concentration +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +is computed using the method described in Wang et al. (2023), but using +a fifth order polynomial fit to the R1-concentration relation for +:math:`1 0, \\ + 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ + \end{cases} + \end{equation} + +the corotational kinetic energy given by + +.. math:: + + \begin{equation} + K_{\rm{}corot,comp} = \sum_{i={\rm{}comp}} \begin{cases} + K_{{\rm{}rot,comp},i}, &L_{{\rm{}comp},p,i} > 0, \\ + 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ + \end{cases} + \end{equation} + +the rotational kinetic energy given by + +.. math:: + + \begin{equation} + K_{{\rm{}rot,comp},i} = \frac{1}{2} \frac{L_{{\rm{}comp},p,i}^2}{m_i R_i^2}, + \end{equation} + +the projected angular momentum along the angular momentum direction +given by + +.. math:: + + \begin{equation} + L_{{\rm{}comp},p,i} = \vec{L}_i \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}, + \end{equation} + +and the orthogonal distance to the angular momentum vector given by + +.. math:: + + \begin{equation} + R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right), + \end{equation} + +where the angular momentum vector and the relative position and velocity +are the same as above for consistency. + +:math:`^{23}`\ The kinetic energy +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +of the gas and stars is computed using the same relative velocities as +used for other properties, i.e. relative to the centre of mass velocity +of the gas and stars respectively. + +:math:`^{24}`\ Luminosities are given in the GAMA bands +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +and are always using the same order as in the snapshots: u, g, r, i, z, +Y, J, H, K. These are rest-frame dust-free AB-luminosities of the star +particles. These were computed using the BC03 (GALAXEV) models convolved +with different filter bands and interpolated in log-log (f(log(Z), +log(age)) = log(flux)) as used in the dust-free modelling of Trayford et +al. (2015). The luminosities are given in dimensionless units. They have +been divided by 3631 Jy already, i.e. they can be turned into absolute +AB-magnitudes (rest-frame absolute maggies) directly by applying -2.5 +log10(L) without additional corrections. + + From 7e038b8cb20bf237e76953f038355a630301e940 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Wed, 18 Feb 2026 15:57:05 +0100 Subject: [PATCH 02/14] Non property table --- source/soap/directory_layout.rst | 39 ++++ source/soap/index.rst | 147 ++---------- source/soap/membership_files.rst | 11 +- source/soap/particle_selection.rst | 360 +++++++++++++++++++---------- source/soap/property_filters.rst | 60 ++--- 5 files changed, 319 insertions(+), 298 deletions(-) create mode 100644 source/soap/directory_layout.rst diff --git a/source/soap/directory_layout.rst b/source/soap/directory_layout.rst new file mode 100644 index 0000000..1f0d44f --- /dev/null +++ b/source/soap/directory_layout.rst @@ -0,0 +1,39 @@ +Halo catalogue directory layout +=============================== + +SOAP catalogues +--------------- + +Each simulation has a ``SOAP-HBT`` directory with one +``halo_properties_XXXX.hdf5`` file for each output time, where ``XXXX`` is +the snapshot number. See :doc:`../snapshots/snapshot_redshifts` for the relation +between snapshot number and redshift. + +.. tip:: The easiest way to read the SOAP catalogues is to use swiftsimio + so that unit metadata is read automatically. + TODO: write and link to examples! + +As an example, see `/FLAMINGO/L1_m9/L1_m9/SOAP-HBT/ +`__ for +the ``L1_m9`` SOAP catalogues. + +# TODO: Do we want to hide the membership files? + +HBT-HERONS catalgoues +--------------------- + +# TODO: Are we serving the HBT files? +# TODO: If so then do we want sorted HBT files? + +Each simulation has an ``HBT-HERONS`` directory with one +``XXX`` subdirectory for each output time, where ``XXX`` is +the snapshot number. + +Documentation for the HBT-HERONS files can be found at the +`HBT-HERONS webstie +`__ + +As an example, see `/FLAMINGO/L1_m9/L1_m9/HBT-HERONS/ +`__ for +the ``L1_m9`` HBT-HERONS catalogues. + diff --git a/source/soap/index.rst b/source/soap/index.rst index d04956f..1f325c2 100644 --- a/source/soap/index.rst +++ b/source/soap/index.rst @@ -1,138 +1,35 @@ Halo catalogues ================= -When we observe the real Universe, the light from distant objects -takes time to reach us. This means we see these objects as they were -when the light was emitted. More distant objects are seen as they were -at earlier times. - -The FLAMINGO simulations attempt to replicate this effect for easier -comparison with observations. We place several virtual observers in -the simulated volume of space at the present day, and as the -simulation evolves we identify and store particles which cross each -observer's lightcone. A particle crosses the lightcone when it passes -exactly the distance at which light emitted from it would arrive at -the observer today. - -The FLAMINGO lightcone outputs include particle data, HEALPix maps, and -halo catalogues. These are described in the following sections: +At each snapshot output by the simulation, bound objects are identified by grouping +particles based on their spatial and dynamical properties. There are multiple +methods for doing this, but within the +FLAMINGO simulations structure is identified +using the HBT-HERONS subhalo finder +`(Forouhar Moreno et al. 2025). `__ + +Once the centres of subhalos and the particles bound to each one have +been identified, they are passed to the SOAP code +`(McGibbon et al. 2025). `__. +This outputs catalogues containing a large number of properties for different +halo/galaxy definitions, as described within the following pages. .. toctree:: - :maxdepth: 2 + :maxdepth: 1 + directory_layout particle_selection property_filters property_table membership_files +TODO: Remove membership files from the list above? -Spherical overdensity calculations ----------------------------------- - -The radius at which the density reaches a certain threshold value is -found by linear interpolation of the cumulative mass profile obtained -after sorting the particles by radius. The approach we use is different -from that taken by VR, where both the mass and the radius are obtained -from independent interpolations on the mass and density profiles (the -latter uses the logarithm of the density in the interpolation). The VR -approach is inconsistent, in the sense that the condition - -.. math:: - - \begin{equation} - \frac{4\pi{}}{3} R_{\rm{}SO}^3 \rho{}_{\rm{}target} = M_{\rm{}SO},\label{eq:MSO_condition} - \end{equation} - -is not guaranteed to be true, and will be especially violated for large -radial bins (the bins are generated from the particle radii by sorting -the particles, so we have no control over their width). We instead opt -to guarantee this condition by only finding :math:`R_{\rm{}SO}` or -:math:`M_{\rm{}SO}` by interpolation and using eq. -(`[eq:MSO_condition] <#eq:MSO_condition>`__) to derive the other -quantity. - -.. container:: float - :name: fig:MSO_vs_RSO - - |image| |image1| - -While the interpolation of the logarithmic density profile to find -:math:`R_{\rm{}SO}` is more straightforward, we found that it can lead -to significant deviations between the value of :math:`M_{\rm{}SO}` and -the cumulative mass in neighbouring bins that can be more than one -particle mass, as illustrated in Fig. `1 <#fig:MSO_vs_RSO>`__. The -reason for this is that the cumulative mass profile at fixed density -increases very steeply with radius, so that a small difference in -:math:`R_{\rm{}SO}` leads to a relatively large difference in -:math:`M_{\rm{}SO}`. Conversely, fixing :math:`M_{\rm{}SO}` will lead to -an :math:`R_{\rm{}SO}` that only deviates a little bit from the -:math:`R_{\rm{}SO}` found by interpolating the density profile. However, -doing so requires us to find the intersection of the cumulative mass -profile at fixed density (green line in Fig. `1 <#fig:MSO_vs_RSO>`__) -with the actual cumulative mass profile, which means solving the -following equation: - -.. math:: - - \begin{equation} - \frac{4\pi{}}{3} \rho{}_{\rm{}target} R_{\rm{}SO}^3 = M_{\rm{}low} + \left( \frac{M_{\rm{}high}-M_{\rm{}low}}{R_{\rm{}high} - R_{\rm{}low}} \right) \left(R_{\rm{}SO} - R_{\rm{}low}\right), - \label{eq:RSO} - \end{equation} - -where :math:`R/M_{\rm{}low/high}` are the bounds of the intersecting bin -(which we find in the density profile). This third degree polynomial -equation has no unique solution, although in practice only one of the -three possible complex solutions is real. We find this solution by using -a root finding algorithm within the intersecting bin (we use Brent’s -method for this). - -For clarity, this is the full set of rules for determining the SO radius -in SOAP: - -#. Sort particles according to radius and construct the cumulative mass - profile. - -#. Discard any particles at zero radius, since we cannot compute a - density for those. The mass of these particles is used as an - :math:`r=0` offset for the cumulative mass profile. Since the centre - of potential is the position of the most bound particle, there should - always be at least one such particle. - -#. Construct the density profile by dividing the cumulative mass at - every radius by the volume of the sphere with that radius. - -#. Find intersection points between the density profile and the target - density, i.e. the radii :math:`R_{1,2}` and masses :math:`M_{1,2}` - where the density profile goes from above to below the threshold: - - #. If there are none, analytically compute - :math:`R_{\rm{}SO}=\sqrt{3M_1/(4\pi{}R_1\rho_{\rm{}target})}`, - where :math:`R_1` and :math:`M_1` are the first non zero radius - and the corresponding cumulative mass. This is a special case of - Eq. (`[eq:RSO] <#eq:RSO>`__). Unless there are multiple particles - at the exact centre of potential position, this radius estimate - will then be based on just two particles. - - #. In all other cases, we use :math:`R_{1,2}` and :math:`M_{1,2}` as - input for Eq. (`[eq:RSO] <#eq:RSO>`__) and solve for - :math:`R_{\rm{}SO}`. The only exception is the special case where - :math:`R_1 = R_2`. If that happens, we simply move further down - the line until we find a suitable interval. - -#. From :math:`R_{\rm{}SO}`, we determine :math:`M_{\rm{}SO}` using Eq. - (`[eq:MSO_condition] <#eq:MSO_condition>`__). - -Neutrinos – if present in the model – are included -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -in the inclusive sphere calculation (and only here, since neutrino -particles cannot be bound to a halo) by adding both their weighted -masses (which can be negative), as well as the contribution from the -background neutrino density. The latter is achieved by explicitly adding -the cumulative mass profile at constant neutrino density to the total -cumulative mass profile before computing the density profile. This is -the only place where neutrinos explicitly enter the algorithm, except -for the neutrino masses computed for the SOs. Neutrinos are not included -in the calculation of the centre of mass and centre of mass velocity. - +.. note:: Within the cosmological simulation community people refer to both + "halos" and "subhalos", occasionally in an inconsistent manner. + Within FLAMINGO a halo corresponds to an overdensity of particles, originally found using the 3D FoF algorithm. Each halo contains one or more + subhalos, which are a self-bound collection of particles identified by + HBT-HERONS. Subhalos can be either centrals (each halo has a single central subhalo, + and the halo centre is defined as the most bound particle position of its central + subhalo), or satellites. diff --git a/source/soap/membership_files.rst b/source/soap/membership_files.rst index bccb792..3da7342 100644 --- a/source/soap/membership_files.rst +++ b/source/soap/membership_files.rst @@ -1,6 +1,8 @@ Group membership files ---------------------- +TODO: Can we remove this? This information should just be included in the snapshot data? + Before SOAP can be run we generate a set of files which contain halo membership information for each particle in the SWIFT snapshot. The datasets in these files are stored in the same order and with the same @@ -38,12 +40,3 @@ The GroupNr values stored here are zero based array indexes into the full subhalo catalogue, and not the subhalos IDs. For example the first group in the VELOCIraptor catalogue has GroupNr=0 and ID=1. -The script ‘make_virtual_snapshot.py‘ will combine snapshot and group -membership files into a single virtual snapshot file. This virtual file -can be read by swiftsimio and gadgetviewer to provide halo membership -information alongside other particle properties. Using the virtual file -along with the spatial masking functionality within swiftsimio means it -is possible to quickly load all the particles bound to a given subhalo. - -.. |image| image:: images/image7.png -.. |image1| image:: images/image4.png diff --git a/source/soap/particle_selection.rst b/source/soap/particle_selection.rst index 6fe7704..8e3fadd 100644 --- a/source/soap/particle_selection.rst +++ b/source/soap/particle_selection.rst @@ -1,164 +1,282 @@ -Property types --------------- +SOAP halo variations +==================== -Subhalo quantities (SH) -^^^^^^^^^^^^^^^^^^^^^^^ +SOAP calculates properties for several definitions of a halo. These various types +give users the freedom to select the most appropriate definition for their scientific +use case. -are computed for each subhalo identified by the halo finder, -irrespective of whether it is a field halo or a satellite (or even +Bound subhalo (SH) +------------------ + +Bound subhalo properties are computed for each subhalo identified by the subhalo finder, +irrespective of whether it is a central or satellite subhalo (or even satellite of satellite and so on). They include all particles that they -halo finder has determined are bound to the subhalo. Subhalo properties -are contained within the group ``BoundSubhalo`` in the output file. +subhalo finder has determined are bound to the subhalo. Subhalo properties +are contained within the group ``bound_subhalo`` in the output file. -Exclusive sphere quantities (ES) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Exclusive sphere (ES) +--------------------- -are similar to subhalo quantities, but they include only the particles -that are bound to the subhalo, and apply an additional radial cut +Exclusive sphere properties are similar to bound subhalo quantities, but +they include only the particles +that are bound to the subhalo and also satisfy an additional radial cut (aperture). We use eight different aperture radii (10, 30, 50, 100, 300, -500, 1000, 3000 kpc), so that every (sub-)halo has eight of these. +500, 1000, 3000 kpc), so that every subhalo has eight of these. Exclusive sphere properties are contained within a group -``ExclusiveSphere/XXXkpc``, where ``XXX`` is the corresponding aperture +``exclusive_sphere_XXXkpc``, where ``XXX`` is the corresponding aperture radius. -Inclusive sphere quantities (IS) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Inclusive sphere (IS) +--------------------- -use the same physical aperture radii as the exclusive sphere quantities, +Inclusive sphere properties use the same physical aperture radii as +the exclusive sphere quantities, but include all particles within the radius, regardless of their membership status. They are stored within a group -``InclusiveSphere/XXXkpc``. +``inclusive_sphere_XXXkpc``. -Exclusive projected quantities (EP) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Exclusive projected aperture (EP) +--------------------------------- -are similar to exclusive sphere quantities, except that their aperture -filter is applied in projection, and this for independent projections +The projected apertures are similar to exclusive sphere quantities, +except that their aperture +filter is applied in 3 independent projections along the x-, y- and z-axis. Along the projection axis, we do not apply any radial cut, so that the depth corresponds to all particles bound to -the (sub-)halo. With four projected aperture radii (10, 30, 50, 100 +the subhalo. With four projected aperture radii (10, 30, 50, 100 kpc), we then have twelve sets of projected aperture quantities for each -(sub-)halo. Projected aperture quantities are stored in a group named -``ProjectedAperture/XXXkpc/projP``, where ``XXX`` is the corresponding +subhalo. Projected aperture quantities are stored in a group named +``projected_aperture_XXXkpc_projP``, where ``XXX`` is the corresponding aperture radius, and ``P`` corresponds to a particular projection direction (``x``, ``y`` or ``z``). -Spherical overdensity properties (SO) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +Spherical overdensity (SO) +-------------------------- -are fundamentally different from the three other types in that their -aperture radius is determined from the density profile and is different -for different halos. They always include all particles within a sphere -around the centre of potential, regardless of halo membership. The +Spherical overdensities are fundamentally different from the other types in that their +aperture radius is determined from the density profile and so has a different value +for each halos. They always include all particles within a sphere +centred on the most bound particle, regardless of particle subhalo membership. The radius is either the radius at which the density reaches a certain target value (50 crit, 100 crit, 200 crit, 500 crit, 1000 crit, 2500 -crit, 200 mean, BN98) or a multiple of such a radius (5xR 500 crit). +crit, 200 mean, +`Bryan & Norman (1998) `__. +See `Spherical overdensity calculations`_ for details about how the radii are +calculated) or a multiple of such a radius (5xR 500 crit). Details of the spherical overdensity calculation are given at the end of this document. Spherical overdensities are only computed for centrals, i.e. field halos. The inclusive sphere quantities are stored in a group -``SO/XXX``, where ``XXX`` can be either ``XXX_mean`` for density -multiples of the mean density, ``XXX_crit`` for density multiples of the -critical density, ``BN98`` for the overdensity definition of Bryan & -Norman (1998), and ``YxR_XXX_ZZZ`` for multiples of some other radius -(e.g. ``5xR_2500_mean``). The latter can only be computed after the -corresponding density multiple SO radius has been computed. This is -achieved by ordering the calculations. +``spherical_overdensity_XXX``, where ``XXX`` are the target density values +listed above. -InputHalos -^^^^^^^^^^ +Input Halos +---------- -Some properties are directly copied from the original halo catalogue -that was passed to SOAP. These are stored in a separate group, -``InputHalos``. +Some properties are directly copied from the original subhalo catalogue +that was passed to SOAP. These are stored in a three separate groups. +``input_halos`` contains the fundamental properties required for SOAP +to run. ``input_halos_fof`` contains the FoF properties of the host of +each central subhalo. ``input_halos_hbtplus`` contains properties directly +copied from the HBT-HERONS catalogues. SOAP -^^^^ +---- Some properties are computed by SOAP using the other halo properties present in the catalogue. These are stored in a separate group, ``SOAP``. This is just done for convenience; these quantities can be computed from the SOAP output alone. -The table below lists -^^^^^^^^^^^^^^^^^^^^^ +Summary table +------------- -all the groups in the output file which containing datasets. Note that -there will be three groups (``x``, ``y`` or ``z``) for each -``ProjectedAperture`` variation. Each halo variation can have a filter +The table below lists all the groups in the output file which contain datasets. +Note that there will be three groups (``x``, ``y`` or ``z``) for each +projected aperture variation. Each halo variation can have a filter applied to it. If a halo does not satisfy the filter then the variation will not be calculated for that halo. More information on filters can be found in the next section. -+------------------------------------+----------------------------------------+------------+-------------+ -| Group name (HDF5) | Group name (swiftsimio) | Inclusive? | Filter | -+====================================+========================================+============+=============+ -| ``BoundSubhalo`` | ``bound_subhalo`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/200_crit`` | ``spherical_overdensity_200_crit`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/50_crit`` | ``spherical_overdensity_50_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/100_crit`` | ``spherical_overdensity_100_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/200_mean`` | ``spherical_overdensity_200_mean`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/500_crit`` | ``spherical_overdensity_500_crit`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/5xR_500_crit`` | ``spherical_overdensity_5xr_500_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/1000_crit`` | ``spherical_overdensity_1000_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/2500_crit`` | ``spherical_overdensity_2500_crit`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SO/BN98`` | ``spherical_overdensity_bn98`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/10kpc`` | ``exclusive_sphere_10kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/30kpc`` | ``exclusive_sphere_30kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/50kpc`` | ``exclusive_sphere_50kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/100kpc`` | ``exclusive_sphere_100kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/300kpc`` | ``exclusive_sphere_300kpc`` | n | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/500kpc`` | ``exclusive_sphere_500kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/1000kpc`` | ``exclusive_sphere_1000kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ExclusiveSphere/3000kpc`` | ``exclusive_sphere_3000kpc`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/10kpc`` | ``inclusive_sphere_10kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/30kpc`` | ``inclusive_sphere_30kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/50kpc`` | ``inclusive_sphere_50kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/100kpc`` | ``inclusive_sphere_100kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/300kpc`` | ``inclusive_sphere_300kpc`` | y | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/500kpc`` | ``inclusive_sphere_500kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/1000kpc`` | ``inclusive_sphere_1000kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InclusiveSphere/3000kpc`` | ``inclusive_sphere_3000kpc`` | y | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/10kpc/projP`` | ``projected_aperture_10kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/30kpc/projP`` | ``projected_aperture_30kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/50kpc/projP`` | ``projected_aperture_50kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``ProjectedAperture/100kpc/projP`` | ``projected_aperture_100kpc_projP`` | n | general | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``SOAP`` | ``soap`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos`` | ``input_halos`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos/HBTplus`` | ``input_halos_hbtplus`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ -| ``InputHalos/FOF`` | ``input_halos_fof`` | - | | -+------------------------------------+----------------------------------------+------------+-------------+ ++----------------------------------------+------------+-------------+ +| Group name | Inclusive? | Filter | ++========================================+============+=============+ +| ``bound_subhalo`` | n | | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_200_crit`` | y | | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_50_crit`` | y | general | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_100_crit`` | y | general | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_200_mean`` | y | | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_500_crit`` | y | | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_5xr_500_crit`` | y | general | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_1000_crit`` | y | general | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_2500_crit`` | y | general | ++----------------------------------------+------------+-------------+ +| ``spherical_overdensity_bn98`` | y | general | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_10kpc`` | n | | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_30kpc`` | n | | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_50kpc`` | n | | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_100kpc`` | n | | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_300kpc`` | n | | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_500kpc`` | n | general | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_1000kpc`` | n | general | ++----------------------------------------+------------+-------------+ +| ``exclusive_sphere_3000kpc`` | n | general | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_10kpc`` | y | | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_30kpc`` | y | | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_50kpc`` | y | | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_100kpc`` | y | | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_300kpc`` | y | | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_500kpc`` | y | general | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_1000kpc`` | y | general | ++----------------------------------------+------------+-------------+ +| ``inclusive_sphere_3000kpc`` | y | general | ++----------------------------------------+------------+-------------+ +| ``projected_aperture_10kpc_projP`` | n | general | ++----------------------------------------+------------+-------------+ +| ``projected_aperture_30kpc_projP`` | n | general | ++----------------------------------------+------------+-------------+ +| ``projected_aperture_50kpc_projP`` | n | general | ++----------------------------------------+------------+-------------+ +| ``projected_aperture_100kpc_projP`` | n | general | ++----------------------------------------+------------+-------------+ +| ``soap`` | - | | ++----------------------------------------+------------+-------------+ +| ``input_halos`` | - | | ++----------------------------------------+------------+-------------+ +| ``input_halos_hbtplus`` | - | | ++----------------------------------------+------------+-------------+ +| ``input_halos_fof`` | - | | ++----------------------------------------+------------+-------------+ + + +Spherical overdensity calculations +---------------------------------- + +The radius at which the density reaches a certain threshold value is +found by linear interpolation of the cumulative mass profile obtained +after sorting the particles by radius. The approach we use is different +from that taken by VR, where both the mass and the radius are obtained +from independent interpolations on the mass and density profiles (the +latter uses the logarithm of the density in the interpolation). The VR +approach is inconsistent, in the sense that the condition + +.. math:: + + \begin{equation} + \frac{4\pi{}}{3} R_{\rm{}SO}-3 \rho{}_{\rm{}target} = M_{\rm{}SO},\label{eq:MSO_condition} + \end{equation} + +is not guaranteed to be true, and will be especially violated for large +radial bins (the bins are generated from the particle radii by sorting +the particles, so we have no control over their width). We instead opt +to guarantee this condition by only finding :math:`R_{\rm{}SO}` or +:math:`M_{\rm{}SO}` by interpolation and using eq. +(`[eq:MSO_condition] <#eq:MSO_condition>`__) to derive the other +quantity. + +.. container:: float + :name: fig:MSO_vs_RSO + + |image| |image1| + +While the interpolation of the logarithmic density profile to find +:math:`R_{\rm{}SO}` is more straightforward, we found that it can lead +to significant deviations between the value of :math:`M_{\rm{}SO}` and +the cumulative mass in neighbouring bins that can be more than one +particle mass, as illustrated in Fig. `1 <#fig:MSO_vs_RSO>`__. The +reason for this is that the cumulative mass profile at fixed density +increases very steeply with radius, so that a small difference in +:math:`R_{\rm{}SO}` leads to a relatively large difference in +:math:`M_{\rm{}SO}`. Conversely, fixing :math:`M_{\rm{}SO}` will lead to +an :math:`R_{\rm{}SO}` that only deviates a little bit from the +:math:`R_{\rm{}SO}` found by interpolating the density profile. However, +doing so requires us to find the intersection of the cumulative mass +profile at fixed density (green line in Fig. `1 <#fig:MSO_vs_RSO>`__) +with the actual cumulative mass profile, which means solving the +following equation: + +.. math:: + + \begin{equation} + \frac{4\pi{}}{3} \rho{}_{\rm{}target} R_{\rm{}SO}-3 = M_{\rm{}low} + \left( \frac{M_{\rm{}high}-M_{\rm{}low}}{R_{\rm{}high} - R_{\rm{}low}} \right) \left(R_{\rm{}SO} - R_{\rm{}low}\right), + \label{eq:RSO} + \end{equation} + +where :math:`R/M_{\rm{}low/high}` are the bounds of the intersecting bin +(which we find in the density profile). This third degree polynomial +equation has no unique solution, although in practice only one of the +three possible complex solutions is real. We find this solution by using +a root finding algorithm within the intersecting bin (we use Brent’s +method for this). + +For clarity, this is the full set of rules for determining the SO radius +in SOAP: + +#. Sort particles according to radius and construct the cumulative mass + profile. + +#. Discard any particles at zero radius, since we cannot compute a + density for those. The mass of these particles is used as an + :math:`r=0` offset for the cumulative mass profile. Since the halo centre + is the position of the most bound particle, there should + always be at least one such particle. + +#. Construct the density profile by dividing the cumulative mass at + every radius by the volume of the sphere with that radius. + +#. Find intersection points between the density profile and the target + density, i.e. the radii :math:`R_{1,2}` and masses :math:`M_{1,2}` + where the density profile goes from above to below the threshold: + + *. If there are none, analytically compute + :math:`R_{\rm{}SO}=\sqrt{3M_1/(4\pi{}R_1\rho_{\rm{}target})}`, + where :math:`R_1` and :math:`M_1` are the first non zero radius + and the corresponding cumulative mass. This is a special case of + Eq. (`[eq:RSO] <#eq:RSO>`__). Unless there are multiple particles + at the exact centre of potential position, this radius estimate + will then be based on just two particles. + + *. In all other cases, we use :math:`R_{1,2}` and :math:`M_{1,2}` as + input for Eq. (`[eq:RSO] <#eq:RSO>`__) and solve for + :math:`R_{\rm{}SO}`. The only exception is the special case where + :math:`R_1 = R_2`. If that happens, we simply move further down + the line until we find a suitable interval. + +#. From :math:`R_{\rm{}SO}`, we determine :math:`M_{\rm{}SO}` using Eq. + (`[eq:MSO_condition] <#eq:MSO_condition>`__). + +Neutrinos (if present in the model) are included in the inclusive sphere calculation +(and only here, since neutrino +particles cannot be bound to a subhalo) by adding both their weighted +masses (which can be negative), as well as the contribution from the +background neutrino density. The latter is achieved by explicitly adding +the cumulative mass profile at constant neutrino density to the total +cumulative mass profile before computing the density profile. This is +the only place where neutrinos explicitly enter the algorithm, except +for the neutrino masses computed for the spherical overdensity properties. + +.. |image| image:: images/image7.png +.. |image1| image:: images/image4.png diff --git a/source/soap/property_filters.rst b/source/soap/property_filters.rst index b23aafa..d0d8fe4 100644 --- a/source/soap/property_filters.rst +++ b/source/soap/property_filters.rst @@ -1,63 +1,37 @@ -Property categories -------------------- +SOAP property filters +--------------------- -Halo properties only make sense if the subhalo contains sufficient -particles. Halo finders are often run with a configuration that requires -at least 20 particles for a satellite subhalo. However, even for those +For certain properties it only makes sense to compute them if a subhalo +contains sufficient +particles. HBT-HERONS was run with a configuration that requires each +subhalo to have at least 20 particles. However, even for those particle numbers, a lot of the properties computed by SOAP will be zero (e.g. the gas mass within a 10 kpc aperture), or have values that are outliers compared to the full halo population because of undersampling. We can save a lot of disk space by filtering these out by applying appropriate cuts. Filtering means setting the value of the property to -``NaN``; HDF5 file compression then very effectively reduces the data +zero, and HDF5 file compression then very effectively reduces the data storage required to store these properties, while the size of the arrays -that the end user sees remains unchanged. Evidently, we can also save on +that the end user sees remains unchanged. We also save on computing time by not computing properties that are filtered out. Since different properties can have very different requirements, filtering is done in categories, where each category corresponds to a -set of quantities that are filtered using the same criterion. Inclusive, -exclusive or projected quantities with different aperture radii (or -overdensity criteria) can be used to create profiles. In order for these -profiles to make sense, we have to apply a consistent cut across all the -different aperture radii (or overdensity criteria) for the same subhalo -property type. Or in other words: the quantities for an inclusive sphere -with a 10 kpc aperture radius will use the same filter mask as the -quantities of the inclusive sphere with a 3000 kpc aperture radius, even -though the latter by construction has many more particles. +set of quantities that are filtered using the same criterion. -Basic quantities (basic) -^^^^^^^^^^^^^^^^^^^^^^^^ +**Basic quantities (basic)** are never filtered out, and hence are calculated for all objects in the +input subhalo catalogue. -are never filtered out, and hence are calculated for all objects in the -input halo catalogue. - -General quantities (general) -^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the total number of particles bound to the +**General quantities (general)** use a filter based on the total number of particles bound to the subhalo. -Gas quantities (gas) -^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of gas particles bound to the subhalo. - -DM quantities (dm) -^^^^^^^^^^^^^^^^^^ +**Gas quantities (gas)** use a filter based on the number of gas particles bound to the subhalo. -use a filter based on the number of DM particles bound to the subhalo. +**DM quantities (dm)** use a filter based on the number of DM particles bound to the subhalo. -Stellar quantities (star) -^^^^^^^^^^^^^^^^^^^^^^^^^ +**Stellar quantities (star)** use a filter based on the number of star particles bound to the subhalo. -use a filter based on the number of star particles bound to the subhalo. - -Baryon quantities (baryon) -^^^^^^^^^^^^^^^^^^^^^^^^^^ - -use a filter based on the number of gas and star particles bound to the -subhalo. +**Baryon quantities (baryon)** use a filter based on the number of gas and star particles bound to the subhalo. Note that there are no quantities that use a BH or neutrino particle number filter. @@ -66,7 +40,7 @@ The particle number thresholds are set in the parameter file. The different categories are summarised in the table below. +---------+-----------------------------------------------------------------------+ -| Name | criterion | +| Name | Criterion | +=========+=======================================================================+ | basic | (all halos) | +---------+-----------------------------------------------------------------------+ From 2e0e5a317b7c25eca279ee60f842f051349e8f42 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Thu, 19 Feb 2026 13:00:49 +0100 Subject: [PATCH 03/14] Property table v1 --- source/conf.py | 30 + source/soap/property_table.rst | 3494 +++++++++++++++++++++----------- 2 files changed, 2377 insertions(+), 1147 deletions(-) diff --git a/source/conf.py b/source/conf.py index 360eb6a..a94b69e 100644 --- a/source/conf.py +++ b/source/conf.py @@ -2,6 +2,8 @@ # # For the full list of built-in configuration values, see the documentation: # https://www.sphinx-doc.org/en/master/usage/configuration.html +from docutils import nodes +from sphinx.application import Sphinx # -- Project information ----------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#project-information @@ -62,3 +64,31 @@ 'https://unpkg.com/@highlightjs/cdn-assets@11.11.1/languages/python.min.js', 'https://unpkg.com/@highlightjs/cdn-assets@11.11.1/languages/yaml.min.js', ] + + +# Coloured inline roles for the SOAP property table. +def _highlight_role(background): + """Return a docutils role function that wraps text in a highlighted .""" + + def role(name, rawtext, text, lineno, inliner, options=None, content=None): + style = ( + f"background-color: {background};" + " color: black;" + " padding: 1px 4px;" + " border-radius: 3px;" + " font-family: monospace;" + ) + html = f'{text}' + # raw() node so the HTML passes through unchanged; latex() node is a + # plain-text fallback for PDF builds. + node = nodes.raw("", html, format="html") + latex_node = nodes.raw("", text, format="latex") + return [node, latex_node], [] + + return role + + +def setup(app: Sphinx): + app.add_role("avail", _highlight_role("#c8e6c9")) # light green + app.add_role("snaponly", _highlight_role("#bbdefb")) # light blue + app.add_role("unavail", _highlight_role("#ffcdd2")) # light red diff --git a/source/soap/property_table.rst b/source/soap/property_table.rst index 2f3d380..cb3157c 100644 --- a/source/soap/property_table.rst +++ b/source/soap/property_table.rst @@ -1,1301 +1,2501 @@ -Overview table +DMO Properties -------------- -The table below lists all the properties that are computed by SOAP when -run in HYDRO mode. For dark matter only (DMO) mode only the properties -colored violet/purple are computed. This table is automatically -generated by SOAP from the source code, so that all names, types, units, -categories and descriptions match what is actually used and output by -SOAP. For each quantity, the table indicates for which halo types the -property is computed. Superscript numbers refer to more detailed -explanations for some of the properties and match the numbers in the -next section. If swiftsimio has been used to load a catalogue then the -fields names are in snake_case rather than CamelCase, e.g. -``CentreOfMass`` becomes ``centre_of_mass``. - -Note that quantities are given in the base units of the simulation -snapshot. The attributes of each SOAP dataset contains all the relevant -meta-data to convert between physical and co-moving units, i.e. -information about how the quantity depends on the scale-factor, and what -the conversion factor to and from CGS units is. All quantities are -:math:`h`-free. The conversion of the base units to CGS is given by: - -==== ============== -Unit CGS conversion -==== ============== -L 3.086e+24 cm -M 1.988e+43 g -t 3.086e+19 s -T 1 K -==== ============== - -For example, a property whose units are listed as M/t will have units of -velocity, where :math:`1 \, \rm{M/t} = 1\, \rm{km/s}`. The scale factor -is explicitly included for comoving properties (e.g. the units of -HaloCentre are aL) - -.. container:: landscape - - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | Name | Shape | Type | Units | SH | ES | IS | EP | SO | Category | Compression | Description | - +===================================================================================+=======+=========+====================================================+====+====+====+====+====+==========+=========================================================+===================================+ - | BlackHolesDynamicalMass | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH dynamical mass. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total BH subgrid mass. | - | | | | | | | | | | | | | - | BlackHolesSubgridMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | basic | 1 pc accurate | Centre of mass. | - | | | | | | | | | | | | | - | CentreOfMass\ :math:`^{1}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | basic | 0.1 km/s accurate | Centre of mass velocity. | - | | | | | | | | | | | | | - | CentreOfMassVelocity\ :math:`^{1}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | - | | | | | | | | | | | | NFW profile. Minimum particle | - | Concentration\ :math:`^{2}` | | | | | | | | | | | radius set to softening length | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Halo concentration assuming an | - | | | | | | | | | | | | NFW profile. No particle | - | ConcentrationUnsoftened | | | | | | | | | | | softening. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | - | | | | | | | | | | | | particles assuming an NFW | - | DarkMatterConcentration\ :math:`^{2}` | | | | | | | | | | | profile. Minimum particle radius | - | | | | | | | | | | | | set to softening length | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Concentration of dark matter | - | | | | | | | | | | | | particles assuming an NFW | - | DarkMatterConcentration­Unsoftened | | | | | | | | | | | profile. No particle softening | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total DM mass. | - | | | | | | | | | | | | | - | DarkMatterMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of the particle furthest | - | | | | | | | | | | | | from the halo centre | - | EncloseRadius | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass. | - | | | | | | | | | | | | | - | GasMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in | - | | | | | | | | | | | | metals. | - | GasMassFractionInMetals\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Stellar half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusStars\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | - | | | | | | | | | | | | accounting for particle softening | - | MaximumCircularVelocity\ :math:`^{5}` | | | | | | | | | | | lengths. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | - | | | | | | | | | | | | MaximumCircularVelocityUnsoftened | - | MaximumCircularVelocity­Radius­Unsoftened\ :math:`^{5}` | | | | | | | | | | | is reached. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity when | - | | | | | | | | | | | | not accounting for particle | - | MaximumCircularVelocity­Unsoftened\ :math:`^{5}` | | | | | | | | | | | softening lengths. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | y | y | y | y | y | basic | Store less bits | ID of most massive black hole. | - | | | | | | | | | | | | | - | MostMassiveBlackHole­ID | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of most massive black hole. | - | | | | | | | | | | | | | - | MostMassiveBlackHole­Mass\ :math:`^{6}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Noise suppressed total neutrino | - | | | | | | | | | | | | mass. | - | NoiseSuppressedNeutrino­Mass\ :math:`^{7}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of black hole particles. | - | | | | | | | | | | | | | - | NumberOfBlackHoleParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of dark matter particles. | - | | | | | | | | | | | | | - | NumberOfDarkMatterParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of gas particles. | - | | | | | | | | | | | | | - | NumberOfGasParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | n | n | n | n | y | basic | no compression | Number of neutrino particles. | - | | | | | | | | | | | | | - | NumberOfNeutrinoParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint32 | dimensionless | y | y | y | y | y | basic | no compression | Number of star particles. | - | | | | | | | | | | | | | - | NumberOfStarParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total neutrino particle mass. | - | | | | | | | | | | | | | - | RawNeutrinoMass\ :math:`^{7}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius of a sphere satisfying a | - | | | | | | | | | | | | spherical overdensity criterion. | - | SORadius | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total star formation rate. | - | | | | | | | | | | | | | - | StarFormationRate\ :math:`^{8}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in metals | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Metals\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass. | - | | | | | | | | | | | | | - | StellarMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | metals. | - | StellarMassFractionIn­Metals | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | basic | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass. | - | | | | | | | | | | | | | - | TotalMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event. | - | | | | | | | | | | | | | - | BlackHolesLastEventScalefactor | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | - | | | | | | | | | | | | | - | ComptonY\ :math:`^{9}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\rm{L}^{2}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total Compton y parameter. | - | | | | | | | | | | | | Excludes gas that was recently | - | ComptonYWithoutRecent­AGNHeating\ :math:`^{9}` | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kinetic Sunyaey-Zel’dovich | - | | | | | | | | | | | | effect, assuming a line of sight | - | DopplerB\ :math:`^{10}` | | | | | | | | | | | towards the position of the first | - | | | | | | | | | | | | lightcone observer. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature. | - | GasComptonYTemperature\ :math:`^{11}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasComptonYTemperature­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding gas that | - | GasComptonYTemperature­Without­Recent­AGNHeating\ :math:`^{11}` | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | ComptonY-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasComptonYTemperature­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12,11}` | | | | | | | | | | | excised core and gas that was | - | | | | | | | | | | | | recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron. | - | | | | | | | | | | | | | - | GasMassFractionInIron\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass in oxygen. | - | | | | | | | | | | | | | - | GasMassFractionInOxygen\ :math:`^{3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature. | - | GasTemperature\ :math:`^{13}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureCoreExcision\ :math:`^{12}` | | | | | | | | | | | excised core. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding cool gas | - | GasTemperatureWithout­Cool­Gas\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding cool gas | - | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | with a temperature below 1e5 K | - | | | | | | | | | | | | and gas that was recently heated | - | | | | | | | | | | | | by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Cool­Gas­And­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, gas below 1e5 K and | - | | | | | | | | | | | | gas that was recently heated by | - | | | | | | | | | | | | AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Cool­Gas­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core and gas below 1e5 K. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding gas that | - | GasTemperatureWithout­Recent­AGNHeating\ :math:`^{13}` | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted mean gas | - | | | | | | | | | | | | temperature, excluding the inner | - | GasTemperatureWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | excised core, and gas that was | - | | | | | | | | | | | | recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusTotal\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of gas with a | - | | | | | | | | | | | | temperature above 1e5 K. | - | HotGasMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | - | | | | | | | | | | | | a satellite outside this FOF | - | MassFractionExternal\ :math:`^{14}` | | | | | | | | | | | group. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of mass that is bound to | - | | | | | | | | | | | | a satellite in the same FOF | - | MassFractionSatellites\ :math:`^{14}` | | | | | | | | | | | group. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M} / \rm{t}` | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas accretion rate of most | - | | | | | | | | | | | | massive black hole. | - | MostMassiveBlackHole­Accretion­Rate | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Scale-factor of last AGN event | - | | | | | | | | | | | | for most massive black hole. | - | MostMassiveBlackHole­Last­Event­Scalefactor | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | y | general | 1 pc accurate | Position of most massive black | - | | | | | | | | | | | | hole. | - | MostMassiveBlackHole­Position | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | y | y | y | y | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Velocity of most massive black | - | | | | | | | | | | | | hole relative to the simulation | - | MostMassiveBlackHole­Velocity | | | | | | | | | | | volume. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the total | - | ProjectedTotalInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedTotalInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the total mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal value as (1,1), | - | | | | | | | | | | | | (2,2), (1,2). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. | - | SpectroscopicLikeTemperature\ :math:`^{15}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Excludes gas in the | - | SpectroscopicLikeTemperature­Core­Excision\ :math:`^{12,15}` | | | | | | | | | | | inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Exclude gas that was | - | SpectroscopicLikeTemperature­Without­Recent­AGNHeating\ :math:`^{15}` | | | | | | | | | | | recently heated by AGN | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{T}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Spectroscopic-like gas | - | | | | | | | | | | | | temperature. Exclude gas that was | - | SpectroscopicLikeTemperature­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | recently heated by AGN. Excludes | - | | | | | | | | | | | | gas in the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Bullock et al. (2001) spin | - | | | | | | | | | | | | parameter. | - | SpinParameter\ :math:`^{16}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total mass of star-forming gas. | - | | | | | | | | | | | | | - | StarFormingGasMass\ :math:`^{8}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in iron | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Iron\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total gas mass fraction in oxygen | - | | | | | | | | | | | | for gas that is star-forming. | - | StarFormingGasMassFraction­In­Oxygen\ :math:`^{8,3}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total thermal energy of the gas. | - | | | | | | | | | | | | | - | ThermalEnergyGas\ :math:`^{17}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the total mass | - | TotalInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the total | - | TotalInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the | - | TotalInertiaTensorReduced | | | | | | | | | | | total mass distribution, relative | - | | | | | | | | | | | | to the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | TotalInertiaTensorReduced­Noniterative | | | | | | | | | | | from the total mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosity\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityCoreExcision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. | - | XRayLuminosityInRestframe\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas in | - | XRayLuminosityInRestframe­Core­Excision | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas that | - | XRayLuminosityInRestframe­Without­Recent­AGNHeating | | | | | | | | | | | was recently heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray luminosity | - | | | | | | | | | | | | in three bands. Excludes gas that | - | XRayLuminosityInRestframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | was recently heated by AGN. | - | | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityWithout­Recent­AGNHeating | | | | | | | | | | | Excludes gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray | - | | | | | | | | | | | | luminosity in three bands. | - | XRayLuminosityWithout­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe\ :math:`^{18}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Core­Excision | | | | | | | | | | | Excludes gas in the inner excised | - | | | | | | | | | | | | core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total rest-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­In­Restframe­Without­Recent­AGNHeating­Core­Excision | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Without­Recent­AGNHeating | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`1 / \rm{t}` | n | n | n | n | y | general | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total observer-frame Xray photon | - | | | | | | | | | | | | luminosity in three bands. | - | XRayPhotonLuminosity­Without­Recent­AGNHeating­Core­Excision\ :math:`^{12}` | | | | | | | | | | | Exclude gas that was recently | - | | | | | | | | | | | | heated by AGN. Excludes gas in | - | | | | | | | | | | | | the inner excised core | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | gas, relative to the centre of | - | AngularMomentumGas\ :math:`^{19}` | | | | | | | | | | | potential and gas centre of mass | - | | | | | | | | | | | | velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total gas mass | - | | | | | | | | | | | | that is co-rotating. | - | DiscToTotalGasMassFraction | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | y | gas | 1 pc accurate | Centre of mass of gas. | - | | | | | | | | | | | | | - | GasCentreOfMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | n | n | n | y | gas | 0.1 km/s accurate | Centre of mass velocity of gas. | - | | | | | | | | | | | | | - | GasCentreOfMassVelocity | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the gas mass | - | GasInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the gas | - | GasInertiaTensorNoniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the gas | - | GasInertiaTensorReduced | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | GasInertiaTensorReduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the gas along the projection | - | GasProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the gas centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the gas. Measured relative to | - | GasVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | the gas centre of mass velocity. | - | | | | | | | | | | | | The order of the components of | - | | | | | | | | | | | | the dispersion tensor is XX YY ZZ | - | | | | | | | | | | | | XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Gas half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusGas\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for gas, relative to | - | | | | | | | | | | | | the centre of potential and the | - | KappaCorotGas\ :math:`^{22}` | | | | | | | | | | | centre of mass velocity of the | - | | | | | | | | | | | | gas. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the gas, | - | | | | | | | | | | | | relative to the gas centre of | - | KineticEnergyGas\ :math:`^{23}` | | | | | | | | | | | mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the gas | - | ProjectedGasInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | gas | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedGasInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the gas mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal value as (1,1), | - | | | | | | | | | | | | (2,2), (1,2). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | dark matter, relative to the | - | AngularMomentumDarkMatter\ :math:`^{19}` | | | | | | | | | | | centre of potential and DM centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the DM mass | - | DarkMatterInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single interation from the DM | - | DarkMatterInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the DM | - | DarkMatterInertiaTensor­Reduced | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single interation | - | DarkMatterInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the DM mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the DM along the projection | - | DarkMatterProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the DM centre | - | | | | | | | | | | | | of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the dark matter. Measured | - | DarkMatterVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | relative to the DM centre of mass | - | | | | | | | | | | | | velocity. The order of the | - | | | | | | | | | | | | components of the dispersion | - | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Dark matter half mass radius. | - | | | | | | | | | | | | | - | HalfMassRadiusDarkMatter\ :math:`^{4}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum circular velocity | - | | | | | | | | | | | | calculated using dark matter | - | MaximumDarkMatterCircular­Velocity | | | | | | | | | | | particles when accounting for | - | | | | | | | | | | | | particle softening lengths.. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | n | n | n | n | dm | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Radius at which | - | | | | | | | | | | | | MaximumDarkMatterCircularVelocity | - | MaximumDarkMatterCircular­Velocity­Radius | | | | | | | | | | | is reached. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of the | - | | | | | | | | | | | | stars, relative to the centre of | - | AngularMomentumStars\ :math:`^{19}` | | | | | | | | | | | potential and stellar centre of | - | | | | | | | | | | | | mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Fraction of the total stellar | - | | | | | | | | | | | | mass that is co-rotating. | - | DiscToTotalStellarMass­Fraction | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for stars, relative | - | | | | | | | | | | | | to the centre of potential and | - | KappaCorotStars\ :math:`^{22}` | | | | | | | | | | | the centre of mass velocity of | - | | | | | | | | | | | | the stars. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float64 | :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total kinetic energy of the | - | | | | | | | | | | | | stars, relative to the stellar | - | KineticEnergyStars\ :math:`^{23}` | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Luminosity weighted mean stellar | - | | | | | | | | | | | | age. The weight is the r band | - | LuminosityWeightedMean­Stellar­Age | | | | | | | | | | | luminosity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{t}` | y | y | y | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass weighted mean stellar age. | - | | | | | | | | | | | | | - | MassWeightedMeanStellar­Age | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 2D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the stellar | - | ProjectedStellarInertia­Tensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | value as (1,1), (2,2), (1,2). | - | | | | | | | | | | | | Only calculated when we have more | - | | | | | | | | | | | | than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | dimensionless | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 2D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | ProjectedStellarInertia­Tensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | - | | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal value as | - | | | | | | | | | | | | (1,1), (2,2), (1,2). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | y | y | n | y | star | 1 pc accurate | Centre of mass of stars. | - | | | | | | | | | | | | | - | StellarCentreOfMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{a} \cdot \rm{L} / \rm{t}` | n | y | y | n | y | star | 0.1 km/s accurate | Centre of mass velocity of stars. | - | | | | | | | | | | | | | - | StellarCentreOfMassVelocity | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed | - | | | | | | | | | | | | iteratively from the stellar mass | - | StellarInertiaTensor | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\rm{L}^{2}` | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | 3D inertia tensor computed in a | - | | | | | | | | | | | | single iteration from the stellar | - | StellarInertiaTensor­Noniterative | | | | | | | | | | | mass distribution, relative to | - | | | | | | | | | | | | the halo centre. Diagonal | - | | | | | | | | | | | | components and one off-diagonal | - | | | | | | | | | | | | triangle as (1,1), (2,2), (3,3), | - | | | | | | | | | | | | (1,2), (1,3), (2,3). Only | - | | | | | | | | | | | | calculated when we have more than | - | | | | | | | | | | | | 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed iteratively from the | - | StellarInertiaTensor­Reduced | | | | | | | | | | | stellar mass distribution, | - | | | | | | | | | | | | relative to the halo centre. | - | | | | | | | | | | | | Diagonal components and one | - | | | | | | | | | | | | off-diagonal triangle as (1,1), | - | | | | | | | | | | | | (2,2), (3,3), (1,2), (1,3), | - | | | | | | | | | | | | (2,3). Only calculated when we | - | | | | | | | | | | | | have more than 20 particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | dimensionless | y | n | n | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Reduced 3D inertia tensor | - | | | | | | | | | | | | computed in a single iteration | - | StellarInertiaTensor­Reduced­Noniterative | | | | | | | | | | | from the stellar mass | - | | | | | | | | | | | | distribution, relative to the | - | | | | | | | | | | | | halo centre. Diagonal components | - | | | | | | | | | | | | and one off-diagonal triangle as | - | | | | | | | | | | | | (1,1), (2,2), (3,3), (1,2), | - | | | | | | | | | | | | (1,3), (2,3). Only calculated | - | | | | | | | | | | | | when we have more than 20 | - | | | | | | | | | | | | particles. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar initial mass. | - | | | | | | | | | | | | | - | StellarInitialMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 9 | float32 | dimensionless | y | y | y | y | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar luminosity in the 9 | - | | | | | | | | | | | | GAMA bands. | - | StellarLuminosity\ :math:`^{24}` | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | iron. | - | StellarMassFractionIn­Iron | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | n | y | y | n | y | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total stellar mass fraction in | - | | | | | | | | | | | | oxygen. | - | StellarMassFractionIn­Oxygen | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | y | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the stars along the projection | - | StellarProjectedVelocity­Dispersion\ :math:`^{20}` | | | | | | | | | | | axis, relative to the stellar | - | | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 6 | float32 | :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` | y | n | n | n | n | star | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass-weighted velocity dispersion | - | | | | | | | | | | | | of the stars. Measured relative | - | StellarVelocityDispersion­Matrix\ :math:`^{21}` | | | | | | | | | | | to the stellar centre of mass | - | | | | | | | | | | | | velocity. The order of the | - | | | | | | | | | | | | components of the dispersion | - | | | | | | | | | | | | tensor is XX YY ZZ XY XZ YZ. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float32 | :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` | y | y | y | n | y | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Total angular momentum of baryons | - | | | | | | | | | | | | (gas and stars), relative to the | - | AngularMomentumBaryons\ :math:`^{19}` | | | | | | | | | | | centre of potential and baryonic | - | | | | | | | | | | | | centre of mass velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{a} \cdot \rm{L}` | y | y | y | y | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Baryonic (gas and stars) half | - | | | | | | | | | | | | mass radius. | - | HalfMassRadiusBaryons | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | dimensionless | y | y | y | n | n | baryon | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Kappa-corot for baryons (gas and | - | | | | | | | | | | | | stars), relative to the centre of | - | KappaCorotBaryons\ :math:`^{22}` | | | | | | | | | | | potential and the centre of mass | - | | | | | | | | | | | | velocity of the baryons. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Index of this halo in the | - | | | | | | | | | | | | original halo finder catalogue | - | HaloCatalogueIndex | | | | | | | | | | | (first halo has index=0). | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | Input | 1 pc accurate | The centre of the subhalo as | - | | | | | | | | | | | | given by the halo finder. Used as | - | HaloCentre | | | | | | | | | | | reference for all relative | - | | | | | | | | | | | | positions. For VR and HBTplus | - | | | | | | | | | | | | this is equal to the position of | - | | | | | | | | | | | | the most bound particle in the | - | | | | | | | | | | | | subhalo. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Whether the halo finder flagged | - | | | | | | | | | | | | the halo as central (1) or | - | IsCentral | | | | | | | | | | | satellite (0). | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | Input | no compression | Total number of particles bound | - | | | | | | | | | | | | to the subhalo. | - | NumberOfBoundParticles | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Level of the subhalo in the | - | | | | | | | | | | | | merging hierarchy. | - | Depth | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the descendant of this | - | | | | | | | | | | | | subhalo. | - | DescendantTrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | ID of the host FOF halo of this | - | | | | | | | | | | | | subhalo. Hostless halos have | - | HostFOFId | | | | | | | | | | | HostFOFId == -1 | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Maximum mass of this subhalo | - | | | | | | | | | | | | across its evolutionary history | - | LastMaxMass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{L} / \rm{t}` | n | n | n | n | n | HBTplus | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Largest value of maximum circular | - | | | | | | | | | | | | velocity of this subhalo across | - | LastMaxVmaxPhysical | | | | | | | | | | | its evolutionary history | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | TrackId of the parent of this | - | | | | | | | | | | | | subhalo. | - | NestedParentTrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Snapshot when this subhalo was | - | | | | | | | | | | | | formed. | - | SnapshotIndexOfBirth | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | - | | | | | | | | | | | | had its maximum mass. | - | SnapshotIndexOfLastMax­Mass | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Latest snapshot when this subhalo | - | | | | | | | | | | | | had its largest maximum circular | - | SnapshotIndexOfLastMax­Vmax | | | | | | | | | | | velocity. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | HBTplus | no compression | Unique ID for this subhalo which | - | | | | | | | | | | | | is consistent across snapshots. | - | TrackId | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 3 | float64 | :math:`\rm{a} \cdot \rm{L}` | n | n | n | n | n | FOF | 1 pc accurate | Centre of mass of the host FOF | - | | | | | | | | | | | | halo of this subhalo. Zero for | - | Centres | | | | | | | | | | | satellite and hostless subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | float32 | :math:`\rm{M}` | n | n | n | n | n | FOF | :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` | Mass of the host FOF halo of this | - | | | | | | | | | | | | subhalo. Zero for satellite and | - | Masses | | | | | | | | | | | hostless subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | uint64 | dimensionless | n | n | n | n | n | FOF | no compression | Number of particles in the host | - | | | | | | | | | | | | FOF halo of this subhalo. Zero | - | Sizes | | | | | | | | | | | for satellite and hostless | - | | | | | | | | | | | | subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int64 | dimensionless | n | n | n | n | n | SOAP | no compression | Index (within the SOAP arrays) of | - | | | | | | | | | | | | the top level parent of this | - | HostHaloIndex | | | | | | | | | | | subhalo. -1 for central subhalos. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Whether this halo is included in | - | | | | | | | | | | | | the reduced snapshot. | - | IncludedInReducedSnapshot | | | | | | | | | | | | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - | | 1 | int32 | dimensionless | n | n | n | n | n | SOAP | no compression | Ranking by mass of the halo | - | | | | | | | | | | | | within its parent field halo. | - | SubhaloRankByBoundMass | | | | | | | | | | | Zero for the most massive halo in | - | | | | | | | | | | | | the field halo. | - +-----------------------------------------------------------------------------------+-------+---------+----------------------------------------------------+----+----+----+----+----+----------+---------------------------------------------------------+-----------------------------------+ - - -Non-trivial properties ----------------------- - -:math:`^{1}`\ The centre of mass and centre of mass velocity -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -are computed using all particle types except neutrinos (since neutrinos -can never be bound to a halo). - -:math:`^{2}`\ The concentration -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -is computed using the method described in Wang et al. (2023), but using -a fifth order polynomial fit to the R1-concentration relation for -:math:`1`_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Centre of mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``CentreOfMass`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``centre_of_mass_velocity`` `[1] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``CentreOfMassVelocity`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** 0.1 km/s accurate + * - ``concentration`` `[2] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Halo concentration assuming an NFW profile. Minimum particle radius set to softening length + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``Concentration`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``concentration_unsoftened`` `[2] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Halo concentration assuming an NFW profile. No particle softening. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ConcentrationUnsoftened`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total DM mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``enclose_radius`` + - basic + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius of the particle furthest from the halo centre + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``EncloseRadius`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_circular_velocity`` `[3] `_ + - basic + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Maximum circular velocity when accounting for particle softening lengths. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumCircularVelocity`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_circular_velocity_radius`` + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Radius at which MaximumCircularVelocity is reached. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumCircularVelocityRadius`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_circular_velocity_radius_unsoftened`` `[3] `_ + - basic + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius at which MaximumCircularVelocityUnsoftened is reached. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumCircularVelocityRadiusUnsoftened`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_circular_velocity_unsoftened`` `[3] `_ + - basic + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Maximum circular velocity when not accounting for particle softening lengths. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumCircularVelocityUnsoftened`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``noise_suppressed_neutrino_mass`` `[4] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Noise suppressed total neutrino mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NoiseSuppressedNeutrinoMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``number_of_dark_matter_particles`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of dark matter particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NumberOfDarkMatterParticles`` + * **Shape:** 1 + * **Type:** uint32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``raw_neutrino_mass`` `[4] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total neutrino particle mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``RawNeutrinoMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``soradius`` + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Radius of a sphere satisfying a spherical overdensity criterion. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SORadius`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``total_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``TotalMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``half_mass_radius_total`` `[5] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Total half mass radius. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HalfMassRadiusTotal`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``mass_fraction_external`` `[6] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of mass that is bound to a satellite outside this FOF group. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MassFractionExternal`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``mass_fraction_satellites`` `[6] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of mass that is bound to a satellite in the same FOF group. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MassFractionSatellites`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``spin_parameter`` `[7] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Bullock et al. (2001) spin parameter. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SpinParameter`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``total_inertia_tensor`` `[8] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``TotalInertiaTensor`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``total_inertia_tensor_noniterative`` `[8] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``TotalInertiaTensorNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``total_inertia_tensor_reduced`` `[8] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``TotalInertiaTensorReduced`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``total_inertia_tensor_reduced_noniterative`` `[8] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``TotalInertiaTensorReducedNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``angular_momentum_dark_matter`` `[9] `_ + - dm + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of the dark matter, relative to the HaloCentre and DM centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``AngularMomentumDarkMatter`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_inertia_tensor`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterInertiaTensor`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_inertia_tensor_noniterative`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterInertiaTensorNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_inertia_tensor_reduced`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterInertiaTensorReduced`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_inertia_tensor_reduced_noniterative`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterInertiaTensorReducedNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_projected_velocity_dispersion`` `[10] `_ + - dm + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the DM along the projection axis, relative to the DM centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterProjectedVelocityDispersion`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_velocity_dispersion_matrix`` `[11] `_ + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the dark matter. Measured relative to the DM centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterVelocityDispersionMatrix`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``half_mass_radius_dark_matter`` `[5] `_ + - dm + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Dark matter half mass radius. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HalfMassRadiusDarkMatter`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``input_halos/halo_catalogue_index`` + - InputHalos + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Index of this halo in the original halo finder catalogue (first halo has index=0). + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HaloCatalogueIndex`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/halo_centre`` + - InputHalos + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HaloCentre`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``input_halos/is_central`` + - InputHalos + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Whether the halo finder flagged the halo as central (1) or satellite (0). + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/IsCentral`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/number_of_bound_particles`` + - InputHalos + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Total number of particles bound to the subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/NumberOfBoundParticles`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/depth`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Level of the subhalo in the merging hierarchy. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/Depth`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/descendant_track_id`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - TrackId of the descendant of this subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/DescendantTrackId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/host_fofid`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/HostFOFId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/last_max_mass`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Maximum mass of this subhalo across its evolutionary history + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/LastMaxMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``input_halos/hbtplus/last_max_vmax_physical`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Largest value of maximum circular velocity of this subhalo across its evolutionary history + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/LastMaxVmaxPhysical`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``input_halos/hbtplus/nested_parent_track_id`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - TrackId of the parent of this subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/NestedParentTrackId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/snapshot_of_birth`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Snapshot when this subhalo was formed. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfBirth`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/snapshot_of_last_isolation`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Latest snapshot when this subhalo was a central. -1 if the subhalo has always been a central. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastIsolation`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/snapshot_of_last_max_mass`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Latest snapshot when this subhalo had its maximum mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxMass`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/snapshot_of_last_max_vmax`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Latest snapshot when this subhalo had its largest maximum circular velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxVmax`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/hbtplus/track_id`` + - HBTplus + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Unique ID for this subhalo which is consistent across snapshots. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/HBTplus/TrackId`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``input_halos/fof/centres`` + - FOF + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/FOF/Centres`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``input_halos/fof/masses`` + - FOF + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/FOF/Masses`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``input_halos/fof/radii`` + - FOF + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/FOF/Radii`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``input_halos/fof/sizes`` + - FOF + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``InputHalos/FOF/Sizes`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``soap/descendant_index`` `[12] `_ + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SOAP/DescendantIndex`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``soap/host_halo_index`` + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Index (within the SOAP arrays) of the top level parent of this subhalo. -1 for hostless halos. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SOAP/HostHaloIndex`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``soap/included_in_reduced_snapshot`` + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Whether this halo is included in the reduced snapshot. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SOAP/IncludedInReducedSnapshot`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``soap/progenitor_index`` `[12] `_ + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SOAP/ProgenitorIndex`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``soap/subhalo_rank_by_bound_mass`` + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Ranking by mass of the halo within its parent field halo. Zero for the most massive halo in the field halo. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SOAP/SubhaloRankByBoundMass`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + +Non-DMO Properties +------------------ + +.. list-table:: + :widths: 25 10 15 50 + :header-rows: 1 + + * - Name + - Category + - Outputs + - Description & Technical Specs + * - ``black_holes_dynamical_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total BH dynamical mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``BlackHolesDynamicalMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``black_holes_subgrid_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total BH subgrid mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``BlackHolesSubgridMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_concentration`` `[2] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Concentration of dark matter particles assuming an NFW profile. Minimum particle radius set to softening length + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterConcentration`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``dark_matter_concentration_unsoftened`` `[2] `_ + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Concentration of dark matter particles assuming an NFW profile. No particle softening + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DarkMatterConcentrationUnsoftened`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total gas mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_mass_fraction_in_metals`` `[13] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass fraction in metals. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasMassFractionInMetals`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``half_mass_radius_stars`` `[5] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Stellar half mass radius. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HalfMassRadiusStars`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``most_massive_black_hole_id`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - ID of most massive black hole. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHoleID`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + * - ``most_massive_black_hole_mass`` `[14] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Mass of most massive black hole. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHoleMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``number_of_black_hole_particles`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of black hole particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NumberOfBlackHoleParticles`` + * **Shape:** 1 + * **Type:** uint32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``number_of_gas_particles`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of gas particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NumberOfGasParticles`` + * **Shape:** 1 + * **Type:** uint32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``number_of_neutrino_particles`` + - basic + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Number of neutrino particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NumberOfNeutrinoParticles`` + * **Shape:** 1 + * **Type:** uint32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``number_of_star_particles`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of star particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``NumberOfStarParticles`` + * **Shape:** 1 + * **Type:** uint32 + * **Units:** dimensionless + * **Compression:** no compression + * - ``star_formation_rate`` `[15] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total star formation rate. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StarFormationRate`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``star_forming_gas_mass_fraction_in_metals`` `[15] `_ `[13] `_ + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass fraction in metals for gas that is star-forming. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StarFormingGasMassFractionInMetals`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_mass`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total stellar mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_mass_fraction_in_metals`` + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total stellar mass fraction in metals. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarMassFractionInMetals`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``black_holes_last_event_scalefactor`` + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Scale-factor of last AGN event. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``BlackHolesLastEventScalefactor`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``compton_y`` `[16] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total Compton y parameter. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ComptonY`` + * **Shape:** 1 + * **Type:** float64 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``compton_ywithout_recent_agnheating`` `[16] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total Compton y parameter. Excludes gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ComptonYWithoutRecentAGNHeating`` + * **Shape:** 1 + * **Type:** float64 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``doppler_b`` `[17] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Kinetic Sunyaey-Zel'dovich effect, assuming a line of sight towards the position of the first lightcone observer. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DopplerB`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot ` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_compton_ytemperature`` `[18] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - ComptonY-weighted mean gas temperature. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasComptonYTemperature`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_compton_ytemperature_core_excision`` `[19] `_ `[18] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - ComptonY-weighted mean gas temperature, excluding the inner excised core. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasComptonYTemperatureCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_compton_ytemperature_without_recent_agnheating`` `[18] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - ComptonY-weighted mean gas temperature, excluding gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeating`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_compton_ytemperature_without_recent_agnheating_core_excision`` `[19] `_ `[18] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - ComptonY-weighted mean gas temperature, excluding the inner excised core and gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_mass_fraction_in_iron`` `[13] `_ + - general + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass fraction in iron. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasMassFractionInIron`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_mass_fraction_in_oxygen`` `[13] `_ + - general + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass in oxygen. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasMassFractionInOxygen`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature`` `[20] `_ + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperature`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_cool_gas`` `[20] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutCoolGas`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_cool_gas_and_recent_agnheating`` `[20] `_ + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K and gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeating`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_cool_gas_and_recent_agnheating_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core, gas below 1e5 K and gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeatingCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_cool_gas_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core and gas below 1e5 K. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutCoolGasCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_recent_agnheating`` `[20] `_ + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeating`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_temperature_without_recent_agnheating_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core, and gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``hot_gas_mass`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total mass of gas with a temperature above 1e5 K. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HotGasMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``most_massive_black_hole_accretion_rate`` + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Gas accretion rate of most massive black hole. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHoleAccretionRate`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``most_massive_black_hole_last_event_scalefactor`` + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Scale-factor of last thermal AGN event for most massive black hole. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHoleLastEventScalefactor`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.3669{\rm{}e}10` + * - ``most_massive_black_hole_position`` + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Position of most massive black hole. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHolePosition`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``most_massive_black_hole_velocity`` + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Velocity of most massive black hole relative to the simulation volume. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MostMassiveBlackHoleVelocity`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_total_inertia_tensor_noniterative`` `[8] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedTotalInertiaTensorNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_total_inertia_tensor_reduced_noniterative`` `[8] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedTotalInertiaTensorReducedNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``spectroscopic_like_temperature`` `[21] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Spectroscopic-like gas temperature. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SpectroscopicLikeTemperature`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``spectroscopic_like_temperature_core_excision`` `[19] `_ `[21] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Spectroscopic-like gas temperature. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SpectroscopicLikeTemperatureCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``spectroscopic_like_temperature_without_recent_agnheating`` `[21] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeating`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``spectroscopic_like_temperature_without_recent_agnheating_core_excision`` `[19] `_ `[21] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{T}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``star_forming_gas_mass`` `[15] `_ + - general + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Total mass of star-forming gas. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StarFormingGasMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``star_forming_gas_mass_fraction_in_iron`` `[15] `_ `[13] `_ + - general + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Total gas mass fraction in iron for gas that is star-forming. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StarFormingGasMassFractionInIron`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``star_forming_gas_mass_fraction_in_oxygen`` `[15] `_ `[13] `_ + - general + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Total gas mass fraction in oxygen for gas that is star-forming. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StarFormingGasMassFractionInOxygen`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``thermal_energy_gas`` `[22] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total thermal energy of the gas. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ThermalEnergyGas`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity`` `[23] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray luminosity in three bands. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosity`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray luminosity in three bands. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_in_restframe`` `[23] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray luminosity in three bands. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityInRestframe`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_in_restframe_core_excision`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray luminosity in three bands. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityInRestframeCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_in_restframe_without_recent_agnheating`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeating`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_in_restframe_without_recent_agnheating_core_excision`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_without_recent_agnheating`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeating`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_luminosity_without_recent_agnheating_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity`` `[23] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray photon luminosity in three bands. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosity`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_in_restframe`` `[23] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray photon luminosity in three bands. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityInRestframe`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_in_restframe_core_excision`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityInRestframeCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_in_restframe_without_recent_agnheating`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeating`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_in_restframe_without_recent_agnheating_core_excision`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_without_recent_agnheating`` + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeating`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``xray_photon_luminosity_without_recent_agnheating_core_excision`` `[19] `_ + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeatingCoreExcision`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`1 / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``angular_momentum_gas`` `[9] `_ + - gas + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of the gas, relative to the HaloCentre and gas centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``AngularMomentumGas`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``disc_to_total_gas_mass_fraction`` `[24] `_ + - gas + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of the total gas mass that is in the disc. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DiscToTotalGasMassFraction`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_centre_of_mass`` + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass of gas. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasCentreOfMass`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``gas_centre_of_mass_velocity`` + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass velocity of gas. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasCentreOfMassVelocity`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** 0.1 km/s accurate + * - ``gas_inertia_tensor`` + - gas + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasInertiaTensor`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_inertia_tensor_noniterative`` + - gas + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasInertiaTensorNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_inertia_tensor_reduced`` + - gas + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasInertiaTensorReduced`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_inertia_tensor_reduced_noniterative`` + - gas + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasInertiaTensorReducedNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_projected_velocity_dispersion`` `[10] `_ + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the gas along the projection axis, relative to the gas centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasProjectedVelocityDispersion`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``gas_velocity_dispersion_matrix`` `[11] `_ + - gas + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the gas. Measured relative to the gas centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``GasVelocityDispersionMatrix`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``half_mass_radius_gas`` `[5] `_ + - gas + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Gas half mass radius. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HalfMassRadiusGas`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``kappa_corot_gas`` `[25] `_ + - gas + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for gas, relative to the HaloCentre and the centre of mass velocity of the gas. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``KappaCorotGas`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``kinetic_energy_gas`` `[26] `_ + - gas + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total kinetic energy of the gas, relative to the gas centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``KineticEnergyGas`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_gas_inertia_tensor_noniterative`` + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedGasInertiaTensorNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_gas_inertia_tensor_reduced_noniterative`` + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedGasInertiaTensorReducedNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_dark_matter_circular_velocity`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Maximum circular velocity calculated using dark matter particles when accounting for particle softening lengths.. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumDarkMatterCircularVelocity`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``maximum_dark_matter_circular_velocity_radius`` + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius at which MaximumDarkMatterCircularVelocity is reached. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MaximumDarkMatterCircularVelocityRadius`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``angular_momentum_stars`` `[9] `_ + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of the stars, relative to the HaloCentre and stellar centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``AngularMomentumStars`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``disc_to_total_stellar_mass_fraction`` `[24] `_ + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of the total stellar mass that is in the disc. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``DiscToTotalStellarMassFraction`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``kappa_corot_stars`` `[25] `_ + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for stars, relative to the HaloCentre and the centre of mass velocity of the stars. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``KappaCorotStars`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``kinetic_energy_stars`` `[26] `_ + - star + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total kinetic energy of the stars, relative to the stellar centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``KineticEnergyStars`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``luminosity_weighted_mean_stellar_age`` + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Luminosity weighted mean stellar age. The weight is the r band luminosity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``LuminosityWeightedMeanStellarAge`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``mass_weighted_mean_stellar_age`` + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Mass weighted mean stellar age. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``MassWeightedMeanStellarAge`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_stellar_inertia_tensor_noniterative`` + - star + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedStellarInertiaTensorNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``projected_stellar_inertia_tensor_reduced_noniterative`` + - star + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``ProjectedStellarInertiaTensorReducedNoniterative`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_centre_of_mass`` + - star + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass of stars. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarCentreOfMass`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + * - ``stellar_centre_of_mass_velocity`` + - star + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass velocity of stars. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarCentreOfMassVelocity`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** 0.1 km/s accurate + * - ``stellar_inertia_tensor`` + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarInertiaTensor`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_inertia_tensor_noniterative`` + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarInertiaTensorNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_inertia_tensor_reduced`` + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarInertiaTensorReduced`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_inertia_tensor_reduced_noniterative`` + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarInertiaTensorReducedNoniterative`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_initial_mass`` + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total stellar initial mass. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarInitialMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_luminosity`` `[27] `_ + - star + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total stellar luminosity in the 9 GAMA bands. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarLuminosity`` + * **Shape:** 9 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_mass_fraction_in_iron`` + - star + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total stellar mass fraction in iron. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarMassFractionInIron`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_mass_fraction_in_oxygen`` + - star + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total stellar mass fraction in oxygen. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarMassFractionInOxygen`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_projected_velocity_dispersion`` `[10] `_ + - star + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the stars along the projection axis, relative to the stellar centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarProjectedVelocityDispersion`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``stellar_velocity_dispersion_matrix`` `[11] `_ + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the stars. Measured relative to the stellar centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``StellarVelocityDispersionMatrix`` + * **Shape:** 6 + * **Type:** float32 + * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``angular_momentum_baryons`` `[9] `_ + - baryon + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of baryons (gas and stars), relative to the HaloCentre and baryonic centre of mass velocity. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``AngularMomentumBaryons`` + * **Shape:** 3 + * **Type:** float32 + * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``half_mass_radius_baryons`` + - baryon + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Baryonic (gas and stars) half mass radius. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``HalfMassRadiusBaryons`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + * - ``kappa_corot_baryons`` `[25] `_ + - baryon + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. + + .. dropdown:: Dataset specifications + :animate: fade-in + + * **HDF5 name:** ``KappaCorotBaryons`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** dimensionless + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + +Footnotes +--------- + +.. _footnote-1: + +**[1]** **The centre of mass and centre of mass velocity** are computed using all +particle types except neutrinos (since neutrinos can never be bound to a halo). + +.. _footnote-2: + +**[2]** **The concentration** is computed using the +method described in Wang et al. (2023), but using a fifth order polynomial fit to +the R1-concentration relation for :math:`1 0, \\ 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ \end{cases} - \end{equation} the corotational kinetic energy given by .. math:: - \begin{equation} - K_{\rm{}corot,comp} = \sum_{i={\rm{}comp}} \begin{cases} + K_{\rm{}corot,comp} = \sum_{i={\rm{}comp}} \begin{cases} K_{{\rm{}rot,comp},i}, &L_{{\rm{}comp},p,i} > 0, \\ 0, &L_{{\rm{}comp},p,i} \leq{} 0, \\ \end{cases} - \end{equation} the rotational kinetic energy given by .. math:: - \begin{equation} - K_{{\rm{}rot,comp},i} = \frac{1}{2} \frac{L_{{\rm{}comp},p,i}^2}{m_i R_i^2}, - \end{equation} + K_{{\rm{}rot,comp},i} = \frac{1}{2} \frac{L_{{\rm{}comp},p,i}^2}{m_i R_i^2}, -the projected angular momentum along the angular momentum direction -given by +the projected angular momentum along the angular momentum direction given by .. math:: - \begin{equation} - L_{{\rm{}comp},p,i} = \vec{L}_i \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}, - \end{equation} + L_{{\rm{}comp},p,i} = \vec{L}_i \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}, and the orthogonal distance to the angular momentum vector given by .. math:: - \begin{equation} - R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right), - \end{equation} - -where the angular momentum vector and the relative position and velocity -are the same as above for consistency. - -:math:`^{23}`\ The kinetic energy -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right), -of the gas and stars is computed using the same relative velocities as -used for other properties, i.e. relative to the centre of mass velocity -of the gas and stars respectively. +where the angular momentum vector and the relative position and velocity are the same as above for +consistency. -:math:`^{24}`\ Luminosities are given in the GAMA bands -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ +.. _footnote-26: -and are always using the same order as in the snapshots: u, g, r, i, z, -Y, J, H, K. These are rest-frame dust-free AB-luminosities of the star -particles. These were computed using the BC03 (GALAXEV) models convolved -with different filter bands and interpolated in log-log (f(log(Z), -log(age)) = log(flux)) as used in the dust-free modelling of Trayford et -al. (2015). The luminosities are given in dimensionless units. They have -been divided by 3631 Jy already, i.e. they can be turned into absolute -AB-magnitudes (rest-frame absolute maggies) directly by applying -2.5 -log10(L) without additional corrections. +**[26]** **The kinetic energy** is computed using the velocities relative to the centre of mass velocity of all the particles in the aperture. The Hubble flow is included when computing the velocities. +.. _footnote-27: +**[27]** **Luminosities are given in the GAMA bands** and are always using the same order +as in the snapshots: u, g, r, i, z, Y, J, H, K. These are rest-frame dust-free + AB-luminosities of the star particles. These were computed using the BC03 + (GALAXEV) models convolved with different filter bands and interpolated in + log-log (f(log(Z), log(age)) = log(flux)) as used in the dust-free modelling + of Trayford et al. (2015). The luminosities are given in dimensionless + units. They have been divided by 3631 Jy already, i.e. they can be turned + into absolute AB-magnitudes (rest-frame absolute maggies) directly by + applying -2.5 log10(L) without additional corrections. From 98a4ee483ee664f249b02970ea8d491fe8442598 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Thu, 19 Feb 2026 14:44:42 +0100 Subject: [PATCH 04/14] Combine specifications with name --- source/soap/property_table.rst | 1165 ++++++++++++-------------------- 1 file changed, 423 insertions(+), 742 deletions(-) diff --git a/source/soap/property_table.rst b/source/soap/property_table.rst index cb3157c..68fbe70 100644 --- a/source/soap/property_table.rst +++ b/source/soap/property_table.rst @@ -1,3 +1,6 @@ +SOAP property table +=================== + DMO Properties -------------- @@ -9,12 +12,7 @@ DMO Properties - Category - Outputs - Description & Technical Specs - * - ``centre_of_mass`` `[1] `_ - - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Centre of mass. - - .. dropdown:: Dataset specifications + * - .. dropdown:: ``centre_of_mass`` :animate: fade-in * **HDF5 name:** ``CentreOfMass`` @@ -22,12 +20,10 @@ DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``centre_of_mass_velocity`` `[1] `_ - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Centre of mass velocity. - - .. dropdown:: Dataset specifications + - Centre of mass. `[1] `_ + * - .. dropdown:: ``centre_of_mass_velocity`` :animate: fade-in * **HDF5 name:** ``CentreOfMassVelocity`` @@ -35,12 +31,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** 0.1 km/s accurate - * - ``concentration`` `[2] `_ - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Halo concentration assuming an NFW profile. Minimum particle radius set to softening length - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Centre of mass velocity. `[1] `_ + * - .. dropdown:: ``concentration`` :animate: fade-in * **HDF5 name:** ``Concentration`` @@ -48,12 +42,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``concentration_unsoftened`` `[2] `_ - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Halo concentration assuming an NFW profile. No particle softening. - - .. dropdown:: Dataset specifications + - Halo concentration assuming an NFW profile. Minimum particle radius set to softening length `[2] `_ + * - .. dropdown:: ``concentration_unsoftened`` :animate: fade-in * **HDF5 name:** ``ConcentrationUnsoftened`` @@ -61,12 +53,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_mass`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total DM mass. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Halo concentration assuming an NFW profile. No particle softening. `[2] `_ + * - .. dropdown:: ``dark_matter_mass`` :animate: fade-in * **HDF5 name:** ``DarkMatterMass`` @@ -74,12 +64,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``enclose_radius`` - basic - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Radius of the particle furthest from the halo centre - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total DM mass. + * - .. dropdown:: ``enclose_radius`` :animate: fade-in * **HDF5 name:** ``EncloseRadius`` @@ -87,12 +75,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_circular_velocity`` `[3] `_ - basic - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Maximum circular velocity when accounting for particle softening lengths. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius of the particle furthest from the halo centre + * - .. dropdown:: ``maximum_circular_velocity`` :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocity`` @@ -100,12 +86,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_circular_velocity_radius`` - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Radius at which MaximumCircularVelocity is reached. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Maximum circular velocity when accounting for particle softening lengths. `[3] `_ + * - .. dropdown:: ``maximum_circular_velocity_radius`` :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityRadius`` @@ -113,12 +97,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_circular_velocity_radius_unsoftened`` `[3] `_ - basic - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Radius at which MaximumCircularVelocityUnsoftened is reached. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Radius at which MaximumCircularVelocity is reached. + * - .. dropdown:: ``maximum_circular_velocity_radius_unsoftened`` :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityRadiusUnsoftened`` @@ -126,12 +108,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_circular_velocity_unsoftened`` `[3] `_ - basic - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Maximum circular velocity when not accounting for particle softening lengths. - - .. dropdown:: Dataset specifications + - Radius at which MaximumCircularVelocityUnsoftened is reached. `[3] `_ + * - .. dropdown:: ``maximum_circular_velocity_unsoftened`` :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityUnsoftened`` @@ -139,12 +119,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``noise_suppressed_neutrino_mass`` `[4] `_ - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Noise suppressed total neutrino mass. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Maximum circular velocity when not accounting for particle softening lengths. `[3] `_ + * - .. dropdown:: ``noise_suppressed_neutrino_mass`` :animate: fade-in * **HDF5 name:** ``NoiseSuppressedNeutrinoMass`` @@ -152,12 +130,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``number_of_dark_matter_particles`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Number of dark matter particles. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Noise suppressed total neutrino mass. `[4] `_ + * - .. dropdown:: ``number_of_dark_matter_particles`` :animate: fade-in * **HDF5 name:** ``NumberOfDarkMatterParticles`` @@ -165,12 +141,10 @@ DMO Properties * **Type:** uint32 * **Units:** dimensionless * **Compression:** no compression - * - ``raw_neutrino_mass`` `[4] `_ - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total neutrino particle mass. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of dark matter particles. + * - .. dropdown:: ``raw_neutrino_mass`` :animate: fade-in * **HDF5 name:** ``RawNeutrinoMass`` @@ -178,12 +152,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``soradius`` - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Radius of a sphere satisfying a spherical overdensity criterion. - - .. dropdown:: Dataset specifications + - Total neutrino particle mass. `[4] `_ + * - .. dropdown:: ``soradius`` :animate: fade-in * **HDF5 name:** ``SORadius`` @@ -191,12 +163,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``total_mass`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total mass. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Radius of a sphere satisfying a spherical overdensity criterion. + * - .. dropdown:: ``total_mass`` :animate: fade-in * **HDF5 name:** ``TotalMass`` @@ -204,12 +174,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``half_mass_radius_total`` `[5] `_ - - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Total half mass radius. - - .. dropdown:: Dataset specifications + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total mass. + * - .. dropdown:: ``half_mass_radius_total`` :animate: fade-in * **HDF5 name:** ``HalfMassRadiusTotal`` @@ -217,12 +185,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``mass_fraction_external`` `[6] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of mass that is bound to a satellite outside this FOF group. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Total half mass radius. `[5] `_ + * - .. dropdown:: ``mass_fraction_external`` :animate: fade-in * **HDF5 name:** ``MassFractionExternal`` @@ -230,12 +196,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``mass_fraction_satellites`` `[6] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of mass that is bound to a satellite in the same FOF group. - - .. dropdown:: Dataset specifications + - Fraction of mass that is bound to a satellite outside this FOF group. `[6] `_ + * - .. dropdown:: ``mass_fraction_satellites`` :animate: fade-in * **HDF5 name:** ``MassFractionSatellites`` @@ -243,12 +207,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``spin_parameter`` `[7] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Bullock et al. (2001) spin parameter. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of mass that is bound to a satellite in the same FOF group. `[6] `_ + * - .. dropdown:: ``spin_parameter`` :animate: fade-in * **HDF5 name:** ``SpinParameter`` @@ -256,12 +218,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``total_inertia_tensor`` `[8] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Bullock et al. (2001) spin parameter. `[7] `_ + * - .. dropdown:: ``total_inertia_tensor`` :animate: fade-in * **HDF5 name:** ``TotalInertiaTensor`` @@ -269,12 +229,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``total_inertia_tensor_noniterative`` `[8] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``total_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorNoniterative`` @@ -282,12 +240,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``total_inertia_tensor_reduced`` `[8] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Reduced 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``total_inertia_tensor_reduced`` :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorReduced`` @@ -295,12 +251,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``total_inertia_tensor_reduced_noniterative`` `[8] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Reduced 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``total_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorReducedNoniterative`` @@ -308,12 +262,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``angular_momentum_dark_matter`` `[9] `_ - - dm - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total angular momentum of the dark matter, relative to the HaloCentre and DM centre of mass velocity. - - .. dropdown:: Dataset specifications + - general + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``angular_momentum_dark_matter`` :animate: fade-in * **HDF5 name:** ``AngularMomentumDarkMatter`` @@ -321,12 +273,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_inertia_tensor`` - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of the dark matter, relative to the HaloCentre and DM centre of mass velocity. `[9] `_ + * - .. dropdown:: ``dark_matter_inertia_tensor`` :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensor`` @@ -334,12 +284,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_inertia_tensor_noniterative`` - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``dark_matter_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorNoniterative`` @@ -347,12 +295,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_inertia_tensor_reduced`` - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Reduced 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``dark_matter_inertia_tensor_reduced`` :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorReduced`` @@ -360,12 +306,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_inertia_tensor_reduced_noniterative`` - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Reduced 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``dark_matter_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorReducedNoniterative`` @@ -373,12 +317,10 @@ DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_projected_velocity_dispersion`` `[10] `_ - dm - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the DM along the projection axis, relative to the DM centre of mass velocity. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``dark_matter_projected_velocity_dispersion`` :animate: fade-in * **HDF5 name:** ``DarkMatterProjectedVelocityDispersion`` @@ -386,12 +328,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_velocity_dispersion_matrix`` `[11] `_ - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the dark matter. Measured relative to the DM centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the DM along the projection axis, relative to the DM centre of mass velocity. `[10] `_ + * - .. dropdown:: ``dark_matter_velocity_dispersion_matrix`` :animate: fade-in * **HDF5 name:** ``DarkMatterVelocityDispersionMatrix`` @@ -399,12 +339,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``half_mass_radius_dark_matter`` `[5] `_ - dm - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - - Dark matter half mass radius. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the dark matter. Measured relative to the DM centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ + * - .. dropdown:: ``half_mass_radius_dark_matter`` :animate: fade-in * **HDF5 name:** ``HalfMassRadiusDarkMatter`` @@ -412,12 +350,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``input_halos/halo_catalogue_index`` - - InputHalos - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index of this halo in the original halo finder catalogue (first halo has index=0). - - .. dropdown:: Dataset specifications + - dm + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Dark matter half mass radius. `[5] `_ + * - .. dropdown:: ``input_halos/halo_catalogue_index`` :animate: fade-in * **HDF5 name:** ``InputHalos/HaloCatalogueIndex`` @@ -425,12 +361,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/halo_centre`` - InputHalos - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. - - .. dropdown:: Dataset specifications + - Index of this halo in the original halo finder catalogue (first halo has index=0). + * - .. dropdown:: ``input_halos/halo_centre`` :animate: fade-in * **HDF5 name:** ``InputHalos/HaloCentre`` @@ -438,12 +372,10 @@ DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``input_halos/is_central`` - InputHalos - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Whether the halo finder flagged the halo as central (1) or satellite (0). - - .. dropdown:: Dataset specifications + - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. + * - .. dropdown:: ``input_halos/is_central`` :animate: fade-in * **HDF5 name:** ``InputHalos/IsCentral`` @@ -451,12 +383,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/number_of_bound_particles`` - InputHalos - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Total number of particles bound to the subhalo. - - .. dropdown:: Dataset specifications + - Whether the halo finder flagged the halo as central (1) or satellite (0). + * - .. dropdown:: ``input_halos/number_of_bound_particles`` :animate: fade-in * **HDF5 name:** ``InputHalos/NumberOfBoundParticles`` @@ -464,12 +394,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/depth`` - - HBTplus + - InputHalos - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Level of the subhalo in the merging hierarchy. - - .. dropdown:: Dataset specifications + - Total number of particles bound to the subhalo. + * - .. dropdown:: ``input_halos/hbtplus/depth`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/Depth`` @@ -477,12 +405,10 @@ DMO Properties * **Type:** uint64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/descendant_track_id`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - TrackId of the descendant of this subhalo. - - .. dropdown:: Dataset specifications + - Level of the subhalo in the merging hierarchy. + * - .. dropdown:: ``input_halos/hbtplus/descendant_track_id`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/DescendantTrackId`` @@ -490,12 +416,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/host_fofid`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 - - .. dropdown:: Dataset specifications + - TrackId of the descendant of this subhalo. + * - .. dropdown:: ``input_halos/hbtplus/host_fofid`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/HostFOFId`` @@ -503,12 +427,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/last_max_mass`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Maximum mass of this subhalo across its evolutionary history - - .. dropdown:: Dataset specifications + - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 + * - .. dropdown:: ``input_halos/hbtplus/last_max_mass`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/LastMaxMass`` @@ -516,12 +438,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``input_halos/hbtplus/last_max_vmax_physical`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Largest value of maximum circular velocity of this subhalo across its evolutionary history - - .. dropdown:: Dataset specifications + - Maximum mass of this subhalo across its evolutionary history + * - .. dropdown:: ``input_halos/hbtplus/last_max_vmax_physical`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/LastMaxVmaxPhysical`` @@ -529,12 +449,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``input_halos/hbtplus/nested_parent_track_id`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - TrackId of the parent of this subhalo. - - .. dropdown:: Dataset specifications + - Largest value of maximum circular velocity of this subhalo across its evolutionary history + * - .. dropdown:: ``input_halos/hbtplus/nested_parent_track_id`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/NestedParentTrackId`` @@ -542,12 +460,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/snapshot_of_birth`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Snapshot when this subhalo was formed. - - .. dropdown:: Dataset specifications + - TrackId of the parent of this subhalo. + * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_birth`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfBirth`` @@ -555,12 +471,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/snapshot_of_last_isolation`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo was a central. -1 if the subhalo has always been a central. - - .. dropdown:: Dataset specifications + - Snapshot when this subhalo was formed. + * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_isolation`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastIsolation`` @@ -568,12 +482,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/snapshot_of_last_max_mass`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo had its maximum mass. - - .. dropdown:: Dataset specifications + - Latest snapshot when this subhalo was a central. -1 if the subhalo has always been a central. + * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_max_mass`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxMass`` @@ -581,12 +493,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/snapshot_of_last_max_vmax`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo had its largest maximum circular velocity. - - .. dropdown:: Dataset specifications + - Latest snapshot when this subhalo had its maximum mass. + * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_max_vmax`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxVmax`` @@ -594,12 +504,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/hbtplus/track_id`` - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Unique ID for this subhalo which is consistent across snapshots. - - .. dropdown:: Dataset specifications + - Latest snapshot when this subhalo had its largest maximum circular velocity. + * - .. dropdown:: ``input_halos/hbtplus/track_id`` :animate: fade-in * **HDF5 name:** ``InputHalos/HBTplus/TrackId`` @@ -607,12 +515,10 @@ DMO Properties * **Type:** uint64 * **Units:** dimensionless * **Compression:** no compression - * - ``input_halos/fof/centres`` - - FOF + - HBTplus - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - - .. dropdown:: Dataset specifications + - Unique ID for this subhalo which is consistent across snapshots. + * - .. dropdown:: ``input_halos/fof/centres`` :animate: fade-in * **HDF5 name:** ``InputHalos/FOF/Centres`` @@ -620,12 +526,10 @@ DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``input_halos/fof/masses`` - FOF - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - - .. dropdown:: Dataset specifications + - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``input_halos/fof/masses`` :animate: fade-in * **HDF5 name:** ``InputHalos/FOF/Masses`` @@ -633,12 +537,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``input_halos/fof/radii`` - FOF - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. - - .. dropdown:: Dataset specifications + - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``input_halos/fof/radii`` :animate: fade-in * **HDF5 name:** ``InputHalos/FOF/Radii`` @@ -646,12 +548,10 @@ DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``input_halos/fof/sizes`` - FOF - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - - .. dropdown:: Dataset specifications + - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. + * - .. dropdown:: ``input_halos/fof/sizes`` :animate: fade-in * **HDF5 name:** ``InputHalos/FOF/Sizes`` @@ -659,12 +559,10 @@ DMO Properties * **Type:** uint64 * **Units:** dimensionless * **Compression:** no compression - * - ``soap/descendant_index`` `[12] `_ - - SOAP + - FOF - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. - - .. dropdown:: Dataset specifications + - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``soap/descendant_index`` :animate: fade-in * **HDF5 name:** ``SOAP/DescendantIndex`` @@ -672,12 +570,10 @@ DMO Properties * **Type:** int32 * **Units:** dimensionless * **Compression:** no compression - * - ``soap/host_halo_index`` - SOAP - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the SOAP arrays) of the top level parent of this subhalo. -1 for hostless halos. - - .. dropdown:: Dataset specifications + - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. `[12] `_ + * - .. dropdown:: ``soap/host_halo_index`` :animate: fade-in * **HDF5 name:** ``SOAP/HostHaloIndex`` @@ -685,12 +581,10 @@ DMO Properties * **Type:** int64 * **Units:** dimensionless * **Compression:** no compression - * - ``soap/included_in_reduced_snapshot`` - SOAP - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Whether this halo is included in the reduced snapshot. - - .. dropdown:: Dataset specifications + - Index (within the SOAP arrays) of the top level parent of this subhalo. -1 for hostless halos. + * - .. dropdown:: ``soap/included_in_reduced_snapshot`` :animate: fade-in * **HDF5 name:** ``SOAP/IncludedInReducedSnapshot`` @@ -698,12 +592,10 @@ DMO Properties * **Type:** int32 * **Units:** dimensionless * **Compression:** no compression - * - ``soap/progenitor_index`` `[12] `_ - SOAP - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. - - .. dropdown:: Dataset specifications + - Whether this halo is included in the reduced snapshot. + * - .. dropdown:: ``soap/progenitor_index`` :animate: fade-in * **HDF5 name:** ``SOAP/ProgenitorIndex`` @@ -711,12 +603,10 @@ DMO Properties * **Type:** int32 * **Units:** dimensionless * **Compression:** no compression - * - ``soap/subhalo_rank_by_bound_mass`` - SOAP - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Ranking by mass of the halo within its parent field halo. Zero for the most massive halo in the field halo. - - .. dropdown:: Dataset specifications + - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. `[12] `_ + * - .. dropdown:: ``soap/subhalo_rank_by_bound_mass`` :animate: fade-in * **HDF5 name:** ``SOAP/SubhaloRankByBoundMass`` @@ -724,9 +614,12 @@ DMO Properties * **Type:** int32 * **Units:** dimensionless * **Compression:** no compression + - SOAP + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Ranking by mass of the halo within its parent field halo. Zero for the most massive halo in the field halo. -Non-DMO Properties ------------------- +HYDRO Properties +---------------- .. list-table:: :widths: 25 10 15 50 @@ -736,12 +629,7 @@ Non-DMO Properties - Category - Outputs - Description & Technical Specs - * - ``black_holes_dynamical_mass`` - - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total BH dynamical mass. - - .. dropdown:: Dataset specifications + * - .. dropdown:: ``black_holes_dynamical_mass`` :animate: fade-in * **HDF5 name:** ``BlackHolesDynamicalMass`` @@ -749,12 +637,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``black_holes_subgrid_mass`` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total BH subgrid mass. - - .. dropdown:: Dataset specifications + - Total BH dynamical mass. + * - .. dropdown:: ``black_holes_subgrid_mass`` :animate: fade-in * **HDF5 name:** ``BlackHolesSubgridMass`` @@ -762,12 +648,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_concentration`` `[2] `_ - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Concentration of dark matter particles assuming an NFW profile. Minimum particle radius set to softening length - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total BH subgrid mass. + * - .. dropdown:: ``dark_matter_concentration`` :animate: fade-in * **HDF5 name:** ``DarkMatterConcentration`` @@ -775,12 +659,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``dark_matter_concentration_unsoftened`` `[2] `_ - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Concentration of dark matter particles assuming an NFW profile. No particle softening - - .. dropdown:: Dataset specifications + - Concentration of dark matter particles assuming an NFW profile. Minimum particle radius set to softening length `[2] `_ + * - .. dropdown:: ``dark_matter_concentration_unsoftened`` :animate: fade-in * **HDF5 name:** ``DarkMatterConcentrationUnsoftened`` @@ -788,12 +670,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_mass`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total gas mass. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Concentration of dark matter particles assuming an NFW profile. No particle softening `[2] `_ + * - .. dropdown:: ``gas_mass`` :animate: fade-in * **HDF5 name:** ``GasMass`` @@ -801,12 +681,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_mass_fraction_in_metals`` `[13] `_ - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in metals. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total gas mass. + * - .. dropdown:: ``gas_mass_fraction_in_metals`` :animate: fade-in * **HDF5 name:** ``GasMassFractionInMetals`` @@ -814,12 +692,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``half_mass_radius_stars`` `[5] `_ - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - - Stellar half mass radius. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass fraction in metals. `[13] `_ + * - .. dropdown:: ``half_mass_radius_stars`` :animate: fade-in * **HDF5 name:** ``HalfMassRadiusStars`` @@ -827,12 +703,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``most_massive_black_hole_id`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - ID of most massive black hole. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Stellar half mass radius. `[5] `_ + * - .. dropdown:: ``most_massive_black_hole_id`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleID`` @@ -840,12 +714,10 @@ Non-DMO Properties * **Type:** uint64 * **Units:** dimensionless * **Compression:** no compression - * - ``most_massive_black_hole_mass`` `[14] `_ - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Mass of most massive black hole. - - .. dropdown:: Dataset specifications + - ID of most massive black hole. + * - .. dropdown:: ``most_massive_black_hole_mass`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleMass`` @@ -853,12 +725,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``number_of_black_hole_particles`` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Number of black hole particles. - - .. dropdown:: Dataset specifications + - Mass of most massive black hole. `[14] `_ + * - .. dropdown:: ``number_of_black_hole_particles`` :animate: fade-in * **HDF5 name:** ``NumberOfBlackHoleParticles`` @@ -866,12 +736,10 @@ Non-DMO Properties * **Type:** uint32 * **Units:** dimensionless * **Compression:** no compression - * - ``number_of_gas_particles`` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Number of gas particles. - - .. dropdown:: Dataset specifications + - Number of black hole particles. + * - .. dropdown:: ``number_of_gas_particles`` :animate: fade-in * **HDF5 name:** ``NumberOfGasParticles`` @@ -879,12 +747,10 @@ Non-DMO Properties * **Type:** uint32 * **Units:** dimensionless * **Compression:** no compression - * - ``number_of_neutrino_particles`` - basic - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Number of neutrino particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Number of gas particles. + * - .. dropdown:: ``number_of_neutrino_particles`` :animate: fade-in * **HDF5 name:** ``NumberOfNeutrinoParticles`` @@ -892,12 +758,10 @@ Non-DMO Properties * **Type:** uint32 * **Units:** dimensionless * **Compression:** no compression - * - ``number_of_star_particles`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Number of star particles. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Number of neutrino particles. + * - .. dropdown:: ``number_of_star_particles`` :animate: fade-in * **HDF5 name:** ``NumberOfStarParticles`` @@ -905,12 +769,10 @@ Non-DMO Properties * **Type:** uint32 * **Units:** dimensionless * **Compression:** no compression - * - ``star_formation_rate`` `[15] `_ - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total star formation rate. - - .. dropdown:: Dataset specifications + - Number of star particles. + * - .. dropdown:: ``star_formation_rate`` :animate: fade-in * **HDF5 name:** ``StarFormationRate`` @@ -918,12 +780,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``star_forming_gas_mass_fraction_in_metals`` `[15] `_ `[13] `_ - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in metals for gas that is star-forming. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total star formation rate. `[15] `_ + * - .. dropdown:: ``star_forming_gas_mass_fraction_in_metals`` :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInMetals`` @@ -931,12 +791,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_mass`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total stellar mass. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass fraction in metals for gas that is star-forming. `[15] `_ `[13] `_ + * - .. dropdown:: ``stellar_mass`` :animate: fade-in * **HDF5 name:** ``StellarMass`` @@ -944,12 +802,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_mass_fraction_in_metals`` - basic - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total stellar mass fraction in metals. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total stellar mass. + * - .. dropdown:: ``stellar_mass_fraction_in_metals`` :animate: fade-in * **HDF5 name:** ``StellarMassFractionInMetals`` @@ -957,12 +813,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``black_holes_last_event_scalefactor`` - - general - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Scale-factor of last AGN event. - - .. dropdown:: Dataset specifications + - basic + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total stellar mass fraction in metals. + * - .. dropdown:: ``black_holes_last_event_scalefactor`` :animate: fade-in * **HDF5 name:** ``BlackHolesLastEventScalefactor`` @@ -970,12 +824,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``compton_y`` `[16] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total Compton y parameter. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Scale-factor of last AGN event. + * - .. dropdown:: ``compton_y`` :animate: fade-in * **HDF5 name:** ``ComptonY`` @@ -983,12 +835,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``compton_ywithout_recent_agnheating`` `[16] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total Compton y parameter. Excludes gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Total Compton y parameter. `[16] `_ + * - .. dropdown:: ``compton_ywithout_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``ComptonYWithoutRecentAGNHeating`` @@ -996,12 +846,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``doppler_b`` `[17] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Kinetic Sunyaey-Zel'dovich effect, assuming a line of sight towards the position of the first lightcone observer. - - .. dropdown:: Dataset specifications + - Total Compton y parameter. Excludes gas that was recently heated by AGN. `[16] `_ + * - .. dropdown:: ``doppler_b`` :animate: fade-in * **HDF5 name:** ``DopplerB`` @@ -1009,12 +857,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot ` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_compton_ytemperature`` `[18] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature. - - .. dropdown:: Dataset specifications + - Kinetic Sunyaey-Zel'dovich effect, assuming a line of sight towards the position of the first lightcone observer. `[17] `_ + * - .. dropdown:: ``gas_compton_ytemperature`` :animate: fade-in * **HDF5 name:** ``GasComptonYTemperature`` @@ -1022,12 +868,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_compton_ytemperature_core_excision`` `[19] `_ `[18] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding the inner excised core. - - .. dropdown:: Dataset specifications + - ComptonY-weighted mean gas temperature. `[18] `_ + * - .. dropdown:: ``gas_compton_ytemperature_core_excision`` :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureCoreExcision`` @@ -1035,12 +879,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_compton_ytemperature_without_recent_agnheating`` `[18] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - ComptonY-weighted mean gas temperature, excluding the inner excised core. `[19] `_ `[18] `_ + * - .. dropdown:: ``gas_compton_ytemperature_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeating`` @@ -1048,12 +890,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_compton_ytemperature_without_recent_agnheating_core_excision`` `[19] `_ `[18] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding the inner excised core and gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - ComptonY-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[18] `_ + * - .. dropdown:: ``gas_compton_ytemperature_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeatingCoreExcision`` @@ -1061,12 +901,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_mass_fraction_in_iron`` `[13] `_ - general - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in iron. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - ComptonY-weighted mean gas temperature, excluding the inner excised core and gas that was recently heated by AGN. `[19] `_ `[18] `_ + * - .. dropdown:: ``gas_mass_fraction_in_iron`` :animate: fade-in * **HDF5 name:** ``GasMassFractionInIron`` @@ -1074,12 +912,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_mass_fraction_in_oxygen`` `[13] `_ - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass in oxygen. - - .. dropdown:: Dataset specifications + - Total gas mass fraction in iron. `[13] `_ + * - .. dropdown:: ``gas_mass_fraction_in_oxygen`` :animate: fade-in * **HDF5 name:** ``GasMassFractionInOxygen`` @@ -1087,12 +923,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature`` `[20] `_ - general - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total gas mass in oxygen. `[13] `_ + * - .. dropdown:: ``gas_temperature`` :animate: fade-in * **HDF5 name:** ``GasTemperature`` @@ -1100,12 +934,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_core_excision`` `[19] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature. `[20] `_ + * - .. dropdown:: ``gas_temperature_core_excision`` :animate: fade-in * **HDF5 name:** ``GasTemperatureCoreExcision`` @@ -1113,12 +945,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_cool_gas`` `[20] `_ - general - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core. `[19] `_ + * - .. dropdown:: ``gas_temperature_without_cool_gas`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGas`` @@ -1126,12 +956,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_cool_gas_and_recent_agnheating`` `[20] `_ - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K and gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K. `[20] `_ + * - .. dropdown:: ``gas_temperature_without_cool_gas_and_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeating`` @@ -1139,12 +967,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_cool_gas_and_recent_agnheating_core_excision`` `[19] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core, gas below 1e5 K and gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K and gas that was recently heated by AGN. `[20] `_ + * - .. dropdown:: ``gas_temperature_without_cool_gas_and_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeatingCoreExcision`` @@ -1152,12 +978,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_cool_gas_core_excision`` `[19] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core and gas below 1e5 K. - - .. dropdown:: Dataset specifications + - Mass-weighted mean gas temperature, excluding the inner excised core, gas below 1e5 K and gas that was recently heated by AGN. `[19] `_ + * - .. dropdown:: ``gas_temperature_without_cool_gas_core_excision`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasCoreExcision`` @@ -1165,12 +989,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_recent_agnheating`` `[20] `_ - general - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding the inner excised core and gas below 1e5 K. `[19] `_ + * - .. dropdown:: ``gas_temperature_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeating`` @@ -1178,12 +1000,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_temperature_without_recent_agnheating_core_excision`` `[19] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core, and gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Mass-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[20] `_ + * - .. dropdown:: ``gas_temperature_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeatingCoreExcision`` @@ -1191,12 +1011,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``hot_gas_mass`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total mass of gas with a temperature above 1e5 K. - - .. dropdown:: Dataset specifications + - Mass-weighted mean gas temperature, excluding the inner excised core, and gas that was recently heated by AGN. `[19] `_ + * - .. dropdown:: ``hot_gas_mass`` :animate: fade-in * **HDF5 name:** ``HotGasMass`` @@ -1204,12 +1022,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``most_massive_black_hole_accretion_rate`` - general - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Gas accretion rate of most massive black hole. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total mass of gas with a temperature above 1e5 K. + * - .. dropdown:: ``most_massive_black_hole_accretion_rate`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleAccretionRate`` @@ -1217,12 +1033,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``most_massive_black_hole_last_event_scalefactor`` - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Scale-factor of last thermal AGN event for most massive black hole. - - .. dropdown:: Dataset specifications + - Gas accretion rate of most massive black hole. + * - .. dropdown:: ``most_massive_black_hole_last_event_scalefactor`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleLastEventScalefactor`` @@ -1230,12 +1044,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.3669{\rm{}e}10` - * - ``most_massive_black_hole_position`` - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Position of most massive black hole. - - .. dropdown:: Dataset specifications + - Scale-factor of last thermal AGN event for most massive black hole. + * - .. dropdown:: ``most_massive_black_hole_position`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHolePosition`` @@ -1243,12 +1055,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``most_massive_black_hole_velocity`` - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Velocity of most massive black hole relative to the simulation volume. - - .. dropdown:: Dataset specifications + - Position of most massive black hole. + * - .. dropdown:: ``most_massive_black_hole_velocity`` :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleVelocity`` @@ -1256,12 +1066,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_total_inertia_tensor_noniterative`` `[8] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Velocity of most massive black hole relative to the simulation volume. + * - .. dropdown:: ``projected_total_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedTotalInertiaTensorNoniterative`` @@ -1269,12 +1077,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_total_inertia_tensor_reduced_noniterative`` `[8] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Reduced 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``projected_total_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedTotalInertiaTensorReducedNoniterative`` @@ -1282,12 +1088,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``spectroscopic_like_temperature`` `[21] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. `[8] `_ + * - .. dropdown:: ``spectroscopic_like_temperature`` :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperature`` @@ -1295,12 +1099,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``spectroscopic_like_temperature_core_excision`` `[19] `_ `[21] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Spectroscopic-like gas temperature. `[21] `_ + * - .. dropdown:: ``spectroscopic_like_temperature_core_excision`` :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureCoreExcision`` @@ -1308,12 +1110,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``spectroscopic_like_temperature_without_recent_agnheating`` `[21] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN - - .. dropdown:: Dataset specifications + - Spectroscopic-like gas temperature. Excludes gas in the inner excised core `[19] `_ `[21] `_ + * - .. dropdown:: ``spectroscopic_like_temperature_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeating`` @@ -1321,12 +1121,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``spectroscopic_like_temperature_without_recent_agnheating_core_excision`` `[19] `_ `[21] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN `[21] `_ + * - .. dropdown:: ``spectroscopic_like_temperature_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeatingCoreExcision`` @@ -1334,12 +1132,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{T}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``star_forming_gas_mass`` `[15] `_ - general - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total mass of star-forming gas. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ `[21] `_ + * - .. dropdown:: ``star_forming_gas_mass`` :animate: fade-in * **HDF5 name:** ``StarFormingGasMass`` @@ -1347,12 +1143,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``star_forming_gas_mass_fraction_in_iron`` `[15] `_ `[13] `_ - general - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total gas mass fraction in iron for gas that is star-forming. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Total mass of star-forming gas. `[15] `_ + * - .. dropdown:: ``star_forming_gas_mass_fraction_in_iron`` :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInIron`` @@ -1360,12 +1154,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``star_forming_gas_mass_fraction_in_oxygen`` `[15] `_ `[13] `_ - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total gas mass fraction in oxygen for gas that is star-forming. - - .. dropdown:: Dataset specifications + - Total gas mass fraction in iron for gas that is star-forming. `[15] `_ `[13] `_ + * - .. dropdown:: ``star_forming_gas_mass_fraction_in_oxygen`` :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInOxygen`` @@ -1373,12 +1165,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``thermal_energy_gas`` `[22] `_ - general - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total thermal energy of the gas. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Total gas mass fraction in oxygen for gas that is star-forming. `[15] `_ `[13] `_ + * - .. dropdown:: ``thermal_energy_gas`` :animate: fade-in * **HDF5 name:** ``ThermalEnergyGas`` @@ -1386,12 +1176,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity`` `[23] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. - - .. dropdown:: Dataset specifications + - Total thermal energy of the gas. `[22] `_ + * - .. dropdown:: ``xray_luminosity`` :animate: fade-in * **HDF5 name:** ``XRayLuminosity`` @@ -1399,12 +1187,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_core_excision`` `[19] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total observer-frame Xray luminosity in three bands. `[23] `_ + * - .. dropdown:: ``xray_luminosity_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityCoreExcision`` @@ -1412,12 +1198,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_in_restframe`` `[23] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray luminosity in three bands. - - .. dropdown:: Dataset specifications + - Total observer-frame Xray luminosity in three bands. Excludes gas in the inner excised core `[19] `_ + * - .. dropdown:: ``xray_luminosity_in_restframe`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframe`` @@ -1425,12 +1209,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_in_restframe_core_excision`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray luminosity in three bands. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total rest-frame Xray luminosity in three bands. `[23] `_ + * - .. dropdown:: ``xray_luminosity_in_restframe_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeCoreExcision`` @@ -1438,12 +1220,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_in_restframe_without_recent_agnheating`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Total rest-frame Xray luminosity in three bands. Excludes gas in the inner excised core + * - .. dropdown:: ``xray_luminosity_in_restframe_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeating`` @@ -1451,12 +1231,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_in_restframe_without_recent_agnheating_core_excision`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. + * - .. dropdown:: ``xray_luminosity_in_restframe_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` @@ -1464,12 +1242,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_without_recent_agnheating`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core + * - .. dropdown:: ``xray_luminosity_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeating`` @@ -1477,12 +1253,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_luminosity_without_recent_agnheating_core_excision`` `[19] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. + * - .. dropdown:: ``xray_luminosity_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeatingCoreExcision`` @@ -1490,12 +1264,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity`` `[23] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. - - .. dropdown:: Dataset specifications + - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ + * - .. dropdown:: ``xray_photon_luminosity`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosity`` @@ -1503,12 +1275,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_core_excision`` `[19] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total observer-frame Xray photon luminosity in three bands. `[23] `_ + * - .. dropdown:: ``xray_photon_luminosity_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityCoreExcision`` @@ -1516,12 +1286,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_in_restframe`` `[23] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray photon luminosity in three bands. - - .. dropdown:: Dataset specifications + - Total observer-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core `[19] `_ + * - .. dropdown:: ``xray_photon_luminosity_in_restframe`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframe`` @@ -1529,12 +1297,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_in_restframe_core_excision`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total rest-frame Xray photon luminosity in three bands. `[23] `_ + * - .. dropdown:: ``xray_photon_luminosity_in_restframe_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeCoreExcision`` @@ -1542,12 +1308,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_in_restframe_without_recent_agnheating`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Total rest-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core + * - .. dropdown:: ``xray_photon_luminosity_in_restframe_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeating`` @@ -1555,12 +1319,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_in_restframe_without_recent_agnheating_core_excision`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. + * - .. dropdown:: ``xray_photon_luminosity_in_restframe_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` @@ -1568,12 +1330,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_without_recent_agnheating`` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. - - .. dropdown:: Dataset specifications + - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core + * - .. dropdown:: ``xray_photon_luminosity_without_recent_agnheating`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeating`` @@ -1581,12 +1341,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``xray_photon_luminosity_without_recent_agnheating_core_excision`` `[19] `_ - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core - - .. dropdown:: Dataset specifications + - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. + * - .. dropdown:: ``xray_photon_luminosity_without_recent_agnheating_core_excision`` :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeatingCoreExcision`` @@ -1594,12 +1352,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`1 / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``angular_momentum_gas`` `[9] `_ - - gas - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total angular momentum of the gas, relative to the HaloCentre and gas centre of mass velocity. - - .. dropdown:: Dataset specifications + - general + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ + * - .. dropdown:: ``angular_momentum_gas`` :animate: fade-in * **HDF5 name:** ``AngularMomentumGas`` @@ -1607,12 +1363,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``disc_to_total_gas_mass_fraction`` `[24] `_ - gas - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of the total gas mass that is in the disc. - - .. dropdown:: Dataset specifications + - Total angular momentum of the gas, relative to the HaloCentre and gas centre of mass velocity. `[9] `_ + * - .. dropdown:: ``disc_to_total_gas_mass_fraction`` :animate: fade-in * **HDF5 name:** ``DiscToTotalGasMassFraction`` @@ -1620,12 +1374,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_centre_of_mass`` - gas - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Centre of mass of gas. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of the total gas mass that is in the disc. `[24] `_ + * - .. dropdown:: ``gas_centre_of_mass`` :animate: fade-in * **HDF5 name:** ``GasCentreOfMass`` @@ -1633,12 +1385,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``gas_centre_of_mass_velocity`` - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Centre of mass velocity of gas. - - .. dropdown:: Dataset specifications + - Centre of mass of gas. + * - .. dropdown:: ``gas_centre_of_mass_velocity`` :animate: fade-in * **HDF5 name:** ``GasCentreOfMassVelocity`` @@ -1646,12 +1396,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** 0.1 km/s accurate - * - ``gas_inertia_tensor`` - gas - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass velocity of gas. + * - .. dropdown:: ``gas_inertia_tensor`` :animate: fade-in * **HDF5 name:** ``GasInertiaTensor`` @@ -1659,12 +1407,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_inertia_tensor_noniterative`` - gas - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``gas_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``GasInertiaTensorNoniterative`` @@ -1672,12 +1418,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_inertia_tensor_reduced`` - gas - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Reduced 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``gas_inertia_tensor_reduced`` :animate: fade-in * **HDF5 name:** ``GasInertiaTensorReduced`` @@ -1685,12 +1429,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_inertia_tensor_reduced_noniterative`` - gas - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Reduced 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``gas_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``GasInertiaTensorReducedNoniterative`` @@ -1698,12 +1440,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_projected_velocity_dispersion`` `[10] `_ - gas - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the gas along the projection axis, relative to the gas centre of mass velocity. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``gas_projected_velocity_dispersion`` :animate: fade-in * **HDF5 name:** ``GasProjectedVelocityDispersion`` @@ -1711,12 +1451,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``gas_velocity_dispersion_matrix`` `[11] `_ - gas - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the gas. Measured relative to the gas centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the gas along the projection axis, relative to the gas centre of mass velocity. `[10] `_ + * - .. dropdown:: ``gas_velocity_dispersion_matrix`` :animate: fade-in * **HDF5 name:** ``GasVelocityDispersionMatrix`` @@ -1724,12 +1462,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``half_mass_radius_gas`` `[5] `_ - gas - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - - Gas half mass radius. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the gas. Measured relative to the gas centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ + * - .. dropdown:: ``half_mass_radius_gas`` :animate: fade-in * **HDF5 name:** ``HalfMassRadiusGas`` @@ -1737,12 +1473,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``kappa_corot_gas`` `[25] `_ - gas - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for gas, relative to the HaloCentre and the centre of mass velocity of the gas. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Gas half mass radius. `[5] `_ + * - .. dropdown:: ``kappa_corot_gas`` :animate: fade-in * **HDF5 name:** ``KappaCorotGas`` @@ -1750,12 +1484,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``kinetic_energy_gas`` `[26] `_ - gas - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total kinetic energy of the gas, relative to the gas centre of mass velocity. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for gas, relative to the HaloCentre and the centre of mass velocity of the gas. `[25] `_ + * - .. dropdown:: ``kinetic_energy_gas`` :animate: fade-in * **HDF5 name:** ``KineticEnergyGas`` @@ -1763,12 +1495,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_gas_inertia_tensor_noniterative`` - gas - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total kinetic energy of the gas, relative to the gas centre of mass velocity. `[26] `_ + * - .. dropdown:: ``projected_gas_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedGasInertiaTensorNoniterative`` @@ -1776,12 +1506,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_gas_inertia_tensor_reduced_noniterative`` - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Reduced 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``projected_gas_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedGasInertiaTensorReducedNoniterative`` @@ -1789,12 +1517,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_dark_matter_circular_velocity`` - - dm - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Maximum circular velocity calculated using dark matter particles when accounting for particle softening lengths.. - - .. dropdown:: Dataset specifications + - gas + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``maximum_dark_matter_circular_velocity`` :animate: fade-in * **HDF5 name:** ``MaximumDarkMatterCircularVelocity`` @@ -1802,12 +1528,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``maximum_dark_matter_circular_velocity_radius`` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Radius at which MaximumDarkMatterCircularVelocity is reached. - - .. dropdown:: Dataset specifications + - Maximum circular velocity calculated using dark matter particles when accounting for particle softening lengths.. + * - .. dropdown:: ``maximum_dark_matter_circular_velocity_radius`` :animate: fade-in * **HDF5 name:** ``MaximumDarkMatterCircularVelocityRadius`` @@ -1815,12 +1539,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``angular_momentum_stars`` `[9] `_ - - star - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total angular momentum of the stars, relative to the HaloCentre and stellar centre of mass velocity. - - .. dropdown:: Dataset specifications + - dm + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Radius at which MaximumDarkMatterCircularVelocity is reached. + * - .. dropdown:: ``angular_momentum_stars`` :animate: fade-in * **HDF5 name:** ``AngularMomentumStars`` @@ -1828,12 +1550,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``disc_to_total_stellar_mass_fraction`` `[24] `_ - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of the total stellar mass that is in the disc. - - .. dropdown:: Dataset specifications + - Total angular momentum of the stars, relative to the HaloCentre and stellar centre of mass velocity. `[9] `_ + * - .. dropdown:: ``disc_to_total_stellar_mass_fraction`` :animate: fade-in * **HDF5 name:** ``DiscToTotalStellarMassFraction`` @@ -1841,12 +1561,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``kappa_corot_stars`` `[25] `_ - star - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for stars, relative to the HaloCentre and the centre of mass velocity of the stars. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Fraction of the total stellar mass that is in the disc. `[24] `_ + * - .. dropdown:: ``kappa_corot_stars`` :animate: fade-in * **HDF5 name:** ``KappaCorotStars`` @@ -1854,12 +1572,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``kinetic_energy_stars`` `[26] `_ - star - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total kinetic energy of the stars, relative to the stellar centre of mass velocity. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for stars, relative to the HaloCentre and the centre of mass velocity of the stars. `[25] `_ + * - .. dropdown:: ``kinetic_energy_stars`` :animate: fade-in * **HDF5 name:** ``KineticEnergyStars`` @@ -1867,12 +1583,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``luminosity_weighted_mean_stellar_age`` - star - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Luminosity weighted mean stellar age. The weight is the r band luminosity. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total kinetic energy of the stars, relative to the stellar centre of mass velocity. `[26] `_ + * - .. dropdown:: ``luminosity_weighted_mean_stellar_age`` :animate: fade-in * **HDF5 name:** ``LuminosityWeightedMeanStellarAge`` @@ -1880,12 +1594,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``mass_weighted_mean_stellar_age`` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Mass weighted mean stellar age. - - .. dropdown:: Dataset specifications + - Luminosity weighted mean stellar age. The weight is the r band luminosity. + * - .. dropdown:: ``mass_weighted_mean_stellar_age`` :animate: fade-in * **HDF5 name:** ``MassWeightedMeanStellarAge`` @@ -1893,12 +1605,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_stellar_inertia_tensor_noniterative`` - star - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Mass weighted mean stellar age. + * - .. dropdown:: ``projected_stellar_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedStellarInertiaTensorNoniterative`` @@ -1906,12 +1616,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``projected_stellar_inertia_tensor_reduced_noniterative`` - star - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Reduced 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``projected_stellar_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``ProjectedStellarInertiaTensorReducedNoniterative`` @@ -1919,12 +1627,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_centre_of_mass`` - star - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Centre of mass of stars. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Reduced 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``stellar_centre_of_mass`` :animate: fade-in * **HDF5 name:** ``StellarCentreOfMass`` @@ -1932,12 +1638,10 @@ Non-DMO Properties * **Type:** float64 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** 1 pc accurate - * - ``stellar_centre_of_mass_velocity`` - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Centre of mass velocity of stars. - - .. dropdown:: Dataset specifications + - Centre of mass of stars. + * - .. dropdown:: ``stellar_centre_of_mass_velocity`` :animate: fade-in * **HDF5 name:** ``StellarCentreOfMassVelocity`` @@ -1945,12 +1649,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** 0.1 km/s accurate - * - ``stellar_inertia_tensor`` - star - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Centre of mass velocity of stars. + * - .. dropdown:: ``stellar_inertia_tensor`` :animate: fade-in * **HDF5 name:** ``StellarInertiaTensor`` @@ -1958,12 +1660,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_inertia_tensor_noniterative`` - star - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``stellar_inertia_tensor_noniterative`` :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorNoniterative`` @@ -1971,12 +1671,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_inertia_tensor_reduced`` - star - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Reduced 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``stellar_inertia_tensor_reduced`` :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorReduced`` @@ -1984,12 +1682,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_inertia_tensor_reduced_noniterative`` - star - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Reduced 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Reduced 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``stellar_inertia_tensor_reduced_noniterative`` :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorReducedNoniterative`` @@ -1997,12 +1693,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_initial_mass`` - star - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total stellar initial mass. - - .. dropdown:: Dataset specifications + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` + - Reduced 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. + * - .. dropdown:: ``stellar_initial_mass`` :animate: fade-in * **HDF5 name:** ``StellarInitialMass`` @@ -2010,12 +1704,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{M}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_luminosity`` `[27] `_ - star - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total stellar luminosity in the 9 GAMA bands. - - .. dropdown:: Dataset specifications + - Total stellar initial mass. + * - .. dropdown:: ``stellar_luminosity`` :animate: fade-in * **HDF5 name:** ``StellarLuminosity`` @@ -2023,12 +1715,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_mass_fraction_in_iron`` - star - - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total stellar mass fraction in iron. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` + - Total stellar luminosity in the 9 GAMA bands. `[27] `_ + * - .. dropdown:: ``stellar_mass_fraction_in_iron`` :animate: fade-in * **HDF5 name:** ``StellarMassFractionInIron`` @@ -2036,12 +1726,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_mass_fraction_in_oxygen`` - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total stellar mass fraction in oxygen. - - .. dropdown:: Dataset specifications + - Total stellar mass fraction in iron. + * - .. dropdown:: ``stellar_mass_fraction_in_oxygen`` :animate: fade-in * **HDF5 name:** ``StellarMassFractionInOxygen`` @@ -2049,12 +1737,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_projected_velocity_dispersion`` `[10] `_ - star - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the stars along the projection axis, relative to the stellar centre of mass velocity. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total stellar mass fraction in oxygen. + * - .. dropdown:: ``stellar_projected_velocity_dispersion`` :animate: fade-in * **HDF5 name:** ``StellarProjectedVelocityDispersion`` @@ -2062,12 +1748,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``stellar_velocity_dispersion_matrix`` `[11] `_ - star - - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Mass-weighted velocity dispersion of the stars. Measured relative to the stellar centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. - - .. dropdown:: Dataset specifications + - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the stars along the projection axis, relative to the stellar centre of mass velocity. `[10] `_ + * - .. dropdown:: ``stellar_velocity_dispersion_matrix`` :animate: fade-in * **HDF5 name:** ``StellarVelocityDispersionMatrix`` @@ -2075,12 +1759,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``angular_momentum_baryons`` `[9] `_ - - baryon - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total angular momentum of baryons (gas and stars), relative to the HaloCentre and baryonic centre of mass velocity. - - .. dropdown:: Dataset specifications + - star + - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` + - Mass-weighted velocity dispersion of the stars. Measured relative to the stellar centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ + * - .. dropdown:: ``angular_momentum_baryons`` :animate: fade-in * **HDF5 name:** ``AngularMomentumBaryons`` @@ -2088,12 +1770,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``half_mass_radius_baryons`` - baryon - - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - - Baryonic (gas and stars) half mass radius. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` + - Total angular momentum of baryons (gas and stars), relative to the HaloCentre and baryonic centre of mass velocity. `[9] `_ + * - .. dropdown:: ``half_mass_radius_baryons`` :animate: fade-in * **HDF5 name:** ``HalfMassRadiusBaryons`` @@ -2101,12 +1781,10 @@ Non-DMO Properties * **Type:** float32 * **Units:** :math:`\rm{a} \cdot \rm{L}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - * - ``kappa_corot_baryons`` `[25] `_ - baryon - - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. - - .. dropdown:: Dataset specifications + - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` + - Baryonic (gas and stars) half mass radius. + * - .. dropdown:: ``kappa_corot_baryons`` :animate: fade-in * **HDF5 name:** ``KappaCorotBaryons`` @@ -2114,6 +1792,9 @@ Non-DMO Properties * **Type:** float32 * **Units:** dimensionless * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + - baryon + - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` + - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. `[25] `_ Footnotes --------- From a0427be3265fbf8a540f28d213fcf27bbe8d3a0c Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Thu, 19 Feb 2026 17:51:14 +0100 Subject: [PATCH 05/14] Property table v2 --- source/soap/particle_selection.rst | 70 ++- source/soap/property_filters.rst | 2 +- source/soap/property_table.rst | 873 +++++++++++++---------------- 3 files changed, 416 insertions(+), 529 deletions(-) diff --git a/source/soap/particle_selection.rst b/source/soap/particle_selection.rst index 8e3fadd..092512f 100644 --- a/source/soap/particle_selection.rst +++ b/source/soap/particle_selection.rst @@ -5,8 +5,10 @@ SOAP calculates properties for several definitions of a halo. These various type give users the freedom to select the most appropriate definition for their scientific use case. -Bound subhalo (SH) ------------------- +.. _bound_subhalo_description: + +Bound subhalo +------------- Bound subhalo properties are computed for each subhalo identified by the subhalo finder, irrespective of whether it is a central or satellite subhalo (or even @@ -14,8 +16,10 @@ satellite of satellite and so on). They include all particles that they subhalo finder has determined are bound to the subhalo. Subhalo properties are contained within the group ``bound_subhalo`` in the output file. -Exclusive sphere (ES) ---------------------- +.. _exclusive_sphere_description: + +Exclusive sphere +---------------- Exclusive sphere properties are similar to bound subhalo quantities, but they include only the particles @@ -26,8 +30,10 @@ Exclusive sphere properties are contained within a group ``exclusive_sphere_XXXkpc``, where ``XXX`` is the corresponding aperture radius. -Inclusive sphere (IS) ---------------------- +.. _inclusive_sphere_description: + +Inclusive sphere +---------------- Inclusive sphere properties use the same physical aperture radii as the exclusive sphere quantities, @@ -35,8 +41,10 @@ but include all particles within the radius, regardless of their membership status. They are stored within a group ``inclusive_sphere_XXXkpc``. -Exclusive projected aperture (EP) ---------------------------------- +.. _projected_aperture_description: + +Exclusive projected aperture +---------------------------- The projected apertures are similar to exclusive sphere quantities, except that their aperture @@ -50,8 +58,10 @@ subhalo. Projected aperture quantities are stored in a group named aperture radius, and ``P`` corresponds to a particular projection direction (``x``, ``y`` or ``z``). -Spherical overdensity (SO) --------------------------- +.. _spherical_overdensity_description: + +Spherical overdensity +--------------------- Spherical overdensities are fundamentally different from the other types in that their aperture radius is determined from the density profile and so has a different value @@ -70,7 +80,7 @@ i.e. field halos. The inclusive sphere quantities are stored in a group listed above. Input Halos ----------- +----------- Some properties are directly copied from the original subhalo catalogue that was passed to SOAP. These are stored in a three separate groups. @@ -95,23 +105,23 @@ Note that there will be three groups (``x``, ``y`` or ``z``) for each projected aperture variation. Each halo variation can have a filter applied to it. If a halo does not satisfy the filter then the variation will not be calculated for that halo. More information on filters can be -found in the next section. +found :doc:`in the next section `. +----------------------------------------+------------+-------------+ | Group name | Inclusive? | Filter | +========================================+============+=============+ -| ``bound_subhalo`` | n | | +| ``bound_subhalo`` | n | basic | +----------------------------------------+------------+-------------+ -| ``spherical_overdensity_200_crit`` | y | | +| ``spherical_overdensity_200_crit`` | y | basic | +----------------------------------------+------------+-------------+ | ``spherical_overdensity_50_crit`` | y | general | +----------------------------------------+------------+-------------+ | ``spherical_overdensity_100_crit`` | y | general | +----------------------------------------+------------+-------------+ -| ``spherical_overdensity_200_mean`` | y | | +| ``spherical_overdensity_200_mean`` | y | basic | +----------------------------------------+------------+-------------+ -| ``spherical_overdensity_500_crit`` | y | | +| ``spherical_overdensity_500_crit`` | y | basic | +----------------------------------------+------------+-------------+ | ``spherical_overdensity_5xr_500_crit`` | y | general | +----------------------------------------+------------+-------------+ @@ -121,15 +131,15 @@ found in the next section. +----------------------------------------+------------+-------------+ | ``spherical_overdensity_bn98`` | y | general | +----------------------------------------+------------+-------------+ -| ``exclusive_sphere_10kpc`` | n | | +| ``exclusive_sphere_10kpc`` | n | basic | +----------------------------------------+------------+-------------+ -| ``exclusive_sphere_30kpc`` | n | | +| ``exclusive_sphere_30kpc`` | n | basic | +----------------------------------------+------------+-------------+ -| ``exclusive_sphere_50kpc`` | n | | +| ``exclusive_sphere_50kpc`` | n | basic | +----------------------------------------+------------+-------------+ -| ``exclusive_sphere_100kpc`` | n | | +| ``exclusive_sphere_100kpc`` | n | basic | +----------------------------------------+------------+-------------+ -| ``exclusive_sphere_300kpc`` | n | | +| ``exclusive_sphere_300kpc`` | n | basic | +----------------------------------------+------------+-------------+ | ``exclusive_sphere_500kpc`` | n | general | +----------------------------------------+------------+-------------+ @@ -137,15 +147,15 @@ found in the next section. +----------------------------------------+------------+-------------+ | ``exclusive_sphere_3000kpc`` | n | general | +----------------------------------------+------------+-------------+ -| ``inclusive_sphere_10kpc`` | y | | +| ``inclusive_sphere_10kpc`` | y | basic | +----------------------------------------+------------+-------------+ -| ``inclusive_sphere_30kpc`` | y | | +| ``inclusive_sphere_30kpc`` | y | basic | +----------------------------------------+------------+-------------+ -| ``inclusive_sphere_50kpc`` | y | | +| ``inclusive_sphere_50kpc`` | y | basic | +----------------------------------------+------------+-------------+ -| ``inclusive_sphere_100kpc`` | y | | +| ``inclusive_sphere_100kpc`` | y | basic | +----------------------------------------+------------+-------------+ -| ``inclusive_sphere_300kpc`` | y | | +| ``inclusive_sphere_300kpc`` | y | basic | +----------------------------------------+------------+-------------+ | ``inclusive_sphere_500kpc`` | y | general | +----------------------------------------+------------+-------------+ @@ -161,13 +171,13 @@ found in the next section. +----------------------------------------+------------+-------------+ | ``projected_aperture_100kpc_projP`` | n | general | +----------------------------------------+------------+-------------+ -| ``soap`` | - | | +| ``soap`` | \- | basic | +----------------------------------------+------------+-------------+ -| ``input_halos`` | - | | +| ``input_halos`` | \- | basic | +----------------------------------------+------------+-------------+ -| ``input_halos_hbtplus`` | - | | +| ``input_halos_hbtplus`` | \- | basic | +----------------------------------------+------------+-------------+ -| ``input_halos_fof`` | - | | +| ``input_halos_fof`` | \- | basic | +----------------------------------------+------------+-------------+ diff --git a/source/soap/property_filters.rst b/source/soap/property_filters.rst index d0d8fe4..8622e05 100644 --- a/source/soap/property_filters.rst +++ b/source/soap/property_filters.rst @@ -42,7 +42,7 @@ different categories are summarised in the table below. +---------+-----------------------------------------------------------------------+ | Name | Criterion | +=========+=======================================================================+ -| basic | (all halos) | +| basic | all subhalos | +---------+-----------------------------------------------------------------------+ | general | :math:`N_{\rm{}gas}+N_{\rm{}dm}+N_{\rm{}star}+N_{\rm{}BH} \geq{} 100` | +---------+-----------------------------------------------------------------------+ diff --git a/source/soap/property_table.rst b/source/soap/property_table.rst index 68fbe70..23038d7 100644 --- a/source/soap/property_table.rst +++ b/source/soap/property_table.rst @@ -1,6 +1,75 @@ SOAP property table =================== +The tables below list the properties available within the SOAP catalogues. The first table contains the properties within the ``input_halos`` group. +The second table contains the properties which are calculated for both DMO and HYDRO simulations. +The third table contains the properties which are only calculated for the HYDRO simulations. +The final table contains the datasets copied over from the HBT-HERONS and FOF catalogues. +Within each table the properties are sorted based on their filters. + +The first column gives the name of the property when opened using the `swiftsimio library `_. Clicking on each property name will open a dropdown box, which contains information about the dataset within the HDF5 file. The second column gives the filter applied to that property, as descibred in :doc:`property_filters`. The third column indicates the halo variations for which this property is available (green if the property is computed for a certain variation, red if not). The variations are as follows: + +* ``BS`` - :ref:`bound_subhalo_description` +* ``ES`` - :ref:`exclusive_sphere_description` +* ``IS`` - :ref:`inclusive_sphere_description` +* ``EP`` - :ref:`projected_aperture_description` +* ``SO`` - :ref:`spherical_overdensity_description` + +The final column gives a description of the property. Certain properties also contain a link to a footnote at the bottom of this page which gives a full description of how they were calculated. + + +Input Halo Properties +--------------------- + +.. list-table:: + :widths: 25 10 15 50 + :header-rows: 1 + + * - Name + - Filter + - Variations + - Description + * - .. dropdown:: ``input_halos.halo_catalogue_index`` + + * **HDF5 name:** ``InputHalos/HaloCatalogueIndex`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Index of this halo in the original halo finder catalogue (first halo has index=0). + * - .. dropdown:: ``input_halos.halo_centre`` + + * **HDF5 name:** ``InputHalos/HaloCentre`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + - basic + - \- + - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. + * - .. dropdown:: ``input_halos.is_central`` + + * **HDF5 name:** ``InputHalos/IsCentral`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Whether the halo finder flagged the halo as central (1) or satellite (0). + * - .. dropdown:: ``input_halos.number_of_bound_particles`` + + * **HDF5 name:** ``InputHalos/NumberOfBoundParticles`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Total number of particles bound to the subhalo. + DMO Properties -------------- @@ -9,11 +78,10 @@ DMO Properties :header-rows: 1 * - Name - - Category - - Outputs - - Description & Technical Specs + - Filter + - Variations + - Description * - .. dropdown:: ``centre_of_mass`` - :animate: fade-in * **HDF5 name:** ``CentreOfMass`` * **Shape:** 3 @@ -24,7 +92,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Centre of mass. `[1] `_ * - .. dropdown:: ``centre_of_mass_velocity`` - :animate: fade-in * **HDF5 name:** ``CentreOfMassVelocity`` * **Shape:** 3 @@ -35,7 +102,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Centre of mass velocity. `[1] `_ * - .. dropdown:: ``concentration`` - :animate: fade-in * **HDF5 name:** ``Concentration`` * **Shape:** 1 @@ -46,7 +112,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Halo concentration assuming an NFW profile. Minimum particle radius set to softening length `[2] `_ * - .. dropdown:: ``concentration_unsoftened`` - :animate: fade-in * **HDF5 name:** ``ConcentrationUnsoftened`` * **Shape:** 1 @@ -57,7 +122,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Halo concentration assuming an NFW profile. No particle softening. `[2] `_ * - .. dropdown:: ``dark_matter_mass`` - :animate: fade-in * **HDF5 name:** ``DarkMatterMass`` * **Shape:** 1 @@ -68,7 +132,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total DM mass. * - .. dropdown:: ``enclose_radius`` - :animate: fade-in * **HDF5 name:** ``EncloseRadius`` * **Shape:** 1 @@ -79,7 +142,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Radius of the particle furthest from the halo centre * - .. dropdown:: ``maximum_circular_velocity`` - :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocity`` * **Shape:** 1 @@ -90,7 +152,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Maximum circular velocity when accounting for particle softening lengths. `[3] `_ * - .. dropdown:: ``maximum_circular_velocity_radius`` - :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityRadius`` * **Shape:** 1 @@ -101,7 +162,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Radius at which MaximumCircularVelocity is reached. * - .. dropdown:: ``maximum_circular_velocity_radius_unsoftened`` - :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityRadiusUnsoftened`` * **Shape:** 1 @@ -112,7 +172,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Radius at which MaximumCircularVelocityUnsoftened is reached. `[3] `_ * - .. dropdown:: ``maximum_circular_velocity_unsoftened`` - :animate: fade-in * **HDF5 name:** ``MaximumCircularVelocityUnsoftened`` * **Shape:** 1 @@ -123,7 +182,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Maximum circular velocity when not accounting for particle softening lengths. `[3] `_ * - .. dropdown:: ``noise_suppressed_neutrino_mass`` - :animate: fade-in * **HDF5 name:** ``NoiseSuppressedNeutrinoMass`` * **Shape:** 1 @@ -134,7 +192,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Noise suppressed total neutrino mass. `[4] `_ * - .. dropdown:: ``number_of_dark_matter_particles`` - :animate: fade-in * **HDF5 name:** ``NumberOfDarkMatterParticles`` * **Shape:** 1 @@ -145,7 +202,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Number of dark matter particles. * - .. dropdown:: ``raw_neutrino_mass`` - :animate: fade-in * **HDF5 name:** ``RawNeutrinoMass`` * **Shape:** 1 @@ -156,7 +212,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total neutrino particle mass. `[4] `_ * - .. dropdown:: ``soradius`` - :animate: fade-in * **HDF5 name:** ``SORadius`` * **Shape:** 1 @@ -167,7 +222,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Radius of a sphere satisfying a spherical overdensity criterion. * - .. dropdown:: ``total_mass`` - :animate: fade-in * **HDF5 name:** ``TotalMass`` * **Shape:** 1 @@ -178,7 +232,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total mass. * - .. dropdown:: ``half_mass_radius_total`` - :animate: fade-in * **HDF5 name:** ``HalfMassRadiusTotal`` * **Shape:** 1 @@ -189,7 +242,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Total half mass radius. `[5] `_ * - .. dropdown:: ``mass_fraction_external`` - :animate: fade-in * **HDF5 name:** ``MassFractionExternal`` * **Shape:** 1 @@ -200,7 +252,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Fraction of mass that is bound to a satellite outside this FOF group. `[6] `_ * - .. dropdown:: ``mass_fraction_satellites`` - :animate: fade-in * **HDF5 name:** ``MassFractionSatellites`` * **Shape:** 1 @@ -211,7 +262,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Fraction of mass that is bound to a satellite in the same FOF group. `[6] `_ * - .. dropdown:: ``spin_parameter`` - :animate: fade-in * **HDF5 name:** ``SpinParameter`` * **Shape:** 1 @@ -222,7 +272,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Bullock et al. (2001) spin parameter. `[7] `_ * - .. dropdown:: ``total_inertia_tensor`` - :animate: fade-in * **HDF5 name:** ``TotalInertiaTensor`` * **Shape:** 6 @@ -233,7 +282,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``total_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorNoniterative`` * **Shape:** 6 @@ -244,7 +292,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``total_inertia_tensor_reduced`` - :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorReduced`` * **Shape:** 6 @@ -255,7 +302,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Reduced 3D inertia tensor computed iteratively from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``total_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``TotalInertiaTensorReducedNoniterative`` * **Shape:** 6 @@ -266,7 +312,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Reduced 3D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``angular_momentum_dark_matter`` - :animate: fade-in * **HDF5 name:** ``AngularMomentumDarkMatter`` * **Shape:** 3 @@ -277,7 +322,6 @@ DMO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total angular momentum of the dark matter, relative to the HaloCentre and DM centre of mass velocity. `[9] `_ * - .. dropdown:: ``dark_matter_inertia_tensor`` - :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensor`` * **Shape:** 6 @@ -288,7 +332,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``dark_matter_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorNoniterative`` * **Shape:** 6 @@ -299,7 +342,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``dark_matter_inertia_tensor_reduced`` - :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorReduced`` * **Shape:** 6 @@ -310,7 +352,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Reduced 3D inertia tensor computed iteratively from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``dark_matter_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``DarkMatterInertiaTensorReducedNoniterative`` * **Shape:** 6 @@ -321,7 +362,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Reduced 3D inertia tensor computed in a single interation from the DM mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``dark_matter_projected_velocity_dispersion`` - :animate: fade-in * **HDF5 name:** ``DarkMatterProjectedVelocityDispersion`` * **Shape:** 1 @@ -332,7 +372,6 @@ DMO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the DM along the projection axis, relative to the DM centre of mass velocity. `[10] `_ * - .. dropdown:: ``dark_matter_velocity_dispersion_matrix`` - :animate: fade-in * **HDF5 name:** ``DarkMatterVelocityDispersionMatrix`` * **Shape:** 6 @@ -343,7 +382,6 @@ DMO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the dark matter. Measured relative to the DM centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ * - .. dropdown:: ``half_mass_radius_dark_matter`` - :animate: fade-in * **HDF5 name:** ``HalfMassRadiusDarkMatter`` * **Shape:** 1 @@ -353,270 +391,6 @@ DMO Properties - dm - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - Dark matter half mass radius. `[5] `_ - * - .. dropdown:: ``input_halos/halo_catalogue_index`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HaloCatalogueIndex`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - InputHalos - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index of this halo in the original halo finder catalogue (first halo has index=0). - * - .. dropdown:: ``input_halos/halo_centre`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HaloCentre`` - * **Shape:** 3 - * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` - * **Compression:** 1 pc accurate - - InputHalos - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. - * - .. dropdown:: ``input_halos/is_central`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/IsCentral`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - InputHalos - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Whether the halo finder flagged the halo as central (1) or satellite (0). - * - .. dropdown:: ``input_halos/number_of_bound_particles`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/NumberOfBoundParticles`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - InputHalos - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Total number of particles bound to the subhalo. - * - .. dropdown:: ``input_halos/hbtplus/depth`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/Depth`` - * **Shape:** 1 - * **Type:** uint64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Level of the subhalo in the merging hierarchy. - * - .. dropdown:: ``input_halos/hbtplus/descendant_track_id`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/DescendantTrackId`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - TrackId of the descendant of this subhalo. - * - .. dropdown:: ``input_halos/hbtplus/host_fofid`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/HostFOFId`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 - * - .. dropdown:: ``input_halos/hbtplus/last_max_mass`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/LastMaxMass`` - * **Shape:** 1 - * **Type:** float32 - * **Units:** :math:`\rm{M}` - * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Maximum mass of this subhalo across its evolutionary history - * - .. dropdown:: ``input_halos/hbtplus/last_max_vmax_physical`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/LastMaxVmaxPhysical`` - * **Shape:** 1 - * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` - * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Largest value of maximum circular velocity of this subhalo across its evolutionary history - * - .. dropdown:: ``input_halos/hbtplus/nested_parent_track_id`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/NestedParentTrackId`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - TrackId of the parent of this subhalo. - * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_birth`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfBirth`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Snapshot when this subhalo was formed. - * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_isolation`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastIsolation`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo was a central. -1 if the subhalo has always been a central. - * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_max_mass`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxMass`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo had its maximum mass. - * - .. dropdown:: ``input_halos/hbtplus/snapshot_of_last_max_vmax`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxVmax`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Latest snapshot when this subhalo had its largest maximum circular velocity. - * - .. dropdown:: ``input_halos/hbtplus/track_id`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/HBTplus/TrackId`` - * **Shape:** 1 - * **Type:** uint64 - * **Units:** dimensionless - * **Compression:** no compression - - HBTplus - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Unique ID for this subhalo which is consistent across snapshots. - * - .. dropdown:: ``input_halos/fof/centres`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/FOF/Centres`` - * **Shape:** 3 - * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` - * **Compression:** 1 pc accurate - - FOF - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - * - .. dropdown:: ``input_halos/fof/masses`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/FOF/Masses`` - * **Shape:** 1 - * **Type:** float32 - * **Units:** :math:`\rm{M}` - * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - - FOF - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - * - .. dropdown:: ``input_halos/fof/radii`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/FOF/Radii`` - * **Shape:** 1 - * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` - * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - - FOF - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. - * - .. dropdown:: ``input_halos/fof/sizes`` - :animate: fade-in - - * **HDF5 name:** ``InputHalos/FOF/Sizes`` - * **Shape:** 1 - * **Type:** uint64 - * **Units:** dimensionless - * **Compression:** no compression - - FOF - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - * - .. dropdown:: ``soap/descendant_index`` - :animate: fade-in - - * **HDF5 name:** ``SOAP/DescendantIndex`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - SOAP - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. `[12] `_ - * - .. dropdown:: ``soap/host_halo_index`` - :animate: fade-in - - * **HDF5 name:** ``SOAP/HostHaloIndex`` - * **Shape:** 1 - * **Type:** int64 - * **Units:** dimensionless - * **Compression:** no compression - - SOAP - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the SOAP arrays) of the top level parent of this subhalo. -1 for hostless halos. - * - .. dropdown:: ``soap/included_in_reduced_snapshot`` - :animate: fade-in - - * **HDF5 name:** ``SOAP/IncludedInReducedSnapshot`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - SOAP - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Whether this halo is included in the reduced snapshot. - * - .. dropdown:: ``soap/progenitor_index`` - :animate: fade-in - - * **HDF5 name:** ``SOAP/ProgenitorIndex`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - SOAP - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. `[12] `_ - * - .. dropdown:: ``soap/subhalo_rank_by_bound_mass`` - :animate: fade-in - - * **HDF5 name:** ``SOAP/SubhaloRankByBoundMass`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - SOAP - - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - - Ranking by mass of the halo within its parent field halo. Zero for the most massive halo in the field halo. HYDRO Properties ---------------- @@ -626,11 +400,10 @@ HYDRO Properties :header-rows: 1 * - Name - - Category - - Outputs - - Description & Technical Specs + - Filter + - Variations + - Description * - .. dropdown:: ``black_holes_dynamical_mass`` - :animate: fade-in * **HDF5 name:** ``BlackHolesDynamicalMass`` * **Shape:** 1 @@ -641,7 +414,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total BH dynamical mass. * - .. dropdown:: ``black_holes_subgrid_mass`` - :animate: fade-in * **HDF5 name:** ``BlackHolesSubgridMass`` * **Shape:** 1 @@ -652,7 +424,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total BH subgrid mass. * - .. dropdown:: ``dark_matter_concentration`` - :animate: fade-in * **HDF5 name:** ``DarkMatterConcentration`` * **Shape:** 1 @@ -663,7 +434,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Concentration of dark matter particles assuming an NFW profile. Minimum particle radius set to softening length `[2] `_ * - .. dropdown:: ``dark_matter_concentration_unsoftened`` - :animate: fade-in * **HDF5 name:** ``DarkMatterConcentrationUnsoftened`` * **Shape:** 1 @@ -674,7 +444,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Concentration of dark matter particles assuming an NFW profile. No particle softening `[2] `_ * - .. dropdown:: ``gas_mass`` - :animate: fade-in * **HDF5 name:** ``GasMass`` * **Shape:** 1 @@ -685,7 +454,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total gas mass. * - .. dropdown:: ``gas_mass_fraction_in_metals`` - :animate: fade-in * **HDF5 name:** ``GasMassFractionInMetals`` * **Shape:** 1 @@ -694,9 +462,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in metals. `[13] `_ + - Total gas mass fraction in metals. `[12] `_ * - .. dropdown:: ``half_mass_radius_stars`` - :animate: fade-in * **HDF5 name:** ``HalfMassRadiusStars`` * **Shape:** 1 @@ -707,7 +474,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - Stellar half mass radius. `[5] `_ * - .. dropdown:: ``most_massive_black_hole_id`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleID`` * **Shape:** 1 @@ -718,7 +484,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - ID of most massive black hole. * - .. dropdown:: ``most_massive_black_hole_mass`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleMass`` * **Shape:** 1 @@ -727,9 +492,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Mass of most massive black hole. `[14] `_ + - Mass of most massive black hole. `[13] `_ * - .. dropdown:: ``number_of_black_hole_particles`` - :animate: fade-in * **HDF5 name:** ``NumberOfBlackHoleParticles`` * **Shape:** 1 @@ -740,7 +504,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Number of black hole particles. * - .. dropdown:: ``number_of_gas_particles`` - :animate: fade-in * **HDF5 name:** ``NumberOfGasParticles`` * **Shape:** 1 @@ -751,7 +514,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Number of gas particles. * - .. dropdown:: ``number_of_neutrino_particles`` - :animate: fade-in * **HDF5 name:** ``NumberOfNeutrinoParticles`` * **Shape:** 1 @@ -762,7 +524,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Number of neutrino particles. * - .. dropdown:: ``number_of_star_particles`` - :animate: fade-in * **HDF5 name:** ``NumberOfStarParticles`` * **Shape:** 1 @@ -773,7 +534,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Number of star particles. * - .. dropdown:: ``star_formation_rate`` - :animate: fade-in * **HDF5 name:** ``StarFormationRate`` * **Shape:** 1 @@ -782,9 +542,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total star formation rate. `[15] `_ + - Total star formation rate. `[14] `_ * - .. dropdown:: ``star_forming_gas_mass_fraction_in_metals`` - :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInMetals`` * **Shape:** 1 @@ -793,9 +552,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in metals for gas that is star-forming. `[15] `_ `[13] `_ + - Total gas mass fraction in metals for gas that is star-forming. `[12] `_ `[14] `_ * - .. dropdown:: ``stellar_mass`` - :animate: fade-in * **HDF5 name:** ``StellarMass`` * **Shape:** 1 @@ -806,7 +564,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total stellar mass. * - .. dropdown:: ``stellar_mass_fraction_in_metals`` - :animate: fade-in * **HDF5 name:** ``StellarMassFractionInMetals`` * **Shape:** 1 @@ -817,7 +574,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total stellar mass fraction in metals. * - .. dropdown:: ``black_holes_last_event_scalefactor`` - :animate: fade-in * **HDF5 name:** ``BlackHolesLastEventScalefactor`` * **Shape:** 1 @@ -828,7 +584,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Scale-factor of last AGN event. * - .. dropdown:: ``compton_y`` - :animate: fade-in * **HDF5 name:** ``ComptonY`` * **Shape:** 1 @@ -837,9 +592,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total Compton y parameter. `[16] `_ + - Total Compton y parameter. `[15] `_ * - .. dropdown:: ``compton_ywithout_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``ComptonYWithoutRecentAGNHeating`` * **Shape:** 1 @@ -848,20 +602,18 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total Compton y parameter. Excludes gas that was recently heated by AGN. `[16] `_ + - Total Compton y parameter. Excludes gas that was recently heated by AGN. `[15] `_ * - .. dropdown:: ``doppler_b`` - :animate: fade-in * **HDF5 name:** ``DopplerB`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot ` + * **Units:** :math:`\rm{a} \cdot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Kinetic Sunyaey-Zel'dovich effect, assuming a line of sight towards the position of the first lightcone observer. `[17] `_ + - Kinetic Sunyaey-Zel'dovich effect, assuming a line of sight towards the position of the first lightcone observer. `[16] `_ * - .. dropdown:: ``gas_compton_ytemperature`` - :animate: fade-in * **HDF5 name:** ``GasComptonYTemperature`` * **Shape:** 1 @@ -870,9 +622,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature. `[18] `_ + - ComptonY-weighted mean gas temperature. `[17] `_ * - .. dropdown:: ``gas_compton_ytemperature_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureCoreExcision`` * **Shape:** 1 @@ -881,9 +632,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding the inner excised core. `[19] `_ `[18] `_ + - ComptonY-weighted mean gas temperature, excluding the inner excised core. `[17] `_ `[18] `_ * - .. dropdown:: ``gas_compton_ytemperature_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 @@ -892,9 +642,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[18] `_ + - ComptonY-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[17] `_ * - .. dropdown:: ``gas_compton_ytemperature_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 @@ -903,9 +652,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - ComptonY-weighted mean gas temperature, excluding the inner excised core and gas that was recently heated by AGN. `[19] `_ `[18] `_ + - ComptonY-weighted mean gas temperature, excluding the inner excised core and gas that was recently heated by AGN. `[17] `_ `[18] `_ * - .. dropdown:: ``gas_mass_fraction_in_iron`` - :animate: fade-in * **HDF5 name:** ``GasMassFractionInIron`` * **Shape:** 1 @@ -914,9 +662,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass fraction in iron. `[13] `_ + - Total gas mass fraction in iron. `[12] `_ * - .. dropdown:: ``gas_mass_fraction_in_oxygen`` - :animate: fade-in * **HDF5 name:** ``GasMassFractionInOxygen`` * **Shape:** 1 @@ -925,9 +672,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total gas mass in oxygen. `[13] `_ + - Total gas mass in oxygen. `[12] `_ * - .. dropdown:: ``gas_temperature`` - :animate: fade-in * **HDF5 name:** ``GasTemperature`` * **Shape:** 1 @@ -936,9 +682,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature. `[20] `_ + - Mass-weighted mean gas temperature. `[19] `_ * - .. dropdown:: ``gas_temperature_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureCoreExcision`` * **Shape:** 1 @@ -947,9 +692,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core. `[19] `_ + - Mass-weighted mean gas temperature, excluding the inner excised core. `[18] `_ * - .. dropdown:: ``gas_temperature_without_cool_gas`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGas`` * **Shape:** 1 @@ -958,9 +702,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K. `[20] `_ + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K. `[19] `_ * - .. dropdown:: ``gas_temperature_without_cool_gas_and_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeating`` * **Shape:** 1 @@ -969,9 +712,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K and gas that was recently heated by AGN. `[20] `_ + - Mass-weighted mean gas temperature, excluding cool gas with a temperature below 1e5 K and gas that was recently heated by AGN. `[19] `_ * - .. dropdown:: ``gas_temperature_without_cool_gas_and_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeatingCoreExcision`` * **Shape:** 1 @@ -980,9 +722,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core, gas below 1e5 K and gas that was recently heated by AGN. `[19] `_ + - Mass-weighted mean gas temperature, excluding the inner excised core, gas below 1e5 K and gas that was recently heated by AGN. `[18] `_ * - .. dropdown:: ``gas_temperature_without_cool_gas_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutCoolGasCoreExcision`` * **Shape:** 1 @@ -991,9 +732,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core and gas below 1e5 K. `[19] `_ + - Mass-weighted mean gas temperature, excluding the inner excised core and gas below 1e5 K. `[18] `_ * - .. dropdown:: ``gas_temperature_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 @@ -1002,9 +742,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[20] `_ + - Mass-weighted mean gas temperature, excluding gas that was recently heated by AGN. `[19] `_ * - .. dropdown:: ``gas_temperature_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 @@ -1013,9 +752,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Mass-weighted mean gas temperature, excluding the inner excised core, and gas that was recently heated by AGN. `[19] `_ + - Mass-weighted mean gas temperature, excluding the inner excised core, and gas that was recently heated by AGN. `[18] `_ * - .. dropdown:: ``hot_gas_mass`` - :animate: fade-in * **HDF5 name:** ``HotGasMass`` * **Shape:** 1 @@ -1026,7 +764,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total mass of gas with a temperature above 1e5 K. * - .. dropdown:: ``most_massive_black_hole_accretion_rate`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleAccretionRate`` * **Shape:** 1 @@ -1037,7 +774,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Gas accretion rate of most massive black hole. * - .. dropdown:: ``most_massive_black_hole_last_event_scalefactor`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleLastEventScalefactor`` * **Shape:** 1 @@ -1048,7 +784,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Scale-factor of last thermal AGN event for most massive black hole. * - .. dropdown:: ``most_massive_black_hole_position`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHolePosition`` * **Shape:** 3 @@ -1059,7 +794,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Position of most massive black hole. * - .. dropdown:: ``most_massive_black_hole_velocity`` - :animate: fade-in * **HDF5 name:** ``MostMassiveBlackHoleVelocity`` * **Shape:** 3 @@ -1070,7 +804,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Velocity of most massive black hole relative to the simulation volume. * - .. dropdown:: ``projected_total_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedTotalInertiaTensorNoniterative`` * **Shape:** 3 @@ -1081,7 +814,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``projected_total_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedTotalInertiaTensorReducedNoniterative`` * **Shape:** 3 @@ -1092,7 +824,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Reduced 2D inertia tensor computed in a single iteration from the total mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. `[8] `_ * - .. dropdown:: ``spectroscopic_like_temperature`` - :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperature`` * **Shape:** 1 @@ -1101,9 +832,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. `[21] `_ + - Spectroscopic-like gas temperature. `[20] `_ * - .. dropdown:: ``spectroscopic_like_temperature_core_excision`` - :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureCoreExcision`` * **Shape:** 1 @@ -1112,9 +842,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Excludes gas in the inner excised core `[19] `_ `[21] `_ + - Spectroscopic-like gas temperature. Excludes gas in the inner excised core `[18] `_ `[20] `_ * - .. dropdown:: ``spectroscopic_like_temperature_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 @@ -1123,9 +852,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN `[21] `_ + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN `[20] `_ * - .. dropdown:: ``spectroscopic_like_temperature_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 @@ -1134,9 +862,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ `[21] `_ + - Spectroscopic-like gas temperature. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[18] `_ `[20] `_ * - .. dropdown:: ``star_forming_gas_mass`` - :animate: fade-in * **HDF5 name:** ``StarFormingGasMass`` * **Shape:** 1 @@ -1145,9 +872,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total mass of star-forming gas. `[15] `_ + - Total mass of star-forming gas. `[14] `_ * - .. dropdown:: ``star_forming_gas_mass_fraction_in_iron`` - :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInIron`` * **Shape:** 1 @@ -1156,9 +882,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total gas mass fraction in iron for gas that is star-forming. `[15] `_ `[13] `_ + - Total gas mass fraction in iron for gas that is star-forming. `[12] `_ `[14] `_ * - .. dropdown:: ``star_forming_gas_mass_fraction_in_oxygen`` - :animate: fade-in * **HDF5 name:** ``StarFormingGasMassFractionInOxygen`` * **Shape:** 1 @@ -1167,9 +892,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Total gas mass fraction in oxygen for gas that is star-forming. `[15] `_ `[13] `_ + - Total gas mass fraction in oxygen for gas that is star-forming. `[12] `_ `[14] `_ * - .. dropdown:: ``thermal_energy_gas`` - :animate: fade-in * **HDF5 name:** ``ThermalEnergyGas`` * **Shape:** 1 @@ -1178,9 +902,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total thermal energy of the gas. `[22] `_ + - Total thermal energy of the gas. `[21] `_ * - .. dropdown:: ``xray_luminosity`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosity`` * **Shape:** 3 @@ -1189,9 +912,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. `[23] `_ + - Total observer-frame Xray luminosity in three bands. `[22] `_ * - .. dropdown:: ``xray_luminosity_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityCoreExcision`` * **Shape:** 3 @@ -1200,9 +922,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. Excludes gas in the inner excised core `[19] `_ + - Total observer-frame Xray luminosity in three bands. Excludes gas in the inner excised core `[18] `_ * - .. dropdown:: ``xray_luminosity_in_restframe`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframe`` * **Shape:** 3 @@ -1211,9 +932,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray luminosity in three bands. `[23] `_ + - Total rest-frame Xray luminosity in three bands. `[22] `_ * - .. dropdown:: ``xray_luminosity_in_restframe_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeCoreExcision`` * **Shape:** 3 @@ -1224,7 +944,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray luminosity in three bands. Excludes gas in the inner excised core * - .. dropdown:: ``xray_luminosity_in_restframe_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeating`` * **Shape:** 3 @@ -1235,7 +954,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. * - .. dropdown:: ``xray_luminosity_in_restframe_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 @@ -1246,7 +964,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core * - .. dropdown:: ``xray_luminosity_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeating`` * **Shape:** 3 @@ -1257,7 +974,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. * - .. dropdown:: ``xray_luminosity_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 @@ -1266,9 +982,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ + - Total observer-frame Xray luminosity in three bands. Excludes gas that was recently heated by AGN. Excludes gas in the inner excised core `[18] `_ * - .. dropdown:: ``xray_photon_luminosity`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosity`` * **Shape:** 3 @@ -1277,9 +992,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. `[23] `_ + - Total observer-frame Xray photon luminosity in three bands. `[22] `_ * - .. dropdown:: ``xray_photon_luminosity_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityCoreExcision`` * **Shape:** 3 @@ -1288,9 +1002,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core `[19] `_ + - Total observer-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core `[18] `_ * - .. dropdown:: ``xray_photon_luminosity_in_restframe`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframe`` * **Shape:** 3 @@ -1299,9 +1012,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total rest-frame Xray photon luminosity in three bands. `[23] `_ + - Total rest-frame Xray photon luminosity in three bands. `[22] `_ * - .. dropdown:: ``xray_photon_luminosity_in_restframe_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeCoreExcision`` * **Shape:** 3 @@ -1312,7 +1024,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray photon luminosity in three bands. Excludes gas in the inner excised core * - .. dropdown:: ``xray_photon_luminosity_in_restframe_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeating`` * **Shape:** 3 @@ -1323,7 +1034,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. * - .. dropdown:: ``xray_photon_luminosity_in_restframe_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 @@ -1334,7 +1044,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total rest-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core * - .. dropdown:: ``xray_photon_luminosity_without_recent_agnheating`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeating`` * **Shape:** 3 @@ -1345,7 +1054,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. * - .. dropdown:: ``xray_photon_luminosity_without_recent_agnheating_core_excision`` - :animate: fade-in * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 @@ -1354,9 +1062,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[19] `_ + - Total observer-frame Xray photon luminosity in three bands. Exclude gas that was recently heated by AGN. Excludes gas in the inner excised core `[18] `_ * - .. dropdown:: ``angular_momentum_gas`` - :animate: fade-in * **HDF5 name:** ``AngularMomentumGas`` * **Shape:** 3 @@ -1367,7 +1074,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total angular momentum of the gas, relative to the HaloCentre and gas centre of mass velocity. `[9] `_ * - .. dropdown:: ``disc_to_total_gas_mass_fraction`` - :animate: fade-in * **HDF5 name:** ``DiscToTotalGasMassFraction`` * **Shape:** 1 @@ -1376,9 +1082,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of the total gas mass that is in the disc. `[24] `_ + - Fraction of the total gas mass that is in the disc. `[23] `_ * - .. dropdown:: ``gas_centre_of_mass`` - :animate: fade-in * **HDF5 name:** ``GasCentreOfMass`` * **Shape:** 3 @@ -1389,7 +1094,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Centre of mass of gas. * - .. dropdown:: ``gas_centre_of_mass_velocity`` - :animate: fade-in * **HDF5 name:** ``GasCentreOfMassVelocity`` * **Shape:** 3 @@ -1400,7 +1104,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Centre of mass velocity of gas. * - .. dropdown:: ``gas_inertia_tensor`` - :animate: fade-in * **HDF5 name:** ``GasInertiaTensor`` * **Shape:** 6 @@ -1411,7 +1114,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``gas_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``GasInertiaTensorNoniterative`` * **Shape:** 6 @@ -1422,7 +1124,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``gas_inertia_tensor_reduced`` - :animate: fade-in * **HDF5 name:** ``GasInertiaTensorReduced`` * **Shape:** 6 @@ -1433,7 +1134,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Reduced 3D inertia tensor computed iteratively from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``gas_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``GasInertiaTensorReducedNoniterative`` * **Shape:** 6 @@ -1444,7 +1144,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Reduced 3D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``gas_projected_velocity_dispersion`` - :animate: fade-in * **HDF5 name:** ``GasProjectedVelocityDispersion`` * **Shape:** 1 @@ -1455,7 +1154,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the gas along the projection axis, relative to the gas centre of mass velocity. `[10] `_ * - .. dropdown:: ``gas_velocity_dispersion_matrix`` - :animate: fade-in * **HDF5 name:** ``GasVelocityDispersionMatrix`` * **Shape:** 6 @@ -1466,7 +1164,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the gas. Measured relative to the gas centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ * - .. dropdown:: ``half_mass_radius_gas`` - :animate: fade-in * **HDF5 name:** ``HalfMassRadiusGas`` * **Shape:** 1 @@ -1477,7 +1174,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - Gas half mass radius. `[5] `_ * - .. dropdown:: ``kappa_corot_gas`` - :animate: fade-in * **HDF5 name:** ``KappaCorotGas`` * **Shape:** 1 @@ -1486,9 +1182,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for gas, relative to the HaloCentre and the centre of mass velocity of the gas. `[25] `_ + - Kappa-corot for gas, relative to the HaloCentre and the centre of mass velocity of the gas. `[24] `_ * - .. dropdown:: ``kinetic_energy_gas`` - :animate: fade-in * **HDF5 name:** ``KineticEnergyGas`` * **Shape:** 1 @@ -1497,9 +1192,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total kinetic energy of the gas, relative to the gas centre of mass velocity. `[26] `_ + - Total kinetic energy of the gas, relative to the gas centre of mass velocity. `[25] `_ * - .. dropdown:: ``projected_gas_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedGasInertiaTensorNoniterative`` * **Shape:** 3 @@ -1510,7 +1204,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. * - .. dropdown:: ``projected_gas_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedGasInertiaTensorReducedNoniterative`` * **Shape:** 3 @@ -1521,7 +1214,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Reduced 2D inertia tensor computed in a single iteration from the gas mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. * - .. dropdown:: ``maximum_dark_matter_circular_velocity`` - :animate: fade-in * **HDF5 name:** ``MaximumDarkMatterCircularVelocity`` * **Shape:** 1 @@ -1532,7 +1224,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Maximum circular velocity calculated using dark matter particles when accounting for particle softening lengths.. * - .. dropdown:: ``maximum_dark_matter_circular_velocity_radius`` - :animate: fade-in * **HDF5 name:** ``MaximumDarkMatterCircularVelocityRadius`` * **Shape:** 1 @@ -1543,7 +1234,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Radius at which MaximumDarkMatterCircularVelocity is reached. * - .. dropdown:: ``angular_momentum_stars`` - :animate: fade-in * **HDF5 name:** ``AngularMomentumStars`` * **Shape:** 3 @@ -1554,7 +1244,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total angular momentum of the stars, relative to the HaloCentre and stellar centre of mass velocity. `[9] `_ * - .. dropdown:: ``disc_to_total_stellar_mass_fraction`` - :animate: fade-in * **HDF5 name:** ``DiscToTotalStellarMassFraction`` * **Shape:** 1 @@ -1563,9 +1252,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of the total stellar mass that is in the disc. `[24] `_ + - Fraction of the total stellar mass that is in the disc. `[23] `_ * - .. dropdown:: ``kappa_corot_stars`` - :animate: fade-in * **HDF5 name:** ``KappaCorotStars`` * **Shape:** 1 @@ -1574,9 +1262,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for stars, relative to the HaloCentre and the centre of mass velocity of the stars. `[25] `_ + - Kappa-corot for stars, relative to the HaloCentre and the centre of mass velocity of the stars. `[24] `_ * - .. dropdown:: ``kinetic_energy_stars`` - :animate: fade-in * **HDF5 name:** ``KineticEnergyStars`` * **Shape:** 1 @@ -1585,9 +1272,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - - Total kinetic energy of the stars, relative to the stellar centre of mass velocity. `[26] `_ + - Total kinetic energy of the stars, relative to the stellar centre of mass velocity. `[25] `_ * - .. dropdown:: ``luminosity_weighted_mean_stellar_age`` - :animate: fade-in * **HDF5 name:** ``LuminosityWeightedMeanStellarAge`` * **Shape:** 1 @@ -1598,7 +1284,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - Luminosity weighted mean stellar age. The weight is the r band luminosity. * - .. dropdown:: ``mass_weighted_mean_stellar_age`` - :animate: fade-in * **HDF5 name:** ``MassWeightedMeanStellarAge`` * **Shape:** 1 @@ -1609,7 +1294,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - Mass weighted mean stellar age. * - .. dropdown:: ``projected_stellar_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedStellarInertiaTensorNoniterative`` * **Shape:** 3 @@ -1620,7 +1304,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. * - .. dropdown:: ``projected_stellar_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``ProjectedStellarInertiaTensorReducedNoniterative`` * **Shape:** 3 @@ -1631,7 +1314,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Reduced 2D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal value as (1,1), (2,2), (1,2). Only calculated when we have more than 20 particles. * - .. dropdown:: ``stellar_centre_of_mass`` - :animate: fade-in * **HDF5 name:** ``StellarCentreOfMass`` * **Shape:** 3 @@ -1642,7 +1324,6 @@ HYDRO Properties - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Centre of mass of stars. * - .. dropdown:: ``stellar_centre_of_mass_velocity`` - :animate: fade-in * **HDF5 name:** ``StellarCentreOfMassVelocity`` * **Shape:** 3 @@ -1653,7 +1334,6 @@ HYDRO Properties - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Centre of mass velocity of stars. * - .. dropdown:: ``stellar_inertia_tensor`` - :animate: fade-in * **HDF5 name:** ``StellarInertiaTensor`` * **Shape:** 6 @@ -1664,7 +1344,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``stellar_inertia_tensor_noniterative`` - :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorNoniterative`` * **Shape:** 6 @@ -1675,7 +1354,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``stellar_inertia_tensor_reduced`` - :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorReduced`` * **Shape:** 6 @@ -1686,7 +1364,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Reduced 3D inertia tensor computed iteratively from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``stellar_inertia_tensor_reduced_noniterative`` - :animate: fade-in * **HDF5 name:** ``StellarInertiaTensorReducedNoniterative`` * **Shape:** 6 @@ -1697,7 +1374,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - Reduced 3D inertia tensor computed in a single iteration from the stellar mass distribution, relative to the halo centre. Diagonal components and one off-diagonal triangle as (1,1), (2,2), (3,3), (1,2), (1,3), (2,3). Only calculated when we have more than 20 particles. * - .. dropdown:: ``stellar_initial_mass`` - :animate: fade-in * **HDF5 name:** ``StellarInitialMass`` * **Shape:** 1 @@ -1708,7 +1384,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - Total stellar initial mass. * - .. dropdown:: ``stellar_luminosity`` - :animate: fade-in * **HDF5 name:** ``StellarLuminosity`` * **Shape:** 9 @@ -1717,9 +1392,8 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` - - Total stellar luminosity in the 9 GAMA bands. `[27] `_ + - Total stellar luminosity in the 9 GAMA bands. `[26] `_ * - .. dropdown:: ``stellar_mass_fraction_in_iron`` - :animate: fade-in * **HDF5 name:** ``StellarMassFractionInIron`` * **Shape:** 1 @@ -1730,7 +1404,6 @@ HYDRO Properties - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total stellar mass fraction in iron. * - .. dropdown:: ``stellar_mass_fraction_in_oxygen`` - :animate: fade-in * **HDF5 name:** ``StellarMassFractionInOxygen`` * **Shape:** 1 @@ -1741,7 +1414,6 @@ HYDRO Properties - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total stellar mass fraction in oxygen. * - .. dropdown:: ``stellar_projected_velocity_dispersion`` - :animate: fade-in * **HDF5 name:** ``StellarProjectedVelocityDispersion`` * **Shape:** 1 @@ -1752,7 +1424,6 @@ HYDRO Properties - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the stars along the projection axis, relative to the stellar centre of mass velocity. `[10] `_ * - .. dropdown:: ``stellar_velocity_dispersion_matrix`` - :animate: fade-in * **HDF5 name:** ``StellarVelocityDispersionMatrix`` * **Shape:** 6 @@ -1763,7 +1434,6 @@ HYDRO Properties - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` - Mass-weighted velocity dispersion of the stars. Measured relative to the stellar centre of mass velocity. The order of the components of the dispersion tensor is XX YY ZZ XY XZ YZ. `[11] `_ * - .. dropdown:: ``angular_momentum_baryons`` - :animate: fade-in * **HDF5 name:** ``AngularMomentumBaryons`` * **Shape:** 3 @@ -1774,7 +1444,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` - Total angular momentum of baryons (gas and stars), relative to the HaloCentre and baryonic centre of mass velocity. `[9] `_ * - .. dropdown:: ``half_mass_radius_baryons`` - :animate: fade-in * **HDF5 name:** ``HalfMassRadiusBaryons`` * **Shape:** 1 @@ -1785,7 +1454,6 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - Baryonic (gas and stars) half mass radius. * - .. dropdown:: ``kappa_corot_baryons`` - :animate: fade-in * **HDF5 name:** ``KappaCorotBaryons`` * **Shape:** 1 @@ -1794,7 +1462,219 @@ HYDRO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - baryon - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. `[25] `_ + - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. `[24] `_ + +Copied Properties +----------------- + +.. list-table:: + :widths: 25 10 15 50 + :header-rows: 1 + + * - Name + - Filter + - Variations + - Description + * - .. dropdown:: ``input_halos_hbtplus.depth`` + + * **HDF5 name:** ``InputHalos/HBTplus/Depth`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Level of the subhalo in the merging hierarchy. + * - .. dropdown:: ``input_halos_hbtplus.descendant_track_id`` + + * **HDF5 name:** ``InputHalos/HBTplus/DescendantTrackId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - TrackId of the descendant of this subhalo. + * - .. dropdown:: ``input_halos_hbtplus.host_fofid`` + + * **HDF5 name:** ``InputHalos/HBTplus/HostFOFId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 + * - .. dropdown:: ``input_halos_hbtplus.last_max_mass`` + + * **HDF5 name:** ``InputHalos/HBTplus/LastMaxMass`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + - basic + - \- + - Maximum mass of this subhalo across its evolutionary history + * - .. dropdown:: ``input_halos_hbtplus.last_max_vmax_physical`` + + * **HDF5 name:** ``InputHalos/HBTplus/LastMaxVmaxPhysical`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{L} / \rm{t}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + - basic + - \- + - Largest value of maximum circular velocity of this subhalo across its evolutionary history + * - .. dropdown:: ``input_halos_hbtplus.nested_parent_track_id`` + + * **HDF5 name:** ``InputHalos/HBTplus/NestedParentTrackId`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - TrackId of the parent of this subhalo. + * - .. dropdown:: ``input_halos_hbtplus.snapshot_of_birth`` + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfBirth`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Snapshot when this subhalo was formed. + * - .. dropdown:: ``input_halos_hbtplus.snapshot_of_last_isolation`` + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastIsolation`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Latest snapshot when this subhalo was a central. -1 if the subhalo has always been a central. + * - .. dropdown:: ``input_halos_hbtplus.snapshot_of_last_max_mass`` + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxMass`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Latest snapshot when this subhalo had its maximum mass. + * - .. dropdown:: ``input_halos_hbtplus.snapshot_of_last_max_vmax`` + + * **HDF5 name:** ``InputHalos/HBTplus/SnapshotOfLastMaxVmax`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Latest snapshot when this subhalo had its largest maximum circular velocity. + * - .. dropdown:: ``input_halos_hbtplus.track_id`` + + * **HDF5 name:** ``InputHalos/HBTplus/TrackId`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Unique ID for this subhalo which is consistent across snapshots. + * - .. dropdown:: ``input_halos_fof.centres`` + + * **HDF5 name:** ``InputHalos/FOF/Centres`` + * **Shape:** 3 + * **Type:** float64 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** 1 pc accurate + - basic + - \- + - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``input_halos_fof.masses`` + + * **HDF5 name:** ``InputHalos/FOF/Masses`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{M}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + - basic + - \- + - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``input_halos_fof.radii`` + + * **HDF5 name:** ``InputHalos/FOF/Radii`` + * **Shape:** 1 + * **Type:** float32 + * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` + - basic + - \- + - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. + * - .. dropdown:: ``input_halos_fof.sizes`` + + * **HDF5 name:** ``InputHalos/FOF/Sizes`` + * **Shape:** 1 + * **Type:** uint64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + * - .. dropdown:: ``soap.descendant_index`` + + * **HDF5 name:** ``SOAP/DescendantIndex`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. `[27] `_ + * - .. dropdown:: ``soap.host_halo_index`` + + * **HDF5 name:** ``SOAP/HostHaloIndex`` + * **Shape:** 1 + * **Type:** int64 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Index (within the SOAP arrays) of the top level parent of this subhalo. -1 for hostless halos. + * - .. dropdown:: ``soap.included_in_reduced_snapshot`` + + * **HDF5 name:** ``SOAP/IncludedInReducedSnapshot`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Whether this halo is included in the reduced snapshot. + * - .. dropdown:: ``soap.progenitor_index`` + + * **HDF5 name:** ``SOAP/ProgenitorIndex`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. `[27] `_ + * - .. dropdown:: ``soap.subhalo_rank_by_bound_mass`` + + * **HDF5 name:** ``SOAP/SubhaloRankByBoundMass`` + * **Shape:** 1 + * **Type:** int32 + * **Units:** dimensionless + * **Compression:** no compression + - basic + - \- + - Ranking by mass of the halo within its parent field halo. Zero for the most massive halo in the field halo. Footnotes --------- @@ -1960,31 +1840,26 @@ Other velocity dispersion definitions can be derived from this general form. The .. _footnote-12: -**[12]** **The progenitor/descendant index** of a subhalo points to the subhalo in the previous/next snapshot which has the same HBT TrackId. Therefore this index can only be used to move up/down the main progenitor branch for a subhalo, it provides no information about subhalo mergers. - -.. _footnote-13: - -**[13]** **The oxygen and iron masses** are computed from +**[12]** **The oxygen and iron masses** are computed from ``SmoothedElementMassFractions`` and not ``ElementMassFractions``, since the latter were not output in the FLAMINGO snapshots. Metal mass fractions on the other hand are based on ``MetalMassFractions``. -.. _footnote-14: +.. _footnote-13: -**[14]** **The most massive black hole** is identified based on the BH subgrid mass (i.e. +**[13]** **The most massive black hole** is identified based on the BH subgrid mass (i.e. the same mass that goes into ``BlackHolesSubgridMass``). -.. _footnote-15: +.. _footnote-14: -**[15]** :math:`^{15`When distinguishing between star-forming and non star-forming gas and -computing the total star formation rate,}footnote:15 we have to be careful about the interpretation of the +**[14]** **When distinguishing between star-forming and non star-forming gas and computing the total star formation rate,** we have to be careful about the interpretation of the ``StarFormationRates`` dataset in the snapshots, since negative values in that dataset are used to store another quantity, the last scale factor when that particular gas particle was star-forming. Star-forming gas is then gas for which ``StarFormationRates`` is strictly positive, and the total star formation rate is the sum of only the strictly positive values. -.. _footnote-16: +.. _footnote-15: -**[16]** **The Compton y parameter** is computed as in McCarthy et al. (2017): +**[15]** **The Compton y parameter** is computed as in McCarthy et al. (2017): .. math:: @@ -1996,9 +1871,9 @@ particle :math:`i`, while :math:`V_i=m_i/_i` is the SPH volume element that turn within the inclusive sphere into a volume integral. Note that the snapshot already contains the individual :math:`y_i` values for the SPH particles, computed from the cooling tables during the simulation. -.. _footnote-17: +.. _footnote-16: -**[17]** **The Doppler B parameter** is computed as in Roncarelli et al. (2018): +**[16]** **The Doppler B parameter** is computed as in Roncarelli et al. (2018): .. math:: @@ -2025,17 +1900,17 @@ centre of the box if no lightcone was present. This choice is arbitrary and can :math:`x_{obs}` can in principle coincide with :math:`x_i`, we make sure :math:`v_{r,{obs},i}` is set to zero in this case to avoid division by zero. -.. _footnote-18: +.. _footnote-17: -**[18]** **The Compton Y-weighted temperature** is computed as +**[17]** **The Compton Y-weighted temperature** is computed as .. math:: T = \frac{1}{\sum_i y_i} \sum_i y_i T_i, -.. _footnote-19: +.. _footnote-18: -**[19]** **Core excised quantities** Excludes the inner region of the halo when computing the quantity. +**[18]** **Core excised quantities** Excludes the inner region of the halo when computing the quantity. It is only calculated for SO/500\_crit. Any core excised calculation only uses the particles for which @@ -2043,9 +1918,9 @@ for which 0.15 R_{500c} \leq \mathbf{r} \geq R_{500c} -.. _footnote-20: +.. _footnote-19: -**[20]** **The mass-weighted temperature** is computed as +**[19]** **The mass-weighted temperature** is computed as .. math:: @@ -2066,17 +1941,17 @@ and using the same parameters as used internally by SWIFT and with :math:`a` the current scale factor. -.. _footnote-21: +.. _footnote-20: -**[21]** **The spectroscopic-like temperature** is computed as +**[20]** **The spectroscopic-like temperature** is computed as .. math:: T_{SL} = \frac{\sum_i \rho_i m_i T_i^{1/4}}{\sum_i \rho_i m_i T_i^{-3/4}} -.. _footnote-22: +.. _footnote-21: -**[22]** **The thermal energy** of the gas is computed from the density and pressure, +**[21]** **The thermal energy** of the gas is computed from the density and pressure, since the internal energy was not output in the FLAMINGO snapshots. The relevant equation is .. math:: @@ -2085,22 +1960,20 @@ since the internal energy was not output in the FLAMINGO snapshots. The relevant with :math:`=5/3`. -.. _footnote-23: +.. _footnote-22: -**[23]** **X-ray quantities are** computed directly from the X-ray datasets in the +**[22]** **X-ray quantities are** computed directly from the X-ray datasets in the snapshot. They are either in the emission rest-frame, or in the observed-frame of a :math:`z=0` observer, using the redshift of the snapshot as the emission redshift . The three bands are always given in the same order as in the snapshot: -enumerate - eRosita low/soft (:math:`0.2-2.3`~keV) - eRosita high/hard (:math:`2.3-8`~keV) - ROSAT (:math:`0.5-2`~keV) -enumerate +#. eRosita low/soft (:math:`0.2-2.3` keV) +#. eRosita high/hard (:math:`2.3-8` keV) +#. ROSAT (:math:`0.5-2` keV) -.. _footnote-24: +.. _footnote-23: -**[24]** **DiscToTotal fractions** are computed as +**[23]** **DiscToTotal fractions** are computed as .. math:: @@ -2112,9 +1985,9 @@ e.g. if there are a small number of particles moving quickly in one direction, a a larger number of particles moving slowly in the opposite direction. In this case the larger number of particles would be marked as counter-rotating. -.. _footnote-25: +.. _footnote-24: -**[25]** **:math:`_{corot}`** is computed as in Correa et al. (2017): +**[24]** **Kappa-corot** is computed as in Correa et al. (2017): .. math:: @@ -2165,18 +2038,22 @@ and the orthogonal distance to the angular momentum vector given by where the angular momentum vector and the relative position and velocity are the same as above for consistency. +.. _footnote-25: + +**[25]** **The kinetic energy** is computed using the velocities relative to the centre of mass velocity of all the particles in the aperture. The Hubble flow is included when computing the velocities. + .. _footnote-26: -**[26]** **The kinetic energy** is computed using the velocities relative to the centre of mass velocity of all the particles in the aperture. The Hubble flow is included when computing the velocities. +**[26]** **Luminosities are given in the GAMA bands** and are always using the same order +as in the snapshots: u, g, r, i, z, Y, J, H, K. These are rest-frame dust-free +AB-luminosities of the star particles. These were computed using the BC03 +(GALAXEV) models convolved with different filter bands and interpolated in +log-log (f(log(Z), log(age)) = log(flux)) as used in the dust-free modelling +of Trayford et al. (2015). The luminosities are given in dimensionless +units. They have been divided by 3631 Jy already, i.e. they can be turned +into absolute AB-magnitudes (rest-frame absolute maggies) directly by +applying -2.5 log10(L) without additional corrections. .. _footnote-27: -**[27]** **Luminosities are given in the GAMA bands** and are always using the same order -as in the snapshots: u, g, r, i, z, Y, J, H, K. These are rest-frame dust-free - AB-luminosities of the star particles. These were computed using the BC03 - (GALAXEV) models convolved with different filter bands and interpolated in - log-log (f(log(Z), log(age)) = log(flux)) as used in the dust-free modelling - of Trayford et al. (2015). The luminosities are given in dimensionless - units. They have been divided by 3631 Jy already, i.e. they can be turned - into absolute AB-magnitudes (rest-frame absolute maggies) directly by - applying -2.5 log10(L) without additional corrections. +**[27]** **The progenitor/descendant index** of a subhalo points to the subhalo in the previous/next snapshot which has the same HBT TrackId. Therefore this index can only be used to move up/down the main progenitor branch for a subhalo, it provides no information about subhalo mergers. From e1ad44a73f73d4b9e54cd6271859a6aa49e83cc7 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Fri, 20 Feb 2026 12:25:52 +0100 Subject: [PATCH 06/14] Move page contents --- source/_static/custom.css | 11 +++++++++++ source/_templates/localtoc.html | 7 +++++++ source/conf.py | 7 +++++++ 3 files changed, 25 insertions(+) create mode 100644 source/_templates/localtoc.html diff --git a/source/_static/custom.css b/source/_static/custom.css index 339a275..7875258 100644 --- a/source/_static/custom.css +++ b/source/_static/custom.css @@ -112,3 +112,14 @@ nav img.flamingo_logo { vertical-align:middle; margin-right:0.7rem; } + +/* + Hide the page contents sidebar generated by piccolo, + since we display page contents in the left sidebar. +*/ +#right_sidebar { + display: none; +} +#show_right_sidebar { + display: none; +} diff --git a/source/_templates/localtoc.html b/source/_templates/localtoc.html new file mode 100644 index 0000000..1660024 --- /dev/null +++ b/source/_templates/localtoc.html @@ -0,0 +1,7 @@ + +{% if display_toc %} + +{% endif %} diff --git a/source/conf.py b/source/conf.py index a94b69e..8c305e1 100644 --- a/source/conf.py +++ b/source/conf.py @@ -20,6 +20,13 @@ templates_path = ['_templates'] exclude_patterns = [] +html_sidebars = { + "**": [ + "globaltoc.html", # Site contents + "localtoc.html", # Page contents + ] +} + # -- Options for HTML output ------------------------------------------------- From 3709c598493305a9182e24a6b0a24ad35f5f05c7 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Mon, 23 Feb 2026 17:56:47 +0100 Subject: [PATCH 07/14] Joop comments --- source/_static/custom.css | 4 ++-- source/soap/index.rst | 4 ++-- source/soap/particle_selection.rst | 30 ++++++++++++++++-------------- source/soap/property_filters.rst | 16 ++++++++-------- 4 files changed, 28 insertions(+), 26 deletions(-) diff --git a/source/_static/custom.css b/source/_static/custom.css index bfd9048..e6061e9 100644 --- a/source/_static/custom.css +++ b/source/_static/custom.css @@ -123,8 +123,8 @@ nav img.flamingo_logo { } /* - Hide the page contents sidebar generated by piccolo, - since we display page contents in the left sidebar. + Hide the page contents sidebar generated by the Piccolo sphinix + theme, since we display page contents in the left sidebar. */ #right_sidebar { display: none; diff --git a/source/soap/index.rst b/source/soap/index.rst index 1f325c2..0345c57 100644 --- a/source/soap/index.rst +++ b/source/soap/index.rst @@ -30,6 +30,6 @@ TODO: Remove membership files from the list above? Within FLAMINGO a halo corresponds to an overdensity of particles, originally found using the 3D FoF algorithm. Each halo contains one or more subhalos, which are a self-bound collection of particles identified by HBT-HERONS. Subhalos can be either centrals (each halo has a single central subhalo, - and the halo centre is defined as the most bound particle position of its central - subhalo), or satellites. + and the halo centre is defined as the position of the most bound + particle of its central subhalo), or satellites. diff --git a/source/soap/particle_selection.rst b/source/soap/particle_selection.rst index 092512f..57598c7 100644 --- a/source/soap/particle_selection.rst +++ b/source/soap/particle_selection.rst @@ -12,8 +12,8 @@ Bound subhalo Bound subhalo properties are computed for each subhalo identified by the subhalo finder, irrespective of whether it is a central or satellite subhalo (or even -satellite of satellite and so on). They include all particles that they -subhalo finder has determined are bound to the subhalo. Subhalo properties +a satellite of satellite, and so on). They include all particles that the +subhalo finder has determined to be bound to the subhalo. Subhalo properties are contained within the group ``bound_subhalo`` in the output file. .. _exclusive_sphere_description: @@ -25,7 +25,7 @@ Exclusive sphere properties are similar to bound subhalo quantities, but they include only the particles that are bound to the subhalo and also satisfy an additional radial cut (aperture). We use eight different aperture radii (10, 30, 50, 100, 300, -500, 1000, 3000 kpc), so that every subhalo has eight of these. +500, 1000, 3000 physical kpc), so that every subhalo has eight of these. Exclusive sphere properties are contained within a group ``exclusive_sphere_XXXkpc``, where ``XXX`` is the corresponding aperture radius. @@ -39,7 +39,8 @@ Inclusive sphere properties use the same physical aperture radii as the exclusive sphere quantities, but include all particles within the radius, regardless of their membership status. They are stored within a group -``inclusive_sphere_XXXkpc``. +``inclusive_sphere_XXXkpc``, where ``XXX`` is the corresponding aperture +radius. .. _projected_aperture_description: @@ -63,18 +64,19 @@ direction (``x``, ``y`` or ``z``). Spherical overdensity --------------------- -Spherical overdensities are fundamentally different from the other types in that their +Spherical overdensities are fundamentally different from the other +halo variations in that their aperture radius is determined from the density profile and so has a different value -for each halos. They always include all particles within a sphere +for each halo. They always include all particles within a sphere centred on the most bound particle, regardless of particle subhalo membership. The radius is either the radius at which the density reaches a certain target value (50 crit, 100 crit, 200 crit, 500 crit, 1000 crit, 2500 crit, 200 mean, -`Bryan & Norman (1998) `__. +`Bryan & Norman (1998) `__) +or a multiple of such a radius (5xR 500 crit). See `Spherical overdensity calculations`_ for details about how the radii are -calculated) or a multiple of such a radius (5xR 500 crit). -Details of the spherical overdensity calculation are given at the end of -this document. Spherical overdensities are only computed for centrals, +calculated. +Spherical overdensities are only computed for centrals, i.e. field halos. The inclusive sphere quantities are stored in a group ``spherical_overdensity_XXX``, where ``XXX`` are the target density values listed above. @@ -82,12 +84,12 @@ listed above. Input Halos ----------- -Some properties are directly copied from the original subhalo catalogue +Some properties are copied directly from the original subhalo catalogue that was passed to SOAP. These are stored in a three separate groups. ``input_halos`` contains the fundamental properties required for SOAP to run. ``input_halos_fof`` contains the FoF properties of the host of -each central subhalo. ``input_halos_hbtplus`` contains properties directly -copied from the HBT-HERONS catalogues. +each central subhalo. ``input_halos_hbtplus`` contains properties copied directly +from the HBT-HERONS catalogues. SOAP ---- @@ -100,7 +102,7 @@ computed from the SOAP output alone. Summary table ------------- -The table below lists all the groups in the output file which contain datasets. +The table below lists all the groups in the output file that contain datasets. Note that there will be three groups (``x``, ``y`` or ``z``) for each projected aperture variation. Each halo variation can have a filter applied to it. If a halo does not satisfy the filter then the variation diff --git a/source/soap/property_filters.rst b/source/soap/property_filters.rst index 8622e05..df7f920 100644 --- a/source/soap/property_filters.rst +++ b/source/soap/property_filters.rst @@ -8,12 +8,12 @@ subhalo to have at least 20 particles. However, even for those particle numbers, a lot of the properties computed by SOAP will be zero (e.g. the gas mass within a 10 kpc aperture), or have values that are outliers compared to the full halo population because of undersampling. -We can save a lot of disk space by filtering these out by applying -appropriate cuts. Filtering means setting the value of the property to +To save disk space and reduce the computation time, we filter these +out by applying appropriate cuts. Filtering means setting the +value of the property to zero, and HDF5 file compression then very effectively reduces the data storage required to store these properties, while the size of the arrays -that the end user sees remains unchanged. We also save on -computing time by not computing properties that are filtered out. +that the end user sees remains unchanged. Since different properties can have very different requirements, filtering is done in categories, where each category corresponds to a @@ -27,17 +27,17 @@ subhalo. **Gas quantities (gas)** use a filter based on the number of gas particles bound to the subhalo. -**DM quantities (dm)** use a filter based on the number of DM particles bound to the subhalo. +**Dark matter quantities (dm)** use a filter based on the number of dark matter particles bound to the subhalo. **Stellar quantities (star)** use a filter based on the number of star particles bound to the subhalo. **Baryon quantities (baryon)** use a filter based on the number of gas and star particles bound to the subhalo. -Note that there are no quantities that use a BH or neutrino particle +Note that there are no quantities that use a black hole or neutrino particle number filter. -The particle number thresholds are set in the parameter file. The -different categories are summarised in the table below. +The criteria defining +the different categories are listed in the table below. +---------+-----------------------------------------------------------------------+ | Name | Criterion | From 82662f21dfab400fbd373765f933a0933a1b8f24 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Tue, 24 Feb 2026 12:20:32 +0100 Subject: [PATCH 08/14] Human units --- source/soap/property_table.rst | 352 +++++++++++++++------------------ 1 file changed, 160 insertions(+), 192 deletions(-) diff --git a/source/soap/property_table.rst b/source/soap/property_table.rst index 23038d7..e4e0195 100644 --- a/source/soap/property_table.rst +++ b/source/soap/property_table.rst @@ -1,10 +1,10 @@ -SOAP property table -=================== +SOAP properties table +===================== -The tables below list the properties available within the SOAP catalogues. The first table contains the properties within the ``input_halos`` group. +The tables below list the (sub)halo properties available within the SOAP catalogues. The first table contains the properties within the ``input_halos`` group. The second table contains the properties which are calculated for both DMO and HYDRO simulations. The third table contains the properties which are only calculated for the HYDRO simulations. -The final table contains the datasets copied over from the HBT-HERONS and FOF catalogues. +The final table contains the datasets copied over from the HBT-HERONS and FoF catalogues. Within each table the properties are sorted based on their filters. The first column gives the name of the property when opened using the `swiftsimio library `_. Clicking on each property name will open a dropdown box, which contains information about the dataset within the HDF5 file. The second column gives the filter applied to that property, as descibred in :doc:`property_filters`. The third column indicates the halo variations for which this property is available (green if the property is computed for a certain variation, red if not). The variations are as follows: @@ -18,7 +18,7 @@ The first column gives the name of the property when opened using the `swiftsimi The final column gives a description of the property. Certain properties also contain a link to a footnote at the bottom of this page which gives a full description of how they were calculated. -Input Halo Properties +Input halo properties --------------------- .. list-table:: @@ -44,11 +44,11 @@ Input Halo Properties * **HDF5 name:** ``InputHalos/HaloCentre`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - basic - \- - - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For VR and HBTplus this is equal to the position of the most bound particle in the subhalo. + - The centre of the subhalo as given by the halo finder. Used as reference for all relative positions. For HBT-HERONS this is equal to the position of the most bound particle in the subhalo. * - .. dropdown:: ``input_halos.is_central`` * **HDF5 name:** ``InputHalos/IsCentral`` @@ -70,8 +70,8 @@ Input Halo Properties - \- - Total number of particles bound to the subhalo. -DMO Properties --------------- +Dark matter only properties +--------------------------- .. list-table:: :widths: 25 10 15 50 @@ -86,7 +86,7 @@ DMO Properties * **HDF5 name:** ``CentreOfMass`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -96,7 +96,7 @@ DMO Properties * **HDF5 name:** ``CentreOfMassVelocity`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** 0.1 km/s accurate - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -126,7 +126,7 @@ DMO Properties * **HDF5 name:** ``DarkMatterMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -136,7 +136,7 @@ DMO Properties * **HDF5 name:** ``EncloseRadius`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -146,7 +146,7 @@ DMO Properties * **HDF5 name:** ``MaximumCircularVelocity`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -156,7 +156,7 @@ DMO Properties * **HDF5 name:** ``MaximumCircularVelocityRadius`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -166,7 +166,7 @@ DMO Properties * **HDF5 name:** ``MaximumCircularVelocityRadiusUnsoftened`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -176,7 +176,7 @@ DMO Properties * **HDF5 name:** ``MaximumCircularVelocityUnsoftened`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -186,7 +186,7 @@ DMO Properties * **HDF5 name:** ``NoiseSuppressedNeutrinoMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -206,7 +206,7 @@ DMO Properties * **HDF5 name:** ``RawNeutrinoMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -216,7 +216,7 @@ DMO Properties * **HDF5 name:** ``SORadius`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -226,7 +226,7 @@ DMO Properties * **HDF5 name:** ``TotalMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -236,7 +236,7 @@ DMO Properties * **HDF5 name:** ``HalfMassRadiusTotal`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -250,7 +250,7 @@ DMO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of mass that is bound to a satellite outside this FOF group. `[6] `_ + - Fraction of mass that is bound to a satellite outside this FoF group. `[6] `_ * - .. dropdown:: ``mass_fraction_satellites`` * **HDF5 name:** ``MassFractionSatellites`` @@ -260,7 +260,7 @@ DMO Properties * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` - - Fraction of mass that is bound to a satellite in the same FOF group. `[6] `_ + - Fraction of mass that is bound to a satellite in the same FoF group. `[6] `_ * - .. dropdown:: ``spin_parameter`` * **HDF5 name:** ``SpinParameter`` @@ -276,7 +276,7 @@ DMO Properties * **HDF5 name:** ``TotalInertiaTensor`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -286,7 +286,7 @@ DMO Properties * **HDF5 name:** ``TotalInertiaTensorNoniterative`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -316,7 +316,7 @@ DMO Properties * **HDF5 name:** ``AngularMomentumDarkMatter`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \rm{Mpc} \cdot \rm{M}_\odot \cdot \rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -326,7 +326,7 @@ DMO Properties * **HDF5 name:** ``DarkMatterInertiaTensor`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -336,7 +336,7 @@ DMO Properties * **HDF5 name:** ``DarkMatterInertiaTensorNoniterative`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -366,7 +366,7 @@ DMO Properties * **HDF5 name:** ``DarkMatterProjectedVelocityDispersion`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -376,7 +376,7 @@ DMO Properties * **HDF5 name:** ``DarkMatterVelocityDispersionMatrix`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Units:** :math:`\rm{km}^{2} / \rm{s}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -386,14 +386,14 @@ DMO Properties * **HDF5 name:** ``HalfMassRadiusDarkMatter`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` - Dark matter half mass radius. `[5] `_ -HYDRO Properties ----------------- +Hydrodynamical properties +------------------------- .. list-table:: :widths: 25 10 15 50 @@ -408,7 +408,7 @@ HYDRO Properties * **HDF5 name:** ``BlackHolesDynamicalMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -418,7 +418,7 @@ HYDRO Properties * **HDF5 name:** ``BlackHolesSubgridMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -448,7 +448,7 @@ HYDRO Properties * **HDF5 name:** ``GasMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -468,7 +468,7 @@ HYDRO Properties * **HDF5 name:** ``HalfMassRadiusStars`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` @@ -488,7 +488,7 @@ HYDRO Properties * **HDF5 name:** ``MostMassiveBlackHoleMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -538,7 +538,7 @@ HYDRO Properties * **HDF5 name:** ``StarFormationRate`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -558,7 +558,7 @@ HYDRO Properties * **HDF5 name:** ``StellarMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -588,7 +588,7 @@ HYDRO Properties * **HDF5 name:** ``ComptonY`` * **Shape:** 1 * **Type:** float64 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -598,7 +598,7 @@ HYDRO Properties * **HDF5 name:** ``ComptonYWithoutRecentAGNHeating`` * **Shape:** 1 * **Type:** float64 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -608,7 +608,7 @@ HYDRO Properties * **HDF5 name:** ``DopplerB`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot` + * **Units:** :math:`a` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -618,7 +618,7 @@ HYDRO Properties * **HDF5 name:** ``GasComptonYTemperature`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -628,7 +628,7 @@ HYDRO Properties * **HDF5 name:** ``GasComptonYTemperatureCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -638,7 +638,7 @@ HYDRO Properties * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -648,7 +648,7 @@ HYDRO Properties * **HDF5 name:** ``GasComptonYTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -678,7 +678,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperature`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -688,7 +688,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -698,7 +698,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutCoolGas`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -708,7 +708,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeating`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -718,7 +718,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutCoolGasAndRecentAGNHeatingCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -728,7 +728,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutCoolGasCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -738,7 +738,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -748,7 +748,7 @@ HYDRO Properties * **HDF5 name:** ``GasTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -758,7 +758,7 @@ HYDRO Properties * **HDF5 name:** ``HotGasMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -768,7 +768,7 @@ HYDRO Properties * **HDF5 name:** ``MostMassiveBlackHoleAccretionRate`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -788,7 +788,7 @@ HYDRO Properties * **HDF5 name:** ``MostMassiveBlackHolePosition`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -798,7 +798,7 @@ HYDRO Properties * **HDF5 name:** ``MostMassiveBlackHoleVelocity`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -808,7 +808,7 @@ HYDRO Properties * **HDF5 name:** ``ProjectedTotalInertiaTensorNoniterative`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -828,7 +828,7 @@ HYDRO Properties * **HDF5 name:** ``SpectroscopicLikeTemperature`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -838,7 +838,7 @@ HYDRO Properties * **HDF5 name:** ``SpectroscopicLikeTemperatureCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -848,7 +848,7 @@ HYDRO Properties * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeating`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -858,7 +858,7 @@ HYDRO Properties * **HDF5 name:** ``SpectroscopicLikeTemperatureWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{T}` + * **Units:** :math:`\rm{K}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -868,7 +868,7 @@ HYDRO Properties * **HDF5 name:** ``StarFormingGasMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` @@ -898,7 +898,7 @@ HYDRO Properties * **HDF5 name:** ``ThermalEnergyGas`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{2}}{\rm{s}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -908,7 +908,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosity`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -918,7 +918,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -928,7 +928,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityInRestframe`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -938,7 +938,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityInRestframeCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -948,7 +948,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeating`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -958,7 +958,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -968,7 +968,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeating`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -978,7 +978,7 @@ HYDRO Properties * **HDF5 name:** ``XRayLuminosityWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{3}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{3}}{\rm{Mpc} \cdot \rm{s}^{3}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -988,7 +988,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosity`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -998,7 +998,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1008,7 +1008,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityInRestframe`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1018,7 +1018,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityInRestframeCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1028,7 +1028,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeating`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1038,7 +1038,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityInRestframeWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1048,7 +1048,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeating`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1058,7 +1058,7 @@ HYDRO Properties * **HDF5 name:** ``XRayPhotonLuminosityWithoutRecentAGNHeatingCoreExcision`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`1 / \rm{t}` + * **Units:** :math:`\frac{\rm{km}}{\rm{Mpc} \cdot \rm{s}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - general - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1068,7 +1068,7 @@ HYDRO Properties * **HDF5 name:** ``AngularMomentumGas`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \rm{Mpc} \cdot \rm{M}_\odot \cdot \rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1088,7 +1088,7 @@ HYDRO Properties * **HDF5 name:** ``GasCentreOfMass`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1098,7 +1098,7 @@ HYDRO Properties * **HDF5 name:** ``GasCentreOfMassVelocity`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** 0.1 km/s accurate - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1108,7 +1108,7 @@ HYDRO Properties * **HDF5 name:** ``GasInertiaTensor`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1118,7 +1118,7 @@ HYDRO Properties * **HDF5 name:** ``GasInertiaTensorNoniterative`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1148,7 +1148,7 @@ HYDRO Properties * **HDF5 name:** ``GasProjectedVelocityDispersion`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -1158,7 +1158,7 @@ HYDRO Properties * **HDF5 name:** ``GasVelocityDispersionMatrix`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Units:** :math:`\rm{km}^{2} / \rm{s}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1168,7 +1168,7 @@ HYDRO Properties * **HDF5 name:** ``HalfMassRadiusGas`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` @@ -1188,7 +1188,7 @@ HYDRO Properties * **HDF5 name:** ``KineticEnergyGas`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{2}}{\rm{s}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1198,7 +1198,7 @@ HYDRO Properties * **HDF5 name:** ``ProjectedGasInertiaTensorNoniterative`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - gas - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -1218,7 +1218,7 @@ HYDRO Properties * **HDF5 name:** ``MaximumDarkMatterCircularVelocity`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1228,7 +1228,7 @@ HYDRO Properties * **HDF5 name:** ``MaximumDarkMatterCircularVelocityRadius`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - dm - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1238,7 +1238,7 @@ HYDRO Properties * **HDF5 name:** ``AngularMomentumStars`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \rm{Mpc} \cdot \rm{M}_\odot \cdot \rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1268,7 +1268,7 @@ HYDRO Properties * **HDF5 name:** ``KineticEnergyStars`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2} \cdot \rm{M}}{\rm{t}^{2}}` + * **Units:** :math:`10^{10}\ \frac{\rm{M}_\odot \cdot \rm{km}^{2}}{\rm{s}^{2}}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1278,7 +1278,7 @@ HYDRO Properties * **HDF5 name:** ``LuminosityWeightedMeanStellarAge`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{t}` + * **Units:** :math:`\rm{Mpc} \cdot \rm{s} / \rm{km}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` @@ -1288,7 +1288,7 @@ HYDRO Properties * **HDF5 name:** ``MassWeightedMeanStellarAge`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{t}` + * **Units:** :math:`\rm{Mpc} \cdot \rm{s} / \rm{km}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` @@ -1298,7 +1298,7 @@ HYDRO Properties * **HDF5 name:** ``ProjectedStellarInertiaTensorNoniterative`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -1318,7 +1318,7 @@ HYDRO Properties * **HDF5 name:** ``StellarCentreOfMass`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1328,7 +1328,7 @@ HYDRO Properties * **HDF5 name:** ``StellarCentreOfMassVelocity`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** 0.1 km/s accurate - star - :unavail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1338,7 +1338,7 @@ HYDRO Properties * **HDF5 name:** ``StellarInertiaTensor`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1348,7 +1348,7 @@ HYDRO Properties * **HDF5 name:** ``StellarInertiaTensorNoniterative`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2}` + * **Units:** :math:`\rm{Mpc}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :avail:`SO` @@ -1378,7 +1378,7 @@ HYDRO Properties * **HDF5 name:** ``StellarInitialMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :avail:`SO` @@ -1418,7 +1418,7 @@ HYDRO Properties * **HDF5 name:** ``StellarProjectedVelocityDispersion`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :unavail:`BS` :unavail:`ES` :unavail:`IS` :avail:`EP` :unavail:`SO` @@ -1428,7 +1428,7 @@ HYDRO Properties * **HDF5 name:** ``StellarVelocityDispersionMatrix`` * **Shape:** 6 * **Type:** float32 - * **Units:** :math:`\frac{\rm{L}^{2}}{\rm{t}^{2}}` + * **Units:** :math:`\rm{km}^{2} / \rm{s}^{2}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - star - :avail:`BS` :unavail:`ES` :unavail:`IS` :unavail:`EP` :unavail:`SO` @@ -1438,7 +1438,7 @@ HYDRO Properties * **HDF5 name:** ``AngularMomentumBaryons`` * **Shape:** 3 * **Type:** float32 - * **Units:** :math:`\rm{L}^{2} \cdot \rm{M} / \rm{t}` + * **Units:** :math:`10^{10}\ \rm{Mpc} \cdot \rm{M}_\odot \cdot \rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - baryon - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :avail:`SO` @@ -1448,7 +1448,7 @@ HYDRO Properties * **HDF5 name:** ``HalfMassRadiusBaryons`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - baryon - :avail:`BS` :avail:`ES` :avail:`IS` :avail:`EP` :unavail:`SO` @@ -1464,7 +1464,7 @@ HYDRO Properties - :avail:`BS` :avail:`ES` :avail:`IS` :unavail:`EP` :unavail:`SO` - Kappa-corot for baryons (gas and stars), relative to the HaloCentre and the centre of mass velocity of the baryons. `[24] `_ -Copied Properties +Copied properties ----------------- .. list-table:: @@ -1504,13 +1504,13 @@ Copied Properties * **Compression:** no compression - basic - \- - - ID of the host FOF halo of this subhalo. Hostless halos have HostFOFId == -1 + - ID of the host FoF halo of this subhalo. Hostless halos have HostFOFId == -1 * - .. dropdown:: ``input_halos_hbtplus.last_max_mass`` * **HDF5 name:** ``InputHalos/HBTplus/LastMaxMass`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - \- @@ -1520,7 +1520,7 @@ Copied Properties * **HDF5 name:** ``InputHalos/HBTplus/LastMaxVmaxPhysical`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{L} / \rm{t}` + * **Units:** :math:`\rm{km} / \rm{s}` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - \- @@ -1590,31 +1590,21 @@ Copied Properties * **HDF5 name:** ``InputHalos/FOF/Centres`` * **Shape:** 3 * **Type:** float64 - * **Units:** :math:`\rm{a} \cdot \rm{L}` + * **Units:** :math:`a \cdot \rm{Mpc}` * **Compression:** 1 pc accurate - basic - \- - - Centre of mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. + - Centre of mass of the host FoF halo of this subhalo. Zero for satellite and hostless subhalos. * - .. dropdown:: ``input_halos_fof.masses`` * **HDF5 name:** ``InputHalos/FOF/Masses`` * **Shape:** 1 * **Type:** float32 - * **Units:** :math:`\rm{M}` + * **Units:** :math:`10^{10}\ \rm{M}_\odot` * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - basic - \- - - Mass of the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - * - .. dropdown:: ``input_halos_fof.radii`` - - * **HDF5 name:** ``InputHalos/FOF/Radii`` - * **Shape:** 1 - * **Type:** float32 - * **Units:** :math:`\rm{a} \cdot \rm{L}` - * **Compression:** :math:`1.36693{\rm{}e}10 \rightarrow{} 1.367{\rm{}e}10` - - basic - - \- - - Radius of the particle furthest from the FOF centre of mass. Zero for satellite and hostless subhalos. Missing for older runs. + - Mass of the host FoF halo of this subhalo. Zero for satellite and hostless subhalos. * - .. dropdown:: ``input_halos_fof.sizes`` * **HDF5 name:** ``InputHalos/FOF/Sizes`` @@ -1624,17 +1614,7 @@ Copied Properties * **Compression:** no compression - basic - \- - - Number of particles in the host FOF halo of this subhalo. Zero for satellite and hostless subhalos. - * - .. dropdown:: ``soap.descendant_index`` - - * **HDF5 name:** ``SOAP/DescendantIndex`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - basic - - \- - - Index (within the next snapshot SOAP arrays) of the main descendant of this subhalo. `[27] `_ + - Number of particles in the host FoF halo of this subhalo. Zero for satellite and hostless subhalos. * - .. dropdown:: ``soap.host_halo_index`` * **HDF5 name:** ``SOAP/HostHaloIndex`` @@ -1655,16 +1635,6 @@ Copied Properties - basic - \- - Whether this halo is included in the reduced snapshot. - * - .. dropdown:: ``soap.progenitor_index`` - - * **HDF5 name:** ``SOAP/ProgenitorIndex`` - * **Shape:** 1 - * **Type:** int32 - * **Units:** dimensionless - * **Compression:** no compression - - basic - - \- - - Index (within the previous snapshot SOAP arrays) of the main progenitor of this subhalo. `[27] `_ * - .. dropdown:: ``soap.subhalo_rank_by_bound_mass`` * **HDF5 name:** ``SOAP/SubhaloRankByBoundMass`` @@ -1682,22 +1652,21 @@ Footnotes .. _footnote-1: **[1]** **The centre of mass and centre of mass velocity** are computed using all -particle types except neutrinos (since neutrinos can never be bound to a halo). +particle types except neutrinos. .. _footnote-2: **[2]** **The concentration** is computed using the -method described in Wang et al. (2023), but using a fifth order polynomial fit to -the R1-concentration relation for :math:`1`_, but using a fifth order polynomial fit to +the R1-concentration relation for :math:`1`_: .. math:: @@ -1776,14 +1746,14 @@ The reduced inertia tensor is calculated as where :math:`r_k` is the radial distance of the particle. -We do not calculate the inertia tensor if there are less than 20 particles within the initial sphere. +We do not calculate the inertia tensor if there are fewer than 20 particles within the initial sphere. -For when calculating the inertia tensor for a bound subhalo we use a sphere with a radius equal to 10 times the half mass radius of the particles being considered. +When calculating the inertia tensor for a bound subhalo we use a sphere with a radius equal to the half mass radius of the particles being considered. .. _footnote-9: -**[9]** **The angular momentum** of gas, dark matter and stars is computed relative to -the halo centre (cop) and the centre of mass velocity of that particular component, and not to the +**[9]** **The angular momentum** of gas, dark matter, or stars is computed relative to +the halo centre and the centre of mass velocity of that particular component, and not to the total centre of mass velocity. The full expression is .. math:: @@ -1806,13 +1776,13 @@ where \vec{v}_{\rm{}com,comp} = \frac{\sum_{i={\rm{}comp}} m_i \vec{v}_i}{\sum_{i={\rm{}comp}} m_i}. -For FLAMINGO, we also compute the angular momentum for baryons, where the sum is then over both gas and star +We also compute the angular momentum for baryons, where the sum is then over both gas and star particles. .. _footnote-10: **[10]** **The projected velocity dispersion** is computed along the projection axis. -Along this axis, the velocity is a 1D quantity, so that the velocity dispersion is simply 1 value. +Along this axis the velocity is a 1D quantity, so the velocity dispersion is simply a scalar. .. _footnote-11: @@ -1823,8 +1793,8 @@ Along this axis, the velocity is a 1D quantity, so that the velocity dispersion V_{\rm{}disp,comp} = \frac{1}{\sum_{i={\rm{}comp}} m_i} \sum_{i={\rm{}comp}} m_i \vec{v}_{{\rm{}comp},r,i}\vec{v}_{{\rm{}comp},r,i}, where we compute the relative velocity as before, i.e. w.r.t. the centre of mass velocity of the particular -component of interest. While it is strictly speaking a :math:`33` matrix, there are only 6 independent -components. We use the following convention to output those 6 components as a 6 element array: +component of interest. While it is strictly speaking a :math:`3 3` matrix, there are only 6 independent +components. We use the following convention to output those 6 components as a 6-element array: .. math:: @@ -1846,8 +1816,7 @@ the FLAMINGO snapshots. Metal mass fractions on the other hand are based on ``Me .. _footnote-13: -**[13]** **The most massive black hole** is identified based on the BH subgrid mass (i.e. -the same mass that goes into ``BlackHolesSubgridMass``). +**[13]** **The most massive black hole** is identified based using subgrid masses of the black holes. .. _footnote-14: @@ -1859,7 +1828,7 @@ sum of only the strictly positive values. .. _footnote-15: -**[15]** **The Compton y parameter** is computed as in McCarthy et al. (2017): +**[15]** **The Compton y parameter** is computed as in `McCarthy et al. (2017) `_: .. math:: @@ -1869,11 +1838,11 @@ where :math:`d_A(z)` is the angular diameter distance, :math:`_T` is the Thomson Boltzmann constant. :math:`n_{e,i}` and :math:`T_{e,i}` are the electron number density and electron temperature for gas particle :math:`i`, while :math:`V_i=m_i/_i` is the SPH volume element that turns the sum over all particles :math:`i` within the inclusive sphere into a volume integral. Note that the snapshot already contains the individual -:math:`y_i` values for the SPH particles, computed from the cooling tables during the simulation. +:math:`y_i` values for the SPH particles. .. _footnote-16: -**[16]** **The Doppler B parameter** is computed as in Roncarelli et al. (2018): +**[16]** **The Doppler B parameter** is computed as in `Roncarelli et al. (2018) `_: .. math:: @@ -1910,13 +1879,13 @@ zero in this case to avoid division by zero. .. _footnote-18: -**[18]** **Core excised quantities** Excludes the inner region of the halo when computing the quantity. -It is only calculated for SO/500\_crit. Any core excised calculation only uses the particles +**[18]** **Core excised quantities** exclude the inner region of the halo when computing the quantity. +They are only calculated for 500 crit. Any core excised calculation only uses the particles for which .. math:: - 0.15 R_{500c} \leq \mathbf{r} \geq R_{500c} + 0.15 R_{500c} \leq \mathbf{r} \leq R_{500c} .. _footnote-19: @@ -1931,15 +1900,16 @@ that satisfy .. math:: - \verb+LastAGNFeedbackScaleFactors+_i \geq{} a - 15{\rm{}Myr} + 0.1 \Delta{}T_{\rm{}AGN} \leq{} T_i \leq{} 10^{0.3} \Delta{}T_{\rm{}AGN}, and .. math:: - 0.1 \Delta{}T_{\rm{}AGN} \leq{} T_i \leq{} 10^{0.3} \Delta{}T_{\rm{}AGN}, + \verb+LastAGNFeedbackScaleFactors+_i \geq{} a(t - 15{\rm{}Myr}) -using the same parameters as used internally by SWIFT and with :math:`a` the current scale factor. +where :math:` T_{AGN}` is the same value as used internally by SWIFT, :math:`t` is the cosmic time, and :math:`a()` +gives the scale factor as a function of time. .. _footnote-20: @@ -1967,8 +1937,8 @@ snapshot. They are either in the emission rest-frame, or in the observed-frame o the redshift of the snapshot as the emission redshift . The three bands are always given in the same order as in the snapshot: -#. eRosita low/soft (:math:`0.2-2.3` keV) -#. eRosita high/hard (:math:`2.3-8` keV) +#. eROSITA low/soft (:math:`0.2-2.3` keV) +#. eROSITA high/hard (:math:`2.3-8` keV) #. ROSAT (:math:`0.5-2` keV) .. _footnote-23: @@ -1983,11 +1953,12 @@ where :math:`M_{corot}` is the sum of the mass of the counter-rotating particles and :math:`M_{Tot}` is the total mass of particles. This can lead to negative values, e.g. if there are a small number of particles moving quickly in one direction, and a larger number of particles moving slowly in the opposite direction. In this case -the larger number of particles would be marked as counter-rotating. +the larger number of particles could be marked as counter-rotating since the net +angular momentum is dominated by the small number of rapidly rotating particles. .. _footnote-24: -**[24]** **Kappa-corot** is computed as in Correa et al. (2017): +**[24]** **Kappa-corot** is computed as in `Correa et al. (2017) `_: .. math:: @@ -2033,7 +2004,7 @@ and the orthogonal distance to the angular momentum vector given by .. math:: - R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right), + R_i^2 = |\vec{x}_{r,i}|^2 - \left(\vec{x}_{r,i} \frac{\vec{L}_{\rm{}comp}}{|\vec{L}_{\rm{}comp}|}\right)^2, where the angular momentum vector and the relative position and velocity are the same as above for consistency. @@ -2044,9 +2015,9 @@ consistency. .. _footnote-26: -**[26]** **Luminosities are given in the GAMA bands** and are always using the same order +**[26]** **Luminosities are given in the GAMA bands** and always using the same order as in the snapshots: u, g, r, i, z, Y, J, H, K. These are rest-frame dust-free -AB-luminosities of the star particles. These were computed using the BC03 +AB-luminosities of the star particles. These were computed using the `Bruzual \& Charlot 2003 `_ (GALAXEV) models convolved with different filter bands and interpolated in log-log (f(log(Z), log(age)) = log(flux)) as used in the dust-free modelling of Trayford et al. (2015). The luminosities are given in dimensionless @@ -2054,6 +2025,3 @@ units. They have been divided by 3631 Jy already, i.e. they can be turned into absolute AB-magnitudes (rest-frame absolute maggies) directly by applying -2.5 log10(L) without additional corrections. -.. _footnote-27: - -**[27]** **The progenitor/descendant index** of a subhalo points to the subhalo in the previous/next snapshot which has the same HBT TrackId. Therefore this index can only be used to move up/down the main progenitor branch for a subhalo, it provides no information about subhalo mergers. From 6e6252d447a4d3fd051d773de5344c2426269aac Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Tue, 24 Feb 2026 14:42:29 +0100 Subject: [PATCH 09/14] Update description of SO calculation --- source/soap/images/image4.png | Bin 142172 -> 0 bytes source/soap/images/image7.png | Bin 146975 -> 0 bytes source/soap/particle_selection.rst | 128 +++++++++-------------------- 3 files changed, 38 insertions(+), 90 deletions(-) delete mode 100644 source/soap/images/image4.png delete mode 100644 source/soap/images/image7.png diff --git a/source/soap/images/image4.png b/source/soap/images/image4.png deleted file mode 100644 index fe29bd930dbc5058527b15f87aa37c7b64e4637c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142172 zcmeEuby$@B*6v_n5@H~&QYs}<0uqXVfPm5sf^A&oQ)A>E+}NO!k1LrFJh zJ%jK2?!C`G*LA-Czq!1GnR((DYu)Q!_gW9{A4`eiohChvLZR@)9zKvkp-#A?P{*TB z;=(88ej2^-DtVYLW)w3yay%YJNXB8Z_I>a zUUG^w`3VYLKK=fbhv5CU9~)>^cE3r|j8{CmZMAp%(}poqSKTgt_f%LH2Sc~>l$|G=EGHM&o2{>^ju>Q1a;|Z=QCF(6LNHE+c7r-t zUQ6(s_JKg!=>NA7ej{oT6tI9h=Q)+y&a0@qZcSX0KR-E}5+^XwwN&O!TG9_Yv0QiaUO6cw%?;YJtmQCy{)mu1?x-`1Ng8F!2=x|_!WMusdYZJkm z>6tn;DsqyadHt@(i`uxFH3Z7cT4b-ma38pzInX#x*sI1I{Ncj~W=9GuMby`mQEoVb ziQf$u#Q*ZD>hbaMr0D4A%IEq0Y5x91XKo&Wldqlm%g-*4S=<@7xWhxv!o(!6p%JJTIc=NZ&om4A=Q%ac!l#5U3{Xc;-iT^Wd`p*cmx;eO z)&I$#ffU%E@&2`lKpg*=pY@yKG8T#S|Oflp|&NJ@RO6{WLxA<~IKjoxo7S^Dj?h zhq{OCB?`4ld^D9AC1~HjB3x>=rTfH}u4T%}$|(?j_p3|6ypkiq-d2BpD@KDY$b~SV z5aXpwb!g&IA~1Yk?|8_Q(lynHAJzh@x>TzvZiX$9)Y`VY;zhVc^FY8q1Hj@P{ECuE*HdGgar z!6fCR!&{oP>nU2`bSQWJH@LUl-2>#ijfeeksg-w(NOSVH14Q)cNNQIkJQY(i=62OA z^Db2N-$brsP5;K=5o}Px!+QFSFW(QSyz}0 zO`hia-RK+}GMJJP5VR*dHFaq*K*l2sfdv%myI1At$I8)Zi;|oiIR^)ad$mgWd^r*V zc0c={Bzv$~dFve!{E0RGQXB@U}?k z=w?D?&%8iSHI@>ZW1Hk6S@-V z#0C=S+fo|(X5F|-S7$&6pSA=VpwFNP`H6JW9O|`*@Q@?@Drc(F$_LLD}AJeA+;ash_@|FCZ`r1=|C|zPiF5&)g#IjIM zPVPdR*Y49-UYzcGiO?~dZ5knR%$Q*DfsY? z2V&{t1Z2-R7uznxIv@wS|7>X)4@|5wVarQzrM9#3#2U)TeOQQNaTd-&y(POQe;uh+ zwB;m~o!{xN1}Bb?BVOho7LqE)Z77mO=l!sKx`BpT`S7CJj$2b!+A&)N$gXw$Vv#}N z6uT`yq~<&XuyfAkmt=z8lV0P+%^*JVdG4ZC_SLDF4}-4Lh2uG~1oBprHd zMc8U|6MyPuPuA+dr-wJs)0TY`5`K*h8!p^`1_+pZ>@AUy^_oPkAMqXwCGlAARH0S| z-^|V5zOaKrTtx8LbDjuGo(LooEJW*H{Ii=b1I#PS+1|Ry`G}QYxq``43~Bt^3*lqb z{hA5OSdEO zVprky+y6j_=CIJPFW+|=)B4X9T};EJ|MA+y1g>)BF=D`JUuw}sBEGE+@ZUfqlepJB zwYg$)WjyWOz_ZA`MxPmuD(%fzJO|u=^K5r)L66D8HAQ(WJLlP?QhXaBE@9K=?itkg zAr#jCAV^DChLxrTjblOKnvl_bFNGm)u^Z3VKTehumWo5@3Lt-y|KOCQ7JQ}jHvKfJoc70qTI(}CbT@{Y zR1Xnj!;B$`FHbVjlL1bG|FR3}M ziqua^wn+HA7e6zqQOdCRJ_qeLc$$4dcj_r&{E3M)Log#i9s%Ar#BcrEvJmJ4Y)xp`}S`k%gi` z{6j0dHy}8|gxyNb_JawhapYZW-t!>ArXSrfIiJKH3gdF$_x^8wnLoB9mhIp%i#6wH zH_t3DgiRmD_8iVq>C9a-g*lush^ss zblxzaMqgk965s{l$AN}tKwQ|e6x+aT0ktkHlOw0Ob4w-4N+o6^EYXyv{LqB_Qmtl5 z`7F8eud@dE{(_?j9d|oVUD4W*rcBn>pC+pScYbphyYyN?*Z}LNyA^pUinj0{_*`W} zu*Ag3?Ct55>>M*u`JcBDz7sI8`q3LZ;IAT5Qa-0opXNbg`pp|RPC1nE)rIPQ)`>Zx zgv1i}eFV2Cl~wL2xba%3!Is{m;-%(RkkIqN+b%%Hj>2&N2k+Ybvs27RBZ%}B?>`F2 zybFh|nmex%3i`&;{VOL$Q!Qqxd+%aY$^XYaGf4TNK_y!c$%j3Cz$kX=N+J?hI_xl z4EC|UbU*!TuvL#c0y+q2MZ1CXM0dkja!iJfm5zT-5~FTAQe@Zmj=gkl^FvT$SVdMd zc8t{E9vnC5zit^zOOpB}w1$X@WFcROeL&2_PX|^zVN%b)eCE`$?B(|fzHgpV}y*TM%dt(|<1NblBKmK!)B+Mj&(%jILLk)>JC=>+~6FJ&zyyv4= zgdaJYmaXRPGX$!ldBH4RKL8@XuF!4gxRBd?bB(2Z@4>I*Bu=)1WHh^u^+$A<^W*c=@n;Ut_DS z=Y08w<$%zJqvKB)J+U}?iy6W$da+n!Mf0YDq>F4uP5nckPUP}jY}_Y15&U{Fc1jC% z@A>z^RFC}}Njn~iBGY}_1mNk%o1}B?J2@jPxIB{XW5>o54AF1R)4VP9cWM85`>st! z*yr<&NW@qA04A$}&~`n>9YKt(+?r81SH7ZQbrykKS5;dp_Wal4fTXag(ZS^BISe1D zRBRk%WT+?WuF!p*LxKWh4N(iqQMZ|REp+2MeTwnwvA;=rTG=9L87r0&-7@?4&8F~} z%|T}^#HdElxOJk+Z`IJ&)2XSCYWfCjgC6pY|`P9-v~xlEh*lw|YMwLO18_F*;l zT2}}mV!zL96_}gyj?Z9o*|>!-hKBZU<)e|$QKL2g5Wz;`_M?WUSc|r^NLOk!fM_JZxvC@Ev$>u36}%|KZaH|5t8(dLW>6 zX1nTbDTPmd&i3l)uvvBfGeQko-XVv76h6U0K{r`g znw{_Q-O@Agf17Z&gV;u&C%nI4>Le`QsQ2GkPWWH=!n~YZP5{rqEH+y~UCQb;3H1+4 zSKMFs#h>Dw=S>Mxh>F2oeZkF$T0MqH1wCY1prL%1_-{-f)e>O{D?*uJ!$qdajkx|D zDi{II@0?A>+P|qjN>D$Y%;vpzEboDV=~yK7TkH;%Jpii{oO{y6`1E3XRU9@6LoxiQ zdN9-X6PyC$q2J8A?+xo1x& zp-w&&`qb^OwtlD`u5!p08K5NEc63GY6p&qVevd@aaFd(_9Ovbn8Z1eLn17p*LnD^W zpNFsJb_*Q!6-f$S{N74Uhc|Fx{#bOPJ6AAOI|%_=87!;fE-8fV+t-JNGAyx%Hr>?0 zOj_X`d8t&>_CfA~UIfpWpD&9X#Jq}+*!)DpA6KRQog|iI*#x#pu<;1kO*!76?Kk1W z-a0*v=a`r`ZUcSmR^s96z-j-HDyAevkGfA_NtXuI3`~_+!9}MR%K(-A z2c^)8DLbNntYlBzx&sAaXvX}6QE_Q{dTVUsL``ntZUN8&O~@#6ES8g)gFoV;>JR0T zAa{uQklIUF`f{?XVskT;prTYk*jh_eo_fw!e~7kX+NC=JoxkM!t-m*hBPq-`B-RN^ zIjO)d8~o~jgI%dI9R!Fn=Z-=|=|n#t8qkO*spo&JY~%9rCai{_8zPqo{+fRhG`=3f z=Z;;xy`e~!S&qdw(l7JG0dN1IeaDc53#ay>PvA_1y{Z3On(E6^*u9UA1kz4eUIDTQW?<{eK?87G!(xHo~IGqV<1PP{U?e$$i@eaa9)t!re+c#5YI{6tn3N}mU`B6I=Z zC;MMgjCYR^@15%^`6B+oo6|p#{gz7m%5Cpw*qOEjX3aWYEH?6f_9q|2#$!SUtc-G_ zP{?ciQKKZ6Kb9&9+I5){%(pcYJ36pQos7b4A~E7 zy#h(SeD^eKn2pNTpi{f7;JFh69|Mgjl7vv2f z%;;_*2M8eR@Z$rV^dD);v8Y21*r|K$2c_|;ytMffV3-CQ-WIJfPpreecn9@WM?kgQ36%y@i`koJWJe9~iF9PVD|0;KkufOWr8f;ciEnzSNw z{kp^-lx^7iBuZKjDyz|p6YTuI3Fs*&#qBa!g^P}?L&8;|RSPV9;6SKneI2P%5; z^I;Mk8)9yj(FVe2QfkqV0W(bHJ0fo5WcHfWk%VipTm7ItmDLM#KxWyJ&xqxtO0gk; z6`?!3^z1L-HZ8Qs1cC^S*A3O$9gqW2n@BRruoxZ}aHqI+0CMTca=8XeB#2C3KrU~* zCTvTIJ#xRU@ln_8PI~6J*a)q8AXdf^w2#K|a@9ZB-%}}bE}U$NK(p#pU%zofjFpvD zTw1ytY8GpoW4`Ewgak#B6ZqthwY6hRIQx5PKUrD6ly#;WS=o|vjr(RWIc!WizS4Re z%dJ)=kwm(Dldh4}+*NwSTeo!QECMNh^nD=Kex;mIy^834b37-UPd0m+p+rX3gy_vf<6QWm}Erxbb?}3lVA{fX=!2 zI0EZ4tETMkFQguYai+~rx$LZO*)(T2^P_=@#>3F(+ROdNO>^nGQ{oe`(?9vTd8!?1 z6|o`3H!BkpI&>oID+i4I!ad z3x!jZX)3uX{TL%-<28)tfl5aCei1lCGHkI&NuJhqX67#5#S&_f72erc?9Mao?^};dPEKx3RnA^rC|;a>OJ;UUMqj$KySskWA}M!mj)kr3 zB!Dfp7eFK**%57R?V^(X-S{ZC{go)=&81P1*&OmxC1jOPp7N;t63C!v>$ou88Vki# zsFnCdIxmYcX_l!CZ#CKNlG^p>nL>KfS7@d0VU;Kq(T3R4dcV2x(#W@S&4QIJmUb@{jI5@ zorU85AP+Mmqqe!;Y$(Gr<5BSB^n1Z?DPO*P>CV-#8?+(iwu~F@&dMj0#%&&lKI*9E8rceD zzSoBS$5>@nGmxe0X;!+X0Bg)}^QQR9WMg|n2pg!o)EV7qArE}Rsip|Wy|r%1-4ExQ z^|EiU@G656K~~>Dd7&np1nz2TfD%1fJcv|ujeh-jzg?$T7W4i*z0p9y^S%;??1V=l zL;+qOKAdJ!%}X83X6f-VPB4+spQC5jj!=cTf9o9ws1Z-0%ta` z0~*~s%k?ZfgQ)c_=ORpcabIZvd3vc1PnNQtdA{=P&WzPj4=SUPiWl4S=5GDwbSeP+ zNTEl+C`>ira=q#$7@qsjpuoWR#3)x4SnFV-^XK~`!fri%dHT$mwdRA}=Atnl-tm>K z)sa^OMw1O8AAEfmtxI4qn6Tm9gjo!RJ-W`3!_A1UnaOto14`N?&oc-Zjwud2Z&v8n$+ z^89*ZDu?lN@`{QQ{u&Mwfl^`RQy4Qcn#~N0k}a2j;lGoh(%*=vwaRo?iWo;mR#qso zwWlYkTf-@BFjJJ$VLWC-9nKErbIQ|jS(6v@@5Xd8WR%22?T*u{4`qX!=keJ)#iGpx zG!0r~gdM>lXvLrs=(sUx7Z?=O1zWgT#bUj^Y8W3EXVCNYsYVLTz*zB@yHzHtN5Jy0XzhV2Q4^L@GgaS&c?92>#xRy_oE@A+G=G;(1k!^}Aq zG~Eyl3o1Ckyht0rWqNf>nanIliN0n zFOQ$;BdzdX-Nt0t^`oSuIJxdA=NR}wKxY;s<+V-aG#f~gU@nBI14xSb&(6-SLeSiZ z>89efePlQA+=IptAn55JO3KSy0TN;x@5yx>srT6oQ2$dxc$NE4%aIBk)8R68d3kvw z1A`Xe5gg8&7V2P~_cZzH16G2Kd_K%Nm#t0-92A=FJDN$|jEHDgke9y!-Wd`Sa(9jF z8dj-J?8W^`14aJ7RImDbK$=!%@5-DgPt`0h8^iz}@3<^_a}6a;PqUO8e>Lsr?Cj_` zhR&gMn*QRkI+xunzMZwj3kL3qp4|cJznsS?cLD_-8KgLw8k>x&mJs+2nBQo3$F zm5jWrTw7ZU(u?VVrKRP|ptU~Zj2ZCC_Md*#Yu@J0LInJq(UdN$Pa47KKhaAo=;^bvj9S#EV`;Q9Fg!dp z!)4x>VsdY~6u8mN2Cni8Io9h~4yxjhh=Z6`)LTv4#i7B4H3-d^jnY%6PLXn%sTJ$Q z$9GBHzr>=Esvqef(iYq}yt-;#zG%l20R>{>J-a5je!owlTDsN&PxZvVRSaJmwTc-i4`#%Dsk8be2|6}m;u&zuh|&(io$N-OTT%!I+fe*^Wg5zuCCec^8MW9 z<>egk%;@fOH>;|u9H%1eXvCD2mDOFvb_Udj^s;ASefirI%eUoA*Sb`f?aS0!A;gI- zmhGe?xXZUW@@jrEYq~W4jZUB+xv|(fRz7UlW*LF~M3kGQdI$=ArDeOz^+$``I+C8u zYq)_gm8K^rx-Pw=4R6n~ zfQg9-VJ`}4DxC|PAFm2w<2%H=Za^hyANdj*N(up9f(o|rCkB(Yz3m7^h}^t9aeqp; z-QUc?7W^CK`9LPVzd19p=C}r^nF8f~NlD3+^z^O|7a0PAg6PDM+yD-L&Q|_Vz%P_A zHqcH=Mm(HD!aL)7%2yghi|NuP&{C5#H8u4R+tv+MztnP>SmR)${GhbkX6*;H@7)*# zul=oSX@jQ`GUG=rYCZnbk9ko{Qc~X5HZPf|^8R6=GPy@rk0mzW&h^WpdYBFkqUO1C zXJ%%Sa+-VwWs#9UVx!lyP^u zIw_B}K|TrmCNCr;lwr)5e>b;WMMcHBhQcn#MQlfPcsppaIcj)fZ7MR|%+yrg*ccsY z|LYXr@=t2hDYo0Ut%qGUW`jYU>l|Knp>u&G|dD-D-?8X1k z{a7T2{(1>dORWRkw!hTJ*H`iW{riGCYImNeqR|)|b-ql;wb{HVUm)Xvfauy01vwF%! z1_kS|mAyqb%@YKab2go80@ePK zM}$UjR8)r3VyR;D-4!oVGBPZ1yf{I*w36>G@TVdQ^~_`t-*nlX27Sc&!b6O)b@Q$m z952tJCDq0$=_`9SqkLa_#*)kJffDCf&&Z(bAKOIqnlrIIMFQUU?%k~wn}fX#xz?*-VElP-QFH7X)4>>~e5>r&N4)nDs(qWQBtZjII9fX0aAHlMrs$rnncw>I+ z`@qySUVP;hT4xxG5|s9sXTRfGNYl*`bGpCElv9u{P-BjD;E!rHh!o?+k1E*|{??%L z9TB`4^*&M3Pnw(MAnBC^wk_>OozjUi+~eFe{BAw&|DyJkEe ztIpjUXlrYm&z*`|To8M@DutEgBRw@QKft!%6dxQ=!R`Fs(7Qi>Ld<-lv#00s(q-Zy zt4!ULmfRDR_JaAtu1>vO&L(BJA#8EZ3|t0IHsQ7LzIDei_~v%WJ#W?u57 zwY3#i%sBVE>&#WXqHAm#YAu_v4GsFlU__ZiqspqgeG zdJ!X6m#YX}piiLtL^o8OCA1q(vd% zs&=q9e2~_jC~a3bw>sO2?stv6tt;MqMl>G?PwK}@=NqrNqmE#es&xa@Sd5H}OkXL# z%XZFySw66%UCOcVd#`ZuNG}BRX?eTyJ@u9hpxgEA#FC_fio#N}=E8ph25AMPM}-Me z5u^cqN7i0Z?Fu67nMO=e-A3LwwA>$*3v320uscd1ud0gnpmcm#4oNErfAx|$AZos?l>$WST zQ|O^$M(cSwL1FWOF6vWe%yu7@@%zEZx z#%NaNl6`FnI*+>l8V-1zGq;@~jMg#lTlG=SI7sTG7mmG8})UnDbLYm@K;iSzGthCDc;?aK`4%I-g*#n6?6P0uUOq_=Io zsHEg>G_D1RP9DDrhd%Ql8sId8ROH>>1si8)XF;@r*zD44Q+0Lq49x8Nm0)dt+qusG zoVKk_5GYun8Fr@d^XJRh6oO6P2jPz!!)}_3evKMzaz?=+}_^3rXlJsrI9h zgdU=Zyt8vjdcm*LgN~Rq$E9y4AOZRqt;@eLV5L%IZP-%nN%LkbdvzdTZ*qB=*Nul9 z*2B+J>h$hyo$9lQ+F+W&W!g8sQA*{y`K3g|ydQ%k_|(+YpC`WElJ@MKT;vAldLQ@` z&O@nS7<|9vTY>#eoxs4rEt|zR^^XT_`%S+w;$8YGs+^6oe#CCBjNFYm zoqi`GOZ4WWqJL}J5*+@1zG6uNrVaUDEP@B7HHb)13hpyFly5%FU;4Y6%rql5Hg*lt zOx|ZU-@QOZ@1+TG#z&faq_C|wf}-!=zn|CO;^f4=Tm5E3?GD|Mm5QST$98j`J2({T zHAhm!eAo`c658grA`1Dd^`ANTC1fqzSzNEe*skH@X>FR;`qM%V6nK}?H!fRxeF$a& zqT}4^Hk*DEg1r#D%y@0P)$I&Bu9vxxE zI@EXY|J`45lE7N#+7Ad96PATMyXf?EGrNdx%={`36pnRjd~Cv4Eyo`+X_OQUW^!9i zPWS3ZnRbr{#_>6=8$ib1m!&Jwp9#*6ffN)oVg8}4qV2FeHge>~jT`eCQT#3{X8F9) ztUl!2Z3}DB_g*=w6SqWkyuOTWO!+l;kAka-G9ICZM)w~*u7MaXxH)oapyoT(@@IY|sIM6)pqEJ3`w8uql8zT*s%=!aABHY71Rdf${#!L&F~O@(1QZ&1p~bLd~3=!s(wE&r<>wiP8J z2n1nu7M(E*F}Mpsavv%nWSH)Z#nniN7-?#SGF(IUvB|g3X(Js3@3Wz^ScefQ^?@1b zIH(($eY7oU+bXQ}T|R+`vs!*2s^_S_N%>dkA%!lcc9!T9+a0!XKS7w^uHrJRRgHJF za$4LtX3Ld7ooMcou3zqALzr^3h2=NWR9?!zbcf=*BuMZ;_v1l$nFeAyvs{#u!_K5u z@EF2Ymlp}!S%r6xv!SL?FU1+k&CDyz8O9+^i5SxK4)BV;QUq!C%DU%mjX?++^zj&Z zUZ@6A+U!zBT-=Y@HpWkfG-#T(<^eSAbYXrE4Q;)F-j!otkY1P9)R8D3LgwIl`^j)_ zD|Y=Ra*8_^f~xsuko^WiB)iSVhRuH6_SQbUe_H$HVIUN*p!Jn2*v_!7iUmR27W2l> ztU@d$OZWRRAgXVilxE+J@K zGXzFCe@8A6nnvdpMqv4kp>1uMMbfW0S-6QQU8-h#BR76~mH?OGYLM>%+;E$0|Hy+3 z@5`()^)7GD6`roqpDC2wX`GnQC#y#WMCh6z9hDAh4F@NuIM2>83uWaHODiiDM}VGl z!{D@EuAe&y{-?JwfIj0O18F?Evohya41H`+nc#3zy?CBa@D%G4Q-)^_Dk^Kg_s9BF ztx_s42hx+RbsT_F?zVR`HWx_&9T{=(qD8U2QHdM%GFv*(Ifd=?KzQ$!yHzzc#!cbe z^FDlAR35dprHhwOEAml^XD^icinG% zK5JAH7tBS~(o{*0Cl7Sgz3e5@mi8ZQt%O5CjLO%F2Zz@CfJP4%*{Ex{O*W7)DSZ_L zCCs#Dp$Nn5OK_LTZ^UJfZVL!wX$&~Fl51J%EzTLKJm zB$~Biok+JFwuo@Dw9Sk85`zci5edY45tocekvvQ&x>`eCL3Cz zn$VwK%OK{oKG&LK*q)n^3iot)^Ip$DvH;NDGCz zCr9t+e-=bbZ!btxZBP3pU#&-mMacdCi!eJJKsXGkhv#j>Sm<63+~$;JtJX7eF|_fp z(!ZOwJ#1`eJn=Fkr(X!^lk-D*OEk774(2-jWF@aQ-f@n3Qob8iy8W$N#Dg8-wt~+d zK6=!VB9BHKcdy%RFPI-}OezB&1Zf{Aw917n43FgY4~xLP;J<3*58`Ow=s@SjXDJQ` z-tZl*;U`eAkB2H7Q_@+uA{|soTNqee#&3Vh?iI#H&XYR-pYZUWRYTD&_}|-(8I!JC zK7(GO^1)EFn`Uuw`-*@I#%j>IiZGsTX&8D{1Zj}&!kURoA_^J^-KD`7GrxH z#*q@#J8~q%SZY4~JoTRs3|(s|e^m6yIA4A?`xQM;IPZd4*O*&xtmZ(Z`8{1Y^%ku) zncb0h_T^jA-wlS&P%UsB_8JHlkld%9w~Kd<+fYR9PvBnaw-%#4%do0EiDb2NJM8vu~D7 z?IIk1p9!hRzD_JKFfJ4DhwgSUq%MuRawl9WFK)D1r>8uL9%{Q^V@@(r z$Pqts`beJUdu?IDxcwA)22C8|4uv!ZZB-5f`Nzk8;4!LRcyTT3&DT>`8Q&A$zfw<_ z6*)}h971&a#m9#5+Gj%;xPZbV z8lOsg>_#PP^>%ybdP{eGM>uvd*tuS~4ms*64La?W747QJ*XM^Sor7=4k(j{#u1fpK z{YURyd#oCA!r!xg$x>2dTfz1bk6eaguegK++GfBge$*i0#q)Edp%>Cv^2WP91S%?E zn$O%`ZC%V5ce(>6NQT6>Z~lF`w{vmAJNP?t)UfxS`q|Wk6iCta?s4?y^Iulg9d7c- zD>LMAVm?nESU;rR$+5$tiNRS20;G(E`Z;=Oea0GPahKZ`?Hfrstwj>ndMaMGtxvA2ZngdiExA z%d%L5WU&4?;&#zrR0@hvD6^&?Y3_Q7`XRvxnxjwzTA51hD|rvL9DBOxIImk!hJ43!h6g8b6hoF*itat&NGg*oo_43pQ}j^y|R^mJO8lVgfv+q z?2065hdj%HQ~u!Q`7>;*^FrMW6~U_S-9<E*^Cm0S)Aq?4>g(B*2a)<;pm;bge3Q#$diq)BOL+K1v1cOouEvO1%a5A+Us(fXL%V>=@TyQY6Mxr+H%L8SEfu6VQ`^ke8wve& z(Wh2yZE#QnvLB=J@2fb5m7TRtD)&9&Qu?S7+stke4jBQYRh>L$xhjn;xVFlSm-qsS zGIE_(=FKW|wDlv)>NbV*H7Ms_&ca|&&dwwb?)nC7MQJLpVEqc zo|T;)7#X=Rd)or1HEnn8=SQ>9{VLny-!q>1n4)yk3#21DmPi0CAjFz{vN}UMS%uiV zkYppaSI;7~r$=dRak#weIl40iigX3h*E%NL(tSF=Hx~9;EbZW5%Ltv!Td|ADhdjJdY(acP0@Zj&pMdFJwWtnM`_1*ch z#)vC1A-W|B6`AhTPq??g-DFcurTO_wR$brDF=P}rh~Wh6oaor2ZE2-jUDQ^=#!8e$ zU%h9f=5-nXwa%hZasN;Q9KV^cXgb}c*-yCSHLj`hZtyuVV z=@WnUH{L5dGS8!CBF>E50QESmO1m|?^8EOe=|SEvMUrxZUR#AFuzU-o&5cy|_oSND zifJt?$Kl2#CF|Hn?^{&r+EhpFI){NbN@8i1J~H_ydE`7#&B|WANtncjepK$DlRABs z@bP}{iA#}f62l9JaU~pi%-|Kt+b^cv!U>ZNKW_v)y__(Ka3>UsW6M6bWhGye*|W;^ zuBl`mCl&j~m*?MiMJA!!OB^eg%bh^N(jE}xja(G<>?p}eNm>7 zFo9j$I|@cdDG+dsDViG^4yI@Y>E<*qjo~KKBO(YCHeHz+ps172IJ`QCb}^eZTxWtK6pj zr8l?Ao>f_`JUEU$rLPI92C{T$R0-uWj|BBZO&xz^eSxZ_H{kC1Z97(4EIy$OK1)!) z;&>|9%`@hv@%c;J^3C%MVBSl2DSJ^taZoUpvKw+p?8`UL5IERs2I_b0r)H@0#qX&Cly!_;7TGdRa2rD?Ed^Zn=QS9y0>ntqNpsKtq zvYk&+H7gX>blr+STWMiq=-waVN1pMMP$1EZg5+1?jL=xb;REg{i_{=~jZp5pnN6F+ z<@Ieonjan^E>)3jUtEMzoE|LB2YvgxSeBC1qL_@jdK#@nkO63#M&0QVppEe(l@WMa zJ)QBQ1=-UVWuaEmn%<615vL_6@^c&^Bux&qE5hgaWZ6&Z#N+0p`hC|P`t81KIDDYo zoo+g%X_VAO*a;v>D@{p0_e;&CX9nM18;^H>-*^26PiOCFqDI#5X5o}Pt;97QD0q^s z*VtC#u<|Td#nfA?@|N||$UQ_PLAta8{QYBokJTW3Ud-vF2HQZE*v)t4Np}_;DQ?`f z`uVw(H%I1~g@lLK1R=ezSd?@Qm1k*?fIAigpK_qH!Uf8qMJr9b6BsAQWGHYSKY((f&j|g8M%Zf<{7c4uMOhhAtOn6N!k*v89 z9%SHE$u~;_DcD}9rV9y*8`Ip!EOVyWqvtQ<$4W=N41|A+2g1bxZpaRdHF=)Q1*?BUZ~sHRqCMnSid-&s6k?U(dTc6Z7jZjaFYc~m@08nOl}}rT zep6+(TX{g<;@f+iPVqPhrgvLWWhZNVsk)JFENIkv00sNhbG+H?Io6H}7VyVVpgxrV zy`IJk1BH6Qr$3ubjb2ORn(^%0b~)Z>Q_vHj_GkPc^SI+2HQI|yNGK{|zoUHrQBt*f ze{$32*qPgM3d)B8zVTB&`i#X1f*qpGW?Hw(SCw!QkOaMRyd_))Zjiiu!3y%F0(}W?0$8YnD z5mWGJs4(QwXFM=Z)SvnGEx0He6lV9ySGX1wA3QzRpzV1YDo0(=MM_iKwaM2$u(rP5 z1uZ{oP=}d@@?bE{d{3qjV1f*UUogq}feZsA`F{X-Zp zLol>m^i@hzFzxyJ?fAuSk8sM6MDnG~@J_4QuJ=VJ>-q`P&Und>wMdS{PQ{4h;sedZ zVql+(7bz&xpqGPzn!1v+UXf?;m|1^b8loH@J%Mik?L~Q$88kMFL+VIBFT$819n;BM zf-3gY?J1lFt;=uoCN6}8vQZ~~tv=ww!p_1~sH~zD(o)tw1qDscwrTm}3|EohGTdO4ki6SQsECZ%4F#NerR64mxsXeOt}PaRLD2u%Wt3iF0<$Cmm@tO=Q=RgfK z9t`yfp=~L0odli&O>^09zvo>P^9swrE!-&ij^3fB7WzadDPwJ&Q|(KYfwWkQj4ArV zpA2A!MiD5`OEM^?BN8if&n{p8=I=4n3|~sV*&YHE`?-tq=?*vZOS1ZC9k3G@98)72 zPoy`S(a_)R&9I#|cpmZ|p``3ol-xE8Nar%rUJHe4v332O_32h2q)QY!>f)oL-!5_! zk&ziYsVgh@CKbI%sDqTrzocx4a_=mbi=oU+$20m2zf}vV1j|2$7MBzmX_rFv4Bwdv ztWY!%CTc5P?L&dK!E|+o&SNGf;?Gfw7(llO($ooEH9bkNj}A^w&wME;>3%k=YA`jJ z9&yV5dc7roKl_kT3$|-RmTYCO9YJ94mPxC~U^f|p=xOddE1L^(PcIvRVYnXb3>)um z{ziTmsxj})iicfVY+-$o@RP&pFzUGTVg~3Q65!9K5SI^{a`6LWa@lEFJH5KH+5Z`w zW^FRljT@*cCZk*f0YPX0S;z?~^7HdkDYT3S=nMS-j8tABteC(;H}|TsL*UEJBZ$z5 za#t;0+-6oOp;avQ4e0nV5q`aMc)wIt)_i{Sa1lOX3_P!$vO_1c5Xe1UP5msF99lzR6}6CYuv>M^@`%6v(ddv zzbzY&wAjp_J7m)X^%*>GXY3ShbI8z~aW$7rY;AV3Z6SOQWEU-5Sn&VL-kF9W2AGsTNDEK6EBWY{0vFUZ} z$VY7Nt85#HSl*BL9ehx#dg6=}RwQzFTKJyc)*YgP`>lgx2y;)QpY1(LvxKX47czv1cU~maTkMRYK$>H zSgUpy3GpM!;BfLyj!Vr_V077d!ZhTM4v1uBPCC0ph*c`4GVy@77#ul@e*t*s>uEyM zdZyd7nj%tPKuJ-^PtuZI?mZ?dZs(?JhQ&?P-G}{;-S%b@%p8|j9u@yiEbB?%56*pp zMrnRxIC}TkAu|~#YVncL&@gkF$JA4W3)U>5WLMzUI!1?iqn6LGM(>kSo}OW|+0VIZ zY~@2wu?%|wkd~U9$NJ|w&z+ue<#&STtz&Y&cQ~v54Vb9UmFPFZ&4WSL7cZ?VF6}(4 zyqeYF3oqboMyNZs&FsC_(a}*?Jv*We(N5KeyIvs5&rkMx<*h%01gZgH*}wOA zyGh)%M>!)>l5S(u-HjHL4b(pJT!76GaHfEW2=&G1^>uZt^(^Jn&@j*mH3`!iw>7k; zy2*RNY#AAaGrp}=fl_8%4}Qm8dFw3HgcH7TH$^(wLn9!&J$W>DQj%rkqX7_VYMW`3 z54ZDE?&|NhhSB#$@OVTfnHz`?gN_b4MZ%eUh@45%=z7Ya@|Mw_+I5X6DzQ9VD@)5P zTzqnaZT+L6L{u3o0v4l;WkZeo-AMX_LQ&3#rUx7R$mr|!mRBHibpECwub3?i1Q4!N zWc90|^d4U2V=b*{h?YJtXAG#e*$Z-^!8FY!Y+s!?Z(d}(!#5+k&n%YwIelseh1&9sZ+ z;NajV6I<9_@)SPBdUgA0Gi$pgUG-}Xi)6b)584MsVQoB(Z`H#gY`*$nxlwAb$SE%7 zzG^7)l)Pa3SSH>Gn`A7~TtvZReGAPPtt%U-!~fBZcIfv$zqwH_>? z*lXSq5^pwe$@~4W?0~ymA+;b?rkz;dX#HTf4tA>XEY_Ym`k{B^^4o6>_bR^mJBb)~ zrIb!iNPJ*r3YM%rXV{dst|OZ#{*w5=i& zQhDfmRlpQ<8gZ0gE{MP%#c`Z|TfaKM#XDb}=n|Q1T=bfuAl~F7m2bi?c8f#*^GQ1rPzk zp5f9@D4$G`AQ@ns0k|+Ghx`WUUbmRP8;)VKz;Jr_%Yh4(TYo3>7FKsO&z`Mw38SOSBNq6K$NG?Pj=1jIkLi9eoG|Cg!#vCc*&+z5Jh9_7 zn&B=%3yD!lz7iw!8E!c=KR@Q=fRerhIN>ms(bi+v&1*tuAsqOnmdd;>+-dtJ^UWVu zb->2qwQ*s3DlO5Y3KRK%==utW8S1vXuZih_ue z(nxnm#|8{QK$=Z$x*O?+|DE9Z{(J9#f1dN5=RBXd_S$RB`Nnw17?W#5!o3tG09y>1 zseBrz^mkFnH2f5087y<3@~5BZ&b@i!pwV{ogRC-5S#!DQ>#>|h++vZh_ym2#S&Eekv+xX;17~FAS%8%W$V>4Q&Y1TV$DVc`a>YQMm{q5IIoU2$nFRfSi z{3j`9BaXGss(rqGln)xUajj>3I>x&<(I<52rP@S&DJqbH(sL(O-dWDbz@Ko5)}|4u z137IlJ}GJ9b}xgG>P--u#^1=z>281L zOJ+ZkOudI0@WEwHL>hel?vL`utZ87Vu63t~Z8@4XL=vnK(=zkkbAjaL)n_iFF2U>2AJOXidgbTWYijpluLFqxW@^NZ@!8ooi8pswwMcUdAUa;- zgm0!PNu3R-!%?htg4$%aVRMH84D@6(@~}|OoI95YjG9D^BI{s2Y!VEJG&E=$V*LCR zlVVbu7DJVm|Lk57voo3*GT6e))BVQBKTkxD2prZH#Y#8V*4`as~ZXsP%Q=EZ_04ZTVb3)P*ge}1u%?bX$F^lk>m5$jb>!D?4Cxac7up3!}yJNa+FjQPi|O$ zEf(J?(m$^zPK0sQts0~(0}UXOh)i!mr!^_CvbE9+H2NZAVl6T82M=WH!v&3~plQwl z<kRdiSn=nJZE7P0Ki-qggZ#Dk&-&K=X^FcYHQ8DXy-V*RNh700a2{37Yof^nlp# z^`GWuO;df>q4;+^>>9@s=U+-wlBpIpXW+@HX#4g1F76UqPrx7iY%<$}^N|)NvIW!B zYC!vD?A%FdTcJ!bChh?@)Fj~L;D#!TlDc{dz)KTQ`Y71i<^#NX ze&J-WfHG_O)MQf5p1M}VmuERx1rXBcRQF>>@SFyp!lvoNU0sc70TbyZcF zxEWBmgpE3Z8X{Lv1X!&|u+YM%2TCS*;EGS4d^z!>0bU@td7nrn1+n{0tFe!CS1w!- zfvGzsm;OhDU-k7prWUZ3MQxtY=AS!AHUrzm$J^Wco);yy=XzVpqv#N`l1D(K1zK4X zh}O8R#$?MYDw2TZ2lzxwYpPn#<8S*og`#Q>uGz6bCq=L0A2)I$Mf)bByHP*uYwHC5 z-H{k3_)I!ExuA_&luz&KEk%5e@;@84TSRE0P!gtE6v-EPbYK_g_TDhjke7ezKz-_z z{HUGY^3hzCtA*aCg9i?@Q_r?%Y8QeuP!ZgAc}zOT;8mntf4KR+G5Wp{ zyh(7ov8f(46u(OD>C@>x;VxJyS<~?a>uQo)()_yO0jbVs-@Oi$_pYN=!VE6Ww@14E z>vFgTG5=u+XxfUy~+<5Ww#}u zCp>07#tyydTBUrI3-jx<4`1l$=#V7*BlQiqnjqv`VgH-+ zl8Lp{bSv+9xV23Cub|P+9^8ZJ)7*5zK~Yw?vL2RWk-j|i+yz2KzOc92zI6~;XX1J? zwcWcdK{pl$f^f0;z%2BhCaGqBzB`@UhGjk7)dfLACgg^hlBsDLP(fRAP1LYc?Q(7E zmR_)+)ipHTLU9TU9a7s_PRkv7xp6z6uWK7uLh}FtmIb;*SeJIcQ+l%?=O>uxOKi#8 zR%eGojvV`xz}q~(7q?a{w{%Rnik07!n^q^1v7{%pMo<_xcWtD}dy+GlaHA&o0L_j4 zycaLt@`1#Hl+}Q9;Q90*)c8o>a5;VIR9%s>xpbY&jtW37Hs(1L>?|x2NOFrv?#Kj& zj_xkGXZiB!^XDfs)E7qU+qm1*qXDX$%q5sM!{S?P*Y-vl3(9McU4ayapp@a!QU0s( zkCakWo;Xm`(weP=0@br!b7itk288Jf&}F=IbHjtc89k4S7cZ_arMn~_dg+yGC+-w5{tnq<5rgqQ&B83&m63K5P~<`;<2Goba{{{w z;Mm8*x@ta1C~CIB-(NW!)E|Hnv&nMq*)MC;3jq&RPUt<@#JDt5PGM3kO-`R;%Nx)Vxqgq#w-4{H`UE3Kfg1n znz+vKC2l3qxx=*;H8fboAnECbN$^Ijtw8t-2IVt6di13LgH1|Fkwi%fz%zUy)<~=g zo=YNNqQMKd)Kg+oBaLNNSFtn=9HP5IQuI%Z$3g!64OL0V!jLp zV1RM#$dLqYCE&G#+VDznfMi6@l64_JDO|KI{x^a0WFg) z(Yz(TsBhhuHDsv~u5SBmKQHX&2&d(sHzd?a(7IA)DYBA#p7%KT6zYC2`Ew<09K>+xeOsJy=2|cOB*GBkSQ64 z5u)#tB98^6`r&?oB#WS@(Fgg~Xzc>hYJ=H>nH3HshMKtZWq<*JFfVt+8YBaY;Nudy zLh0h-LYO3><{N`4ORj^ayu1$@AL2lG#>~o!hcLqZeBh_O^Rbno!QtSos8(I-X4ZG3 zE@fzeVuA}nV6*db^gWHBDhjQ@)Aa)ZA`pe)krv!qBWF`j0D-@R52$Zjb$1##%WJg%b|k4Hj0`)QaDIFy_4vqal*ihJz~cq+Z(*tDLa<9+@>?o^ zh;EW@RvP{XeuY7m3PqVeE zik1chCXgB~EYOPus#}QR(xzJyec@T^I|ze?dG2$ZIn+8DCfW-;&-mu?3&e7dtY8#XDsJf=cB)xt`c7AQDw^WNoDdnS;{rGr@ zX<^mH9HN=;mC3Keiv;EJN^|bL38PMJYMpurFcf``nU3>w*JShEitIj&K$UtcX3vR< zi9uqpkmr`FZ;F+`&JT$ZHbA?n`uzFxrNU)cxVhZm#trhFQ4@^&t5;mb4W3-+TSJ!h ziCJB>O;yQ^>e*qXV_-0ZS-Fq&EUlxEUgi1q*sgB693vh3{VG1>W>t-s<(4+gPQ!O| zHF~C_GY&2kEfB62p}#YPkjl))mRk-Sg@maoWA~w8VV4q3=QSO|^4(FO>*qk;h>Z`o zpNN_z&hHGWNVQt$H@Q;`aW5BN3$u;M>%EU&WG&776IYZrk#N(<$V^Ph!pHyzxVeH6f7GtB#XRw|)?sVd>&O?Hj z(fqx#$O*9wCVbOdf-7BvkrSAeg+CunJ&qX|+{hgayo4*VkJv+%sE8l8)WFIxEG~tv zVA9D1&{XgTF`}yZ{oCq+1~Ioz^%)d%e6|UjUT@##CtNqp?>|HkYSaR^3$JrcqlnBg zz0~0~IC7PZ`L42+)%N_*X!Wlv*@8IezcG>H?f**xk1enqZRPEWlRDpRJLrWvQ2Uh` zR+#>JQiEy;v{R^?Zk{ws+4D^5%#}fHtD}<>yL~9cFmRk{=A?lDnht4^FI&1S>_FaP zbyHY}igM>GQ%$j+(4stZD21Ynn3C()#T<ICM1k;2fxVMnISm2Q$vj<(|sQ`$#kn zTcU*0s|j`apg+v1{fCW(r5WV6exE*lf!7g!qY^^4g1mgwm}+{#2qhM(=blk0e|8I~ z*>Ti6!=fcbcFh(qe3)L!e?Cabb*Le<>nv?-$Ut;9-GX^)d!mP-U?$U@+1}>7Rvhrb zT;tx50B8!ywe@r-fY0zU>jZahOEB=)fICByvZkGA)3{TFmdh3vob0c#v!~Y?egFRb z%<0qGH+W#TBB=|SaD&rQbV|xqsn6GLX%t#D0)r$6st`mBc=O~}O^w9P=BO|fDM^fF~jx4V^da(AlcDoP~zuiww&RdeHPH%n3o;|Ki093hs&mPUGXpHL_$TJ0z~dH%3evieg>p zO}Llu@`a?Qr-NaI1gNNPqia_Cv*cI|SF4U5JbW0bl_)u$J#aG;z6=~BSbVqyr0s4V zD<sqb%p1g=xJ`Jq_pb#*B8XDA*`xtS9^A*5eHFj3}ZNaMu zsbh_}Dk%$X^ewl4%yiMGQqITz=`sQ`!gbb0?bK zUNE_7b(>(}Vc4~DWN8JliCmBug$dX-EpLOk67Vi{TpA9_CllhwV&IAO&F*{|bhE_liKWiSDQP0{+3_{b4i0ECAI z2M4Q9g=D|sYSaH^mlk84DrtgY%pv7wMZ_l8I339A+&!dcuSNE>A;+)zezRs2OMTDQ$zo15A;=YO_B@rM!_6LW7cT@{{8-+KPP|& zv*QDFkA>Mp0{<;T>UUlJ{`D(|6A;XN=m2#^sHKrrn26<4Sy>uV7TjcH+tzF^5b6z0 z#y+a#8VxV;@Z>N%2=S*cNFa@<7_bMEj<4lBmzSzp(p$jyA-V7I@?gSo;=VZgOP8V= zwN`7<7#vvGIYLEc;|1&1hP6F>=n)?#WNP2{T7gawmoQlbFDaU+`2UybNDQ{co4~&Y zySX~H@46`qHq1c2RUb;ssln=@>2J@G3@~{aAieR^jz#nnGj+64P8e1D17PDi;9z?yX%P|vI9g?v*2%g}Mz;(?;#2aWHsHzgiCNNB`p7Fnl4udJGGl&X}B zz;`17+kgxat=fY4^m{m*G`sRjH3nyclaeBsk*VH z{KR!xHA`{#q=OM;Pn$CkaUjZP<7V;6ftN0?4Yr;J)Kb4^HTlfBfzgk1z=lC9*TeJJ z^Ix{;9R`y^d0EYk2@VW%_skY5>if>fSGLFXvrFYdzi&%(4fv$?@vB`B>gxTghbDjY#=o_q(sdo z&U%5t37_C%7|5W?0r5zu+mEvsN5VUuEpD6c!KodmV9Um>0JAU5re{2xub&2y4kpGl z#mCR3c8ot#EluB+XsltsICS0<#Vcu(neaEg#=f zYi?>n4}_kPkpQyZ#D~c65l)*kWU6JbBXN zZQnPIdvBv*u3EfpAxzUe7gt}wbb*e!R@Y(w?lYzydATI8KOf159pUj+g{$MrM za1j`lZRvO zp~wa>L~C#>HgF!p+$RQX!bwM_?nnOxP}JWRusHMw+*Rp!>onLE2&;kTu7o;;G=PzqC2cQX*ezCwpufBGIfGsI0QO!610yI9g9nyo|&oWi~{yCkbao@wJ z+?tAK<;pH6VI~$LB{$7olqUfX*PNZq`uf$->u{N+g2Fipp{k?REXnl3fiWQCY{;W z3&iuYW=y8piJUf{y@o`1g*iL6iY$yiC7KJ@fJN+5Ov^a39tNir8^Q+UI{Zc_*x6{p zv&~&W^yp{LVlLPG*s1!L#ey+BI=`R<{Qkrm5%)b|X11dUZVyI5ly%MU{F@+?MDG_5g^t4fqq3p<91dPRMC7ZWQQoD6kXG!?x->6{ZUA52i*fV z(}(!oDSr$3KmSAmBXkU!6;g-IZ(T2po$y0J71AEz1JYbTr+PhB6C)*IQLkUC zn$uPcnwQ)*eo_hpkWBqs+Fuo=o|uh>LYzLwC>BVF6XZHB8&~0zs_vXG!vvSinB2)W zzOR`&$nOk?h{6A#kKAGL?RqQkfk)hCs|D@rsM38{VueFK5);20Vd5ke#39OFvI@p3 zD6)W+>txBsOme1TBLo*@lWPdxL%G`h{r$l_CaO-tr(AUz07!AtRx@(4e$i~X1W~*@ z>Lntm)N1-;dqN@8BH9_M(m^Df422-5Whg-UYHl9}F@6gP|LE{Jq<>1ZmBOy3E4Z?k zmY|1aV>zAEW(d^|g#bGvV|-oe8|W+5j7obf5pZAq`*#a)1}=+%=V}9TFo#Ah83vfg zNJzlSH~?{{p+sqeIhY~5P$1}Um97z?5xHb=5M?6} z&XAFhIrMu%zN?IM+ZQP|p?Mz&Ju#4l@kMt&@1jufA~iKN*N1#%b{`1hg%1MasrvQV zyKbXPmo6dX7kPu~`i~=?*%Z&*-Zr;B;o+%ZA)gJ`cFLEncjn?yD;JuqchaaR-uN@aK`eZ`22Z8M{eGA%o9(FeLgy_I74w-Fd; z1z*>G13o|67XIN^`1#ew$H&vy_VcEn0}!FUL>m=z6Y^|h59ESS1+-A1C3+gx>w_pF zG}Nj4?4SW-N;7%u-04!RWbDAUcXZuMLYk9P zn8DAtCjqW_wLDFThjq(*Oc?jn+bJJ3O>5>ar(g z)l?$Wk$5P&M>8I}IORagTmQ2xrYwU?xoi-6QGy#o^aCKD{(73(j+;RgnbR@?7snTy zzatx|u+e?`pJza#Hof^nG6493aLXorGA^a7sJbYp<5nmm&~NP;XUVQ}Cx(ft!3sDv5t03)NIFoJct4&IlkK>cqF z8s0|}f1e;*RB1!Qri9J;Le8rGr=fgqt0_5<;4Rg`{2I&kS1{ej^<3_vD#x(B)Xt@c z5oV^V;bp-6BRfwMsT?@_{4q8M@dgnakcq7+(XQe5E|EawP42yY>7N zC{$FSQPHpYc3WrYOl$jPUMRgmW+QG$n*^OJ){}3`d;?_Xsu3pA`)&V9NNd12R=^vg zsg}buH&jA|;8Iest3@Drj{bA|+l%1)J;_}My^Bt!3Yy)+5(Ebb7}@crnwB-MZrER0 z_7Tyc&S~{9sb_66J4GmrL@IZ9!&N{9odlME7~nOhK`_Y*Gfzk_!*@MwGYWjI&dWIgR7Kay?A0qT;O5 z`7L{^oK;kkNbXk0-PVN-x4E+xuKPn@4{sH+rA>y87R+vJ2x_dE+m_Tj_3BvISbhpD zN-k#|X>HS98!J?a_-t4Qsh>-@*5c?G*wf%QMU6pPfQC~At7_*VApxz2yHprxJgM>r z{%8qyZm0@4GYM9H3)=lk7=>ro&JIoY$6?rQ>>TnRUELO!9~k!}sb!f{$h|WN<>s5% zj#`Y6?Vm`PGSmCJ+;RZdy-99OaEQVV{5&cq52OPqGUR5dh}7{oTzW}+pyv4Mtz%{A z@(oPD`hf$jbDQQiH>;C{iKJdsJ!^WQP}x)29udsyTcx0L3&x^cCbemp(2pN4Bo?op zKY8*?Mn;CcR~tB0EKE)rho|f}PE9&jHr^44y;%BSTXTk_Zdb`5OAD(B060r)O4lDl zWC058jO{1C9{2FqQeZao*0tGy4kh6nxodqGzn-%bSdFzf2#}JJE=cP{BkI?e=H?PtY%$D+qk~`IIqD2kDDv5S+_y^_<>G_$GCbbBOSBRI z=VK`BKgb-(;EYbT40vK~WBFVhO3yyW+8H&G5FTYu(b4*d^c7o3?IUe4I!i+rzn8fGFP{kFX_Y>e8r%WO>I*F z&Msg=AJ?2<)H1aKawnd5Bet{(=k zRu&6}^c=@sHnw3}eo)W@+a_&6r6!O)uu7rC-5sPv5To^csfZL5@Iqykbt3_@db|8V zOoOYawf=CsE%g=^B{cn9SK-x8&CaI7rVHua8JBV4pm=U{8N^M9@OI*m8~lUXEz2k8 zTurd)Pmhib$oqZ>tF<&o2kpX7&S^YOfSuM?IJLOE{+Vwop>?mR`CDG@$^-e740 zk7jl7-RTVAyaY5E0_hwue10A?fwm$IOyLrMPJ|LO&?)HrDZJg>+?Jq&{?Wg-zg9}I zMuc-WSHbf=6#ZjA%$#>(BW1LhWLug{I-hSAcWa~1s;ccc$}0gBiIUZUqt2_W;@rg|Jfh+Gq-CBcz5-SEW?{br6qbH$YiB7JFl1v!k+=kUwERnMG1 z@4nrJjQ_Hq9V;34^R|Ca2w&g68wYLfH09{`*r!{|-5S9z%A{M?vWzn!uw8z05%y)! z5ud##f_%JC%>@vnn9o|x$5?hzBjiwuvfw7HrA5 zh7UFK_xDD=62`-Fxa>N^8bK=rzvYgBJn;?&EhMHS4foZ~L7^y80JKWq!I-JUV6 zwZ8rUz>Y9o4Ukipm5De352O?4kO$^wQGg%cgCd8Vu)em222E(_1|h7!Px8eGiZt?T z91Ul7by$(lj}Q~**lN)OyAG(k(!Y+Fr~J8~-d(7%pavZitDj|k&4;F-ZDO$Arc@}EBy_`?1CV&1+zQptFL z_m=I)be`WdX$K=14K!}6hE<+x<5#h)=!z6h6O5#;mtk7z+bw!;Z7vgG_$;q$%HUr$?o#xp!PP@a$Y^HV>Sd0sJIB zdl1YW?s+c@by_h+H_f??-<1BfS5`!B-*Z1~Xk{DuA+!p={!@WIyt;L}W$Kv2fekxK zJj+j+Pt;py$j(KX-V!3KxK>!Ge@j6IYc?CL*G41zoXqGpMS!2da`gdf$@<1(wI9P1 zPctS_{g%<6a9i_?gIVf;`h~ylA z55VDu_hnSkQ49GdmxOIjN4zq7%jKYjAKiU+n2D;#*M1RxNX;iW^_GO~TU`77C3xMt zyVHiRsM=cXLuhk%x>+0H^hTnk+N}LEPX>2Tu{Vry7wr23`y%XA+v96v-8Q{gapTB> zv9Vrx&6%`ncIH&88Cm-e+Q-V$OnqD!H!A-|?&xLb@bzaCkGHm)om4|UD(MsrS*}r* zS`}#)lzQ6D zFGXWxEHX_X>TqETP?ts}J zi&Pq>E72Dl(wwfACyfqD0Jffhpx_c5`0xnS$vz<=!#i|{Zi(jaNJ)&EK`;|e2k29O zeyD04rhZmXFcaprF$uTxL}&}nK6~C9d}qAiZ-9CsAtolLt{w`TIheke{2q=ov6S3I zAgV2oD*bEsTJfdson`4QJM~vHwB}*^IYHx)+c0#jtd$q0ljxX|gp3SXpveI#BApAk zJ<02Z1qI_(j1esWMq@Xo^H`uULjqGcgCTXMyNGbp5)(d?R#@T{_#q;B^V#aRMdR)@ z&t>Ufz@CCHoZ8SJi`+C(z2^u_GX9H~Bki7Juj}`i^dB>uO}0xujV;Lk{j>6;*Od*R8vvhm4l8FCJSqk~1k<*|C%_by{(N z((EP^C-}=~p^6hwQD|SqeE=He(y8|2^IrOO*&B2dGLVzN(^VOcA4qLFAnQf*O_9vi zk}7o9LJ5doxf#0j2+HFI7z|HqYvmnU$#XGllfH|MX%R`rHtV-v%s6SgYli=mNN~tJsO*dES@ai! zHHdh*x$&EYFuYrWlTRmG$tw>%78Xoq!bl8fxw=~=?vze5`};rWP~5z(p!BpffA15l z2WCd1MrS_AdOy};RgZ}A;qWcDK3E63sl*KDrCoNbAQRHU|Z-8KPBmgPwL^>48yl6vmMAyf}+Syqc2Y{@9>WC`&$ zm=LyMN&oot0%Qw0s5bLV2ueQBID)d_~z&-@k2Sb)kh=XqB1%i6vI~;Pm)zQ&`nBK@JIXRpM;x{_!iCg#g+2Ns~ z&y_(?YO1RTce_ZJ86*W0sjC~JdWNL#Z_*yWe)dH0&5=X6B|^!(g-z;LjUci08j8c* zHcLVpY;4@Ly^g$hP6uq=&tvULg4olxtQ|z=Q7Ugo1cq&rxRT*~Q;p3qhN~OiC4!Ev zrV&S>){ca}G9U&W--6r$ATsM*JBuVx=+Gq>&=PPz`F?@D#W z8;SZ0PCVKPG9i~e&&3x88GA>0c6sqgf*HdLAld&lpR~~heg~UF`x#jew zh0m{8q{~b|?IcnA6*Dz6lLmMdqGKb!dAoC?z==iz1^hCOLt<4t0x9wV&-QE7x4Jul z*{&Izh)TQF!}n3uuD%!cE|-hbDTyO{DZKqbn+PqeVFga%&g4}5)LMx7M3kx8d|35F zLC$R9D=r8vEgn_-&(J)xqvwU_`Y1~yD<8Oxoh4312xM9??qT6PD8=AgPAf*%*#%@} z^e2c0kX=v2r5r-4Hzv6}Y)Hs>_0R4DaGlOJ98X($x<1+eq)nNSR#M)}0);!-)`&E< z&_g@46cbdlLWvwjWo192RsbeK_h4qx2tZ-7iA(GeM_{lU0DY$rWNK8O7+fO?K5C(e zq;h+=Bd1IRH#g`Il=#9UB4$^gVOoMil0CP%a@`B_R`5VR&&wAKWYwWKW7IUS(Rs~* zcLlsyGUT(^Fj~(+hBOxLFw+P#G2mqLK<+>W1QcxQAL-VBEPL&m?AH1cqK=^<5To7+ zE*Z!jXBK+c5HMs!74XmQMj8c%=HGNED^of_xD`gQhe%^RX>7VRgKwd`94~uZNTvzO z+jef??MWRx*cSnCpD!E(7y~vLWgUr_{E9D&RNX7B(r}-IXT>ZMN1)vQNAxjzg65I` zZ+^pI@uPe$PC}NSXB>>;r9<;(uWn=;{} zGzMeH;o>BZ3v^1W_NRY^{yro!2lx6RrtP7F?ms)Rmn81j4e`;zK>%Lo4nD>ZcaHox zryB8Dx9#lYsiy2T^EVpWdw+{dbn^6+LvNgX@lOT!iv5_#>rfd+-crk@@3{Vafa)~j zFF*%#MNGh{F>_8@ho1{5T3#p7HCy{RZ+80o41ZMl`yDW{{19Lc%Ue=WTDlnKLcBw8 zL_@nQa^}nYyYj%#RaqqpS~d5I-)u}uP=o)kzoe)>5gL>)O0OgR?l?w78`bn~KTqA> zyJ_N(Mtq-N{)}l?>mf`e-)7u_h714q`Xkf*48k(eceK~-D2Inr}fpAi{a7JHrQ3h2gz_KCNQh-5?^eF0JzTGUcNJ$|&(77ij`1|%p{;B9 z%36gV@zan^nXcr>*;0wq?6pwee|tZd(=$DW&qjpRLe29|^S<{a zv7=+T^t}d7PgQXh>VY5Q2my}qKlCh&{a}{<;XYa;Se>I6^&SZLPy78XX1p2!mpHb# zWNzE_KJ>QK#;B<%Yj+&{XNcE1h;|-j7}tBA$Pre*`Q94?iYV68%GX|aYb*926Vr&iy{2}8nWt^hgov0Z2Uu#Z{0jdkI!Xc znOfhXHn{O>j5K1pZT$GbT=Ben5I&%{&w$RI?@Hek%Hv&s(oAyZ-u16nnv#+uR0el)M_XRDKg=KT!i1^01 zjmnmv_03G|Hf`067MwA7UsjuSyhW9}@ZNgF#LTDS;1(xfjY1w*97r^tmZ?oM_pYpO zP5^MzV`?lu;TI~A60Ls+%$TkZh6%O+;E<)n(7ti`fsb|AuO{gFxkp-`p?Ni>;4yGd z6hQdsKUyZj0pl5;akn?2V`PqCD!3ZfrCac@N@s&%FQzmc`Ts%;H7kz|%~vJUQkzp+ z0qI`a$h;{olLmm@0c5V92Gr2p0JVUN+Ge zB9eF9ee13xS@C;XRFTWR$|~|tXrJ8w^?yUMtTGCjl&~vq($y`V45L1^cVCzs<^L9& zP2?ah=)Wf+1wpJ+;7b~m?YJSVrwnr<(`IG7Z_=vBc``oESFBpaK2 z5}4VoL2NiZoCdxAG=~sc{!mlb18(9Re$TyPae=G4rW^m|IuRy;1-%0@7j~P}&jMv^ zTCiiJR7(U!^VqhfQMK7iBV@Ga-wc%t?cS?$ub3hmV08O-lhYe6z=|#q_7}73*4-!3 z^xxx=wI_f_@Z;L)In_}8Wlo-*e5~?>lGpxSsEmk99KtA6D)|*lxwGMAun(*VKC@P< zk{>h%cmEz7*&t_K!f2IxdUOFhIWWs*qZrl1M$QXO1||n>ljz~u;WYY{rN;Ts&XjWqP8+Hbr+6_OHZ{hBUkL2`jU681jY)a~m=bn#cUGHTl{c1>siTs9QW#f4W zj52W~t!|D4&F})jSdW$Z%)KwPFt;Fk2ezPfUbDMQc--^#N@d3R} z4k|c&GlagCNC@vOi^%?Cr1SVU9Y46!Y_^sUpk;numsAU&u|tw+t&DNZFwI+z*JUY+Z11Z0 zpW!gmep89Hd&!-@kVW@F0=XGq623?#`L}{oL=%Uv(CRj0YKL!9)sNfU*t>dbxf#t24b5paMFe~+F ziT?3pF^~9u_T1xpUQWk6B$hh!Dwn>k2pd%VVq2f?lQw)}m8uNYrn)D6BoUW=c`UcU z(>>h9RkwBzT_w_-fwnH$W^QG)Fnggpr(Rmw_pl>2{K?fhV&*sF(!kBg2HWP zruml5qG38|>5iDh4cdpg&T?K`))B>#N6ohHNB7D6xm zWLRnyf~YflM}FunO@GQNEV6kUo?np6cPQIRBo|trmr(jJTuidbfaR%E));dM$Pi(J3;LSXE>68EEWbQY@H# zAt}COt^0x3EcI2lFC#+bu?)C8LD9>aT~YKQ&I-;?-ff*eh~YBajZG*4vRXq45nui{ zv<_NmOa`brYSB8~Tww5;YRzr3b5k33kg|JCzrGO{O*uD^rup-cK1Ke+MRY!{P|n;>Te!;4T1r0 z;>Po&T?tCmZ8eXX{2h{Q?Xa43+R0%)%=OD#S0;UQ(6crfjYW-oHM(6}i#d zlZX@6FjpwVxE^|s-gW$a2d(&@Serqgy=doJSaqekF=|zmyuQFbuDYBxzH^)3H_K{e zlAmjuwg@|AJRBQMgsF88$$}89wzu2l0R7^jC1~ATkDmJ>Ug-r5mj4MqfzEaThP?+E zToUUL$UJEgP;NQheR=8OlUL#j3mo<5ed_cFzi|dPq(_fzeocP4soKK!X;ac*Fe{+G zdtSLJ89NQ_E-w{IVIRIdmc9En9U8jqwRX)nx3{X7_-hzF=jqwuA@BYq;QFcG7^zM0 zgjJ{Jw`7HQhV&E-ns+y{{7Slh92{MA)xVmq6LfKz!}-TN#Ham*Fp)&4LKZ`< z)V~*XRh=_mYH0bDsLJo0TA_a9-n43NbBmT_YD1hQkaM<0v=HQUhfnRs`5U7a@3zf; zJn?cIS98jqWc2q7=(y~J5!t_+2T_XvRU>pHdpDbq^Uv%*tTZ_)$up|40Tlt{guB+p zv7~S!&xY^e1ig%Ox~j|iUR{o-W0;qZ)j?gsX|!zAH`TU;-?j>pKBKP1-zY6Y#6sB~ajwQj$)*j)lSV>ZcK& z1fhoTHr&>6BC8TG|@UsK$4`aGN_vf9Kr^)0-oM6nRdOQ`59!K5ULf>T1FoX}!f;I0m-f z*!_te*bk-fL4r#y4}D_b$VvGFhcJxj>SAhV@ef~=(ER5?WrX;N|`R2o4BVyIlOw97$c2}cHa@G z8_9eR|Eg~un^O3@UP5XLLt}58>PeX2G`V=)!UiknNzy$mY-ka?pzKlRlPz>ziWF`b zpUFz*LchzhhjX7(Xbxi@tDSLeoT7rGNRbLODmoeu`ir&I)nDD+8c4ngbg-o^%la#q zFGnkBoAwkx0@4a-bOS*p`u<)tvSS7-hzXbNQ5UNTzu_&OzOzsluiH*s(A_SzEw&2crq8@L|3Ug0$(Ln4s$OH zG`P`h8il))JCL+R0lgF)T4W%pfmc%~O#2r>NG}IkA3U-_r>tZFsVZ)zCm9G5`sE&E zNQ?}`c@U6Bfl?D${<^HyXq};|Dnv`n4XlknkN&1;D|`Uw^LGeKOb6_?DVn6~$c{1_R5ymFrpPGhA@1W~SshX-;r z!h@U+p5GXtk;s_=ycG8Xj;=rO^Bo7Jm&b<>X%@xrPBQ}Ob)H=m+$nP=i%&QOUEf)ByHHfQo~K-R;(83AU3^*6hu z+2%a4lg&CmZuN(!IGi8x<0NS^*priWq6U=Tcim{>ZJqsURX}H{uEFaCiV}@9g<**w ztd(mMW#_0@o&85@!_>y9%C#{1yeAlZ{U>i?q{=|{gU>V5LRw(ZtL3)qf*WEX=$`1s zfF+I)Sv=@l#HZn9;frj{#N>e%n*%N#U^0^_Uj)i*L!h(!!~g@-2#m3E*LjsB;DAP8 zxvy=($g2e?4(_9k4OBOMlb7BliVOIsLWBD6>>>#uxJ$P;flioIH>4gwhrJfs%;Vh= za5xkvGe0}@7BDCbC3i{0zKmB!`!VhJoscVtKsi^DpXdb`v7%!Jdr!Ux!084|9$2jslL%&vPj zqvUtTIJKfMs0Y}{CkBuL!R;@D$5-~2nuy6cjrYL~Cbzw&0dnlwB<#bQPR7QM)+U?J zB)U+D%fG(#CyM&@85g3+Pf(+(T!U#0x+xzk@CEZU0mZ}bbU2$lnX2aTwFKaffCAQ+ z4(!V0F{Z9?!D7L#m}*jm5xi%}SFu4I|L9WpGR&X`h2 zO!=9cnf`~w@4aIEFV33UkK$|uM)!bJdQz5c!ib)@sNHham)8+P9Z4hB2PtA}tk)g7 zy4B_lH7tw13yjOhIa!z+U0gfR+LgBY)i3Z#1eJOhUFpYQf`7n+n~BR+x4t?n<{W37 z4!pyOyVqqaVT9fKlKLTyPq}}!-m}cp`b==|j`~=Fe%R7v+z>4(bBb4>)cmKP+ylqb zPAWh5VyawuYw@A*-m`c-F5MRb0}jsUybZ^;Ak8nBn4@zLz&!{#2f+5KlTMe0ZTLGK z99dX%$2)V9*RY`c_16xPWC#;@v@KD&CrVHL%1X%qpnz~!qei3Iw3RjU?!$51Trf=x z8!oMy{N0)A5YWq@v-6D5t}MBJyKp-$n2;Kdz?}%H3LM*#UF3-M`3V10!r3w;mz~+Y z?BhnP`FlSOXlBTed@B7k;~YI=eYj0*k|s-rBAfjYl+de)A=Xo-}4)!d`{N(*22-7X*9v;XGc@v3YOzonUo~(E}d8V55u5j68W=$ z|2_=QjD&hY#$f2_p94q88=_-v*Xv!jwdWi~L|h^2@A3{{PiKlr-tPdzf;Ft-WC3`# zD1o{bPRqfAv2H3-^b z90dJ|&I-7?+1U?$x(~-HR~r(*l5E`TMo$CCin5=U?;dGvU0+LXJ>3}#jy2*wXQ-%B zKo6#B+ydZLW*mV(b2aCL`7&o`m1;H{HA zk-b@-bw|x`ravjrvPy8p*D<(xo&x{mU8u#?PnL?D`TvKtw~nfE{nmyTNJ)2hDkUf( zf?zBukuK>_Kte*g4O&1%1Vumr1*Dbk21QD`yIZ6YzWLzZzjMwz&Ns&U$IBS7_i(^k z&$?sAHLrP1S=|5|v_uZsY>BKvqiC|hqcT~Msrv;eF91fnLaF%p6QOpA_%uoynzWO{ z>XUA0ZTbX_z}BBmWa$^#gOIRrXrh%gbbdbNN$QuJ*e5*cL`;?2(2 zuLXWLmVK^X-j96CKaR00uQylH0Pw{PjFPkR^75Ua4!}g7Sx}$}Gtv+GtB90@}X`pt`a{*?(ZKlo)2Oc@4V+yjuBTI$P=N0bSd zdd?%$$Ps4=rV!CTqYIb4B`2pNF$Ny1tV|?lY>OC8rt7jhW?&-k(K_+svH68s~ z_cQ*mXCp$tjr6c|$+2Xsp1TU{XP~m188MduT?Pb&`hm^bTjg_TZJq_@8boW7x`cqD z0=)OTqgAl(h@SyXBTfZGnSlGwTTSz7=y6j=M3V#!N=!D7;I<;C6wyBe&35hir%j7> zAKCXMB~PJ_aBT;NJZhjSz{S=b8>7;}Ug%DXgx)BGGqMDCC>B`M(8>U+i)FV#NheE0 z8=3r@Yb20yRJ#gHdmY`mQoobqQ~9@l{4-QG4!V<$A+$ujEw$4ZJY{ zmck_|@EQx1E(4b3S(lY2H0Acf%nwlHG={P(a!C-;P!L4=&Mo{hI=b-Qx0m?M$f#k* z=_V~}L<0&DWJ81#OYz>ld6NOx#(MC}QY;Qgj72CXW}T2fg&v^9UTl--Z>jL91`I~l zpwV&+NU8LPO3*rlP>VSc**8SS2?kNjfcQRC))Cq!2mm~mJ~?`XyaS?c4-;r}4t#_} ztc-c?FI0VKZ%4wTYvzb;=^vN_Tht8abmZ`gOG;ho5~Cqu$=#{)e5;8N2o?(ND`` zPLg(Mc>;zW=wA}&Tc3AXFs`x-yjr5`5jG&+;49G+c=eIhTz~Mb+v9y2C&%N8%};#@ zV=Sh-@e<|;YmX~ui`bzpT}VDpG1H&g1M5hz zoK>U0FnPCK4EC_`!iZkZb zs|9c|JuoU*|9+Cs;m(`giENVFt;TmRKAKbdtGfh*S;W49br;<^+*g{TG4{^C0odV< zn>Rr{ksq0YQCeDxFzrO(Z!(>3PX7i1WTDwFl;x?m>O{5jyUQPd@Qp-*keq<0(@9fK zK-^otN9QG(eZ!bPcha zB{K5*mH!JT_o_#s;E5x5hxV*Y`^==_@w8GCb^GD2LqKNy)}t5nvcz{b=<`ogPMMgn z>I@iR3oUAG)1Yinf{o3v~UIy)y zxm{2U(*{9DEgu%o1-3^(Lg>r7t6_&R(BJQPiN~`2T?V3R`w|K3?Zzqwmj+9r-uDvW zSR=h_y+x~_cfP-kjEj#GpbslanJ-vv-lBIsa|sa)^0$H0jKnLd04O5i%j)1)IavL< ztpt!)F4DcrfQUyzKep}I+XX$?GDxNRK-G!w&{5~3 zQ;Ow3S7!nou=TkJZc`9jrP@K|EVKNCZs|)MFJn%bOu%A!r{%M?wFSbnd@-*K41Y~P zqc%RF^BToD;CucAu`u36>&;>@6^X;WJ!C8wd`4(W%qm)ihKjb<`yKBjG(a9uag-wW z>0dxJZk%PHO6}@u{`1$FR2{GGr47056QocXlRvs-`{n4?NY|r->7g@J5%=GCJ1YqE zTpG|xl95&drXE;R>h%)^A@x zSgi$RKB~Wa+4I6`Z`p?%Wr#|K6P4l%zINM8&rRYCtI$c)B<(4>v@>sPO4dN4OYQFB@AC?*w@Tls{A)u1(YsM@a@ z{D9W|;Ut+iqd+q*Ht$(ss^7=$$TYcenm-X zYJmHPu5>C+dj_TJzlgl^D?{{k%lT$<2_4aAjBh(dla1cikxLZSoQ6_Jeqe*&A1qt( zoO+2HvQ%K6Im>7L{HYFM5=itM=mbndABh&oEzZo(r$OX`WawqTl)PnS0}%yE@GB1n zgd|rdEjc74B!EFHY@hHOfFP~A@QIKB2YwyN1CU?@WQcUEFM%#}8(4P`X~-S@g@Y22 zDik+&SdEWtH;;mQ*6O?`620CCjF!q3hOn=q0;Eq#fHcz5^ zoz$6P5RgJj;y)pV1$~-xr%5_Ac$+wmPl8#Fw^S)FE3*bzV!MTzD5Tb;lVuIBztUdU zNcmy+hp*I;mOwoNJ|a}}GZ2!Ze<$h=%i!IVI))Z$eekCKPu>3?#Dab=Oc8}U0)nq) zJ}^WcY5m+9U!dStLKLN~S9U=dda~MFSxX?>2KwgN?YO8;_uh|t zUbkFsnE-+FPPJRvzHY3mwC7gwpMv=`f`jT@;^jk%-drs9m~lz3HRGV|u^q~*o2@xz z^G&3srDeKX`6$#0)SgAZgQ!XYTIY_}n9=gk4$|*hx%D{=BtP`RXfC|wMA)m48+~q1 zyqfvdQh;WO6Ykdd6thD0;pjTj+75HOe18HcLIo=Lpz4_pAtj(~Nb?Xv4n!<3blxZZ zkpQ){K;bjAV%^0W{tuVwQi&8Sm!z7Y(7qbl_OoQHR?k64W#3Ed&u^sG->C~;b9-e_ z0|{}UGxapiTiCssQGa6@YsNe5>*7m{@*LOIyw+lh;i?&aFFpb7sRx*us~X~ z;ZWW!bVOtnqIs69MUK7JD=l3x2A~QGI-+7U#fLDG&TZVMxJg>$lM*7t%cWr6^t=lu z1d5o{pti=dkr9a0{JQTU6f{6y9m)D2oX+%RAw+e)?@faZ(7H8I5c%`B={N~r_@il; zW4-+aP{;CA_8WFU1No3MMj?>=+r51wUC*8SZHLZDV?%GVN{d~)1+HQOl{M=-3F@sR zeocB8WK4V&$e1UHHLXRP3NP7y{kmF^WDev z(@`H+>H|xsPf$;P599)ddkF3=LWt;>LN?!%96;q|*Iy5O?KYALMRib_Z3IeUVq#(_ zG&w-1uc@iYserWUirSA==(YVQ6o;T4q~>hkn7&K})mube_t#F2Z{{;lFKsqBN`Nc} z*6;3Q)4of;VH*7EGNRlIv-4g-E`W?5gN{a|c#zaY4yb2G~O#R>WwtGirlS-$IO!PX&EO2*$lZhAJgm!`fG%E?1L~- z;V5jAo`s?N+0ag5bG50^2joAOV>E7deY{Nrn1~Hz(t4n-2xQe1kol#erUs#YIS>~? zRR6hE5^cZUFE9cHKmmi2PHyuL#|X(RL+j91%m@Z9A#G*A8%V|@1e?HJ50_$17&7z% zFzWctiM|Jm^oK61Lt028c&ft&WBa-wrb!1alcMj^uw$3jYxP-P7mR#L7j1EvU5w3q5J zGSZLjW}xQM^psiWK+CntX!5k%5+2rMzXL|}{nCB=?ZwrL^wPC8i=0B$+Ay}Qty#9-6}oGM*H?j0 z;@B2$!}gb5@)NiZcZs2I2bK4;-`Fo35bHPNB+OE}pyZ&v?X&P9=m$1vw0*U>Q;2P1 zY}`ERkOqxARbj9X`iPxR&1@V8JgnFH`TrKHfJlwb0xk@SLaZV*wtgI;`Ksj7N#BjW4AD@#kC5uG3oFF*!V?V@(7cdPm7MGSx0Y85-4@D-oa5irnSa9W(j zZ#E>#dAk$#U}<4k-7j)2TP`SQ(Vl^Ld6;9~n(AS8hmf z4^#X9OMsxBG4DoZEct)p1W|2>8mS_B3+7h~bL>tKkqXJ&GWUbUv_khyGX-_ffd35* zT1yaW#vJDyOMsXq%rMcsa$G+CM;XCYz$EcNi?SAANl4iOG&A67F2H1wWe~&f1U$jc z2-6cR%?}ig|J)j~7E6EPtqE%S+|Nz1jlzyrem!CGahjo^ij6rTrtiQ1?#h9yNb&O6 zn9llDk!#~TmP-LdL4~_%VWJTUZ;Vs1lURBrhm{vH^vllkUepy7v{k`-zyAUCoE|1K z9-Iu8Z*8Q1FZY?)eIpwEMoH|Yl2{AoJ&+xuS;HUdn1%52@36a-Y8K$u_EUz%L zTOR8>)-$kX>#@eB!I!^DSPGVkS z*W|2a`>xbDZf$L?)q@A6CD|1fjNoQ`n5O~u88wQe6|TF#AM8EaSHUawp*xJ}X)t`X z*c2AIRSliCxD2X zj({%)8AU9pJ8ZyQhV9FNtay8yk$&Eef0`JyjEy4$1IH|F4MA3>g=?Ohoqb&#EsCX* zCKLXn>&@PBNVS>%H!-QpJGIQamFL+gld{U_Bvtw+V>$@bH0}MBqDj&;h|3-CMK)^| z#ceD!O}pFpolSff`|J%zJu4nR7Dd-YEvC@6f|Jw5DrnUU%Y}I$2U;k>^XE&=q}Z3@ zEASm3N`bZj85t2J&eIRWHZh95>%xLEpHfn$121}nP1Xl-@bKV5?e(nm!2-w3++1=_ z4za~oI>0O9(h8=r_Bm|WB2DF0~0`y-`H?DG`dP5t#49C!#6;VM>-VM*ef}4 z_KAOKic4GyNwZw@_s#O?+*;NA)c(zmo`UJ)Z8=8`Z@k2}xy{c$)aE=_LC+NGqCQCj zK(MHdlJ?#c0^8D=W*#of0g0VsqdWRc6os<;!QI+uEjx!R3EqlP$R;iD3SK}R?(c7V zJ#QtbiH%%54~V!Ri-usVIY_bUmN{p%Hp3D-1=s*Hlq*{CJ)IN2hMAn%RPgXd?A1oA zOLx8I7;Q%Xoc(8XodIcpS^dnw8cX%0O+IRK` zpj))Y;;W(eRo^3bG#XvPOCKdi*XA0T^tJ6?K-bj%7WwHCYxZw#aI%zeva|p4bq!*& zPjY97d~O_oo5o{y68&|fVn)@rkKS;=uxz^^np-<=bdZ=5|<)Hp9oIQF-v>Xg3NX2vX^n}?_Vy#Yo+tdZfMS5c=7e;zk3LX;l8Jw?SW@Oqm5Kj zx}3fKth)6dmmI~lHm4qYK=C8beRIl}Nkdcf832yMcS7KZ(|8;0NU--t$rF|5*#O9lQL@n+NBA84$7J}I)K;1+XazczPw zF654G_4S&R&Z+?7H#-CYh`?PoMnE~&$lvnw~cw`=w1T{UDkZQp2UvE_A zcHLWiu$m>%iInFsS;xG)zO+;at-YXs=;SzjhD6FAq+lawxSVhce~QvP{zI1j^5$xC zmop9;RgZ;E@-o+= zNk7#ZSIJ1n-3IZu9sXwT} zgQcolJbIXo9dP3@1SlLAFMe5P2@OV}GV&i+t|K21Ez$yzqMH|9DU2d9#-4yN9(+w4 zyDi_pFKr$_?XvpqO$(bVUU5ZK$8i=DoEcrHHc0M=AYbk5SBrcs|RZ zlpGM3ijvBzDrVp|Eo{a?In#C^4+Aj4Elnl%q%T6EdMkLR&uMgli|eC41}N0k>*kqU zPl^zw4+oFZKs6oZ^(rRD6s8!MHM6oOU%$almd7fJzoqWHH(`ZsH10wij`JwDc~+}v zvdXQhsetU}Mvv50_2laKRL4)BnBFXZRqG!+yxjj~)?GB>m56D5sPlr$5CeT!@Phgu z`+F)+6J=A7JL69xb3_VoS=Ev+lzVjxt*M|q5CAm_4mzcxWUmMZNqZ9+v8WBJQ*4r)}$cYrm}>~keR)_ ztPJ6IOH0eO2M^9eHl$`~NR-lrm!KR3t+SI*N?t4y6e8Om|4bKRCdZ0gVtUfK_5^|$ zMeOKrSQB-G6HlICE^HqdMOIcYZ6f0UB7%RjKyz-(j~^9gUcSE4mPQn0QN#Ou_x6$o zIUL6C)aSXXkRAK(N%6bN;@ zcZH9SK)?85<*AxeO>10zobA9_tZ#(fdjqAUd)`t+9b3;bL`<;DoPwCTQkjAL@@qx;$E0WeF?%0j~sZK`T(8=LY~%ddl;Be_{w zgyG@g{Zeu_ZeT*Ganw#9T*NVG;Jfkt!mI&Z!o{kl+f{@^67B9w!Xm8x!|hK6+~hAwd966%ZMwAe5_I zgLwchz4rrOUoiG<^sJ0U1gN5tk|JT)5FyH>P;WCj=?Dv894T(4IDdbC)T>voSjEL@ zl;_=in5powVR+edI964D=itozl6c_AHt@TXaz!w`xm6NhO}BrtYs)fLEG4h#j6xYI zGBGyTn}DDOjTUs$ce>n{w08f)3*XDGRoEBS&(&O5W1RgW3_dnE*gHX!w-Ja#h!wUS zDcPLbIXLhH;4!7y9K2t?X+4foyjYutFm7R1Ru(hCzHCa@mMQ$5Co3N29H*R#h5F^= z?K@P7qi;!`4$kFo*|%lZQCz8PZkIz>1tD8P|EAr z4TR7$S_PB$v>1kz`oa#eKF`onFa`GvT;o>?m%R~3-#RA!#C%@glW}X4Wa~v%x0zMC zU-2q9ew?pF+T|2Z8K`h|oa>|`2m8p=2IuI&{H5lOH&IcK0h)nvy6muBFk4cHKD=|$ znO4k}_F?HP^*KuX$a(q|;7bSra>rN15H342GZXv*USMJAoidMde}UKUcRZOx6V6vW zawCIt7?5py_#%~{WZ+ZdqH~>9e!bbFYi!ZivR@cEZtlzl*Fwz?bObl+B)y79p;C99{!DU zC3An!@TR61alz>_l=Q6IRhiXpXFf#|)~i@V)+AL)^-mx6^B(VT{-53}d-e3wz>jpA zhZQHHq~AVH6_{$ba3;TlLw^QYy+0p_vDZB6?do$AFJYF>>pSG7cilICC}9-N!F6XK zkDbXgq3{0mX%q}rD2l{s>rd`u*_2mos$9EP3|8Ul_txEkNYEI;U&p3DbI)O zzliuz6l5NB8LYoch&RH&NW6>NZ9X&LS2VW$lman=$k%>4>=gv)skOm0GJG|!Xk5)_ z0~x&?%ZRnh>!&4xtxU`atiZr+t@L>pIG5#q{Na}?8G1k3Y;&s8eAJZ~SzPwy%x~Yn z-#AV8!evwD>%qis*VZ|z>6RDkzIrswq`Y!PBgoKlNeG?NP)U)Te_4RKz8-hn^9Q=e z?erO=MzLK6-s-IGYt{Vx)fl@j-rxxh~bjf2)R`y@)_G<#01EtFS&L&g#RW(xux>+S$ z%!si{h(Fy?oZOO<%YYzHhpx(|kU<@X9a0narP2CJ6fY9E9%AgNH@6p04D3^94Ze<) zY(|?crs~3b5nd;4h>%4a`JZ|KHPzv@%``kFWs~VHd`J@>!vki$eG`25z#-D&^c*JF za$UMa0UlMy7CJ)Y070BbV*c$~TOTayPqL+jUdGR~Ljs8}F}7E+bU(qFoOY)+In3(W?Mx=)T*q^~+y))`lZdDOu#7(Yy{DQ# zed@qr;iA$?7LQ|dJC_Rv_B!wJ8^?y1xo#0f(tOY|`y0YN9LBzW&C?t2=k(2ul_zQg zzR5W8PP{Ml$Ep=L!*MQ+4H-Wv-ibA->ty9mpbV32mc5>G&m*`ccGLbcnVO%o7=}Lc z;(ldGM!ye+tZTGA07BCLhc389G9O!nEQ%&?D8Wo_A*%bV_ldpnS0)kU_99!o0Iv9 z{JvX4a}`A-_A3IiK3+Q2O|0zeO>|()jIIf8kEN|-x$>;}O!F~%JGoY0kUw?a$gS}n zgkx*5%%Q3~{5ab~t0mK_{u?rG_ZU;l>3Ik-+S-;C4mF1YjYIu>%x$hXNxdL|J<@H~ z>v&4F_Jq?dHQbiO-&ktD@k0^69`5FkzMz|evq#sHA3s06SMSxnlcvA) zGGth=2Pol(uN_I%(W25bt5;^tY^SydgC8O|$YgbF#pw^->feGpkLO&(+<2x;f&xrL zNN*)?fKj!DQVmh@Kn{;>Kdqd#LomtsoK5%NMBH@q7t zr>4DYLS0)s5Xdwk2x!(~hjraw_WT(ssmL3oSW2M;wW%efQsoXJMM>#RO(|3@0`{x@ zm&0)g#>U`0?*2WG3So_g8EQ1r6l6qrN5hKf87_76ClzI=qioNoR5rWR=Bs07gd`f% zG;R@f{5~ZE`KN}=%0DBJ@$w(Hu9BB^pmr`=00gQN%z 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 diff --git a/source/soap/images/image7.png b/source/soap/images/image7.png deleted file mode 100644 index 74b8f8f0dc6ce3e2ee9f454fc63be50d20934c1b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 146975 zcmeFZXH=EhvNrl6Z5C-o0g<3Yl`J`>_8rdKY^3-shb0jXUlb_upl7+qA4T-#KemJ@r)8v+#cOP=eqT*(n4;2=3n#e~ci< zJrLw*+=*lGHL|@|U|6(=u*VtOi>{zu0E|B})&#MUdB?$Jh?P7k&O6K@S06*ZwA}!hHiLyNyqJ z_-&l1A%cJS?S&HrT8H0x9QlBE=J4A`S2#WJ4!=G1^8a5HXNmuhYqz?Cebi7qy$#0@56#h>%bLcoe!Zvib6MY?eg80W`Vq%<}oU6PQ&Kry4 zzIceoxkHcekWDTw-ttO_fjcMAA|-k#h^?U!9(A0Gwp?ytNP5z8ttUqaBjDb?(>J=y z_R&~BXAMDU4Xa-hNH8UB&sMVIbv%-jBa#eZnz3{_*x$oW#|KjG&kK`YxfSyP@2EEC z=y4OIn)H!^f?dtjI~idFY!#u+ZhzU>%fx9Jz8QbN@2Y6@s<3 zHCau~(J==(Ik~RxZi;^`X3RN!Jn;XW&tFJV$KB+ayMGK3)1v>56%2RxcM#l7n4Fw6 zG&Pkfg+L&c<@9)7)-YjZ8CTB8UurG;IM~}K2lGw$rcvlo1QC7yIXT&zPBLVb7nadk zo9*`Q9TO%+Jl=}plaeaT+2_?Yat-P%^tfi5tD5BH*-}!bl4+i|&Ap-XbN+s|OM6u$O%iM5C8ugtjguIZuEY7xMDJ+9iEa>RY2DNKW>>?-7^yumuz
=gtHB^nOYb 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 z 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
  • d!3^+ABZ4fD8@L)1G?Mqy#$3x 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 to derive the other -quantity. - -.. container:: float - :name: fig:MSO_vs_RSO - - |image| |image1| - -While the interpolation of the logarithmic density profile to find -:math:`R_{\rm{}SO}` is more straightforward, we found that it can lead -to significant deviations between the value of :math:`M_{\rm{}SO}` and -the cumulative mass in neighbouring bins that can be more than one -particle mass, as illustrated in Fig. `1 <#fig:MSO_vs_RSO>`__. The -reason for this is that the cumulative mass profile at fixed density -increases very steeply with radius, so that a small difference in -:math:`R_{\rm{}SO}` leads to a relatively large difference in -:math:`M_{\rm{}SO}`. Conversely, fixing :math:`M_{\rm{}SO}` will lead to -an :math:`R_{\rm{}SO}` that only deviates a little bit from the -:math:`R_{\rm{}SO}` found by interpolating the density profile. However, -doing so requires us to find the intersection of the cumulative mass -profile at fixed density (green line in Fig. `1 <#fig:MSO_vs_RSO>`__) -with the actual cumulative mass profile, which means solving the -following equation: - -.. math:: - - \begin{equation} - \frac{4\pi{}}{3} \rho{}_{\rm{}target} R_{\rm{}SO}-3 = M_{\rm{}low} + \left( \frac{M_{\rm{}high}-M_{\rm{}low}}{R_{\rm{}high} - R_{\rm{}low}} \right) \left(R_{\rm{}SO} - R_{\rm{}low}\right), - \label{eq:RSO} - \end{equation} - -where :math:`R/M_{\rm{}low/high}` are the bounds of the intersecting bin -(which we find in the density profile). This third degree polynomial -equation has no unique solution, although in practice only one of the -three possible complex solutions is real. We find this solution by using -a root finding algorithm within the intersecting bin (we use Brent’s -method for this). - -For clarity, this is the full set of rules for determining the SO radius -in SOAP: - -#. Sort particles according to radius and construct the cumulative mass - profile. +after sorting the particles by radius. The process is as follows: #. Discard any particles at zero radius, since we cannot compute a density for those. The mass of these particles is used as an @@ -255,40 +196,47 @@ in SOAP: is the position of the most bound particle, there should always be at least one such particle. -#. Construct the density profile by dividing the cumulative mass at +#. Sort remaining particles according to radius and construct the cumulative mass + profile. :math:`R_{i}` gives the radius of the particles, and + :math:`M_{i}` the cumulative mass up to and including that radius. + +#. Construct the halo density profile, + :math:`\rho_{i}`, + by dividing the cumulative mass at every radius by the volume of the sphere with that radius. #. Find intersection points between the density profile and the target - density, i.e. the radii :math:`R_{1,2}` and masses :math:`M_{1,2}` - where the density profile goes from above to below the threshold: - - *. If there are none, analytically compute - :math:`R_{\rm{}SO}=\sqrt{3M_1/(4\pi{}R_1\rho_{\rm{}target})}`, - where :math:`R_1` and :math:`M_1` are the first non zero radius - and the corresponding cumulative mass. This is a special case of - Eq. (`[eq:RSO] <#eq:RSO>`__). Unless there are multiple particles - at the exact centre of potential position, this radius estimate - will then be based on just two particles. - - *. In all other cases, we use :math:`R_{1,2}` and :math:`M_{1,2}` as - input for Eq. (`[eq:RSO] <#eq:RSO>`__) and solve for - :math:`R_{\rm{}SO}`. The only exception is the special case where - :math:`R_1 = R_2`. If that happens, we simply move further down - the line until we find a suitable interval. - -#. From :math:`R_{\rm{}SO}`, we determine :math:`M_{\rm{}SO}` using Eq. - (`[eq:MSO_condition] <#eq:MSO_condition>`__). - -Neutrinos (if present in the model) are included in the inclusive sphere calculation -(and only here, since neutrino -particles cannot be bound to a subhalo) by adding both their weighted + density, i.e. the consecutive indices :math:`i_{low}`, :math:`i_{high}` + where :math:`\rho_{low} > \rho_{target}` and + :math:`\rho_{high} < \rho_{target}` + +#. To determine :math:`R_{\rm{}SO}` we solve + + .. math:: + \begin{equation} + \frac{4\pi{}}{3} \rho{}_{\rm{}target} R_{\rm{}SO}^3 = M_{\rm{}low} + \left( \frac{M_{\rm{}high}-M_{\rm{}low}}{R_{\rm{}high} - R_{\rm{}low}} \right) \left(R_{\rm{}SO} - R_{\rm{}low}\right), + \end{equation} + + This third degree polynomial equation has no unique solution, although + in practice only one of the three possible complex solutions is real. We + find this solution by using a root finding algorithm within the + intersecting bin (we use Brent’s method for this). + +#. From :math:`R_{\rm{}SO}`, we determine :math:`M_{\rm{}SO}` using + + .. math:: + \begin{equation} + M_{\rm{}SO} = \frac{4\pi{}}{3} R_{\rm{}SO}^{3} \rho{}_{\rm{}target} + \end{equation} + +Neutrinos (if present in the model) are included in the spherical +overdensity calculation by adding both their weighted masses (which can be negative), as well as the contribution from the background neutrino density. The latter is achieved by explicitly adding the cumulative mass profile at constant neutrino density to the total -cumulative mass profile before computing the density profile. This is -the only place where neutrinos explicitly enter the algorithm, except -for the neutrino masses computed for the spherical overdensity properties. - +cumulative mass profile before computing the density profile. -.. |image| image:: images/image7.png -.. |image1| image:: images/image4.png +The SOAP process is different to that used by some halo finders, where +both the mass and the radius are obtained from independent interpolations +on the mass and density profiles (the latter uses the logarithm of the +density in the interpolation). From 7b7fbd7de13e60215faac6d62224d27b5d449295 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Fri, 27 Feb 2026 12:58:25 +0100 Subject: [PATCH 10/14] Rename files --- source/soap/index.rst | 11 ++--- source/soap/membership_files.rst | 42 ------------------- .../{directory_layout.rst => soap_dirs.rst} | 2 - ...{property_filters.rst => soap_filters.rst} | 0 ...selection.rst => soap_halo_variations.rst} | 2 +- ...erty_table.rst => soap_property_table.rst} | 2 +- 6 files changed, 6 insertions(+), 53 deletions(-) delete mode 100644 source/soap/membership_files.rst rename source/soap/{directory_layout.rst => soap_dirs.rst} (96%) rename source/soap/{property_filters.rst => soap_filters.rst} (100%) rename source/soap/{particle_selection.rst => soap_halo_variations.rst} (99%) rename source/soap/{property_table.rst => soap_property_table.rst} (99%) diff --git a/source/soap/index.rst b/source/soap/index.rst index 0345c57..c35ec33 100644 --- a/source/soap/index.rst +++ b/source/soap/index.rst @@ -17,13 +17,10 @@ halo/galaxy definitions, as described within the following pages. .. toctree:: :maxdepth: 1 - directory_layout - particle_selection - property_filters - property_table - membership_files - -TODO: Remove membership files from the list above? + soap_dirs + soap_halo_variations + soap_filters + soap_property_table .. note:: Within the cosmological simulation community people refer to both "halos" and "subhalos", occasionally in an inconsistent manner. diff --git a/source/soap/membership_files.rst b/source/soap/membership_files.rst deleted file mode 100644 index 3da7342..0000000 --- a/source/soap/membership_files.rst +++ /dev/null @@ -1,42 +0,0 @@ -Group membership files ----------------------- - -TODO: Can we remove this? This information should just be included in the snapshot data? - -Before SOAP can be run we generate a set of files which contain halo -membership information for each particle in the SWIFT snapshot. The -datasets in these files are stored in the same order and with the same -partitioning between files as the datasets in the snapshots. This allows -SOAP to read halo membership information for sub-regions of the -simulation volume without reading the full halo-finder output. These -files may also be useful for visualising the input halo catalogue. - -The group membership files are HDF5 files with one group for each -particle type, named PartType0, PartType1, ... as in the snapshots. Each -group contains the following datasets: - -#. ``GroupNr_bound``: for each particle in the corresponding snapshot - file this contains the array index of the subhalo which the particle - is bound to. If a particle is not bound to any subhalo it will have - ``GroupNr_bound``\ =-1. - -#. ``Rank_bound``: the ranking by total energy of this particle within - the subhalo it belongs to, or -1 if the particle is not bound to any - subhalo. The particle with the most negative total energy has - ``Rank_bound``\ =0. - -#. ``GroupNr_all``: (VELOCIraptor only) for each particle in the - corresponding snapshot file this contains the array index of the VR - group which the particle belongs to, regardless of whether it is - bound or unbound. Particles in no group have ``GroupNr_all``\ =-1. - -#. ``FOFGroupIDs``: the 3D FOF group the particle is part of. This field - is only present if a FOF snapshot is listed in the parameter file. - This field is present in the snapshots themselves, but for FLAMINGO - hydro simulations the FOF was regenerated. If this field is present - it will overwrite the value from the snapshots when SOAP is run. - -The GroupNr values stored here are zero based array indexes into the -full subhalo catalogue, and not the subhalos IDs. For example the first -group in the VELOCIraptor catalogue has GroupNr=0 and ID=1. - diff --git a/source/soap/directory_layout.rst b/source/soap/soap_dirs.rst similarity index 96% rename from source/soap/directory_layout.rst rename to source/soap/soap_dirs.rst index 1f0d44f..2137f6b 100644 --- a/source/soap/directory_layout.rst +++ b/source/soap/soap_dirs.rst @@ -17,8 +17,6 @@ As an example, see `/FLAMINGO/L1_m9/L1_m9/SOAP-HBT/ `__ for the ``L1_m9`` SOAP catalogues. -# TODO: Do we want to hide the membership files? - HBT-HERONS catalgoues --------------------- diff --git a/source/soap/property_filters.rst b/source/soap/soap_filters.rst similarity index 100% rename from source/soap/property_filters.rst rename to source/soap/soap_filters.rst diff --git a/source/soap/particle_selection.rst b/source/soap/soap_halo_variations.rst similarity index 99% rename from source/soap/particle_selection.rst rename to source/soap/soap_halo_variations.rst index 45c6171..ecec020 100644 --- a/source/soap/particle_selection.rst +++ b/source/soap/soap_halo_variations.rst @@ -107,7 +107,7 @@ Note that there will be three groups (``x``, ``y`` or ``z``) for each projected aperture variation. Each halo variation can have a filter applied to it. If a halo does not satisfy the filter then the variation will not be calculated for that halo. More information on filters can be -found :doc:`in the next section `. +found :doc:`in the next section `. +----------------------------------------+------------+-------------+ diff --git a/source/soap/property_table.rst b/source/soap/soap_property_table.rst similarity index 99% rename from source/soap/property_table.rst rename to source/soap/soap_property_table.rst index e4e0195..02b37ff 100644 --- a/source/soap/property_table.rst +++ b/source/soap/soap_property_table.rst @@ -7,7 +7,7 @@ The third table contains the properties which are only calculated for the HYDRO The final table contains the datasets copied over from the HBT-HERONS and FoF catalogues. Within each table the properties are sorted based on their filters. -The first column gives the name of the property when opened using the `swiftsimio library `_. Clicking on each property name will open a dropdown box, which contains information about the dataset within the HDF5 file. The second column gives the filter applied to that property, as descibred in :doc:`property_filters`. The third column indicates the halo variations for which this property is available (green if the property is computed for a certain variation, red if not). The variations are as follows: +The first column gives the name of the property when opened using the `swiftsimio library `_. Clicking on each property name will open a dropdown box, which contains information about the dataset within the HDF5 file. The second column gives the filter applied to that property, as described in :doc:`soap_filters`. The third column indicates the halo variations for which this property is available (green if the property is computed for a certain variation, red if not). The variations are as follows: * ``BS`` - :ref:`bound_subhalo_description` * ``ES`` - :ref:`exclusive_sphere_description` From e13e930f613e24c9d5d9e8acfe7e5eeb096ab010 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Mon, 2 Mar 2026 14:09:34 +0100 Subject: [PATCH 11/14] Add membership information to snapshot docs --- .../snapshot_particle_properties.rst | 120 ++++++++++-------- 1 file changed, 68 insertions(+), 52 deletions(-) diff --git a/source/snapshots/snapshot_particle_properties.rst b/source/snapshots/snapshot_particle_properties.rst index b8e8a17..75a485a 100644 --- a/source/snapshots/snapshot_particle_properties.rst +++ b/source/snapshots/snapshot_particle_properties.rst @@ -36,6 +36,8 @@ datasets which store the following particle properties: +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``LastAGNFeedbackScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the particles were last directly hit by AGN feedback. -1 if a particle has never been directly hit by feedback | +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``Masses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the particles | @@ -50,6 +52,8 @@ datasets which store the following particle properties: +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``Pressures`` | float32 | N | :math:`a^{-5} 10^{10}\mathrm{M}_\odot \mathrm{Mpc^{-3}} \mathrm{(km/s)}^2` | Co-moving pressures of the particles | +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``SmoothedElementMassFractions`` | float32 | N,9 | :math:`-` | The ratio of the SPH-smoothed mass density in the given element and the SPH-smoothed total gas mass density (see :ref:`element-names`) | +------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``SmoothedMetalMassFractions`` | float32 | N | :math:`-` | The ratio of the SPH-smoothed mass density in metals and the SPH-smoothed total gas mass density | @@ -76,21 +80,25 @@ Dark matter particles are stored in the HDF5 group ``/PartType1``, which is also soft-linked as ``/DMParticles``. This group contains HDF5 datasets which store the following particle properties: -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| Name | Type | Shape | Units | Description | -+=================+=========+============+=====================================+=============================================================================================================================+ -| ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| ``Masses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the particles | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| ``Softenings`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving Plummer-equivalent softening lengths of the particles. | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ -| ``Velocities`` | float32 | N,3 | :math:`\mathrm{km/s}` | Peculiar velocities of the particles. This is :math:`a * dx/dt` where :math:`x` is the co-moving position of the particle. | -+-----------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------+ ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Name | Type | Shape | Units | Description | ++==========================+=========+============+=====================================+=================================================================================================================================================================================================================================================================+ +| ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | ++--------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Masses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the particles | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | ++--------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Softenings`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving Plummer-equivalent softening lengths of the particles. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Velocities`` | float32 | N,3 | :math:`\mathrm{km/s}` | Peculiar velocities of the particles. This is :math:`a * dx/dt` where :math:`x` is the co-moving position of the particle. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Star particles -------------- @@ -109,6 +117,8 @@ HDF5 datasets which store the following particle properties: | ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | ++----------------------------------+---------+------------+----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``InitialMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the star particles at birth time | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -119,6 +129,8 @@ HDF5 datasets which store the following particle properties: | ``MetalMassFractions`` | float32 | N | :math:`-` | Fractions of the particles' masses that are in metals | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | ++----------------------------------+---------+------------+----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``SmoothedElementMassFractions`` | float32 | N,9 | :math:`-` | Ratio of the SPH-smoothed mass density in the given element and the SPH-smoothed total gas mass density. Inherited from the gas particle which formed this star particle (see :ref:`element-names`) | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -136,43 +148,47 @@ Black hole particles are stored in the HDF5 group ``/PartType5``, which is also soft-linked as ``/BHParticles``. This group contains HDF5 datasets which store the following particle properties: -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| Name | Type | Shape | Units | Description | -+===========================================+=========+============+=====================================================================+=======================================================================================================================================================+ -| ``AccretionRates`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot \mathrm{Mpc}^{-1} \mathrm{km/s}` | Physical instantaneous accretion rates of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``DynamicalMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Dynamical masses of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``FormationScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the BHs were formed | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``LastAGNFeedbackScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had an AGN event. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``LastHighEddingtonFractionScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last reached an Eddington ratio greater than 0.1. -1 if never reached. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``LastMajorMergerScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had a major merger, defined as a merger with a ratio of subgrid masses :math:`r > 0.333`. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``LastMinorMergerScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had a minor merger, defined as a merger with a ratio of subgrid masses :math:`0.1 < r <= 0.333`. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``NumberOfAGNEvents`` | int32 | N | :math:`-` | Number of AGN events the black hole has had so far (the number of times the BH did AGN feedback) | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``NumberOfHeatingEvents`` | int32 | N | :math:`-` | Number of (thermal) energy injections the black hole has had so far | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``NumberOfMergers`` | int32 | N | :math:`-` | Number of mergers the black holes went through. This does not include the number of mergers accumulated by any merged black hole. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``SmoothingLengths`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving smoothing lengths (FWHM of the kernel) of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``SubgridMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Subgrid masses of the particles | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``TotalAccretedMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Total mass accreted onto the particles since its birth | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``Velocities`` | float32 | N,3 | :math:`\mathrm{km/s}` | Peculiar velocities of the particles. This is :math:`a * dx/dt` where :math:`x` is the co-moving position of the particle. | -+-------------------------------------------+---------+------------+---------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Name | Type | Shape | Units | Description | ++===========================================+=========+============+=====================================================================+=================================================================================================================================================================================================================================+ +| ``AccretionRates`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot \mathrm{Mpc}^{-1} \mathrm{km/s}` | Physical instantaneous accretion rates of the particles | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``DynamicalMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Dynamical masses of the particles | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``FormationScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the BHs were formed | ++-------------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``LastAGNFeedbackScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had an AGN event. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``LastHighEddingtonFractionScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last reached an Eddington ratio greater than 0.1. -1 if never reached. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``LastMajorMergerScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had a major merger, defined as a merger with a ratio of subgrid masses :math:`r > 0.333`. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``LastMinorMergerScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had a minor merger, defined as a merger with a ratio of subgrid masses :math:`0.1 < r <= 0.333`. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``NumberOfAGNEvents`` | int32 | N | :math:`-` | Number of AGN events the black hole has had so far (the number of times the BH did AGN feedback) | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``NumberOfHeatingEvents`` | int32 | N | :math:`-` | Number of (thermal) energy injections the black hole has had so far | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``NumberOfMergers`` | int32 | N | :math:`-` | Number of mergers the black holes went through. This does not include the number of mergers accumulated by any merged black hole. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | ++-------------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``SmoothingLengths`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving smoothing lengths (FWHM of the kernel) of the particles | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``SubgridMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Subgrid masses of the particles | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``TotalAccretedMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Total mass accreted onto the particles since its birth | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Velocities`` | float32 | N,3 | :math:`\mathrm{km/s}` | Peculiar velocities of the particles. This is :math:`a * dx/dt` where :math:`x` is the co-moving position of the particle. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ There are two simulations which use the Jet AGN implementation: ``Jet`` and ``Jet_fgas-4sigma``. These runs have some additional black hole particle properties: From a9d041783d675973af00df1c3cf60298a6b869e6 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Mon, 2 Mar 2026 14:16:14 +0100 Subject: [PATCH 12/14] Fix table formatting --- .../snapshot_particle_properties.rst | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/source/snapshots/snapshot_particle_properties.rst b/source/snapshots/snapshot_particle_properties.rst index 75a485a..47f63fe 100644 --- a/source/snapshots/snapshot_particle_properties.rst +++ b/source/snapshots/snapshot_particle_properties.rst @@ -86,14 +86,14 @@ HDF5 datasets which store the following particle properties: | ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | +--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | -+--------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | +--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``Masses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the particles | +--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | -+--------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | +--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``Softenings`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving Plummer-equivalent softening lengths of the particles. | +--------------------------+---------+------------+-------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -117,8 +117,8 @@ HDF5 datasets which store the following particle properties: | ``Coordinates`` | float64 | N,3 | :math:`a\mathrm{Mpc}` | Co-moving positions of the particles | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | -+----------------------------------+---------+------------+----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``InitialMasses`` | float32 | N | :math:`10^{10} \mathrm{M}_\odot` | Masses of the star particles at birth time | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -129,8 +129,8 @@ HDF5 datasets which store the following particle properties: | ``MetalMassFractions`` | float32 | N | :math:`-` | Fractions of the particles' masses that are in metals | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | -+----------------------------------+---------+------------+----------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``SmoothedElementMassFractions`` | float32 | N,9 | :math:`-` | Ratio of the SPH-smoothed mass density in the given element and the SPH-smoothed total gas mass density. Inherited from the gas particle which formed this star particle (see :ref:`element-names`) | +----------------------------------+---------+------------+---------------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -160,8 +160,8 @@ HDF5 datasets which store the following particle properties: | ``FOFGroupIDs`` | int64 | N | :math:`-` | Friends-Of-Friends ID of the group the particles belong to | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``FormationScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the BHs were formed | -+-------------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``HaloCatalogueIndex`` | int64 | N | :math:`-` | Index of the subhalo which the particle is bound to. -1 if the particle is not bound to any subhalo. | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``LastAGNFeedbackScaleFactors`` | float32 | N | :math:`-` | Scale-factors at which the black holes last had an AGN event. | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -178,8 +178,8 @@ HDF5 datasets which store the following particle properties: | ``NumberOfMergers`` | int32 | N | :math:`-` | Number of mergers the black holes went through. This does not include the number of mergers accumulated by any merged black hole. | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``ParticleIDs`` | uint64 | N | :math:`-` | Unique ID of the particles | -+-------------------------------------------+---------+------------+----------------------------------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | ++-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| ``Rank_bound`` | int64 | N | :math:`-` | The ranking by total energy of this particle within the subhalo it is bound to. 0 for the particle with the most negative energy. -1 if the particle is not bound to any subhalo. | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | ``SmoothingLengths`` | float32 | N | :math:`a\mathrm{Mpc}` | Co-moving smoothing lengths (FWHM of the kernel) of the particles | +-------------------------------------------+---------+------------+---------------------------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ From 58d17f3832c997928eb3afbebeeb75e71b0caf73 Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Mon, 2 Mar 2026 15:40:41 +0100 Subject: [PATCH 13/14] Add information on partial snapshots --- source/snapshots/index.rst | 1 + source/snapshots/snapshot_partial.rst | 41 +++++++++++++++++++ .../snapshot_particle_properties.rst | 2 + source/soap/soap_dirs.rst | 2 +- 4 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 source/snapshots/snapshot_partial.rst diff --git a/source/snapshots/index.rst b/source/snapshots/index.rst index bc0ffc7..2627b54 100644 --- a/source/snapshots/index.rst +++ b/source/snapshots/index.rst @@ -39,6 +39,7 @@ The following sections describe the layout and contents of the snapshots. File format Output redshifts Particle properties + Partial snapshots For more information about the SWIFT simulation snapshot format used here, see the `SWIFT documentation diff --git a/source/snapshots/snapshot_partial.rst b/source/snapshots/snapshot_partial.rst new file mode 100644 index 0000000..49a2bb0 --- /dev/null +++ b/source/snapshots/snapshot_partial.rst @@ -0,0 +1,41 @@ +Partial snapshots +================= + +Alongside the full particle snapshots, we have retained partial snapshots for all of the original outputs (see :doc:`snapshot_redshifts` for the list). There are two kinds of partial snapshots. Both kinds have the same file format as the original snapshots, and can be opened using +`swiftsimio +`__. + +Downsampled snapshots +--------------------- + +For the downsampled snapshots at each output we select a random 1% of particles to keep (not the same 1% for each output). All black hole particles have been retained. The following fields are available for each particle type, with the description for each the same as in the +:doc:`full snapshots `. + +.. note:: Masses (except for black hole masses) have been rescaled by a factor of 100 to conserve the total mass within the snapshot. + +.. list-table:: + :header-rows: 1 + + * - Particle Type + - Included Fields + * - Gas + - ``ComptonYParameters``, ``Coordinates``, ``Masses``, ``Velocities`` + * - Dark matter + - ``Coordinates``, ``Masses``, ``Velocities`` + * - Stars + - ``Coordinates``, ``Masses``, ``Velocities`` + * - Black holes + - ``Coordinates``, ``DynamicalMasses``, ``SubgridMasses``, ``Velocities`` + * - Neutrinos + - ``Coordinates``, ``Masses``, ``SampledSpeeds``, ``Velocities``, ``Weights`` + +TODO: Add a link to an example downsampled snapshot directory + +Reduced snapshots +----------------- + +The reduced snapshots contains all the particles within the :math:`R_{100c}` radius of a selection of massive halos. Within the SOAP catalogues each subhalo has a flag ``SOAP/IncludedInReducedSnapshot`` which indicates whether its particles are included in the reduced snapshot. To pick these halos we define a set of :math:`M_{200c}` halo mass bins of width 0.05 dex, with the lowest mass bin starting at :math:`M_{200c}=10^{13} M_\odot`. If a bin has less than 200 halos then we include all of them in the reduced snapshot, if not then we include a random 200. + +All of the properties available in the :doc:`full snapshots ` are present in the reduced snapshots. + +TODO: Add a link to an example reduced snapshot directory diff --git a/source/snapshots/snapshot_particle_properties.rst b/source/snapshots/snapshot_particle_properties.rst index 47f63fe..611cb7c 100644 --- a/source/snapshots/snapshot_particle_properties.rst +++ b/source/snapshots/snapshot_particle_properties.rst @@ -1,3 +1,5 @@ +.. _snapshot_particle_properties: + Particle properties =================== diff --git a/source/soap/soap_dirs.rst b/source/soap/soap_dirs.rst index 2137f6b..4a429e1 100644 --- a/source/soap/soap_dirs.rst +++ b/source/soap/soap_dirs.rst @@ -28,7 +28,7 @@ Each simulation has an ``HBT-HERONS`` directory with one the snapshot number. Documentation for the HBT-HERONS files can be found at the -`HBT-HERONS webstie +`HBT-HERONS website `__ As an example, see `/FLAMINGO/L1_m9/L1_m9/HBT-HERONS/ From 8d953e5d0906bc97f5100a1469ba0b79b90826de Mon Sep 17 00:00:00 2001 From: robjmcgibbon Date: Mon, 2 Mar 2026 17:24:40 +0100 Subject: [PATCH 14/14] Add docs on matching --- source/soap/index.rst | 1 + source/soap/soap_matching.rst | 74 +++++++++++++++++++++++++++++++++++ 2 files changed, 75 insertions(+) create mode 100644 source/soap/soap_matching.rst diff --git a/source/soap/index.rst b/source/soap/index.rst index c35ec33..8800bcf 100644 --- a/source/soap/index.rst +++ b/source/soap/index.rst @@ -21,6 +21,7 @@ halo/galaxy definitions, as described within the following pages. soap_halo_variations soap_filters soap_property_table + soap_matching .. note:: Within the cosmological simulation community people refer to both "halos" and "subhalos", occasionally in an inconsistent manner. diff --git a/source/soap/soap_matching.rst b/source/soap/soap_matching.rst new file mode 100644 index 0000000..ebaf81b --- /dev/null +++ b/source/soap/soap_matching.rst @@ -0,0 +1,74 @@ +Matching halos across simulations +================================= + +Matching catalogues are provided to link halos containing the same particles across different simulations. +For each halo in the first simulation we take the IDs of all the particles bound and determine which halo in the second output contains the largest number of these IDs. This matching process is then repeated in the opposite direction and we check for cases where we have consistent matches in both directions. Matching is not carried out for satellite subhalos. + +Each hydrodynamical simulation is matched to its corresponding DMO run at the same resolution. +Therefore, if you wish to match halos across the :math:`1 \; \rm{Gpc}` feedback variations runs, you should do this via ``L1_m9_DMO``. +Additionally, all the :math:`1 \; \rm{Gpc}` DMO cosmology variations are matched to the ``L1_m9_DMO`` +There are currently no matching catalogues across resolutions. + +The output is a HDF5 file with the following datasets: + + * ``MatchIndex1to2`` - for each subhalo in the first soap catalogue, index of the matching halo in the second. + * ``MatchCount1to2`` - how many of the particles from the halo in the first catalogue are in the matched halo in the second. + * ``Consistent1to2`` - whether the match from first to second catalogue is consistent with second to first (1) or not (0). + +There are corresponding datasets with 1 and 2 reversed (e.g. ``MatchIndex2to1``) with information about matching in the opposite direction. + +TODO: Add a link to the matching files? + +Matching example +---------------- + +.. code-block:: python + + import h5py + import matplotlib.pyplot as plt + import numpy as np + import swiftsimio as sw + + # Simulations to match between + sim1 = "L1000N1800/DMO_FIDUCIAL" + sim2 = "L1000N1800/HYDRO_FIDUCIAL" + snap_nr = 77 + + # Load SOAP catalogues + base_dir = "/cosma8/data/dp004/flamingo/Runs/" + soap1 = sw.load(f"{base_dir}/{sim1}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5") + soap2 = sw.load(f"{base_dir}/{sim2}/SOAP-HBT/halo_properties_{snap_nr:04}.hdf5") + + # Load matching file + match_dir = "/cosma8/data/dp004/dc-mcgi1/FLAMINGO/matching" + match_filename = f"{match_dir}/match_{sim1.replace('/', '_')}_{sim2.replace('/', '_')}_{snap_nr:04}.hdf5" + + with h5py.File(match_filename, "r") as file: + match_index = file["MatchIndex1to2"][:] + consistent = file["Consistent1to2"][:] == 1 + + # Load the mass of the matched halos + mass_1 = soap1.spherical_overdensity_200_crit.total_mass[consistent] + mass_2 = soap2.spherical_overdensity_200_crit.total_mass[match_index[consistent]] + + # Plot + fig, ax = plt.subplots(figsize=(7, 6)) + bins = np.logspace(8, 15, 100) + + h = ax.hist2d( + mass_1.to_physical_value('Msun'), + mass_2.to_physical_value('Msun'), + bins=bins, + norm="log", + ) + ax.set_xscale("log") + ax.set_yscale("log") + ax.set_xlabel(f"M200c in {sim1} [$M_\\odot$]") + ax.set_ylabel(f"M200c in {sim2} [$M_\\odot$]") + + cbar = fig.colorbar(h[3], ax=ax) + cbar.set_label('N_halo') + + plt.savefig(f"compare_mbound_{sim1.replace('/', '_')}.png", dpi=200) + plt.close() +