module std/time/astrostd/time/astro
import std/num/float64std/num/float64
import std/num/ddoublestd/num/ddouble
import std/time/timestampstd/time/timestamp
import std/time/durationstd/time/duration
import std/time/instantstd/time/instant
import std/time/calendarstd/time/calendar
import std/time/utcstd/time/utc import std/time/calendarsstd/time/calendars
val secs-per-daystd/time/astro/secs-per-day: ddouble = ddoublestd/num/ddouble/int/ddouble: (i : int) -> ddouble(86400literal: int
dec = 86400
hex32= 0x00015180
bit32= 0b00000000000000010101000110000000)
val offset-j2000std/time/astro/offset-j2000: ddouble = ddoublestd/num/ddouble/int/ddouble: (i : int) -> ddouble(43200literal: int
dec = 43200
hex32= 0x0000A8C0
bit32= 0b00000000000000001010100011000000)
pub val epoch-j2000std/time/astro/epoch-j2000: instant = instant-at-j2000std/time/astro/instant-at-j2000: (jd : ddouble) -> instant(zerostd/num/ddouble/zero: ddouble)
pub fun j2000std/time/astro/j2000: (i : instant) -> ddouble( ii: instant : instantstd/time/instant/instant: V )result: -> total ddouble : ddoublestd/num/ddouble/ddouble: V
divstd/time/timestamp/div: (x : timespan, y : timespan, prec : ? int) -> timespan( (ii: instant.timestamp-instd/time/instant/timestamp-in: (i : instant, tscale : timescale) -> timestamp(ts-ttstd/time/instant/ts-tt: timescale) -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp offset-j2000std/time/astro/offset-j2000: ddouble).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan, secs-per-daystd/time/astro/secs-per-day: ddouble, 18literal: int
dec = 18
hex8 = 0x12
bit8 = 0b00010010)
pub fun instant-at-j2000std/time/astro/instant-at-j2000: (jd : ddouble) -> instant( jdjd: ddouble : ddoublestd/num/ddouble/ddouble: V )result: -> total instant : instantstd/time/instant/instant: V
ts-ttstd/time/instant/ts-tt: timescale.instantstd/time/instant/timescale/instant: (ts : timescale, t : timestamp) -> instant( timestampstd/time/timestamp/timestamp: (t : timespan, leap : ? int) -> timestamp( (jdjd: ddouble *std/num/ddouble/(*): (x : ddouble, y : ddouble) -> ddouble secs-per-daystd/time/astro/secs-per-day: ddouble) +std/num/ddouble/(+): (x : ddouble, y : ddouble) -> ddouble offset-j2000std/time/astro/offset-j2000: ddouble) )
val lgstd/time/astro/lg: ddouble : ddoublestd/num/ddouble/ddouble: V = ddouble-expstd/num/ddouble/int/ddouble-exp: (i : int, exp : int) -> ddouble(6969290134literal: int
dec = 6969290134
hex64= 0x000000019F66ED96
bit64= 0b0000000000000000000000000000000110011111011001101110110110010110,~std/core/int/(~): (i : int) -> int19literal: int
dec = 19
hex8 = 0x13
bit8 = 0b00010011) val tcg-epoch-deltastd/time/astro/tcg-epoch-delta: ddouble = ddouble-expstd/num/ddouble/int/ddouble-exp: (i : int, exp : int) -> ddouble(~std/core/int/(~): (i : int) -> int725759967816literal: int
dec = 725759967816
hex64= 0x000000A8FAAA4248
bit64= 0b0000000000000000000000001010100011111010101010100100001001001000,~std/core/int/(~): (i : int) -> int3literal: int
dec = 3
hex8 = 0x03
bit8 = 0b00000011)
fun tcg-from-taistd/time/astro/tcg-from-tai: (tai : duration) -> timestamp( taitai: duration : durationstd/time/duration/duration: V )result: -> total timestamp : timestampstd/time/timestamp/timestamp: V
val tttt: timestamp = ts-ttstd/time/instant/ts-tt: timescale.from-taistd/time/instant/from-tai: (ts : timescale, d : duration) -> timestamp(taitai: duration)
tttt: timestamp +std/time/timestamp/(+): (ts : timestamp, t : timespan) -> timestamp (lgstd/time/astro/lg: ddouble*std/num/ddouble/(*): (x : ddouble, y : ddouble) -> ddouble(tttt: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp tcg-epoch-deltastd/time/astro/tcg-epoch-delta: ddouble).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan)
fun tcg-to-taistd/time/astro/tcg-to-tai: (t : timestamp) -> duration( tt: timestamp : timestampstd/time/timestamp/timestamp: V )result: -> total duration : durationstd/time/duration/duration: V
val tttt: timestamp = tt: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp (lgstd/time/astro/lg: ddouble*std/num/ddouble/(*): (x : ddouble, y : ddouble) -> ddouble(tt: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp tcg-epoch-deltastd/time/astro/tcg-epoch-delta: ddouble).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan)
ts-ttstd/time/instant/ts-tt: timescale.to-taistd/time/instant/to-tai: (ts : timescale, t : timestamp) -> duration(tttt: timestamp)
pub val ts-tcgstd/time/astro/ts-tcg: timescale : timescalestd/time/instant/timescale: V = timescalestd/time/instant/timescale: (name : string, from-tai : (duration) -> timestamp, to-tai : (timestamp) -> duration, unit : ? string, seconds-in-day : ? (maybe<(timestamp) -> timespan>), to-mjd2000 : ? (maybe<(t : timestamp, tzdelta : timespan) -> ddouble>), from-mjd2000 : ? (maybe<(days : int, frac : ddouble) -> timestamp>)) -> timescale( "TCG"literal: string
count= 3, tcg-from-taistd/time/astro/tcg-from-tai: (tai : duration) -> timestamp, tcg-to-taistd/time/astro/tcg-to-tai: (t : timestamp) -> duration )
val j2k-epochstd/time/astro/j2k-epoch: timespan = timespanstd/time/timestamp/int/timespan: (seconds : int, frac : ? float64) -> timespan(43200literal: int
dec = 43200
hex32= 0x0000A8C0
bit32= 0b00000000000000001010100011000000) val secs-per-julian-yearstd/time/astro/secs-per-julian-year: float64 = 31557600.0literal: float64
hex64= 0x1.e187ep24
fun tdb-deltastd/time/astro/tdb-delta: (tt : timestamp) -> timespan( tttt: timestamp : timestampstd/time/timestamp/timestamp: V )result: -> total timespan : timespanstd/time/timestamp/timespan: V
val tt: float64 = (tttt: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp j2k-epochstd/time/astro/j2k-epoch: timespan).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan.float64std/num/ddouble/float64: (x : ddouble) -> float64 /std/num/float64/(/): (x : float64, y : float64) -> float64 (secs-per-julian-yearstd/time/astro/secs-per-julian-year: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 1000.0literal: float64
hex64= 0x1.f4p9)
val wfwf: float64 : float64std/core/types/float64: V
=(1656.6746e-6literal: float64
hex64= 0x1.b2498ce8908a9p-10*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 6283.0758literal: float64
hex64= 0x1.88b1367a0f909p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 6.2401literal: float64
hex64= 0x1.8f5dcc63f1412p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 ( 22.4175e-6literal: float64
hex64= 0x1.781a6dea693fep-16*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 5753.3859literal: float64
hex64= 0x1.67962ca57a787p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 4.2970literal: float64
hex64= 0x1.13020c49ba5e3p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 13.8398e-6literal: float64
hex64= 0x1.d062fa0d5c3aep-17*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64(12566.1527literal: float64
hex64= 0x1.88b138bac710dp13*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 6.1969literal: float64
hex64= 0x1.8c9a027525461p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 4.7701e-6literal: float64
hex64= 0x1.401db1a9a147cp-18*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 529.6910literal: float64
hex64= 0x1.08d872b020c4ap9*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 0.4444literal: float64
hex64= 0x1.c710cb295e9e2p-2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 4.6767e-6literal: float64
hex64= 0x1.39d9181e54b5dp-18*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 6069.7768literal: float64
hex64= 0x1.7b5c6dc5d6388p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 4.0212literal: float64
hex64= 0x1.015b573eab368p2))
)
+std/num/float64/(+): (x : float64, y : float64) -> float64
( 2.2567e-6literal: float64
hex64= 0x1.2ee39f1f8b22cp-19*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 213.2991literal: float64
hex64= 0x1.aa9923a29c77ap7*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.5431literal: float64
hex64= 0x1.62c226809d495p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 1.6942e-6literal: float64
hex64= 0x1.c6c88998b0eb9p-20*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( ~std/num/float64/(~): (f : float64) -> float643.5232literal: float64
hex64= 0x1.c2f837b4a233ap1*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.0251literal: float64
hex64= 0x1.419b3d07c84b6p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 1.5549e-6literal: float64
hex64= 0x1.a163ea14992fbp-20*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64(77713.7715literal: float64
hex64= 0x1.2f91c5810624ep16*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.1985literal: float64
hex64= 0x1.4cb4395810625p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 1.2768e-6literal: float64
hex64= 0x1.56bd07243a05bp-20*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 7860.4194literal: float64
hex64= 0x1.eb46b5dcc63f1p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.9888literal: float64
hex64= 0x1.7f487fcb923a3p2)
+std/num/float64/(+): (x : float64, y : float64) -> float64 1.1934e-6literal: float64
hex64= 0x1.4059d2d34dcfbp-20*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 5223.6939literal: float64
hex64= 0x1.467b1a36e2eb2p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 3.6498literal: float64
hex64= 0x1.d32ca57a786c2p1)
)
+std/num/float64/(+): (x : float64, y : float64) -> float64 tt: float64*std/num/float64/(*): (x : float64, y : float64) -> float64(102.1567e-6literal: float64
hex64= 0x1.ac79ebe055992p-14*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 6283.0758literal: float64
hex64= 0x1.88b1367a0f909p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 4.2490literal: float64
hex64= 0x1.0fef9db22d0e5p2))
val wjwj: float64 : float64std/core/types/float64: V
= 0.00065e-6literal: float64
hex64= 0x1.65575e0ff4a28p-31*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64(6069.776754literal: float64
hex64= 0x1.7b5c6d959a30ap12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 4.021194literal: float64
hex64= 0x1.015b3e1437c57p2) +std/num/float64/(+): (x : float64, y : float64) -> float64
0.00033e-6literal: float64
hex64= 0x1.6ad6be0852fbap-32*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 213.299095literal: float64
hex64= 0x1.aa9922fad6cb5p7*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.543132literal: float64
hex64= 0x1.62c2acb85a4fp2) +std/num/float64/(+): (x : float64, y : float64) -> float64
(~std/num/float64/(~): (f : float64) -> float640.00196e-6literal: float64
hex64= 0x1.0d615e8a0f102p-29*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64(6208.294251literal: float64
hex64= 0x1.8404b540895d1p12*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 5.696701literal: float64
hex64= 0x1.6c96bfca85cabp2)) +std/num/float64/(+): (x : float64, y : float64) -> float64
(~std/num/float64/(~): (f : float64) -> float640.00173e-6literal: float64
hex64= 0x1.db89ed6be11f2p-30*std/num/float64/(*): (x : float64, y : float64) -> float64sinstd/num/float64/sin: (d : float64) -> float64( 74.781599literal: float64
hex64= 0x1.2b205b7cfe586p6*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 2.435900literal: float64
hex64= 0x1.37cb923a29c78p1)) +std/num/float64/(+): (x : float64, y : float64) -> float64
0.03638e-6literal: float64
hex64= 0x1.3880774e331b6p-25*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64*std/num/float64/(*): (x : float64, y : float64) -> float64tt: float64;
val wtwt: float64 = 0.0literal: float64
hex64= 0x0p+0
ddoublestd/num/ddouble/float64/ddouble: (d : float64) -> ddouble( wfwf: float64+std/num/float64/(+): (x : float64, y : float64) -> float64wjwj: float64+std/num/float64/(+): (x : float64, y : float64) -> float64wtwt: float64 )
val pi2std/time/astro/pi2: float64 = 6.283185307179586476925287literal: float64
hex64= 0x1.921fb54442d18p2 val dd2rstd/time/astro/dd2r: float64 = 1.745329251994329576923691e-2literal: float64
hex64= 0x1.1df46a2529d39p-6
fun tdb-topocentricstd/time/astro/tdb-topocentric: (t : float64, ut : ? float64, elong : ? float64, u : ? float64, v : ? float64) -> float64( tt: float64 : float64std/core/types/float64: V, utut: ? float64 : float64std/core/types/float64: V = 0.0literal: float64
hex64= 0x0p+0, elongelong: ? float64 : float64std/core/types/float64: V = 0.0literal: float64
hex64= 0x0p+0, uu: ? float64 : float64std/core/types/float64: V = 0.0literal: float64
hex64= 0x0p+0, vv: ? float64 : float64std/core/types/float64: V = 0.0literal: float64
hex64= 0x0p+0 )result: -> total float64
val tsoltsol: float64 = utut: float64.fractionstd/num/float64/fraction: (d : float64) -> float64*std/num/float64/(*): (x : float64, y : float64) -> float64pi2std/time/astro/pi2: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 elongelong: float64*std/num/float64/(*): (x : float64, y : float64) -> float64dd2rstd/time/astro/dd2r: float64
val ww: float64 = tt: float64 /std/num/float64/(/): (x : float64, y : float64) -> float64 3600.0literal: float64
hex64= 0x1.c2p11
val elsunelsun: float64 = ((280.46645683literal: float64
hex64= 0x1.187769b6fdd89p8 +std/num/float64/(+): (x : float64, y : float64) -> float64 1296027711.03429literal: float64
hex64= 0x1.34ff40fc231cfp30 *std/num/float64/(*): (x : float64, y : float64) -> float64 ww: float64) %std/num/float64/(%): (x : float64, y : float64) -> float64 360.0literal: float64
hex64= 0x1.68p8) *std/num/float64/(*): (x : float64, y : float64) -> float64 dd2rstd/time/astro/dd2r: float64
val emsunemsun: float64 = ((357.52910918literal: float64
hex64= 0x1.658773b3001dp8 +std/num/float64/(+): (x : float64, y : float64) -> float64 1295965810.481literal: float64
hex64= 0x1.34fb79c9ec8b4p30 *std/num/float64/(*): (x : float64, y : float64) -> float64 ww: float64) %std/num/float64/(%): (x : float64, y : float64) -> float64 360.0literal: float64
hex64= 0x1.68p8) *std/num/float64/(*): (x : float64, y : float64) -> float64 dd2rstd/time/astro/dd2r: float64
val dd: float64 = ((297.85019547literal: float64
hex64= 0x1.29d9a6690adb8p8 +std/num/float64/(+): (x : float64, y : float64) -> float64 16029616012.090literal: float64
hex64= 0x1.ddb843c60b852p33 *std/num/float64/(*): (x : float64, y : float64) -> float64 ww: float64) %std/num/float64/(%): (x : float64, y : float64) -> float64 360.0literal: float64
hex64= 0x1.68p8) *std/num/float64/(*): (x : float64, y : float64) -> float64 dd2rstd/time/astro/dd2r: float64
val eljelj: float64 = ((34.35151874literal: float64
hex64= 0x1.12cfe90ea1d96p5 +std/num/float64/(+): (x : float64, y : float64) -> float64 109306899.89453literal: float64
hex64= 0x1.a0f904f93ffacp26 *std/num/float64/(*): (x : float64, y : float64) -> float64 ww: float64) %std/num/float64/(%): (x : float64, y : float64) -> float64 360.0literal: float64
hex64= 0x1.68p8) *std/num/float64/(*): (x : float64, y : float64) -> float64 dd2rstd/time/astro/dd2r: float64
val elsels: float64 = ((50.07744430literal: float64
hex64= 0x1.909e9b1dfe17dp5 +std/num/float64/(+): (x : float64, y : float64) -> float64 44046398.47038literal: float64
hex64= 0x1.500c1f3c35697p25 *std/num/float64/(*): (x : float64, y : float64) -> float64 ww: float64) %std/num/float64/(%): (x : float64, y : float64) -> float64 360.0literal: float64
hex64= 0x1.68p8) *std/num/float64/(*): (x : float64, y : float64) -> float64 dd2rstd/time/astro/dd2r: float64
val wtwt: float64 : float64std/core/types/float64: V
=( 0.00029e-10literal: float64
hex64= 0x1.053572801a604p-45 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 elsunelsun: float64 -std/num/float64/(-): (x : float64, y : float64) -> float64 elsels: float64)
+std/num/float64/(+): (x : float64, y : float64) -> float64 (0.00100e-10literal: float64
hex64= 0x1.c25c268497682p-44 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 -std/num/float64/(-): (x : float64, y : float64) -> float64 2.0literal: float64
hex64= 0x1p1 *std/num/float64/(*): (x : float64, y : float64) -> float64 emsunemsun: float64)
+std/num/float64/(+): (x : float64, y : float64) -> float64 0.00133e-10literal: float64
hex64= 0x1.2b7d47b1c5f72p-43 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 -std/num/float64/(-): (x : float64, y : float64) -> float64 dd: float64)
+std/num/float64/(+): (x : float64, y : float64) -> float64 0.00133e-10literal: float64
hex64= 0x1.2b7d47b1c5f72p-43 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 (elsunelsun: float64 -std/num/float64/(-): (x : float64, y : float64) -> float64 eljelj: float64))
-std/num/float64/(-): (x : float64, y : float64) -> float64 0.00229e-10literal: float64
hex64= 0x1.01d4c1924f001p-42 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 (2.0literal: float64
hex64= 0x1p1 *std/num/float64/(*): (x : float64, y : float64) -> float64 elsunelsun: float64) +std/num/float64/(+): (x : float64, y : float64) -> float64 emsunemsun: float64)
-std/num/float64/(-): (x : float64, y : float64) -> float64 0.02200e-10literal: float64
hex64= 0x1.359f5a7b28179p-39 *std/num/float64/(*): (x : float64, y : float64) -> float64 vv: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 cosstd/num/float64/cos: (d : float64) -> float64(elsunelsun: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 emsunemsun: float64))
)
+std/num/float64/(+): (x : float64, y : float64) -> float64
( 0.05312e-10literal: float64
hex64= 0x1.75cc7c21403a4p-38 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 -std/num/float64/(-): (x : float64, y : float64) -> float64 emsunemsun: float64)
-std/num/float64/(-): (x : float64, y : float64) -> float64 0.13677e-10literal: float64
hex64= 0x1.e13776d646a91p-37 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64 +std/num/float64/(+): (x : float64, y : float64) -> float64 2.0literal: float64
hex64= 0x1p1 *std/num/float64/(*): (x : float64, y : float64) -> float64 elsunelsun: float64)
-std/num/float64/(-): (x : float64, y : float64) -> float64 1.31840e-10literal: float64
hex64= 0x1.21eb52655b117p-33 *std/num/float64/(*): (x : float64, y : float64) -> float64 vv: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 cosstd/num/float64/cos: (d : float64) -> float64(elsunelsun: float64)
+std/num/float64/(+): (x : float64, y : float64) -> float64 3.17679e-10literal: float64
hex64= 0x1.5d4ab06a978bdp-32 *std/num/float64/(*): (x : float64, y : float64) -> float64 uu: float64 *std/num/float64/(*): (x : float64, y : float64) -> float64 sinstd/num/float64/sin: (d : float64) -> float64(tsoltsol: float64)
);
wtwt: float64
fun tai-to-tdbstd/time/astro/tai-to-tdb: (tai : duration, delta : ? ((timestamp) -> timespan)) -> timestamp( taitai: duration : durationstd/time/duration/duration: V, deltadelta: ? ((timestamp) -> timespan) : timestampstd/time/timestamp/timestamp: V -> timespanstd/time/timestamp/timespan: V = tdb-deltastd/time/astro/tdb-delta: (tt : timestamp) -> timespan )result: -> total timestamp : timestampstd/time/timestamp/timestamp: V
val tttt: timestamp = ts-ttstd/time/instant/ts-tt: timescale.from-taistd/time/instant/from-tai: (ts : timescale, d : duration) -> timestamp(taitai: duration)
tttt: timestamp +std/time/timestamp/(+): (ts : timestamp, t : timespan) -> timestamp deltadelta: (timestamp) -> timespan(tttt: timestamp)
fun tdb-to-taistd/time/astro/tdb-to-tai: (tdb : timestamp, delta : ? ((timestamp) -> timespan)) -> duration( tdbtdb: timestamp : timestampstd/time/timestamp/timestamp: V, deltadelta: ? ((timestamp) -> timespan) : timestampstd/time/timestamp/timestamp: V -> timespanstd/time/timestamp/timespan: V = tdb-deltastd/time/astro/tdb-delta: (tt : timestamp) -> timespan )result: -> total duration : durationstd/time/duration/duration: V
ts-ttstd/time/instant/ts-tt: timescale.to-taistd/time/instant/to-tai: (ts : timescale, t : timestamp) -> duration( tdbtdb: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp deltadelta: (timestamp) -> timespan(tdbtdb: timestamp) )
pub val ts-tdbstd/time/astro/ts-tdb: timescale : timescalestd/time/instant/timescale: V = ts-tdb-createstd/time/astro/ts-tdb-create: (tdb-minus-tt : (timestamp) -> timespan) -> timescale(tdb-deltastd/time/astro/tdb-delta: (tt : timestamp) -> timespan)
pub fun ts-tdb-createstd/time/astro/ts-tdb-create: (tdb-minus-tt : (timestamp) -> timespan) -> timescale( tdb-minus-tttdb-minus-tt: (timestamp) -> timespan : timestampstd/time/timestamp/timestamp: V -> timespanstd/time/timestamp/timespan: V )result: -> total timescale : timescalestd/time/instant/timescale: V
timescalestd/time/instant/timescale: (name : string, from-tai : (duration) -> timestamp, to-tai : (timestamp) -> duration, unit : ? string, seconds-in-day : ? (maybe<(timestamp) -> timespan>), to-mjd2000 : ? (maybe<(t : timestamp, tzdelta : timespan) -> ddouble>), from-mjd2000 : ? (maybe<(days : int, frac : ddouble) -> timestamp>)) -> timescale("TDB"literal: string
count= 3,
fnfn: (tai : duration) -> timestamp(taitai: duration:durationstd/time/duration/duration: V) { tai-to-tdbstd/time/astro/tai-to-tdb: (tai : duration, delta : ? ((timestamp) -> timespan)) -> timestamp(taitai: duration,tdb-minus-tttdb-minus-tt: (timestamp) -> timespan) },
fnfn: (tdb : timestamp) -> duration(tdbtdb: timestamp:timestampstd/time/timestamp/timestamp: V) { tdb-to-taistd/time/astro/tdb-to-tai: (tdb : timestamp, delta : ? ((timestamp) -> timespan)) -> duration(tdbtdb: timestamp,tdb-minus-tttdb-minus-tt: (timestamp) -> timespan) }
)
val lbstd/time/astro/lb: ddouble : ddoublestd/num/ddouble/ddouble: V = ddouble-expstd/num/ddouble/int/ddouble-exp: (i : int, exp : int) -> ddouble(155051976772literal: int
dec = 155051976772
hex64= 0x0000002419D16844
bit64= 0b0000000000000000000000000010010000011001110100010110100001000100,~std/core/int/(~): (i : int) -> int19literal: int
dec = 19
hex8 = 0x13
bit8 = 0b00010011) val tdb0std/time/astro/tdb0: ddouble : ddoublestd/num/ddouble/ddouble: V = ddouble-expstd/num/ddouble/int/ddouble-exp: (i : int, exp : int) -> ddouble(~std/core/int/(~): (i : int) -> int655literal: int
dec = 655
hex16= 0x028F
bit16= 0b0000001010001111,~std/core/int/(~): (i : int) -> int7literal: int
dec = 7
hex8 = 0x07
bit8 = 0b00000111)
fun tai-to-tcbstd/time/astro/tai-to-tcb: (tai : duration, tstdb : timescale) -> timestamp( taitai: duration : durationstd/time/duration/duration: V, tstdbtstdb: timescale : timescalestd/time/instant/timescale: V )result: -> total timestamp : timestampstd/time/timestamp/timestamp: V
val tdbtdb: timestamp = tstdbtstdb: timescale.from-taistd/time/instant/from-tai: (ts : timescale, d : duration) -> timestamp(taitai: duration)
val adjadj: ddouble = lbstd/time/astro/lb: ddouble*std/num/ddouble/(*): (x : ddouble, y : ddouble) -> ddouble(tdbtdb: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp tcg-epoch-deltastd/time/astro/tcg-epoch-delta: ddouble).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan
tdbtdb: timestamp +std/time/timestamp/(+): (ts : timestamp, t : timespan) -> timestamp (adjadj: ddouble -std/num/ddouble/(-): (x : ddouble, y : ddouble) -> ddouble tdb0std/time/astro/tdb0: ddouble)
fun tcb-to-taistd/time/astro/tcb-to-tai: (tcb : timestamp, tstdb : timescale) -> duration( tcbtcb: timestamp : timestampstd/time/timestamp/timestamp: V, tstdbtstdb: timescale : timescalestd/time/instant/timescale: V )result: -> total duration : durationstd/time/duration/duration: V
val adjadj: ddouble = lbstd/time/astro/lb: ddouble*std/num/ddouble/(*): (x : ddouble, y : ddouble) -> ddouble(tcbtcb: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp tcg-epoch-deltastd/time/astro/tcg-epoch-delta: ddouble).timespan-noleapstd/time/timestamp/timespan-noleap: (ts : timestamp) -> timespan
val tdbtdb: timestamp = tcbtcb: timestamp -std/time/timestamp/(-): (ts : timestamp, t : timespan) -> timestamp (adjadj: ddouble -std/num/ddouble/(-): (x : ddouble, y : ddouble) -> ddouble tdb0std/time/astro/tdb0: ddouble)
tstdbtstdb: timescale.to-taistd/time/instant/to-tai: (ts : timescale, t : timestamp) -> duration(tdbtdb: timestamp)
pub val ts-tcbstd/time/astro/ts-tcb: timescale : timescalestd/time/instant/timescale: V = ts-tcb-createstd/time/astro/ts-tcb-create: (tstdb : timescale) -> timescale(ts-tdbstd/time/astro/ts-tdb: timescale)
pub fun ts-tcb-createstd/time/astro/ts-tcb-create: (tstdb : timescale) -> timescale( tstdbtstdb: timescale : timescalestd/time/instant/timescale: V )result: -> total timescale : timescalestd/time/instant/timescale: V
timescalestd/time/instant/timescale: (name : string, from-tai : (duration) -> timestamp, to-tai : (timestamp) -> duration, unit : ? string, seconds-in-day : ? (maybe<(timestamp) -> timespan>), to-mjd2000 : ? (maybe<(t : timestamp, tzdelta : timespan) -> ddouble>), from-mjd2000 : ? (maybe<(days : int, frac : ddouble) -> timestamp>)) -> timescale( "TCB"literal: string
count= 3,
fnfn: (tai : duration) -> timestamp(taitai: duration:durationstd/time/duration/duration: V) { tai-to-tcbstd/time/astro/tai-to-tcb: (tai : duration, tstdb : timescale) -> timestamp(taitai: duration, tstdbtstdb: timescale) },
fnfn: (tcb : timestamp) -> duration(tcbtcb: timestamp:timestampstd/time/timestamp/timestamp: V) { tcb-to-taistd/time/astro/tcb-to-tai: (tcb : timestamp, tstdb : timescale) -> duration(tcbtcb: timestamp, tstdbtstdb: timescale) }
)