Filter löschen
Filter löschen

polynomial interpolation of satelite positions

5 Ansichten (letzte 30 Tage)
Jes
Jes am 13 Dez. 2021
Kommentiert: Torsten am 14 Dez. 2021
0 184360.634246042 -211658.511711780 -6853898.76885147
5 219214.256803219 -226785.422707026 -6852351.69754470
10 254061.148627043 -241905.367897281 -6850593.66616310
15 288900.239807604 -257017.882918880 -6848624.72472167
20 323730.460592783 -272122.503660514 -6846444.92962074
25 358550.741525596 -287218.766139992 -6844054.34362999
30 393360.013332653 -302306.206701186 -6841453.03589562
35 428157.207073006 -317384.361885925 -6838641.08193523
40 462941.254118769 -332452.768510410 -6835618.56363502
45 497711.086198094 -347510.963664615 -6832385.56924254
50 532465.635437569 -362558.484708884 -6828942.19336887
55 567203.834312849 -377594.869407128 -6825288.53697975
60 601924.615866041 -392619.655658098 -6821424.70739058
In a general form, the polynomials of degree n can be represented as follows: y = a0t 0 + a1t 1 + a2t 2 + ... + ant n (1)
where y contains the measurements (orbit components x, y or z here) and t is the time vector corresponding to each measurement.
Here the polynomial modeling of the given data y, is the estimation of the unknown coefficients a0, a1,..., an. Assuming that
values: y = [y1, y2, y3, ..., ym]m×1 (2)
are given at time points: t = [t1, t2, t3, ..., tm]m×1. (3)
Then n + 1 coefficients x = [a0, a1, ..., an]1×(n+1) of the polynomials degree n can be simply estimated using least-squares
adjustment: x = (ATA) −1AT y, (4)
i have this data of satelite positions(x,y,z) for 1 minute with 5 sec sampling. 1st colmn is time with 5 sec spacing.
how could i interpolate the positions to 1 second spacing using polynomial. is there a built in fnctn ?
  2 Kommentare
John D'Errico
John D'Errico am 13 Dez. 2021
@Jeson Lonappan: Please dn't post answers for a folloup question. Moved to a comment:
"could i use polyfit for x y z seperately?"

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Torsten
Torsten am 13 Dez. 2021
Bearbeitet: Torsten am 13 Dez. 2021
Use interp1 for the three columns separately:
t = 0:60;
x = interp1(T,X,t);
y = interp1(T,Y,t);
z = interp1(T,Z,t);
where T,X,Y,Z are your data columns from above.
If you want to use your own interpolation scheme, you can break down the problem to 1d by the trick from above.
  5 Kommentare
Jes
Jes am 14 Dez. 2021
does interp1 uses a polynomial for interpolation?
Torsten
Torsten am 14 Dez. 2021
interp1 does not use one polynomial over the complete range [0:60], but a polynomial p1 on [0:5], another polynomial p2 on [5:10] and so on. The term for this is that the interpolation function is piecewise polynomial. Depending on the interpolation method used in interp1, these polynomials share some properties in t=5, namely p1(5)=p2(5) for linear interpolation, p1(5)=p2(5),p1'(5)=p2'(5) and p1''(5)=p2''(5) for cubic spline interpolation and similar for the other methods.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Polynomials finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by