Example #1
0
    def test_check_sol_dec_rad(self):
        with self.assertRaises(ValueError):
            _check.check_sol_dec_rad(deg2rad(-23.5001))

        with self.assertRaises(ValueError):
            _check.check_sol_dec_rad(deg2rad(23.5001))

        self.assertIsNone(_check.check_sol_dec_rad(deg2rad(-23.5)))
        self.assertIsNone(_check.check_sol_dec_rad(deg2rad(23.5)))
Example #2
0
    def test_check_sunset_hour_angle_rad(self):
        with self.assertRaises(ValueError):
            _check.check_sunset_hour_angle_rad(deg2rad(-0.00001))

        with self.assertRaises(ValueError):
            _check.check_sunset_hour_angle_rad(deg2rad(180.00001))

        self.assertIsNone(_check.check_sunset_hour_angle_rad(deg2rad(0.0)))
        self.assertIsNone(_check.check_sunset_hour_angle_rad(deg2rad(180.0)))
Example #3
0
    def test_check_sunset_hour_angle_rad(self):
        with self.assertRaises(ValueError):
            _check.check_sunset_hour_angle_rad(deg2rad(-0.00001))

        with self.assertRaises(ValueError):
            _check.check_sunset_hour_angle_rad(deg2rad(180.00001))

        self.assertIsNone(_check.check_sunset_hour_angle_rad(deg2rad(0.0)))
        self.assertIsNone(_check.check_sunset_hour_angle_rad(deg2rad(180.0)))
Example #4
0
    def test_check_latitude_rad(self):
        with self.assertRaises(ValueError):
            _check.check_latitude_rad(deg2rad(-90.0001))

        with self.assertRaises(ValueError):
            _check.check_latitude_rad(deg2rad(90.0001))

        self.assertIsNone(_check.check_latitude_rad(deg2rad(-90)))
        self.assertIsNone(_check.check_latitude_rad(deg2rad(90)))
Example #5
0
    def test_check_sol_dec_rad(self):
        with self.assertRaises(ValueError):
            _check.check_sol_dec_rad(deg2rad(-23.5001))

        with self.assertRaises(ValueError):
            _check.check_sol_dec_rad(deg2rad(23.5001))

        self.assertIsNone(_check.check_sol_dec_rad(deg2rad(-23.5)))
        self.assertIsNone(_check.check_sol_dec_rad(deg2rad(23.5)))
Example #6
0
    def test_check_latitude_rad(self):
        with self.assertRaises(ValueError):
            _check.check_latitude_rad(deg2rad(-90.0001))

        with self.assertRaises(ValueError):
            _check.check_latitude_rad(deg2rad(90.0001))

        self.assertIsNone(_check.check_latitude_rad(deg2rad(-90)))
        self.assertIsNone(_check.check_latitude_rad(deg2rad(90)))
Example #7
0
"""
Internal validation functions.

:copyright: (c) 2015 by Mark Richards.
:license: BSD 3-Clause, see LICENSE.txt for more details.
"""
from pyeto.convert import deg2rad

# Internal constants
# Latitude
_MINLAT_RADIANS = deg2rad(-90.0)
_MAXLAT_RADIANS = deg2rad(90.0)

# Solar declination
_MINSOLDEC_RADIANS = deg2rad(-23.5)
_MAXSOLDEC_RADIANS = deg2rad(23.5)

# Sunset hour angle
_MINSHA_RADIANS = 0.0
_MAXSHA_RADIANS = deg2rad(180)


def check_day_hours(hours, arg_name):
    """
    Check that *hours* is in the range 1 to 24.
    """
    if not 0 <= hours <= 24:
        raise ValueError('{0} should be in range 0-24: {1!r}'.format(
            arg_name, hours))

Example #8
0
 def test_et_rad(self):
     # Test based on example 8, p.80 of FAO paper
     etrad = pyeto.et_rad(convert.deg2rad(-20), 0.120, 1.527, 0.985)
     self.assertAlmostEqual(etrad, 32.2, 1)
Example #9
0
 def test_sunset_hour_angle(self):
     # Test based on example 8, p.80 of FAO paper
     sha = pyeto.sunset_hour_angle(convert.deg2rad(-20), 0.120)
     self.assertAlmostEqual(sha, 1.527, 3)
Example #10
0
"""
Internal validation functions.

:copyright: (c) 2015 by Mark Richards.
:license: BSD 3-Clause, see LICENSE.txt for more details.
"""
from pyeto.convert import deg2rad

# Internal constants
# Latitude
_MINLAT_RADIANS = deg2rad(-90.0)
_MAXLAT_RADIANS = deg2rad(90.0)

# Solar declination
_MINSOLDEC_RADIANS = deg2rad(-23.5)
_MAXSOLDEC_RADIANS = deg2rad(23.5)

# Sunset hour angle
_MINSHA_RADIANS = 0.0
_MAXSHA_RADIANS = deg2rad(180)


def check_day_hours(hours, arg_name):
    """
    Check that *hours* is in the range 1 to 24.
    """
    if not 0 <= hours <= 24:
        raise ValueError(
            '{0} should be in range 0-24: {1!r}'.format(arg_name, hours))

Example #11
0
 def test_et_rad(self):
     # Test based on example 8, p.80 of FAO paper
     etrad = pyeto.et_rad(convert.deg2rad(-20), 0.120, 1.527, 0.985)
     self.assertAlmostEqual(etrad, 32.2, 1)
Example #12
0
 def test_sunset_hour_angle(self):
     # Test based on example 8, p.80 of FAO paper
     sha = pyeto.sunset_hour_angle(convert.deg2rad(-20), 0.120)
     self.assertAlmostEqual(sha, 1.527, 3)