@neilberkman/sidereon 0.9.1 → 0.10.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.
@@ -594,6 +594,146 @@ class AtmosphereDensity {
594
594
  if (Symbol.dispose) AtmosphereDensity.prototype[Symbol.dispose] = AtmosphereDensity.prototype.free;
595
595
  exports.AtmosphereDensity = AtmosphereDensity;
596
596
 
597
+ class BiasSet {
598
+ static __wrap(ptr) {
599
+ const obj = Object.create(BiasSet.prototype);
600
+ obj.__wbg_ptr = ptr;
601
+ BiasSetFinalization.register(obj, obj.__wbg_ptr, obj);
602
+ return obj;
603
+ }
604
+ __destroy_into_raw() {
605
+ const ptr = this.__wbg_ptr;
606
+ this.__wbg_ptr = 0;
607
+ BiasSetFinalization.unregister(this);
608
+ return ptr;
609
+ }
610
+ free() {
611
+ const ptr = this.__destroy_into_raw();
612
+ wasm.__wbg_biasset_free(ptr, 0);
613
+ }
614
+ /**
615
+ * @param {string} sat
616
+ * @param {string} used_obs1
617
+ * @param {string} used_obs2
618
+ * @param {number} freq1_hz
619
+ * @param {number} freq2_hz
620
+ * @param {number | null | undefined} glonass_channel
621
+ * @param {string} clock_ref_obs1
622
+ * @param {string} clock_ref_obs2
623
+ * @param {number} epoch_j2000_s
624
+ * @param {string | null} [time_scale]
625
+ * @returns {number | undefined}
626
+ */
627
+ codeBiasModelM(sat, used_obs1, used_obs2, freq1_hz, freq2_hz, glonass_channel, clock_ref_obs1, clock_ref_obs2, epoch_j2000_s, time_scale) {
628
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
629
+ const len0 = WASM_VECTOR_LEN;
630
+ const ptr1 = passStringToWasm0(used_obs1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
631
+ const len1 = WASM_VECTOR_LEN;
632
+ const ptr2 = passStringToWasm0(used_obs2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
633
+ const len2 = WASM_VECTOR_LEN;
634
+ const ptr3 = passStringToWasm0(clock_ref_obs1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
635
+ const len3 = WASM_VECTOR_LEN;
636
+ const ptr4 = passStringToWasm0(clock_ref_obs2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
637
+ const len4 = WASM_VECTOR_LEN;
638
+ var ptr5 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
639
+ var len5 = WASM_VECTOR_LEN;
640
+ const ret = wasm.biasset_codeBiasModelM(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, freq1_hz, freq2_hz, isLikeNone(glonass_channel) ? 0xFFFFFF : glonass_channel, ptr3, len3, ptr4, len4, epoch_j2000_s, ptr5, len5);
641
+ if (ret[3]) {
642
+ throw takeFromExternrefTable0(ret[2]);
643
+ }
644
+ return ret[0] === 0 ? undefined : ret[1];
645
+ }
646
+ /**
647
+ * @param {string} sat
648
+ * @param {string} obs1
649
+ * @param {string} obs2
650
+ * @param {number} epoch_j2000_s
651
+ * @param {string | null} [time_scale]
652
+ * @returns {number | undefined}
653
+ */
654
+ codeDsbSeconds(sat, obs1, obs2, epoch_j2000_s, time_scale) {
655
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
656
+ const len0 = WASM_VECTOR_LEN;
657
+ const ptr1 = passStringToWasm0(obs1, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
658
+ const len1 = WASM_VECTOR_LEN;
659
+ const ptr2 = passStringToWasm0(obs2, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
660
+ const len2 = WASM_VECTOR_LEN;
661
+ var ptr3 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
662
+ var len3 = WASM_VECTOR_LEN;
663
+ const ret = wasm.biasset_codeDsbSeconds(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, epoch_j2000_s, ptr3, len3);
664
+ if (ret[3]) {
665
+ throw takeFromExternrefTable0(ret[2]);
666
+ }
667
+ return ret[0] === 0 ? undefined : ret[1];
668
+ }
669
+ /**
670
+ * @param {string} sat
671
+ * @param {string} obs
672
+ * @param {number} epoch_j2000_s
673
+ * @param {string | null} [time_scale]
674
+ * @returns {number | undefined}
675
+ */
676
+ codeOsbSeconds(sat, obs, epoch_j2000_s, time_scale) {
677
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
678
+ const len0 = WASM_VECTOR_LEN;
679
+ const ptr1 = passStringToWasm0(obs, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
680
+ const len1 = WASM_VECTOR_LEN;
681
+ var ptr2 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
682
+ var len2 = WASM_VECTOR_LEN;
683
+ const ret = wasm.biasset_codeOsbSeconds(this.__wbg_ptr, ptr0, len0, ptr1, len1, epoch_j2000_s, ptr2, len2);
684
+ if (ret[3]) {
685
+ throw takeFromExternrefTable0(ret[2]);
686
+ }
687
+ return ret[0] === 0 ? undefined : ret[1];
688
+ }
689
+ /**
690
+ * @param {string} sat
691
+ * @param {string} obs
692
+ * @param {number} epoch_j2000_s
693
+ * @param {string | null} [time_scale]
694
+ * @returns {number | undefined}
695
+ */
696
+ phaseOsbCycles(sat, obs, epoch_j2000_s, time_scale) {
697
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
698
+ const len0 = WASM_VECTOR_LEN;
699
+ const ptr1 = passStringToWasm0(obs, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
700
+ const len1 = WASM_VECTOR_LEN;
701
+ var ptr2 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
702
+ var len2 = WASM_VECTOR_LEN;
703
+ const ret = wasm.biasset_phaseOsbCycles(this.__wbg_ptr, ptr0, len0, ptr1, len1, epoch_j2000_s, ptr2, len2);
704
+ if (ret[3]) {
705
+ throw takeFromExternrefTable0(ret[2]);
706
+ }
707
+ return ret[0] === 0 ? undefined : ret[1];
708
+ }
709
+ /**
710
+ * @returns {number}
711
+ */
712
+ get recordCount() {
713
+ const ret = wasm.biasset_recordCount(this.__wbg_ptr);
714
+ return ret >>> 0;
715
+ }
716
+ /**
717
+ * @returns {any}
718
+ */
719
+ get records() {
720
+ const ret = wasm.biasset_records(this.__wbg_ptr);
721
+ if (ret[2]) {
722
+ throw takeFromExternrefTable0(ret[1]);
723
+ }
724
+ return takeFromExternrefTable0(ret[0]);
725
+ }
726
+ /**
727
+ * @returns {number}
728
+ */
729
+ get skippedRecords() {
730
+ const ret = wasm.biasset_skippedRecords(this.__wbg_ptr);
731
+ return ret >>> 0;
732
+ }
733
+ }
734
+ if (Symbol.dispose) BiasSet.prototype[Symbol.dispose] = BiasSet.prototype.free;
735
+ exports.BiasSet = BiasSet;
736
+
597
737
  /**
598
738
  * A parsed broadcast ephemeris store from a RINEX NAV file. `records` are the
599
739
  * usable GPS/Galileo/BeiDou records selected by the core default SPP policy.
@@ -3153,6 +3293,162 @@ class DopplerShift {
3153
3293
  if (Symbol.dispose) DopplerShift.prototype[Symbol.dispose] = DopplerShift.prototype.free;
3154
3294
  exports.DopplerShift = DopplerShift;
3155
3295
 
3296
+ class DragForce {
3297
+ static __wrap(ptr) {
3298
+ const obj = Object.create(DragForce.prototype);
3299
+ obj.__wbg_ptr = ptr;
3300
+ DragForceFinalization.register(obj, obj.__wbg_ptr, obj);
3301
+ return obj;
3302
+ }
3303
+ __destroy_into_raw() {
3304
+ const ptr = this.__wbg_ptr;
3305
+ this.__wbg_ptr = 0;
3306
+ DragForceFinalization.unregister(this);
3307
+ return ptr;
3308
+ }
3309
+ free() {
3310
+ const ptr = this.__destroy_into_raw();
3311
+ wasm.__wbg_dragforce_free(ptr, 0);
3312
+ }
3313
+ /**
3314
+ * @param {number} epoch_s
3315
+ * @param {Float64Array} position_km
3316
+ * @param {Float64Array} velocity_km_s
3317
+ * @returns {Float64Array}
3318
+ */
3319
+ acceleration(epoch_s, position_km, velocity_km_s) {
3320
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
3321
+ const len0 = WASM_VECTOR_LEN;
3322
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
3323
+ const len1 = WASM_VECTOR_LEN;
3324
+ const ret = wasm.dragforce_acceleration(this.__wbg_ptr, epoch_s, ptr0, len0, ptr1, len1);
3325
+ if (ret[3]) {
3326
+ throw takeFromExternrefTable0(ret[2]);
3327
+ }
3328
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
3329
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
3330
+ return v3;
3331
+ }
3332
+ /**
3333
+ * @returns {number}
3334
+ */
3335
+ get bcFactorM2Kg() {
3336
+ const ret = wasm.dragforce_bcFactorM2Kg(this.__wbg_ptr);
3337
+ return ret;
3338
+ }
3339
+ /**
3340
+ * @returns {number}
3341
+ */
3342
+ get cutoffAltitudeKm() {
3343
+ const ret = wasm.dragforce_cutoffAltitudeKm(this.__wbg_ptr);
3344
+ return ret;
3345
+ }
3346
+ /**
3347
+ * @param {number} cd
3348
+ * @param {number} area_m2
3349
+ * @param {number} mass_kg
3350
+ * @param {SpaceWeather} space_weather
3351
+ * @param {number | null} [cutoff_altitude_km]
3352
+ * @returns {DragForce}
3353
+ */
3354
+ static fromAreaMass(cd, area_m2, mass_kg, space_weather, cutoff_altitude_km) {
3355
+ _assertClass(space_weather, SpaceWeather);
3356
+ const ret = wasm.dragforce_fromAreaMass(cd, area_m2, mass_kg, space_weather.__wbg_ptr, !isLikeNone(cutoff_altitude_km), isLikeNone(cutoff_altitude_km) ? 0 : cutoff_altitude_km);
3357
+ if (ret[2]) {
3358
+ throw takeFromExternrefTable0(ret[1]);
3359
+ }
3360
+ return DragForce.__wrap(ret[0]);
3361
+ }
3362
+ /**
3363
+ * @param {number} bc_kg_m2
3364
+ * @param {SpaceWeather} space_weather
3365
+ * @param {number | null} [cutoff_altitude_km]
3366
+ * @returns {DragForce}
3367
+ */
3368
+ static fromBallisticCoefficient(bc_kg_m2, space_weather, cutoff_altitude_km) {
3369
+ _assertClass(space_weather, SpaceWeather);
3370
+ const ret = wasm.dragforce_fromBallisticCoefficient(bc_kg_m2, space_weather.__wbg_ptr, !isLikeNone(cutoff_altitude_km), isLikeNone(cutoff_altitude_km) ? 0 : cutoff_altitude_km);
3371
+ if (ret[2]) {
3372
+ throw takeFromExternrefTable0(ret[1]);
3373
+ }
3374
+ return DragForce.__wrap(ret[0]);
3375
+ }
3376
+ /**
3377
+ * @param {number} bc_factor_m2_kg
3378
+ * @param {SpaceWeather} space_weather
3379
+ * @param {number | null} [cutoff_altitude_km]
3380
+ * @returns {DragForce}
3381
+ */
3382
+ static fromBcFactor(bc_factor_m2_kg, space_weather, cutoff_altitude_km) {
3383
+ _assertClass(space_weather, SpaceWeather);
3384
+ const ret = wasm.dragforce_fromBcFactor(bc_factor_m2_kg, space_weather.__wbg_ptr, !isLikeNone(cutoff_altitude_km), isLikeNone(cutoff_altitude_km) ? 0 : cutoff_altitude_km);
3385
+ if (ret[2]) {
3386
+ throw takeFromExternrefTable0(ret[1]);
3387
+ }
3388
+ return DragForce.__wrap(ret[0]);
3389
+ }
3390
+ /**
3391
+ * @returns {SpaceWeather}
3392
+ */
3393
+ get spaceWeather() {
3394
+ const ret = wasm.dragforce_spaceWeather(this.__wbg_ptr);
3395
+ return SpaceWeather.__wrap(ret);
3396
+ }
3397
+ }
3398
+ if (Symbol.dispose) DragForce.prototype[Symbol.dispose] = DragForce.prototype.free;
3399
+ exports.DragForce = DragForce;
3400
+
3401
+ class DtedTerrain {
3402
+ __destroy_into_raw() {
3403
+ const ptr = this.__wbg_ptr;
3404
+ this.__wbg_ptr = 0;
3405
+ DtedTerrainFinalization.unregister(this);
3406
+ return ptr;
3407
+ }
3408
+ free() {
3409
+ const ptr = this.__destroy_into_raw();
3410
+ wasm.__wbg_dtedterrain_free(ptr, 0);
3411
+ }
3412
+ /**
3413
+ * @param {number} longitude_deg
3414
+ * @param {number} latitude_deg
3415
+ * @returns {number}
3416
+ */
3417
+ heightM(longitude_deg, latitude_deg) {
3418
+ const ret = wasm.dtedterrain_heightM(this.__wbg_ptr, longitude_deg, latitude_deg);
3419
+ if (ret[2]) {
3420
+ throw takeFromExternrefTable0(ret[1]);
3421
+ }
3422
+ return ret[0];
3423
+ }
3424
+ /**
3425
+ * @param {number} longitude_deg
3426
+ * @param {number} latitude_deg
3427
+ * @param {any} options
3428
+ * @returns {number}
3429
+ */
3430
+ heightMWithOptions(longitude_deg, latitude_deg, options) {
3431
+ const ret = wasm.dtedterrain_heightMWithOptions(this.__wbg_ptr, longitude_deg, latitude_deg, options);
3432
+ if (ret[2]) {
3433
+ throw takeFromExternrefTable0(ret[1]);
3434
+ }
3435
+ return ret[0];
3436
+ }
3437
+ /**
3438
+ * @param {string} root
3439
+ */
3440
+ constructor(root) {
3441
+ const ptr0 = passStringToWasm0(root, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
3442
+ const len0 = WASM_VECTOR_LEN;
3443
+ const ret = wasm.dtedterrain_new(ptr0, len0);
3444
+ this.__wbg_ptr = ret;
3445
+ DtedTerrainFinalization.register(this, this.__wbg_ptr, this);
3446
+ return this;
3447
+ }
3448
+ }
3449
+ if (Symbol.dispose) DtedTerrain.prototype[Symbol.dispose] = DtedTerrain.prototype.free;
3450
+ exports.DtedTerrain = DtedTerrain;
3451
+
3156
3452
  /**
3157
3453
  * Orthonormal encounter frame built from two relative states.
3158
3454
  */
@@ -9225,6 +9521,59 @@ class PppFloatSolution {
9225
9521
  if (Symbol.dispose) PppFloatSolution.prototype[Symbol.dispose] = PppFloatSolution.prototype.free;
9226
9522
  exports.PppFloatSolution = PppFloatSolution;
9227
9523
 
9524
+ /**
9525
+ * A precise-ephemeris source built from samples rather than parsed SP3 text.
9526
+ *
9527
+ * Implements the same `ObservableEphemerisSource` contract as a parsed [`Sp3`]
9528
+ * product and shares its interpolation substrate, so [`predictRanges`] accepts
9529
+ * either handle. Build one with [`preciseEphemerisSamplesFromSamples`].
9530
+ */
9531
+ class PreciseEphemerisSampleSource {
9532
+ static __wrap(ptr) {
9533
+ const obj = Object.create(PreciseEphemerisSampleSource.prototype);
9534
+ obj.__wbg_ptr = ptr;
9535
+ PreciseEphemerisSampleSourceFinalization.register(obj, obj.__wbg_ptr, obj);
9536
+ return obj;
9537
+ }
9538
+ __destroy_into_raw() {
9539
+ const ptr = this.__wbg_ptr;
9540
+ this.__wbg_ptr = 0;
9541
+ PreciseEphemerisSampleSourceFinalization.unregister(this);
9542
+ return ptr;
9543
+ }
9544
+ free() {
9545
+ const ptr = this.__destroy_into_raw();
9546
+ wasm.__wbg_preciseephemerissamplesource_free(ptr, 0);
9547
+ }
9548
+ /**
9549
+ * Predict geometric ranges for many requests in one call. See the shared
9550
+ * [`predictRanges`](crate::precise_samples::predict_ranges_over) contract;
9551
+ * this is the sample-source entry point.
9552
+ * @param {any} requests
9553
+ * @param {any} options
9554
+ * @returns {any}
9555
+ */
9556
+ predictRanges(requests, options) {
9557
+ const ret = wasm.preciseephemerissamplesource_predictRanges(this.__wbg_ptr, requests, options);
9558
+ if (ret[2]) {
9559
+ throw takeFromExternrefTable0(ret[1]);
9560
+ }
9561
+ return takeFromExternrefTable0(ret[0]);
9562
+ }
9563
+ /**
9564
+ * The satellites this source can interpolate (e.g. `"G01"`), ascending.
9565
+ * @returns {string[]}
9566
+ */
9567
+ get satellites() {
9568
+ const ret = wasm.preciseephemerissamplesource_satellites(this.__wbg_ptr);
9569
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
9570
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
9571
+ return v1;
9572
+ }
9573
+ }
9574
+ if (Symbol.dispose) PreciseEphemerisSampleSource.prototype[Symbol.dispose] = PreciseEphemerisSampleSource.prototype.free;
9575
+ exports.PreciseEphemerisSampleSource = PreciseEphemerisSampleSource;
9576
+
9228
9577
  /**
9229
9578
  * The per-request results of a batch observable prediction, index-aligned to
9230
9579
  * the input requests. Each request independently either produced observables or
@@ -9907,6 +10256,15 @@ class ReducedOrbitState {
9907
10256
  if (Symbol.dispose) ReducedOrbitState.prototype[Symbol.dispose] = ReducedOrbitState.prototype.free;
9908
10257
  exports.ReducedOrbitState = ReducedOrbitState;
9909
10258
 
10259
+ /**
10260
+ * @enum {0 | 1}
10261
+ */
10262
+ const RetrogradeFactor = Object.freeze({
10263
+ Prograde: 0, "0": "Prograde",
10264
+ Retrograde: 1, "1": "Retrograde",
10265
+ });
10266
+ exports.RetrogradeFactor = RetrogradeFactor;
10267
+
9910
10268
  /**
9911
10269
  * A parsed RINEX clock product with satellite clock-bias interpolation.
9912
10270
  */
@@ -10450,47 +10808,119 @@ class SatelliteVector {
10450
10808
  if (Symbol.dispose) SatelliteVector.prototype[Symbol.dispose] = SatelliteVector.prototype.free;
10451
10809
  exports.SatelliteVector = SatelliteVector;
10452
10810
 
10453
- /**
10454
- * Per-constellation single-frequency pseudorange code-selection policy. Build
10455
- * with `new SignalPolicy()` then chain `.withSystem(system, codes)`, or use
10456
- * the static `defaultFor(version)`.
10457
- */
10458
- class SignalPolicy {
10459
- static __wrap(ptr) {
10460
- const obj = Object.create(SignalPolicy.prototype);
10461
- obj.__wbg_ptr = ptr;
10462
- SignalPolicyFinalization.register(obj, obj.__wbg_ptr, obj);
10463
- return obj;
10464
- }
10811
+ class SbasCorrectionStore {
10465
10812
  __destroy_into_raw() {
10466
10813
  const ptr = this.__wbg_ptr;
10467
10814
  this.__wbg_ptr = 0;
10468
- SignalPolicyFinalization.unregister(this);
10815
+ SbasCorrectionStoreFinalization.unregister(this);
10469
10816
  return ptr;
10470
10817
  }
10471
10818
  free() {
10472
10819
  const ptr = this.__destroy_into_raw();
10473
- wasm.__wbg_signalpolicy_free(ptr, 0);
10820
+ wasm.__wbg_sbascorrectionstore_free(ptr, 0);
10474
10821
  }
10475
10822
  /**
10476
- * The core default pseudorange policy for a RINEX version.
10477
- * @param {number} version
10478
- * @returns {SignalPolicy}
10823
+ * @param {Uint8Array} bytes
10824
+ * @param {string | null | undefined} form
10825
+ * @param {string} geo
10826
+ * @param {number} week
10827
+ * @param {number} tow_s
10828
+ * @param {string | null} [time_scale]
10479
10829
  */
10480
- static defaultFor(version) {
10481
- const ret = wasm.signalpolicy_defaultFor(version);
10482
- if (ret[2]) {
10483
- throw takeFromExternrefTable0(ret[1]);
10830
+ ingest(bytes, form, geo, week, tow_s, time_scale) {
10831
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
10832
+ const len0 = WASM_VECTOR_LEN;
10833
+ var ptr1 = isLikeNone(form) ? 0 : passStringToWasm0(form, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
10834
+ var len1 = WASM_VECTOR_LEN;
10835
+ const ptr2 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
10836
+ const len2 = WASM_VECTOR_LEN;
10837
+ var ptr3 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
10838
+ var len3 = WASM_VECTOR_LEN;
10839
+ const ret = wasm.sbascorrectionstore_ingest(this.__wbg_ptr, ptr0, len0, ptr1, len1, ptr2, len2, week, tow_s, ptr3, len3);
10840
+ if (ret[1]) {
10841
+ throw takeFromExternrefTable0(ret[0]);
10484
10842
  }
10485
- return SignalPolicy.__wrap(ret[0]);
10486
10843
  }
10487
10844
  /**
10488
- * An empty policy with no constellation preferences.
10845
+ * @param {string} geo
10846
+ * @param {number} receiver_lat_rad
10847
+ * @param {number} receiver_lon_rad
10848
+ * @param {number} receiver_height_m
10849
+ * @param {number} elevation_rad
10850
+ * @param {number} azimuth_rad
10851
+ * @param {number} frequency_hz
10852
+ * @returns {number | undefined}
10489
10853
  */
10490
- constructor() {
10491
- const ret = wasm.signalpolicy_new();
10492
- this.__wbg_ptr = ret;
10493
- SignalPolicyFinalization.register(this, this.__wbg_ptr, this);
10854
+ ionoSlantDelayM(geo, receiver_lat_rad, receiver_lon_rad, receiver_height_m, elevation_rad, azimuth_rad, frequency_hz) {
10855
+ const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
10856
+ const len0 = WASM_VECTOR_LEN;
10857
+ const ret = wasm.sbascorrectionstore_ionoSlantDelayM(this.__wbg_ptr, ptr0, len0, receiver_lat_rad, receiver_lon_rad, receiver_height_m, elevation_rad, azimuth_rad, frequency_hz);
10858
+ if (ret[3]) {
10859
+ throw takeFromExternrefTable0(ret[2]);
10860
+ }
10861
+ return ret[0] === 0 ? undefined : ret[1];
10862
+ }
10863
+ constructor() {
10864
+ const ret = wasm.sbascorrectionstore_new();
10865
+ this.__wbg_ptr = ret;
10866
+ SbasCorrectionStoreFinalization.register(this, this.__wbg_ptr, this);
10867
+ return this;
10868
+ }
10869
+ /**
10870
+ * @param {number} t_j2000_s
10871
+ * @returns {string[]}
10872
+ */
10873
+ readyGeos(t_j2000_s) {
10874
+ const ret = wasm.sbascorrectionstore_readyGeos(this.__wbg_ptr, t_j2000_s);
10875
+ var v1 = getArrayJsValueFromWasm0(ret[0], ret[1]).slice();
10876
+ wasm.__wbindgen_free(ret[0], ret[1] * 4, 4);
10877
+ return v1;
10878
+ }
10879
+ }
10880
+ if (Symbol.dispose) SbasCorrectionStore.prototype[Symbol.dispose] = SbasCorrectionStore.prototype.free;
10881
+ exports.SbasCorrectionStore = SbasCorrectionStore;
10882
+
10883
+ /**
10884
+ * Per-constellation single-frequency pseudorange code-selection policy. Build
10885
+ * with `new SignalPolicy()` then chain `.withSystem(system, codes)`, or use
10886
+ * the static `defaultFor(version)`.
10887
+ */
10888
+ class SignalPolicy {
10889
+ static __wrap(ptr) {
10890
+ const obj = Object.create(SignalPolicy.prototype);
10891
+ obj.__wbg_ptr = ptr;
10892
+ SignalPolicyFinalization.register(obj, obj.__wbg_ptr, obj);
10893
+ return obj;
10894
+ }
10895
+ __destroy_into_raw() {
10896
+ const ptr = this.__wbg_ptr;
10897
+ this.__wbg_ptr = 0;
10898
+ SignalPolicyFinalization.unregister(this);
10899
+ return ptr;
10900
+ }
10901
+ free() {
10902
+ const ptr = this.__destroy_into_raw();
10903
+ wasm.__wbg_signalpolicy_free(ptr, 0);
10904
+ }
10905
+ /**
10906
+ * The core default pseudorange policy for a RINEX version.
10907
+ * @param {number} version
10908
+ * @returns {SignalPolicy}
10909
+ */
10910
+ static defaultFor(version) {
10911
+ const ret = wasm.signalpolicy_defaultFor(version);
10912
+ if (ret[2]) {
10913
+ throw takeFromExternrefTable0(ret[1]);
10914
+ }
10915
+ return SignalPolicy.__wrap(ret[0]);
10916
+ }
10917
+ /**
10918
+ * An empty policy with no constellation preferences.
10919
+ */
10920
+ constructor() {
10921
+ const ret = wasm.signalpolicy_new();
10922
+ this.__wbg_ptr = ret;
10923
+ SignalPolicyFinalization.register(this, this.__wbg_ptr, this);
10494
10924
  return this;
10495
10925
  }
10496
10926
  /**
@@ -10847,6 +11277,25 @@ class Sp3 {
10847
11277
  }
10848
11278
  return Sp3Interpolation.__wrap(ret[0]);
10849
11279
  }
11280
+ /**
11281
+ * Predict geometric ranges for many `(satellite, receiver, epoch)` requests
11282
+ * against this ephemeris in one call. `requests` is an array of
11283
+ * `{ sat, receiverEcefM, tRxJ2000S }`; returns an array of
11284
+ * `{ geometricRangeM, satClockS, transmitTimeJ2000S, satPosEcefM }`
11285
+ * index-aligned to `requests`. The same call shape works on a
11286
+ * `PreciseEphemerisSampleSource`. Delegates to the serial reference kernel
11287
+ * `sidereon_core::observables::predict_ranges`.
11288
+ * @param {any} requests
11289
+ * @param {any} options
11290
+ * @returns {any}
11291
+ */
11292
+ predictRanges(requests, options) {
11293
+ const ret = wasm.sp3_predictRanges(this.__wbg_ptr, requests, options);
11294
+ if (ret[2]) {
11295
+ throw takeFromExternrefTable0(ret[1]);
11296
+ }
11297
+ return takeFromExternrefTable0(ret[0]);
11298
+ }
10850
11299
  /**
10851
11300
  * Satellite tokens present in the product (e.g. `"G01"`), ascending.
10852
11301
  * @returns {string[]}
@@ -10891,6 +11340,21 @@ class Sp3 {
10891
11340
  }
10892
11341
  return SppBatchSolution.__wrap(ret[0]);
10893
11342
  }
11343
+ /**
11344
+ * Run the core robust-reweighted SPP driver under the RAIM/FDE exclusion loop.
11345
+ *
11346
+ * `request` is the FDE request with a `robust` object. The implementation
11347
+ * delegates to `sidereon_core::quality::spp_robust_fde_driver`.
11348
+ * @param {any} request
11349
+ * @returns {FdeSolution}
11350
+ */
11351
+ sppRobustFdeDriver(request) {
11352
+ const ret = wasm.sp3_sppRobustFdeDriver(this.__wbg_ptr, request);
11353
+ if (ret[2]) {
11354
+ throw takeFromExternrefTable0(ret[1]);
11355
+ }
11356
+ return FdeSolution.__wrap(ret[0]);
11357
+ }
10894
11358
  /**
10895
11359
  * The exact parsed state of `satellite` at record `epochIndex` (no
10896
11360
  * interpolation). Throws a `RangeError` past the last epoch and a
@@ -11213,7 +11677,7 @@ class Sp3MergeReport {
11213
11677
  }
11214
11678
  /**
11215
11679
  * Per-(epoch, satellite) agreement statistics for every accepted cell, in
11216
- * output (epoch, then satellite) order one entry per cell written to the
11680
+ * output (epoch, then satellite) order, one entry per cell written to the
11217
11681
  * merged product.
11218
11682
  * @returns {Sp3AgreementMetric[]}
11219
11683
  */
@@ -11473,6 +11937,59 @@ class Sp3State {
11473
11937
  if (Symbol.dispose) Sp3State.prototype[Symbol.dispose] = Sp3State.prototype.free;
11474
11938
  exports.Sp3State = Sp3State;
11475
11939
 
11940
+ class SpaceWeather {
11941
+ static __wrap(ptr) {
11942
+ const obj = Object.create(SpaceWeather.prototype);
11943
+ obj.__wbg_ptr = ptr;
11944
+ SpaceWeatherFinalization.register(obj, obj.__wbg_ptr, obj);
11945
+ return obj;
11946
+ }
11947
+ __destroy_into_raw() {
11948
+ const ptr = this.__wbg_ptr;
11949
+ this.__wbg_ptr = 0;
11950
+ SpaceWeatherFinalization.unregister(this);
11951
+ return ptr;
11952
+ }
11953
+ free() {
11954
+ const ptr = this.__destroy_into_raw();
11955
+ wasm.__wbg_spaceweather_free(ptr, 0);
11956
+ }
11957
+ /**
11958
+ * @returns {number}
11959
+ */
11960
+ get ap() {
11961
+ const ret = wasm.spaceweather_ap(this.__wbg_ptr);
11962
+ return ret;
11963
+ }
11964
+ /**
11965
+ * @returns {number}
11966
+ */
11967
+ get f107() {
11968
+ const ret = wasm.spaceweather_f107(this.__wbg_ptr);
11969
+ return ret;
11970
+ }
11971
+ /**
11972
+ * @returns {number}
11973
+ */
11974
+ get f107a() {
11975
+ const ret = wasm.spaceweather_f107a(this.__wbg_ptr);
11976
+ return ret;
11977
+ }
11978
+ /**
11979
+ * @param {number | null} [f107]
11980
+ * @param {number | null} [f107a]
11981
+ * @param {number | null} [ap]
11982
+ */
11983
+ constructor(f107, f107a, ap) {
11984
+ const ret = wasm.spaceweather_new(!isLikeNone(f107), isLikeNone(f107) ? 0 : f107, !isLikeNone(f107a), isLikeNone(f107a) ? 0 : f107a, !isLikeNone(ap), isLikeNone(ap) ? 0 : ap);
11985
+ this.__wbg_ptr = ret;
11986
+ SpaceWeatherFinalization.register(this, this.__wbg_ptr, this);
11987
+ return this;
11988
+ }
11989
+ }
11990
+ if (Symbol.dispose) SpaceWeather.prototype[Symbol.dispose] = SpaceWeather.prototype.free;
11991
+ exports.SpaceWeather = SpaceWeather;
11992
+
11476
11993
  /**
11477
11994
  * Canonical quiet-Sun space-weather indices for NRLMSISE-00, mirrored from the
11478
11995
  * core so a JS caller can pass moderate-activity defaults to [`atmosphereDensity`]
@@ -11991,6 +12508,83 @@ class SppSolution {
11991
12508
  if (Symbol.dispose) SppSolution.prototype[Symbol.dispose] = SppSolution.prototype.free;
11992
12509
  exports.SppSolution = SppSolution;
11993
12510
 
12511
+ class SsrCorrectionStore {
12512
+ __destroy_into_raw() {
12513
+ const ptr = this.__wbg_ptr;
12514
+ this.__wbg_ptr = 0;
12515
+ SsrCorrectionStoreFinalization.unregister(this);
12516
+ return ptr;
12517
+ }
12518
+ free() {
12519
+ const ptr = this.__destroy_into_raw();
12520
+ wasm.__wbg_ssrcorrectionstore_free(ptr, 0);
12521
+ }
12522
+ /**
12523
+ * @param {string} sat
12524
+ * @returns {any}
12525
+ */
12526
+ clock(sat) {
12527
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
12528
+ const len0 = WASM_VECTOR_LEN;
12529
+ const ret = wasm.ssrcorrectionstore_clock(this.__wbg_ptr, ptr0, len0);
12530
+ if (ret[2]) {
12531
+ throw takeFromExternrefTable0(ret[1]);
12532
+ }
12533
+ return takeFromExternrefTable0(ret[0]);
12534
+ }
12535
+ /**
12536
+ * @param {Uint8Array} bytes
12537
+ * @param {boolean | null | undefined} framed
12538
+ * @param {number} week
12539
+ * @param {number} tow_s
12540
+ * @param {string | null} [time_scale]
12541
+ */
12542
+ ingest(bytes, framed, week, tow_s, time_scale) {
12543
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
12544
+ const len0 = WASM_VECTOR_LEN;
12545
+ var ptr1 = isLikeNone(time_scale) ? 0 : passStringToWasm0(time_scale, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
12546
+ var len1 = WASM_VECTOR_LEN;
12547
+ const ret = wasm.ssrcorrectionstore_ingest(this.__wbg_ptr, ptr0, len0, isLikeNone(framed) ? 0xFFFFFF : framed ? 1 : 0, week, tow_s, ptr1, len1);
12548
+ if (ret[1]) {
12549
+ throw takeFromExternrefTable0(ret[0]);
12550
+ }
12551
+ }
12552
+ constructor() {
12553
+ const ret = wasm.ssrcorrectionstore_new();
12554
+ this.__wbg_ptr = ret;
12555
+ SsrCorrectionStoreFinalization.register(this, this.__wbg_ptr, this);
12556
+ return this;
12557
+ }
12558
+ /**
12559
+ * @param {string} sat
12560
+ * @returns {any}
12561
+ */
12562
+ orbit(sat) {
12563
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
12564
+ const len0 = WASM_VECTOR_LEN;
12565
+ const ret = wasm.ssrcorrectionstore_orbit(this.__wbg_ptr, ptr0, len0);
12566
+ if (ret[2]) {
12567
+ throw takeFromExternrefTable0(ret[1]);
12568
+ }
12569
+ return takeFromExternrefTable0(ret[0]);
12570
+ }
12571
+ /**
12572
+ * @param {string} sat
12573
+ * @returns {number | undefined}
12574
+ */
12575
+ uraIndex(sat) {
12576
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
12577
+ const len0 = WASM_VECTOR_LEN;
12578
+ const ret = wasm.ssrcorrectionstore_uraIndex(this.__wbg_ptr, ptr0, len0);
12579
+ if (ret[2]) {
12580
+ throw takeFromExternrefTable0(ret[1]);
12581
+ }
12582
+ return ret[0] === 0xFFFFFF ? undefined : ret[0];
12583
+ }
12584
+ }
12585
+ if (Symbol.dispose) SsrCorrectionStore.prototype[Symbol.dispose] = SsrCorrectionStore.prototype.free;
12586
+ exports.SsrCorrectionStore = SsrCorrectionStore;
12587
+
11994
12588
  /**
11995
12589
  * A batch of Sun and Moon positions, one per epoch: flat row-major `sun` and
11996
12590
  * `moon` `Float64Array`s of length `3 * epochCount`, in **metres**.
@@ -12922,6 +13516,42 @@ function acquire(samples, prn, options) {
12922
13516
  }
12923
13517
  exports.acquire = acquire;
12924
13518
 
13519
+ /**
13520
+ * On-sky angle in degrees between two direction vectors.
13521
+ * @param {Float64Array} a
13522
+ * @param {Float64Array} b
13523
+ * @returns {number}
13524
+ */
13525
+ function angularSeparation(a, b) {
13526
+ const ptr0 = passArrayF64ToWasm0(a, wasm.__wbindgen_malloc);
13527
+ const len0 = WASM_VECTOR_LEN;
13528
+ const ptr1 = passArrayF64ToWasm0(b, wasm.__wbindgen_malloc);
13529
+ const len1 = WASM_VECTOR_LEN;
13530
+ const ret = wasm.angularSeparation(ptr0, len0, ptr1, len1);
13531
+ if (ret[2]) {
13532
+ throw takeFromExternrefTable0(ret[1]);
13533
+ }
13534
+ return ret[0];
13535
+ }
13536
+ exports.angularSeparation = angularSeparation;
13537
+
13538
+ /**
13539
+ * On-sky angle in degrees between two `(lonDeg, latDeg)` direction pairs.
13540
+ * @param {number} a_lon_deg
13541
+ * @param {number} a_lat_deg
13542
+ * @param {number} b_lon_deg
13543
+ * @param {number} b_lat_deg
13544
+ * @returns {number}
13545
+ */
13546
+ function angularSeparationCoords(a_lon_deg, a_lat_deg, b_lon_deg, b_lat_deg) {
13547
+ const ret = wasm.angularSeparationCoords(a_lon_deg, a_lat_deg, b_lon_deg, b_lat_deg);
13548
+ if (ret[2]) {
13549
+ throw takeFromExternrefTable0(ret[1]);
13550
+ }
13551
+ return ret[0];
13552
+ }
13553
+ exports.angularSeparationCoords = angularSeparationCoords;
13554
+
12925
13555
  /**
12926
13556
  * Evaluate NRLMSISE-00 neutral-atmosphere density and temperature.
12927
13557
  *
@@ -12963,6 +13593,47 @@ function atmosphereSpaceWeatherDefaults() {
12963
13593
  }
12964
13594
  exports.atmosphereSpaceWeatherDefaults = atmosphereSpaceWeatherDefaults;
12965
13595
 
13596
+ /**
13597
+ * Solar beta angle in degrees from orbit normal and Sun vectors.
13598
+ * @param {Float64Array} orbit_normal
13599
+ * @param {Float64Array} sun
13600
+ * @returns {number}
13601
+ */
13602
+ function betaAngle(orbit_normal, sun) {
13603
+ const ptr0 = passArrayF64ToWasm0(orbit_normal, wasm.__wbindgen_malloc);
13604
+ const len0 = WASM_VECTOR_LEN;
13605
+ const ptr1 = passArrayF64ToWasm0(sun, wasm.__wbindgen_malloc);
13606
+ const len1 = WASM_VECTOR_LEN;
13607
+ const ret = wasm.betaAngle(ptr0, len0, ptr1, len1);
13608
+ if (ret[2]) {
13609
+ throw takeFromExternrefTable0(ret[1]);
13610
+ }
13611
+ return ret[0];
13612
+ }
13613
+ exports.betaAngle = betaAngle;
13614
+
13615
+ /**
13616
+ * Solar beta angle in degrees from an inertial state and Sun vector.
13617
+ * @param {Float64Array} r
13618
+ * @param {Float64Array} v
13619
+ * @param {Float64Array} sun
13620
+ * @returns {number}
13621
+ */
13622
+ function betaAngleFromState(r, v, sun) {
13623
+ const ptr0 = passArrayF64ToWasm0(r, wasm.__wbindgen_malloc);
13624
+ const len0 = WASM_VECTOR_LEN;
13625
+ const ptr1 = passArrayF64ToWasm0(v, wasm.__wbindgen_malloc);
13626
+ const len1 = WASM_VECTOR_LEN;
13627
+ const ptr2 = passArrayF64ToWasm0(sun, wasm.__wbindgen_malloc);
13628
+ const len2 = WASM_VECTOR_LEN;
13629
+ const ret = wasm.betaAngleFromState(ptr0, len0, ptr1, len1, ptr2, len2);
13630
+ if (ret[2]) {
13631
+ throw takeFromExternrefTable0(ret[1]);
13632
+ }
13633
+ return ret[0];
13634
+ }
13635
+ exports.betaAngleFromState = betaAngleFromState;
13636
+
12966
13637
  /**
12967
13638
  * Resolve integer ambiguities with a bounded lattice search.
12968
13639
  *
@@ -13102,6 +13773,34 @@ function cn0(eirp_dbw, fspl_db, receiver_gt_dbk, other_losses_db) {
13102
13773
  }
13103
13774
  exports.cn0 = cn0;
13104
13775
 
13776
+ /**
13777
+ * @param {any} coe
13778
+ * @param {RetrogradeFactor | null} [factor]
13779
+ * @returns {any}
13780
+ */
13781
+ function coe2eq(coe, factor) {
13782
+ const ret = wasm.coe2eq(coe, isLikeNone(factor) ? 2 : factor);
13783
+ if (ret[2]) {
13784
+ throw takeFromExternrefTable0(ret[1]);
13785
+ }
13786
+ return takeFromExternrefTable0(ret[0]);
13787
+ }
13788
+ exports.coe2eq = coe2eq;
13789
+
13790
+ /**
13791
+ * @param {any} coe
13792
+ * @param {RetrogradeFactor | null} [factor]
13793
+ * @returns {any}
13794
+ */
13795
+ function coe2mee(coe, factor) {
13796
+ const ret = wasm.coe2mee(coe, isLikeNone(factor) ? 2 : factor);
13797
+ if (ret[2]) {
13798
+ throw takeFromExternrefTable0(ret[1]);
13799
+ }
13800
+ return takeFromExternrefTable0(ret[0]);
13801
+ }
13802
+ exports.coe2mee = coe2mee;
13803
+
13105
13804
  /**
13106
13805
  * Convert classical orbital elements to an inertial Cartesian state.
13107
13806
  *
@@ -13283,6 +13982,37 @@ function coverageLookAngles(satellites, stations, epoch_unix_us) {
13283
13982
  }
13284
13983
  exports.coverageLookAngles = coverageLookAngles;
13285
13984
 
13985
+ /**
13986
+ * @param {any} rel
13987
+ * @param {number} n_rad_s
13988
+ * @param {number} dt_s
13989
+ * @returns {any}
13990
+ */
13991
+ function cwPropagate(rel, n_rad_s, dt_s) {
13992
+ const ret = wasm.cwPropagate(rel, n_rad_s, dt_s);
13993
+ if (ret[2]) {
13994
+ throw takeFromExternrefTable0(ret[1]);
13995
+ }
13996
+ return takeFromExternrefTable0(ret[0]);
13997
+ }
13998
+ exports.cwPropagate = cwPropagate;
13999
+
14000
+ /**
14001
+ * @param {number} n_rad_s
14002
+ * @param {number} dt_s
14003
+ * @returns {Float64Array}
14004
+ */
14005
+ function cwStm(n_rad_s, dt_s) {
14006
+ const ret = wasm.cwStm(n_rad_s, dt_s);
14007
+ if (ret[3]) {
14008
+ throw takeFromExternrefTable0(ret[2]);
14009
+ }
14010
+ var v1 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
14011
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
14012
+ return v1;
14013
+ }
14014
+ exports.cwStm = cwStm;
14015
+
13286
14016
  /**
13287
14017
  * Decode Compact RINEX (Hatanaka) bytes into plain RINEX OBS text. Throws a
13288
14018
  * `TypeError` on non-UTF-8 input and an `Error` on a decode failure.
@@ -13395,10 +14125,44 @@ function decodeRtcmMessage(body) {
13395
14125
  exports.decodeRtcmMessage = decodeRtcmMessage;
13396
14126
 
13397
14127
  /**
13398
- * Standard dual-frequency ionosphere-free carrier pair for a constellation.
13399
- * @param {GnssSystem} system
13400
- * @returns {CarrierPair | undefined}
13401
- */
14128
+ * @param {Uint8Array} bytes
14129
+ * @param {string | null} [form]
14130
+ * @returns {any}
14131
+ */
14132
+ function decodeSbasMessage(bytes, form) {
14133
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
14134
+ const len0 = WASM_VECTOR_LEN;
14135
+ var ptr1 = isLikeNone(form) ? 0 : passStringToWasm0(form, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
14136
+ var len1 = WASM_VECTOR_LEN;
14137
+ const ret = wasm.decodeSbasMessage(ptr0, len0, ptr1, len1);
14138
+ if (ret[2]) {
14139
+ throw takeFromExternrefTable0(ret[1]);
14140
+ }
14141
+ return takeFromExternrefTable0(ret[0]);
14142
+ }
14143
+ exports.decodeSbasMessage = decodeSbasMessage;
14144
+
14145
+ /**
14146
+ * @param {Uint8Array} bytes
14147
+ * @param {boolean | null} [framed]
14148
+ * @returns {any}
14149
+ */
14150
+ function decodeSsr(bytes, framed) {
14151
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
14152
+ const len0 = WASM_VECTOR_LEN;
14153
+ const ret = wasm.decodeSsr(ptr0, len0, isLikeNone(framed) ? 0xFFFFFF : framed ? 1 : 0);
14154
+ if (ret[2]) {
14155
+ throw takeFromExternrefTable0(ret[1]);
14156
+ }
14157
+ return takeFromExternrefTable0(ret[0]);
14158
+ }
14159
+ exports.decodeSsr = decodeSsr;
14160
+
14161
+ /**
14162
+ * Standard dual-frequency ionosphere-free carrier pair for a constellation.
14163
+ * @param {GnssSystem} system
14164
+ * @returns {CarrierPair | undefined}
14165
+ */
13402
14166
  function defaultPair(system) {
13403
14167
  const ret = wasm.defaultPair(system);
13404
14168
  return ret === 0 ? undefined : CarrierPair.__wrap(ret);
@@ -13624,6 +14388,34 @@ function earthAngularRadius(satellite_position_km) {
13624
14388
  }
13625
14389
  exports.earthAngularRadius = earthAngularRadius;
13626
14390
 
14391
+ /**
14392
+ * @param {number} eccentric_anomaly_rad
14393
+ * @param {number} eccentricity
14394
+ * @returns {number}
14395
+ */
14396
+ function eccentricToMean(eccentric_anomaly_rad, eccentricity) {
14397
+ const ret = wasm.eccentricToMean(eccentric_anomaly_rad, eccentricity);
14398
+ if (ret[2]) {
14399
+ throw takeFromExternrefTable0(ret[1]);
14400
+ }
14401
+ return ret[0];
14402
+ }
14403
+ exports.eccentricToMean = eccentricToMean;
14404
+
14405
+ /**
14406
+ * @param {number} eccentric_anomaly_rad
14407
+ * @param {number} eccentricity
14408
+ * @returns {number}
14409
+ */
14410
+ function eccentricToTrue(eccentric_anomaly_rad, eccentricity) {
14411
+ const ret = wasm.eccentricToTrue(eccentric_anomaly_rad, eccentricity);
14412
+ if (ret[2]) {
14413
+ throw takeFromExternrefTable0(ret[1]);
14414
+ }
14415
+ return ret[0];
14416
+ }
14417
+ exports.eccentricToTrue = eccentricToTrue;
14418
+
13627
14419
  /**
13628
14420
  * Convert a batch of ITRS (ECEF) positions to geodetic coordinates.
13629
14421
  *
@@ -13876,6 +14668,33 @@ function encounterPlaneCovariance(frame, covariance_km2) {
13876
14668
  }
13877
14669
  exports.encounterPlaneCovariance = encounterPlaneCovariance;
13878
14670
 
14671
+ /**
14672
+ * @param {any} eq
14673
+ * @returns {any}
14674
+ */
14675
+ function eq2coe(eq) {
14676
+ const ret = wasm.eq2coe(eq);
14677
+ if (ret[2]) {
14678
+ throw takeFromExternrefTable0(ret[1]);
14679
+ }
14680
+ return takeFromExternrefTable0(ret[0]);
14681
+ }
14682
+ exports.eq2coe = eq2coe;
14683
+
14684
+ /**
14685
+ * @param {any} eq
14686
+ * @param {number} mu_km3_s2
14687
+ * @returns {any}
14688
+ */
14689
+ function eq2rv(eq, mu_km3_s2) {
14690
+ const ret = wasm.eq2rv(eq, mu_km3_s2);
14691
+ if (ret[2]) {
14692
+ throw takeFromExternrefTable0(ret[1]);
14693
+ }
14694
+ return takeFromExternrefTable0(ret[0]);
14695
+ }
14696
+ exports.eq2rv = eq2rv;
14697
+
13879
14698
  /**
13880
14699
  * Confidence ellipse from an arbitrary 2x2 covariance block.
13881
14700
  *
@@ -13899,6 +14718,21 @@ function errorEllipse2(covariance, confidence) {
13899
14718
  }
13900
14719
  exports.errorEllipse2 = errorEllipse2;
13901
14720
 
14721
+ /**
14722
+ * @param {DragForce} drag
14723
+ * @param {any} request
14724
+ * @returns {any}
14725
+ */
14726
+ function estimateDecay(drag, request) {
14727
+ _assertClass(drag, DragForce);
14728
+ const ret = wasm.estimateDecay(drag.__wbg_ptr, request);
14729
+ if (ret[2]) {
14730
+ throw takeFromExternrefTable0(ret[1]);
14731
+ }
14732
+ return takeFromExternrefTable0(ret[0]);
14733
+ }
14734
+ exports.estimateDecay = estimateDecay;
14735
+
13902
14736
  /**
13903
14737
  * Find Moon elevation threshold crossings (moonrise / moonset) over a UTC
13904
14738
  * window.
@@ -14262,7 +15096,7 @@ exports.fromCelestrakJson = fromCelestrakJson;
14262
15096
  * skipping (rather than throwing on) entries that do not resolve.
14263
15097
  *
14264
15098
  * The lenient sibling of [`fromCelestrakJson`]: feed it a raw combined CelesTrak
14265
- * `gnss` feed and it returns `{ records, skipped }` `records` is the `Record[]`
15099
+ * `gnss` feed and it returns `{ records, skipped }`. `records` is the `Record[]`
14266
15100
  * for `system` (the same shape `fromCelestrakJson` returns, sorted by
14267
15101
  * `(system, prn)`), and `skipped` is a `SkippedOmm[]` of the entries whose
14268
15102
  * `OBJECT_NAME` did not resolve to a PRN for `system` (another constellation's
@@ -14610,7 +15444,7 @@ function gnssSp3Id(system, prn) {
14610
15444
  exports.gnssSp3Id = gnssSp3Id;
14611
15445
 
14612
15446
  /**
14613
- * Stable lower-case display label for a constellation, e.g. `"gps"`.
15447
+ * Canonical core display label for a constellation, e.g. `"GPS"`.
14614
15448
  * @param {GnssSystem} system
14615
15449
  * @returns {string}
14616
15450
  */
@@ -15032,7 +15866,7 @@ exports.kurtosis = kurtosis;
15032
15866
  * `covariance` is its `n x n` covariance as a row-major `number[][]`, and
15033
15867
  * `ratioThreshold` is the ratio-test acceptance threshold (RTKLIB's default is
15034
15868
  * `3.0`). Finds the true integer-least-squares optimum and runner-up for any
15035
- * positive-definite covariance no search box, no combinatorial blow-up.
15869
+ * positive-definite covariance. No search box, no combinatorial blow-up.
15036
15870
  * Returns an `IlsResult`. Throws a `TypeError` on a malformed shape, a
15037
15871
  * `RangeError` on a non-finite or out-of-domain input, and an `Error` on a
15038
15872
  * singular covariance or a non-converging search.
@@ -15316,6 +16150,68 @@ function loadAntex(bytes) {
15316
16150
  }
15317
16151
  exports.loadAntex = loadAntex;
15318
16152
 
16153
+ /**
16154
+ * @param {Uint8Array} bytes
16155
+ * @returns {BiasSet}
16156
+ */
16157
+ function loadBiasSinex(bytes) {
16158
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
16159
+ const len0 = WASM_VECTOR_LEN;
16160
+ const ret = wasm.loadBiasSinex(ptr0, len0);
16161
+ if (ret[2]) {
16162
+ throw takeFromExternrefTable0(ret[1]);
16163
+ }
16164
+ return BiasSet.__wrap(ret[0]);
16165
+ }
16166
+ exports.loadBiasSinex = loadBiasSinex;
16167
+
16168
+ /**
16169
+ * @param {Uint8Array} bytes
16170
+ * @returns {BiasSet}
16171
+ */
16172
+ function loadBiasSinexLossy(bytes) {
16173
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
16174
+ const len0 = WASM_VECTOR_LEN;
16175
+ const ret = wasm.loadBiasSinexLossy(ptr0, len0);
16176
+ if (ret[2]) {
16177
+ throw takeFromExternrefTable0(ret[1]);
16178
+ }
16179
+ return BiasSet.__wrap(ret[0]);
16180
+ }
16181
+ exports.loadBiasSinexLossy = loadBiasSinexLossy;
16182
+
16183
+ /**
16184
+ * @param {Uint8Array} bytes
16185
+ * @param {any} options
16186
+ * @returns {BiasSet}
16187
+ */
16188
+ function loadCodeDcb(bytes, options) {
16189
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
16190
+ const len0 = WASM_VECTOR_LEN;
16191
+ const ret = wasm.loadCodeDcb(ptr0, len0, options);
16192
+ if (ret[2]) {
16193
+ throw takeFromExternrefTable0(ret[1]);
16194
+ }
16195
+ return BiasSet.__wrap(ret[0]);
16196
+ }
16197
+ exports.loadCodeDcb = loadCodeDcb;
16198
+
16199
+ /**
16200
+ * @param {Uint8Array} bytes
16201
+ * @param {any} options
16202
+ * @returns {BiasSet}
16203
+ */
16204
+ function loadCodeDcbLossy(bytes, options) {
16205
+ const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_malloc);
16206
+ const len0 = WASM_VECTOR_LEN;
16207
+ const ret = wasm.loadCodeDcbLossy(ptr0, len0, options);
16208
+ if (ret[2]) {
16209
+ throw takeFromExternrefTable0(ret[1]);
16210
+ }
16211
+ return BiasSet.__wrap(ret[0]);
16212
+ }
16213
+ exports.loadCodeDcbLossy = loadCodeDcbLossy;
16214
+
15319
16215
  /**
15320
16216
  * Alias of [`decodeCrinex`] for callers that read a file as bytes.
15321
16217
  * @param {Uint8Array} bytes
@@ -15441,6 +16337,146 @@ function loadSp3(bytes) {
15441
16337
  }
15442
16338
  exports.loadSp3 = loadSp3;
15443
16339
 
16340
+ /**
16341
+ * @param {bigint} start_unix_us
16342
+ * @param {bigint} end_unix_us
16343
+ * @param {number} step_s
16344
+ * @param {number} tolerance_s
16345
+ * @returns {any}
16346
+ */
16347
+ function lunarSolarEclipses(start_unix_us, end_unix_us, step_s, tolerance_s) {
16348
+ const ret = wasm.lunarSolarEclipses(start_unix_us, end_unix_us, step_s, tolerance_s);
16349
+ if (ret[2]) {
16350
+ throw takeFromExternrefTable0(ret[1]);
16351
+ }
16352
+ return takeFromExternrefTable0(ret[0]);
16353
+ }
16354
+ exports.lunarSolarEclipses = lunarSolarEclipses;
16355
+
16356
+ /**
16357
+ * @param {Spk} spk
16358
+ * @param {bigint} start_unix_us
16359
+ * @param {bigint} end_unix_us
16360
+ * @param {number} step_s
16361
+ * @param {number} tolerance_s
16362
+ * @returns {any}
16363
+ */
16364
+ function lunarSolarEclipsesSpk(spk, start_unix_us, end_unix_us, step_s, tolerance_s) {
16365
+ _assertClass(spk, Spk);
16366
+ const ret = wasm.lunarSolarEclipsesSpk(spk.__wbg_ptr, start_unix_us, end_unix_us, step_s, tolerance_s);
16367
+ if (ret[2]) {
16368
+ throw takeFromExternrefTable0(ret[1]);
16369
+ }
16370
+ return takeFromExternrefTable0(ret[0]);
16371
+ }
16372
+ exports.lunarSolarEclipsesSpk = lunarSolarEclipsesSpk;
16373
+
16374
+ /**
16375
+ * @param {Float64Array} position_km
16376
+ * @param {Float64Array} velocity_km_s
16377
+ * @returns {Float64Array}
16378
+ */
16379
+ function lvlhRotation(position_km, velocity_km_s) {
16380
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
16381
+ const len0 = WASM_VECTOR_LEN;
16382
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
16383
+ const len1 = WASM_VECTOR_LEN;
16384
+ const ret = wasm.lvlhRotation(ptr0, len0, ptr1, len1);
16385
+ if (ret[3]) {
16386
+ throw takeFromExternrefTable0(ret[2]);
16387
+ }
16388
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
16389
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
16390
+ return v3;
16391
+ }
16392
+ exports.lvlhRotation = lvlhRotation;
16393
+
16394
+ /**
16395
+ * @param {number} radius_km
16396
+ * @returns {number}
16397
+ */
16398
+ function meanMotionCircular(radius_km) {
16399
+ const ret = wasm.meanMotionCircular(radius_km);
16400
+ if (ret[2]) {
16401
+ throw takeFromExternrefTable0(ret[1]);
16402
+ }
16403
+ return ret[0];
16404
+ }
16405
+ exports.meanMotionCircular = meanMotionCircular;
16406
+
16407
+ /**
16408
+ * @param {Float64Array} position_km
16409
+ * @param {Float64Array} velocity_km_s
16410
+ * @returns {number}
16411
+ */
16412
+ function meanMotionFromState(position_km, velocity_km_s) {
16413
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
16414
+ const len0 = WASM_VECTOR_LEN;
16415
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
16416
+ const len1 = WASM_VECTOR_LEN;
16417
+ const ret = wasm.meanMotionFromState(ptr0, len0, ptr1, len1);
16418
+ if (ret[2]) {
16419
+ throw takeFromExternrefTable0(ret[1]);
16420
+ }
16421
+ return ret[0];
16422
+ }
16423
+ exports.meanMotionFromState = meanMotionFromState;
16424
+
16425
+ /**
16426
+ * @param {number} mean_anomaly_rad
16427
+ * @param {number} eccentricity
16428
+ * @returns {number}
16429
+ */
16430
+ function meanToEccentric(mean_anomaly_rad, eccentricity) {
16431
+ const ret = wasm.meanToEccentric(mean_anomaly_rad, eccentricity);
16432
+ if (ret[2]) {
16433
+ throw takeFromExternrefTable0(ret[1]);
16434
+ }
16435
+ return ret[0];
16436
+ }
16437
+ exports.meanToEccentric = meanToEccentric;
16438
+
16439
+ /**
16440
+ * @param {number} mean_anomaly_rad
16441
+ * @param {number} eccentricity
16442
+ * @returns {number}
16443
+ */
16444
+ function meanToTrue(mean_anomaly_rad, eccentricity) {
16445
+ const ret = wasm.meanToTrue(mean_anomaly_rad, eccentricity);
16446
+ if (ret[2]) {
16447
+ throw takeFromExternrefTable0(ret[1]);
16448
+ }
16449
+ return ret[0];
16450
+ }
16451
+ exports.meanToTrue = meanToTrue;
16452
+
16453
+ /**
16454
+ * @param {any} mee
16455
+ * @returns {any}
16456
+ */
16457
+ function mee2coe(mee) {
16458
+ const ret = wasm.mee2coe(mee);
16459
+ if (ret[2]) {
16460
+ throw takeFromExternrefTable0(ret[1]);
16461
+ }
16462
+ return takeFromExternrefTable0(ret[0]);
16463
+ }
16464
+ exports.mee2coe = mee2coe;
16465
+
16466
+ /**
16467
+ * @param {any} mee
16468
+ * @param {number} mu_km3_s2
16469
+ * @returns {any}
16470
+ */
16471
+ function mee2rv(mee, mu_km3_s2) {
16472
+ const ret = wasm.mee2rv(mee, mu_km3_s2);
16473
+ if (ret[2]) {
16474
+ throw takeFromExternrefTable0(ret[1]);
16475
+ }
16476
+ return takeFromExternrefTable0(ret[0]);
16477
+ }
16478
+ exports.mee2rv = mee2rv;
16479
+
15444
16480
  /**
15445
16481
  * Melbourne-Wubbena combination, metres.
15446
16482
  * @param {number} phi1_cycles
@@ -15503,6 +16539,48 @@ function mergeSp3(sources, options) {
15503
16539
  }
15504
16540
  exports.mergeSp3 = mergeSp3;
15505
16541
 
16542
+ /**
16543
+ * @param {string} body
16544
+ * @param {any} station
16545
+ * @param {bigint} start_unix_us
16546
+ * @param {bigint} end_unix_us
16547
+ * @param {number} step_s
16548
+ * @param {number} tolerance_s
16549
+ * @returns {any}
16550
+ */
16551
+ function meridianTransits(body, station, start_unix_us, end_unix_us, step_s, tolerance_s) {
16552
+ const ptr0 = passStringToWasm0(body, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
16553
+ const len0 = WASM_VECTOR_LEN;
16554
+ const ret = wasm.meridianTransits(ptr0, len0, station, start_unix_us, end_unix_us, step_s, tolerance_s);
16555
+ if (ret[2]) {
16556
+ throw takeFromExternrefTable0(ret[1]);
16557
+ }
16558
+ return takeFromExternrefTable0(ret[0]);
16559
+ }
16560
+ exports.meridianTransits = meridianTransits;
16561
+
16562
+ /**
16563
+ * @param {Spk} spk
16564
+ * @param {string} body
16565
+ * @param {any} station
16566
+ * @param {bigint} start_unix_us
16567
+ * @param {bigint} end_unix_us
16568
+ * @param {number} step_s
16569
+ * @param {number} tolerance_s
16570
+ * @returns {any}
16571
+ */
16572
+ function meridianTransitsSpk(spk, body, station, start_unix_us, end_unix_us, step_s, tolerance_s) {
16573
+ _assertClass(spk, Spk);
16574
+ const ptr0 = passStringToWasm0(body, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
16575
+ const len0 = WASM_VECTOR_LEN;
16576
+ const ret = wasm.meridianTransitsSpk(spk.__wbg_ptr, ptr0, len0, station, start_unix_us, end_unix_us, step_s, tolerance_s);
16577
+ if (ret[2]) {
16578
+ throw takeFromExternrefTable0(ret[1]);
16579
+ }
16580
+ return takeFromExternrefTable0(ret[0]);
16581
+ }
16582
+ exports.meridianTransitsSpk = meridianTransitsSpk;
16583
+
15506
16584
  /**
15507
16585
  * Mean, variance, skewness, and excess kurtosis of a residual set in one pass.
15508
16586
  *
@@ -15609,6 +16687,40 @@ function moonIllumination(latitude_deg, longitude_deg, altitude_km, epoch_unix_u
15609
16687
  }
15610
16688
  exports.moonIllumination = moonIllumination;
15611
16689
 
16690
+ /**
16691
+ * @param {bigint} start_unix_us
16692
+ * @param {bigint} end_unix_us
16693
+ * @param {number} step_s
16694
+ * @param {number} tolerance_s
16695
+ * @returns {any}
16696
+ */
16697
+ function moonPhases(start_unix_us, end_unix_us, step_s, tolerance_s) {
16698
+ const ret = wasm.moonPhases(start_unix_us, end_unix_us, step_s, tolerance_s);
16699
+ if (ret[2]) {
16700
+ throw takeFromExternrefTable0(ret[1]);
16701
+ }
16702
+ return takeFromExternrefTable0(ret[0]);
16703
+ }
16704
+ exports.moonPhases = moonPhases;
16705
+
16706
+ /**
16707
+ * @param {Spk} spk
16708
+ * @param {bigint} start_unix_us
16709
+ * @param {bigint} end_unix_us
16710
+ * @param {number} step_s
16711
+ * @param {number} tolerance_s
16712
+ * @returns {any}
16713
+ */
16714
+ function moonPhasesSpk(spk, start_unix_us, end_unix_us, step_s, tolerance_s) {
16715
+ _assertClass(spk, Spk);
16716
+ const ret = wasm.moonPhasesSpk(spk.__wbg_ptr, start_unix_us, end_unix_us, step_s, tolerance_s);
16717
+ if (ret[2]) {
16718
+ throw takeFromExternrefTable0(ret[1]);
16719
+ }
16720
+ return takeFromExternrefTable0(ret[0]);
16721
+ }
16722
+ exports.moonPhasesSpk = moonPhasesSpk;
16723
+
15612
16724
  /**
15613
16725
  * Narrow-lane code combination, metres.
15614
16726
  * @param {number} p1_m
@@ -15805,6 +16917,67 @@ function observationKindLabel(kind) {
15805
16917
  }
15806
16918
  exports.observationKindLabel = observationKindLabel;
15807
16919
 
16920
+ /**
16921
+ * Observe `"sun"` or `"moon"` from a geodetic station at a UTC unix microsecond epoch.
16922
+ * @param {any} station
16923
+ * @param {bigint} epoch_unix_us
16924
+ * @param {string} target
16925
+ * @param {any} options
16926
+ * @returns {any}
16927
+ */
16928
+ function observe(station, epoch_unix_us, target, options) {
16929
+ const ptr0 = passStringToWasm0(target, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
16930
+ const len0 = WASM_VECTOR_LEN;
16931
+ const ret = wasm.observe(station, epoch_unix_us, ptr0, len0, options);
16932
+ if (ret[2]) {
16933
+ throw takeFromExternrefTable0(ret[1]);
16934
+ }
16935
+ return takeFromExternrefTable0(ret[0]);
16936
+ }
16937
+ exports.observe = observe;
16938
+
16939
+ /**
16940
+ * Observe a caller-supplied SSB-centered target state using an SPK for Earth and Sun.
16941
+ * @param {any} station
16942
+ * @param {bigint} epoch_unix_us
16943
+ * @param {Spk} spk
16944
+ * @param {Float64Array} position_km
16945
+ * @param {Float64Array} velocity_km_s
16946
+ * @param {any} options
16947
+ * @returns {any}
16948
+ */
16949
+ function observeBarycentricState(station, epoch_unix_us, spk, position_km, velocity_km_s, options) {
16950
+ _assertClass(spk, Spk);
16951
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
16952
+ const len0 = WASM_VECTOR_LEN;
16953
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
16954
+ const len1 = WASM_VECTOR_LEN;
16955
+ const ret = wasm.observeBarycentricState(station, epoch_unix_us, spk.__wbg_ptr, ptr0, len0, ptr1, len1, options);
16956
+ if (ret[2]) {
16957
+ throw takeFromExternrefTable0(ret[1]);
16958
+ }
16959
+ return takeFromExternrefTable0(ret[0]);
16960
+ }
16961
+ exports.observeBarycentricState = observeBarycentricState;
16962
+
16963
+ /**
16964
+ * Observe an SPK target body by NAIF id using default full-chain options.
16965
+ * @param {any} station
16966
+ * @param {bigint} epoch_unix_us
16967
+ * @param {Spk} spk
16968
+ * @param {number} naif_id
16969
+ * @returns {any}
16970
+ */
16971
+ function observeSpkBody(station, epoch_unix_us, spk, naif_id) {
16972
+ _assertClass(spk, Spk);
16973
+ const ret = wasm.observeSpkBody(station, epoch_unix_us, spk.__wbg_ptr, naif_id);
16974
+ if (ret[2]) {
16975
+ throw takeFromExternrefTable0(ret[1]);
16976
+ }
16977
+ return takeFromExternrefTable0(ret[0]);
16978
+ }
16979
+ exports.observeSpkBody = observeSpkBody;
16980
+
15808
16981
  /**
15809
16982
  * Ocean tide loading displacement of an ITRF station, metres (ECEF).
15810
16983
  *
@@ -16242,6 +17415,47 @@ function phaseMeters(phi_cycles, f_hz) {
16242
17415
  }
16243
17416
  exports.phaseMeters = phaseMeters;
16244
17417
 
17418
+ /**
17419
+ * @param {Spk} spk
17420
+ * @param {string} planet
17421
+ * @param {string} kind
17422
+ * @param {bigint} start_unix_us
17423
+ * @param {bigint} end_unix_us
17424
+ * @param {number} step_s
17425
+ * @param {number} tolerance_s
17426
+ * @returns {any}
17427
+ */
17428
+ function planetaryEvents(spk, planet, kind, start_unix_us, end_unix_us, step_s, tolerance_s) {
17429
+ _assertClass(spk, Spk);
17430
+ const ptr0 = passStringToWasm0(planet, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
17431
+ const len0 = WASM_VECTOR_LEN;
17432
+ const ptr1 = passStringToWasm0(kind, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
17433
+ const len1 = WASM_VECTOR_LEN;
17434
+ const ret = wasm.planetaryEvents(spk.__wbg_ptr, ptr0, len0, ptr1, len1, start_unix_us, end_unix_us, step_s, tolerance_s);
17435
+ if (ret[2]) {
17436
+ throw takeFromExternrefTable0(ret[1]);
17437
+ }
17438
+ return takeFromExternrefTable0(ret[0]);
17439
+ }
17440
+ exports.planetaryEvents = planetaryEvents;
17441
+
17442
+ /**
17443
+ * Position angle in degrees from North through East.
17444
+ * @param {number} from_lon_deg
17445
+ * @param {number} from_lat_deg
17446
+ * @param {number} to_lon_deg
17447
+ * @param {number} to_lat_deg
17448
+ * @returns {number}
17449
+ */
17450
+ function positionAngle(from_lon_deg, from_lat_deg, to_lon_deg, to_lat_deg) {
17451
+ const ret = wasm.positionAngle(from_lon_deg, from_lat_deg, to_lon_deg, to_lat_deg);
17452
+ if (ret[2]) {
17453
+ throw takeFromExternrefTable0(ret[1]);
17454
+ }
17455
+ return ret[0];
17456
+ }
17457
+ exports.positionAngle = positionAngle;
17458
+
16245
17459
  /**
16246
17460
  * Precompute static PPP correction tables for a precise-orbit arc.
16247
17461
  *
@@ -16260,17 +17474,61 @@ exports.phaseMeters = phaseMeters;
16260
17474
  * @param {any} options
16261
17475
  * @returns {any}
16262
17476
  */
16263
- function pppCorrections(sp3, epochs, receiver_ecef_m, options) {
17477
+ function pppCorrections(sp3, epochs, receiver_ecef_m, options) {
17478
+ _assertClass(sp3, Sp3);
17479
+ const ptr0 = passArrayF64ToWasm0(receiver_ecef_m, wasm.__wbindgen_malloc);
17480
+ const len0 = WASM_VECTOR_LEN;
17481
+ const ret = wasm.pppCorrections(sp3.__wbg_ptr, epochs, ptr0, len0, options);
17482
+ if (ret[2]) {
17483
+ throw takeFromExternrefTable0(ret[1]);
17484
+ }
17485
+ return takeFromExternrefTable0(ret[0]);
17486
+ }
17487
+ exports.pppCorrections = pppCorrections;
17488
+
17489
+ /**
17490
+ * @param {Sp3} sp3
17491
+ * @param {any} epochs
17492
+ * @param {Float64Array} receiver_ecef_m
17493
+ * @param {any} options
17494
+ * @param {BiasSet} bias_set
17495
+ * @param {any} code_bias
17496
+ * @returns {any}
17497
+ */
17498
+ function pppCorrectionsWithCodeBias(sp3, epochs, receiver_ecef_m, options, bias_set, code_bias) {
16264
17499
  _assertClass(sp3, Sp3);
16265
17500
  const ptr0 = passArrayF64ToWasm0(receiver_ecef_m, wasm.__wbindgen_malloc);
16266
17501
  const len0 = WASM_VECTOR_LEN;
16267
- const ret = wasm.pppCorrections(sp3.__wbg_ptr, epochs, ptr0, len0, options);
17502
+ _assertClass(bias_set, BiasSet);
17503
+ const ret = wasm.pppCorrectionsWithCodeBias(sp3.__wbg_ptr, epochs, ptr0, len0, options, bias_set.__wbg_ptr, code_bias);
16268
17504
  if (ret[2]) {
16269
17505
  throw takeFromExternrefTable0(ret[1]);
16270
17506
  }
16271
17507
  return takeFromExternrefTable0(ret[0]);
16272
17508
  }
16273
- exports.pppCorrections = pppCorrections;
17509
+ exports.pppCorrectionsWithCodeBias = pppCorrectionsWithCodeBias;
17510
+
17511
+ /**
17512
+ * Build a sample-backed precise-ephemeris source from an array of samples.
17513
+ *
17514
+ * `samples` is an array of `{ sat, epoch, positionEcefM, clockS?, clockEvent? }`
17515
+ * objects (see the sample field docs). Samples are grouped by satellite in their
17516
+ * supplied order; each satellite needs at least two strictly time-increasing
17517
+ * samples. Throws a `TypeError` for a malformed object or bad satellite token
17518
+ * and a `RangeError` for a non-finite epoch or a source validation failure
17519
+ * (empty input, a single-sample satellite, non-monotonic epochs, a non-finite
17520
+ * sample). Delegates to `sidereon_core::sp3::PreciseEphemerisSamples::from_samples`.
17521
+ * @param {any} samples
17522
+ * @returns {PreciseEphemerisSampleSource}
17523
+ */
17524
+ function preciseEphemerisSamplesFromSamples(samples) {
17525
+ const ret = wasm.preciseEphemerisSamplesFromSamples(samples);
17526
+ if (ret[2]) {
17527
+ throw takeFromExternrefTable0(ret[1]);
17528
+ }
17529
+ return PreciseEphemerisSampleSource.__wrap(ret[0]);
17530
+ }
17531
+ exports.preciseEphemerisSamplesFromSamples = preciseEphemerisSamplesFromSamples;
16274
17532
 
16275
17533
  /**
16276
17534
  * Predict observables for many `(satellite, receiver, epoch)` requests from a
@@ -16389,6 +17647,21 @@ function propagateBatch(satellites, epochs_unix_us) {
16389
17647
  }
16390
17648
  exports.propagateBatch = propagateBatch;
16391
17649
 
17650
+ /**
17651
+ * @param {any} coe
17652
+ * @param {number} mu_km3_s2
17653
+ * @param {number} dt_s
17654
+ * @returns {any}
17655
+ */
17656
+ function propagateKepler(coe, mu_km3_s2, dt_s) {
17657
+ const ret = wasm.propagateKepler(coe, mu_km3_s2, dt_s);
17658
+ if (ret[2]) {
17659
+ throw takeFromExternrefTable0(ret[1]);
17660
+ }
17661
+ return takeFromExternrefTable0(ret[0]);
17662
+ }
17663
+ exports.propagateKepler = propagateKepler;
17664
+
16392
17665
  /**
16393
17666
  * Numerically propagate an ECI Cartesian state and sample it at a grid of
16394
17667
  * epochs.
@@ -16482,6 +17755,20 @@ function rangeRateToDoppler(range_rate_m_s, carrier_hz) {
16482
17755
  }
16483
17756
  exports.rangeRateToDoppler = rangeRateToDoppler;
16484
17757
 
17758
+ /**
17759
+ * @param {any} chief
17760
+ * @param {any} deputy
17761
+ * @returns {any}
17762
+ */
17763
+ function relativeState(chief, deputy) {
17764
+ const ret = wasm.relativeState(chief, deputy);
17765
+ if (ret[2]) {
17766
+ throw takeFromExternrefTable0(ret[1]);
17767
+ }
17768
+ return takeFromExternrefTable0(ret[0]);
17769
+ }
17770
+ exports.relativeState = relativeState;
17771
+
16485
17772
  /**
16486
17773
  * Build a sampled GPS C/A code replica, an `Int8Array`.
16487
17774
  * @param {bigint} prn
@@ -16499,6 +17786,26 @@ function replica(prn, options) {
16499
17786
  }
16500
17787
  exports.replica = replica;
16501
17788
 
17789
+ /**
17790
+ * @param {Float64Array} position_km
17791
+ * @param {Float64Array} velocity_km_s
17792
+ * @returns {Float64Array}
17793
+ */
17794
+ function ricRotation(position_km, velocity_km_s) {
17795
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
17796
+ const len0 = WASM_VECTOR_LEN;
17797
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
17798
+ const len1 = WASM_VECTOR_LEN;
17799
+ const ret = wasm.ricRotation(ptr0, len0, ptr1, len1);
17800
+ if (ret[3]) {
17801
+ throw takeFromExternrefTable0(ret[2]);
17802
+ }
17803
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
17804
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
17805
+ return v3;
17806
+ }
17807
+ exports.ricRotation = ricRotation;
17808
+
16502
17809
  /**
16503
17810
  * RINEX observation band frequency in hertz for a system and band digit.
16504
17811
  * @param {GnssSystem} system
@@ -16535,6 +17842,26 @@ function rinexBandWavelengthM(system, band, glonass_channel) {
16535
17842
  }
16536
17843
  exports.rinexBandWavelengthM = rinexBandWavelengthM;
16537
17844
 
17845
+ /**
17846
+ * @param {Float64Array} position_km
17847
+ * @param {Float64Array} velocity_km_s
17848
+ * @returns {Float64Array}
17849
+ */
17850
+ function rswRotation(position_km, velocity_km_s) {
17851
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
17852
+ const len0 = WASM_VECTOR_LEN;
17853
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
17854
+ const len1 = WASM_VECTOR_LEN;
17855
+ const ret = wasm.rswRotation(ptr0, len0, ptr1, len1);
17856
+ if (ret[3]) {
17857
+ throw takeFromExternrefTable0(ret[2]);
17858
+ }
17859
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
17860
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
17861
+ return v3;
17862
+ }
17863
+ exports.rswRotation = rswRotation;
17864
+
16538
17865
  /**
16539
17866
  * Read the 12-bit RTCM message number from a message body.
16540
17867
  *
@@ -16554,6 +17881,26 @@ function rtcmMessageNumber(body) {
16554
17881
  }
16555
17882
  exports.rtcmMessageNumber = rtcmMessageNumber;
16556
17883
 
17884
+ /**
17885
+ * @param {Float64Array} position_km
17886
+ * @param {Float64Array} velocity_km_s
17887
+ * @returns {Float64Array}
17888
+ */
17889
+ function rtnRotation(position_km, velocity_km_s) {
17890
+ const ptr0 = passArrayF64ToWasm0(position_km, wasm.__wbindgen_malloc);
17891
+ const len0 = WASM_VECTOR_LEN;
17892
+ const ptr1 = passArrayF64ToWasm0(velocity_km_s, wasm.__wbindgen_malloc);
17893
+ const len1 = WASM_VECTOR_LEN;
17894
+ const ret = wasm.rtnRotation(ptr0, len0, ptr1, len1);
17895
+ if (ret[3]) {
17896
+ throw takeFromExternrefTable0(ret[2]);
17897
+ }
17898
+ var v3 = getArrayF64FromWasm0(ret[0], ret[1]).slice();
17899
+ wasm.__wbindgen_free(ret[0], ret[1] * 8, 8);
17900
+ return v3;
17901
+ }
17902
+ exports.rtnRotation = rtnRotation;
17903
+
16557
17904
  /**
16558
17905
  * Transform a 3x3 RTN covariance (flat row-major length 9) to ECI for the given
16559
17906
  * orbit state. Returns a flat row-major length-9 `Float64Array`.
@@ -16606,6 +17953,86 @@ function rv2coe(r, v, mu) {
16606
17953
  }
16607
17954
  exports.rv2coe = rv2coe;
16608
17955
 
17956
+ /**
17957
+ * @param {Float64Array} r
17958
+ * @param {Float64Array} v
17959
+ * @param {number} mu_km3_s2
17960
+ * @param {RetrogradeFactor | null} [factor]
17961
+ * @returns {any}
17962
+ */
17963
+ function rv2eq(r, v, mu_km3_s2, factor) {
17964
+ const ptr0 = passArrayF64ToWasm0(r, wasm.__wbindgen_malloc);
17965
+ const len0 = WASM_VECTOR_LEN;
17966
+ const ptr1 = passArrayF64ToWasm0(v, wasm.__wbindgen_malloc);
17967
+ const len1 = WASM_VECTOR_LEN;
17968
+ const ret = wasm.rv2eq(ptr0, len0, ptr1, len1, mu_km3_s2, isLikeNone(factor) ? 2 : factor);
17969
+ if (ret[2]) {
17970
+ throw takeFromExternrefTable0(ret[1]);
17971
+ }
17972
+ return takeFromExternrefTable0(ret[0]);
17973
+ }
17974
+ exports.rv2eq = rv2eq;
17975
+
17976
+ /**
17977
+ * @param {Float64Array} r
17978
+ * @param {Float64Array} v
17979
+ * @param {number} mu_km3_s2
17980
+ * @param {RetrogradeFactor | null} [factor]
17981
+ * @returns {any}
17982
+ */
17983
+ function rv2mee(r, v, mu_km3_s2, factor) {
17984
+ const ptr0 = passArrayF64ToWasm0(r, wasm.__wbindgen_malloc);
17985
+ const len0 = WASM_VECTOR_LEN;
17986
+ const ptr1 = passArrayF64ToWasm0(v, wasm.__wbindgen_malloc);
17987
+ const len1 = WASM_VECTOR_LEN;
17988
+ const ret = wasm.rv2mee(ptr0, len0, ptr1, len1, mu_km3_s2, isLikeNone(factor) ? 2 : factor);
17989
+ if (ret[2]) {
17990
+ throw takeFromExternrefTable0(ret[1]);
17991
+ }
17992
+ return takeFromExternrefTable0(ret[0]);
17993
+ }
17994
+ exports.rv2mee = rv2mee;
17995
+
17996
+ /**
17997
+ * @param {BroadcastEphemeris} broadcast
17998
+ * @param {string[]} satellites
17999
+ * @param {number} start_j2000_s
18000
+ * @param {number} stop_j2000_s
18001
+ * @param {number} step_s
18002
+ * @returns {any}
18003
+ */
18004
+ function sampleBroadcastEphemeris(broadcast, satellites, start_j2000_s, stop_j2000_s, step_s) {
18005
+ _assertClass(broadcast, BroadcastEphemeris);
18006
+ const ptr0 = passArrayJsValueToWasm0(satellites, wasm.__wbindgen_malloc);
18007
+ const len0 = WASM_VECTOR_LEN;
18008
+ const ret = wasm.sampleBroadcastEphemeris(broadcast.__wbg_ptr, ptr0, len0, start_j2000_s, stop_j2000_s, step_s);
18009
+ if (ret[2]) {
18010
+ throw takeFromExternrefTable0(ret[1]);
18011
+ }
18012
+ return takeFromExternrefTable0(ret[0]);
18013
+ }
18014
+ exports.sampleBroadcastEphemeris = sampleBroadcastEphemeris;
18015
+
18016
+ /**
18017
+ * @param {Sp3} sp3
18018
+ * @param {string[]} satellites
18019
+ * @param {number} start_j2000_s
18020
+ * @param {number} stop_j2000_s
18021
+ * @param {number} step_s
18022
+ * @returns {any}
18023
+ */
18024
+ function sampleSp3Ephemeris(sp3, satellites, start_j2000_s, stop_j2000_s, step_s) {
18025
+ _assertClass(sp3, Sp3);
18026
+ const ptr0 = passArrayJsValueToWasm0(satellites, wasm.__wbindgen_malloc);
18027
+ const len0 = WASM_VECTOR_LEN;
18028
+ const ret = wasm.sampleSp3Ephemeris(sp3.__wbg_ptr, ptr0, len0, start_j2000_s, stop_j2000_s, step_s);
18029
+ if (ret[2]) {
18030
+ throw takeFromExternrefTable0(ret[1]);
18031
+ }
18032
+ return takeFromExternrefTable0(ret[0]);
18033
+ }
18034
+ exports.sampleSp3Ephemeris = sampleSp3Ephemeris;
18035
+
16609
18036
  /**
16610
18037
  * Apparent visual magnitude of a sunlit body from a diffuse-sphere phase law.
16611
18038
  *
@@ -16629,6 +18056,32 @@ function satelliteVisualMagnitude(range_km, phase_angle_deg, standard_magnitude,
16629
18056
  }
16630
18057
  exports.satelliteVisualMagnitude = satelliteVisualMagnitude;
16631
18058
 
18059
+ /**
18060
+ * @param {BroadcastEphemeris} broadcast
18061
+ * @param {SbasCorrectionStore} store
18062
+ * @param {string} geo
18063
+ * @param {string} sat
18064
+ * @param {number} t_j2000_s
18065
+ * @param {string | null} [mode]
18066
+ * @returns {any}
18067
+ */
18068
+ function sbasCorrectedState(broadcast, store, geo, sat, t_j2000_s, mode) {
18069
+ _assertClass(broadcast, BroadcastEphemeris);
18070
+ _assertClass(store, SbasCorrectionStore);
18071
+ const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18072
+ const len0 = WASM_VECTOR_LEN;
18073
+ const ptr1 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18074
+ const len1 = WASM_VECTOR_LEN;
18075
+ var ptr2 = isLikeNone(mode) ? 0 : passStringToWasm0(mode, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18076
+ var len2 = WASM_VECTOR_LEN;
18077
+ const ret = wasm.sbasCorrectedState(broadcast.__wbg_ptr, store.__wbg_ptr, ptr0, len0, ptr1, len1, t_j2000_s, ptr2, len2);
18078
+ if (ret[2]) {
18079
+ throw takeFromExternrefTable0(ret[1]);
18080
+ }
18081
+ return takeFromExternrefTable0(ret[0]);
18082
+ }
18083
+ exports.sbasCorrectedState = sbasCorrectedState;
18084
+
16632
18085
  /**
16633
18086
  * Screen a primary satellite against a secondary TLE catalog for threshold TCAs.
16634
18087
  *
@@ -16689,6 +18142,40 @@ function screenTcaConjunctions(primary_line1, primary_line2, secondaries, window
16689
18142
  }
16690
18143
  exports.screenTcaConjunctions = screenTcaConjunctions;
16691
18144
 
18145
+ /**
18146
+ * @param {bigint} start_unix_us
18147
+ * @param {bigint} end_unix_us
18148
+ * @param {number} step_s
18149
+ * @param {number} tolerance_s
18150
+ * @returns {any}
18151
+ */
18152
+ function seasons(start_unix_us, end_unix_us, step_s, tolerance_s) {
18153
+ const ret = wasm.seasons(start_unix_us, end_unix_us, step_s, tolerance_s);
18154
+ if (ret[2]) {
18155
+ throw takeFromExternrefTable0(ret[1]);
18156
+ }
18157
+ return takeFromExternrefTable0(ret[0]);
18158
+ }
18159
+ exports.seasons = seasons;
18160
+
18161
+ /**
18162
+ * @param {Spk} spk
18163
+ * @param {bigint} start_unix_us
18164
+ * @param {bigint} end_unix_us
18165
+ * @param {number} step_s
18166
+ * @param {number} tolerance_s
18167
+ * @returns {any}
18168
+ */
18169
+ function seasonsSpk(spk, start_unix_us, end_unix_us, step_s, tolerance_s) {
18170
+ _assertClass(spk, Spk);
18171
+ const ret = wasm.seasonsSpk(spk.__wbg_ptr, start_unix_us, end_unix_us, step_s, tolerance_s);
18172
+ if (ret[2]) {
18173
+ throw takeFromExternrefTable0(ret[1]);
18174
+ }
18175
+ return takeFromExternrefTable0(ret[0]);
18176
+ }
18177
+ exports.seasonsSpk = seasonsSpk;
18178
+
16692
18179
  /**
16693
18180
  * Select an IONEX product usable at `requestedEpochJ2000S`, degrading to a
16694
18181
  * diurnal-shifted prior product within `policy`.
@@ -16986,6 +18473,20 @@ function solidEarthTide(station_ecef_m, year, month, day, fractional_hour, sun_e
16986
18473
  }
16987
18474
  exports.solidEarthTide = solidEarthTide;
16988
18475
 
18476
+ /**
18477
+ * @param {number} mean_anomaly_rad
18478
+ * @param {number} eccentricity
18479
+ * @returns {any}
18480
+ */
18481
+ function solveKepler(mean_anomaly_rad, eccentricity) {
18482
+ const ret = wasm.solveKepler(mean_anomaly_rad, eccentricity);
18483
+ if (ret[2]) {
18484
+ throw takeFromExternrefTable0(ret[1]);
18485
+ }
18486
+ return takeFromExternrefTable0(ret[0]);
18487
+ }
18488
+ exports.solveKepler = solveKepler;
18489
+
16989
18490
  /**
16990
18491
  * Solve a sequence of moving-baseline RTK epochs.
16991
18492
  *
@@ -17164,6 +18665,29 @@ function solveRtkFloat(config) {
17164
18665
  }
17165
18666
  exports.solveRtkFloat = solveRtkFloat;
17166
18667
 
18668
+ /**
18669
+ * @param {BroadcastEphemeris} broadcast
18670
+ * @param {SbasCorrectionStore} store
18671
+ * @param {string} geo
18672
+ * @param {any} request
18673
+ * @param {string | null} [mode]
18674
+ * @returns {SppSolution}
18675
+ */
18676
+ function solveSppSbas(broadcast, store, geo, request, mode) {
18677
+ _assertClass(broadcast, BroadcastEphemeris);
18678
+ _assertClass(store, SbasCorrectionStore);
18679
+ const ptr0 = passStringToWasm0(geo, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18680
+ const len0 = WASM_VECTOR_LEN;
18681
+ var ptr1 = isLikeNone(mode) ? 0 : passStringToWasm0(mode, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18682
+ var len1 = WASM_VECTOR_LEN;
18683
+ const ret = wasm.solveSppSbas(broadcast.__wbg_ptr, store.__wbg_ptr, ptr0, len0, request, ptr1, len1);
18684
+ if (ret[2]) {
18685
+ throw takeFromExternrefTable0(ret[1]);
18686
+ }
18687
+ return SppSolution.__wrap(ret[0]);
18688
+ }
18689
+ exports.solveSppSbas = solveSppSbas;
18690
+
17167
18691
  /**
17168
18692
  * Solve a static RTK arc with one batch float solution and one validated fixed
17169
18693
  * solution over the whole arc.
@@ -17258,6 +18782,30 @@ function solveWithFallback(precise, broadcast, request, policy) {
17258
18782
  }
17259
18783
  exports.solveWithFallback = solveWithFallback;
17260
18784
 
18785
+ /**
18786
+ * Extract a parsed SP3 product as the canonical precise-ephemeris samples, one
18787
+ * per real position record in ascending epoch order.
18788
+ *
18789
+ * Returns an array of `{ sat, epoch, positionEcefM, clockS, clockEvent }`
18790
+ * objects. Round-tripping the result back through
18791
+ * [`preciseEphemerisSamplesFromSamples`] rebuilds an interpolatable source that
18792
+ * reproduces the SP3-parsed source's interpolated states and predicted ranges
18793
+ * to the documented round-trip precision (byte-identical for samples whose
18794
+ * meters are the faithful image of the fit nodes; see the core module docs).
18795
+ * Delegates to `sidereon_core::sp3::Sp3::precise_ephemeris_samples`.
18796
+ * @param {Sp3} sp3
18797
+ * @returns {any}
18798
+ */
18799
+ function sp3PreciseEphemerisSamples(sp3) {
18800
+ _assertClass(sp3, Sp3);
18801
+ const ret = wasm.sp3PreciseEphemerisSamples(sp3.__wbg_ptr);
18802
+ if (ret[2]) {
18803
+ throw takeFromExternrefTable0(ret[1]);
18804
+ }
18805
+ return takeFromExternrefTable0(ret[0]);
18806
+ }
18807
+ exports.sp3PreciseEphemerisSamples = sp3PreciseEphemerisSamples;
18808
+
17261
18809
  /**
17262
18810
  * Continuous seconds since J2000 for a split Julian date.
17263
18811
  * @param {number} jd_whole
@@ -17270,6 +18818,28 @@ function splitJdToJ2000Seconds(jd_whole, jd_fraction) {
17270
18818
  }
17271
18819
  exports.splitJdToJ2000Seconds = splitJdToJ2000Seconds;
17272
18820
 
18821
+ /**
18822
+ * @param {BroadcastEphemeris} broadcast
18823
+ * @param {SsrCorrectionStore} store
18824
+ * @param {string} sat
18825
+ * @param {number} t_j2000_s
18826
+ * @param {boolean | null} [fallback_to_broadcast]
18827
+ * @param {number | null} [allow_regional_provider]
18828
+ * @returns {any}
18829
+ */
18830
+ function ssrCorrectedState(broadcast, store, sat, t_j2000_s, fallback_to_broadcast, allow_regional_provider) {
18831
+ _assertClass(broadcast, BroadcastEphemeris);
18832
+ _assertClass(store, SsrCorrectionStore);
18833
+ const ptr0 = passStringToWasm0(sat, wasm.__wbindgen_malloc, wasm.__wbindgen_realloc);
18834
+ const len0 = WASM_VECTOR_LEN;
18835
+ const ret = wasm.ssrCorrectedState(broadcast.__wbg_ptr, store.__wbg_ptr, ptr0, len0, t_j2000_s, isLikeNone(fallback_to_broadcast) ? 0xFFFFFF : fallback_to_broadcast ? 1 : 0, isLikeNone(allow_regional_provider) ? 0xFFFFFF : allow_regional_provider);
18836
+ if (ret[2]) {
18837
+ throw takeFromExternrefTable0(ret[1]);
18838
+ }
18839
+ return takeFromExternrefTable0(ret[0]);
18840
+ }
18841
+ exports.ssrCorrectedState = ssrCorrectedState;
18842
+
17273
18843
  /**
17274
18844
  * Sub-observer point (planetary central meridian) on a rotating body.
17275
18845
  *
@@ -17644,6 +19214,34 @@ function tropoZenithDelay(lat_deg, height_m, met) {
17644
19214
  }
17645
19215
  exports.tropoZenithDelay = tropoZenithDelay;
17646
19216
 
19217
+ /**
19218
+ * @param {number} true_anomaly_rad
19219
+ * @param {number} eccentricity
19220
+ * @returns {number}
19221
+ */
19222
+ function trueToEccentric(true_anomaly_rad, eccentricity) {
19223
+ const ret = wasm.trueToEccentric(true_anomaly_rad, eccentricity);
19224
+ if (ret[2]) {
19225
+ throw takeFromExternrefTable0(ret[1]);
19226
+ }
19227
+ return ret[0];
19228
+ }
19229
+ exports.trueToEccentric = trueToEccentric;
19230
+
19231
+ /**
19232
+ * @param {number} true_anomaly_rad
19233
+ * @param {number} eccentricity
19234
+ * @returns {number}
19235
+ */
19236
+ function trueToMean(true_anomaly_rad, eccentricity) {
19237
+ const ret = wasm.trueToMean(true_anomaly_rad, eccentricity);
19238
+ if (ret[2]) {
19239
+ throw takeFromExternrefTable0(ret[1]);
19240
+ }
19241
+ return ret[0];
19242
+ }
19243
+ exports.trueToMean = trueToMean;
19244
+
17647
19245
  /**
17648
19246
  * Provenance and coverage of the embedded UT1-UTC / delta-T (EOP) table.
17649
19247
  * @returns {Ut1Coverage}
@@ -18247,6 +19845,9 @@ const AppliedCorrectionsFinalization = (typeof FinalizationRegistry === 'undefin
18247
19845
  const AtmosphereDensityFinalization = (typeof FinalizationRegistry === 'undefined')
18248
19846
  ? { register: () => {}, unregister: () => {} }
18249
19847
  : new FinalizationRegistry(ptr => wasm.__wbg_atmospheredensity_free(ptr, 1));
19848
+ const BiasSetFinalization = (typeof FinalizationRegistry === 'undefined')
19849
+ ? { register: () => {}, unregister: () => {} }
19850
+ : new FinalizationRegistry(ptr => wasm.__wbg_biasset_free(ptr, 1));
18250
19851
  const BroadcastEphemerisFinalization = (typeof FinalizationRegistry === 'undefined')
18251
19852
  ? { register: () => {}, unregister: () => {} }
18252
19853
  : new FinalizationRegistry(ptr => wasm.__wbg_broadcastephemeris_free(ptr, 1));
@@ -18316,6 +19917,12 @@ const DopSeriesSampleFinalization = (typeof FinalizationRegistry === 'undefined'
18316
19917
  const DopplerShiftFinalization = (typeof FinalizationRegistry === 'undefined')
18317
19918
  ? { register: () => {}, unregister: () => {} }
18318
19919
  : new FinalizationRegistry(ptr => wasm.__wbg_dopplershift_free(ptr, 1));
19920
+ const DragForceFinalization = (typeof FinalizationRegistry === 'undefined')
19921
+ ? { register: () => {}, unregister: () => {} }
19922
+ : new FinalizationRegistry(ptr => wasm.__wbg_dragforce_free(ptr, 1));
19923
+ const DtedTerrainFinalization = (typeof FinalizationRegistry === 'undefined')
19924
+ ? { register: () => {}, unregister: () => {} }
19925
+ : new FinalizationRegistry(ptr => wasm.__wbg_dtedterrain_free(ptr, 1));
18319
19926
  const EncounterFrameFinalization = (typeof FinalizationRegistry === 'undefined')
18320
19927
  ? { register: () => {}, unregister: () => {} }
18321
19928
  : new FinalizationRegistry(ptr => wasm.__wbg_encounterframe_free(ptr, 1));
@@ -18511,6 +20118,9 @@ const PppFixedSolutionFinalization = (typeof FinalizationRegistry === 'undefined
18511
20118
  const PppFloatSolutionFinalization = (typeof FinalizationRegistry === 'undefined')
18512
20119
  ? { register: () => {}, unregister: () => {} }
18513
20120
  : new FinalizationRegistry(ptr => wasm.__wbg_pppfloatsolution_free(ptr, 1));
20121
+ const PreciseEphemerisSampleSourceFinalization = (typeof FinalizationRegistry === 'undefined')
20122
+ ? { register: () => {}, unregister: () => {} }
20123
+ : new FinalizationRegistry(ptr => wasm.__wbg_preciseephemerissamplesource_free(ptr, 1));
18514
20124
  const PredictBatchFinalization = (typeof FinalizationRegistry === 'undefined')
18515
20125
  ? { register: () => {}, unregister: () => {} }
18516
20126
  : new FinalizationRegistry(ptr => wasm.__wbg_predictbatch_free(ptr, 1));
@@ -18553,6 +20163,9 @@ const SatellitePassFinalization = (typeof FinalizationRegistry === 'undefined')
18553
20163
  const SatelliteVectorFinalization = (typeof FinalizationRegistry === 'undefined')
18554
20164
  ? { register: () => {}, unregister: () => {} }
18555
20165
  : new FinalizationRegistry(ptr => wasm.__wbg_satellitevector_free(ptr, 1));
20166
+ const SbasCorrectionStoreFinalization = (typeof FinalizationRegistry === 'undefined')
20167
+ ? { register: () => {}, unregister: () => {} }
20168
+ : new FinalizationRegistry(ptr => wasm.__wbg_sbascorrectionstore_free(ptr, 1));
18556
20169
  const SignalPolicyFinalization = (typeof FinalizationRegistry === 'undefined')
18557
20170
  ? { register: () => {}, unregister: () => {} }
18558
20171
  : new FinalizationRegistry(ptr => wasm.__wbg_signalpolicy_free(ptr, 1));
@@ -18592,6 +20205,9 @@ const Sp3SelectionFinalization = (typeof FinalizationRegistry === 'undefined')
18592
20205
  const Sp3StateFinalization = (typeof FinalizationRegistry === 'undefined')
18593
20206
  ? { register: () => {}, unregister: () => {} }
18594
20207
  : new FinalizationRegistry(ptr => wasm.__wbg_sp3state_free(ptr, 1));
20208
+ const SpaceWeatherFinalization = (typeof FinalizationRegistry === 'undefined')
20209
+ ? { register: () => {}, unregister: () => {} }
20210
+ : new FinalizationRegistry(ptr => wasm.__wbg_spaceweather_free(ptr, 1));
18595
20211
  const SpaceWeatherDefaultsFinalization = (typeof FinalizationRegistry === 'undefined')
18596
20212
  ? { register: () => {}, unregister: () => {} }
18597
20213
  : new FinalizationRegistry(ptr => wasm.__wbg_spaceweatherdefaults_free(ptr, 1));
@@ -18610,6 +20226,9 @@ const SppBatchSolutionFinalization = (typeof FinalizationRegistry === 'undefined
18610
20226
  const SppSolutionFinalization = (typeof FinalizationRegistry === 'undefined')
18611
20227
  ? { register: () => {}, unregister: () => {} }
18612
20228
  : new FinalizationRegistry(ptr => wasm.__wbg_sppsolution_free(ptr, 1));
20229
+ const SsrCorrectionStoreFinalization = (typeof FinalizationRegistry === 'undefined')
20230
+ ? { register: () => {}, unregister: () => {} }
20231
+ : new FinalizationRegistry(ptr => wasm.__wbg_ssrcorrectionstore_free(ptr, 1));
18613
20232
  const SunMoonFinalization = (typeof FinalizationRegistry === 'undefined')
18614
20233
  ? { register: () => {}, unregister: () => {} }
18615
20234
  : new FinalizationRegistry(ptr => wasm.__wbg_sunmoon_free(ptr, 1));