ostk.astrodynamics.flight.Profile¶
- class Profile(
- self: ostk.astrodynamics.flight.Profile,
- model: ostk::astrodynamics::flight::profile::Model,
Bases:
pybind11_object
Spacecraft Flight Profile.
Constructor.
- Parameters:
model (Model) -- The profile model.
Methods
Access the profile model.
Generate a function that provides a quaternion that aligns to the alignment_target and constrains to the clocking_target for a given state.
Overloaded function.
Get the axes of the profile at a given instant.
Get the body frame of the profile.
Get the state of the profile at a given instant.
Get the states of the profile at given instants.
Create an inertial pointing profile.
Check if the profile is defined.
Create a profile aligned with the provided local orbital frame type.
Create an undefined profile.
- class Axis(self: ostk.astrodynamics.flight.Profile.Axis, value: int)¶
Bases:
pybind11_object
The axis of the profile.
Members:
X : X axis
Y : Y axis
Z : Z axis
- property name¶
- class CustomTarget(
- self: ostk.astrodynamics.flight.Profile.CustomTarget,
- orientation_generator: Callable[[ostk.astrodynamics.trajectory.State], numpy.ndarray[numpy.float64[3, 1]]],
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- orientation_generator: Callable[[ostk.astrodynamics.trajectory.State], numpy.ndarray[numpy.float64[3, 1]]],
Bases:
Target
The custom target.
Constructor.
- Parameters:
orientation_generator (Callable[np.ndarray, State]]) -- The orientation generator, accepts a state and returns a size 3 array of directions.
axis (Profile.Axis) -- The axis.
anti_direction (bool) -- True if the direction is flipped, False otherwise. Defaults to False.
- property anti_direction¶
True if the direction is flipped, False otherwise.
- property axis¶
The axis of the target.
- property orientation_generator¶
The orientation generator of the target.
- property type¶
The type of the target.
- class OrientationProfileTarget(
- self: ostk.astrodynamics.flight.Profile.OrientationProfileTarget,
- orientation_profile: list[tuple[ostk.physics.time.Instant, numpy.ndarray[numpy.float64[3, 1]]]],
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- orientation_profile: list[tuple[ostk.physics.time.Instant, numpy.ndarray[numpy.float64[3, 1]]]],
Bases:
Target
The alignment profile target.
Constructor.
- Parameters:
orientation_profile (list[Tuple[Instant, Vector3d]]) -- The orientation profile.
axis (Profile.Axis) -- The axis.
anti_direction (bool) -- True if the direction is flipped, False otherwise. Defaults to False.
- property anti_direction¶
True if the direction is flipped, False otherwise.
- property axis¶
The axis of the target.
- property orientation_profile¶
The orientation profile of the target.
- property type¶
The type of the target.
- class Target(
- self: ostk.astrodynamics.flight.Profile.Target,
- type: ostk.astrodynamics.flight.Profile.TargetType,
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- type: ostk.astrodynamics.flight.Profile.TargetType,
Bases:
pybind11_object
The target of the profile.
Constructor.
- Parameters:
type (Profile.TargetType) -- The target type.
axis (Profile.Axis) -- The axis.
anti_direction (bool) -- True if the direction is flipped, False otherwise. Defaults to False.
- property anti_direction¶
True if the direction is flipped, False otherwise.
- property axis¶
The axis of the target.
- property type¶
The type of the target.
- class TargetType(self: ostk.astrodynamics.flight.Profile.TargetType, value: int)¶
Bases:
pybind11_object
The target type of the profile.
Members:
GeocentricNadir : Geocentric nadir
GeodeticNadir : Geodetic nadir
Trajectory : Deprecated - Use TargetPosition instead.
TargetPosition : Target position
TargetVelocity : Target velocity
TargetSlidingGroundVelocity : Target sliding ground velocity
Sun : Sun
Moon : Moon
VelocityECI : Velocity in ECI
VelocityECEF : Velocity in ECEF
OrbitalMomentum : Orbital momentum
OrientationProfile : Orientation profile
- property name¶
- class TrajectoryTarget(
- self: ostk.astrodynamics.flight.Profile.TrajectoryTarget,
- trajectory: ostk.astrodynamics.Trajectory,
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- trajectory: ostk.astrodynamics.Trajectory,
Bases:
Target
The trajectory target.
Constructor.
- Parameters:
trajectory (Trajectory) -- The trajectory, required only if the target type is Trajectory.
axis (Profile.Axis) -- The axis.
anti_direction (bool) -- True if the direction is flipped, False otherwise. Defaults to False.
- property anti_direction¶
True if the direction is flipped, False otherwise.
- property axis¶
The axis of the target.
- static target_position(
- trajectory: ostk.astrodynamics.Trajectory,
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- axis: ostk.astrodynamics.flight.Profile.Axis,
Create a target, which produces a vector pointing from the observer to the target position.
- static target_sliding_ground_velocity(
- trajectory: ostk.astrodynamics.Trajectory,
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- axis: ostk.astrodynamics.flight.Profile.Axis,
Create a target, which produces a vector pointing along the ground velocity vector (aka the scan direction of the point sliding across the ground). This will compensate for the rotation of the referenced celestial body.
- static target_velocity(
- trajectory: ostk.astrodynamics.Trajectory,
- axis: ostk.astrodynamics.flight.Profile.Axis,
- anti_direction: bool = False,
- axis: ostk.astrodynamics.flight.Profile.Axis,
Create a target, which produces a vector pointing along the scan direction.
- property trajectory¶
The trajectory of the target. Used to compute the target position or velocity.
- property type¶
The type of the target.
- access_model( ) ostk::astrodynamics::flight::profile::Model ¶
Access the profile model.
- Returns:
The profile model.
- Return type:
- static align_and_constrain(
- alignment_target: ostk.astrodynamics.flight.Profile.Target,
- clocking_target: ostk.astrodynamics.flight.Profile.Target,
- angular_offset: ostk.physics.unit.Angle = Angle.Zero(),
- clocking_target: ostk.astrodynamics.flight.Profile.Target,
Generate a function that provides a quaternion that aligns to the alignment_target and constrains to the clocking_target for a given state.
- Parameters:
alignment_target (Profile.Target | Profile.TrajectoryTarget | Profile.OrientationProfileTarget | Profile.CustomTarget) -- The alignment target.
clocking_target (Profile.Target | Profile.TrajectoryTarget | Profile.OrientationProfileTarget | Profile.CustomTarget) -- The clocking target.
angular_offset (Angle) -- The angular offset. Defaults to Angle.Zero().
- Returns:
The custom orientation.
- Return type:
callable[Quaternion, State]
- static custom_pointing(*args, **kwargs)¶
Overloaded function.
custom_pointing(orbit: ostk.astrodynamics.trajectory.Orbit, orientation_generator: Callable[[ostk.astrodynamics.trajectory.State], ostk.mathematics.geometry.d3.transformation.rotation.Quaternion]) -> ostk.astrodynamics.flight.Profile
Create a custom pointing profile.
- Args:
orbit (Orbit): The orbit. orientation_generator (callable[Quaternion, State]): The orientation generator. Typically used in conjunction with align_and_constrain.
- Returns:
Profile: The custom pointing profile.
custom_pointing(orbit: ostk.astrodynamics.trajectory.Orbit, alignment_target: ostk.astrodynamics.flight.Profile.Target, clocking_target: ostk.astrodynamics.flight.Profile.Target, angular_offset: ostk.physics.unit.Angle = Angle.Zero()) -> ostk.astrodynamics.flight.Profile
Create a custom pointing profile.
- Args:
orbit (Orbit): The orbit. alignment_target (Profile.Target): The alignment target. clocking_target (Profile.Target): The clocking target. angular_offset (Angle): The angular offset. Defaults to Angle.Zero().
- Returns:
Profile: The custom pointing profile.
- get_axes_at(
- self: ostk.astrodynamics.flight.Profile,
- instant: ostk.physics.time.Instant,
Get the axes of the profile at a given instant.
- Parameters:
instant (Instant) -- The instant.
- Returns:
The axes of the profile at the given instant.
- Return type:
Frame
- get_body_frame(
- self: ostk.astrodynamics.flight.Profile,
- frame_name: ostk.core.type.String,
Get the body frame of the profile.
- Parameters:
frame_name (str) -- The name of the frame.
- Returns:
The body frame of the profile.
- Return type:
Frame
- get_state_at(
- self: ostk.astrodynamics.flight.Profile,
- instant: ostk.physics.time.Instant,
Get the state of the profile at a given instant.
- Parameters:
instant (Instant) -- The instant.
- Returns:
The state of the profile at the given instant.
- Return type:
- get_states_at(
- self: ostk.astrodynamics.flight.Profile,
- instants: list[ostk.physics.time.Instant],
Get the states of the profile at given instants.
- static inertial_pointing(
- trajectory: ostk.astrodynamics.Trajectory,
- quaternion: ostk.mathematics.geometry.d3.transformation.rotation.Quaternion,
Create an inertial pointing profile.
- Parameters:
trajectory (Trajectory) -- The trajectory.
quaternion (Quaternion) -- The quaternion.
- Returns:
The inertial pointing profile.
- Return type:
- is_defined(self: ostk.astrodynamics.flight.Profile) bool ¶
Check if the profile is defined.
- Returns:
True if the profile is defined, False otherwise.
- Return type:
- static local_orbital_frame_pointing(
- orbit: ostk.astrodynamics.trajectory.Orbit,
- orbital_frame_type: ostk.astrodynamics.trajectory.Orbit.FrameType,
Create a profile aligned with the provided local orbital frame type.
- static undefined() ostk.astrodynamics.flight.Profile ¶
Create an undefined profile.
- Returns:
The undefined profile.
- Return type: