Home » Posts tagged 'hohmann transfer'

# Tag Archives: hohmann transfer

## Hohmann vs Bi-elliptic transfer

Contents

```% In this example we compare be-elliptic and Hohmann transfer.
% The total speed change that required for spacecraft transfer from
% geocentric circular orbit with radius Ri to a higher altitude Rf
clc;
clear all;
Rf  =  125000;   % [km] Final circular orbit
Ri  =  7200;     % [km] Initial circular orbit
Rb  =  190000;   % [km] Apogee of the transfer ellipse
mu  =  398600;   % [km^3/s^2] Earth’s gravitational parameter

% For initial circular orbit
Vc = (mu/Ri)^0.5;
a   = Rf/Ri;
b   = Rb/Ri;```

## Hohmann transfer

For Hohmann transfer total speed change

```dV_H =Vc*(1/(a)^0.5 -(2/(a*(a+1)))^0.5*(1-a) - 1);
% Semimajor axes of the Hohmann transfer ellipse
a_h = (Rf + Ri)/2;
% Time required for Hohmann transfer
t_H = pi/(mu)^0.5*(a_h^1.5);     %[s]
fprintf('Total speed change = %4.4f [km/s]\n',dV_H);
fprintf('Time required for transfer = %4.2f [hours]\n\n',t_H/3600);```
```Total speed change = 3.9878 [km/s]
Time required for transfer = 23.49 [hours]```

## Bi-elliptic transfer

For Bi-elliptic transfer total speed change

```dV_BE = Vc*((2*(a+b)/(a*b))^0.5 - (1+1/a^0.5) - ((2/(b +b^2))^0.5*(1-b)));
% Semimajor axes of the first transfer ellipse
a1 = (Ri + Rb)/2;
% Semimajor axes of the second transfer ellipse
a2 = (Rf + Rb)/2;
t_BE = pi/(mu)^0.5*(a1^1.5+a2^1.5);     %[s]
fprintf('Total speed change = %4.4f [km/s]\n',dV_BE);
fprintf('Time required for transfer = %4.2f [hours]\n',t_BE/3600);```
```Total speed change = 3.9626 [km/s]
Time required for transfer = 129.19 [hours]```

## Bi-Elliptic Hohmann Transfer

In this example we calculate the total change in speed required for a bi-elliptic Hohmann transfer from a geocentric circular orbit of 7200 km radius to circular orbit of 125000 km radius. The apogee of the first transfer ellipse is 190000 km.

``` clc;
clear all;

R_i  = 7200;     % [km]
R1_a = 190000;   % [km]
R_f  = 125000;   % [km]

mu   = 398600;   % [km^3/s^2] Earth’s gravitational parameter
% For initial circular orbit
V_i = (mu/R_i)^0.5;
% Speed at apogee and perigee for the first transfer ellipse
V1_a = (2*mu*R_i/(R1_a*(R1_a+R_i)))^0.5;
V1_p = (2*mu*R1_a/(R_i*(R1_a+R_i)))^0.5;
% Semimajor axes of the first transfer ellipse
a1 = (R_i + R1_a)/2;
% Speed at apogee and perigee for the second transfer ellipse
V2_a = (2*mu*R_f/(R1_a*(R1_a+R_f)))^0.5;
V2_p = (2*mu*R1_a/(R_f*(R1_a + R_f)))^0.5;
% Semimajor axes of the second transfer ellipse
a2 = (R_f + R1_a)/2;
% For target circular orbit
V_f = (mu/R_f)^0.5;

% For bi-elliptic maneuver the total speed change required
dV =  abs(V_i - V1_p)+ abs(V1_a - V2_a) + abs(V_f - V2_p); %[km/s]

% Time required for transfer
t_bi = pi/(mu)^0.5*(a1^1.5+a2^1.5);     %[s]

fprintf('Total speed change = %4.4f [km/s]\n',dV);
fprintf('Time required for transfer = %4.2f [hours]\n',t_bi/3600);```
```Total speed change = 3.9626 [km/s]
Time required for transfer = 129.19 [hours]```