ootk 2.0.1 → 3.0.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/.eslintrc.json +4 -4
- package/.prettierrc +17 -0
- package/babel.config.js +16 -0
- package/dist/objects/detailed-sat.d.ts +3 -3
- package/dist/objects/sat.d.ts +4 -4
- package/dist/objects/sensor.d.ts +8 -2
- package/dist/objects/star.d.ts +8 -8
- package/dist/ootk.d.ts +0 -1
- package/dist/ootk.js +1 -1
- package/dist/sgp4/sgp4.d.ts +9 -9
- package/dist/tle/tle.d.ts +25 -24
- package/dist/transforms/transforms.d.ts +40 -1
- package/dist/types/types.d.ts +417 -92
- package/dist/utils/moon-math.d.ts +18 -18
- package/dist/utils/sun-math.d.ts +118 -118
- package/dist/utils/utils.d.ts +6 -6
- package/jest.config.ts +30 -0
- package/lib/objects/base-object.js +33 -63
- package/lib/objects/base-object.js.map +1 -1
- package/lib/objects/detailed-sat.d.ts +3 -3
- package/lib/objects/detailed-sat.js.map +1 -1
- package/lib/objects/sat.d.ts +4 -4
- package/lib/objects/sat.js +1 -1
- package/lib/objects/sat.js.map +1 -1
- package/lib/objects/sensor.d.ts +8 -2
- package/lib/objects/sensor.js +51 -33
- package/lib/objects/sensor.js.map +1 -1
- package/lib/objects/space-object.js.map +1 -1
- package/lib/objects/star.d.ts +8 -8
- package/lib/objects/star.js +4 -4
- package/lib/objects/star.js.map +1 -1
- package/lib/ootk.d.ts +0 -1
- package/lib/ootk.js +0 -1
- package/lib/ootk.js.map +1 -1
- package/lib/sgp4/sgp4.d.ts +9 -9
- package/lib/sgp4/sgp4.js +15 -27
- package/lib/sgp4/sgp4.js.map +1 -1
- package/lib/tle/tle.d.ts +25 -24
- package/lib/tle/tle.js +4 -4
- package/lib/tle/tle.js.map +1 -1
- package/lib/transforms/transforms.d.ts +40 -1
- package/lib/transforms/transforms.js +100 -1
- package/lib/transforms/transforms.js.map +1 -1
- package/lib/types/types.d.ts +417 -92
- package/lib/types/types.js +3 -1
- package/lib/types/types.js.map +1 -1
- package/lib/utils/moon-math.d.ts +18 -18
- package/lib/utils/moon-math.js +45 -45
- package/lib/utils/moon-math.js.map +1 -1
- package/lib/utils/sun-math.d.ts +118 -118
- package/lib/utils/sun-math.js +237 -237
- package/lib/utils/sun-math.js.map +1 -1
- package/lib/utils/utils.d.ts +6 -6
- package/lib/utils/utils.js +17 -15
- package/lib/utils/utils.js.map +1 -1
- package/package.json +19 -35
- package/tsconfig.base.json +31 -0
- package/tsconfig.build.json +14 -0
- package/dist/sgp4/Sgp4Assembly.d.ts +0 -5
- package/lib/sgp4/Sgp4Assembly.d.ts +0 -5
- package/lib/sgp4/Sgp4Assembly.js +0 -75
- package/lib/sgp4/Sgp4Assembly.js.map +0 -1
package/lib/utils/moon-math.d.ts
CHANGED
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
34
34
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
35
35
|
*/
|
|
36
|
-
import { Radians } from '../ootk';
|
|
36
|
+
import { Degrees, Radians } from '../ootk';
|
|
37
37
|
type MoonIlluminationData = {
|
|
38
38
|
fraction: number;
|
|
39
39
|
phase: {
|
|
@@ -71,19 +71,7 @@ type MoonIlluminationData = {
|
|
|
71
71
|
};
|
|
72
72
|
};
|
|
73
73
|
export declare class MoonMath {
|
|
74
|
-
static
|
|
75
|
-
ra: Radians;
|
|
76
|
-
dec: Radians;
|
|
77
|
-
dist: number;
|
|
78
|
-
};
|
|
79
|
-
static hoursLater(date: Date, h: number): Date;
|
|
80
|
-
static getMoonPosition(date: any, lat: any, lon: any): {
|
|
81
|
-
az: Radians;
|
|
82
|
-
el: Radians;
|
|
83
|
-
rng: number;
|
|
84
|
-
parallacticAngle: number;
|
|
85
|
-
};
|
|
86
|
-
private static moonCycles;
|
|
74
|
+
private static moonCycles_;
|
|
87
75
|
/**
|
|
88
76
|
* calculations for illumination parameters of the moon,
|
|
89
77
|
* based on http://idlastro.gsfc.nasa.gov/ftp/pro/astro/mphase.pro formulas and
|
|
@@ -92,15 +80,21 @@ export declare class MoonMath {
|
|
|
92
80
|
* @return {MoonIlluminationData} result object of moon-illumination
|
|
93
81
|
*/
|
|
94
82
|
static getMoonIllumination(date: number | Date): MoonIlluminationData;
|
|
83
|
+
static getMoonPosition(date: Date, lat: Degrees, lon: Degrees): {
|
|
84
|
+
az: Radians;
|
|
85
|
+
el: Radians;
|
|
86
|
+
rng: number;
|
|
87
|
+
parallacticAngle: number;
|
|
88
|
+
};
|
|
95
89
|
/**
|
|
96
90
|
* calculations for moon rise/set times are based on http://www.stargazing.net/kepler/moonrise.html article
|
|
97
91
|
* @param {number|Date} dateValue Date object or timestamp for calculating moon-times
|
|
98
|
-
* @param {
|
|
99
|
-
* @param {
|
|
92
|
+
* @param {Degrees} lat latitude for calculating moon-times
|
|
93
|
+
* @param {Degrees} lon longitude for calculating moon-times
|
|
100
94
|
* @param {boolean} [isUtc] defines if the calculation should be in utc or local time (default is local)
|
|
101
95
|
* @return {IMoonTimes} result object of sunTime
|
|
102
96
|
*/
|
|
103
|
-
static getMoonTimes(dateValue: Date, lat:
|
|
97
|
+
static getMoonTimes(dateValue: number | Date, lat: Degrees, lon: Degrees, isUtc?: boolean): {
|
|
104
98
|
rise: any;
|
|
105
99
|
set: any;
|
|
106
100
|
ye: any;
|
|
@@ -108,6 +102,12 @@ export declare class MoonMath {
|
|
|
108
102
|
alwaysDown: any;
|
|
109
103
|
highest: any;
|
|
110
104
|
};
|
|
111
|
-
|
|
105
|
+
static hoursLater(date: Date, h: number): Date;
|
|
106
|
+
static moonCoords(d: any): {
|
|
107
|
+
ra: Radians;
|
|
108
|
+
dec: Radians;
|
|
109
|
+
dist: number;
|
|
110
|
+
};
|
|
111
|
+
private static calculateRiseSetTimes_;
|
|
112
112
|
}
|
|
113
113
|
export {};
|
package/lib/utils/moon-math.js
CHANGED
|
@@ -33,46 +33,12 @@
|
|
|
33
33
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
34
34
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
35
35
|
*/
|
|
36
|
-
import { DEG2RAD } from './constants';
|
|
37
36
|
import { MS_PER_DAY } from '../utils/constants';
|
|
37
|
+
import { DEG2RAD } from './constants';
|
|
38
38
|
import { SunMath } from './sun-math';
|
|
39
39
|
var MoonMath = /** @class */ (function () {
|
|
40
40
|
function MoonMath() {
|
|
41
41
|
}
|
|
42
|
-
MoonMath.moonCoords = function (d) {
|
|
43
|
-
// geocentric ecliptic coordinates of the moon
|
|
44
|
-
var L = DEG2RAD * (218.316 + 13.176396 * d); // ecliptic longitude
|
|
45
|
-
var M = DEG2RAD * (134.963 + 13.064993 * d); // mean anomaly
|
|
46
|
-
var F = DEG2RAD * (93.272 + 13.22935 * d); // mean distance
|
|
47
|
-
var l = L + DEG2RAD * 6.289 * Math.sin(M); // longitude
|
|
48
|
-
var b = DEG2RAD * 5.128 * Math.sin(F); // latitude
|
|
49
|
-
var dt = 385001 - 20905 * Math.cos(M); // distance to the moon in km
|
|
50
|
-
return {
|
|
51
|
-
ra: SunMath.rightAscension(l, b),
|
|
52
|
-
dec: SunMath.declination(l, b),
|
|
53
|
-
dist: dt,
|
|
54
|
-
};
|
|
55
|
-
};
|
|
56
|
-
MoonMath.hoursLater = function (date, h) {
|
|
57
|
-
return new Date(date.getTime() + (h * MS_PER_DAY) / 24);
|
|
58
|
-
};
|
|
59
|
-
MoonMath.getMoonPosition = function (date, lat, lon) {
|
|
60
|
-
var lw = (DEG2RAD * -lon);
|
|
61
|
-
var phi = (DEG2RAD * lat);
|
|
62
|
-
var d = SunMath.date2jSince2000(date);
|
|
63
|
-
var c = MoonMath.moonCoords(d);
|
|
64
|
-
var H = SunMath.siderealTime(d, lw) - c.ra;
|
|
65
|
-
var h = SunMath.elevation(H, phi, c.dec);
|
|
66
|
-
// formula 14.1 of "Astronomical Algorithms" 2nd edition by Jean Meeus (Willmann-Bell, Richmond) 1998.
|
|
67
|
-
var pa = Math.atan2(Math.sin(H), Math.tan(phi) * Math.cos(c.dec) - Math.sin(c.dec) * Math.cos(H));
|
|
68
|
-
h = (h + SunMath.astroRefraction(h)); // altitude correction for refraction
|
|
69
|
-
return {
|
|
70
|
-
az: SunMath.azimuth(H, phi, c.dec),
|
|
71
|
-
el: h,
|
|
72
|
-
rng: c.dist,
|
|
73
|
-
parallacticAngle: pa,
|
|
74
|
-
};
|
|
75
|
-
};
|
|
76
42
|
/**
|
|
77
43
|
* calculations for illumination parameters of the moon,
|
|
78
44
|
* based on http://idlastro.gsfc.nasa.gov/ftp/pro/astro/mphase.pro formulas and
|
|
@@ -122,8 +88,8 @@ var MoonMath = /** @class */ (function () {
|
|
|
122
88
|
var next = Math.min(nextNewMoon, nextFirstQuarter, nextFullMoon, nextThirdQuarter);
|
|
123
89
|
// eslint-disable-next-line init-declarations
|
|
124
90
|
var phase;
|
|
125
|
-
for (var index = 0; index < MoonMath.
|
|
126
|
-
var element = MoonMath.
|
|
91
|
+
for (var index = 0; index < MoonMath.moonCycles_.length; index++) {
|
|
92
|
+
var element = MoonMath.moonCycles_[index];
|
|
127
93
|
if (phaseValue >= element.from && phaseValue <= element.to) {
|
|
128
94
|
phase = element;
|
|
129
95
|
break;
|
|
@@ -170,11 +136,28 @@ var MoonMath = /** @class */ (function () {
|
|
|
170
136
|
},
|
|
171
137
|
};
|
|
172
138
|
};
|
|
139
|
+
MoonMath.getMoonPosition = function (date, lat, lon) {
|
|
140
|
+
var lw = (DEG2RAD * -lon);
|
|
141
|
+
var phi = (DEG2RAD * lat);
|
|
142
|
+
var d = SunMath.date2jSince2000(date);
|
|
143
|
+
var c = MoonMath.moonCoords(d);
|
|
144
|
+
var H = SunMath.siderealTime(d, lw) - c.ra;
|
|
145
|
+
var h = SunMath.elevation(H, phi, c.dec);
|
|
146
|
+
// formula 14.1 of "Astronomical Algorithms" 2nd edition by Jean Meeus (Willmann-Bell, Richmond) 1998.
|
|
147
|
+
var pa = Math.atan2(Math.sin(H), Math.tan(phi) * Math.cos(c.dec) - Math.sin(c.dec) * Math.cos(H));
|
|
148
|
+
h = (h + SunMath.astroRefraction(h)); // altitude correction for refraction
|
|
149
|
+
return {
|
|
150
|
+
az: SunMath.azimuth(H, phi, c.dec),
|
|
151
|
+
el: h,
|
|
152
|
+
rng: c.dist,
|
|
153
|
+
parallacticAngle: pa,
|
|
154
|
+
};
|
|
155
|
+
};
|
|
173
156
|
/**
|
|
174
157
|
* calculations for moon rise/set times are based on http://www.stargazing.net/kepler/moonrise.html article
|
|
175
158
|
* @param {number|Date} dateValue Date object or timestamp for calculating moon-times
|
|
176
|
-
* @param {
|
|
177
|
-
* @param {
|
|
159
|
+
* @param {Degrees} lat latitude for calculating moon-times
|
|
160
|
+
* @param {Degrees} lon longitude for calculating moon-times
|
|
178
161
|
* @param {boolean} [isUtc] defines if the calculation should be in utc or local time (default is local)
|
|
179
162
|
* @return {IMoonTimes} result object of sunTime
|
|
180
163
|
*/
|
|
@@ -187,7 +170,7 @@ var MoonMath = /** @class */ (function () {
|
|
|
187
170
|
else {
|
|
188
171
|
t.setHours(0, 0, 0, 0);
|
|
189
172
|
}
|
|
190
|
-
var _a = MoonMath.
|
|
173
|
+
var _a = MoonMath.calculateRiseSetTimes_(t, lat, lon), rise = _a.rise, set = _a.set, ye = _a.ye;
|
|
191
174
|
var result = {
|
|
192
175
|
rise: null,
|
|
193
176
|
set: null,
|
|
@@ -197,13 +180,13 @@ var MoonMath = /** @class */ (function () {
|
|
|
197
180
|
highest: null,
|
|
198
181
|
};
|
|
199
182
|
if (rise) {
|
|
200
|
-
result.rise = new Date(MoonMath.hoursLater(
|
|
183
|
+
result.rise = new Date(MoonMath.hoursLater(t, rise));
|
|
201
184
|
}
|
|
202
185
|
else {
|
|
203
186
|
result.rise = NaN;
|
|
204
187
|
}
|
|
205
188
|
if (set) {
|
|
206
|
-
result.set = new Date(MoonMath.hoursLater(
|
|
189
|
+
result.set = new Date(MoonMath.hoursLater(t, set));
|
|
207
190
|
}
|
|
208
191
|
else {
|
|
209
192
|
result.set = NaN;
|
|
@@ -221,7 +204,7 @@ var MoonMath = /** @class */ (function () {
|
|
|
221
204
|
else if (rise && set) {
|
|
222
205
|
result.alwaysUp = false;
|
|
223
206
|
result.alwaysDown = false;
|
|
224
|
-
result.highest = new Date(MoonMath.hoursLater(
|
|
207
|
+
result.highest = new Date(MoonMath.hoursLater(t, Math.min(rise, set) + Math.abs(set - rise) / 2));
|
|
225
208
|
}
|
|
226
209
|
else {
|
|
227
210
|
result.alwaysUp = false;
|
|
@@ -229,8 +212,25 @@ var MoonMath = /** @class */ (function () {
|
|
|
229
212
|
}
|
|
230
213
|
return result;
|
|
231
214
|
};
|
|
215
|
+
MoonMath.hoursLater = function (date, h) {
|
|
216
|
+
return new Date(date.getTime() + (h * MS_PER_DAY) / 24);
|
|
217
|
+
};
|
|
218
|
+
MoonMath.moonCoords = function (d) {
|
|
219
|
+
// geocentric ecliptic coordinates of the moon
|
|
220
|
+
var L = DEG2RAD * (218.316 + 13.176396 * d); // ecliptic longitude
|
|
221
|
+
var M = DEG2RAD * (134.963 + 13.064993 * d); // mean anomaly
|
|
222
|
+
var F = DEG2RAD * (93.272 + 13.22935 * d); // mean distance
|
|
223
|
+
var l = L + DEG2RAD * 6.289 * Math.sin(M); // longitude
|
|
224
|
+
var b = DEG2RAD * 5.128 * Math.sin(F); // latitude
|
|
225
|
+
var dt = 385001 - 20905 * Math.cos(M); // distance to the moon in km
|
|
226
|
+
return {
|
|
227
|
+
ra: SunMath.rightAscension(l, b),
|
|
228
|
+
dec: SunMath.declination(l, b),
|
|
229
|
+
dist: dt,
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
232
|
// eslint-disable-next-line max-statements
|
|
233
|
-
MoonMath.
|
|
233
|
+
MoonMath.calculateRiseSetTimes_ = function (t, lat, lon) {
|
|
234
234
|
var hc = 0.133 * DEG2RAD;
|
|
235
235
|
var h0 = MoonMath.getMoonPosition(t, lat, lon).el - hc;
|
|
236
236
|
var h1 = 0;
|
|
@@ -289,7 +289,7 @@ var MoonMath = /** @class */ (function () {
|
|
|
289
289
|
}
|
|
290
290
|
return { rise: rise, set: set, ye: ye };
|
|
291
291
|
};
|
|
292
|
-
MoonMath.
|
|
292
|
+
MoonMath.moonCycles_ = [
|
|
293
293
|
{
|
|
294
294
|
from: 0,
|
|
295
295
|
to: 0.033863193308711,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"moon-math.js","sourceRoot":"","sources":["../../src/utils/moon-math.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"moon-math.js","sourceRoot":"","sources":["../../src/utils/moon-math.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AACtC,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAuCrC;IAAA;IAmXA,CAAC;IArRC;;;;;;OAMG;IACH,0CAA0C;IACnC,4BAAmB,GAA1B,UAA2B,IAAmB;QAC5C,IAAM,SAAS,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAE/D,IAAM,WAAW,GAAG,UAAU,CAAC,CAAC,gEAAgE;QAChG,IAAM,gBAAgB,GAAG,YAAY,CAAC,CAAC,kDAAkD;QACzF,IAAM,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACvD,IAAM,CAAC,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QACjC,IAAM,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,IAAM,KAAK,GAAG,SAAS,CAAC,CAAC,mCAAmC;QAC5D,IAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CACnB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAC9F,CAAC;QACF,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9E,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACtB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,EACvC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAC9F,CAAC;QACF,IAAM,UAAU,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;QAEtE,iFAAiF;QACjF,IAAM,QAAQ,GAAG,SAAS,GAAG,gBAAgB,CAAC;QAC9C,6CAA6C;QAC7C,IAAI,UAAU,GAAG,QAAQ,GAAG,WAAW,CAAC;QACxC,iEAAiE;QAEjE,IAAI,UAAU,GAAG,CAAC,EAAE;YAClB,UAAU,IAAI,WAAW,CAAC;SAC3B;QACD,IAAM,WAAW,GAAG,WAAW,GAAG,UAAU,GAAG,SAAS,CAAC;QACzD,IAAI,YAAY,GAAG,WAAW,GAAG,CAAC,GAAG,UAAU,GAAG,SAAS,CAAC;QAE5D,IAAI,YAAY,GAAG,SAAS,EAAE;YAC5B,YAAY,IAAI,WAAW,CAAC;SAC7B;QACD,IAAM,MAAM,GAAG,WAAW,GAAG,CAAC,CAAC;QAC/B,IAAI,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;QAEvD,IAAI,gBAAgB,GAAG,SAAS,EAAE;YAChC,gBAAgB,IAAI,WAAW,CAAC;SACjC;QACD,IAAI,gBAAgB,GAAG,WAAW,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;QAErE,IAAI,gBAAgB,GAAG,SAAS,EAAE;YAChC,gBAAgB,IAAI,WAAW,CAAC;SACjC;QACD;;;WAGG;QACH,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,gBAAgB,CAAC,CAAC;QACrF,6CAA6C;QAC7C,IAAI,KAAK,CAAC;QAEV,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YAChE,IAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAE5C,IAAI,UAAU,IAAI,OAAO,CAAC,IAAI,IAAI,UAAU,IAAI,OAAO,CAAC,EAAE,EAAE;gBAC1D,KAAK,GAAG,OAAO,CAAC;gBAChB,MAAM;aACP;SACF;QAED,IAAI,IAAI,GAAG,EAAE,CAAC;QAEd,IAAI,IAAI,KAAK,WAAW,EAAE;YACxB,IAAI,GAAG,SAAS,CAAC;SAClB;aAAM,IAAI,IAAI,KAAK,gBAAgB,EAAE;YACpC,IAAI,GAAG,cAAc,CAAC;SACvB;aAAM,IAAI,IAAI,KAAK,YAAY,EAAE;YAChC,IAAI,GAAG,UAAU,CAAC;SACnB;aAAM;YACL,IAAI,GAAG,cAAc,CAAC;SACvB;QAED,OAAO;YACL,QAAQ,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;YACjC,KAAK,OAAA;YACL,UAAU,YAAA;YACV,KAAK,OAAA;YACL,IAAI,EAAE;gBACJ,KAAK,EAAE,IAAI;gBACX,IAAI,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;gBAClC,IAAI,MAAA;gBACJ,OAAO,EAAE;oBACP,KAAK,EAAE,WAAW;oBAClB,IAAI,EAAE,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,WAAW,EAAE;iBAC1C;gBACD,QAAQ,EAAE;oBACR,KAAK,EAAE,YAAY;oBACnB,IAAI,EAAE,IAAI,IAAI,CAAC,YAAY,CAAC,CAAC,WAAW,EAAE;iBAC3C;gBACD,YAAY,EAAE;oBACZ,KAAK,EAAE,gBAAgB;oBACvB,IAAI,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE;iBAC/C;gBACD,YAAY,EAAE;oBACZ,KAAK,EAAE,gBAAgB;oBACvB,IAAI,EAAE,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC,WAAW,EAAE;iBAC/C;aACF;SACF,CAAC;IACJ,CAAC;IAEM,wBAAe,GAAtB,UAAuB,IAAU,EAAE,GAAY,EAAE,GAAY;QAC3D,IAAM,EAAE,GAAY,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QACrC,IAAM,GAAG,GAAY,CAAC,OAAO,GAAG,GAAG,CAAC,CAAC;QACrC,IAAM,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACxC,IAAM,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,IAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;QAC7C,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;QACzC,sGAAsG;QACtG,IAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAEpG,CAAC,GAAY,CAAC,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,qCAAqC;QAEpF,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC;YAClC,EAAE,EAAE,CAAC;YACL,GAAG,EAAE,CAAC,CAAC,IAAI;YACX,gBAAgB,EAAE,EAAE;SACrB,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACI,qBAAY,GAAnB,UAAoB,SAAwB,EAAE,GAAY,EAAE,GAAY,EAAE,KAAa;QAAb,sBAAA,EAAA,aAAa;QACrF,IAAM,CAAC,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC;QAE9B,IAAI,KAAK,EAAE;YACT,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SAC3B;aAAM;YACL,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;SACxB;QAEK,IAAA,KAAoB,QAAQ,CAAC,sBAAsB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAA9D,IAAI,UAAA,EAAE,GAAG,SAAA,EAAE,EAAE,QAAiD,CAAC;QAEvE,IAAM,MAAM,GAAG;YACb,IAAI,EAAE,IAAI;YACV,GAAG,EAAE,IAAI;YACT,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,IAAI;YAChB,OAAO,EAAE,IAAI;SACd,CAAC;QAEF,IAAI,IAAI,EAAE;YACR,MAAM,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;SACtD;aAAM;YACL,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC;SACnB;QAED,IAAI,GAAG,EAAE;YACP,MAAM,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;SACpD;aAAM;YACL,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC;SAClB;QAED,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE;YACjB,IAAI,EAAE,GAAG,CAAC,EAAE;gBACV,MAAM,CAAC,QAAQ,GAAG,IAAI,CAAC;gBACvB,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;aAC3B;iBAAM;gBACL,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;gBACxB,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;aAC1B;SACF;aAAM,IAAI,IAAI,IAAI,GAAG,EAAE;YACtB,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;YACxB,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;YAC1B,MAAM,CAAC,OAAO,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACnG;aAAM;YACL,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC;YACxB,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;SAC3B;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAEM,mBAAU,GAAjB,UAAkB,IAAU,EAAE,CAAS;QACrC,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEM,mBAAU,GAAjB,UAAkB,CAAC;QACjB,8CAA8C;QAE9C,IAAM,CAAC,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,qBAAqB;QACpE,IAAM,CAAC,GAAG,OAAO,GAAG,CAAC,OAAO,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,eAAe;QAC9D,IAAM,CAAC,GAAG,OAAO,GAAG,CAAC,MAAM,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,gBAAgB;QAC7D,IAAM,CAAC,GAAG,CAAC,GAAG,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY;QACzD,IAAM,CAAC,GAAG,OAAO,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW;QACpD,IAAM,EAAE,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,6BAA6B;QAEtE,OAAO;YACL,EAAE,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC;YAChC,GAAG,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,EAAE;SACT,CAAC;IACJ,CAAC;IAED,0CAA0C;IAC3B,+BAAsB,GAArC,UAAsC,CAAO,EAAE,GAAY,EAAE,GAAY;QACvE,IAAM,EAAE,GAAG,KAAK,GAAG,OAAO,CAAC;QAC3B,IAAI,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;QACvD,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC;QAEX,4GAA4G;QAC5G,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;YAC/B,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;YAC3E,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;YAE/E,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACvB,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;YAClB,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;YAClB,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;YAC5B,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;YACvB,KAAK,GAAG,CAAC,CAAC;YAEV,IAAI,CAAC,IAAI,CAAC,EAAE;gBACV,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACtC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;gBACb,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;gBACb,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;oBACrB,KAAK,EAAE,CAAC;iBACT;gBACD,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;oBACrB,KAAK,EAAE,CAAC;iBACT;gBACD,IAAI,EAAE,GAAG,CAAC,CAAC,EAAE;oBACX,EAAE,GAAG,EAAE,CAAC;iBACT;aACF;YAED,IAAI,KAAK,KAAK,CAAC,EAAE;gBACf,IAAI,EAAE,GAAG,CAAC,EAAE;oBACV,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;iBACf;qBAAM;oBACL,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;iBACd;aACF;iBAAM,IAAI,KAAK,KAAK,CAAC,EAAE;gBACtB,IAAI,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC9B,GAAG,GAAG,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;aAC9B;YAED,IAAI,IAAI,IAAI,GAAG,EAAE;gBACf,MAAM;aACP;YAED,EAAE,GAAG,EAAE,CAAC;SACT;QAED,OAAO,EAAE,IAAI,MAAA,EAAE,GAAG,KAAA,EAAE,EAAE,IAAA,EAAE,CAAC;IAC3B,CAAC;IAjXc,oBAAW,GAAG;QAC3B;YACE,IAAI,EAAE,CAAC;YACP,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,aAAa;SACnB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,oBAAoB;YACxB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,kBAAkB;SACxB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,kBAAkB;YACtB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,qBAAqB;SAC3B;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,mBAAmB;YACvB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,kBAAkB;SACxB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,UAAU;YACd,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,WAAW;YACjB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,cAAc;SACpB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,mBAAmB;YACvB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,gBAAgB;YACtB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,kBAAkB;SACxB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,kBAAkB;YACtB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,qBAAqB;YAC3B,IAAI,EAAE,eAAe;YACrB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,qBAAqB;SAC3B;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,iBAAiB;YACrB,EAAE,EAAE,oBAAoB;YACxB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,wBAAwB;YAC9B,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,kBAAkB;SACxB;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,EAAE,EAAE,CAAC;YACL,EAAE,EAAE,SAAS;YACb,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,sBAAsB;YAC5B,IAAI,EAAE,UAAU;YAChB,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,aAAa;SACnB;KACF,CAAC;IAuRJ,eAAC;CAAA,AAnXD,IAmXC;SAnXY,QAAQ"}
|
package/lib/utils/sun-math.d.ts
CHANGED
|
@@ -33,33 +33,36 @@
|
|
|
33
33
|
* You should have received a copy of the GNU Affero General Public License along with
|
|
34
34
|
* Orbital Object ToolKit. If not, see <http://www.gnu.org/licenses/>.
|
|
35
35
|
*/
|
|
36
|
-
import { AzEl, Meters, SunTime } from '../types/types';
|
|
37
36
|
import { Degrees, Radians } from '../ootk';
|
|
37
|
+
import { AzEl, Meters, SunTime } from '../types/types';
|
|
38
38
|
export declare class SunMath {
|
|
39
|
-
private static readonly
|
|
40
|
-
private static readonly
|
|
41
|
-
private static readonly
|
|
42
|
-
private static readonly
|
|
43
|
-
private static
|
|
44
|
-
private static julianCycle;
|
|
39
|
+
private static readonly J0_;
|
|
40
|
+
private static readonly J1970_;
|
|
41
|
+
private static readonly J2000_;
|
|
42
|
+
private static readonly e_;
|
|
43
|
+
private static times_;
|
|
45
44
|
/**
|
|
46
|
-
*
|
|
47
|
-
* @param {number}
|
|
48
|
-
* @
|
|
45
|
+
* approx transit
|
|
46
|
+
* @param {number} Ht - hourAngle
|
|
47
|
+
* @param {number} lw - rad * -lng
|
|
48
|
+
* @param {number} n - Julian cycle
|
|
49
|
+
* @returns {number} approx transit
|
|
49
50
|
*/
|
|
50
|
-
|
|
51
|
+
static approxTransit(Ht: number, lw: number, n: number): number;
|
|
51
52
|
/**
|
|
52
|
-
* get
|
|
53
|
-
* @param {
|
|
54
|
-
* @returns {number}
|
|
53
|
+
* get astro refraction
|
|
54
|
+
* @param {Radians} h - elevation
|
|
55
|
+
* @returns {number} refraction
|
|
55
56
|
*/
|
|
56
|
-
|
|
57
|
+
static astroRefraction(h: Radians): Radians;
|
|
57
58
|
/**
|
|
58
|
-
*
|
|
59
|
-
* @param {number}
|
|
60
|
-
* @
|
|
59
|
+
* get azimuth
|
|
60
|
+
* @param {number} H - siderealTime
|
|
61
|
+
* @param {Radians} phi - latitude
|
|
62
|
+
* @param {Radians} dec - The declination of the sun
|
|
63
|
+
* @returns {Radians} azimuth in rad
|
|
61
64
|
*/
|
|
62
|
-
static
|
|
65
|
+
static azimuth(H: number, phi: Radians, dec: Radians): Radians;
|
|
63
66
|
/**
|
|
64
67
|
* get number of days for a dateValue since 2000
|
|
65
68
|
*
|
|
@@ -69,13 +72,6 @@ export declare class SunMath {
|
|
|
69
72
|
* @return {number} count of days
|
|
70
73
|
*/
|
|
71
74
|
static date2jSince2000(date: Date): number;
|
|
72
|
-
/**
|
|
73
|
-
* get right ascension
|
|
74
|
-
* @param {number} l - ecliptic longitude
|
|
75
|
-
* @param {number} b - ecliptic latitude
|
|
76
|
-
* @returns {number} right ascension
|
|
77
|
-
*/
|
|
78
|
-
static rightAscension(l: number, b: number): Radians;
|
|
79
75
|
/**
|
|
80
76
|
* get declination
|
|
81
77
|
* @param {number} l - ecliptic longitude
|
|
@@ -84,13 +80,17 @@ export declare class SunMath {
|
|
|
84
80
|
*/
|
|
85
81
|
static declination(l: number, b: number): Radians;
|
|
86
82
|
/**
|
|
87
|
-
*
|
|
88
|
-
* @param {number}
|
|
89
|
-
* @
|
|
90
|
-
* @param {Radians} dec - The declination of the sun
|
|
91
|
-
* @returns {Radians} azimuth in rad
|
|
83
|
+
* ecliptic latitude
|
|
84
|
+
* @param {number} B - ?
|
|
85
|
+
* @returns {number} ecliptic latitude
|
|
92
86
|
*/
|
|
93
|
-
static
|
|
87
|
+
static eclipticLatitude(B: number): number;
|
|
88
|
+
/**
|
|
89
|
+
* ecliptic longitude
|
|
90
|
+
* @param {number} M - solar mean anomaly
|
|
91
|
+
* @returns {number} ecliptic longitude
|
|
92
|
+
*/
|
|
93
|
+
static eclipticLongitude(M: number): Radians;
|
|
94
94
|
/**
|
|
95
95
|
* get elevation (sometimes called altitude)
|
|
96
96
|
* @param {number} H - siderealTime
|
|
@@ -100,30 +100,70 @@ export declare class SunMath {
|
|
|
100
100
|
*/
|
|
101
101
|
static elevation(H: number, phi: Radians, dec: Radians): Radians;
|
|
102
102
|
/**
|
|
103
|
-
*
|
|
104
|
-
* @param {number}
|
|
105
|
-
* @param {
|
|
106
|
-
* @
|
|
103
|
+
* returns set time for the given sun altitude
|
|
104
|
+
* @param {number} h - heigh at 0
|
|
105
|
+
* @param {number} lw - rad * -lng
|
|
106
|
+
* @param {number} phi - rad * lat;
|
|
107
|
+
* @param {number} dec - declination
|
|
108
|
+
* @param {number} n - Julian cycle
|
|
109
|
+
* @param {number} M - solar mean anomal
|
|
110
|
+
* @param {number} L - ecliptic longitude
|
|
111
|
+
* @returns {number} set time
|
|
107
112
|
*/
|
|
108
|
-
static
|
|
113
|
+
static getSetJulian(h: Meters, lw: number, phi: number, dec: number, n: number, M: number, L: number): number;
|
|
109
114
|
/**
|
|
110
|
-
*
|
|
111
|
-
*
|
|
112
|
-
*
|
|
115
|
+
* Convert Date to Solar Date/Time
|
|
116
|
+
*
|
|
117
|
+
* Based on https://www.pveducation.org/pvcdrom/properties-of-sunlight/solar-time
|
|
118
|
+
*
|
|
119
|
+
* See: https://github.com/mourner/suncalc/pull/156
|
|
120
|
+
*
|
|
121
|
+
* @param {date} date - Date to calculate for
|
|
122
|
+
* @param {number} utcOffset - UTC offset in hours
|
|
123
|
+
* @param {Degrees} lon - Longitude in degrees
|
|
124
|
+
* @returns {Date} - Date Object in Solar Time
|
|
113
125
|
*/
|
|
114
|
-
static
|
|
126
|
+
static getSolarTime(date: Date, utcOffset: number, lon: number): Date;
|
|
127
|
+
static getStarAzEl(date: Date, lat: Degrees, lon: Degrees, ra: Radians, dec: Radians): AzEl;
|
|
128
|
+
static getSunAzEl(date: Date, lat: Degrees, lon: Degrees): AzEl;
|
|
129
|
+
static getSunRaDec(d: number): {
|
|
130
|
+
dec: Radians;
|
|
131
|
+
ra: Radians;
|
|
132
|
+
};
|
|
115
133
|
/**
|
|
116
|
-
*
|
|
117
|
-
* @param {number}
|
|
118
|
-
* @
|
|
134
|
+
* calculates time for a given azimuth angle for a given date and latitude/longitude
|
|
135
|
+
* @param {number|Date} dateValue Date object or timestamp for calculating sun-time
|
|
136
|
+
* @param {Degrees} lat latitude for calculating sun-time
|
|
137
|
+
* @param {Degrees} lon longitude for calculating sun-time
|
|
138
|
+
* @param {Radians | Degrees} az azimuth for calculating sun-time
|
|
139
|
+
* @param {boolean} [isDegrees] true if the az angle is in degree and not in rad
|
|
140
|
+
* @return {Date} result time of sun-time
|
|
119
141
|
*/
|
|
120
|
-
static
|
|
142
|
+
static getSunTimeByAzimuth(dateValue: any, lat: Degrees, lon: Degrees, az: Radians | Degrees, isDegrees?: boolean): Date;
|
|
121
143
|
/**
|
|
122
|
-
*
|
|
123
|
-
* @param {number}
|
|
124
|
-
* @
|
|
144
|
+
* calculates sun times for a given date and latitude/longitude
|
|
145
|
+
* @param {Date|number} dateVal Date object for calculating sun-times
|
|
146
|
+
* @param {number} lat latitude for calculating sun-times
|
|
147
|
+
* @param {number} lon longitude for calculating sun-times
|
|
148
|
+
* @param {number} [alt=0] the observer height (in meters) relative to the horizon
|
|
149
|
+
* @param {boolean} [isUtc=false] defines if the calculation should be in utc or local time (default is local)
|
|
150
|
+
* @return {SunTime} result object of sunTime
|
|
125
151
|
*/
|
|
126
|
-
static
|
|
152
|
+
static getTimes(dateVal: Date, lat: Degrees, lon: Degrees, alt?: Meters, isUtc?: boolean): SunTime;
|
|
153
|
+
/**
|
|
154
|
+
* hour angle
|
|
155
|
+
* @param {number} h - heigh at 0
|
|
156
|
+
* @param {number} phi - rad * lat;
|
|
157
|
+
* @param {number} dec - declination
|
|
158
|
+
* @returns {number} hour angle
|
|
159
|
+
*/
|
|
160
|
+
static hourAngle(h: number, phi: number, dec: number): number;
|
|
161
|
+
/**
|
|
162
|
+
* convert Julian calendar to date object
|
|
163
|
+
* @param {number} julian day number in Julian calendar to convert
|
|
164
|
+
* @return {number} result date as timestamp
|
|
165
|
+
*/
|
|
166
|
+
static julian2date(julian: number): Date;
|
|
127
167
|
/**
|
|
128
168
|
* Julian cycle
|
|
129
169
|
* @param {number} d - number of days
|
|
@@ -132,13 +172,19 @@ export declare class SunMath {
|
|
|
132
172
|
*/
|
|
133
173
|
static julianCyle(d: number, lw: number): number;
|
|
134
174
|
/**
|
|
135
|
-
*
|
|
136
|
-
* @param {number}
|
|
137
|
-
* @param {number}
|
|
138
|
-
* @
|
|
139
|
-
* @returns {number} approx transit
|
|
175
|
+
* get right ascension
|
|
176
|
+
* @param {number} l - ecliptic longitude
|
|
177
|
+
* @param {number} b - ecliptic latitude
|
|
178
|
+
* @returns {number} right ascension
|
|
140
179
|
*/
|
|
141
|
-
static
|
|
180
|
+
static rightAscension(l: number, b: number): Radians;
|
|
181
|
+
/**
|
|
182
|
+
* side real time
|
|
183
|
+
* @param {number} d - julian day
|
|
184
|
+
* @param {Radians} lw - longitude of the observer
|
|
185
|
+
* @returns {number} sidereal time
|
|
186
|
+
*/
|
|
187
|
+
static siderealTime(d: number, lw: Radians): number;
|
|
142
188
|
/**
|
|
143
189
|
* solar transit in Julian
|
|
144
190
|
* @param {number} ds - approxTransit
|
|
@@ -147,26 +193,15 @@ export declare class SunMath {
|
|
|
147
193
|
* @returns {number} solar transit in Julian
|
|
148
194
|
*/
|
|
149
195
|
static solarTransitJulian(ds: number, M: number, L: number): number;
|
|
196
|
+
private static calculateJnoon_;
|
|
150
197
|
/**
|
|
151
|
-
*
|
|
152
|
-
* @param {number}
|
|
153
|
-
* @param {
|
|
154
|
-
* @param {
|
|
155
|
-
* @returns {
|
|
156
|
-
*/
|
|
157
|
-
static hourAngle(h: number, phi: number, dec: number): number;
|
|
158
|
-
/**
|
|
159
|
-
* returns set time for the given sun altitude
|
|
160
|
-
* @param {number} h - heigh at 0
|
|
161
|
-
* @param {number} lw - rad * -lng
|
|
162
|
-
* @param {number} phi - rad * lat;
|
|
163
|
-
* @param {number} dec - declination
|
|
164
|
-
* @param {number} n - Julian cycle
|
|
165
|
-
* @param {number} M - solar mean anomal
|
|
166
|
-
* @param {number} L - ecliptic longitude
|
|
167
|
-
* @returns {number} set time
|
|
198
|
+
* get azimuth
|
|
199
|
+
* @param {number} H - siderealTime
|
|
200
|
+
* @param {Radians} phi - latitude
|
|
201
|
+
* @param {Radians} dec - The declination of the sun
|
|
202
|
+
* @returns {Radians} azimuth
|
|
168
203
|
*/
|
|
169
|
-
static
|
|
204
|
+
private static getAzimuth_;
|
|
170
205
|
/**
|
|
171
206
|
* returns set time for the given sun altitude
|
|
172
207
|
* @param {Meters} alt - altitude at 0
|
|
@@ -178,53 +213,18 @@ export declare class SunMath {
|
|
|
178
213
|
* @param {number} L - ecliptic longitude
|
|
179
214
|
* @return {J2000Value} sunset time in days since 2000
|
|
180
215
|
*/
|
|
181
|
-
private static
|
|
216
|
+
private static getSetJ_;
|
|
217
|
+
private static julianCycle_;
|
|
182
218
|
/**
|
|
183
|
-
* calculates
|
|
184
|
-
* @param {
|
|
185
|
-
* @
|
|
186
|
-
* @param {number} lon longitude for calculating sun-times
|
|
187
|
-
* @param {number} [alt=0] the observer height (in meters) relative to the horizon
|
|
188
|
-
* @param {boolean} [isUtc=false] defines if the calculation should be in utc or local time (default is local)
|
|
189
|
-
* @return {SunTime} result object of sunTime
|
|
190
|
-
*/
|
|
191
|
-
static getTimes(dateVal: Date, lat: Degrees, lon: Degrees, alt?: Meters, isUtc?: boolean): SunTime;
|
|
192
|
-
private static calculateJnoon;
|
|
193
|
-
/**
|
|
194
|
-
* calculates time for a given azimuth angle for a given date and latitude/longitude
|
|
195
|
-
* @param {number|Date} dateValue Date object or timestamp for calculating sun-time
|
|
196
|
-
* @param {Degrees} lat latitude for calculating sun-time
|
|
197
|
-
* @param {Degrees} lon longitude for calculating sun-time
|
|
198
|
-
* @param {Radians | Degrees} az azimuth for calculating sun-time
|
|
199
|
-
* @param {boolean} [isDegrees] true if the az angle is in degree and not in rad
|
|
200
|
-
* @return {Date} result time of sun-time
|
|
201
|
-
*/
|
|
202
|
-
static getSunTimeByAzimuth(dateValue: any, lat: Degrees, lon: Degrees, az: Radians | Degrees, isDegrees?: boolean): Date;
|
|
203
|
-
/**
|
|
204
|
-
* get azimuth
|
|
205
|
-
* @param {number} H - siderealTime
|
|
206
|
-
* @param {Radians} phi - latitude
|
|
207
|
-
* @param {Radians} dec - The declination of the sun
|
|
208
|
-
* @returns {Radians} azimuth
|
|
219
|
+
* calculates the obderver angle
|
|
220
|
+
* @param {number} alt the observer altitude (in meters) relative to the horizon
|
|
221
|
+
* @returns {Degrees} height for further calculations
|
|
209
222
|
*/
|
|
210
|
-
private static
|
|
223
|
+
private static observerAngle_;
|
|
211
224
|
/**
|
|
212
|
-
*
|
|
213
|
-
*
|
|
214
|
-
*
|
|
215
|
-
*
|
|
216
|
-
* See: https://github.com/mourner/suncalc/pull/156
|
|
217
|
-
*
|
|
218
|
-
* @param {date} date - Date to calculate for
|
|
219
|
-
* @param {number} utcOffset - UTC offset in hours
|
|
220
|
-
* @param {Degrees} lon - Longitude in degrees
|
|
221
|
-
* @returns {Date} - Date Object in Solar Time
|
|
225
|
+
* get solar mean anomaly
|
|
226
|
+
* @param {number} d - julian day
|
|
227
|
+
* @returns {number} solar mean anomaly
|
|
222
228
|
*/
|
|
223
|
-
static
|
|
224
|
-
static getStarAzEl(date: Date, lat: Degrees, lon: Degrees, ra: Radians, dec: Radians): AzEl;
|
|
225
|
-
static getSunAzEl(date: Date, lat: Degrees, lon: Degrees): AzEl;
|
|
226
|
-
static getSunRaDec(d: number): {
|
|
227
|
-
dec: Radians;
|
|
228
|
-
ra: Radians;
|
|
229
|
-
};
|
|
229
|
+
private static solarMeanAnomaly_;
|
|
230
230
|
}
|