ostk.astrodynamics.guidance_law.ConstantThrust

class ConstantThrust(
self: ostk.astrodynamics.guidance_law.ConstantThrust,
thrust_direction: ostk.astrodynamics.trajectory.LocalOrbitalFrameDirection,
)

Bases: GuidanceLaw

Constant Thrust, Constant Direction guidance law.

Constructor.

Parameters:

thrust_direction (LocalOrbitalFrameDirection) -- The thrust direction.

Methods

calculate_thrust_acceleration_at

Compute the acceleration due to constant thrust.

from_maneuver

Create a constant thrust guidance law from a maneuver.

get_local_thrust_direction

Get the local thrust direction.

get_name

Get the name of the guidance law.

intrack

Create a constant thrust guidance law in the in-track direction.

calculate_thrust_acceleration_at(
self: ostk.astrodynamics.guidance_law.ConstantThrust,
instant: ostk.physics.time.Instant,
position_coordinates: numpy.ndarray[numpy.float64[3, 1]],
velocity_coordinates: numpy.ndarray[numpy.float64[3, 1]],
thrust_acceleration: ostk.core.type.Real,
output_frame: ostk.physics.coordinate.Frame,
) numpy.ndarray[numpy.float64[3, 1]]

Compute the acceleration due to constant thrust.

Parameters:
  • instant (Instant) -- The instant of the state vector.

  • position_coordinates (numpy.ndarray) -- The position coordinates.

  • velocity_coordinates (numpy.ndarray) -- The velocity coordinates.

  • thrust_acceleration (float) -- The thrust acceleration magnitude.

  • output_frame (Frame) -- The frame the acceleration will be expressed in.

Returns:

The contribution of the constant thrust to the state vector.

Return type:

numpy.ndarray

static from_maneuver(
maneuver: ostk.astrodynamics.flight.Maneuver,
local_orbital_frame_factory: ostk.astrodynamics.trajectory.LocalOrbitalFrameFactory,
maximum_allowed_angular_offset: ostk.physics.unit.Angle = Angle.Undefined(),
) ostk.astrodynamics.guidance_law.ConstantThrust

Create a constant thrust guidance law from a maneuver.

The local orbital frame maneuver's mean thrust direction is calculated and used to create a constant thrust guidance law in said direction.

If defined, a runtime error will be thrown if the maximum allowed angular offset between the original thrust acceleration direction and the mean thrust direction is violated.

Parameters:
  • maneuver (Maneuver) -- The maneuver.

  • local_orbital_frame_factory (LocalOrbitalFrameFactory) -- The local orbital frame factory.

  • maximum_allowed_angular_offset (Angle, optional) -- The maximum allowed angular offset to consider (if any). Defaults to Undefined.

Returns:

The constant thrust guidance law.

Return type:

ConstantThrust

get_local_thrust_direction(
self: ostk.astrodynamics.guidance_law.ConstantThrust,
) ostk.astrodynamics.trajectory.LocalOrbitalFrameDirection

Get the local thrust direction.

Returns:

The local thrust direction.

Return type:

LocalOrbitalFrameDirection

get_name(self: ostk.astrodynamics.GuidanceLaw) ostk.core.type.String

Get the name of the guidance law.

Returns:

The name of the guidance law.

Return type:

str

static intrack(
velocity_direction: bool = True,
) ostk.astrodynamics.guidance_law.ConstantThrust

Create a constant thrust guidance law in the in-track direction.

Parameters:

velocity_direction (bool, optional) -- If True, the thrust is applied in the velocity direction. Otherwise, it is applied in the opposite direction. Defaults to True.

Returns:

The constant thrust guidance law in the in-track direction.

Return type:

ConstantThrust