Skip to content

Class astrea::astro::LambertSolver

ClassList > astrea > astro > LambertSolver

Class for solving Lambert's problem. More...

  • #include <LambertSolver.hpp>

Public Types

Type Name
enum EnumType OrbitDirection
Enum class for orbit direction.

Public Functions

Type Name
LambertSolver () = delete
Deleted constructor for LambertSolver .
~LambertSolver () = delete
Deleted destructor for LambertSolver .

Public Static Functions

Type Name
Cartesian solve (const Cartesian & state0, const Time & dt, const GravParam & mu)
Solve Lambert's problem for a given initial and final state. Returns the minimum energy solution.
std::pair< VelocityVector< frames::earth::icrf >, VelocityVector< frames::earth::icrf > > solve (const RadiusVector< frames::earth::icrf > & r0, const RadiusVector< frames::earth::icrf > & rf, const Time & dt, const GravParam & mu, const OrbitDirection & direction)
Solve Lambert's problem for a given initial and final state. Returns the minimum energy solution.

Detailed Description

This class provides methods for solving Lambert's problem, which involves finding the orbital trajectory between two points in space given certain initial conditions.

Public Types Documentation

enum OrbitDirection

Enum class for orbit direction.

enum astrea::astro::LambertSolver::OrbitDirection {
    PROGRADE,
    RETROGRADE
};


Public Functions Documentation

function LambertSolver

Deleted constructor for LambertSolver .

astrea::astro::LambertSolver::LambertSolver () = delete

This constructor is deleted to prevent instantiation of the LambertSolver class.


function ~LambertSolver

Deleted destructor for LambertSolver .

astrea::astro::LambertSolver::~LambertSolver () = delete

This destructor is deleted to prevent destruction of the LambertSolver class.


Public Static Functions Documentation

function solve [1/2]

Solve Lambert's problem for a given initial and final state. Returns the minimum energy solution.

static Cartesian astrea::astro::LambertSolver::solve (
    const Cartesian & state0,
    const Time & dt,
    const GravParam & mu
) 

Parameters:

  • state0 The initial state (position and velocity) of the spacecraft.
  • dt The time of flight.
  • mu The gravitational parameter of the central body.

Returns:

The final state (position and velocity) of the spacecraft.


function solve [2/2]

Solve Lambert's problem for a given initial and final state. Returns the minimum energy solution.

static std::pair< VelocityVector < frames::earth::icrf >, VelocityVector < frames::earth::icrf > > astrea::astro::LambertSolver::solve (
    const RadiusVector < frames::earth::icrf > & r0,
    const RadiusVector < frames::earth::icrf > & rf,
    const Time & dt,
    const GravParam & mu,
    const OrbitDirection & direction
) 

Parameters:

  • r0 The initial position of the spacecraft.
  • rf The final position of the spacecraft.
  • dt The time of flight.
  • mu The gravitational parameter of the central body.
  • direction The direction of the orbit (prograde or retrograde).

Returns:

A pair of velocity vectors (initial and final) for the spacecraft.



The documentation for this class was generated from the following file astrea/astro/astro/propagation/analytic/LambertSolver.hpp