From 8c1834f56abe6ec9ee9228210f225f8dfe07d9ff Mon Sep 17 00:00:00 2001 From: MateusStano Date: Wed, 3 Jul 2024 22:22:27 +0200 Subject: [PATCH 01/18] ENH: make aerosurface position a Vector --- rocketpy/rocket/rocket.py | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index a0db26eff..daaa1e98e 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -535,7 +535,7 @@ def evaluate_center_of_pressure(self): self.cp_position += ( ref_factor * aero_surface.clalpha - * (position - self._csys * aero_surface.cpz) + * (position.z - self._csys * aero_surface.cpz) ) self.cp_position /= self.total_lift_coeff_der @@ -955,8 +955,12 @@ def add_surfaces(self, surfaces, positions): """ try: for surface, position in zip(surfaces, positions): + if not isinstance(position, Vector): + position = Vector([0, 0, position]) self.aerodynamic_surfaces.add(surface, position) except TypeError: + if not isinstance(positions, Vector): + positions = Vector([0, 0, positions]) self.aerodynamic_surfaces.add(surfaces, positions) self.evaluate_center_of_pressure() @@ -1494,11 +1498,21 @@ def set_rail_buttons( rail_buttons : RailButtons RailButtons object created """ + radius = radius if radius else self.radius buttons_distance = abs(upper_button_position - lower_button_position) rail_buttons = RailButtons( buttons_distance=buttons_distance, angular_position=angular_position ) - self.rail_buttons.add(rail_buttons, lower_button_position) + position = Vector( + [ + radius * np.sin(np.radians(angular_position)), + radius * np.cos(np.radians(angular_position)), + lower_button_position, + ] + ) + if self._csys == -1: + position.x, position.y = position.y, position.x + self.rail_buttons.add(rail_buttons, position) return rail_buttons def add_cm_eccentricity(self, x, y): From 71834869465fd10140d84ba283291f4006b82f7c Mon Sep 17 00:00:00 2001 From: MateusStano Date: Wed, 3 Jul 2024 22:23:15 +0200 Subject: [PATCH 02/18] DOC: fixes to addsurfaces refs --- docs/user/rocket.rst | 2 +- rocketpy/rocket/rocket.py | 39 +++++++++++++++++++++++---------------- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/docs/user/rocket.rst b/docs/user/rocket.rst index fa09f058e..ed579da4d 100644 --- a/docs/user/rocket.rst +++ b/docs/user/rocket.rst @@ -210,7 +210,7 @@ to the rocket in one step: .. caution:: Again, pay special attention to the ``position`` parameter. See - the :ref:`Adding Aerodynamic Surfaces ` section for + the :ref:`Adding Aerodynamic Surfaces ` section for more information. .. seealso:: diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index daaa1e98e..949ce7ebb 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -4,7 +4,7 @@ from rocketpy.control.controller import _Controller from rocketpy.mathutils.function import Function -from rocketpy.mathutils.vector_matrix import Matrix +from rocketpy.mathutils.vector_matrix import Matrix, Vector from rocketpy.motors.motor import EmptyMotor from rocketpy.plots.rocket_plots import _RocketPlots from rocketpy.prints.rocket_prints import _RocketPrints @@ -884,7 +884,7 @@ def add_motor(self, motor, position): See Also -------- - :ref:`add_surfaces` + :ref:`addsurface` Returns ------- @@ -947,7 +947,7 @@ def add_surfaces(self, surfaces, positions): See Also -------- - :ref:`add_surfaces` + :ref:`addsurface` Returns ------- @@ -1010,10 +1010,16 @@ def add_tail( By tail position, understand the point belonging to the tail which is highest in the rocket coordinate system (i.e. the point closest to the nose cone). + radius : int, float, optional + Reference radius of the tail. This is used to calculate lift + coefficient. If None, which is default, the rocket radius will + be used. + name : string + Tail name. Default is "Tail". See Also -------- - :ref:`add_surfaces` + :ref:`addsurface` Returns ------- @@ -1035,7 +1041,6 @@ def add_nose( along the rocket and its derivative of the coefficient of lift in respect to angle of attack. - Parameters ---------- length : int, float @@ -1058,7 +1063,7 @@ def add_nose( See Also -------- - :ref:`add_surfaces` + :ref:`addsurface` Returns ------- @@ -1122,10 +1127,6 @@ def add_trapezoidal_fins( By fin set position, understand the point belonging to the root chord which is highest in the rocket coordinate system (i.e. the point closest to the nose cone tip). - - See Also - -------- - :ref:`add_surfaces` cant_angle : int, float, optional Fins cant angle with respect to the rocket centerline. Must be given in degrees. @@ -1218,10 +1219,6 @@ def add_elliptical_fins( set position, understand the point belonging to the root chord which is highest in the rocket coordinate system (i.e. the point closest to the nose cone tip). - - See Also - -------- - :ref:`add_surfaces` cant_angle : int, float, optional Fins cant angle with respect to the rocket centerline. Must be given in degrees. @@ -1244,6 +1241,10 @@ def add_elliptical_fins( The tuple's second item is the unit of the angle of attack, accepting either "radians" or "degrees". + See Also + -------- + :ref:`addsurface` + Returns ------- fin_set : EllipticalFins @@ -1463,7 +1464,11 @@ def add_air_brakes( return air_brakes def set_rail_buttons( - self, upper_button_position, lower_button_position, angular_position=45 + self, + upper_button_position, + lower_button_position, + angular_position=45, + radius=None, ): """Adds rail buttons to the rocket, allowing for the calculation of forces exerted by them when the rocket is sliding in the launch rail. @@ -1488,10 +1493,12 @@ def set_rail_buttons( relative to one of the other principal axis. Default value is 45 degrees, generally used in rockets with 4 fins. + radius : int, float, optional + Fuselage radius where the rail buttons are located. See Also -------- - :ref:`add_surfaces` + :ref:`addsurface` Returns ------- From e0a8aaec20918923145b8b4dfb9201222393682c Mon Sep 17 00:00:00 2001 From: MateusStano Date: Fri, 5 Jul 2024 17:04:55 +0200 Subject: [PATCH 03/18] DOC: mv rocket.rst to rocket\rocket_usage.rst --- docs/user/{rocket.rst => rocket/rocket_usage.rst} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/user/{rocket.rst => rocket/rocket_usage.rst} (100%) diff --git a/docs/user/rocket.rst b/docs/user/rocket/rocket_usage.rst similarity index 100% rename from docs/user/rocket.rst rename to docs/user/rocket/rocket_usage.rst From ac925ebf3d991545693d92fa86234737935cbb59 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Fri, 5 Jul 2024 17:05:29 +0200 Subject: [PATCH 04/18] ENH: remaining changes for vector position --- rocketpy/plots/rocket_plots.py | 10 +++++----- rocketpy/prints/rocket_prints.py | 2 +- rocketpy/rocket/components.py | 4 ++-- rocketpy/simulation/flight.py | 13 +++++++------ 4 files changed, 15 insertions(+), 14 deletions(-) diff --git a/rocketpy/plots/rocket_plots.py b/rocketpy/plots/rocket_plots.py index 012f025e7..7fd1e87be 100644 --- a/rocketpy/plots/rocket_plots.py +++ b/rocketpy/plots/rocket_plots.py @@ -253,11 +253,11 @@ def _draw_aerodynamic_surfaces(self, ax, vis_args): for surface, position in self.rocket.aerodynamic_surfaces: if isinstance(surface, NoseCone): - self._draw_nose_cone(ax, surface, position, drawn_surfaces, vis_args) + self._draw_nose_cone(ax, surface, position.z, drawn_surfaces, vis_args) elif isinstance(surface, Tail): - self._draw_tail(ax, surface, position, drawn_surfaces, vis_args) + self._draw_tail(ax, surface, position.z, drawn_surfaces, vis_args) elif isinstance(surface, Fins): - self._draw_fins(ax, surface, position, drawn_surfaces, vis_args) + self._draw_fins(ax, surface, position.z, drawn_surfaces, vis_args) return drawn_surfaces def _draw_nose_cone(self, ax, surface, position, drawn_surfaces, vis_args): @@ -542,8 +542,8 @@ def _draw_rail_buttons(self, ax, vis_args): """Draws the rail buttons of the rocket.""" try: buttons, pos = self.rocket.rail_buttons[0] - lower = pos - upper = pos + buttons.buttons_distance * self.rocket._csys + lower = pos.z + upper = lower + buttons.buttons_distance * self.rocket._csys ax.scatter( lower, -self.rocket.radius, marker="s", color=vis_args["buttons"], s=15 ) diff --git a/rocketpy/prints/rocket_prints.py b/rocketpy/prints/rocket_prints.py index 615bb55ac..0d18980da 100644 --- a/rocketpy/prints/rocket_prints.py +++ b/rocketpy/prints/rocket_prints.py @@ -131,7 +131,7 @@ def rocket_aerodynamics_quantities(self): print( name + " Center of Pressure position: {:.3f}".format( - position - self.rocket._csys * cpz + position.z - self.rocket._csys * cpz ) + " m" ) diff --git a/rocketpy/rocket/components.py b/rocketpy/rocket/components.py index 3197db687..1a8fe8fb4 100644 --- a/rocketpy/rocket/components.py +++ b/rocketpy/rocket/components.py @@ -173,7 +173,7 @@ def clear(self): self._components.clear() def sort_by_position(self, reverse=False): - """Sort the list of components by position. + """Sort the list of components by position the z axis position. Parameters ---------- @@ -185,5 +185,5 @@ def sort_by_position(self, reverse=False): ------- None """ - self._components.sort(key=lambda x: x.position, reverse=reverse) + self._components.sort(key=lambda x: x.position.z, reverse=reverse) return None diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index 20cbf2c8a..84efbe064 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -1158,7 +1158,7 @@ def effective_1rl(self): rail_buttons = self.rocket.rail_buttons[0] upper_r_button = ( rail_buttons.component.buttons_distance * self.rocket._csys - + rail_buttons.position + + rail_buttons.position.z ) except IndexError: # No rail buttons defined upper_r_button = nozzle @@ -1173,7 +1173,7 @@ def effective_2rl(self): nozzle = self.rocket.nozzle_position try: rail_buttons = self.rocket.rail_buttons[0] - lower_r_button = rail_buttons.position + lower_r_button = rail_buttons.position.z except IndexError: # No rail buttons defined lower_r_button = nozzle effective_2rl = self.rail_length - abs(nozzle - lower_r_button) @@ -1425,7 +1425,7 @@ def u_dot(self, t, u, post_processing=False): # Calculate lift and moment for each component of the rocket for aero_surface, position in self.rocket.aerodynamic_surfaces: comp_cp = ( - position - self.rocket.center_of_dry_mass_position + position.z - self.rocket.center_of_dry_mass_position ) * self.rocket._csys - aero_surface.cpz reference_area = aero_surface.reference_area reference_length = aero_surface.reference_length @@ -1659,7 +1659,7 @@ def u_dot_generalized(self, t, u, post_processing=False): # Calculate lift and moment for each component of the rocket for aero_surface, position in self.rocket.aerodynamic_surfaces: comp_cpz = ( - position - self.rocket.center_of_dry_mass_position + position.z - self.rocket.center_of_dry_mass_position ) * self.rocket._csys - aero_surface.cpz comp_cp = Vector([0, 0, comp_cpz]) reference_area = aero_surface.reference_area @@ -2727,9 +2727,10 @@ def __calculate_rail_button_forces(self): # TODO: complex method. # Distance from Rail Button 1 (upper) to CM rail_buttons_tuple = self.rocket.rail_buttons[0] upper_button_position = ( - rail_buttons_tuple.component.buttons_distance + rail_buttons_tuple.position + rail_buttons_tuple.component.buttons_distance + + rail_buttons_tuple.position.z ) - lower_button_position = rail_buttons_tuple.position + lower_button_position = rail_buttons_tuple.position.z angular_position_rad = ( rail_buttons_tuple.component.angular_position * np.pi / 180 ) From 6340c1a21f19c7fdd45cf18749b1655585cf4026 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Fri, 5 Jul 2024 17:05:50 +0200 Subject: [PATCH 05/18] DOC: aero surfaces docs minor improvements --- rocketpy/rocket/aero_surface/fins/elliptical_fins.py | 7 ++++--- rocketpy/rocket/aero_surface/fins/fins.py | 7 ++++--- rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py | 7 ++++--- rocketpy/rocket/rocket.py | 9 ++++++--- 4 files changed, 18 insertions(+), 12 deletions(-) diff --git a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py index 2fb3dcc69..2d9950802 100644 --- a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py +++ b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py @@ -12,9 +12,10 @@ class EllipticalFins(Fins): Note ---- - Local coordinate system: Z axis along the longitudinal axis of symmetry, - positive downwards (top -> bottom). Origin located at the top of the root - chord. + Local coordinate system: Origin located at the top of the root chord. Z axis + along the longitudinal axis of symmetry, positive downwards (top -> bottom). + Y axis perpendicular to the Z axis, in the span direction, positive upwards. + X axis completes the right-handed coordinate system. See Also -------- diff --git a/rocketpy/rocket/aero_surface/fins/fins.py b/rocketpy/rocket/aero_surface/fins/fins.py index edac2ae85..21609c3c9 100644 --- a/rocketpy/rocket/aero_surface/fins/fins.py +++ b/rocketpy/rocket/aero_surface/fins/fins.py @@ -18,9 +18,10 @@ class Fins(AeroSurface): Note ---- - Local coordinate system: Z axis along the longitudinal axis of symmetry, - positive downwards (top -> bottom). Origin located at the top of the root - chord. + Local coordinate system: Origin located at the top of the root chord. Z axis + along the longitudinal axis of symmetry, positive downwards (top -> bottom). + Y axis perpendicular to the Z axis, in the span direction, positive upwards. + X axis completes the right-handed coordinate system. Attributes ---------- diff --git a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py index 58afdcad2..166ec3bb6 100644 --- a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py +++ b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py @@ -12,9 +12,10 @@ class TrapezoidalFins(Fins): Note ---- - Local coordinate system: Z axis along the longitudinal axis of symmetry, - positive downwards (top -> bottom). Origin located at the top of the root - chord. + Local coordinate system: Origin located at the top of the root chord. Z axis + along the longitudinal axis of symmetry, positive downwards (top -> bottom). + Y axis perpendicular to the Z axis, in the span direction, positive upwards. + X axis completes the right-handed coordinate system. See Also -------- diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index 949ce7ebb..4350be45e 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -934,9 +934,12 @@ def add_surfaces(self, surfaces, positions): surfaces : list, AeroSurface, NoseCone, TrapezoidalFins, EllipticalFins, Tail Aerodynamic surface to be added to the rocket. Can be a list of AeroSurface if more than one surface is to be added. - positions : int, float, list - Position, in m, of the aerodynamic surface's center of pressure - relative to the user defined rocket coordinate system. + positions : int, float, Vector, list[int, float, Vector] + Position, in m, of the aerodynamic surface's reference point + relative to the user defined rocket coordinate system. The position + can be specified as a single value, that refers to the axial + position of the surface, or as a Vector object, that refers to the + position of the reference point in the rocket coordinate system. If a list is passed, it will correspond to the position of each item in the surfaces list. For NoseCone type, position is relative to the nose cone tip. From 1c2db2483df482be93fa66430181e2bd2e90dae4 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Fri, 5 Jul 2024 17:06:26 +0200 Subject: [PATCH 06/18] DOC: create rocket axes description page --- docs/static/rocket/3dcsys.png | Bin 0 -> 42661 bytes docs/static/rocket/angularpos.png | Bin 0 -> 46215 bytes docs/static/rocket/flightcsys.png | Bin 0 -> 32388 bytes docs/user/index.rst | 2 +- docs/user/rocket/rocket.rst | 15 +++++ docs/user/rocket/rocket_axes.rst | 107 ++++++++++++++++++++++++++++++ 6 files changed, 123 insertions(+), 1 deletion(-) create mode 100644 docs/static/rocket/3dcsys.png create mode 100644 docs/static/rocket/angularpos.png create mode 100644 docs/static/rocket/flightcsys.png create mode 100644 docs/user/rocket/rocket.rst create mode 100644 docs/user/rocket/rocket_axes.rst diff --git a/docs/static/rocket/3dcsys.png b/docs/static/rocket/3dcsys.png new file mode 100644 index 0000000000000000000000000000000000000000..dd7472ed3fce023b3d691ee2cecd30049e82105c GIT binary patch literal 42661 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�Ky@D3{_Vrr?Q2e-EFk}+ph{rDiaiA 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%0DBH@ii>dam{qitn@N;7iIirkqWL#Al$ue@x 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

0qnI=?O%|=`pLmC$NS3W2;pW{Qi}y( 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 k3ZPvF{>jB-Dp Motors - Rocket + Rocket Environment .. toctree:: diff --git a/docs/user/rocket/rocket.rst b/docs/user/rocket/rocket.rst new file mode 100644 index 000000000..17ec63c1a --- /dev/null +++ b/docs/user/rocket/rocket.rst @@ -0,0 +1,15 @@ +Rocket Usage +============ + +.. toctree:: + :maxdepth: 2 + :caption: Rocket Class Usage + + Rocket Class Usage + +.. toctree:: + :maxdepth: 3 + :caption: Rocket Class Axes Definitions + + Rocket Class Axes Definitions + \ No newline at end of file diff --git a/docs/user/rocket/rocket_axes.rst b/docs/user/rocket/rocket_axes.rst new file mode 100644 index 000000000..3e9c336a4 --- /dev/null +++ b/docs/user/rocket/rocket_axes.rst @@ -0,0 +1,107 @@ +Rocket Class Axes Definitions +============================= + +The Rocket class have two differente coordinate systems: + +1. **User Defined Coordinate System**: Used for geometrical inputs of the + aerodynamic surfaces and motor. +2. **Body Axes Coordinate System**: Used inside the simulation to assess the + governing equations of motion. + +All inputs from the user's coordinate system are converted to the body axes +coordinate system for use during the simulation. + +1. User Defined Coordinate System +--------------------------------- + +Two things are set by the user in the user input coordinate system: + +1. **Coordinate System Origin**: The origin of the coordinate system is set at + any point along the rocket's center line. This point can be arbitrary chosen + and is not explicitly defined. All inputs must be given in relation to this + point. +2. **Direction of Center Axis**: Is specified in the ``coordinate_system_orientation`` + argument of the class constructor :class:`rocketpy.Rocket.__init__`. This + argument defines the direction of the axis that follows the rocket's center + line. Can be either "nose_to_tail" or "tail_to_nose". + +.. seealso:: + + See `Positions and Coordinate Systems `_ for more + information on how this is used in the definitions of the rocket's + aerodynamic surfaces and motor. + +The ``x`` and ``y`` axes are defined in the plane perpendicular to the center axis and +the ``z`` axis is defined along the center axis. Depending on the choice of +``coordinate_system_orientation``, the X axis and Y axis can be inverted. + +The following figure shows the two posibilities for the user input coordinate system: + +.. figure:: ../../static/rocket/3dcsys.png + :align: center + :alt: Rocket axes + +.. note:: + + When ``coordinate_system_orientation`` is set to ``"tail_to_nose"``, the direction + of the ``x``, ``y`` and ``z`` axis of the **User Defined Coordinate System** is + the same as the **Body Axes Coordinate System**. The orgin of the coordinate + system may still be different. + +Angular Position Inputs +~~~~~~~~~~~~~~~~~~~~~~~ + +Angular position inputs (``angular_position``) refers to roll angle position +of that surface along the rocket's tube. The roll angle is defined as the angle +from the ``y`` axis to the surface. Currently, only :class:`rocketpy.RailButtons` +use this input. + +The following figure shows the roll angle +definition for both ``coordinate_system_orientation`` options: + +.. figure:: ../../static/rocket/angularpos.png + :align: center + :alt: Angular position + + +.. note:: + + The positive direction of the roll angle is defined as the direction that + rotates the surface in the positive direction of the ``z`` axis. + + +2. Body Axes Coordinate System +------------------------------ + +The body axes coordinate system is used inside the simulation to assess the +governing equations of motion. The body axes coordinate system is defined as follows: + +- The origin is at the rocket's center of dry mass (``center_of_dry_mass_position``). +- The ``z`` axis is defined along the rocket's center line, pointing from the + center of dry mass towards the nose. +- The ``x`` and ``y`` axes are perpendicular + +3. Relation to Flight Coordinates +--------------------------------- + +The ``Flight`` class uses a coordinate system defined as follows: + +- The origin is at the launch rail. +- The ``Z`` axis is positive upwards. +- The ``X`` axis is position eastwards. +- The ``Y`` axis is positive northwards. + +The following figure shows the rotational relationship between the +**Body Axes Coordinate System** and the **Flight Coordinate System**: + +.. figure:: ../../static/rocket/flightcsys.png + :align: center + :alt: Flight coordinate system + +In the figure, *θᵢ* is ``90° - inclination`` and *θₕ* is the heading of the +launch rail. + +.. note:: + + If the lauch rail ``heading`` is set to **0°** and ``rail_inclination`` to **90°**, + the **Body Axes Coordinate System** is aligned with the **Flight Coordinate System**. \ No newline at end of file From 27df555c9fd757db95199222731a6e508f583c97 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Fri, 5 Jul 2024 17:25:05 +0200 Subject: [PATCH 07/18] DOC: 3d csys correction --- docs/static/rocket/3dcsys.png | Bin 42661 -> 41123 bytes docs/static/rocket/flightcsys.png | Bin 32388 -> 32300 bytes docs/user/rocket/rocket_axes.rst | 29 +++++++++++++++-------------- 3 files changed, 15 insertions(+), 14 deletions(-) diff --git a/docs/static/rocket/3dcsys.png b/docs/static/rocket/3dcsys.png index dd7472ed3fce023b3d691ee2cecd30049e82105c..57c8a718429d5926dd3cf711d2fdf13f63c34346 100644 GIT binary patch literal 41123 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 literal 42661 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�Ky@D3{_Vrr?Q2e-EFk}+ph{rDiaiA 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

I#K6e# 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 k3ZPvF{>jB-Dp Date: Fri, 5 Jul 2024 23:11:24 +0200 Subject: [PATCH 08/18] ENH: add rail button angular position to initial flight state --- rocketpy/rocket/aero_surface/rail_buttons.py | 2 ++ rocketpy/rocket/rocket.py | 2 +- rocketpy/simulation/flight.py | 7 +++++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/rocketpy/rocket/aero_surface/rail_buttons.py b/rocketpy/rocket/aero_surface/rail_buttons.py index 8d97e3421..2b41ba19c 100644 --- a/rocketpy/rocket/aero_surface/rail_buttons.py +++ b/rocketpy/rocket/aero_surface/rail_buttons.py @@ -1,3 +1,4 @@ +import numpy as np from rocketpy.mathutils.function import Function from rocketpy.prints.aero_surface_prints import _RailButtonsPrints from .aero_surface import AeroSurface @@ -38,6 +39,7 @@ def __init__(self, buttons_distance, angular_position=45, name="Rail Buttons"): super().__init__(name, None, None) self.buttons_distance = buttons_distance self.angular_position = angular_position + self.angular_position_rad = np.radians(angular_position) self.name = name self.evaluate_lift_coefficient() diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index 4350be45e..7e5cdc9f8 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -1515,7 +1515,7 @@ def set_rail_buttons( ) position = Vector( [ - radius * np.sin(np.radians(angular_position)), + radius * -np.sin(np.radians(angular_position)), radius * np.cos(np.radians(angular_position)), lower_button_position, ] diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index 84efbe064..b3e9459cb 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -1071,6 +1071,13 @@ def __init_flight_state(self): # Initialize attitude psi_init = -self.heading * (np.pi / 180) # Precession / Heading Angle theta_init = (self.inclination - 90) * (np.pi / 180) # Nutation Angle + # Consider Rail Buttons position + try: + psi_init += ( + self.rocket.rail_buttons[0].component.angular_position_rad * self.rocket._csys + ) + except IndexError: + pass e0_init = np.cos(psi_init / 2) * np.cos(theta_init / 2) e1_init = np.cos(psi_init / 2) * np.sin(theta_init / 2) e2_init = np.sin(psi_init / 2) * np.sin(theta_init / 2) From c7bceffaaeb83cca75d8b3e8cd0b1fcf55e498ca Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 18:53:00 +0200 Subject: [PATCH 09/18] REV: revert position to Vector --- rocketpy/plots/rocket_plots.py | 10 +++++----- rocketpy/prints/rocket_prints.py | 2 +- rocketpy/rocket/components.py | 4 ++-- rocketpy/rocket/rocket.py | 27 ++++++--------------------- rocketpy/simulation/flight.py | 12 ++++++------ 5 files changed, 20 insertions(+), 35 deletions(-) diff --git a/rocketpy/plots/rocket_plots.py b/rocketpy/plots/rocket_plots.py index 7fd1e87be..012f025e7 100644 --- a/rocketpy/plots/rocket_plots.py +++ b/rocketpy/plots/rocket_plots.py @@ -253,11 +253,11 @@ def _draw_aerodynamic_surfaces(self, ax, vis_args): for surface, position in self.rocket.aerodynamic_surfaces: if isinstance(surface, NoseCone): - self._draw_nose_cone(ax, surface, position.z, drawn_surfaces, vis_args) + self._draw_nose_cone(ax, surface, position, drawn_surfaces, vis_args) elif isinstance(surface, Tail): - self._draw_tail(ax, surface, position.z, drawn_surfaces, vis_args) + self._draw_tail(ax, surface, position, drawn_surfaces, vis_args) elif isinstance(surface, Fins): - self._draw_fins(ax, surface, position.z, drawn_surfaces, vis_args) + self._draw_fins(ax, surface, position, drawn_surfaces, vis_args) return drawn_surfaces def _draw_nose_cone(self, ax, surface, position, drawn_surfaces, vis_args): @@ -542,8 +542,8 @@ def _draw_rail_buttons(self, ax, vis_args): """Draws the rail buttons of the rocket.""" try: buttons, pos = self.rocket.rail_buttons[0] - lower = pos.z - upper = lower + buttons.buttons_distance * self.rocket._csys + lower = pos + upper = pos + buttons.buttons_distance * self.rocket._csys ax.scatter( lower, -self.rocket.radius, marker="s", color=vis_args["buttons"], s=15 ) diff --git a/rocketpy/prints/rocket_prints.py b/rocketpy/prints/rocket_prints.py index 0d18980da..615bb55ac 100644 --- a/rocketpy/prints/rocket_prints.py +++ b/rocketpy/prints/rocket_prints.py @@ -131,7 +131,7 @@ def rocket_aerodynamics_quantities(self): print( name + " Center of Pressure position: {:.3f}".format( - position.z - self.rocket._csys * cpz + position - self.rocket._csys * cpz ) + " m" ) diff --git a/rocketpy/rocket/components.py b/rocketpy/rocket/components.py index 1a8fe8fb4..3197db687 100644 --- a/rocketpy/rocket/components.py +++ b/rocketpy/rocket/components.py @@ -173,7 +173,7 @@ def clear(self): self._components.clear() def sort_by_position(self, reverse=False): - """Sort the list of components by position the z axis position. + """Sort the list of components by position. Parameters ---------- @@ -185,5 +185,5 @@ def sort_by_position(self, reverse=False): ------- None """ - self._components.sort(key=lambda x: x.position.z, reverse=reverse) + self._components.sort(key=lambda x: x.position, reverse=reverse) return None diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index 7e5cdc9f8..d1eddddbc 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -535,7 +535,7 @@ def evaluate_center_of_pressure(self): self.cp_position += ( ref_factor * aero_surface.clalpha - * (position.z - self._csys * aero_surface.cpz) + * (position - self._csys * aero_surface.cpz) ) self.cp_position /= self.total_lift_coeff_der @@ -934,12 +934,9 @@ def add_surfaces(self, surfaces, positions): surfaces : list, AeroSurface, NoseCone, TrapezoidalFins, EllipticalFins, Tail Aerodynamic surface to be added to the rocket. Can be a list of AeroSurface if more than one surface is to be added. - positions : int, float, Vector, list[int, float, Vector] - Position, in m, of the aerodynamic surface's reference point - relative to the user defined rocket coordinate system. The position - can be specified as a single value, that refers to the axial - position of the surface, or as a Vector object, that refers to the - position of the reference point in the rocket coordinate system. + positions : int, float, list + Position, in m, of the aerodynamic surface's center of pressure + relative to the user defined rocket coordinate system. If a list is passed, it will correspond to the position of each item in the surfaces list. For NoseCone type, position is relative to the nose cone tip. @@ -958,12 +955,8 @@ def add_surfaces(self, surfaces, positions): """ try: for surface, position in zip(surfaces, positions): - if not isinstance(position, Vector): - position = Vector([0, 0, position]) self.aerodynamic_surfaces.add(surface, position) except TypeError: - if not isinstance(positions, Vector): - positions = Vector([0, 0, positions]) self.aerodynamic_surfaces.add(surfaces, positions) self.evaluate_center_of_pressure() @@ -1513,16 +1506,8 @@ def set_rail_buttons( rail_buttons = RailButtons( buttons_distance=buttons_distance, angular_position=angular_position ) - position = Vector( - [ - radius * -np.sin(np.radians(angular_position)), - radius * np.cos(np.radians(angular_position)), - lower_button_position, - ] - ) - if self._csys == -1: - position.x, position.y = position.y, position.x - self.rail_buttons.add(rail_buttons, position) + self.rail_buttons = Components() + self.rail_buttons.add(rail_buttons, lower_button_position) return rail_buttons def add_cm_eccentricity(self, x, y): diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index b3e9459cb..2f2080d6b 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -1165,7 +1165,7 @@ def effective_1rl(self): rail_buttons = self.rocket.rail_buttons[0] upper_r_button = ( rail_buttons.component.buttons_distance * self.rocket._csys - + rail_buttons.position.z + + rail_buttons.position ) except IndexError: # No rail buttons defined upper_r_button = nozzle @@ -1180,7 +1180,7 @@ def effective_2rl(self): nozzle = self.rocket.nozzle_position try: rail_buttons = self.rocket.rail_buttons[0] - lower_r_button = rail_buttons.position.z + lower_r_button = rail_buttons.position except IndexError: # No rail buttons defined lower_r_button = nozzle effective_2rl = self.rail_length - abs(nozzle - lower_r_button) @@ -1432,7 +1432,7 @@ def u_dot(self, t, u, post_processing=False): # Calculate lift and moment for each component of the rocket for aero_surface, position in self.rocket.aerodynamic_surfaces: comp_cp = ( - position.z - self.rocket.center_of_dry_mass_position + position - self.rocket.center_of_dry_mass_position ) * self.rocket._csys - aero_surface.cpz reference_area = aero_surface.reference_area reference_length = aero_surface.reference_length @@ -1666,7 +1666,7 @@ def u_dot_generalized(self, t, u, post_processing=False): # Calculate lift and moment for each component of the rocket for aero_surface, position in self.rocket.aerodynamic_surfaces: comp_cpz = ( - position.z - self.rocket.center_of_dry_mass_position + position - self.rocket.center_of_dry_mass_position ) * self.rocket._csys - aero_surface.cpz comp_cp = Vector([0, 0, comp_cpz]) reference_area = aero_surface.reference_area @@ -2735,9 +2735,9 @@ def __calculate_rail_button_forces(self): # TODO: complex method. rail_buttons_tuple = self.rocket.rail_buttons[0] upper_button_position = ( rail_buttons_tuple.component.buttons_distance - + rail_buttons_tuple.position.z + + rail_buttons_tuple.position ) - lower_button_position = rail_buttons_tuple.position.z + lower_button_position = rail_buttons_tuple.position angular_position_rad = ( rail_buttons_tuple.component.angular_position * np.pi / 180 ) From 75f4da2ea6f4478365e4594d4fa5ce792e764056 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 20:03:17 +0200 Subject: [PATCH 10/18] ENH: consider buttons angular position in initial flight state --- rocketpy/simulation/flight.py | 47 ++++++++++++++++++++++++----------- 1 file changed, 33 insertions(+), 14 deletions(-) diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index 2f2080d6b..d6d939a64 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -1069,19 +1069,41 @@ def __init_flight_state(self): vx_init, vy_init, vz_init = 0, 0, 0 w1_init, w2_init, w3_init = 0, 0, 0 # Initialize attitude - psi_init = -self.heading * (np.pi / 180) # Precession / Heading Angle - theta_init = (self.inclination - 90) * (np.pi / 180) # Nutation Angle - # Consider Rail Buttons position + self.psi_init = -self.heading * (np.pi / 180) # Precession / Heading Angle + self.theta_init = ( + (self.inclination - 90) * np.pi / 180 + ) # Nutation / Attitude Angle + self.phi_init = 0 # Spin / Bank Angle + # Consider Rail Buttons position, if there is rail buttons try: - psi_init += ( - self.rocket.rail_buttons[0].component.angular_position_rad * self.rocket._csys + self.phi_init += ( + self.rocket.rail_buttons[0].component.angular_position_rad + * self.rocket._csys ) except IndexError: pass - e0_init = np.cos(psi_init / 2) * np.cos(theta_init / 2) - e1_init = np.cos(psi_init / 2) * np.sin(theta_init / 2) - e2_init = np.sin(psi_init / 2) * np.sin(theta_init / 2) - e3_init = np.sin(psi_init / 2) * np.cos(theta_init / 2) + # 3-1-3 Euler Angles to Euler Parameters + # source: https://www.astro.rug.nl/software/kapteyn-beta/_downloads/attitude.pdf + e0_init = np.cos(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.cos( + self.psi_init / 2 + ) - np.sin(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.sin( + self.psi_init / 2 + ) + e1_init = np.cos(self.phi_init / 2) * np.cos(self.psi_init / 2) * np.sin( + self.theta_init / 2 + ) + np.sin(self.phi_init / 2) * np.sin(self.theta_init / 2) * np.sin( + self.psi_init / 2 + ) + e2_init = np.cos(self.phi_init / 2) * np.sin(self.theta_init / 2) * np.sin( + self.psi_init / 2 + ) - np.sin(self.phi_init / 2) * np.cos(self.psi_init / 2) * np.sin( + self.theta_init / 2 + ) + e3_init = np.cos(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.sin( + self.psi_init / 2 + ) + np.cos(self.theta_init / 2) * np.cos(self.psi_init / 2) * np.sin( + self.phi_init / 2 + ) # Store initial conditions self.initial_solution = [ self.t_initial, @@ -2734,13 +2756,10 @@ def __calculate_rail_button_forces(self): # TODO: complex method. # Distance from Rail Button 1 (upper) to CM rail_buttons_tuple = self.rocket.rail_buttons[0] upper_button_position = ( - rail_buttons_tuple.component.buttons_distance - + rail_buttons_tuple.position + rail_buttons_tuple.component.buttons_distance + rail_buttons_tuple.position ) lower_button_position = rail_buttons_tuple.position - angular_position_rad = ( - rail_buttons_tuple.component.angular_position * np.pi / 180 - ) + angular_position_rad = rail_buttons_tuple.component.angular_position_rad D1 = ( upper_button_position - self.rocket.center_of_dry_mass_position ) * self.rocket._csys From b4fe7f171989f2b5887c771aa46364af30d6d845 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 20:03:47 +0200 Subject: [PATCH 11/18] DOC: improve docstrings and add references --- rocketpy/mathutils/vector_matrix.py | 4 ++++ rocketpy/simulation/flight.py | 8 ++++---- rocketpy/tools.py | 23 +++++++++++++++++++---- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/rocketpy/mathutils/vector_matrix.py b/rocketpy/mathutils/vector_matrix.py index 332e1b680..2cf67421e 100644 --- a/rocketpy/mathutils/vector_matrix.py +++ b/rocketpy/mathutils/vector_matrix.py @@ -961,6 +961,10 @@ def transformation(quaternion): ------- Matrix The transformation matrix from frame B to frame A. + + Reference + --------- + .. [1] https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles """ q_w, q_x, q_y, q_z = quaternion return Matrix( diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index d6d939a64..f35ad7f62 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -290,15 +290,15 @@ class Flight: of time. Can be called or accessed as array. Flight.phi : Function Rocket's Spin Euler Angle, φ, according to the 3-2-3 rotation - system (NASA Standard Aerospace). Measured in degrees and + system nomenclature (NASA Standard Aerospace). Measured in degrees and expressed as a function of time. Can be called or accessed as array. Flight.theta : Function Rocket's Nutation Euler Angle, θ, according to the 3-2-3 rotation - system (NASA Standard Aerospace). Measured in degrees and + system nomenclature (NASA Standard Aerospace). Measured in degrees and expressed as a function of time. Can be called or accessed as array. Flight.psi : Function Rocket's Precession Euler Angle, ψ, according to the 3-2-3 rotation - system (NASA Standard Aerospace). Measured in degrees and + system nomenclature (NASA Standard Aerospace). Measured in degrees and expressed as a function of time. Can be called or accessed as array. Flight.R1 : Function Resultant force perpendicular to rockets axis due to @@ -522,7 +522,7 @@ def __init__( Default is 80. heading : int, float, optional Heading angle relative to north given in degrees. - Default is 90, which points in the x direction. + Default is 90, which points in the x (east) direction. initial_solution : array, Flight, optional Initial solution array to be used. Format is: diff --git a/rocketpy/tools.py b/rocketpy/tools.py index 730067cfd..a6e677fc7 100644 --- a/rocketpy/tools.py +++ b/rocketpy/tools.py @@ -857,16 +857,14 @@ def parallel_axis_theorem_from_com(com_inertia_moment, mass, distance): float Moment of inertia relative to the new axis. - Reference - --------- + References + ---------- https://en.wikipedia.org/wiki/Parallel_axis_theorem """ return com_inertia_moment + mass * distance**2 # Flight - - def quaternions_to_precession(e0, e1, e2, e3): """Calculates the Precession angle @@ -880,11 +878,17 @@ def quaternions_to_precession(e0, e1, e2, e3): Euler parameter 2, must be between -1 and 1 e3 : float Euler parameter 3, must be between -1 and 1 + Returns ------- float Euler Precession angle in degrees + + References + ---------- + .. [1] Baruh, Haim. Analytical dynamics """ + # minus sign in e2 and e1 is due to changin from 3-1-3 to 3-2-3 convention return (180 / np.pi) * (np.arctan2(e3, e0) + np.arctan2(-e2, -e1)) @@ -906,7 +910,12 @@ def quaternions_to_spin(e0, e1, e2, e3): ------- float Euler Spin angle in degrees + + References + ---------- + .. [1] Baruh, Haim. Analytical dynamics """ + # minus sign in e2 and e1 is due to changin from 3-1-3 to 3-2-3 convention return (180 / np.pi) * (np.arctan2(e3, e0) - np.arctan2(-e2, -e1)) @@ -919,11 +928,17 @@ def quaternions_to_nutation(e1, e2): Euler parameter 1, must be between -1 and 1 e2 : float Euler parameter 2, must be between -1 and 1 + Returns ------- float Euler Nutation angle in degrees + + References + ---------- + .. [1] Baruh, Haim. Analytical dynamics """ + # minus sign is due to changin from 3-1-3 to 3-2-3 convention return (180 / np.pi) * 2 * np.arcsin(-((e1**2 + e2**2) ** 0.5)) From bbec1aa6c942e998bad33bc4e364a1f93144dc9b Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 20:04:11 +0200 Subject: [PATCH 12/18] TST: adapt tests for new buttons angular position --- tests/fixtures/rockets/rocket_fixtures.py | 4 ++-- tests/test_flight.py | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/tests/fixtures/rockets/rocket_fixtures.py b/tests/fixtures/rockets/rocket_fixtures.py index c89157b78..d5083bd62 100644 --- a/tests/fixtures/rockets/rocket_fixtures.py +++ b/tests/fixtures/rockets/rocket_fixtures.py @@ -83,7 +83,7 @@ def calisto_nose_to_tail(cesaroni_m1670): calisto.set_rail_buttons( upper_button_position=-0.082, lower_button_position=0.618, - angular_position=45, + angular_position=0, ) return calisto @@ -177,7 +177,7 @@ def calisto_robust( calisto.set_rail_buttons( upper_button_position=0.082, lower_button_position=-0.618, - angular_position=45, + angular_position=0, ) calisto.parachutes.append(calisto_main_chute) calisto.parachutes.append(calisto_drogue_chute) diff --git a/tests/test_flight.py b/tests/test_flight.py index fb203b3af..7a6a0b1c0 100644 --- a/tests/test_flight.py +++ b/tests/test_flight.py @@ -640,10 +640,10 @@ def test_rail_buttons_forces(flight_calisto_custom_wind): """ test = flight_calisto_custom_wind atol = 5e-3 - assert pytest.approx(3.833613, abs=atol) == test.max_rail_button1_normal_force - assert pytest.approx(1.648938, abs=atol) == test.max_rail_button1_shear_force - assert pytest.approx(1.165307, abs=atol) == test.max_rail_button2_normal_force - assert pytest.approx(0.501229, abs=atol) == test.max_rail_button2_shear_force + assert pytest.approx(3.876749, abs=atol) == test.max_rail_button1_normal_force + assert pytest.approx(1.544799, abs=atol) == test.max_rail_button1_shear_force + assert pytest.approx(1.178420, abs=atol) == test.max_rail_button2_normal_force + assert pytest.approx(0.469574, abs=atol) == test.max_rail_button2_shear_force @pytest.mark.parametrize( From 2b3023697e9318fa0e7c32274aec19a148b847ed Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 20:04:27 +0200 Subject: [PATCH 13/18] DOC: final additions to flight csys --- docs/static/rocket/flightcsys.png | Bin 32300 -> 34974 bytes docs/user/rocket/rocket_axes.rst | 45 +++++++++++++++++++++++++++--- 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/docs/static/rocket/flightcsys.png b/docs/static/rocket/flightcsys.png index 5792bf28d8b8c11360684f4a5eb01dcbe29642b1..0d3ec70287d7040e66f50a13771c42bcaebdb9d9 100644 GIT binary patch literal 34974 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 KU&I=F-2XphG>&Be literal 32300 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

I#K6e# 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 Date: Mon, 8 Jul 2024 20:59:44 +0200 Subject: [PATCH 14/18] DEV: changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index eb2bfec8f..625dede30 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,7 +32,7 @@ Attention: The newest changes should be on top --> ### Added -- +- ENH: Rocket Axis Definition [#635](https://github.com/RocketPy-Team/RocketPy/pull/635) ### Changed From c6536e395241a4c84bbf91ee377701ed888e9899 Mon Sep 17 00:00:00 2001 From: MateusStano Date: Mon, 8 Jul 2024 21:02:37 +0200 Subject: [PATCH 15/18] MNT: isort again --- rocketpy/rocket/aero_surface/rail_buttons.py | 1 + 1 file changed, 1 insertion(+) diff --git a/rocketpy/rocket/aero_surface/rail_buttons.py b/rocketpy/rocket/aero_surface/rail_buttons.py index 035ae1237..cc4e61984 100644 --- a/rocketpy/rocket/aero_surface/rail_buttons.py +++ b/rocketpy/rocket/aero_surface/rail_buttons.py @@ -1,4 +1,5 @@ import numpy as np + from rocketpy.mathutils.function import Function from rocketpy.prints.aero_surface_prints import _RailButtonsPrints From 9c39d744c614c214be8174c3de0bd73fb7ca53b0 Mon Sep 17 00:00:00 2001 From: Gui-FernandesBR Date: Sun, 4 Aug 2024 02:17:11 -0300 Subject: [PATCH 16/18] DOC: minor fixes --- .vscode/settings.json | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.vscode/settings.json b/.vscode/settings.json index 45bd304e9..c4341119c 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -14,12 +14,14 @@ "cSpell.language": "en-US", "cSpell.words": [ "Abdulklech", + "addsurface", "adjugate", "akima", "allclose", "altitudemode", "Alves", "amax", + "angularpos", "arange", "arccos", "arcsin", @@ -77,6 +79,7 @@ "csys", "datapoints", "datetime", + "dcsys", "ddot", "deepcopy", "deletechars", @@ -105,6 +108,7 @@ "figsize", "filt", "firstsimulation", + "flightcsys", "Fluxogram", "fmax", "fmin", From 37c5d47bd2fd19a2fc026b6f9cbf1da4907b3c6c Mon Sep 17 00:00:00 2001 From: Gui-FernandesBR Date: Sun, 4 Aug 2024 02:18:08 -0300 Subject: [PATCH 17/18] DOC: minor fixes --- docs/user/rocket/rocket_axes.rst | 89 +++++++++++--------- rocketpy/rocket/aero_surface/rail_buttons.py | 12 +-- rocketpy/rocket/rocket.py | 5 +- 3 files changed, 58 insertions(+), 48 deletions(-) diff --git a/docs/user/rocket/rocket_axes.rst b/docs/user/rocket/rocket_axes.rst index 8a3917228..3dfaced8c 100644 --- a/docs/user/rocket/rocket_axes.rst +++ b/docs/user/rocket/rocket_axes.rst @@ -3,36 +3,47 @@ Rocket Class Axes Definitions The Rocket class has two different coordinate systems: -1. **User Defined Coordinate System**: Used for geometrical inputs of the +1. **User Defined Coordinate System**: Used for geometrical inputs of the \ aerodynamic surfaces and motor. -2. **Body Axes Coordinate System**: Used inside the simulation to assess the - governing equations of motion. +2. **Body Axes Coordinate System**: Used during the flight simulation to assess \ + the governing equations of motion. + +All inputs are automatically converted from the user's coordinate system to the +rocket body axes coordinate system for use during the simulation. + +Let's dive into the definitions of these coordinate systems: -All inputs from the user's coordinate system are converted to the body axes -coordinate system for use during the simulation. 1. User Defined Coordinate System --------------------------------- Two things are set by the user in the user input coordinate system: -1. **Coordinate System Origin**: The origin of the coordinate system is set at - any point along the rocket's center line. This point can be arbitrarily chosen - and is not explicitly defined. All inputs must be given in relation to this +1. **Coordinate System Origin**: The origin of the coordinate system is set at \ + any point along the rocket's center line. This point can be arbitrarily chosen \ + and is not explicitly defined. All inputs must be given relative to this \ point. -2. **Direction of Center Axis**: Specified in the ``coordinate_system_orientation`` - argument of the class constructor :class:`rocketpy.Rocket.__init__`. This - argument defines the direction of the axis that follows the rocket's center +2. **Direction of Center Axis**: Specified by the ``coordinate_system_orientation`` \ + argument when initializing the Rocket (:class:`rocketpy.Rocket.__init__`). This \ + argument defines the direction of the axis that follows the rocket's center \ line. It can be either ``"nose_to_tail"`` or ``"tail_to_nose"``. +.. tip:: + + If you are using some CAD software to design your rocket, you can imagine the \ + coordinate system as the one used in the CAD software. The origin of the \ + coordinate system is the origin of the rocket in the CAD software, and the \ + direction of the center axis is the direction of the rocket's centerline. \ + You don't need to worry about the exact position of the origin, as long as \ + all inputs are given relative to this point. + .. seealso:: - See `Positions and Coordinate Systems `_ for more - information on how this is used in the definitions of the rocket's - aerodynamic surfaces and motor. + See `Positions and Coordinate Systems `_ for more \ + information on the definitions of the rocket's aerodynamic surfaces and motor. -The ``x`` and ``y`` axes are defined in the plane perpendicular to the center axis, -and the ``z`` axis is defined along the center axis. Depending on the choice of +The ``x`` and ``y`` axes are defined at the plane perpendicular to the center axis, +while the ``z`` axis is defined along the center axis. Depending on the choice of ``coordinate_system_orientation``, the ``x`` axis and ``y`` axis can be inverted. The following figure shows the two possibilities for the user input coordinate system: @@ -43,18 +54,18 @@ The following figure shows the two possibilities for the user input coordinate s .. note:: - When ``coordinate_system_orientation`` is set to ``"tail_to_nose"``, the direction - of the ``x``, ``y``, and ``z`` axes of the **User Defined Coordinate System** is - the same as the **Body Axes Coordinate System**. The orgin of the coordinate - system may still be different. + When ``coordinate_system_orientation`` is set to ``"tail_to_nose"``, the direction \ + of the ``x``, ``y``, and ``z`` axes of the **User Defined Coordinate System** is \ + the same as the **Body Axes Coordinate System**. The origin of the coordinate \ + system may still be different. Angular Position Inputs ~~~~~~~~~~~~~~~~~~~~~~~ Angular position inputs (``angular_position``) refer to the roll angle position of that surface along the rocket's tube. The roll angle is defined as the angle -from the ``y`` axis to the surface. Currently, only :class:`rocketpy.RailButtons` -use this input. +from the ``y`` axis to the surface. +Currently, only the :class:`rocketpy.RailButtons` class uses this kind of input. The following figure shows the roll angle definition for both ``coordinate_system_orientation`` options: @@ -66,10 +77,10 @@ definition for both ``coordinate_system_orientation`` options: .. note:: - The positive direction of the roll angle is defined as the direction that + The positive direction of the roll angle is defined as the direction that \ rotates the surface in the positive direction of the ``z`` axis. - +.. _rocket_axes_body_axes: 2. Body Axes Coordinate System ------------------------------ @@ -78,8 +89,7 @@ The body axes coordinate system is used inside the simulation to assess the governing equations of motion. The body axes coordinate system is defined as follows: - The origin is at the rocket's center of dry mass (``center_of_dry_mass_position``). -- The ``z`` axis is defined along the rocket's centerline, pointing from the - center of dry mass towards the nose. +- The ``z`` axis is defined along the rocket's centerline, pointing from the center of dry mass towards the nose. - The ``x`` and ``y`` axes are perpendicular. 3. Relation to Flight Coordinates @@ -99,8 +109,8 @@ The following figure shows the rotational relationship between the :align: center :alt: Flight coordinate system -In the figure $\bf{i}$** is the ``inclination`` and $\bf{h}$ is the -``heading`` of the launch rail. +In the figure above, :math:`\bf{i}` is the ``inclination`` and :math:`\bf{h}` +is the ``heading`` of the launch rail. The heading and inclination can be described in terms of Euler angles. The relation is given by: @@ -120,26 +130,27 @@ Euler angle: &\text{Spin:} \quad &φ & \\ \end{aligned} -If no rail buttons are present, the spin angle is set to **0°**. +If no rail buttons pair ir present, the spin angle is set to **0°**. .. note:: - With spin angle set to **0°**, if the - lauch rail ``heading`` is set to **0°** and rail ``inclination`` to **90°**, - the **Body Axes Coordinate System** is aligned with the **Flight Coordinate System**. + With spin angle set to **0°**, if the launch rail ``heading`` is set to \ + **0°** and rail ``inclination`` to **90°**, the **Body Axes Coordinate \ + System** is aligned with the **Flight Coordinate System**. +Rocket's initial orientation +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -This is used to calculate the initial orientation of the rocket, which is -expressed in Euler parameters (quaternions). The Euler parameters are defined -using the 3-1-3 rotation sequence: +The initial orientation of the rocket is expressed in Euler parameters (quaternions). +The Euler parameters are defined using the 3-1-3 rotation sequence: .. math:: \begin{aligned} - e₀ &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \cos\left(\frac{ψ}{2}\right) - \sin\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) \\ - e₁ &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{θ}{2}\right) + \sin\left(\frac{φ}{2}\right) \sin\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) \\ - e₂ &= \cos\left(\frac{φ}{2}\right) \sin\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) - \sin\left(\frac{φ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{θ}{2}\right) \\ - e₃ &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) + \cos\left(\frac{θ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{φ}{2}\right) \\ + e_{0} &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \cos\left(\frac{ψ}{2}\right) - \sin\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) \\ + e_{1} &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{θ}{2}\right) + \sin\left(\frac{φ}{2}\right) \sin\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) \\ + e_{2} &= \cos\left(\frac{φ}{2}\right) \sin\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) - \sin\left(\frac{φ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{θ}{2}\right) \\ + e_{3} &= \cos\left(\frac{φ}{2}\right) \cos\left(\frac{θ}{2}\right) \sin\left(\frac{ψ}{2}\right) + \cos\left(\frac{θ}{2}\right) \cos\left(\frac{ψ}{2}\right) \sin\left(\frac{φ}{2}\right) \\ \end{aligned} diff --git a/rocketpy/rocket/aero_surface/rail_buttons.py b/rocketpy/rocket/aero_surface/rail_buttons.py index 4a75ad85c..facd8b157 100644 --- a/rocketpy/rocket/aero_surface/rail_buttons.py +++ b/rocketpy/rocket/aero_surface/rail_buttons.py @@ -17,6 +17,8 @@ class RailButtons(AeroSurface): Angular position of the rail buttons in degrees measured as the rotation around the symmetry axis of the rocket relative to one of the other principal axis. + RailButtons.angular_position_rad : float + Angular position of the rail buttons in radians. """ def __init__( @@ -42,16 +44,10 @@ def __init__( Radius of the rocket at the location of the rail buttons in meters. If not provided, it will be calculated when the RailButtons object is added to a Rocket object. - - Returns - ------- - None - """ super().__init__(name, None, None) self.buttons_distance = buttons_distance self.angular_position = angular_position - self.angular_position_rad = np.radians(angular_position) self.name = name self.rocket_radius = rocket_radius self.evaluate_lift_coefficient() @@ -59,6 +55,10 @@ def __init__( self.prints = _RailButtonsPrints(self) + @property + def angular_position_rad(self): + return np.radians(self.angular_position) + def evaluate_center_of_pressure(self): """Evaluates the center of pressure of the rail buttons. Rail buttons do not contribute to the center of pressure of the rocket. diff --git a/rocketpy/rocket/rocket.py b/rocketpy/rocket/rocket.py index e3e760458..952390723 100644 --- a/rocketpy/rocket/rocket.py +++ b/rocketpy/rocket/rocket.py @@ -4,7 +4,7 @@ from rocketpy.control.controller import _Controller from rocketpy.mathutils.function import Function -from rocketpy.mathutils.vector_matrix import Matrix, Vector +from rocketpy.mathutils.vector_matrix import Matrix from rocketpy.motors.motor import EmptyMotor from rocketpy.plots.rocket_plots import _RocketPlots from rocketpy.prints.rocket_prints import _RocketPrints @@ -1536,13 +1536,12 @@ def set_rail_buttons( rail_buttons : RailButtons RailButtons object created """ - radius = radius if radius else self.radius buttons_distance = abs(upper_button_position - lower_button_position) rail_buttons = RailButtons( buttons_distance=buttons_distance, angular_position=angular_position ) self.rail_buttons = Components() - rail_buttons.rocket_radius = rail_buttons.rocket_radius or self.radius + rail_buttons.rocket_radius = radius or self.radius self.rail_buttons.add(rail_buttons, lower_button_position) return rail_buttons From e95d3c6f13efcc80fc6a7dd4b02fec06be90e2c6 Mon Sep 17 00:00:00 2001 From: Gui-FernandesBR Date: Sun, 4 Aug 2024 03:03:52 -0300 Subject: [PATCH 18/18] DOC: minor adjustments --- .vscode/settings.json | 2 + rocketpy/mathutils/vector_matrix.py | 2 +- .../aero_surface/fins/elliptical_fins.py | 9 ++-- rocketpy/rocket/aero_surface/fins/fins.py | 9 ++-- .../aero_surface/fins/trapezoidal_fins.py | 9 ++-- rocketpy/rocket/aero_surface/nose_cone.py | 6 +-- rocketpy/rocket/aero_surface/tail.py | 6 +-- rocketpy/simulation/flight.py | 36 +++++--------- rocketpy/tools.py | 49 ++++++++++++++++--- 9 files changed, 78 insertions(+), 50 deletions(-) diff --git a/.vscode/settings.json b/.vscode/settings.json index c4341119c..ac2bb1cab 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -41,6 +41,7 @@ "axvline", "axvspan", "Barrowman", + "Baruh", "behaviour", "Bigl", "Bigr", @@ -134,6 +135,7 @@ "Gonçalvez", "grav", "Guilherme", + "Haim", "hemis", "hgtprs", "hgtsfc", diff --git a/rocketpy/mathutils/vector_matrix.py b/rocketpy/mathutils/vector_matrix.py index 3f663dd24..6060d387f 100644 --- a/rocketpy/mathutils/vector_matrix.py +++ b/rocketpy/mathutils/vector_matrix.py @@ -958,7 +958,7 @@ def transformation(quaternion): Reference --------- - .. [1] https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles + https://en.wikipedia.org/wiki/Conversion_between_quaternions_and_Euler_angles """ q_w, q_x, q_y, q_z = quaternion return Matrix( diff --git a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py index 576941e24..d30cf9aa1 100644 --- a/rocketpy/rocket/aero_surface/fins/elliptical_fins.py +++ b/rocketpy/rocket/aero_surface/fins/elliptical_fins.py @@ -13,10 +13,11 @@ class EllipticalFins(Fins): Note ---- - Local coordinate system: Origin located at the top of the root chord. Z axis - along the longitudinal axis of symmetry, positive downwards (top -> bottom). - Y axis perpendicular to the Z axis, in the span direction, positive upwards. - X axis completes the right-handed coordinate system. + Local coordinate system: + - Origin located at the top of the root chord. + - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom). + - Y axis perpendicular to the Z axis, in the span direction, positive upwards. + - X axis completes the right-handed coordinate system. See Also -------- diff --git a/rocketpy/rocket/aero_surface/fins/fins.py b/rocketpy/rocket/aero_surface/fins/fins.py index 08e1b0e68..74f7922f7 100644 --- a/rocketpy/rocket/aero_surface/fins/fins.py +++ b/rocketpy/rocket/aero_surface/fins/fins.py @@ -11,10 +11,11 @@ class Fins(AeroSurface): Note ---- - Local coordinate system: Origin located at the top of the root chord. Z axis - along the longitudinal axis of symmetry, positive downwards (top -> bottom). - Y axis perpendicular to the Z axis, in the span direction, positive upwards. - X axis completes the right-handed coordinate system. + Local coordinate system: + - Origin located at the top of the root chord. + - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom). + - Y axis perpendicular to the Z axis, in the span direction, positive upwards. + - X axis completes the right-handed coordinate system. Attributes ---------- diff --git a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py index c60e3e4c0..3040e21c9 100644 --- a/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py +++ b/rocketpy/rocket/aero_surface/fins/trapezoidal_fins.py @@ -13,10 +13,11 @@ class TrapezoidalFins(Fins): Note ---- - Local coordinate system: Origin located at the top of the root chord. Z axis - along the longitudinal axis of symmetry, positive downwards (top -> bottom). - Y axis perpendicular to the Z axis, in the span direction, positive upwards. - X axis completes the right-handed coordinate system. + Local coordinate system: + - Origin located at the top of the root chord. + - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom). + - Y axis perpendicular to the Z axis, in the span direction, positive upwards. + - X axis completes the right-handed coordinate system. See Also -------- diff --git a/rocketpy/rocket/aero_surface/nose_cone.py b/rocketpy/rocket/aero_surface/nose_cone.py index 8886be8c5..1ad07bd07 100644 --- a/rocketpy/rocket/aero_surface/nose_cone.py +++ b/rocketpy/rocket/aero_surface/nose_cone.py @@ -15,9 +15,9 @@ class NoseCone(AeroSurface): Note ---- - The local coordinate system has the origin at the tip of the nose cone - and the Z axis along the longitudinal axis of symmetry, positive - downwards (top -> bottom). + Local coordinate system: + - the origin at the tip of the nose cone and + - the Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom). Attributes ---------- diff --git a/rocketpy/rocket/aero_surface/tail.py b/rocketpy/rocket/aero_surface/tail.py index a5c5cf939..b053eae2f 100644 --- a/rocketpy/rocket/aero_surface/tail.py +++ b/rocketpy/rocket/aero_surface/tail.py @@ -12,9 +12,9 @@ class Tail(AeroSurface): Note ---- - Local coordinate system: Z axis along the longitudinal axis of symmetry, - positive downwards (top -> bottom). Origin located at top of the tail - (generally the portion closest to the rocket's nose). + Local coordinate system: + - Z axis along the longitudinal axis of symmetry, positive downwards (top -> bottom). + - Origin located at top of the tail (generally the portion closest to the rocket's nose). Attributes ---------- diff --git a/rocketpy/simulation/flight.py b/rocketpy/simulation/flight.py index 0ba5c8681..73bc715cb 100644 --- a/rocketpy/simulation/flight.py +++ b/rocketpy/simulation/flight.py @@ -14,6 +14,7 @@ from ..prints.flight_prints import _FlightPrints from ..tools import ( calculate_cubic_hermite_coefficients, + euler_angles_to_euler_parameters, find_closest, find_root_linear_interpolation, find_roots_cubic_function, @@ -1073,11 +1074,13 @@ def __init_flight_state(self): vx_init, vy_init, vz_init = 0, 0, 0 w1_init, w2_init, w3_init = 0, 0, 0 # Initialize attitude - self.psi_init = -self.heading * (np.pi / 180) # Precession / Heading Angle - self.theta_init = ( - (self.inclination - 90) * np.pi / 180 - ) # Nutation / Attitude Angle - self.phi_init = 0 # Spin / Bank Angle + # Precession / Heading Angle + self.psi_init = np.radians(-self.heading) + # Nutation / Attitude Angle + self.theta_init = np.radians(self.inclination - 90) + # Spin / Bank Angle + self.phi_init = 0 + # Consider Rail Buttons position, if there is rail buttons try: self.phi_init += ( @@ -1086,27 +1089,10 @@ def __init_flight_state(self): ) except IndexError: pass + # 3-1-3 Euler Angles to Euler Parameters - # source: https://www.astro.rug.nl/software/kapteyn-beta/_downloads/attitude.pdf - e0_init = np.cos(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.cos( - self.psi_init / 2 - ) - np.sin(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.sin( - self.psi_init / 2 - ) - e1_init = np.cos(self.phi_init / 2) * np.cos(self.psi_init / 2) * np.sin( - self.theta_init / 2 - ) + np.sin(self.phi_init / 2) * np.sin(self.theta_init / 2) * np.sin( - self.psi_init / 2 - ) - e2_init = np.cos(self.phi_init / 2) * np.sin(self.theta_init / 2) * np.sin( - self.psi_init / 2 - ) - np.sin(self.phi_init / 2) * np.cos(self.psi_init / 2) * np.sin( - self.theta_init / 2 - ) - e3_init = np.cos(self.phi_init / 2) * np.cos(self.theta_init / 2) * np.sin( - self.psi_init / 2 - ) + np.cos(self.theta_init / 2) * np.cos(self.psi_init / 2) * np.sin( - self.phi_init / 2 + e0_init, e1_init, e2_init, e3_init = euler_angles_to_euler_parameters( + self.phi_init, self.theta_init, self.psi_init ) # Store initial conditions self.initial_solution = [ diff --git a/rocketpy/tools.py b/rocketpy/tools.py index 0dcc0aa79..6cddb2327 100644 --- a/rocketpy/tools.py +++ b/rocketpy/tools.py @@ -917,9 +917,9 @@ def quaternions_to_precession(e0, e1, e2, e3): References ---------- - .. [1] Baruh, Haim. Analytical dynamics + Baruh, Haim. Analytical dynamics """ - # minus sign in e2 and e1 is due to changin from 3-1-3 to 3-2-3 convention + # minus sign in e2 and e1 is due to changing from 3-1-3 to 3-2-3 convention return (180 / np.pi) * (np.arctan2(e3, e0) + np.arctan2(-e2, -e1)) @@ -944,9 +944,9 @@ def quaternions_to_spin(e0, e1, e2, e3): References ---------- - .. [1] Baruh, Haim. Analytical dynamics + Baruh, Haim. Analytical dynamics """ - # minus sign in e2 and e1 is due to changin from 3-1-3 to 3-2-3 convention + # minus sign in e2 and e1 is due to changing from 3-1-3 to 3-2-3 convention return (180 / np.pi) * (np.arctan2(e3, e0) - np.arctan2(-e2, -e1)) @@ -967,12 +967,49 @@ def quaternions_to_nutation(e1, e2): References ---------- - .. [1] Baruh, Haim. Analytical dynamics + Baruh, Haim. Analytical dynamics """ - # minus sign is due to changin from 3-1-3 to 3-2-3 convention + # we are changing from 3-1-3 to 3-2-3 conventions return (180 / np.pi) * 2 * np.arcsin(-((e1**2 + e2**2) ** 0.5)) +def euler_angles_to_euler_parameters(phi, theta, psi): + """Convert 3-1-3 Euler Angles to Euler Parameters (quaternions). + + Parameters + ---------- + phi : float + Rotation angle around the z-axis (in radians). Represents the precession angle. + theta : float + Rotation angle around the x-axis (in radians). Represents the nutation angle. + psi : float + Rotation angle around the z-axis (in radians). Represents the spin angle. + + + Returns + ------- + tuple[float, float, float, float] + The Euler parameters or quaternions (e0, e1, e2, e3) + + References + ---------- + https://www.astro.rug.nl/software/kapteyn-beta/_downloads/attitude.pdf + """ + e0 = np.cos(phi / 2) * np.cos(theta / 2) * np.cos(psi / 2) - np.sin( + phi / 2 + ) * np.cos(theta / 2) * np.sin(psi / 2) + e1 = np.cos(phi / 2) * np.cos(psi / 2) * np.sin(theta / 2) + np.sin( + phi / 2 + ) * np.sin(theta / 2) * np.sin(psi / 2) + e2 = np.cos(phi / 2) * np.sin(theta / 2) * np.sin(psi / 2) - np.sin( + phi / 2 + ) * np.cos(psi / 2) * np.sin(theta / 2) + e3 = np.cos(phi / 2) * np.cos(theta / 2) * np.sin(psi / 2) + np.cos( + theta / 2 + ) * np.cos(psi / 2) * np.sin(phi / 2) + return e0, e1, e2, e3 + + if __name__ == "__main__": import doctest