@hebcal/noaa 0.8.2 → 0.8.3
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/dist/cjs/index.js +26 -33
- package/package.json +2 -2
- package/dist/esm/index.js +0 -1060
- package/dist/index.d.ts +0 -710
package/dist/index.d.ts
DELETED
|
@@ -1,710 +0,0 @@
|
|
|
1
|
-
import { Temporal } from 'temporal-polyfill';
|
|
2
|
-
/**
|
|
3
|
-
* A class that contains location information such as latitude and longitude required for astronomical calculations. The
|
|
4
|
-
* elevation field may not be used by some calculation engines and would be ignored if set. Check the documentation for
|
|
5
|
-
* specific implementations of the {@link AstronomicalCalculator} to see if elevation is calculated as part of the
|
|
6
|
-
* algorithm.
|
|
7
|
-
*
|
|
8
|
-
* @author © Eliyahu Hershfeld 2004 - 2016
|
|
9
|
-
* @version 1.1
|
|
10
|
-
*/
|
|
11
|
-
export declare class GeoLocation {
|
|
12
|
-
/**
|
|
13
|
-
* @see #getLatitude()
|
|
14
|
-
* @see #setLatitude(double)
|
|
15
|
-
* @see #setLatitude(int, int, double, String)
|
|
16
|
-
*/
|
|
17
|
-
private latitude;
|
|
18
|
-
/**
|
|
19
|
-
* @see #getLongitude()
|
|
20
|
-
* @see #setLongitude(double)
|
|
21
|
-
* @see #setLongitude(int, int, double, String)
|
|
22
|
-
*/
|
|
23
|
-
private longitude;
|
|
24
|
-
/**
|
|
25
|
-
* @see #getLocationName()
|
|
26
|
-
* @see #setLocationName(String)
|
|
27
|
-
*/
|
|
28
|
-
private locationName;
|
|
29
|
-
/**
|
|
30
|
-
* @see #getTimeZone()
|
|
31
|
-
* @see #setTimeZone(TimeZone)
|
|
32
|
-
*/
|
|
33
|
-
private timeZoneId;
|
|
34
|
-
/**
|
|
35
|
-
* @see #getElevation()
|
|
36
|
-
* @see #setElevation(double)
|
|
37
|
-
*/
|
|
38
|
-
private elevation;
|
|
39
|
-
/**
|
|
40
|
-
* Method to get the elevation in Meters.
|
|
41
|
-
*
|
|
42
|
-
* @return Returns the elevation in Meters.
|
|
43
|
-
*/
|
|
44
|
-
getElevation(): number;
|
|
45
|
-
/**
|
|
46
|
-
* Method to set the elevation in Meters <b>above </b> sea level.
|
|
47
|
-
*
|
|
48
|
-
* @param elevation
|
|
49
|
-
* The elevation to set in Meters. An IllegalArgumentException will be thrown if the value is a negative.
|
|
50
|
-
*/
|
|
51
|
-
setElevation(elevation: number): void;
|
|
52
|
-
/**
|
|
53
|
-
* GeoLocation constructor with parameters for all required fields.
|
|
54
|
-
*
|
|
55
|
-
* @param name
|
|
56
|
-
* The location name for display use such as "Lakewood, NJ"
|
|
57
|
-
* @param latitude
|
|
58
|
-
* the latitude in a double format such as 40.095965 for Lakewood, NJ.
|
|
59
|
-
* <b>Note: </b> For latitudes south of the equator, a negative value should be used.
|
|
60
|
-
* @param longitude
|
|
61
|
-
* double the longitude in a double format such as -74.222130 for Lakewood, NJ.
|
|
62
|
-
* <b>Note: </b> For longitudes east of the <a href="http://en.wikipedia.org/wiki/Prime_Meridian">Prime
|
|
63
|
-
* Meridian </a> (Greenwich), a negative value should be used.
|
|
64
|
-
* @param elevation
|
|
65
|
-
* the elevation above sea level in Meters. Elevation is not used in most algorithms used for calculating
|
|
66
|
-
* sunrise and set.
|
|
67
|
-
* @param timeZoneId
|
|
68
|
-
* the <code>TimeZone</code> for the location.
|
|
69
|
-
*/
|
|
70
|
-
constructor(name: string | null, latitude: number, longitude: number, elevation: number, timeZoneId?: string);
|
|
71
|
-
constructor(name: string | null, latitude: number, longitude: number, timeZoneId: string);
|
|
72
|
-
constructor();
|
|
73
|
-
setLatitude(latitude: number): void;
|
|
74
|
-
/**
|
|
75
|
-
* @return Returns the latitude.
|
|
76
|
-
*/
|
|
77
|
-
getLatitude(): number;
|
|
78
|
-
setLongitude(longitude: number): void;
|
|
79
|
-
/**
|
|
80
|
-
* @return Returns the longitude.
|
|
81
|
-
*/
|
|
82
|
-
getLongitude(): number;
|
|
83
|
-
/**
|
|
84
|
-
* @return Returns the location name.
|
|
85
|
-
*/
|
|
86
|
-
getLocationName(): string | null;
|
|
87
|
-
/**
|
|
88
|
-
* @param name
|
|
89
|
-
* The setter method for the display name.
|
|
90
|
-
*/
|
|
91
|
-
setLocationName(name: string | null): void;
|
|
92
|
-
/**
|
|
93
|
-
* @return Returns the timeZone.
|
|
94
|
-
*/
|
|
95
|
-
getTimeZone(): string;
|
|
96
|
-
/**
|
|
97
|
-
* Method to set the TimeZone. If this is ever set after the GeoLocation is set in the
|
|
98
|
-
* {@link AstronomicalCalendar}, it is critical that
|
|
99
|
-
* {@link AstronomicalCalendar#getCalendar()}.
|
|
100
|
-
* {@link java.util.Calendar#setTimeZone(TimeZone) setTimeZone(TimeZone)} be called in order for the
|
|
101
|
-
* AstronomicalCalendar to output times in the expected offset. This situation will arise if the
|
|
102
|
-
* AstronomicalCalendar is ever {@link AstronomicalCalendar#clone() cloned}.
|
|
103
|
-
*
|
|
104
|
-
* @param timeZone
|
|
105
|
-
* The timeZone to set.
|
|
106
|
-
*/
|
|
107
|
-
setTimeZone(timeZoneId: string): void;
|
|
108
|
-
}
|
|
109
|
-
/**
|
|
110
|
-
* Implementation of sunrise and sunset methods to calculate astronomical times based on the <a
|
|
111
|
-
* href="http://noaa.gov">NOAA</a> algorithm. This calculator uses the Java algorithm based on the implementation by <a
|
|
112
|
-
* href="http://noaa.gov">NOAA - National Oceanic and Atmospheric Administration</a>'s <a href =
|
|
113
|
-
* "http://www.srrb.noaa.gov/highlights/sunrise/sunrise.html">Surface Radiation Research Branch</a>. NOAA's <a
|
|
114
|
-
* href="http://www.srrb.noaa.gov/highlights/sunrise/solareqns.PDF">implementation</a> is based on equations from <a
|
|
115
|
-
* href="http://www.willbell.com/math/mc1.htm">Astronomical Algorithms</a> by <a
|
|
116
|
-
* href="http://en.wikipedia.org/wiki/Jean_Meeus">Jean Meeus</a>. Added to the algorithm is an adjustment of the zenith
|
|
117
|
-
* to account for elevation. The algorithm can be found in the <a
|
|
118
|
-
* href="http://en.wikipedia.org/wiki/Sunrise_equation">Wikipedia Sunrise Equation</a> article.
|
|
119
|
-
*
|
|
120
|
-
* @author © Eliyahu Hershfeld 2011 - 2019
|
|
121
|
-
*/
|
|
122
|
-
export declare class NOAACalculator {
|
|
123
|
-
/**
|
|
124
|
-
* The zenith of astronomical sunrise and sunset. The sun is 90° from the vertical 0°
|
|
125
|
-
*/
|
|
126
|
-
private static readonly GEOMETRIC_ZENITH;
|
|
127
|
-
/**
|
|
128
|
-
* Default value for Sun's zenith and true rise/set Zenith (used in this class and subclasses) is the angle that the
|
|
129
|
-
* center of the Sun makes to a line perpendicular to the Earth's surface. If the Sun were a point and the Earth
|
|
130
|
-
* were without an atmosphere, true sunset and sunrise would correspond to a 90° zenith. Because the Sun is not
|
|
131
|
-
* a point, and because the atmosphere refracts light, this 90° zenith does not, in fact, correspond to true
|
|
132
|
-
* sunset or sunrise, instead the center of the Sun's disk must lie just below the horizon for the upper edge to be
|
|
133
|
-
* obscured. This means that a zenith of just above 90° must be used. The Sun subtends an angle of 16 minutes of
|
|
134
|
-
* arc (this can be changed via the {@link #setSunRadius(double)} method , and atmospheric refraction accounts for
|
|
135
|
-
* 34 minutes or so (this can be changed via the {@link #setRefraction(double)} method), giving a total of 50
|
|
136
|
-
* arcminutes. The total value for ZENITH is 90+(5/6) or 90.8333333° for true sunrise/sunset.
|
|
137
|
-
*/
|
|
138
|
-
/** Sun's zenith at civil twilight (96°). */
|
|
139
|
-
static readonly CIVIL_ZENITH: number;
|
|
140
|
-
/** Sun's zenith at nautical twilight (102°). */
|
|
141
|
-
static readonly NAUTICAL_ZENITH: number;
|
|
142
|
-
/** Sun's zenith at astronomical twilight (108°). */
|
|
143
|
-
static readonly ASTRONOMICAL_ZENITH: number;
|
|
144
|
-
/**
|
|
145
|
-
* The Java Calendar encapsulated by this class to track the current date used by the class
|
|
146
|
-
*/
|
|
147
|
-
private date;
|
|
148
|
-
/**
|
|
149
|
-
* the {@link GeoLocation} used for calculations.
|
|
150
|
-
*/
|
|
151
|
-
private geoLocation;
|
|
152
|
-
/**
|
|
153
|
-
* The getSunrise method Returns a <code>Date</code> representing the
|
|
154
|
-
* {@link AstronomicalCalculator#getElevationAdjustment(double) elevation adjusted} sunrise time. The zenith used
|
|
155
|
-
* for the calculation uses {@link #GEOMETRIC_ZENITH geometric zenith} of 90° plus
|
|
156
|
-
* {@link AstronomicalCalculator#getElevationAdjustment(double)}. This is adjusted by the
|
|
157
|
-
* {@link AstronomicalCalculator} to add approximately 50/60 of a degree to account for 34 archminutes of refraction
|
|
158
|
-
* and 16 archminutes for the sun's radius for a total of {@link AstronomicalCalculator#adjustZenith 90.83333°}.
|
|
159
|
-
* See documentation for the specific implementation of the {@link AstronomicalCalculator} that you are using.
|
|
160
|
-
*
|
|
161
|
-
* @return the <code>Date</code> representing the exact sunrise time. If the calculation can't be computed such as
|
|
162
|
-
* in the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
|
|
163
|
-
* does not set, a null will be returned. See detailed explanation on top of the page.
|
|
164
|
-
* @see AstronomicalCalculator#adjustZenith
|
|
165
|
-
* @see #getSeaLevelSunrise()
|
|
166
|
-
* @see AstronomicalCalendar#getUTCSunrise
|
|
167
|
-
*/
|
|
168
|
-
getSunrise(): Temporal.ZonedDateTime | null;
|
|
169
|
-
/**
|
|
170
|
-
* A method that returns the sunrise without {@link AstronomicalCalculator#getElevationAdjustment(double) elevation
|
|
171
|
-
* adjustment}. Non-sunrise and sunset calculations such as dawn and dusk, depend on the amount of visible light,
|
|
172
|
-
* something that is not affected by elevation. This method returns sunrise calculated at sea level. This forms the
|
|
173
|
-
* base for dawn calculations that are calculated as a dip below the horizon before sunrise.
|
|
174
|
-
*
|
|
175
|
-
* @return the <code>Date</code> representing the exact sea-level sunrise time. If the calculation can't be computed
|
|
176
|
-
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
|
|
177
|
-
* where it does not set, a null will be returned. See detailed explanation on top of the page.
|
|
178
|
-
* @see AstronomicalCalendar#getSunrise
|
|
179
|
-
* @see AstronomicalCalendar#getUTCSeaLevelSunrise
|
|
180
|
-
* @see #getSeaLevelSunset()
|
|
181
|
-
*/
|
|
182
|
-
getSeaLevelSunrise(): Temporal.ZonedDateTime | null;
|
|
183
|
-
/**
|
|
184
|
-
* A method that returns the beginning of civil twilight (dawn) using a zenith of {@link #CIVIL_ZENITH 96°}.
|
|
185
|
-
*
|
|
186
|
-
* @return The <code>Date</code> of the beginning of civil twilight using a zenith of 96°. If the calculation
|
|
187
|
-
* can't be computed, null will be returned. See detailed explanation on top of the page.
|
|
188
|
-
* @see #CIVIL_ZENITH
|
|
189
|
-
*/
|
|
190
|
-
getBeginCivilTwilight(): Temporal.ZonedDateTime | null;
|
|
191
|
-
/**
|
|
192
|
-
* A method that returns the beginning of nautical twilight using a zenith of {@link #NAUTICAL_ZENITH 102°}.
|
|
193
|
-
*
|
|
194
|
-
* @return The <code>Date</code> of the beginning of nautical twilight using a zenith of 102°. If the
|
|
195
|
-
* calculation can't be computed null will be returned. See detailed explanation on top of the page.
|
|
196
|
-
* @see #NAUTICAL_ZENITH
|
|
197
|
-
*/
|
|
198
|
-
getBeginNauticalTwilight(): Temporal.ZonedDateTime | null;
|
|
199
|
-
/**
|
|
200
|
-
* A method that returns the beginning of astronomical twilight using a zenith of {@link #ASTRONOMICAL_ZENITH
|
|
201
|
-
* 108°}.
|
|
202
|
-
*
|
|
203
|
-
* @return The <code>Date</code> of the beginning of astronomical twilight using a zenith of 108°. If the
|
|
204
|
-
* calculation can't be computed, null will be returned. See detailed explanation on top of the page.
|
|
205
|
-
* @see #ASTRONOMICAL_ZENITH
|
|
206
|
-
*/
|
|
207
|
-
getBeginAstronomicalTwilight(): Temporal.ZonedDateTime | null;
|
|
208
|
-
/**
|
|
209
|
-
* The getSunset method Returns a <code>Date</code> representing the
|
|
210
|
-
* {@link AstronomicalCalculator#getElevationAdjustment(double) elevation adjusted} sunset time. The zenith used for
|
|
211
|
-
* the calculation uses {@link #GEOMETRIC_ZENITH geometric zenith} of 90° plus
|
|
212
|
-
* {@link AstronomicalCalculator#getElevationAdjustment(double)}. This is adjusted by the
|
|
213
|
-
* {@link AstronomicalCalculator} to add approximately 50/60 of a degree to account for 34 archminutes of refraction
|
|
214
|
-
* and 16 archminutes for the sun's radius for a total of {@link AstronomicalCalculator#adjustZenith 90.83333°}.
|
|
215
|
-
* See documentation for the specific implementation of the {@link AstronomicalCalculator} that you are using. Note:
|
|
216
|
-
* In certain cases the calculates sunset will occur before sunrise. This will typically happen when a timezone
|
|
217
|
-
* other than the local timezone is used (calculating Los Angeles sunset using a GMT timezone for example). In this
|
|
218
|
-
* case the sunset date will be incremented to the following date.
|
|
219
|
-
*
|
|
220
|
-
* @return the <code>Date</code> representing the exact sunset time. If the calculation can't be computed such as in
|
|
221
|
-
* the Arctic Circle where there is at least one day a year where the sun does not rise, and one where it
|
|
222
|
-
* does not set, a null will be returned. See detailed explanation on top of the page.
|
|
223
|
-
* @see AstronomicalCalculator#adjustZenith
|
|
224
|
-
* @see #getSeaLevelSunset()
|
|
225
|
-
* @see AstronomicalCalendar#getUTCSunset
|
|
226
|
-
*/
|
|
227
|
-
getSunset(): Temporal.ZonedDateTime | null;
|
|
228
|
-
/**
|
|
229
|
-
* A method that returns the sunset without {@link AstronomicalCalculator#getElevationAdjustment(double) elevation
|
|
230
|
-
* adjustment}. Non-sunrise and sunset calculations such as dawn and dusk, depend on the amount of visible light,
|
|
231
|
-
* something that is not affected by elevation. This method returns sunset calculated at sea level. This forms the
|
|
232
|
-
* base for dusk calculations that are calculated as a dip below the horizon after sunset.
|
|
233
|
-
*
|
|
234
|
-
* @return the <code>Date</code> representing the exact sea-level sunset time. If the calculation can't be computed
|
|
235
|
-
* such as in the Arctic Circle where there is at least one day a year where the sun does not rise, and one
|
|
236
|
-
* where it does not set, a null will be returned. See detailed explanation on top of the page.
|
|
237
|
-
* @see AstronomicalCalendar#getSunset
|
|
238
|
-
* @see AstronomicalCalendar#getUTCSeaLevelSunset 2see {@link #getSunset()}
|
|
239
|
-
*/
|
|
240
|
-
getSeaLevelSunset(): Temporal.ZonedDateTime | null;
|
|
241
|
-
/**
|
|
242
|
-
* A method that returns the end of civil twilight using a zenith of {@link #CIVIL_ZENITH 96°}.
|
|
243
|
-
*
|
|
244
|
-
* @return The <code>Date</code> of the end of civil twilight using a zenith of {@link #CIVIL_ZENITH 96°}. If
|
|
245
|
-
* the calculation can't be computed, null will be returned. See detailed explanation on top of the page.
|
|
246
|
-
* @see #CIVIL_ZENITH
|
|
247
|
-
*/
|
|
248
|
-
getEndCivilTwilight(): Temporal.ZonedDateTime | null;
|
|
249
|
-
/**
|
|
250
|
-
* A method that returns the end of nautical twilight using a zenith of {@link #NAUTICAL_ZENITH 102°}.
|
|
251
|
-
*
|
|
252
|
-
* @return The <code>Date</code> of the end of nautical twilight using a zenith of {@link #NAUTICAL_ZENITH 102°}
|
|
253
|
-
* . If the calculation can't be computed, null will be returned. See detailed explanation on top of the
|
|
254
|
-
* page.
|
|
255
|
-
* @see #NAUTICAL_ZENITH
|
|
256
|
-
*/
|
|
257
|
-
getEndNauticalTwilight(): Temporal.ZonedDateTime | null;
|
|
258
|
-
/**
|
|
259
|
-
* A method that returns the end of astronomical twilight using a zenith of {@link #ASTRONOMICAL_ZENITH 108°}.
|
|
260
|
-
*
|
|
261
|
-
* @return the <code>Date</code> of the end of astronomical twilight using a zenith of {@link #ASTRONOMICAL_ZENITH
|
|
262
|
-
* 108°}. If the calculation can't be computed, null will be returned. See detailed explanation on top
|
|
263
|
-
* of the page.
|
|
264
|
-
* @see #ASTRONOMICAL_ZENITH
|
|
265
|
-
*/
|
|
266
|
-
getEndAstronomicalTwilight(): Temporal.ZonedDateTime | null;
|
|
267
|
-
/**
|
|
268
|
-
* A utility method that returns a date offset by the offset time passed in. Please note that the level of light
|
|
269
|
-
* during twilight is not affected by elevation, so if this is being used to calculate an offset before sunrise or
|
|
270
|
-
* after sunset with the intent of getting a rough "level of light" calculation, the sunrise or sunset time passed
|
|
271
|
-
* to this method should be sea level sunrise and sunset.
|
|
272
|
-
*
|
|
273
|
-
* @param time
|
|
274
|
-
* the start time
|
|
275
|
-
* @param offset
|
|
276
|
-
* the offset in milliseconds to add to the time.
|
|
277
|
-
* @return the {@link java.util.Date} with the offset in milliseconds added to it
|
|
278
|
-
*/
|
|
279
|
-
static getTimeOffset(time: Temporal.ZonedDateTime | null, offset: number): Temporal.ZonedDateTime | null;
|
|
280
|
-
/**
|
|
281
|
-
* A utility method that returns the time of an offset by degrees below or above the horizon of
|
|
282
|
-
* {@link #getSunrise() sunrise}. Note that the degree offset is from the vertical, so for a calculation of 14°
|
|
283
|
-
* before sunrise, an offset of 14 + {@link #GEOMETRIC_ZENITH} = 104 would have to be passed as a parameter.
|
|
284
|
-
*
|
|
285
|
-
* @param offsetZenith
|
|
286
|
-
* the degrees before {@link #getSunrise()} to use in the calculation. For time after sunrise use
|
|
287
|
-
* negative numbers. Note that the degree offset is from the vertical, so for a calculation of 14°
|
|
288
|
-
* before sunrise, an offset of 14 + {@link #GEOMETRIC_ZENITH} = 104 would have to be passed as a
|
|
289
|
-
* parameter.
|
|
290
|
-
* @return The {@link java.util.Date} of the offset after (or before) {@link #getSunrise()}. If the calculation
|
|
291
|
-
* can't be computed such as in the Arctic Circle where there is at least one day a year where the sun does
|
|
292
|
-
* not rise, and one where it does not set, a null will be returned. See detailed explanation on top of the
|
|
293
|
-
* page.
|
|
294
|
-
*/
|
|
295
|
-
getSunriseOffsetByDegrees(offsetZenith: number): Temporal.ZonedDateTime | null;
|
|
296
|
-
/**
|
|
297
|
-
* A utility method that returns the time of an offset by degrees below or above the horizon of {@link #getSunset()
|
|
298
|
-
* sunset}. Note that the degree offset is from the vertical, so for a calculation of 14° after sunset, an
|
|
299
|
-
* offset of 14 + {@link #GEOMETRIC_ZENITH} = 104 would have to be passed as a parameter.
|
|
300
|
-
*
|
|
301
|
-
* @param offsetZenith
|
|
302
|
-
* the degrees after {@link #getSunset()} to use in the calculation. For time before sunset use negative
|
|
303
|
-
* numbers. Note that the degree offset is from the vertical, so for a calculation of 14° after
|
|
304
|
-
* sunset, an offset of 14 + {@link #GEOMETRIC_ZENITH} = 104 would have to be passed as a parameter.
|
|
305
|
-
* @return The {@link java.util.Date}of the offset after (or before) {@link #getSunset()}. If the calculation can't
|
|
306
|
-
* be computed such as in the Arctic Circle where there is at least one day a year where the sun does not
|
|
307
|
-
* rise, and one where it does not set, a null will be returned. See detailed explanation on top of the
|
|
308
|
-
* page.
|
|
309
|
-
*/
|
|
310
|
-
getSunsetOffsetByDegrees(offsetZenith: number): Temporal.ZonedDateTime | null;
|
|
311
|
-
/**
|
|
312
|
-
* A constructor that takes in <a href="http://en.wikipedia.org/wiki/Geolocation">geolocation</a> information as a
|
|
313
|
-
* parameter. The default {@link AstronomicalCalculator#getDefault() AstronomicalCalculator} used for solar
|
|
314
|
-
* calculations is the the {@link NOAACalculator}.
|
|
315
|
-
*
|
|
316
|
-
* @param geoLocation
|
|
317
|
-
* The location information used for calculating astronomical sun times.
|
|
318
|
-
*
|
|
319
|
-
* @see #setAstronomicalCalculator(AstronomicalCalculator) for changing the calculator class.
|
|
320
|
-
*/
|
|
321
|
-
constructor(geoLocation: GeoLocation, date: Temporal.PlainDate);
|
|
322
|
-
/**
|
|
323
|
-
* A method that returns the sunrise in UTC time without correction for time zone offset from GMT and without using
|
|
324
|
-
* daylight savings time.
|
|
325
|
-
*
|
|
326
|
-
* @param zenith
|
|
327
|
-
* the degrees below the horizon. For time after sunrise use negative numbers.
|
|
328
|
-
* @return The time in the format: 18.75 for 18:45:00 UTC/GMT. If the calculation can't be computed such as in the
|
|
329
|
-
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
|
|
330
|
-
* not set, {@link Double#NaN} will be returned. See detailed explanation on top of the page.
|
|
331
|
-
*/
|
|
332
|
-
getUTCSunrise0(zenith: number): number;
|
|
333
|
-
/**
|
|
334
|
-
* A method that returns the sunrise in UTC time without correction for time zone offset from GMT and without using
|
|
335
|
-
* daylight savings time. Non-sunrise and sunset calculations such as dawn and dusk, depend on the amount of visible
|
|
336
|
-
* light, something that is not affected by elevation. This method returns UTC sunrise calculated at sea level. This
|
|
337
|
-
* forms the base for dawn calculations that are calculated as a dip below the horizon before sunrise.
|
|
338
|
-
*
|
|
339
|
-
* @param zenith
|
|
340
|
-
* the degrees below the horizon. For time after sunrise use negative numbers.
|
|
341
|
-
* @return The time in the format: 18.75 for 18:45:00 UTC/GMT. If the calculation can't be computed such as in the
|
|
342
|
-
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
|
|
343
|
-
* not set, {@link Double#NaN} will be returned. See detailed explanation on top of the page.
|
|
344
|
-
* @see AstronomicalCalendar#getUTCSunrise
|
|
345
|
-
* @see AstronomicalCalendar#getUTCSeaLevelSunset
|
|
346
|
-
*/
|
|
347
|
-
getUTCSeaLevelSunrise(zenith: number): number;
|
|
348
|
-
/**
|
|
349
|
-
* A method that returns the sunset in UTC time without correction for time zone offset from GMT and without using
|
|
350
|
-
* daylight savings time.
|
|
351
|
-
*
|
|
352
|
-
* @param zenith
|
|
353
|
-
* the degrees below the horizon. For time after sunset use negative numbers.
|
|
354
|
-
* @return The time in the format: 18.75 for 18:45:00 UTC/GMT. If the calculation can't be computed such as in the
|
|
355
|
-
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
|
|
356
|
-
* not set, {@link Double#NaN} will be returned. See detailed explanation on top of the page.
|
|
357
|
-
* @see AstronomicalCalendar#getUTCSeaLevelSunset
|
|
358
|
-
*/
|
|
359
|
-
getUTCSunset0(zenith: number): number;
|
|
360
|
-
/**
|
|
361
|
-
* A method that returns the sunset in UTC time without correction for elevation, time zone offset from GMT and
|
|
362
|
-
* without using daylight savings time. Non-sunrise and sunset calculations such as dawn and dusk, depend on the
|
|
363
|
-
* amount of visible light, something that is not affected by elevation. This method returns UTC sunset calculated
|
|
364
|
-
* at sea level. This forms the base for dusk calculations that are calculated as a dip below the horizon after
|
|
365
|
-
* sunset.
|
|
366
|
-
*
|
|
367
|
-
* @param zenith
|
|
368
|
-
* the degrees below the horizon. For time before sunset use negative numbers.
|
|
369
|
-
* @return The time in the format: 18.75 for 18:45:00 UTC/GMT. If the calculation can't be computed such as in the
|
|
370
|
-
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
|
|
371
|
-
* not set, {@link Double#NaN} will be returned. See detailed explanation on top of the page.
|
|
372
|
-
* @see AstronomicalCalendar#getUTCSunset
|
|
373
|
-
* @see AstronomicalCalendar#getUTCSeaLevelSunrise
|
|
374
|
-
*/
|
|
375
|
-
getUTCSeaLevelSunset(zenith: number): number;
|
|
376
|
-
/**
|
|
377
|
-
* Adjusts the <code>Calendar</code> to deal with edge cases where the location crosses the antimeridian.
|
|
378
|
-
*
|
|
379
|
-
* @see GeoLocation#getAntimeridianAdjustment()
|
|
380
|
-
* @return the adjusted Calendar
|
|
381
|
-
*/
|
|
382
|
-
private getAdjustedDate;
|
|
383
|
-
/**
|
|
384
|
-
* Method to return the adjustment to the zenith required to account for the elevation. Since a person at a higher
|
|
385
|
-
* elevation can see farther below the horizon, the calculation for sunrise / sunset is calculated below the horizon
|
|
386
|
-
* used at sea level. This is only used for sunrise and sunset and not times before or after it such as
|
|
387
|
-
* {@link AstronomicalCalendar#getBeginNauticalTwilight() nautical twilight} since those
|
|
388
|
-
* calculations are based on the level of available light at the given dip below the horizon, something that is not
|
|
389
|
-
* affected by elevation, the adjustment should only made if the zenith == 90° {@link #adjustZenith adjusted}
|
|
390
|
-
* for refraction and solar radius. The algorithm used is
|
|
391
|
-
*
|
|
392
|
-
* <pre>
|
|
393
|
-
* elevationAdjustment = Math.toDegrees(Math.acos(earthRadiusInMeters / (earthRadiusInMeters + elevationMeters)));
|
|
394
|
-
* </pre>
|
|
395
|
-
*
|
|
396
|
-
* The source of this algorithm is <a href="http://www.calendarists.com">Calendrical Calculations</a> by Edward M.
|
|
397
|
-
* Reingold and Nachum Dershowitz. An alternate algorithm that produces an almost identical (but not accurate)
|
|
398
|
-
* result found in Ma'aglay Tzedek by Moishe Kosower and other sources is:
|
|
399
|
-
*
|
|
400
|
-
* <pre>
|
|
401
|
-
* elevationAdjustment = 0.0347 * Math.sqrt(elevationMeters);
|
|
402
|
-
* </pre>
|
|
403
|
-
*
|
|
404
|
-
* @param elevation
|
|
405
|
-
* elevation in Meters.
|
|
406
|
-
* @return the adjusted zenith
|
|
407
|
-
*/
|
|
408
|
-
getElevationAdjustment(elevation: number): number;
|
|
409
|
-
/**
|
|
410
|
-
* Adjusts the zenith of astronomical sunrise and sunset to account for solar refraction, solar radius and
|
|
411
|
-
* elevation. The value for Sun's zenith and true rise/set Zenith (used in this class and subclasses) is the angle
|
|
412
|
-
* that the center of the Sun makes to a line perpendicular to the Earth's surface. If the Sun were a point and the
|
|
413
|
-
* Earth were without an atmosphere, true sunset and sunrise would correspond to a 90° zenith. Because the Sun
|
|
414
|
-
* is not a point, and because the atmosphere refracts light, this 90° zenith does not, in fact, correspond to
|
|
415
|
-
* true sunset or sunrise, instead the centre of the Sun's disk must lie just below the horizon for the upper edge
|
|
416
|
-
* to be obscured. This means that a zenith of just above 90° must be used. The Sun subtends an angle of 16
|
|
417
|
-
* minutes of arc (this can be changed via the {@link #setSolarRadius(double)} method , and atmospheric refraction
|
|
418
|
-
* accounts for 34 minutes or so (this can be changed via the {@link #setRefraction(double)} method), giving a total
|
|
419
|
-
* of 50 arcminutes. The total value for ZENITH is 90+(5/6) or 90.8333333° for true sunrise/sunset. Since a
|
|
420
|
-
* person at an elevation can see blow the horizon of a person at sea level, this will also adjust the zenith to
|
|
421
|
-
* account for elevation if available. Note that this will only adjust the value if the zenith is exactly 90 degrees.
|
|
422
|
-
* For values below and above this no correction is done. As an example, astronomical twilight is when the sun is
|
|
423
|
-
* 18° below the horizon or {@link AstronomicalCalendar#ASTRONOMICAL_ZENITH 108°
|
|
424
|
-
* below the zenith}. This is traditionally calculated with none of the above mentioned adjustments. The same goes
|
|
425
|
-
* for various <em>tzais</em> and <em>alos</em> times such as the
|
|
426
|
-
* {@link ZmanimCalendar#ZENITH_16_POINT_1 16.1°} dip used in
|
|
427
|
-
* {@link ComplexZmanimCalendar#getAlos16Point1Degrees()}.
|
|
428
|
-
*
|
|
429
|
-
* @param zenith
|
|
430
|
-
* the azimuth below the vertical zenith of 90°. For sunset typically the {@link #adjustZenith
|
|
431
|
-
* zenith} used for the calculation uses geometric zenith of 90° and {@link #adjustZenith adjusts}
|
|
432
|
-
* this slightly to account for solar refraction and the sun's radius. Another example would be
|
|
433
|
-
* {@link AstronomicalCalendar#getEndNauticalTwilight()} that passes
|
|
434
|
-
* {@link AstronomicalCalendar#NAUTICAL_ZENITH} to this method.
|
|
435
|
-
* @param elevation
|
|
436
|
-
* elevation in Meters.
|
|
437
|
-
* @return The zenith adjusted to include the {@link #getSolarRadius sun's radius}, {@link #getRefraction
|
|
438
|
-
* refraction} and {@link #getElevationAdjustment elevation} adjustment. This will only be adjusted for
|
|
439
|
-
* sunrise and sunset (if the zenith == 90°)
|
|
440
|
-
* @see #getElevationAdjustment(double)
|
|
441
|
-
*/
|
|
442
|
-
adjustZenith(zenith: number, elevation: number): number;
|
|
443
|
-
/**
|
|
444
|
-
* The <a href="http://en.wikipedia.org/wiki/Julian_day">Julian day</a> of January 1, 2000
|
|
445
|
-
*/
|
|
446
|
-
private static readonly JULIAN_DAY_JAN_1_2000;
|
|
447
|
-
/**
|
|
448
|
-
* Julian days per century
|
|
449
|
-
*/
|
|
450
|
-
private static readonly JULIAN_DAYS_PER_CENTURY;
|
|
451
|
-
/**
|
|
452
|
-
* @see AstronomicalCalculator#getUTCSunrise(Calendar, GeoLocation, double, boolean)
|
|
453
|
-
*/
|
|
454
|
-
getUTCSunrise(date: Temporal.PlainDate, geoLocation: GeoLocation, zenith: number, adjustForElevation: boolean): number;
|
|
455
|
-
/**
|
|
456
|
-
* @see AstronomicalCalculator#getUTCSunset(Calendar, GeoLocation, double, boolean)
|
|
457
|
-
*/
|
|
458
|
-
getUTCSunset(date: Temporal.PlainDate, geoLocation: GeoLocation, zenith: number, adjustForElevation: boolean): number;
|
|
459
|
-
/**
|
|
460
|
-
* A utility method that will allow the calculation of a temporal (solar) hour based on the sunrise and sunset
|
|
461
|
-
* passed as parameters to this method. An example of the use of this method would be the calculation of a
|
|
462
|
-
* non-elevation adjusted temporal hour by passing in {@link #getSeaLevelSunrise() sea level sunrise} and
|
|
463
|
-
* {@link #getSeaLevelSunset() sea level sunset} as parameters.
|
|
464
|
-
*
|
|
465
|
-
* @param startOfday
|
|
466
|
-
* The start of the day.
|
|
467
|
-
* @param endOfDay
|
|
468
|
-
* The end of the day.
|
|
469
|
-
*
|
|
470
|
-
* @return the <code>long</code> millisecond length of the temporal hour. If the calculation can't be computed a
|
|
471
|
-
* {@link Long#MIN_VALUE} will be returned. See detailed explanation on top of the page.
|
|
472
|
-
*
|
|
473
|
-
* @see #getTemporalHour()
|
|
474
|
-
*/
|
|
475
|
-
getTemporalHour(startOfday?: Temporal.ZonedDateTime | null, endOfDay?: Temporal.ZonedDateTime | null): number;
|
|
476
|
-
/**
|
|
477
|
-
* A method that returns sundial or solar noon. It occurs when the Sun is <a href
|
|
478
|
-
* ="http://en.wikipedia.org/wiki/Transit_%28astronomy%29">transiting</a> the <a
|
|
479
|
-
* href="http://en.wikipedia.org/wiki/Meridian_%28astronomy%29">celestial meridian</a>. In this class it is
|
|
480
|
-
* calculated as halfway between the sunrise and sunset passed to this method. This time can be slightly off the
|
|
481
|
-
* real transit time due to changes in declination (the lengthening or shortening day).
|
|
482
|
-
*
|
|
483
|
-
* @param startOfDay
|
|
484
|
-
* the start of day for calculating the sun's transit. This can be sea level sunrise, visual sunrise (or
|
|
485
|
-
* any arbitrary start of day) passed to this method.
|
|
486
|
-
* @param endOfDay
|
|
487
|
-
* the end of day for calculating the sun's transit. This can be sea level sunset, visual sunset (or any
|
|
488
|
-
* arbitrary end of day) passed to this method.
|
|
489
|
-
*
|
|
490
|
-
* @return the <code>Date</code> representing Sun's transit. If the calculation can't be computed such as in the
|
|
491
|
-
* Arctic Circle where there is at least one day a year where the sun does not rise, and one where it does
|
|
492
|
-
* not set, null will be returned. See detailed explanation on top of the page.
|
|
493
|
-
*/
|
|
494
|
-
getSunTransit(startOfDay?: Temporal.ZonedDateTime | null, endOfDay?: Temporal.ZonedDateTime | null): Temporal.ZonedDateTime | null;
|
|
495
|
-
/**
|
|
496
|
-
* A method that returns a <code>Date</code> from the time passed in as a parameter.
|
|
497
|
-
*
|
|
498
|
-
* @param time
|
|
499
|
-
* The time to be set as the time for the <code>Date</code>. The time expected is in the format: 18.75
|
|
500
|
-
* for 6:45:00 PM.
|
|
501
|
-
* @param isSunrise true if the time is sunrise, and false if it is sunset
|
|
502
|
-
* @return The Date.
|
|
503
|
-
*/
|
|
504
|
-
protected getDateFromTime(time: number, isSunrise: boolean): Temporal.ZonedDateTime | null;
|
|
505
|
-
/**
|
|
506
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Julian_day">Julian day</a> from a Java Calendar
|
|
507
|
-
*
|
|
508
|
-
* @param calendar
|
|
509
|
-
* The Java Calendar
|
|
510
|
-
* @return the Julian day corresponding to the date Note: Number is returned for start of day. Fractional days
|
|
511
|
-
* should be added later.
|
|
512
|
-
*/
|
|
513
|
-
private static getJulianDay;
|
|
514
|
-
/**
|
|
515
|
-
* Convert <a href="http://en.wikipedia.org/wiki/Julian_day">Julian day</a> to centuries since J2000.0.
|
|
516
|
-
*
|
|
517
|
-
* @param julianDay
|
|
518
|
-
* the Julian Day to convert
|
|
519
|
-
* @return the centuries since 2000 Julian corresponding to the Julian Day
|
|
520
|
-
*/
|
|
521
|
-
private static getJulianCenturiesFromJulianDay;
|
|
522
|
-
/**
|
|
523
|
-
* Convert centuries since J2000.0 to <a href="http://en.wikipedia.org/wiki/Julian_day">Julian day</a>.
|
|
524
|
-
*
|
|
525
|
-
* @param julianCenturies
|
|
526
|
-
* the number of Julian centuries since J2000.0
|
|
527
|
-
* @return the Julian Day corresponding to the Julian centuries passed in
|
|
528
|
-
*/
|
|
529
|
-
private static getJulianDayFromJulianCenturies;
|
|
530
|
-
/**
|
|
531
|
-
* Returns the Geometric <a href="http://en.wikipedia.org/wiki/Mean_longitude">Mean Longitude</a> of the Sun.
|
|
532
|
-
*
|
|
533
|
-
* @param julianCenturies
|
|
534
|
-
* the number of Julian centuries since J2000.0
|
|
535
|
-
* @return the Geometric Mean Longitude of the Sun in degrees
|
|
536
|
-
*/
|
|
537
|
-
private static getSunGeometricMeanLongitude;
|
|
538
|
-
/**
|
|
539
|
-
* Returns the Geometric <a href="http://en.wikipedia.org/wiki/Mean_anomaly">Mean Anomaly</a> of the Sun.
|
|
540
|
-
*
|
|
541
|
-
* @param julianCenturies
|
|
542
|
-
* the number of Julian centuries since J2000.0
|
|
543
|
-
* @return the Geometric Mean Anomaly of the Sun in degrees
|
|
544
|
-
*/
|
|
545
|
-
private static getSunGeometricMeanAnomaly;
|
|
546
|
-
/**
|
|
547
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Eccentricity_%28orbit%29">eccentricity of earth's orbit</a>.
|
|
548
|
-
*
|
|
549
|
-
* @param julianCenturies
|
|
550
|
-
* the number of Julian centuries since J2000.0
|
|
551
|
-
* @return the unitless eccentricity
|
|
552
|
-
*/
|
|
553
|
-
private static getEarthOrbitEccentricity;
|
|
554
|
-
/**
|
|
555
|
-
* Returns the <a href="http://en.wikipedia.org/wiki/Equation_of_the_center">equation of center</a> for the sun.
|
|
556
|
-
*
|
|
557
|
-
* @param julianCenturies
|
|
558
|
-
* the number of Julian centuries since J2000.0
|
|
559
|
-
* @return the equation of center for the sun in degrees
|
|
560
|
-
*/
|
|
561
|
-
private static getSunEquationOfCenter;
|
|
562
|
-
/**
|
|
563
|
-
* Return the true longitude of the sun
|
|
564
|
-
*
|
|
565
|
-
* @param julianCenturies
|
|
566
|
-
* the number of Julian centuries since J2000.0
|
|
567
|
-
* @return the sun's true longitude in degrees
|
|
568
|
-
*/
|
|
569
|
-
private static getSunTrueLongitude;
|
|
570
|
-
/**
|
|
571
|
-
* Return the apparent longitude of the sun
|
|
572
|
-
*
|
|
573
|
-
* @param julianCenturies
|
|
574
|
-
* the number of Julian centuries since J2000.0
|
|
575
|
-
* @return sun's apparent longitude in degrees
|
|
576
|
-
*/
|
|
577
|
-
private static getSunApparentLongitude;
|
|
578
|
-
/**
|
|
579
|
-
* Returns the mean <a href="http://en.wikipedia.org/wiki/Axial_tilt">obliquity of the ecliptic</a> (Axial tilt).
|
|
580
|
-
*
|
|
581
|
-
* @param julianCenturies
|
|
582
|
-
* the number of Julian centuries since J2000.0
|
|
583
|
-
* @return the mean obliquity in degrees
|
|
584
|
-
*/
|
|
585
|
-
private static getMeanObliquityOfEcliptic;
|
|
586
|
-
/**
|
|
587
|
-
* Returns the corrected <a href="http://en.wikipedia.org/wiki/Axial_tilt">obliquity of the ecliptic</a> (Axial
|
|
588
|
-
* tilt).
|
|
589
|
-
*
|
|
590
|
-
* @param julianCenturies
|
|
591
|
-
* the number of Julian centuries since J2000.0
|
|
592
|
-
* @return the corrected obliquity in degrees
|
|
593
|
-
*/
|
|
594
|
-
private static getObliquityCorrection;
|
|
595
|
-
/**
|
|
596
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Declination">declination</a> of the sun.
|
|
597
|
-
*
|
|
598
|
-
* @param julianCenturies
|
|
599
|
-
* the number of Julian centuries since J2000.0
|
|
600
|
-
* @return
|
|
601
|
-
* the sun's declination in degrees
|
|
602
|
-
*/
|
|
603
|
-
private static getSunDeclination;
|
|
604
|
-
/**
|
|
605
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Equation_of_time">Equation of Time</a> - the difference between
|
|
606
|
-
* true solar time and mean solar time
|
|
607
|
-
*
|
|
608
|
-
* @param julianCenturies
|
|
609
|
-
* the number of Julian centuries since J2000.0
|
|
610
|
-
* @return equation of time in minutes of time
|
|
611
|
-
*/
|
|
612
|
-
private static getEquationOfTime;
|
|
613
|
-
/**
|
|
614
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Hour_angle">hour angle</a> of the sun at sunrise for the
|
|
615
|
-
* latitude.
|
|
616
|
-
*
|
|
617
|
-
* @param lat
|
|
618
|
-
* , the latitude of observer in degrees
|
|
619
|
-
* @param solarDec
|
|
620
|
-
* the declination angle of sun in degrees
|
|
621
|
-
* @param zenith
|
|
622
|
-
* the zenith
|
|
623
|
-
* @return hour angle of sunrise in radians
|
|
624
|
-
*/
|
|
625
|
-
private static getSunHourAngleAtSunrise;
|
|
626
|
-
/**
|
|
627
|
-
* Returns the <a href="http://en.wikipedia.org/wiki/Hour_angle">hour angle</a> of the sun at sunset for the
|
|
628
|
-
* latitude. TODO: use - {@link #getSunHourAngleAtSunrise(double, double, double)} implementation to avoid
|
|
629
|
-
* duplication of code.
|
|
630
|
-
*
|
|
631
|
-
* @param lat
|
|
632
|
-
* the latitude of observer in degrees
|
|
633
|
-
* @param solarDec
|
|
634
|
-
* the declination angle of sun in degrees
|
|
635
|
-
* @param zenith
|
|
636
|
-
* the zenith
|
|
637
|
-
* @return the hour angle of sunset in radians
|
|
638
|
-
*/
|
|
639
|
-
private static getSunHourAngleAtSunset;
|
|
640
|
-
/**
|
|
641
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Celestial_coordinate_system">Solar Elevation</a> for the
|
|
642
|
-
* horizontal coordinate system at the given location at the given time. Can be negative if the sun is below the
|
|
643
|
-
* horizon. Not corrected for altitude.
|
|
644
|
-
*
|
|
645
|
-
* @param cal
|
|
646
|
-
* time of calculation
|
|
647
|
-
* @param lat
|
|
648
|
-
* latitude of location for calculation
|
|
649
|
-
* @param lon
|
|
650
|
-
* longitude of location for calculation
|
|
651
|
-
* @return solar elevation in degrees - horizon is 0 degrees, civil twilight is -6 degrees
|
|
652
|
-
*/
|
|
653
|
-
static getSolarElevation(date: Temporal.ZonedDateTime, lat: number, lon: number): number;
|
|
654
|
-
/**
|
|
655
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Celestial_coordinate_system">Solar Azimuth</a> for the
|
|
656
|
-
* horizontal coordinate system at the given location at the given time. Not corrected for altitude. True south is 0
|
|
657
|
-
* degrees.
|
|
658
|
-
*
|
|
659
|
-
* @param cal
|
|
660
|
-
* time of calculation
|
|
661
|
-
* @param latitude
|
|
662
|
-
* latitude of location for calculation
|
|
663
|
-
* @param lon
|
|
664
|
-
* longitude of location for calculation
|
|
665
|
-
* @return FIXME
|
|
666
|
-
*/
|
|
667
|
-
static getSolarAzimuth(date: Temporal.ZonedDateTime, latitude: number, lon: number): number;
|
|
668
|
-
/**
|
|
669
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Universal_Coordinated_Time">Universal Coordinated Time</a> (UTC)
|
|
670
|
-
* of sunrise for the given day at the given location on earth
|
|
671
|
-
*
|
|
672
|
-
* @param julianDay
|
|
673
|
-
* the Julian day
|
|
674
|
-
* @param latitude
|
|
675
|
-
* the latitude of observer in degrees
|
|
676
|
-
* @param longitude
|
|
677
|
-
* the longitude of observer in degrees
|
|
678
|
-
* @param zenith
|
|
679
|
-
* the zenith
|
|
680
|
-
* @return the time in minutes from zero UTC
|
|
681
|
-
*/
|
|
682
|
-
private static getSunriseUTC;
|
|
683
|
-
/**
|
|
684
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Universal_Coordinated_Time">Universal Coordinated Time</a> (UTC)
|
|
685
|
-
* of <a href="http://en.wikipedia.org/wiki/Noon#Solar_noon">solar noon</a> for the given day at the given location
|
|
686
|
-
* on earth.
|
|
687
|
-
*
|
|
688
|
-
* @param julianCenturies
|
|
689
|
-
* the number of Julian centuries since J2000.0
|
|
690
|
-
* @param longitude
|
|
691
|
-
* the longitude of observer in degrees
|
|
692
|
-
* @return the time in minutes from zero UTC
|
|
693
|
-
*/
|
|
694
|
-
private static getSolarNoonUTC;
|
|
695
|
-
/**
|
|
696
|
-
* Return the <a href="http://en.wikipedia.org/wiki/Universal_Coordinated_Time">Universal Coordinated Time</a> (UTC)
|
|
697
|
-
* of sunset for the given day at the given location on earth
|
|
698
|
-
*
|
|
699
|
-
* @param julianDay
|
|
700
|
-
* the Julian day
|
|
701
|
-
* @param latitude
|
|
702
|
-
* the latitude of observer in degrees
|
|
703
|
-
* @param longitude
|
|
704
|
-
* : longitude of observer in degrees
|
|
705
|
-
* @param zenith
|
|
706
|
-
* the zenith
|
|
707
|
-
* @return the time in minutes from zero Universal Coordinated Time (UTC)
|
|
708
|
-
*/
|
|
709
|
-
private static getSunsetUTC;
|
|
710
|
-
}
|