1) Where can I find and download such high-resolution visualization data for mock disk galaxies (preferably from TNG50)? What format will the data be in? I'm simply after the array containing the pixel values.
2) This ensemble (Figure 6) consists of (twenty-five highly) disk galaxies from TNG50 at z=2. Do similar face-on and edge-on projections exist for other z-values?
Thank you for the instructions! I can now download the data I need. Do you have any suggestions for scaling up the downloading process? I would like to download the raw data values for thousands of such images, but I'm not sure if selecting the indices I want to use and using get() in a for-loop is the most effective way.
May I also ask where one can find documentation on what parameters can be used for the selection process? I have found that one can write, e.g.,
params = {'mass__gt': mass_min}
but I'm not sure how to write for more detailed criteria, such as "h{1/2} \leq 0.1 × r{1/2} in the V-band"?
Dylan Nelson
15 Feb '21
Hi Ludvig,
This procedure is fairly slow for such high-res galaxies as in TNG50, e.g. probably at least 5-10 seconds each. You can possibly make it faster by switching from 'sphMap' to 'histo' mode. Regardless, the only (best) way to use it, is, as you say, to put this in a loop, and let it run ~overnight.
Second, regarding the type of search you'd like to do, something so complex isn't possible within the web based API. Your options are either (i) download the group catalog, and run the search on your local computer, or (ii) sign-up for the Lab service, and run the search there.
1) Is it possible to render the galaxies from an arbitrary rotation/inclination? In the visualization tool, I can only find the options face-on, edge-on, or to render it from the different projection axes (0,1),(0,2), etc.
2) If I render a subhalo with "stars" as the particle type in the field "stellarBandObsFrame-jwst_f200w", e.g. subhalo 15225, what unit will the pixel values be in?
1) Not currently. As you say, you can use one of three independent directions 0,1, 0,2 and 1,2 for instance, all of which represent random inclinations/viewing angles with respect to the galaxy. But there isn't a way to manually set an angle.
2) They should be AB mag / arcsec^2 as indicated by the colorbar. Does this seem correct?
Ludvig Doeser
29 Mar '21
1) Okay, good to know, thanks!
2) Right, yes! Is it the magnitude in a particular filter band?
Dylan Nelson
29 Mar '21
Yes, each such request is for a specific band, in your example above this is jwst_f200w.
So for each pixel we compute the total SED/spectrum of all stars contributing to that pixel, then convolve with the requested bandpass.
Ludvig Doeser
29 Mar '21
Ah yes, of course.. Thank you!
Ludvig Doeser
27 Apr '21
Hi again Dylan!
I now want to download high-resolution images of galaxies from different z-values and I want all of these galaxies to look like they would if they were placed in front of us at our reference frame (z=0), or equivalently if we were placed in front of them at their z. I therefore believe I should download all images from different z in the same comoving image size (e.g. always 100ckpc), is this correct?
But I have one conflicting thought: if I can see galaxies as very massive objects that create deep gravitational potentials, shouldn't they decouple themselves from the cosmological expansion? And if so, shouldn't I be able to download all galaxies in the same physical size (e.g. 100 kpc) as this would be their intrinsic/proper/physical size? When I tried to do this for a couple of galaxies, however, I noticed a trend: the galaxies (with the same total stellar mass) seemed to be smaller for higher redshifts. Is this just an evolutionary consequence or is this train of thought incorrect, meaning that I should indeed download galaxies from different z in the same comoving image size (in this case, galaxies with similar masses all seemed to have more or less the same sizes) to see them as they would if they were placed in front of us?
Dylan Nelson
27 Apr '21
Hi Ludvig,
You should consider if you want "RestFrame" or "ObsFrame" images, if you are still thinking about stellar light.
Galaxies are smaller towards high redshift, although this is not an extremely strong trend, e.g. Pillepich+2019 (Fig 3, with obs data). Those sizes are in physical units.
Ultimately I don't think the "image size" matters - you can always simply make this much larger than the galaxies themselves. The galaxy will always be in the center of the image, and will have an extent according to the physical model outcome in the simulation. You can represent the image (and galaxy) sizes in comoving or physical units.
Ludvig Doeser
27 Apr '21
Hi Dylan,
I only want the relative light profile and not the absolute scale, so I'm not sure if "RestFrame" or "ObsFrame" matters in my case (correct me if I'm wrong). Two questions on this topic:
1) Does the "ObsFrame" take into account angular size changes effects with z (angular diameter distance)? If so, that would be quite important for me.
2) Neglecting galaxy evolution, would the "RestFrame" surface brightness be constant with z?
What I care about is namely the physical size of the galaxy, and I want to image them up-front in high resolution. I can therefore not make the image size much larger than the galaxies themselves and I found that 100 kpc/ckpc was a good fit.
Let me take a simple example to see if I understand you correctly: Let's say I download a galaxy at z=0 with image size = 100kpc and one galaxy from z=2 with 100kpc. Both of these will then be in physical sizes and look like they would if they were placed right in front of us? So in other words, I should use kpc and not ckpc? And maybe "RestFrame" images are what I should use?
Hello!
I'm trying to localize the data used for plotting disk galaxies, such as the ones in Figure 6 from First Results from the TNG50 Simulation:
The evolution of stellar and gaseous disks across cosmic time, but I have a hard time finding it. I therefore wonder :
1) Where can I find and download such high-resolution visualization data for mock disk galaxies (preferably from TNG50)? What format will the data be in? I'm simply after the array containing the pixel values.
2) This ensemble (Figure 6) consists of (twenty-five highly) disk galaxies from TNG50 at z=2. Do similar face-on and edge-on projections exist for other z-values?
Thanks,
Ludvig
Hi Ludvig,
One easy option would be to use the Visualize Galaxies and Halos Tool.
For example, I selected TNG50-1, z=0, and halo ID 400, 'face-on' rotation, and size to 50 in units of kpc. This produced
the image url for this is
and the grid of raw data values, in a HDF5 file, can be obtained by changing the file extension
(these links are at the bottom of the vis tool).
If you want to do something beyond this, then I would suggest to download data cutouts and project them yourself.
Hi Dylan,
Thank you for the instructions! I can now download the data I need. Do you have any suggestions for scaling up the downloading process? I would like to download the raw data values for thousands of such images, but I'm not sure if selecting the indices I want to use and using get() in a for-loop is the most effective way.
May I also ask where one can find documentation on what parameters can be used for the selection process? I have found that one can write, e.g.,
params = {'mass__gt': mass_min}
but I'm not sure how to write for more detailed criteria, such as "h{1/2} \leq 0.1 × r{1/2} in the V-band"?
Hi Ludvig,
This procedure is fairly slow for such high-res galaxies as in TNG50, e.g. probably at least 5-10 seconds each. You can possibly make it faster by switching from 'sphMap' to 'histo' mode. Regardless, the only (best) way to use it, is, as you say, to put this in a loop, and let it run ~overnight.
Second, regarding the type of search you'd like to do, something so complex isn't possible within the web based API. Your options are either (i) download the group catalog, and run the search on your local computer, or (ii) sign-up for the Lab service, and run the search there.
Okay, thank you Dylan! May I also ask what's the main difference between the classification of a subhalo and halo?
For example, I found the galaxies from the article through subhalo-id 115582 and not halo: https://www.tng-project.org/api/TNG50-1/snapshots/33/subhalos/115582/vis.png?partType=stars&partField=stellarBand-jwst_f200w&min=-15&max=-4&size=40&sizeType=kpc&depthFac=2&nPixels=800%2C800&rasterPx=1100&rotation=face-on&plotStyle=edged&labelZ=True
This is described in the FAQ and in the docs in various places.
Alright, thanks.
Hi again Dylan,
I have two questions related to the ones above:
1) Is it possible to render the galaxies from an arbitrary rotation/inclination? In the visualization tool, I can only find the options face-on, edge-on, or to render it from the different projection axes (0,1),(0,2), etc.
2) If I render a subhalo with "stars" as the particle type in the field "stellarBandObsFrame-jwst_f200w", e.g. subhalo 15225, what unit will the pixel values be in?
1) Not currently. As you say, you can use one of three independent directions
0,1
,0,2
and1,2
for instance, all of which represent random inclinations/viewing angles with respect to the galaxy. But there isn't a way to manually set an angle.2) They should be
AB mag / arcsec^2
as indicated by the colorbar. Does this seem correct?1) Okay, good to know, thanks!
2) Right, yes! Is it the magnitude in a particular filter band?
Yes, each such request is for a specific band, in your example above this is
jwst_f200w
.So for each pixel we compute the total SED/spectrum of all stars contributing to that pixel, then convolve with the requested bandpass.
Ah yes, of course.. Thank you!
Hi again Dylan!
I now want to download high-resolution images of galaxies from different z-values and I want all of these galaxies to look like they would if they were placed in front of us at our reference frame (z=0), or equivalently if we were placed in front of them at their z. I therefore believe I should download all images from different z in the same comoving image size (e.g. always 100ckpc), is this correct?
But I have one conflicting thought: if I can see galaxies as very massive objects that create deep gravitational potentials, shouldn't they decouple themselves from the cosmological expansion? And if so, shouldn't I be able to download all galaxies in the same physical size (e.g. 100 kpc) as this would be their intrinsic/proper/physical size? When I tried to do this for a couple of galaxies, however, I noticed a trend: the galaxies (with the same total stellar mass) seemed to be smaller for higher redshifts. Is this just an evolutionary consequence or is this train of thought incorrect, meaning that I should indeed download galaxies from different z in the same comoving image size (in this case, galaxies with similar masses all seemed to have more or less the same sizes) to see them as they would if they were placed in front of us?
Hi Ludvig,
You should consider if you want "RestFrame" or "ObsFrame" images, if you are still thinking about stellar light.
Galaxies are smaller towards high redshift, although this is not an extremely strong trend, e.g. Pillepich+2019 (Fig 3, with obs data). Those sizes are in physical units.
Ultimately I don't think the "image size" matters - you can always simply make this much larger than the galaxies themselves. The galaxy will always be in the center of the image, and will have an extent according to the physical model outcome in the simulation. You can represent the image (and galaxy) sizes in comoving or physical units.
Hi Dylan,
I only want the relative light profile and not the absolute scale, so I'm not sure if "RestFrame" or "ObsFrame" matters in my case (correct me if I'm wrong). Two questions on this topic:
1) Does the "ObsFrame" take into account angular size changes effects with z (angular diameter distance)? If so, that would be quite important for me.
2) Neglecting galaxy evolution, would the "RestFrame" surface brightness be constant with z?
What I care about is namely the physical size of the galaxy, and I want to image them up-front in high resolution. I can therefore not make the image size much larger than the galaxies themselves and I found that 100 kpc/ckpc was a good fit.
Let me take a simple example to see if I understand you correctly: Let's say I download a galaxy at z=0 with image size = 100kpc and one galaxy from z=2 with 100kpc. Both of these will then be in physical sizes and look like they would if they were placed right in front of us? So in other words, I should use kpc and not ckpc? And maybe "RestFrame" images are what I should use?