def test_R_A_A_N(): r""" Test for RAAN Function """ n_vector = [.25, .5, .75] actual_out = RV2COE.R_A_A_N(n_vector) expected_out = 1.1071487177940904 np.testing.assert_allclose(actual_out, expected_out)
r"""Inner Workings, Pulling outside functions""" h_input = RV2COE.ang_momentum(r_input, v_input) e_vector = RV2COE.eccentricity(mu, r_input, v_input, h_input) n_vector = RV2COE.line_of_nodes(RV2COE.unit_vector(h_input)) p = RV2COE.semi_latus_rectum(mu, h_input) theta = RV2COE.true_anom(r_input, h_input, e_vector) i = RV2COE.inclination(RV2COE.unit_vector(h_input)) a = RV2COE.semi_major_axis(p, np.linalg.norm(e_vector)) raan = RV2COE.R_A_A_N(n_vector) w = RV2COE.arg_of_periapsis(n_vector, e_vector, h_input) r_p = RV2COE.rad_peri(p, np.linalg.norm(e_vector)) r_a = RV2COE.rad_apo(p, np.linalg.norm(e_vector)) gamma = RV2COE.flight_ang(np.linalg.norm(e_vector), theta) period = RV2COE.Orbit_Period(mu, a) if (theta < 0): theta = 2 * np.pi + theta else: theta = theta