def test_stat_holland(self):
        """Test _stat_holland function. Compare to MATLAB reference."""
        d_centr = np.array([[293.6067129546862, 298.2652319413182]])
        r_max = np.array([75.547902916671745])
        hol_b = np.array([1.265551666104679])
        penv = np.array([1010.0])
        pcen = np.array([1005.268166666671])
        lat = np.array([12.299999279463769])
        mask = np.ones_like(d_centr, dtype=bool)

        _v_arr = _stat_holland(d_centr, r_max, hol_b, penv, pcen, lat, mask)[0]
        self.assertAlmostEqual(_v_arr[0], 5.384115724400597)
        self.assertAlmostEqual(_v_arr[1], 5.281356766052531)

        d_centr = np.array([[]])
        mask = np.ones_like(d_centr, dtype=bool)
        _v_arr = _stat_holland(d_centr, r_max, hol_b, penv, pcen, lat, mask)[0]
        self.assertTrue(np.array_equal(_v_arr, np.array([])))

        d_centr = np.array([
                [299.4501244109841, 291.0737897183741, 292.5441003235722]
        ])
        r_max = np.array([40.665454622610511])
        hol_b = np.array([1.486076257880692])
        penv = np.array([1010.0])
        pcen = np.array([970.8727666672957])
        lat = np.array([14.089110370469488])
        mask = np.ones_like(d_centr, dtype=bool)

        _v_arr = _stat_holland(d_centr, r_max, hol_b, penv, pcen, lat, mask)[0]
        self.assertAlmostEqual(_v_arr[0], 11.279764005440288)
        self.assertAlmostEqual(_v_arr[1], 11.682978583939310)
        self.assertAlmostEqual(_v_arr[2], 11.610940769149384)
Beispiel #2
0
    def test_stat_holland(self):
        """ Test _stat_holland function. Compare to MATLAB reference."""
        r_arr = np.array([293.6067129546862, 298.2652319413182])
        r_max = 75.547902916671745
        hol_b = 1.265551666104679
        penv = 1010
        pcen = 1005.268166666671
        ycoord = 12.299999279463769

        _v_arr = tc._stat_holland(r_arr, r_max, hol_b, penv, pcen, ycoord)
        self.assertAlmostEqual(_v_arr[0], 5.384115724400597)
        self.assertAlmostEqual(_v_arr[1], 5.281356766052531)

        r_arr = np.array([])
        _v_arr = tc._stat_holland(r_arr, r_max, hol_b, penv, pcen, ycoord)
        self.assertTrue(np.array_equal(_v_arr, np.array([])))

        r_arr = np.array(
            [299.4501244109841, 291.0737897183741, 292.5441003235722])
        r_max = 40.665454622610511
        hol_b = 1.486076257880692
        penv = 1010
        pcen = 970.8727666672957
        ycoord = 14.089110370469488

        _v_arr = tc._stat_holland(r_arr, r_max, hol_b, penv, pcen, ycoord)
        self.assertAlmostEqual(_v_arr[0], 11.279764005440288)
        self.assertAlmostEqual(_v_arr[1], 11.682978583939310)
        self.assertAlmostEqual(_v_arr[2], 11.610940769149384)