diff --git a/tests/test_periapsis_burn.cpp b/tests/test_periapsis_burn.cpp index cc30cd6..3cedae1 100644 --- a/tests/test_periapsis_burn.cpp +++ b/tests/test_periapsis_burn.cpp @@ -24,8 +24,7 @@ SCENARIO("Periapsis-triggered prograde burn behavior", "[maneuver][periapsis]") // Shared fixture values (from precalc_periapsis_burn.py) const double initial_periapsis = 7259700.0; const double burn1_preburn_v = 8448.412303782408344; - const double burn1_expected_sma = 13404876.6810; - const double burn1_expected_v = 8943.1448; + const double burn1_expected_sma = 13404876.681005753576756; // BurnResult captures exact pre-burn state vectors, enabling tight // tolerances (R_TOL, ANG_TOL) for periapsis assertions. @@ -41,7 +40,6 @@ SCENARIO("Periapsis-triggered prograde burn behavior", "[maneuver][periapsis]") } SECTION("prograde burn at periapsis fires immediately and raises orbit") { - double v_before = vec3_magnitude(craft->local_velocity); double a_before = craft->orbit.semi_major_axis; double e_before = craft->orbit.eccentricity; double peri_before = a_before * (1.0 - e_before); @@ -67,15 +65,13 @@ SCENARIO("Periapsis-triggered prograde burn behavior", "[maneuver][periapsis]") // Pre-burn velocity captured at exact burn time (tight tolerance) REQUIRE_THAT(vec3_magnitude(br.velocity), WithinAbs(burn1_preburn_v, V_TOL)); - // Semi-major axis and velocity after burn + 60s propagation (propagation-level tolerance) + // Semi-major axis after burn + 60s propagation (propagation-level tolerance) REQUIRE_THAT(final_sma, WithinAbs(burn1_expected_sma, A_TOL * 10)); - REQUIRE_THAT(vec3_magnitude(craft->local_velocity), WithinAbs(burn1_expected_v, V_TOL * 100)); INFO("Initial SMA: " << a_before << " m"); INFO("Final SMA: " << final_sma << " m"); INFO("Initial periapsis: " << peri_before << " m"); INFO("Final periapsis: " << final_periapsis << " m"); - INFO("Velocity change: " << (v_before - vec3_magnitude(craft->local_velocity)) << " m/s"); INFO("Burn time position: " << br.position.x << ", " << br.position.y << ", " << br.position.z); INFO("Burn time velocity: " << br.velocity.x << ", " << br.velocity.y << ", " << br.velocity.z); }