$LastChangedDate: 27-Juil-2011 $

# CL_man_hohmannG

Delta V for a generalized Hohmann transfer

## Calling Sequence

       [delta_v,dv1,dv2,anv1,anv2] = CL_man_hohmannG(ai,ei,af,ef [,posman1,rotation,mu])

## Description

- Computes the maneuvers of a generalized Hohmann transfer. The 2 velocity increments transform an initial orbit defined by semi-major axis and eccentricity into a final orbit also defined by semi-major axis and eccentricity.

  The first velocity increment can be at periapsis or apoapsis of the initial orbit, depending on the value of posman1.

  The second velocity increment is 180 degrees apart.

  delta_v is the sum of the norms of the velocity increments required (|dv1| + |dv2|).

  Velocity increments are expressed in spherical coordinates in the QSW frame: [lambda; phi; dv], where lambda is the in-plane angle (+%pi: towards planet and +%pi/2: ~along velocity), phi is the out-of-plane angle, positive towards the angular momentum vector (the angular momentum vector is perpendicular to the orbit plane and oriented according to right hand rule), dv is the norm of the velocity increment.

  anv1 is the true anomaly at the location of the first velocity increment, and anv2 is the anomaly at the second location (and relative to the intermediate orbit).

  posman1 is used to define the location of the first maneuver (0->periapsis, 1->apoapsis)

  rotation defines whether the final orbit should have its perigee rotated 180deg relative to the initial orbit (0->no rotation, 1->180 degree rotation)

## Parameters

ai :

  Semi-major axis of initial orbit [m] (1xN)

ei:

  Eccentricity of initial orbit (1xN)

af :

  Semi-major axis of final orbit [m] (1xN)

ef:

  Eccentricity of final orbit (1xN)

posman1:

  (optional) Flag indicating the location of the first maneuver (0->periapsis, 1->apoapsis; default is 0) (1xN)

rotation:

  (optional) Flag indicating whether the final orbit should have its perigee rotated 180deg relative to the initial orbit (0->no rotation, 1->rotation ; default is 0) (1xN)

mu :

  (optional) Gravitational constant. [m^3/s^2] (default value is %CL_mu)

delta_v :

  Total delta-v required = |dv1| + |dv2|. [m/s] (1xN)

dv1 :

  First velocity increment in spherical coordinates in the QSW frame [lambda;phi;|dv|] [rad,rad,m/s] (3xN)

dv2 :

  Second velocity increment in spherical coordinates in the QSW frame [lambda;phi;|dv|] [rad,rad,m/s] (3xN)

anv1:

  True anomaly at the location of the first velocity increment (in the initial orbit). [rad] (1xN)

anv2:

  True anomaly at the location of the second velocity increment (in the intermediate orbit). [rad] (1xN)

## Authors

- CNES - DCT/SB

## See also

- CL_man_biElliptic

- CL_man_hohmann

- CL_man_sma

## Examples

    // Maneuver at apogee, no rotation
    ai = 7200.e3;
    af = 7000.e3;
    ei = 0.1;
    ef = 0.1;
    [delta_v,dv1,dv2,anv1,anv2] = CL_man_hohmannG(ai,ei,af,ef,1,0)
    // Check results :
    kep = [ai ; ei ; %pi/2 ; 0 ; 0 ; anv1];
    kep1 = CL_man_applyDv(kep,dv1);
    kep1(6) = anv2;
    kep2 = CL_man_applyDv(kep1,dv2)

    // Maneuver at apogee, with rotation
    ai = 7200.e3;
    af = 7000.e3;
    ei = 0.1;
    ef = 0.1;
    [delta_v,dv1,dv2,anv1,anv2] = CL_man_hohmannG(ai,ei,af,ef,1,1)
    // Check results :
    kep = [ai ; ei ; %pi/2 ; 0 ; 0 ; anv1];
    kep1 = CL_man_applyDv(kep,dv1);
    kep1(6) = anv2;
    kep2 = CL_man_applyDv(kep1,dv2)