File Exchange

image thumbnail

3-D orbit simulator with ground track

version 1.0.0 (30 KB) by Ziad Saad
Visualize orbit trajectory around earth


Updated 12 Oct 2018

View License

for the .exe version:
This project is a GUI for a simple orbit simulator that allows the user to view the trajectory of a satellite orbit around earth and its ground track on earth, this simulator can be useful for a quick view and visualization of the final state vector of the satellite and how it will propagate.
Input methods:
the user can input a satellite initial conditions throughout these options:
1- Orbital element of the satellite
2- Initial state vector
3- TLE file extensions

examples of the three methods can be viewed here:
The coding of the GUI includes solving the equations to propagate the trajectory by either:
1- Kepler equations (analytical solution)
2- Runge-Kutta integration (Numerical solution)
hope this could be useful and for any inquiries please comment, :)

Cite As

Ziad Saad (2021). 3-D orbit simulator with ground track (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (10)

Alexander Heintz

@stephen: Yes thats the problem. I think its qutie curious bevause as I remeber 'visible! should be a parameter of any line() function

James Bell

This didn't work for me. I managed to get it to run after changing some indexing a bit, but the maps/plots still don't appear.

Felipe Condo

hi, how does the .exe file work? what do it saysa about mcr software, which one is it? thanks

Xuedi Chen

@Ziad Saad, hello! I get errors when I run the GUI.
Error using set
There is no Visible property on the Root class.

Error in OrbitSimulator>calc_Callback (line 814)

I find that "orbitline(time)=line([Xcoord(k-1) Xcoord(k)],[Ycoord(k-1) Ycoord(k)], [Zcoord(k-1) Zcoord(k)],'Color', 'black', 'LineWidth', 2);"
The 'orbitline' is not the "Line" Type, causing the error. The same error for 'ground(:)'

But, I find that "ECIx=line([0 lim],[0 0],[0 0],'Color', 'black', 'Marker','.','LineStyle','-');" can succeed in making 'ECIx' the "Line" Type.

Faisal Islam

Can I use state vectors (x,y,z, Vx, Vy, Vz) and current time with some specified delta (time step) to estimate and plot the ground track for a satellite? I haven't downloaded and tried the code / .exe yet but I am very much interested.
Also, if your response to the question was yes, could I call the function that estimates ground track from a program written in Java (what would be the calling convention)?
Thanks, Faisal

Nicholas Martin

michelle vigue

Not working for me, either.

Kairat Kulmukhambetov

I can not make visualization of graph either.
My inputs data are: R(x,y,z) 9000; V(x,y,z) 50; INc=0;RAAN=0; AOP=0; true anomaly=90; a=42164;e=0
I am using Matlab 2018b

Ziad Saad

@Stephen Forczyk, Can you give me your inputs? because this error probably would mean it did not calculate an orbit, also i would appreciate if you try the .exe file and tell me if it doesn't work either, just to avoid the case of that error happening because of you using a different matlab version, which i assume not the case but just to make sure.
you might try the examples given, they should work.
thanks :D

Stephen Forczyk

I keep getting errors of this type when trying to run your GUI
Error using set
There is no Visible property on the Root class.

Error in OrbitSimulator>calc_Callback (line 853)

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

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!