Exemple #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)))
Exemple #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)))
Exemple #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)))
Exemple #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)))
Exemple #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)))
Exemple #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)))
Exemple #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))

Exemple #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)
Exemple #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)
Exemple #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))

Exemple #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)
Exemple #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)