Sister blog of Physicists of the Caribbean. Shorter, more focused posts specialising in astronomy and data visualisation.

Sunday 30 June 2019

Unleash the render from hell

Ever since I got a VR headset I've been meaning to make more content for it but never quite manage to get started. Now I'm trying to make amends, but the process has been considerably... less smooth than I would have liked. So come, CGI enthusiasts of the internet, and let me regale you with tales of daring renders, dashing rogues, beautiful princesses and murder on the high seas ! Or, well, some of those, anyway...

(This is also going to be, if not a fully-fledged tutorial, then at least a highly practical guide with many hints and tips for those interested in doing VR content in Blender, complete with Python scripts.)

One of the first things I wanted to do was to recreate the ALFALFA Sky videos I did in the glory of 360 3D VR. Here's one of the originals for reference :


Clearly very well-suited indeed to VR. A bunch of galaxies, scientific authenticity, and an incredibly simple setup. Great ! Let's just update the file and turn on VR, right ? Wrong. In practise, this became something of an albatross, but unlike the Ancient Mariner I would happily see it dead.


Galaxies in 3D that are really in 2D

Making the 2D version was trivial. I even used the venerable Blender 2.49 for the first one, since I was much more comfortable with its Python operations and materials settings at the time. It just needs a few things :
1) The ALFALFA catalogue itself, found on the survey website.
2) A query to the SDSS to get the optical size of each galaxy. I had to split the galaxy table into seven because the SDSS doesn't large "large" queries, but honestly in this era 30,000 positions and radii shouldn't be large by anyone's standards, let alone the SDSS.
3) Using the catalogue file from step two I obtained images of the optical counterparts of each detection via this script. The optical size isn't terribly accurate but it's good enough.
3) A Blender script to produce a plane mesh for each galaxy, with a shadeless material and the correct image texture, scaled according to the optical size of the galaxy. The old 2.49 script can be found here and the version for Cycles in 2.79 (may need minor changes to run in 2.8) is here.
4) A constraint applied to each galaxy object to face the camera.

Okay, there are quite a few steps to follow, but none of them are very difficult or take very long. And that's really it. To do this in VR would, you'd think, simply be a matter of using the correct camera settings. Strictly speaking this is true, but there are a number of whacking great ugly-as-being-hit-in-the-face-with-a-sock-full-of-Ebola complications.


Galaxies in proper 3D

The first is that Blender only supports spherical stereo rendering using Cycles. And believe you me, using Cycles is necessary. Yes, you can render conventional side-by-side 3D in Blender Internal, but spherical stereo is different. The thing is that when you look around, the position of your eyeballs changes as you rotate. The Cycles Spherical Stereo mode accounts for this, but doing it in BI requires ancient eldritch knowledge the like of which has long since gone out of the world. Maybe if you sacrifice enough chickens to B'aalzathak, Demon God of Renders, you can make it work, but don't. No really, don't. Just bite the damn bullet and accept that spherical stereo rendering requires Cycles.

Fortunately it was quite easy to produce the script to make Cycles-compatible galaxy meshes and materials. You can find them in the above list.

You would think that's the hard part. You would think that learning how to do the Cycles materials and the new internal Python syntax in Blender was difficult enough, and that surely by now we should have reached the green fields and sunny uplands of VR utopia. You'd be wrong, poor fool.

Now normally to render VR content all you have to do is is enable "spherical stereo" for the camera and its associated options, and set which "view" you want to render. For some reason Blender still* can't render left and right views and automatically composite them, so you have to render each one separately and composite them together later. This is very easy - here's an example of how to do this using Blender's sequencer.

* Caveat - we'll get back to this later.

Where it gets complicated is not with VR rendering, but with a particularly horrid combination of local circumstances. Although my gaming laptop is powerful enough, I tend to use it quite a lot. So I don't like to use it for much in the way of system-hogging rendering unless it's not going to take too long (I'm also a little worried about leaving it on continuously). Fortunately, my desktop in work is even more powerful, so I use my laptop at home to create files and my work machine to render them. It can chug away for days on end without breaking a a sweat, if need be.

But I can't do that here. See, there was a stupid limit in Blender <= 2.78 where Cycles couldn't handle more than 1,024 image textures. That's been removed in 2.79, but the glibc version my work machine uses is too old to support 2.79. Can I fix it ? I guess so... but as far as I can tell this is a big job and could end up with me needing to reinstall Linux from scratch. And I really don't want to do that while I'm at the revising stage of a paper. Afterwards, fine, but not during the process. That would be silly.

(Quite honestly I haven't got a soddin' clue what a "glibc" is. When anyone tells me about libraries and suchlike, my eyes glaze over and I come out in a nasty rash).

So if a straightforward render on my laptop is out, and my work PC is unusable, what are the options ?


1) Get it rendering faster on the laptop
This is an incredibly simple scene - just a bunch of transparent textured planes. So absolutely all settings can be set to the bare minimum, with even Samples set right down to 1. And once rendering begins, it's blazing fast. The problem is not the objects themselves but simply their vast number, which Blender does not like. Not one bit.

One thing I notice about Cycles is that it spends friggin' ages on the "synchronising objects" stage before even starting to render anything. Typically the total render time is about 5.5 minutes or so (per half-frame, that is, for a Left or Right image, so the actual time is double that), of which almost all consists of synchronising objects, updating shaders and loading images. Only a few seconds are needed for the render itself. Frustratingly, in Preview mode there's no need to do the preliminary stages, but you can't screen capture that like you can with OpenGL view for BI. So you have to render.

Somehow I found that there's a way to significantly decrease the synchronising speed : create a blank file with linked (not appended !) copies of all objects. I have no idea how or why, but it works - it gets the total rendering speed down to maybe 3.5 minutes per half-frame. Rendering the linked file in 2.8 gets things down to 2 min 50 seconds per half-frame, with the synchronisation stage almost eliminated but the "updating shaders" phase taking somewhat longer.

The penalty for this is that it makes the file even slower to open. It was already slow, maybe 10 minutes or so, but now that approximately doubles. Not nice, but worth it for the render times. And in 2.8 the files open very much more quickly, so that's not much of a factor.

Other tricks are less successful. GPU rendering isn't an option due to memory limitations. Command line rendering is more annoying, because Blender insists on printing out the status of the object synchronisation. And because there are 30,000 objects, the print statements cause a significant slowdown, making it actually slower than rendering with the GUI. Googling how to suppress the command line output for Blender didn't help because all that comes back was for Linux. Eventually I realised I should be less specific and look for how to suppress terminal output in general under Windows. That turns out to be easy : just add >$null to the end of a command sequence in PowerShell (I don't think this works in the regular command prompt).

Does this actually help with render times ? Annoyingly, no it does not. Command line rendering is still slower, inexplicably.

Another trick I found online somewhere was to use PNG images instead of jpegs. This does reduce the synchronisation stage (for some reason), but significantly increases the updating shader time, and the two approximately balance out so it wasn't worth doing. But I found it quite frustratingly difficult to figure out how to access Cycles nodes (e.g. image texture nodes) via Python, so in case anyone wants it, here's a script that will go through a file and replace Cycles image textures with PNG versions (if you need to convert the files in the first place, this script can be easily modified - but watch out as it'll overwrite existing files).


2) Make it render in 2.78 and run it in work
Option 1 having only limited success, is there any hope at all for rendering the file using a version of Blender my beefy work desktop can handle ?

The answer to that one is "yeah but don't". The only way to overcome the texture limit is to render in passes, about 30 per frame. So I wrote a script that hides (or better yet changes the layer) of the most distant 1,000, 2,000, 3000 etc. objects, progressively rendering each set of galaxies such that compositing is a simple matter of alpha-overing every different pass. This does work. The problem is there's a huge speed penalty, such that I estimate the total rendering time to be about six weeks. And if anything went wrong, that'd be bad.

While removing objects from view (this works best on layers rather than hiding them) does cause a big decrease in the synchronisation time, there are two reasons this doesn't help. The first is the increased number of passes. The second is that each rendered image must be saved with transparency, and to get a decent-looking result (in 2.79 - this is not so much an issue in 2.8) necessitates using at least 15-20 samples, slowing down the rendering stage substantially. So this does work, but it's really not worth doing.

A somewhat related, less serious issue is that rendering an image with transparency and then overlaying on a black background gives different, substantially paler results than rendering directly with a black background. I don't know why this is, but I guess it relates to the emission node and how it computes colour values based on what's behind it.


3) What about a render farm ?
Well now I mean this should be a project ideally suited to such a thing. It's not a complicated file, it just has a bit of a long loading time but thereafter renders quite quickly. All it needs it a bunch of a computers thrown at it.

A very nice gentleman offered me the use of his SheepIt renderfarm account. SheepIt is an absolutely amazing service and once my work desktop is properly updated I plan to leave the client running in the background in perpetuity, unless I need to run something intensive. Unfortunately, my file is more than double the 500 MB upload limit. And they're not fooled by zip files easier, frustratingly (as the .blend file compresses down to just 200 MB). Sheepit doesn't allow Python scripts either, but nor would I want for anyone else to suffer the several hours it takes to recreate the original file from the catalogue (Blender doesn't handle large numbers of objects well, no matter how good your system specs are).

I briefly considered a truly insane plan : for every frame, create a new Blender file with sets of objects at different distances. That would get the file size down and possibly increase the rendering time nonlinearly due to the reduced file size needing less memory. While deleting objects didn't take too long on my work machine, on my laptop this could run for hours and still not complete (at least in 2.79). So I wrote a script to delete objects one by one and print its progress to the terminal. This didn't work in 2.79 (or rather it took about ten minutes to delete one object) but did work in 2.8 (deleting thousands of objects in about half an hour). But I realised this would be far too slow and far too labour intensive, so I abandoned this hair-brained scheme on the grounds of Nope.

I briefly tried a commerical renderfarm, Blendergrid. This looks very nice, doesn't have a file upload limit, and the staff were very helpful and pro-active in dealing with issues. I deem them to be first rate when it comes to customer service. It has an especially nice feature that you can upload a file to get a price quote, so I tried that. Alas ! After about an hour it was still trying to run the file, but giving generic error messages. But no biggie : it can email you the result when it's done... but not, it seems, if the file just keeps crashing.

Ultimately we might have been able to solve that one and do it commercially. How much it would have cost, though, we'll never know.


4) Work the problem
Alack poor Rhys ! At this stage we find him distraught, having tried every trick under the Sun and still stuck with an absurdly long render time. The only solutions appeared to be six weeks running on a work computer or 150 hours on a much-needed laptop. Most frustrating of all was that the render time was absolutely dominated by unnecessary processes, not complex calculations : once the preliminaries have been done, the render completes in about five seconds or less. Never have I felt so near and yet so far.

Then I had two crucial breakthroughs. First, because the camera is moving continuously through a three-dimensional cloud of galaxies, there are no obvious ways to cut out a single set of objects and render multiple groups separately for compositing later. That's why I had to use a script for my distance-based rendering approach earlier. But then I realised that actually, thanks to the nature of the survey, there is a natural break point where the render can be split :

This early version looks very dull nowadays, sorry about that.

When the camera is on the left side, galaxies in the left-hand wedge will always be in front of those on the right (and vice-versa), even given the spherical stereo camera. That means the render can be split after all. Now the split isn't even, unfortunately, but it's still substantial, with about 20,000 galaxies on one side and 10,000 on the other. That means that the smaller file is easily small enough to render on SheepIt, and the reduced size of the file for the bigger half makes it substantially faster to render on the laptop : about 1.5 minutes per half-frame. So my object-deletion script came in useful after all.

And second, this business of rendering left and right separately is (somewhat) nonsense. It's true that for some godforsaken reason Blender can't display top/down left/right renders in the rendered image window... but if you save the image to a file then it's correct. That's totally counter-intuitive but it works. Similarly when animated it works as well. The settings needed for this are simple :
Stereo mode : Stereo 3D
Left and right both enabled
Views format : stereo 3D
Stereo mode : top/bottom
Squeezed frame : enabled
The "squeezed frame" is important. If you don't do this it will render both images at the size specified and stick them together, so the final image will be twice the vertical size requested. That gives odd results, so the squeezed option should be enabled to keep everything in correct proportion. The image size should be square, i.e. accounting for the fact that you'll have two rectangular 2:1 images stuck together.

This discovery might not have been so fortuitous for most other scenes. But this one is massively dominated by the preliminary stages (synching objects and updating shaders), which, it turns out, do not have to be recalculated for each viewpoint. This means that the render time is very nearly halved, with the full image still only taking 1.5 minutes to render. And that gets me exactly where I want to be : the render isn't as fast as it could be in principle, but it's certainly fast enough for my purposes.

Later, I found that some simple scenes (like the opening text) render very much slower at 4k than at 2k for no obvious reason. So it turned out to be much faster to render the left and right images separately and composite them in the sequencer, so that sequencer setup file is still quite useful. Why this doesn't apply to the main rendering sequence I have absolutely no clue.

So that was the solution : splitting the file, rending part on a render farm and part locally, rendering both left and right together, and using 2.8. Whew.


Thirty Thousand Galaxies At Five Hundred Trillion Times The Speed Of Light

Without further ado then, here's the final result that took an insane amount of time :


The final rendering was bestraught with all the usual difficulties. I rendered it once, taking about 37 hours, and it looked very nice except that the camera froze for the last ten seconds so I had to render the whole thing again. Annoyingly that increased the rendering time non-linearly to about 48 hours. But that version worked. And the short sequence where the galaxies first appear made use of a modified version of the the multi-pass rendering script, so I got some use out of that after all.

The final sting in the tale was that my VR headeset (an obscure but affordable device by the name of Magicsee M1) decided, as I was about the view the movie for the very first time, that now would be a good time for a firmware update. It's had only one other update since I got it, and since it's obscenely obscure I presumed it was now dead. Apparently not. Foolishly I decided to accept the update since the render wasn't quite done yet... and that broke everything. All my apps, gone. The button to enable VR mode no longer working.

I was not happy. Not at all.

Fortunately it wasn't nearly as bad as it appeared. The built-in movie player simply had a different option to enable VR mode, and my apps were still there but took longer to show up. The VR mode button still enables VR in apps that need it. Christmas was saved, joy was unconfined, there was dancing in the streets, I decided the movie looked quite nice, and that was the end of the whole sorry business.

Tuesday 25 June 2019

Predictably missing satellites : yo dawg, herd you like problems

That recent paper on how the missing satellite problem may be solved by new discoveries of ultra-faint galaxies turned out to be disappointing due to its very small number statistics. But there's no doubt the status of the missing satellite problem is becoming increasingly unclear. Is there still a huge mismatch between the number of satellite galaxies predicted by theory compared to observation, or have better theories and deeper observations finally solved this 20 year-old conundrum ?

There are two reasons the issue isn't settled. First, observationally there are large parts of the sky where we just can't detect anything because of the Milky Way, and we also know the satellite galaxies aren't distributed isotropically. So it's not at all straightforward to extrapolate from the galaxies that we have found to the total number really present. Secondly, the simulations have got much more sophisticated but far more complicated, making it very unclear if they really predict anything or have just been fine-tuned to get results in agreement with observations.

This excellent paper takes a thorough look at the problem of whether the missing satellite problem is really a problem or not. They begin with a very nice overview of the different factors (potentially) at work :

  • Survey incompleteness. It could be that we simply haven't found all the expected satellite galaxies because they're very faint. We also have to be careful that the discoveries match the predictions, i.e. have approximately the correct mass - sheer numbers aren't enough.
  • Host galaxy properties. It could be that the Milky Way is unusual in some way and therefore the predictions based on typical galaxies seen in simulations aren't correct. This is the main focus of the paper.
  • Baryonic physics. The satellites could be fainter than expected due to the 'orribly complicated physics governing star formation, which is still not at all well understood. Maybe they didn't form many stars, or perhaps the baryons had other effects that disrupted their formation (e.g. tides).
  • Exotic physics. Perhaps dark matter itself doesn't behave quite as we expect. This is not covered in any detail here as it's not the topic of the investigation.
Given all this, it's difficult to believe the missing satellite problem isn't solvable. But whether we can actually find the correct solution - that's a much, much harder question.

When it comes to planes of satellites, I've suggested that while simulations (arguably) show that they're expected to be rare, this might be misleading. They may be rare overall, but in fact be very common given the right conditions. If you selected an animal at random from somewhere on the Earth, you might get a giraffe... but you wouldn't conclude this was a typical animal until you had much better statistics. In fact there may not even be such a thing as typical animal, given their huge diversity. Likewise there may not even be a typical galaxy, so predicting how common planes should be could be giving a very confusing picture.

This is the approach the author's adopt for the missing satellite problem. This has hitherto largely been quantified in terms of the mass of the parent galaxy. But even in simulations which use only dark matter, there host galaxy has other properties. Specifically : (i) concentration, which measures the fraction of mass within some radius; (ii) spin parameter - more complicated than rotation, this measures how much of a role rotation (as opposed to random motions) plays in keeping the halo from collapsing; (iii) shape, since dark matter halos tend to be a bit squashed; (iv) halo merger history, with halos which form earlier tending to have fewer satellites later on.

All of these parameters are relatively easy to get from simulations, and they're correlated with each other to various degrees. So it may very well be the case that there is no such thing as a typical spiral galaxy, even if its morphology and mass are precisely specified. It's harder to estimate these parameters for real galaxies, but it can be done, albeit with large errors. And the Milky Way does look quite extreme in some respects. The naive assumption that it's typical is a good one if there's no supporting data, but it would be silly to maintain this assumption if the evidence goes against it. The authors note that even the total mass is uncertain by as much as a factor of two.

How much of a difference do these parameters make to the number of predicted satellites ? They examine this using 45 high resolution pure dark matter simulations. They look at the correlation with various parameters, including using just concentration (which turns out to be the dominant factor after mass) and using a combination of all parameters, as well as comparing this to a model which doesn't use concentration. It's pretty tough going, to be honest, but the answer is interesting : a bit.

Why is that interesting ? Well, it means the missing satellite problem may have been somewhat exaggerated, but it still appears very much to be a problem. Because of all the errors, it's hard to quantify how much of a difference this makes for the smallest satellites (they say the Milky Way should have anything from 1% to 30% fewer tiny satellites than previous predictions), but it's more secure for larger ones (19-52% fewer). This means that although there's still a problem, it's not as dramatic as first thought, and possible solutions may have been over-correcting and therefore need to be revised. Moreover, at the very largest masses, they find the so-called "too big to fail problem" is now even worse than before : the Milky Way appears to have more of the most massive satellites compared to average galaxies, since their results show a decrease in satellites of all masses.

So this is definitely a very interesting piece of work. The missing satellite is still a problem, albeit a potentially solvable problem, but the TBTF problem is getting worse. They note that the major uncertainty is the mass of the Milky Way and (for the TBTF aspect) the resolution of the simulations. Both of these can be addressed, so in time we'll have a better way to tackle the problem of how much of a problem this problematic problem is causing a problem.


Predictably Missing Satellites: Subhalo Abundance in Milky Way-like Halos

On small scales there have been a number of claims of discrepancies between the standard Cold Dark Matter (CDM) model and observations. The 'missing satellites problem' infamously describes the overabundance of subhalos from CDM simulations compared to the number of satellites observed in the Milky Way.

Wednesday 19 June 2019

When is a non-detection not a non-detection ?

When it's part of 690 detections, presumably...

Could there be a bunch of teeny-tiny little galaxies orbiting the Milky Way that are just too damn faint to see ? Maybe. We certainly know about ultra faint galaxies and ultra diffuse galaxies. It seems reasonable that if there are low surface brightness galaxies, where their gas hasn't managed to form many stars, there could also be no surface brightness galaxies - where the gas failed to do anything much at all except sit there like a great big lemon.

This isn't entirely idle speculation either. Not so long ago, it was very difficult to map the sky at the 21 cm wavelengths. It was hoped and thought that such surveys might uncover a whole new population of objects that we hadn't seen before. And since cosmological models predict a much larger number of dark matter halos than detected nearby dwarf galaxies, it seemed entirely reasonable that 21 cm surveys might find a bunch of dark or nearly dark galaxies.

They didn't.

Why not ? One reason might be re-ionisation. Back in the early Universe, the first stars are thought to have been much more massive and more luminous than the pathetic weaklings we have today. Their high-energy photons could have ionised much of the gas, heating it up and driving it out of the smallest dark matter halos. So most of the smallest halos could still be around, but they never accumulated much gas (and hence never formed (m)any stars) before that nasty reionisation front swept in like a great big Nope train of death.

Although getting the details of this to work is damn tricky, there's some pretty good observational support for this : the nearest dwarf satellites of the Milky Way are, quite literally, absolutely devoid of gas. Except, that is, for a galaxy called Leo T, which is nearby, faint, shows signs of fairly recent star formation and has around 100,000 solar masses worth of atomic hydrogen milling around like nothing's the matter. What's going on there ? Could there be any more Leo T's around to help shed some light on this ?

That's what the authors investigate here, using an HI (atomic hydrogen) survey from Arecibo. While extragalactic surveys like AGES and ALFALFA do observe the low redshifts of the Milky Way, they're not designed to deal with really bright extended sources like that. Consequently they're not much good at very low redshifts. They also have a velocity resolution that's fine for more massive galaxies, but poor enough that they might miss the smallest ones. The GALFA-HI survey, on the other hand, doesn't search for more distant galaxies, but is much better for searching nearby in greater detail.

So the authors search the GALFA-HI data using an automatic HI-finding algorithm plus some manual inspection, and come up with a catalogue of 690 candidate detections. Most of these a very high signal to noise so are likely real (and they deliberately use a high S/N cut so their catalogue needs only a minimum of human oversight). They also cross-correlate their results with the optical Pan-STARRS survey. But they didn't find anything much like Leo T. They found one candidate galaxy in the Local Volume, but not actually in the Local Group, that's quite a lot more massive than Leo T - it's probably just an ordinary dwarf galaxy and doesn't tell us much about re-ionisation from the young Milky Way.

Does this lack of Leo T's confirm the re-ionisation theory ? Partially. If you get very close indeed to the Milky Way, other forces like ram pressure stripping come into play, and they're careful to note that their results are only at least consistent with the re-ionisation interpretation.

But surely much more interesting are those 689 detections ! They do not seem to be detected in Pan-STARRS at all, although surely some of them are blocked by the Milky Way (they don't say how many). Only 47 of these were found in the ALFALFA survey, which is surprising because these are all pretty bright objects (the coverage overlap is 50%). True, ALFALF's velocity resolution isn't as good as GALFA-HI, but it's not that bad : and they limit their search to objects with velocity widths > 10 km/s anyway, so it shouldn't make much difference.

So what are all those detections ? They say they're likely to be a mixture of high velocity clouds and faint or dark galaxies. Personally I would have made a much bigger deal out of this. Sod off Leo T, I wanna know about the dark galaxies ! And there are quite likely many more candidates hidden in the data. It's understandable that they used a high S/N cut, but the really interesting detections have a very strong tendency to be faint. With any luck there'll be more papers about this in the not-too-distant future. As it stands, this is a classic case of, "we found something really interesting, but it has nothing much to do with what we were looking for."

A Correlated Search for Local Dwarf Galaxies in GALFA-HI and Pan-STARRS

In recent years, ultrafaint dwarf (UFD) galaxies have been found through systematic searches of large optical surveys. However, the existence of Leo T, a nearby gas-rich dwarf, suggests that there could be other nearby UFDs that are optically obscured but have gas detectable at nonoptical wavelengths.

The un-missing satellite probelm

The missing satellite problem appears to be in the midst of a mid-life crisis. Back in the late 1990's, cosmological simulations predicted there should be many hundreds of satellite galaxies around the Milky Way - about ten times as many as are actually seen. The early simulations only used dark matter particles, which are computationally cheap and mass dominant, but with increased computing power and better understanding of physics, modern ones are using the baryonic matter (gas and stars) as well. And they're not finding much of a missing satellite problem at all.

The problem is that it's highly questionable whether we really have that much better an understanding of physics. There are a lot of free parameters in these simulations because we simply don't have a handle on the values needed, and a lot of physics that isn't handled self-consistently. For example, simulations don't have anywhere near the resolution to predict when individual stars go supernova, so instead they might (for example) assume some supernovae rate and inject mass and energy into the gas accordingly. This can be done in quite sophisticated ways, but it's still a limitation. Given all this, it's not clear if the more recent simulations have really solved the missing satellite problem or just come up with one possible solution that happens to work but has no bearing on reality.

On the observational front things are a bit simpler. We can't un-find galaxies, we can only ever detect more of them. Often once a galaxy has been discovered we'll need more observations to say anything useful about it, but the nice thing about the Local Group is that we can get uniquely detailed information about our nearest neighbours.

This paper describes a discovery from an ongoing survey on the highly advanced 8m Subaru telescope. Such facilities allow extremely high sensitivity over relatively wide areas of the sky - still only a small fraction of the total, but nonetheless useful. The authors have already found two potential ultra faint galaxies with the survey and here they add a third, plus something that's probably a globular cluster.

The kind of objects surveys like this find are so faint that you can't just take a photograph and go,"Hurrah, a galaxy - let's call it Bob !". In fact you can't see them in the photographic images at all. Instead, they have to run statistical searches that look for stellar overdensities, removing any extended objects (i.e. background galaxies) and accounting for the colours of stars and their position on the colour-magnitude diagram. In this way, they can extract coherent structures consistent with stellar evolution models. The process won't find everything by any means, but it's a proven method for finding objects. Once you've got a target you can go and get spectra to find the velocities of the stars to see if they're moving coherently. That's already in progress for the objects here but they don't report any of those results yet.

While spectra would be better, what they report here is interesting by itself. Globular clusters and dwarf galaxies are quite well-separated when you plot their brightness as a function of radius. Based on this, one of their objects is very clearly a dwarf galaxy. The other they favour as a globular cluster, although looking at the trend I'd say it could be either (and they do say it could be a galaxy after all).

But their main result is the number of detections they have so far. They compare it with a standard model of galaxy formation that accounts for two effects : 1) it has some prescription to deal with its low resolution, which means it would otherwise underestimate how many satellite galaxies there should be; 2) it accounts for real galaxies having higher tidal forces than in the model, which would destroy more of the satellites than predicted. These two effects act against each other, though not necessarily equally.

That second effect is quite interesting. It's worth remembering that although dark matter is mass dominant overall, just how dominant it is can have strong local variation. In dwarf galaxies it can make the baryons negligible, but in more massive galaxies the stars and gas can be very substantial. So because they lack the massive discs of gas and stars of real galaxies, pure dark matter simulations underestimate the tidal forces acting to tear small satellites apart. The model they used here attempts (somehow) to account for this.

They then combine this with knowledge of how sensitive their own survey is to predict how many galaxies they might have missed. They find that they're actually detecting more galaxies than predicted, in complete contrast to just about everyone else ever.

This is certainly interesting, but it's not worth getting too excited just yet. They note that the Milky Way may have experienced a merger with another relatively large dwarf galaxy, which could have brought in its own satellites. But while it seems worth a remark, I think a far more likely explanation is simply their terribly small number statistics. Three galaxies just isn't enough to base a sound conclusion on, and they note the simulation they use doesn't account for galaxies as far away as the ones they've found. To their credit, they don't go nuts with this. They could have said ALL OF GALAXY PHYSICS WILL NEED TO BE RE-WRITTEN, and called a press conference declaring themselves to super-duper important. They didn't do that. Instead they just report the findings, note the uncertainties, and go home for a nice cup of tea. We'll have to wait and see how this one develops as the survey progresses, but in the meantime, kudos for them for not getting carried away.

Boötes IV: A New Milky Way Satellite Discovered in the Subaru Hyper Suprime-Cam Survey and Implications for the Missing Satellite Problem

We report on the discovery of a new Milky Way (MW) satellite in Boötes based on data from the on-going Hyper Suprime-Cam (HSC) Subaru Strategic Program (SSP). This satellite, named Boötes IV, is the third ultra-faint dwarf that we have discovered in the HSC-SSP.

Monday 17 June 2019

The problem of dwarves that aren't hot or gassy enough

Another attempt at figuring out whether ultra-diffuse galaxies as as massive as giant spirals or are just very extended puny little dwarfs. This is a problem which refuses to die, though practically everyone seems to think they're probably dwarves.

The issue with these ghostly beasties is that if they're dwarves, we have to explain why they're so much more extended than the ones we've found previously. Of course all existing studies have been biased because we couldn't easily see things this faint before, so what we once thought of as "typical" may be anything but. I suspect a lot of people still haven't realised the potential implications of this yet.

Making dwarves more or less extended could be a challenge, but probably a solvable one. More difficult would be the case that these objects are actually really massive but contain hardly any stars. Galaxy formation models seemed to be working well at the high-mass end, so to find a large number of unexpected giant galaxies would be a real headache. And it's not at all easy to see how a massive dark matter halo could ever avoid accumulating enough gas to form large amounts of stars : the large-scale cosmic web of dark matter implies that where there's dark matter, there you will also find gas and stars.

The authors of this paper attempt a novel method to constrain the mass of the UDGs by looking at their hot X-ray gas content. For more "normal" galaxies there's a nice correlation between X-ray luminosity and total dynamical mass. Unfortunately none of the ~50 UDGs in this sample are detected in X-rays, but in this case that's a good thing. By stacking the observations, the authors can put an upper limit on the average amount of hot gas present. And it's way lower, even accounting for possible uncertainties like distance, than for known massive galaxies. According to the normal relation, these things are much more likely to be dwarves than giants.

But I for one and far from convinced by this interpretation. It's a clever approach and an interesting study, but I don't buy their main conclusion. The problem is that this relies heavily on the assumption that the galaxies did, at one point, accumulate the usual amount of baryonic matter but some process quenched the star formation. It's not at all obvious to me why this should be the case. A much more natural interpretation would be (in my opinion) to say that the galaxies simply never accumulated much gas in the first place, so they've never ever had a chance at forming many stars. If so, there'd be absolutely no reason to assume they'd have as much hot gas as other giant galaxies. And anyway, any process capable of quenching the star formation in a giant galaxy presumably involves driving away the cold star-forming gas, and since hot gas is even easier to remove, I don't see a reason to expect the hot gas to still be hanging around. In short, the logic here is somewhat circular : conventional relations say these objects don't challenge theories of galaxy formation, therefore these objects don't pose a challenge to conventional theories.

So it's an interesting take, but to my mind this is still assuming the conventional scaling relations apply when it might instead provide evidence that they do not. Without direct dynamical mass measurements, we simply can't say if the conventional luminosity-mass relation still holds true.

Constraining the dark matter halo mass of isolated low-surface-brightness galaxies

Recent advancements in the imaging of low-surface-brightness objects revealed numerous ultra-diffuse galaxies in the local Universe. These peculiar objects are unusually extended and faint: their effective radii are comparable to the Milky Way, but their surface brightnesses are lower than that of dwarf galaxies.

Tuesday 11 June 2019

Climbing on a black hole

Letnany is the very end of the Prague metro and a hugely uninspiring place. It has weird random buildings of no apparent function and literally a road to nowhere.


It also has a tiny private airport and a great big exhibition center. Which makes sense considering the only other thing it has is space.

Each year it hosts a popular science festival where various research institutions show off to the public. I've been once before, when it was a small but fun affair and I got to see a 3D printer in action for the first time. This year it was much bigger, featuring not only departments from the Czech Academy of Sciences but also commercial companies like Lego, and for some reason a world championship competition in model car racing.


ESA had a big inflatable Ariane rocket...


... and also a VR display where you could look around the surface of Mars. I stood on top of a rover and made it spin around, which wasn't supposed to happen.

VR displays (and 3D printers) were almost ubiquitous. So much so that I'm making a determined effort to get back into CGI again, which has been on hold (data analysis notwithstanding) for far too long. We'll see how that works out. Though the most numerous exhibit I suppose would be a Chinese lucky cat, since it was placed in an infinity cube (which looked pretty cool and I want one, though I'd rather have an Occulus Quest).

"My God, it's full of cats !"

This year the Astronomical Institute went big. The last time I went we had just a small stall with two or three people and an amateur optical telescope. This year we had a quarter-scale model of the ATHENA X-ray telescope...


... a Raspberry Pi sending messages to the ISS...

I congratulated them on the recent decision to welcome tourists and booked a room.
... and a 5 metre diameter model of a black hole's accretion disc, with a smoke machine in the middle to simulate jets.


Which was extremely cool and I liked it a lot, even if visitors did mistake it for a volcano. Maybe next year we can make it spin. Or make a giant model of a spiral galaxy or something.


Friday 7 June 2019

Oh look, another misleading press release, how amazeballs

If you ever see the phrase, "mystery solved" in a press release, you should immediately spit on it in disgust, burn it, and scatter the ashes to the four winds. Should you need a worked example of this, here's one.

If you've been reading this blog at all, you'll know that I've been closely following the tale of the galaxy (actually there are now two of them) without dark matter. Very recently there have been press releases proclaiming in the usual fashion that the mystery is solved, that there's a simple explanation for the puzzling initial result, hahhah, now we can all go home for tea and stop worrying about it.

The problem, of course, is that this is absolute bollocks.

The best way of explaining why these press releases are talking crap is to recount the main papers on this topic chronologically. The main scientific point to bear in mind is that this discovery depends on the distance to the galaxy - an issue which was raised in the very first paper. If the galaxy is far away, as originally estimated, then it doesn't have any dark matter and is really weird and interesting. If it's substantially closer, then it has a pretty typical dark matter content and is nothing particularly special.

To be fair, the problem is not so much what the press releases say so much as when they say it. Both of them do a nice job of explaining the findings of a paper by Trujillo et al., published in final form in March 2019, which claims the galaxy is closer than originally thought. Why the press release has come out three months later I don't know. It probably helps to know that publishing a paper goes in several stages:
Submission
-> revision
-> acceptance (if you're lucky)
-> proof
-> advanced online access
-> published online for all to see
-> published in print.
Usually, at any stage in this process authors can choose to put the paper on arXiv. They might do this to make the results known as soon as possible or to gain feedback from a wider audience during the reviewing process. Who knows. Anyway, the history of this discovery goes like this :
  • The van Dokkum team published their discovery of a galaxy without dark matter back in March 2018. This immediately came under criticism, though much of it was very silly and unjustified.
  • The Trujillo paper first appeared on arXiv prior to acceptance all the way back in July 2018. This was much better than most of the other criticism and was pretty compelling stuff. As you can see in the link, I myself thought this was a very credible and appealing explanation. It felt like a very careful and thorough analysis to me, and certainly a much more serious challenge than other criticism which had been raised.
The problem is that that's where the current press releases end, on results that are basically almost a year old. That's a problem, because the science didn't stop a year ago. There were plenty of advancements since then that mean this result is already out of date :
  • The van Dokkum team immediately hit back, publishing a paper in August 2018 saying the the Trujillo distance estimate, which would make the galaxy much closer, was incorrect, and their original much greater distance estimate (which would mean the galaxy was weird and lacking dark matter) was correct all along
  • A completely independent team also published a short paper in August 2018, finding that they agreed with the van Dokkum distance estimate, i.e. that the galaxy is far away and lacks dark matter. The Trujillo paper does not cite this. They do address van Dokkum's response, but only very briefly in a few sentences.
So to call this one "mystery solved" is flat-out wrong (for an even more complete history see this post). There's good evidence that the distance measurement is at best far from settled, and it's very credible that the original distance estimate is correct (for a really complete commentary see van Dokkum's blog, for a piece by Trujillo see this). 

To be clear, there's nothing wrong with Trujillo et al. publishing their result - it absolutely should be published so that people can debate it. At worst, it might be a mistake to do a press release on such a still controversial topic - but raising awareness of the controversy isn't the problem either. The problem is the press releases choosing, yet again, to bluntly declare a difficult problem solved based on one paper, without bothering to examine the history and controversy surrounding the topic. That gives a view which is both over-simplified and confusing at the same time. It paints a picture of scientists as a bunch of over-confident, error-prone, careless nutters. It's damaging for trust and frankly just stupid. 

It's time to stop using the phrase, "mystery solved". In scientific press releases, this is basically an open declaration that the author doesn't understand science at all.

Tuesday 4 June 2019

Smashy smashy !

Remember those two big faint floofy galaxies without dark matter ? Of course you do. Lots of people have tried to explain them but no-one's thought of a really satisfying explanation. At least, not without breaking all of physics, which would be quite annoying.

In this paper Joe Silk chimes in with his own explanation. It's not a catastrophically crazy idea, but I have to say the presentation of the idea is terrible. It lacks any kind of narrative flow, with facts being disconnected from each other and seemingly plucked out of the air at random, with the same subject being oddly split across multiple short paragraphs. Worse, he concentrates on the least interesting aspects of the system, which is very frustrating And there are typos too, just for good measure. Honestly, I find it difficult to believe this paper would have been accepted in its current form if its author wasn't already an established leader in the field.

The two objects are galaxies of comparable size to the Milky Way but with far fewer stars. The most remarkable feature is that whereas the stars and gas in the Milky Way are rotating around the centre at about 220 km/s, the stars in these systems are buzzing around randomly at a leisurely 10 km/s or so. That pretty much rules out any sort of significant extra mass component : there's enough mass in the visible stars alone to account for the motions. If there was extra mass, the stars would necessarily be moving faster. The only way to avoid this would be if the distance had been estimated incorrectly, but independent measurements have more or less confirmed the original estimate. So they really do seem to be devoid of dark matter.

There are two possibilities. Either these objects have been like this since their formation, or they started off as more normal galaxies but lost their dark matter somehow. Now we know some galaxies (or galaxy-like objects at any rate) can be produced by close encounters, where tidal forces strip away large amounts of stars and gas that can become gravitationally self-bound. But it doesn't look awfully likely that that explanation is correct is this case. And it's hard to see how objects like this could have formed directly : their stars are moving so slowly that there just hasn't enough time for them to become the smooth spheroidal objects we see. They'd also be extremely vulnerable to any interactions with their more massive neighbours.

Silk's idea is that they formed like a mini version of the Bullet Cluster. Instead of colliding two clusters of galaxies, Silk postulates that two dwarf galaxies had a (fairly) high-speed collision. But it's not at all clear to me how the hell this is supposed to work, because he goes off on one about the relatively minor details of its unusual globular star cluster system and chemical composition, and - for some reason - some random speculations about intermediate mass and primordial black holes. Oh, and he refers to, "the simulations" in a way that's horribly unclear as to what he's referring, i.e. other people's existing simulations or his own. I just wanted to shake the man and shout, "TALK ABOUT THE KINEMATICS ! THEY'RE THE INTERESTING FEATURE ! DAMMIT MAN, NO-ONE CARES ABOUT THE METALLICITY !".

What would I intuitively expect to happen in a dwarf galaxy high-speed, head-on collision ? I guess the gas would go splat* and form some weird starry structure in the middle. I also know from first-hand experience that the displacement of the gas, if sufficiently massive, would cause a strong distortion of the pre-existing stars. There would, for sure, be some very nice fireworks. What I cannot see is how this is supposed to remove the dark matter and leave behind at least one (possibly two) nice spheroidal swarms of lazy stars. This badly needs a simulation or at the very least an illustration as to what the heck is supposed to happen, because currently it feels more like, "randomly making stuff up" than an actual paper.

* Or squelch. Or splwergh. Or schwpoof. Perhaps flwhooop.

Ultra-diffuse galaxies without dark matter

I develop a high velocity galaxy collision model to explain a rare but puzzling phenomenon, namely the apparent existence of ultra-diffuse galaxies with little dark matter.

Back from the grave ?

I'd thought that the controversy over NGC 1052-DF2 and DF4 was at least partly settled by now, but this paper would have you believe ot...