File Exchange

image thumbnail

Two-dimensional, Low-thrust Earth-to-Mars Trajectory Analysis with MATLAB

version (757 KB) by David Eagle
Determines optimal, two-dimensional low-thrust Earth-to-Mars interplanetary trajectories.


Updated 08 Apr 2016

View License

PDF document and interactive MATLAB script named ilt_opt.m that can be used to analyze and optimize two-dimensional, heliocentric low-thrust trajectories between the orbits of Earth and Mars. In this script, the heliocentric planet orbits are assumed to be circular and coplanar. The optimal steering angle for either (1) minimum transfer time or (2) maximum final mass, are modeled as piecewise-linear variations. For both options, this script attempts to minimize the accumulated delta-v required to perform the transfer. Since the propulsive thrust is constant and continuous in this script, this is equivalent to minimizing the transfer time or maximizing the final mass.

Cite As

David Eagle (2020). Two-dimensional, Low-thrust Earth-to-Mars Trajectory Analysis with MATLAB (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (3)

jun song

omid omidi

me ( change)

1:16 PM (1 hour ago)

I would like please help me in the following problem:
I use student-version Matlab mex-files of SNOPT, and also have added the directory where the mex-file is located to the Matlab path and am working in the same directory.
Besides, mex -setup FORTRAN is Ok. And my system includes:

Matlab 2014b,
Win 7, 64bit,
Visual Studio Ultimate 2013,

But, there is this error after running my Matlab code:

Undefined function 'snopt' for input arguments of type 'double'.

Error in ilt_opt (line 179)
[x, f, inform, xmul, fmul] = snopt(xg, xlb, xub, flow, fupp, 'ilt_shoot');

Many Thanks,

sun Chong


The ilt_opt_64bit.m version should be used with the 2015 (version 7.5) of SNOPT.

Added main script (ilt_opt_64bit.m) that uses the March 17, 2014 version of SNOPT.

Calculates departure and arrival dates for rendezvous from user's initial guess.

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux