From eb9639ba76ac070a2142c5ee6f94466e4ecb1f8f Mon Sep 17 00:00:00 2001 From: Brian Wang Date: Wed, 21 Oct 2026 13:46:07 -0400 Subject: [PATCH 1/2] FIX: correct longitudinal/rotational inertia order --- rocketserializer/components/rocket.py | 2 +- tests/acceptance/test_ork_extractor.py | 6 ++++++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/rocketserializer/components/rocket.py b/rocketserializer/components/rocket.py index 8e79ae8..fdea46f 100644 --- a/rocketserializer/components/rocket.py +++ b/rocketserializer/components/rocket.py @@ -21,7 +21,7 @@ def search_rocket(bs, datapoints, data_labels, burnout_position): logger.info("Collected rocket mass.") # get inertias - inertia_z, inertia_i = get_inertias(data_labels, burnout_position, datapoints) + inertia_i, inertia_z = get_inertias(data_labels, burnout_position, datapoints) settings["inertia"] = (inertia_i, inertia_i, inertia_z) logger.info("Collected rocket inertia.") diff --git a/tests/acceptance/test_ork_extractor.py b/tests/acceptance/test_ork_extractor.py index 5a8dded..a5ad6dd 100644 --- a/tests/acceptance/test_ork_extractor.py +++ b/tests/acceptance/test_ork_extractor.py @@ -1,6 +1,7 @@ import json import pytest +import math @pytest.mark.parametrize( @@ -48,6 +49,11 @@ def test_ork_extractor(expected_results_file, fixture, request): # assert all the keys are equal assert set(settings.keys()) == set(expected_results.keys()) + # roll inertia < pitch inertia for slender rockets + inertia = settings["rocket"]["inertia"] + if not math.isnan(inertia[0]): + assert inertia[2] < inertia[0] + # remove sensitive keys settings, expected_results = remove_sensitive_keys(settings, expected_results) From f19f1d2916a4b7ab66d64761c1ceb2d925a192a6 Mon Sep 17 00:00:00 2001 From: Brian Wang Date: Wed, 21 Oct 2026 13:58:53 -0400 Subject: [PATCH 2/2] fix: swapped inertia order in example parameters.json --- examples/Anonymous--Alpha/parameters.json | 6 +++--- examples/Anonymous--Beta/parameters.json | 6 +++--- examples/Anonymous--Epsilon/parameters.json | 6 +++--- examples/Anonymous--Eta/parameters.json | 6 +++--- examples/Anonymous--Gamma/parameters.json | 6 +++--- examples/Anonymous--Iota/parameters.json | 6 +++--- examples/Anonymous--Kappa/parameters.json | 6 +++--- examples/Anonymous--Lambda/parameters.json | 6 +++--- examples/Anonymous--Mu/parameters.json | 6 +++--- examples/Anonymous--Nu/parameters.json | 6 +++--- examples/Anonymous--Omicron/parameters.json | 6 +++--- examples/Anonymous--Pi/parameters.json | 6 +++--- examples/Anonymous--Rho/parameters.json | 6 +++--- examples/Anonymous--Sigma/parameters.json | 6 +++--- examples/Anonymous--Theta/parameters.json | 6 +++--- examples/Anonymous--Xi/parameters.json | 6 +++--- examples/Anonymous--Zeta/parameters.json | 6 +++--- examples/EPFL--BellaLui--2020/parameters.json | 6 +++--- examples/NDRT--Rocket--2020/parameters.json | 6 +++--- examples/ProjetoJupiter--Valetudo--2019/parameters.json | 6 +++--- examples/WERT--Prometheus--2022/parameters.json | 6 +++--- examples/rocket_with_elliptical_fins/parameters.json | 6 +++--- tests/acceptance/EPFL--BellaLui--2020/parameters.json | 6 +++--- tests/acceptance/NDRT--Rocket--2020/parameters.json | 6 +++--- .../ProjetoJupiter--Valetudo--2019/parameters.json | 6 +++--- 25 files changed, 75 insertions(+), 75 deletions(-) diff --git a/examples/Anonymous--Alpha/parameters.json b/examples/Anonymous--Alpha/parameters.json index f5cc7a4..f26374c 100644 --- a/examples/Anonymous--Alpha/parameters.json +++ b/examples/Anonymous--Alpha/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Alpha\\drag_curve.csv", "inertia": [ - 0.05, - 0.05, - 21.074 + 21.074, + 21.074, + 0.05 ], "mass": 23.279, "radius": 0.0765 diff --git a/examples/Anonymous--Beta/parameters.json b/examples/Anonymous--Beta/parameters.json index 7ef7450..4baa400 100644 --- a/examples/Anonymous--Beta/parameters.json +++ b/examples/Anonymous--Beta/parameters.json @@ -95,9 +95,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Beta\\drag_curve.csv", "inertia": [ - 0.012064, - 0.012064, - 1.2632 + 1.2632, + 1.2632, + 0.012064 ], "mass": 4.8422, "radius": 0.0508 diff --git a/examples/Anonymous--Epsilon/parameters.json b/examples/Anonymous--Epsilon/parameters.json index 26ff084..f7898d6 100644 --- a/examples/Anonymous--Epsilon/parameters.json +++ b/examples/Anonymous--Epsilon/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Epsilon\\drag_curve.csv", "inertia": [ - 0.055, - 0.055, - 14.862 + 14.862, + 14.862, + 0.055 ], "mass": 22.578, "radius": 0.0665 diff --git a/examples/Anonymous--Eta/parameters.json b/examples/Anonymous--Eta/parameters.json index 873837a..43bc1db 100644 --- a/examples/Anonymous--Eta/parameters.json +++ b/examples/Anonymous--Eta/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Eta\\drag_curve.csv", "inertia": [ - 0.13516, - 0.13516, - 12.776 + 12.776, + 12.776, + 0.13516 ], "mass": 23.118, "radius": 0.0745 diff --git a/examples/Anonymous--Gamma/parameters.json b/examples/Anonymous--Gamma/parameters.json index 443a430..08bca97 100644 --- a/examples/Anonymous--Gamma/parameters.json +++ b/examples/Anonymous--Gamma/parameters.json @@ -101,9 +101,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Gamma\\drag_curve.csv", "inertia": [ - 0.040851, - 0.040851, - 9.7111 + 9.7111, + 9.7111, + 0.040851 ], "mass": 17.163, "radius": 0.075 diff --git a/examples/Anonymous--Iota/parameters.json b/examples/Anonymous--Iota/parameters.json index 644692e..878128c 100644 --- a/examples/Anonymous--Iota/parameters.json +++ b/examples/Anonymous--Iota/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Iota\\drag_curve.csv", "inertia": [ - 0.0091756, - 0.0091756, - 3.1389 + 3.1389, + 3.1389, + 0.0091756 ], "mass": 9.811, "radius": 0.061500000000000006 diff --git a/examples/Anonymous--Kappa/parameters.json b/examples/Anonymous--Kappa/parameters.json index 95e5012..8289cc3 100644 --- a/examples/Anonymous--Kappa/parameters.json +++ b/examples/Anonymous--Kappa/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Kappa\\drag_curve.csv", "inertia": [ - 0.14741, - 0.14741, - 126.0 + 126.0, + 126.0, + 0.14741 ], "mass": 42.924, "radius": 0.078 diff --git a/examples/Anonymous--Lambda/parameters.json b/examples/Anonymous--Lambda/parameters.json index 59f1930..5694141 100644 --- a/examples/Anonymous--Lambda/parameters.json +++ b/examples/Anonymous--Lambda/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Lambda\\drag_curve.csv", "inertia": [ - 0.0084849, - 0.0084849, - 41.426 + 41.426, + 41.426, + 0.0084849 ], "mass": 23.061, "radius": 0.078 diff --git a/examples/Anonymous--Mu/parameters.json b/examples/Anonymous--Mu/parameters.json index a824ac3..fe8ed12 100644 --- a/examples/Anonymous--Mu/parameters.json +++ b/examples/Anonymous--Mu/parameters.json @@ -86,9 +86,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Mu\\drag_curve.csv", "inertia": [ - 0.1265, - 0.1265, - 9.9032 + 9.9032, + 9.9032, + 0.1265 ], "mass": 17.861, "radius": 0.075 diff --git a/examples/Anonymous--Nu/parameters.json b/examples/Anonymous--Nu/parameters.json index 0faed08..ccc92bb 100644 --- a/examples/Anonymous--Nu/parameters.json +++ b/examples/Anonymous--Nu/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Nu\\drag_curve.csv", "inertia": [ - 0.15095, - 0.15095, - 77.457 + 77.457, + 77.457, + 0.15095 ], "mass": 30.254, "radius": 0.0765 diff --git a/examples/Anonymous--Omicron/parameters.json b/examples/Anonymous--Omicron/parameters.json index d3a999c..a50a6d8 100644 --- a/examples/Anonymous--Omicron/parameters.json +++ b/examples/Anonymous--Omicron/parameters.json @@ -58,9 +58,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Omicron\\drag_curve.csv", "inertia": [ - 0.34261, - 0.34261, - 83.941 + 83.941, + 83.941, + 0.34261 ], "mass": 51.551, "radius": 0.0895 diff --git a/examples/Anonymous--Pi/parameters.json b/examples/Anonymous--Pi/parameters.json index 9bdd6e1..e039ccb 100644 --- a/examples/Anonymous--Pi/parameters.json +++ b/examples/Anonymous--Pi/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Pi\\drag_curve.csv", "inertia": [ - 0.049903, - 0.049903, - 3.7259 + 3.7259, + 3.7259, + 0.049903 ], "mass": 14.667, "radius": 0.07675 diff --git a/examples/Anonymous--Rho/parameters.json b/examples/Anonymous--Rho/parameters.json index add6e63..a43a9cb 100644 --- a/examples/Anonymous--Rho/parameters.json +++ b/examples/Anonymous--Rho/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Rho\\drag_curve.csv", "inertia": [ - 0.035532, - 0.035532, - 6.5479 + 6.5479, + 6.5479, + 0.035532 ], "mass": 9.8765, "radius": 0.047 diff --git a/examples/Anonymous--Sigma/parameters.json b/examples/Anonymous--Sigma/parameters.json index 51fb68d..dff990a 100644 --- a/examples/Anonymous--Sigma/parameters.json +++ b/examples/Anonymous--Sigma/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Sigma\\drag_curve.csv", "inertia": [ - 0.22429, - 0.22429, - 12.157 + 12.157, + 12.157, + 0.22429 ], "mass": 17.891, "radius": 0.077 diff --git a/examples/Anonymous--Theta/parameters.json b/examples/Anonymous--Theta/parameters.json index 53e1240..80971ab 100644 --- a/examples/Anonymous--Theta/parameters.json +++ b/examples/Anonymous--Theta/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Theta\\drag_curve.csv", "inertia": [ - 0.0056233, - 0.0056233, - 2.571 + 2.571, + 2.571, + 0.0056233 ], "mass": 5.8234, "radius": 0.0465 diff --git a/examples/Anonymous--Xi/parameters.json b/examples/Anonymous--Xi/parameters.json index 9dd7838..0976dd0 100644 --- a/examples/Anonymous--Xi/parameters.json +++ b/examples/Anonymous--Xi/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Xi\\drag_curve.csv", "inertia": [ - 0.029124, - 0.029124, - 12.171 + 12.171, + 12.171, + 0.029124 ], "mass": 18.298, "radius": 0.0508 diff --git a/examples/Anonymous--Zeta/parameters.json b/examples/Anonymous--Zeta/parameters.json index 0585185..cbc1e52 100644 --- a/examples/Anonymous--Zeta/parameters.json +++ b/examples/Anonymous--Zeta/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\Anonymous--Zeta\\drag_curve.csv", "inertia": [ - 0.035926, - 0.035926, - 11.635 + 11.635, + 11.635, + 0.035926 ], "mass": 16.069, "radius": 0.051500000000000004 diff --git a/examples/EPFL--BellaLui--2020/parameters.json b/examples/EPFL--BellaLui--2020/parameters.json index 581e7a9..06a66c7 100644 --- a/examples/EPFL--BellaLui--2020/parameters.json +++ b/examples/EPFL--BellaLui--2020/parameters.json @@ -58,9 +58,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\EPFL--BellaLui--2020\\drag_curve.csv", "inertia": [ - 0.096246, - 0.096246, - 5.8581 + 5.8581, + 5.8581, + 0.096246 ], "mass": 8.419, "radius": 0.078 diff --git a/examples/NDRT--Rocket--2020/parameters.json b/examples/NDRT--Rocket--2020/parameters.json index 0a3e057..88128f0 100644 --- a/examples/NDRT--Rocket--2020/parameters.json +++ b/examples/NDRT--Rocket--2020/parameters.json @@ -77,9 +77,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\NDRT--Rocket--2020\\drag_curve.csv", "inertia": [ - 0.15089, - 0.15089, - 18.411 + 18.411, + 18.411, + 0.15089 ], "mass": 20.735, "radius": 0.1016 diff --git a/examples/ProjetoJupiter--Valetudo--2019/parameters.json b/examples/ProjetoJupiter--Valetudo--2019/parameters.json index 32877a7..dcdfbe1 100644 --- a/examples/ProjetoJupiter--Valetudo--2019/parameters.json +++ b/examples/ProjetoJupiter--Valetudo--2019/parameters.json @@ -74,9 +74,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples/ProjetoJupiter--Valetudo--2019/drag_curve.csv", "inertia": [ - 0.01467, - 0.01467, - 5.5915 + 5.5915, + 5.5915, + 0.01467 ], "mass": 8.2564, "radius": 0.04045000000000001 diff --git a/examples/WERT--Prometheus--2022/parameters.json b/examples/WERT--Prometheus--2022/parameters.json index fbf61f1..410030a 100644 --- a/examples/WERT--Prometheus--2022/parameters.json +++ b/examples/WERT--Prometheus--2022/parameters.json @@ -83,9 +83,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples\\WERT--Prometheus--2022\\drag_curve.csv", "inertia": [ - 0.043, - 0.043, - 4.563 + 4.563, + 4.563, + 0.043 ], "mass": 14.737, "radius": 0.06985 diff --git a/examples/rocket_with_elliptical_fins/parameters.json b/examples/rocket_with_elliptical_fins/parameters.json index 23089ea..f2712eb 100644 --- a/examples/rocket_with_elliptical_fins/parameters.json +++ b/examples/rocket_with_elliptical_fins/parameters.json @@ -68,9 +68,9 @@ "coordinate_system_orientation": "nose_to_tail", "drag_curve": "examples/rocket_with_elliptical_fins/drag_curve.csv", "inertia": [ - 0.000278, - 0.000278, - 0.024 + 0.024, + 0.024, + 0.000278 ], "mass": 0.437, "radius": 0.025 diff --git a/tests/acceptance/EPFL--BellaLui--2020/parameters.json b/tests/acceptance/EPFL--BellaLui--2020/parameters.json index 4c1151e..36cdeac 100644 --- a/tests/acceptance/EPFL--BellaLui--2020/parameters.json +++ b/tests/acceptance/EPFL--BellaLui--2020/parameters.json @@ -20,9 +20,9 @@ "radius": 0.078, "mass": 8.419, "inertia": [ - 0.096246, - 0.096246, - 5.8581 + 5.8581, + 5.8581, + 0.096246 ], "center_of_mass_without_propellant": 1.559, "coordinate_system_orientation": "nose_to_tail", diff --git a/tests/acceptance/NDRT--Rocket--2020/parameters.json b/tests/acceptance/NDRT--Rocket--2020/parameters.json index 5105b69..7d548fa 100644 --- a/tests/acceptance/NDRT--Rocket--2020/parameters.json +++ b/tests/acceptance/NDRT--Rocket--2020/parameters.json @@ -20,9 +20,9 @@ "radius": 0.1016, "mass": 20.735, "inertia": [ - 0.15089, - 0.15089, - 18.411 + 18.411, + 18.411, + 0.15089 ], "center_of_mass_without_propellant": 1.7041, "coordinate_system_orientation": "nose_to_tail", diff --git a/tests/acceptance/ProjetoJupiter--Valetudo--2019/parameters.json b/tests/acceptance/ProjetoJupiter--Valetudo--2019/parameters.json index a282666..6c36fac 100644 --- a/tests/acceptance/ProjetoJupiter--Valetudo--2019/parameters.json +++ b/tests/acceptance/ProjetoJupiter--Valetudo--2019/parameters.json @@ -20,9 +20,9 @@ "radius": 0.04045000000000001, "mass": 8.2564, "inertia": [ - 0.01467, - 0.01467, - 5.5915 + 5.5915, + 5.5915, + 0.01467 ], "center_of_mass_without_propellant": 1.4023, "coordinate_system_orientation": "nose_to_tail",