def test__qd2geo_longitude(): A = Apex(date=2000, refh=300) assert_allclose(A._qd2geo(60, 180, 100, 1e-2), fa.apxq2g(60, 180, 100, 1e-2)) assert_allclose(A._qd2geo(60, -180, 100, 1e-2), fa.apxq2g(60, -180, 100, 1e-2)) assert_allclose(A._qd2geo(60, -180, 100, 1e-2), A._qd2geo(60, 180, 100, 1e-2)) for i in range(-5, 5): for lat in [0, 30, 60, 90]: assert_allclose(A._qd2geo(lat, 15+i*360, 100, 1e-2), fa.apxq2g(lat, 15, 100, 1e-2))
def test__qd2geo_longitude(): apex_out = Apex(date=2000, refh=300) assert_allclose(apex_out._qd2geo(60, 180, 100, 1e-2), fa.apxq2g(60, 180, 100, 1e-2)) assert_allclose(apex_out._qd2geo(60, -180, 100, 1e-2), fa.apxq2g(60, -180, 100, 1e-2)) assert_allclose(apex_out._qd2geo(60, -180, 100, 1e-2), apex_out._qd2geo(60, 180, 100, 1e-2)) for i in range(-5, 5): for lat in [0, 30, 60, 90]: assert_allclose(apex_out._qd2geo(lat, 15 + i * 360, 100, 1e-2), fa.apxq2g(lat, 15, 100, 1e-2))
def test_qd2geo(): A = Apex(date=2000, refh=300) lat, lon, error = A.qd2geo(60, 15, 100, precision=1e-2) assert_allclose((lat, lon, error), A._qd2geo(60, 15, 100, 1e-2)) assert type(lat) != np.ndarray assert type(lon) != np.ndarray assert type(error) != np.ndarray
def test_qd2geo(): apex_out = Apex(date=2000, refh=300) lat, lon, error = apex_out.qd2geo(60, 15, 100, precision=1e-2) assert_allclose((lat, lon, error), apex_out._qd2geo(60, 15, 100, 1e-2)) assert type(lat) != np.ndarray assert type(lon) != np.ndarray assert type(error) != np.ndarray
def test__qd2geo_scalar(): apex_out = Apex(date=2000, refh=300) for lat in [0, 30, 60, 89]: for lon in [-179, -90, 0, 90, 180]: for prec in [-1, 1e-2, 1e-10]: assert_allclose(apex_out._qd2geo(lat, lon, 100, prec), fa.apxq2g(lat, lon, 100, prec))
def test__qd2geo_array(): A = Apex(date=2000, refh=300) lats, lons, errs = A._qd2geo([[0, 30], [60, 90]], 15, [[100, 200], [300, 400]], 1e-2) lat1, lon1, err1 = fa.apxq2g(0, 15, 100, 1e-2) lat2, lon2, err2 = fa.apxq2g(30, 15, 200, 1e-2) lat3, lon3, err3 = fa.apxq2g(60, 15, 300, 1e-2) lat4, lon4, err4 = fa.apxq2g(90, 15, 400, 1e-2) assert_allclose(lats.astype(float), np.array([[lat1, lat2], [lat3, lat4]], dtype=float)) assert_allclose(lons.astype(float), np.array([[lon1, lon2], [lon3, lon4]], dtype=float)) assert_allclose(errs.astype(float), np.array([[err1, err2], [err3, err4]], dtype=float))
def test__qd2geo_array(): apex_out = Apex(date=2000, refh=300) lats, lons, errs = apex_out._qd2geo([[0, 30], [60, 90]], 15, [[100, 200], [300, 400]], 1e-2) lat1, lon1, err1 = fa.apxq2g(0, 15, 100, 1e-2) lat2, lon2, err2 = fa.apxq2g(30, 15, 200, 1e-2) lat3, lon3, err3 = fa.apxq2g(60, 15, 300, 1e-2) lat4, lon4, err4 = fa.apxq2g(90, 15, 400, 1e-2) assert_allclose(lats.astype(float), np.array([[lat1, lat2], [lat3, lat4]], dtype=float)) assert_allclose(lons.astype(float), np.array([[lon1, lon2], [lon3, lon4]], dtype=float)) assert_allclose(errs.astype(float), np.array([[err1, err2], [err3, err4]], dtype=float))
def test__qd2geo_scalar(): A = Apex(date=2000, refh=300) for lat in [0, 30, 60, 89]: for lon in [-179, -90, 0, 90, 180]: for prec in [-1, 1e-2, 1e-10]: assert_allclose(A._qd2geo(lat, lon, 100, prec), fa.apxq2g(lat, lon, 100, prec))