An Elliptic orbit interpolator which uses (x,y,z,t) data as input and finds Keplerian orbital parameters.
Using two Algorithms :
- Choosing random points (set of 3) the given data set finding all orbital params using Gibb's method. Repeating the same for another random set of points for given number of iterations.
- Fitting an Ellipse equation using the given data set in the orbital plane ( averaged ) . (yet to implement)
Data model:
Input data should be in the format of 'trackdata.csv' file in project.
Column no. (2,3,4) : (x,y,z)
Column no. (4,5,6) : (x+diff, y+diff, z+ diff) , is the data with Jittery.
For solving problem of 3D orbit determination of a cubesat, project proposed by AerospaceResearch.net , [gsoc17-a03] Lone Pseudoranger: orbit position data analysis and interpolation (3d).
Based on the data posted by Andreas Hornig, https://github.com/aerospaceresearch/summerofcode2017/tree/master/gsoc2017/a03-LonePseudorangerOrbitPosition
Algo 1:
- Parse the file and get (x,y,z) set of coordinates.
- Choose random points (set of 3) from the data set.
- Find orbital parameters.
- Repeat above set for given number of iterations.
- Output the averaged value of orbital parameters.
Algo 2: (yet to implement)
- Parse x, y, z coordinates from file.
- Choose random points (set of 3) from the data set and find the direction of orbital plane.
- Repeat above set for given number of iterations.
- Transform XY plane coordinate system to New Orbital Plane coordinate system.
- Fit an elliptical curve equation in the new plane.
- Find remaining orbital parameters and output it.
a is not converging well. Convergence of e, i, raan, omega is well enough.