def _check(self, lblev=37.0, blev=9596.3, brlev=9500.0, brsvd1=9800.0, bhlev=0.35, bhrlev=0.31, brsvd2=0.39, dim=None): lbvc = 65 lbcode = _lbcode(0) # unused stash = STASH(1, 1, 1) # unused coords_and_dims, factories = _convert_vertical_coords( lbcode=lbcode, lbvc=lbvc, blev=blev, lblev=lblev, stash=stash, bhlev=bhlev, bhrlev=bhrlev, brsvd1=brsvd1, brsvd2=brsvd2, brlev=brlev, dim=dim) expect_coords_and_dims = [ (DimCoord(lblev, standard_name='model_level_number', attributes={'positive': 'up'}), dim)] brlev = np.atleast_1d(brlev) brsvd1 = np.atleast_1d(brsvd1) expect_coords_and_dims.append( (DimCoord(blev, long_name='level_height', units='m', bounds=np.vstack((brlev, brsvd1)).T, attributes={'positive': 'up'}), dim)) bhrlev = np.atleast_1d(bhrlev) brsvd2 = np.atleast_1d(brsvd2) expect_coords_and_dims.append( (AuxCoord(bhlev, long_name='sigma', bounds=np.vstack((bhrlev, brsvd2)).T), dim)) expect_factories = [(HybridHeightFactory, [{'long_name': 'level_height'}, {'long_name': 'sigma'}, Reference('orography')])] self.assertCoordsAndDimsListsMatch(coords_and_dims, expect_coords_and_dims) self.assertEqual(factories, expect_factories)
def _check(self, lblev=37.0, bhlev=850.1, bhrlev=810.0, brsvd2=875.0, blev=0.15, brlev=0.11, brsvd1=0.19, expect_match=True, dim=None): lbvc = 9 lbcode = _lbcode(0) # unused stash = STASH(1, 1, 1) # unused coords_and_dims, factories = _convert_vertical_coords(lbcode=lbcode, lbvc=lbvc, blev=blev, lblev=lblev, stash=stash, bhlev=bhlev, bhrlev=bhrlev, brsvd1=brsvd1, brsvd2=brsvd2, brlev=brlev, dim=dim) expect_coords_and_dims = [(DimCoord(lblev, standard_name='model_level_number', attributes={'positive': 'up'}), dim)] bhrlev = np.atleast_1d(bhrlev) brsvd2 = np.atleast_1d(brsvd2) expect_coords_and_dims.append((DimCoord(bhlev, long_name='level_pressure', units='Pa', bounds=np.vstack( (bhrlev, brsvd2)).T), dim)) brlev = np.atleast_1d(brlev) brsvd1 = np.atleast_1d(brsvd1) expect_coords_and_dims.append((AuxCoord(blev, long_name='sigma', bounds=np.vstack( (brlev, brsvd1)).T), dim)) expect_factories = [(HybridPressureFactory, [{ 'long_name': 'level_pressure' }, { 'long_name': 'sigma' }, Reference('surface_air_pressure')])] self.assertCoordsAndDimsListsMatch(coords_and_dims, expect_coords_and_dims) self.assertEqual(factories, expect_factories)
def _check( self, lblev=37.0, blev=9596.3, brlev=9500.0, brsvd1=9800.0, bhlev=0.35, bhrlev=0.31, brsvd2=0.39, dim=None, ): lbvc = 65 lbcode = _lbcode(0) # unused stash = STASH(1, 1, 1) # unused coords_and_dims, factories = _convert_vertical_coords( lbcode=lbcode, lbvc=lbvc, blev=blev, lblev=lblev, stash=stash, bhlev=bhlev, bhrlev=bhrlev, brsvd1=brsvd1, brsvd2=brsvd2, brlev=brlev, dim=dim, ) expect_coords_and_dims = [( DimCoord( lblev, standard_name="model_level_number", attributes={"positive": "up"}, ), dim, )] brlev = np.atleast_1d(brlev) brsvd1 = np.atleast_1d(brsvd1) expect_coords_and_dims.append(( DimCoord( blev, long_name="level_height", units="m", bounds=np.vstack((brlev, brsvd1)).T, attributes={"positive": "up"}, ), dim, )) bhrlev = np.atleast_1d(bhrlev) brsvd2 = np.atleast_1d(brsvd2) expect_coords_and_dims.append(( AuxCoord( bhlev, long_name="sigma", bounds=np.vstack((bhrlev, brsvd2)).T, ), dim, )) expect_factories = [( HybridHeightFactory, [ { "long_name": "level_height" }, { "long_name": "sigma" }, Reference("orography"), ], )] self.assertCoordsAndDimsListsMatch(coords_and_dims, expect_coords_and_dims) self.assertEqual(factories, expect_factories)
def _check( self, lblev=37.0, bhlev=850.1, bhrlev=810.0, brsvd2=875.0, blev=0.15, brlev=0.11, brsvd1=0.19, expect_match=True, dim=None, ): lbvc = 9 lbcode = _lbcode(0) # unused stash = STASH(1, 1, 1) # unused coords_and_dims, factories = _convert_vertical_coords( lbcode=lbcode, lbvc=lbvc, blev=blev, lblev=lblev, stash=stash, bhlev=bhlev, bhrlev=bhrlev, brsvd1=brsvd1, brsvd2=brsvd2, brlev=brlev, dim=dim, ) expect_coords_and_dims = [( DimCoord( lblev, standard_name="model_level_number", attributes={"positive": "up"}, ), dim, )] bhrlev = np.atleast_1d(bhrlev) brsvd2 = np.atleast_1d(brsvd2) expect_coords_and_dims.append(( DimCoord( bhlev, long_name="level_pressure", units="Pa", bounds=np.vstack((bhrlev, brsvd2)).T, ), dim, )) brlev = np.atleast_1d(brlev) brsvd1 = np.atleast_1d(brsvd1) expect_coords_and_dims.append(( AuxCoord( blev, long_name="sigma", bounds=np.vstack((brlev, brsvd1)).T, ), dim, )) expect_factories = [( HybridPressureFactory, [ { "long_name": "level_pressure" }, { "long_name": "sigma" }, Reference("surface_air_pressure"), ], )] self.assertCoordsAndDimsListsMatch(coords_and_dims, expect_coords_and_dims) self.assertEqual(factories, expect_factories)