def test_mlt2mlon_offset(): apex_out = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(apex_out.mlt2mlon(0, date), apex_out.mlt2mlon(1, date) - 15) assert_allclose(apex_out.mlt2mlon(0, date), apex_out.mlt2mlon(10, date) - 150)
def test_mlt2mlon2mlt(): apex_out = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(apex_out.mlt2mlon(apex_out.mlon2mlt(0, date), date), 0) assert_allclose(apex_out.mlt2mlon(apex_out.mlon2mlt(90, date), date), 90) assert_allclose(apex_out.mlt2mlon(apex_out.mlon2mlt(180, date), date), 180) assert_allclose(apex_out.mlt2mlon(apex_out.mlon2mlt(270, date), date), 270) assert_allclose(apex_out.mlt2mlon(apex_out.mlon2mlt(360, date), date), 0)
def test_mlt2mlon2mlt(): A = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(A.mlt2mlon(A.mlon2mlt(0, date), date), 0) assert_allclose(A.mlt2mlon(A.mlon2mlt(90, date), date), 90) assert_allclose(A.mlt2mlon(A.mlon2mlt(180, date), date), 180) assert_allclose(A.mlt2mlon(A.mlon2mlt(270, date), date), 270) assert_allclose(A.mlt2mlon(A.mlon2mlt(360, date), date), 0)
def test_mlon2mlt2mlon(): apex_out = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(apex_out.mlon2mlt(apex_out.mlt2mlon(0, date), date), 0) assert_allclose(apex_out.mlon2mlt(apex_out.mlt2mlon(6, date), date), 6) assert_allclose(apex_out.mlon2mlt(apex_out.mlt2mlon(12, date), date), 12) assert_allclose(apex_out.mlon2mlt(apex_out.mlt2mlon(18, date), date), 18) assert_allclose(apex_out.mlon2mlt(apex_out.mlt2mlon(24, date), date), 0)
def test_mlon2mlt2mlon(): A = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(A.mlon2mlt(A.mlt2mlon(0, date), date), 0) assert_allclose(A.mlon2mlt(A.mlt2mlon(6, date), date), 6) assert_allclose(A.mlon2mlt(A.mlt2mlon(12, date), date), 12) assert_allclose(A.mlon2mlt(A.mlt2mlon(18, date), date), 18) assert_allclose(A.mlon2mlt(A.mlt2mlon(24, date), date), 0)
def test_mlt2mlon_range(): A = Apex(date=2000, refh=300) assert_allclose(A.mlt2mlon(range(0, 25, 2), dt.datetime(2000, 2, 3, 4, 5, 6)), [14.705551, 44.705551, 74.705551, 104.705551, 134.705551, 164.705551, 194.705551, 224.705551, 254.705551, 284.705551, 314.705551, 344.705551, 14.705551], rtol=1e-4)
def test_mlt2mlon_range(): apex_out = Apex(date=2000, refh=300) assert_allclose(apex_out.mlt2mlon(range( 0, 25, 2), dt.datetime(2000, 2, 3, 4, 5, 6)), [ 14.705551, 44.705551, 74.705551, 104.705551, 134.705551, 164.705551, 194.705551, 224.705551, 254.705551, 284.705551, 314.705551, 344.705551, 14.705551 ], rtol=1e-4)
def test_convert_mlt2apex(): datetime = dt.datetime(2000, 3, 9, 14, 25, 58) A = Apex(date=2000, refh=300) assert_allclose( A.convert(60, 15, 'mlt', 'apex', height=100, datetime=datetime, ssheight=2e5), (60, A.mlt2mlon(15, datetime, ssheight=2e5)))
def test_convert_mlt2qd(): datetime = dt.datetime(2000, 3, 9, 14, 25, 58) apex_out = Apex(date=2000, refh=300) assert_allclose( apex_out.convert(60, 15, 'mlt', 'qd', height=100, datetime=datetime, ssheight=2e5), apex_out.apex2qd(60, apex_out.mlt2mlon(15, datetime, ssheight=2e5), height=100))
def test_convert_mlt2geo(): datetime = dt.datetime(2000, 3, 9, 14, 25, 58) apex_out = Apex(date=2000, refh=300) assert_allclose( apex_out.convert(60, 15, 'mlt', 'geo', height=100, datetime=datetime, precision=1e-2, ssheight=2e5), apex_out.apex2geo(60, apex_out.mlt2mlon(15, datetime, ssheight=2e5), 100, precision=1e-2)[:-1])
def test_convert_mlt2geo(): datetime = dt.datetime(2000, 3, 9, 14, 25, 58) A = Apex(date=2000, refh=300) assert_allclose(A.convert(60, 15, 'mlt', 'geo', height=100, datetime=datetime, precision=1e-2, ssheight=2e5), A.apex2geo(60, A.mlt2mlon(15, datetime, ssheight=2e5), 100, precision=1e-2)[:-1])
def test_mlt2mlon_ssheight(): apex_out = Apex(date=2000, refh=300) mlt = apex_out.mlt2mlon(0, dt.datetime(2000, 2, 3, 4, 5, 6), ssheight=50 * 2000) assert_allclose(mlt, 14.599319458007812)
def test_mlt2mlon_2Darray(): apex_out = Apex(date=2000, refh=300) assert_allclose(apex_out.mlt2mlon([[0, 12], [0, 12]], dt.datetime(2000, 2, 3, 4, 5, 6)), [[14.705551, 194.705551], [14.705551, 194.705551]], rtol=1e-4)
def test_mlt2mlon_offset(): A = Apex(date=2000, refh=300) date = dt.datetime(2000, 2, 3, 4, 5, 6) assert_allclose(A.mlt2mlon(0, date), A.mlt2mlon(1, date) - 15) assert_allclose(A.mlt2mlon(0, date), A.mlt2mlon(10, date) - 150)
def test_mlt2mlon_diffdates(): A = Apex(date=2000, refh=300) assert A.mlt2mlon(0, dt.datetime(2000, 2, 3, 4, 5, 6)) != A.mlt2mlon(0, dt.datetime(2000, 2, 3, 5, 5, 6))
def test_mlt2mlon_2Darray(): A = Apex(date=2000, refh=300) assert_allclose(A.mlt2mlon([[0, 12], [0, 12]], dt.datetime(2000, 2, 3, 4, 5, 6)), [[14.705551, 194.705551], [14.705551, 194.705551]], rtol=1e-4)
def test_mlt2mlon_ssheight(): A = Apex(date=2000, refh=300) mlt = A.mlt2mlon(0, dt.datetime(2000, 2, 3, 4, 5, 6), ssheight=50*2000) assert_allclose(mlt, 14.599319458007812)
def test_mlt2mlon_scalar(): A = Apex(date=2000, refh=300) mlt = A.mlt2mlon(0, dt.datetime(2000, 2, 3, 4, 5, 6)) assert_allclose(mlt, 14.705551147460938) assert type(mlt) != np.ndarray
def test_convert_mlt2qd(): datetime = dt.datetime(2000, 3, 9, 14, 25, 58) A = Apex(date=2000, refh=300) assert_allclose(A.convert(60, 15, 'mlt', 'qd', height=100, datetime=datetime, ssheight=2e5), A.apex2qd(60, A.mlt2mlon(15, datetime, ssheight=2e5), height=100))
def test_mlt2mlon_scalar(): apex_out = Apex(date=2000, refh=300) mlt = apex_out.mlt2mlon(0, dt.datetime(2000, 2, 3, 4, 5, 6)) assert_allclose(mlt, 14.705551147460938) assert type(mlt) != np.ndarray
def test_mlt2mlon_1Darray(): A = Apex(date=2000, refh=300) assert_allclose(A.mlt2mlon([0, 12], dt.datetime(2000, 2, 3, 4, 5, 6)), [14.705551, 194.705551], rtol=1e-4)
def test_mlt2mlon_diffdates(): apex_out = Apex(date=2000, refh=300) dtime1 = dt.datetime(2000, 2, 3, 4, 5, 6) dtime2 = dt.datetime(2000, 2, 3, 5, 5, 6) assert apex_out.mlt2mlon(0, dtime1) != apex_out.mlt2mlon(0, dtime2)