Пример #1
0
def test_arg_of_periapsis():
    r""" Test for Argument of Periapsis Function
    """

    r_vector = [1, 2, 3]
    h_vector = [-3, 6, -3]
    e_vector = [2, 3, 4]
    actual_out = RV2COE.arg_of_periapsis(r_vector, e_vector, h_vector)
    expected_out = 0.12186756768575521

    np.testing.assert_allclose(actual_out, expected_out)
Пример #2
0
        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
        if (raan < 0):
            raan = 2 * np.pi + raan