ootk 1.0.8 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/transforms.js CHANGED
@@ -1,3 +1,4 @@
1
+ /* eslint-disable init-declarations */
1
2
  /**
2
3
  * @author Theodore Kruczek.
3
4
  * @description Orbital Object ToolKit (OOTK) is a collection of tools for working
@@ -60,12 +61,14 @@ var Transforms = /** @class */ (function () {
60
61
  return (degrees * PI) / 180.0;
61
62
  };
62
63
  Transforms.ecf2eci = function (ecf, gmst) {
63
- // ccar.colorado.edu/ASEN5070/handouts/coordsys.doc
64
- //
65
- // [X] [C -S 0][X]
66
- // [Y] = [S C 0][Y]
67
- // [Z]eci [0 0 1][Z]ecf
68
- //
64
+ /*
65
+ * Ccar.colorado.edu/ASEN5070/handouts/coordsys.doc
66
+ *
67
+ * [X] [C -S 0][X]
68
+ * [Y] = [S C 0][Y]
69
+ * [Z]eci [0 0 1][Z]ecf
70
+ *
71
+ */
69
72
  var X = ecf.x * Math.cos(gmst) - ecf.y * Math.sin(gmst);
70
73
  var Y = ecf.x * Math.sin(gmst) + ecf.y * Math.cos(gmst);
71
74
  var Z = ecf.z;
@@ -75,7 +78,8 @@ var Transforms = /** @class */ (function () {
75
78
  var sezCoords = Transforms.lla2sez(lla, ecf);
76
79
  return Transforms.sez2rae(sezCoords);
77
80
  };
78
- /** eciToGeodetic converts eci coordinates to lla coordinates
81
+ /**
82
+ * EciToGeodetic converts eci coordinates to lla coordinates
79
83
  * @param {vec3} eci takes xyz coordinates
80
84
  * @param {number} gmst takes a number in gmst time
81
85
  * @returns {array} array containing lla coordinates
@@ -107,17 +111,19 @@ var Transforms = /** @class */ (function () {
107
111
  return { lon: lon, lat: lat, alt: alt };
108
112
  };
109
113
  Transforms.eci2ecf = function (eci, gmst) {
110
- // ccar.colorado.edu/ASEN5070/handouts/coordsys.doc
111
- //
112
- // [X] [C -S 0][X]
113
- // [Y] = [S C 0][Y]
114
- // [Z]eci [0 0 1][Z]ecf
115
- //
116
- //
117
- // Inverse:
118
- // [X] [C S 0][X]
119
- // [Y] = [-S C 0][Y]
120
- // [Z]ecf [0 0 1][Z]eci
114
+ /*
115
+ * Ccar.colorado.edu/ASEN5070/handouts/coordsys.doc
116
+ *
117
+ * [X] [C -S 0][X]
118
+ * [Y] = [S C 0][Y]
119
+ * [Z]eci [0 0 1][Z]ecf
120
+ *
121
+ *
122
+ * Inverse:
123
+ * [X] [C S 0][X]
124
+ * [Y] = [-S C 0][Y]
125
+ * [Z]ecf [0 0 1][Z]eci
126
+ */
121
127
  var x = eci.x * Math.cos(gmst) + eci.y * Math.sin(gmst);
122
128
  var y = eci.x * -Math.sin(gmst) + eci.y * Math.cos(gmst);
123
129
  var z = eci.z;
@@ -144,22 +150,24 @@ var Transforms = /** @class */ (function () {
144
150
  };
145
151
  };
146
152
  Transforms.lla2sez = function (lla, ecf) {
147
- // http://www.celestrak.com/columns/v02n02/
148
- // TS Kelso's method, except I'm using ECF frame
149
- // and he uses ECI.
153
+ /*
154
+ * http://www.celestrak.com/columns/v02n02/
155
+ * TS Kelso's method, except I'm using ECF frame
156
+ * and he uses ECI.
157
+ */
150
158
  var lon = lla.lon, lat = lla.lat;
151
159
  var observerEcf = Transforms.lla2ecf(lla);
152
160
  var rx = ecf.x - observerEcf.x;
153
161
  var ry = ecf.y - observerEcf.y;
154
162
  var rz = ecf.z - observerEcf.z;
155
- // top is short for topocentric
163
+ // Top is short for topocentric
156
164
  var south = Math.sin(lat) * Math.cos(lon) * rx + Math.sin(lat) * Math.sin(lon) * ry - Math.cos(lat) * rz;
157
165
  var east = -Math.sin(lon) * rx + Math.cos(lon) * ry;
158
166
  var zenith = Math.cos(lat) * Math.cos(lon) * rx + Math.cos(lat) * Math.sin(lon) * ry + Math.sin(lat) * rz;
159
167
  return { s: south, e: east, z: zenith };
160
168
  };
161
169
  Transforms.rae2sez = function (rae) {
162
- // az,el,range to sez convertion
170
+ // Az,el,range to sez convertion
163
171
  var south = -rae.rng * Math.cos(rae.el) * Math.cos(rae.az);
164
172
  var east = rae.rng * Math.cos(rae.el) * Math.sin(rae.az);
165
173
  var zenith = rae.rng * Math.sin(rae.el);
@@ -172,7 +180,7 @@ var Transforms = /** @class */ (function () {
172
180
  Transforms.rae2ecf = function (rae, lla) {
173
181
  var obsEcf = Transforms.lla2ecf(lla);
174
182
  var sez = Transforms.rae2sez(rae);
175
- // some needed calculations
183
+ // Some needed calculations
176
184
  var slat = Math.sin(lla.lat);
177
185
  var slon = Math.sin(lla.lon);
178
186
  var clat = Math.cos(lla.lat);
@@ -1 +1 @@
1
- {"version":3,"file":"transforms.js","sourceRoot":"","sources":["../src/transforms.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transforms.js","sourceRoot":"","sources":["../src/transforms.ts"],"names":[],"mappings":"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"}
package/lib/types.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export declare type Kilometer = number;
2
+ export declare type Radians = number;
3
+ export declare type Degrees = number;
2
4
  export declare type Vec3<Type> = {
3
5
  x: Type;
4
6
  y: Type;
@@ -25,9 +27,11 @@ export declare type SezVec3 = {
25
27
  e: Kilometer;
26
28
  z: Kilometer;
27
29
  };
28
- export declare type Radians = number;
29
- export declare type Degrees = number;
30
- /** @interface SatelliteRecord contains all of the orbital parameters necessary for running SGP4. It is generated by Sgp4.createSatrec.*/
30
+ /**
31
+ * @interface SatelliteRecord contains all of the orbital parameters necessary for running SGP4.
32
+ * It is generated by Sgp4.createSatrec.
33
+ *
34
+ */
31
35
  export interface SatelliteRecord {
32
36
  a: number;
33
37
  am: number;
@@ -162,3 +166,39 @@ export declare type StateVector = {
162
166
  };
163
167
  /** @typedef Vec3Flat is a flat three dimensional array used in vector math.*/
164
168
  export declare type Vec3Flat = [number, number, number];
169
+ /** @typedef TleLine1 is the first line of a two line element set */
170
+ export declare type TleLine1 = string;
171
+ /** @typedef TleLine2 is the second line of a two line element set */
172
+ export declare type TleLine2 = string;
173
+ export declare type Line1Data = {
174
+ lineNumber1: number;
175
+ satNum: number;
176
+ satNumRaw: string;
177
+ classification: string;
178
+ intlDes: string;
179
+ intlDesYear: number;
180
+ intlDesLaunchNum: number;
181
+ intlDesLaunchPiece: string;
182
+ epochYear: number;
183
+ epochYearFull: number;
184
+ epochDay: number;
185
+ meanMoDev1: number;
186
+ meanMoDev2: number;
187
+ bstar: number;
188
+ ephemerisType: number;
189
+ elsetNum: number;
190
+ checksum1: number;
191
+ };
192
+ export declare type Line2Data = {
193
+ lineNumber2: number;
194
+ satNum: number;
195
+ satNumRaw: string;
196
+ inclination: number;
197
+ raan: number;
198
+ eccentricity: number;
199
+ argOfPerigee: number;
200
+ meanAnomaly: number;
201
+ meanMotion: number;
202
+ revNum: number;
203
+ checksum2: number;
204
+ };
@@ -0,0 +1,6 @@
1
+ export declare class TleFormatData {
2
+ start: number;
3
+ stop: number;
4
+ length: number;
5
+ constructor(start: number, end: number);
6
+ }
@@ -0,0 +1,10 @@
1
+ var TleFormatData = /** @class */ (function () {
2
+ function TleFormatData(start, end) {
3
+ this.start = start - 1;
4
+ this.stop = end;
5
+ this.length = this.stop - this.start;
6
+ }
7
+ return TleFormatData;
8
+ }());
9
+ export { TleFormatData };
10
+ //# sourceMappingURL=TleFormatData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TleFormatData.js","sourceRoot":"","sources":["../../src/utils/TleFormatData.ts"],"names":[],"mappings":"AAAA;IAOE,uBAAY,KAAa,EAAE,GAAW;QACpC,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,CAAC,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAChB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;IACvC,CAAC;IACH,oBAAC;AAAD,CAAC,AAZD,IAYC"}
@@ -28,3 +28,10 @@ export declare const TAU: number;
28
28
  export declare const DEG2RAD: number;
29
29
  export declare const x2o3: number;
30
30
  export declare const temp4 = 1.5e-12;
31
+ export declare const RAD2DEG: number;
32
+ export declare const MINUTES_PER_DAY = 1440;
33
+ export declare const MILLISECONDS_PER_DAY = 1.15741e-8;
34
+ export declare const cMPerSec = 299792458;
35
+ export declare const cKmPerSec: number;
36
+ export declare const cKmPerMs: number;
37
+ export declare const RADIUS_OF_EARTH = 6371;
@@ -24,8 +24,15 @@
24
24
  * SOFTWARE.
25
25
  */
26
26
  export var PI = Math.PI;
27
- export var TAU = PI * 2; //https://tauday.com/tau-manifesto
27
+ export var TAU = PI * 2; // https://tauday.com/tau-manifesto
28
28
  export var DEG2RAD = PI / 180.0;
29
29
  export var x2o3 = 2.0 / 3.0;
30
30
  export var temp4 = 1.5e-12;
31
+ export var RAD2DEG = 360 / TAU;
32
+ export var MINUTES_PER_DAY = 1440;
33
+ export var MILLISECONDS_PER_DAY = 1.15741e-8;
34
+ export var cMPerSec = 299792458;
35
+ export var cKmPerSec = 299792458 / 1000;
36
+ export var cKmPerMs = 299792458 / 1000 / 1000;
37
+ export var RADIUS_OF_EARTH = 6371; // Radius of Earth in kilometers
31
38
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,CAAC,IAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AAC1B,MAAM,CAAC,IAAM,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,kCAAkC;AAC7D,MAAM,CAAC,IAAM,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC;AAClC,MAAM,CAAC,IAAM,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;AAC9B,MAAM,CAAC,IAAM,KAAK,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,CAAS,IAAA,EAAE,GAAK,IAAI,GAAT,CAAU;AAC3B,MAAM,CAAC,IAAM,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,mCAAmC;AAC9D,MAAM,CAAC,IAAM,OAAO,GAAG,EAAE,GAAG,KAAK,CAAC;AAClC,MAAM,CAAC,IAAM,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC;AAC9B,MAAM,CAAC,IAAM,KAAK,GAAG,OAAO,CAAC;AAE7B,MAAM,CAAC,IAAM,OAAO,GAAG,GAAG,GAAG,GAAG,CAAC;AACjC,MAAM,CAAC,IAAM,eAAe,GAAG,IAAI,CAAC;AACpC,MAAM,CAAC,IAAM,oBAAoB,GAAG,UAAU,CAAC;AAC/C,MAAM,CAAC,IAAM,QAAQ,GAAG,SAAS,CAAC;AAClC,MAAM,CAAC,IAAM,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;AAC1C,MAAM,CAAC,IAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,GAAG,IAAI,CAAC;AAChD,MAAM,CAAC,IAAM,eAAe,GAAG,IAAI,CAAC,CAAC,gCAAgC"}
package/lib/utils.d.ts CHANGED
@@ -30,5 +30,7 @@ declare class Utils {
30
30
  private static sign;
31
31
  static dopplerFactor(location: Types.EciVec3, position: Types.EciVec3, velocity: Types.EciVec3): Types.Kilometer;
32
32
  static createVec(start: number, stop: number, step: number): number[];
33
+ static jday: (year?: number, mon?: number, day?: number, hr?: number, minute?: number, sec?: number) => number;
34
+ static roundToNDecimalPlaces(value: number, places: number): number;
33
35
  }
34
36
  export { Utils };
package/lib/utils.js CHANGED
@@ -24,6 +24,7 @@
24
24
  * SOFTWARE.
25
25
  */
26
26
  import * as Types from './types';
27
+ import { MILLISECONDS_PER_DAY } from './utils/constants';
27
28
  var Utils = /** @class */ (function () {
28
29
  function Utils() {
29
30
  }
@@ -54,8 +55,26 @@ var Utils = /** @class */ (function () {
54
55
  }
55
56
  return array;
56
57
  };
58
+ Utils.roundToNDecimalPlaces = function (value, places) {
59
+ return Math.round(value * Math.pow(10, places)) / Math.pow(10, places);
60
+ };
57
61
  Utils.Types = Types;
58
62
  Utils.sign = function (value) { return (value >= 0 ? 1 : -1); };
63
+ // eslint-disable-next-line max-params
64
+ Utils.jday = function (year, mon, day, hr, minute, sec) {
65
+ if (!year) {
66
+ var now = new Date();
67
+ var jDayStart = new Date(now.getUTCFullYear(), 0, 0);
68
+ var jDayDiff = now.getDate() - jDayStart.getDate();
69
+ return Math.floor(jDayDiff / MILLISECONDS_PER_DAY);
70
+ }
71
+ return (367.0 * year -
72
+ Math.floor(7 * (year + Math.floor((mon + 9) / 12.0)) * 0.25) +
73
+ Math.floor((275 * mon) / 9.0) +
74
+ day +
75
+ 1721013.5 +
76
+ ((sec / 60.0 + minute) / 60.0 + hr) / 24.0);
77
+ };
59
78
  return Utils;
60
79
  }());
61
80
  export { Utils };
package/lib/utils.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AAEjC;IAAA;IA0CA,CAAC;IAvCe,cAAQ,GAAtB,UAAuB,IAAmB,EAAE,IAAmB;QAC7D,OAAO,IAAI,CAAC,IAAI,CAAC,SAAA,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAI,CAAC,CAAA,GAAG,SAAA,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAI,CAAC,CAAA,GAAG,SAAA,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAI,CAAC,CAAA,CAAC,CAAC;IAC7F,CAAC;IAIa,mBAAa,GAA3B,UACE,QAAuB,EACvB,QAAuB,EACvB,QAAuB;QAEvB,IAAM,OAAO,GAAG,WAAW,CAAC;QAC5B,IAAM,CAAC,GAAG,UAAU,CAAC,CAAC,yBAAyB;QAE/C,IAAM,KAAK,GAAkB;YAC3B,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;YAC1B,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;SAC3B,CAAC;QACF,IAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAA,KAAK,CAAC,CAAC,EAAI,CAAC,CAAA,GAAG,SAAA,KAAK,CAAC,CAAC,EAAI,CAAC,CAAA,GAAG,SAAA,KAAK,CAAC,CAAC,EAAI,CAAC,CAAA,CAAC,CAAC;QAEvE,IAAM,QAAQ,GAAkB;YAC9B,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;YACpC,CAAC,EAAE,QAAQ,CAAC,CAAC,GAAG,OAAO,GAAG,QAAQ,CAAC,CAAC;YACpC,CAAC,EAAE,QAAQ,CAAC,CAAC;SACd,CAAC;QAEF,IAAM,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,CAAC;QAElG,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAEa,eAAS,GAAvB,UAAwB,KAAa,EAAE,IAAY,EAAE,IAAY;QAC/D,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,IAAI,IAAI,EAAE;YACxC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACf;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAxCa,WAAK,GAAG,KAAK,CAAC;IAMb,UAAI,GAAG,UAAC,KAAa,IAAK,OAAA,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAArB,CAAqB,CAAC;IAmCjE,YAAC;CAAA,AA1CD,IA0CC;AAED,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ootk",
3
- "version": "1.0.8",
3
+ "version": "1.2.0",
4
4
  "description": "Orbital Object Toolkit including SGP4 Propagator and Coordinate Transforms",
5
5
  "main": "dist/ootk.js",
6
6
  "scripts": {
@@ -57,8 +57,8 @@
57
57
  "@babel/preset-env": "^7.11.5",
58
58
  "@types/jest": "^28.1.5",
59
59
  "@types/node-fetch": "^2.6.2",
60
- "@typescript-eslint/eslint-plugin": "^4.13.0",
61
- "@typescript-eslint/parser": "^4.13.0",
60
+ "@typescript-eslint/eslint-plugin": "^5.30.7",
61
+ "@typescript-eslint/parser": "^5.30.7",
62
62
  "assemblyscript": "^0.20.13",
63
63
  "auto-changelog": "^2.2.1",
64
64
  "babel-eslint": "^10.1.0",