### Question:
SynopticUncertaintyProvider { double dxy(int y) { final double aPole = 37.2069; final double bPole = -0.101691; final double dPole = aPole * spatialResolution + bPole; final double aEquator = 57.8881; final double bEquator = 0.272744; final double dEquator = aEquator * spatialResolution + bEquator; final double lat = 90.0 - spatialResolution * (y + 0.5); final double f = Math.abs(lat) * ONE_DIV_90; return dPole * f + dEquator * (1.0 - f); } SynopticUncertaintyProvider(SpatialResolution spatialResolution, TemporalResolution temporalResolution); double calculate(AggregationCell cell, double a);  }### Answer:
@Test public void testDxy() throws Exception { final SynopticUncertaintyProvider separations = new SynopticUncertaintyProvider(SpatialResolution.DEGREE_5_00, null); assertEquals(188.815598, separations.dxy(0), 0.000001); assertEquals(286.830454, separations.dxy(18), 0.000001); assertEquals(188.815598, separations.dxy(35), 0.000001); assertEquals(240.705816, separations.dxy(9), 0.000001); assertEquals(234.940236, separations.dxy(27), 0.000001); }