コード例 #1
0
    def test_as_cartopy_projection(self):
        latitude_of_projection_origin = -90.0
        longitude_of_projection_origin = -45.0
        false_easting = 100.0
        false_northing = 200.0
        ellipsoid = GeogCS(6377563.396, 6356256.909)

        st = Stereographic(
            central_lat=latitude_of_projection_origin,
            central_lon=longitude_of_projection_origin,
            false_easting=false_easting,
            false_northing=false_northing,
            ellipsoid=ellipsoid,
        )
        expected = ccrs.Stereographic(
            central_latitude=latitude_of_projection_origin,
            central_longitude=longitude_of_projection_origin,
            false_easting=false_easting,
            false_northing=false_northing,
            globe=ccrs.Globe(
                semimajor_axis=6377563.396,
                semiminor_axis=6356256.909,
                ellipse=None,
            ),
        )

        res = st.as_cartopy_projection()
        self.assertEqual(res, expected)
コード例 #2
0
 def test_optional_args_None(self):
     # Check expected defaults with optional args=None.
     crs = Stereographic(0,
                         0,
                         false_easting=None,
                         false_northing=None,
                         true_scale_lat=None)
     self._check_crs_defaults(crs)
コード例 #3
0
def stereo():
    return Stereographic(
        central_lat=-90,
        central_lon=-45,
        false_easting=100,
        false_northing=200,
        ellipsoid=GeogCS(6377563.396, 6356256.909),
    )
コード例 #4
0
 def test_set_optional_args(self):
     # Check that setting the optional (non-ellipse) args works.
     crs = Stereographic(0,
                         0,
                         false_easting=100,
                         false_northing=-203.7,
                         true_scale_lat=77)
     self.assertEqualAndKind(crs.false_easting, 100.0)
     self.assertEqualAndKind(crs.false_northing, -203.7)
     self.assertEqualAndKind(crs.true_scale_lat, 77.0)
コード例 #5
0
ファイル: test_Saver.py プロジェクト: juanmcloaiza/iris_fork
 def _stereo_cube(self, ellipsoid=None):
     data = np.arange(12).reshape(3, 4)
     cube = Cube(data, 'air_pressure_anomaly')
     stereo = Stereographic(-10.0, 20.0, 500000.0, -200000.0, None,
                            ellipsoid)
     coord = DimCoord(np.arange(3), 'projection_y_coordinate', units='m',
                      coord_system=stereo)
     cube.add_dim_coord(coord, 0)
     coord = DimCoord(np.arange(4), 'projection_x_coordinate', units='m',
                      coord_system=stereo)
     cube.add_dim_coord(coord, 1)
     return cube
コード例 #6
0
ファイル: test_coordsystem.py プロジェクト: SciTools/iris
    def test_as_cartopy_projection(self):
        latitude_of_projection_origin=-90.0
        longitude_of_projection_origin=-45.0
        false_easting=100.0
        false_northing=200.0
        ellipsoid=GeogCS(6377563.396, 6356256.909)

        st = Stereographic(central_lat=latitude_of_projection_origin,
            central_lon=longitude_of_projection_origin,
            false_easting=false_easting,
            false_northing=false_northing,
            ellipsoid=ellipsoid)
        expected = ccrs.Stereographic(
            central_latitude=latitude_of_projection_origin,
            central_longitude=longitude_of_projection_origin,
            false_easting=false_easting,
            false_northing=false_northing,
            globe=ccrs.Globe(semimajor_axis=6377563.396,
                             semiminor_axis=6356256.909, ellipse=None))

        res = st.as_cartopy_projection()
        self.assertEqual(res, expected)
    def test_valid(self):
        cf_grid_var = mock.Mock(spec=[],
                                latitude_of_projection_origin=0,
                                longitude_of_projection_origin=0,
                                false_easting=-100,
                                false_northing=200,
                                scale_factor_at_projection_origin=1,
                                semi_major_axis=6377563.396,
                                semi_minor_axis=6356256.909)

        cs = build_stereographic_coordinate_system(None, cf_grid_var)

        expected = Stereographic(
            central_lat=cf_grid_var.latitude_of_projection_origin,
            central_lon=cf_grid_var.longitude_of_projection_origin,
            false_easting=cf_grid_var.false_easting,
            false_northing=cf_grid_var.false_northing,
            ellipsoid=iris.coord_systems.GeogCS(cf_grid_var.semi_major_axis,
                                                cf_grid_var.semi_minor_axis))
        self.assertEqual(cs, expected)
コード例 #8
0
ファイル: test_Saver.py プロジェクト: pdearnshaw/iris
 def _stereo_cube(self, ellipsoid=None):
     data = self.array_lib.arange(12).reshape(3, 4)
     cube = Cube(data, "air_pressure_anomaly")
     stereo = Stereographic(-10.0, 20.0, 500000.0, -200000.0, None,
                            ellipsoid)
     coord = DimCoord(
         np.arange(3),
         "projection_y_coordinate",
         units="m",
         coord_system=stereo,
     )
     cube.add_dim_coord(coord, 0)
     coord = DimCoord(
         np.arange(4),
         "projection_x_coordinate",
         units="m",
         coord_system=stereo,
     )
     cube.add_dim_coord(coord, 1)
     return cube
コード例 #9
0
    def _test(self, inverse_flattening=False, no_offsets=False):
        test_easting = -100
        test_northing = 200
        gridvar_props = dict(
            latitude_of_projection_origin=0,
            longitude_of_projection_origin=0,
            false_easting=test_easting,
            false_northing=test_northing,
            scale_factor_at_projection_origin=1,
            semi_major_axis=6377563.396,
        )

        if inverse_flattening:
            gridvar_props["inverse_flattening"] = 299.3249646
            expected_ellipsoid = iris.coord_systems.GeogCS(
                6377563.396, inverse_flattening=299.3249646)
        else:
            gridvar_props["semi_minor_axis"] = 6356256.909
            expected_ellipsoid = iris.coord_systems.GeogCS(
                6377563.396, 6356256.909)

        if no_offsets:
            del gridvar_props["false_easting"]
            del gridvar_props["false_northing"]
            test_easting = 0
            test_northing = 0

        cf_grid_var = mock.Mock(spec=[], **gridvar_props)

        cs = build_stereographic_coordinate_system(None, cf_grid_var)

        expected = Stereographic(
            central_lat=cf_grid_var.latitude_of_projection_origin,
            central_lon=cf_grid_var.longitude_of_projection_origin,
            false_easting=test_easting,
            false_northing=test_northing,
            ellipsoid=expected_ellipsoid,
        )

        self.assertEqual(cs, expected)
コード例 #10
0
 def test_no_optional_args(self):
     # Check expected defaults with no optional args.
     crs = Stereographic(0, 0)
     self._check_crs_defaults(crs)