I have been meaning to tidy up the way TempLS deals with the regular lat/lon SST grid on the globe. I use ERSST, which has a 2x2° grid. This is finer than I need; it gives the sea much more coverage tha the land gets, and besides being overkill, it distorts near coasts, making them more marine. So I had reduced it to a regular 4x4 grid, and left it at that.
But that has problems near the poles, as you can see in this image:
The grid packs in lots of nodes along the upper latitudes. This is ugly, inefficient, and may have distorting effects in making the polar region more marine than it should, although I'm not sure about that.
So I looked for a better way of culling nodes to get a much more even mesh. The ideal is to have triangles close to equilateral. I have been able to get it down to something like this:
I don't think there is much effect on the resulting average, mainly because SST is still better resolved than land. But it is safer, and looks more elegant.
And as an extra benefit, in comparing results I found a bug in TempLS that had been puzzling me. Some, but not all, months had been showing a lot of drift after the initial publication of results. I found this was due to my system for saving time by storing meshed weights for past months. The idea is that if the station mix changes, the weights will be recalculated. But for nodes which drop out (mostly through acquiring a quality flag) this wasn't happening. I have fixed that.
Below the jump, I'll describe the algorithm and show a WebGL mesh in the new system.
I first decide on a reduction plan near the equator, which could be no reduction at all. In this case, I decided to keep all the latitudes, but omit every second node along each latitude. So I am reducing there by a factor of 2 instead of 4. I also stagger adjacent latitudes. I should have been doing this before. It means that the triangles are isosceles, and closer to equilateral.
I then work out, using the cos latitude contraction toward the poles, when I could get closer to the equatorial spacing by leaving just one in three, or one in four etc, still staggering rows with equal spacing.
Because I have doubled the density at the equator, I end up with more nodes, but not twice as many. It ends up with about 3500 instead of 2300, and a total of about 6000 altogether in recent years.
So here is the mesh plot, using the recent MoyGLV2 WebGL system. As usual, you can trackball and zoom, but not much else here.
Wednesday, March 15, 2017
Here is a table comparing TempLS results for 2016 with the two meshes. There is very little change.
Posted by Nick Stokes at 8:47 PM