Lambert Profile
The Lambert profile finds the solution to the Lambert problem using the inputs to the profile. The profile uses the spacecraft position at the start of the target sequence for the starting position for the Lambert solution. If you set the solution option to “Fixed Time,” then the Lambert solver will find a solution that reaches the target position with the specified time of flight. Otherwise, the time of flight will only be used to evaluate the target position in the desired coordinate system, but the actual time of flight may be different.
For best performance, the sequence of maneuver, propagate, and maneuver segments should be within the target sequence. This sequence will enable the profile to write the results of the Lambert solver to the segments. This gives you an opportunity to perform analyses such as visualizing the two-body Lambert arc or using Lambert Delta-Vs and propagation times as initial guesses to find the corresponding trajectory in the full force model. The profile will still function without these segments, but getting the result of the profile will require reading from the profile’s attributes rather than the results being automatically written to segment properties.
Switching central bodies
Lambert’s problem uses a two-body model for its solution. The central body that STK's Astrogator capability uses when solving Lambert’s problem is the central body associated with the satellite. When you create the satellite, you can select a central body or leave it as the default, which is the scenario central body. To do an interplanetary transfer, for example, it is best to select the Sun as your central body for the satellite. This figure shows that Astrogator simply displays the name of the satellite’s central body.
Writing to segments
The profile provides several options to write the results of the Lambert solver to propagate and maneuver segments within the target sequence. You can choose to write to one propagate segment and two maneuver segments. The propagate segment represents propagation of the Lambert trajectory. Astrogator performs the first maneuver at the start of the target sequence and the second maneuver at the arrival time. If you select the option to write to a propagate segment, Astrogator will create a duration stopping condition called “LambertDuration.”If a stopping condition with this name already exists, the trip value will be overwritten. These changes will not be visible unless you click
in the target sequence consistent with the general behavior of target sequence profiles. You can also disable all non-LambertDuration stopping conditions on the propagate segment. If you do so, then it’s possible that another enabled stopping condition will trigger before the LambertDuration condition, which could result in unintended behavior. If you select the option to write to a maneuver segment, Astrogator will change the maneuver to an impulsive maneuver if necessary and will set the Delta-V to the inertial Delta-V for the minimum fuel Lambert solution found.Input parameters
Option name | Attribute | Description |
---|---|---|
Coordinate System | CoordinateSystem | This is the coordinate system in which the target state is defined. If the system is inertial, then Astrogator will use the central body of the coordinate system when Target Coordinate Type is Keplerian. |
Target Coordinate Type | TargetCoordinateType | This specifies whether the target position and velocity should be entered in Cartesian vectors or Keplerian orbital elements. You can only choose Keplerian when Coordinate System is inertial. |
Calculate Second Maneuver at Destination | ShouldCalculateSecondManeuver | This is true if the Lambert solver should also calculate the required Delta-V to reach the desired end-point velocity. |
X Position | TargetPositionX | This is the X component of the target position for the end of the Lambert transfer. |
Y Position | TargetPositionY | This is the Y component of the target position for the end of the Lambert transfer. |
Z Position | TargetPositionZ | This is the Z component of the target position for the end of the Lambert transfer. |
X Velocity | TargetVelocityX | This is the X component of the target velocity for the end of the Lambert transfer and is visible when you select Calculate Second Maneuver at Destination. |
Y Velocity | TargetVelocityY | This is the Y component of the target velocity for the end of the Lambert transfer and is visible when you select Calculate Second Maneuver at Destination. |
Z Velocity | TargetVelocityZ | This is the Z component of the target velocity for the end of the Lambert transfer and is visible when you select Calculate Second Maneuver at Destination. |
Semimajor Axis | TargetSemimajorAxis | This is the target semimajor axis for the end of the Lambert transfer. |
Eccentricity | TargetEccentricity | This is the target eccentricity for the end of the Lambert transfer. |
Inclination | TargetInclination | This is the target inclination for the end of the Lambert transfer. |
Right Ascension Of Ascending Node | TargetRightAscensionOfAscendingNode | This is the target right ascension of the ascending node for the end of the Lambert transfer. |
Argument of Periapsis | TargetArgumentOfPeriapsis | This is the target argument of periapsis for the end of the Lambert transfer. |
True Anomaly | TargetTrueAnomaly | This is the target true anomaly for the end of the Lambert transfer. |
Solution Option | SolutionOption | Select the type of Lambert solution to calculate. It can be fixed time, minimum eccentricity, or minimum energy. Minimum energy is the minimum transfer orbit with minimum energy, not the minimum Delta-V transfer. |
Time of Flight | TimeOfFlight | This is the time of flight between departure and arrival for the Lambert solution. |
Number of Revolutions | NumRevs | This is the number of revolutions for the Lambert solution. |
Orbital Energy | OrbitalEnergy | This is the orbital energy for the Lambert solution. It is visible when Number of Revolutions is greater than zero and Solution Option is “fixed time.” High energy corresponds to the solution with the larger semimajor axis, and low energy corresponds to the smaller semimajor axis solution. |
Direction of Motion | DirectionOfMotion | This is the direction of motion (long or short) for the Lambert solution. |
Central Body Collision Altitude Padding | AltitudePadding | This is the minimum altitude below which the Lambert algorithm will consider the spacecraft to have hit the central body. |
Write Initial Delta-V to Maneuver | ShouldWriteToFirstManeuver | Set this to true to write the Delta-V solution from Lambert at the start of the transfer to the linked maneuver. |
First Maneuver | FirstManeuverSegment | This is the first maneuver segment to manipulate that occurs at the start of the transfer. It is visible when you select Write Initial Delta-V to Maneuver. |
Write Duration to Propagate | ShouldWriteToPropagate | Set this to true to write the Lambert duration of transfer to the 'LambertDuration' stopping condition in the linked propagate segment. |
Disable Non-LambertDuration Stopping Conditions in Propagate Segment | ShouldDisablePropagateStoppingConditions | Set this to true to disable all non-LambertDuration stopping conditions in the propagate segment. This is visible when you select Write Duration to Propagate. |
Propagate | PropagateSegment | This is the propagate segment to manipulate that contains the transfer duration. It is visible when you select Write Duration to Propagate. |
Write Final Delta-V to Maneuver | ShouldWriteToSecondManeuver | Set this to true to write the Delta-V solution from Lambert at the end of the transfer to the linked maneuver. It is visible when you select Write Final Delta-V to Maneuver. |
Second Maneuver | SecondManeuverSegment | This is the second maneuver segment to manipulate that occurs at the end of the transfer. It is visible when you select Write Final Delta-V to Maneuver. |
Output parameters
Attribute | Description |
---|---|
CalculatedTimeOfFlight | This is the actual time of flight between departure and arrival used for the Lambert solution. It will generally not match Time Of Flight when looking for the minimum eccentricity or minimum energy solutions. |
DidHitCentralBody | This is true if the solved two-body trajectory impacts the central body. |
DidSolutionConverge | This is true if the Lambert solver converged on a solution. |
FinalDeltaVx | This is the X component, in central body inertial coordinates, of Delta-V for the second maneuver. |
FinalDeltaVy | This is the Y component, in central body inertial coordinates, of Delta-V for the second maneuver. |
FinalDeltaVz | This is the Z component, in central body inertial coordinates, of Delta-V for the second maneuver. |
InitialDeltaVx | This is the X component, in central body inertial coordinates, of Delta-V for the first maneuver. |
InitialDeltaVy | This is the Y component, in central body inertial coordinates, of Delta-V for the first maneuver. |
InitialDeltaVz | This is the Z component, in central body inertial coordinates, of Delta-V for the first maneuver. |