@neilberkman/sidereon 0.19.1 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/pkg/sidereon.d.ts +1591 -1485
- package/pkg/sidereon.js +246 -0
- package/pkg/sidereon_bg.wasm +0 -0
- package/pkg/sidereon_bg.wasm.d.ts +1507 -1492
- package/pkg-node/sidereon.d.ts +91 -0
- package/pkg-node/sidereon.js +257 -0
- package/pkg-node/sidereon_bg.wasm +0 -0
- package/pkg-node/sidereon_bg.wasm.d.ts +1507 -1492
package/pkg/sidereon.js
CHANGED
|
@@ -5950,6 +5950,54 @@ export class GnssInsFilter {
|
|
|
5950
5950
|
}
|
|
5951
5951
|
return takeFromExternrefTable0(ret[0]);
|
|
5952
5952
|
}
|
|
5953
|
+
/**
|
|
5954
|
+
* Apply a gated wheeled-vehicle non-holonomic constraint update.
|
|
5955
|
+
* @returns {any}
|
|
5956
|
+
*/
|
|
5957
|
+
updateNonHolonomic() {
|
|
5958
|
+
const ret = wasm.gnssinsfilter_updateNonHolonomic(this.__wbg_ptr);
|
|
5959
|
+
if (ret[2]) {
|
|
5960
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5961
|
+
}
|
|
5962
|
+
return takeFromExternrefTable0(ret[0]);
|
|
5963
|
+
}
|
|
5964
|
+
/**
|
|
5965
|
+
* Apply a non-holonomic constraint and record checkpoints when an update applies.
|
|
5966
|
+
* @param {FusionRtsHistoryBuilder} history
|
|
5967
|
+
* @returns {any}
|
|
5968
|
+
*/
|
|
5969
|
+
updateNonHolonomicRecorded(history) {
|
|
5970
|
+
_assertClass(history, FusionRtsHistoryBuilder);
|
|
5971
|
+
const ret = wasm.gnssinsfilter_updateNonHolonomicRecorded(this.__wbg_ptr, history.__wbg_ptr);
|
|
5972
|
+
if (ret[2]) {
|
|
5973
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5974
|
+
}
|
|
5975
|
+
return takeFromExternrefTable0(ret[0]);
|
|
5976
|
+
}
|
|
5977
|
+
/**
|
|
5978
|
+
* Apply a gated zero-velocity and zero-angular-rate update.
|
|
5979
|
+
* @returns {any}
|
|
5980
|
+
*/
|
|
5981
|
+
updateStationary() {
|
|
5982
|
+
const ret = wasm.gnssinsfilter_updateStationary(this.__wbg_ptr);
|
|
5983
|
+
if (ret[2]) {
|
|
5984
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5985
|
+
}
|
|
5986
|
+
return takeFromExternrefTable0(ret[0]);
|
|
5987
|
+
}
|
|
5988
|
+
/**
|
|
5989
|
+
* Apply a stationary update and record checkpoints when an update applies.
|
|
5990
|
+
* @param {FusionRtsHistoryBuilder} history
|
|
5991
|
+
* @returns {any}
|
|
5992
|
+
*/
|
|
5993
|
+
updateStationaryRecorded(history) {
|
|
5994
|
+
_assertClass(history, FusionRtsHistoryBuilder);
|
|
5995
|
+
const ret = wasm.gnssinsfilter_updateStationaryRecorded(this.__wbg_ptr, history.__wbg_ptr);
|
|
5996
|
+
if (ret[2]) {
|
|
5997
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
5998
|
+
}
|
|
5999
|
+
return takeFromExternrefTable0(ret[0]);
|
|
6000
|
+
}
|
|
5953
6001
|
/**
|
|
5954
6002
|
* Apply a tight raw-observation epoch against a broadcast ephemeris source.
|
|
5955
6003
|
* @param {BroadcastEphemeris} broadcast
|
|
@@ -20386,6 +20434,52 @@ export function boundedIlsSearch(float_cycles, covariance, radius, candidate_lim
|
|
|
20386
20434
|
return takeFromExternrefTable0(ret[0]);
|
|
20387
20435
|
}
|
|
20388
20436
|
|
|
20437
|
+
/**
|
|
20438
|
+
* Build dual-frequency RTK arc records from parsed RINEX OBS products.
|
|
20439
|
+
*
|
|
20440
|
+
* Defaults build the GPS `C1C`/`L1C` plus `C2W`/`L2W` arc used by the real
|
|
20441
|
+
* WTZR/WTZZ fixtures.
|
|
20442
|
+
* @param {Sp3} ephemeris
|
|
20443
|
+
* @param {RinexObs} base_obs
|
|
20444
|
+
* @param {RinexObs} rover_obs
|
|
20445
|
+
* @param {any | null} [options]
|
|
20446
|
+
* @returns {any}
|
|
20447
|
+
*/
|
|
20448
|
+
export function buildDualFrequencyRinexRtkArc(ephemeris, base_obs, rover_obs, options) {
|
|
20449
|
+
_assertClass(ephemeris, Sp3);
|
|
20450
|
+
_assertClass(base_obs, RinexObs);
|
|
20451
|
+
_assertClass(rover_obs, RinexObs);
|
|
20452
|
+
const ret = wasm.buildDualFrequencyRinexRtkArc(ephemeris.__wbg_ptr, base_obs.__wbg_ptr, rover_obs.__wbg_ptr, isLikeNone(options) ? 0 : addToExternrefTable0(options));
|
|
20453
|
+
if (ret[2]) {
|
|
20454
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
20455
|
+
}
|
|
20456
|
+
return takeFromExternrefTable0(ret[0]);
|
|
20457
|
+
}
|
|
20458
|
+
|
|
20459
|
+
/**
|
|
20460
|
+
* Build single-frequency RTK arc records from parsed RINEX OBS products.
|
|
20461
|
+
*
|
|
20462
|
+
* `ephemeris` is an SP3 precise ephemeris handle, `baseObs` and `roverObs`
|
|
20463
|
+
* are parsed RINEX observation files, and `options` may provide
|
|
20464
|
+
* `{ signalPairs, maxEpochs, minCommonSatellites, includePredictionTime }`.
|
|
20465
|
+
* Defaults build the GPS `C1C`/`L1C` arc used by the real WTZR/WTZZ fixtures.
|
|
20466
|
+
* @param {Sp3} ephemeris
|
|
20467
|
+
* @param {RinexObs} base_obs
|
|
20468
|
+
* @param {RinexObs} rover_obs
|
|
20469
|
+
* @param {any | null} [options]
|
|
20470
|
+
* @returns {any}
|
|
20471
|
+
*/
|
|
20472
|
+
export function buildRinexRtkArc(ephemeris, base_obs, rover_obs, options) {
|
|
20473
|
+
_assertClass(ephemeris, Sp3);
|
|
20474
|
+
_assertClass(base_obs, RinexObs);
|
|
20475
|
+
_assertClass(rover_obs, RinexObs);
|
|
20476
|
+
const ret = wasm.buildRinexRtkArc(ephemeris.__wbg_ptr, base_obs.__wbg_ptr, rover_obs.__wbg_ptr, isLikeNone(options) ? 0 : addToExternrefTable0(options));
|
|
20477
|
+
if (ret[2]) {
|
|
20478
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
20479
|
+
}
|
|
20480
|
+
return takeFromExternrefTable0(ret[0]);
|
|
20481
|
+
}
|
|
20482
|
+
|
|
20389
20483
|
/**
|
|
20390
20484
|
* One wrapping GPS C/A chip at a zero-based index.
|
|
20391
20485
|
* @param {bigint} prn
|
|
@@ -21649,6 +21743,19 @@ export function errorEllipse2(covariance, confidence) {
|
|
|
21649
21743
|
return ErrorEllipse2.__wrap(ret[0]);
|
|
21650
21744
|
}
|
|
21651
21745
|
|
|
21746
|
+
/**
|
|
21747
|
+
* Horizontal one-sigma ellipse from an ENU covariance in square metres.
|
|
21748
|
+
* @param {any} covariance_enu_m2
|
|
21749
|
+
* @returns {ErrorEllipse}
|
|
21750
|
+
*/
|
|
21751
|
+
export function errorEllipseFromEnuM2(covariance_enu_m2) {
|
|
21752
|
+
const ret = wasm.errorEllipseFromEnuM2(covariance_enu_m2);
|
|
21753
|
+
if (ret[2]) {
|
|
21754
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
21755
|
+
}
|
|
21756
|
+
return ErrorEllipse.__wrap(ret[0]);
|
|
21757
|
+
}
|
|
21758
|
+
|
|
21652
21759
|
/**
|
|
21653
21760
|
* @param {DragForce} drag
|
|
21654
21761
|
* @param {any} request
|
|
@@ -23042,6 +23149,20 @@ export function hessianTrace(jacobian, m, n) {
|
|
|
23042
23149
|
return ret[0];
|
|
23043
23150
|
}
|
|
23044
23151
|
|
|
23152
|
+
/**
|
|
23153
|
+
* Horizontal percentile circle radius from an ENU covariance.
|
|
23154
|
+
* @param {any} covariance_enu_m2
|
|
23155
|
+
* @param {number} probability
|
|
23156
|
+
* @returns {PercentileRadius}
|
|
23157
|
+
*/
|
|
23158
|
+
export function horizontalRadiusAt(covariance_enu_m2, probability) {
|
|
23159
|
+
const ret = wasm.horizontalRadiusAt(covariance_enu_m2, probability);
|
|
23160
|
+
if (ret[2]) {
|
|
23161
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
23162
|
+
}
|
|
23163
|
+
return PercentileRadius.__wrap(ret[0]);
|
|
23164
|
+
}
|
|
23165
|
+
|
|
23045
23166
|
/**
|
|
23046
23167
|
* Gauss angles-only orbit determination.
|
|
23047
23168
|
*
|
|
@@ -24186,6 +24307,22 @@ export function metricsFromKinematicSolution(solution) {
|
|
|
24186
24307
|
return PositionErrorMetrics.__wrap(ret[0]);
|
|
24187
24308
|
}
|
|
24188
24309
|
|
|
24310
|
+
/**
|
|
24311
|
+
* Compute position-error metrics from a position covariance object.
|
|
24312
|
+
*
|
|
24313
|
+
* The object must include `ecefM2` and `enuM2`, each a 3 by 3 covariance in
|
|
24314
|
+
* square metres.
|
|
24315
|
+
* @param {any} covariance
|
|
24316
|
+
* @returns {PositionErrorMetrics}
|
|
24317
|
+
*/
|
|
24318
|
+
export function metricsFromPositionCovariance(covariance) {
|
|
24319
|
+
const ret = wasm.metricsFromPositionCovariance(covariance);
|
|
24320
|
+
if (ret[2]) {
|
|
24321
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
24322
|
+
}
|
|
24323
|
+
return PositionErrorMetrics.__wrap(ret[0]);
|
|
24324
|
+
}
|
|
24325
|
+
|
|
24189
24326
|
/**
|
|
24190
24327
|
* Modified Allan deviation for explicit averaging factors.
|
|
24191
24328
|
*
|
|
@@ -27033,6 +27170,49 @@ export function solveStatic(sp3, epochs, options) {
|
|
|
27033
27170
|
return StaticSolution.__wrap(ret[0]);
|
|
27034
27171
|
}
|
|
27035
27172
|
|
|
27173
|
+
/**
|
|
27174
|
+
* Solve one static reference-station coordinate from paired RINEX OBS plus SP3.
|
|
27175
|
+
* @param {Sp3} ephemeris
|
|
27176
|
+
* @param {RinexObs} reference_obs
|
|
27177
|
+
* @param {RinexObs} rover_obs
|
|
27178
|
+
* @param {any} config
|
|
27179
|
+
* @returns {any}
|
|
27180
|
+
*/
|
|
27181
|
+
export function solveStaticReferenceStationRinex(ephemeris, reference_obs, rover_obs, config) {
|
|
27182
|
+
_assertClass(ephemeris, Sp3);
|
|
27183
|
+
_assertClass(reference_obs, RinexObs);
|
|
27184
|
+
_assertClass(rover_obs, RinexObs);
|
|
27185
|
+
const ret = wasm.solveStaticReferenceStationRinex(ephemeris.__wbg_ptr, reference_obs.__wbg_ptr, rover_obs.__wbg_ptr, config);
|
|
27186
|
+
if (ret[2]) {
|
|
27187
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
27188
|
+
}
|
|
27189
|
+
return takeFromExternrefTable0(ret[0]);
|
|
27190
|
+
}
|
|
27191
|
+
|
|
27192
|
+
/**
|
|
27193
|
+
* Solve one static RTK baseline directly from paired RINEX OBS plus SP3.
|
|
27194
|
+
*
|
|
27195
|
+
* `config.baseM` is the base antenna phase-center ECEF position in metres.
|
|
27196
|
+
* Optional `config.arcOptions` controls RINEX signal extraction; other fields
|
|
27197
|
+
* mirror `RtkStaticArcConfig` but the wavelength and offset maps are filled by
|
|
27198
|
+
* the RINEX builder.
|
|
27199
|
+
* @param {Sp3} ephemeris
|
|
27200
|
+
* @param {RinexObs} base_obs
|
|
27201
|
+
* @param {RinexObs} rover_obs
|
|
27202
|
+
* @param {any} config
|
|
27203
|
+
* @returns {any}
|
|
27204
|
+
*/
|
|
27205
|
+
export function solveStaticRinexRtkBaseline(ephemeris, base_obs, rover_obs, config) {
|
|
27206
|
+
_assertClass(ephemeris, Sp3);
|
|
27207
|
+
_assertClass(base_obs, RinexObs);
|
|
27208
|
+
_assertClass(rover_obs, RinexObs);
|
|
27209
|
+
const ret = wasm.solveStaticRinexRtkBaseline(ephemeris.__wbg_ptr, base_obs.__wbg_ptr, rover_obs.__wbg_ptr, config);
|
|
27210
|
+
if (ret[2]) {
|
|
27211
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
27212
|
+
}
|
|
27213
|
+
return takeFromExternrefTable0(ret[0]);
|
|
27214
|
+
}
|
|
27215
|
+
|
|
27036
27216
|
/**
|
|
27037
27217
|
* Solve a static RTK arc with one batch float solution and one validated fixed
|
|
27038
27218
|
* solution over the whole arc.
|
|
@@ -27096,6 +27276,29 @@ export function solveVelocityBroadcast(broadcast, observations, receiver_ecef_m,
|
|
|
27096
27276
|
return VelocitySolution.__wrap(ret[0]);
|
|
27097
27277
|
}
|
|
27098
27278
|
|
|
27279
|
+
/**
|
|
27280
|
+
* Solve a static dual-frequency wide-lane fixed RTK baseline from RINEX OBS.
|
|
27281
|
+
*
|
|
27282
|
+
* The function builds the dual-frequency RINEX arc, fixes wide-lane
|
|
27283
|
+
* ambiguities, prepares ionosphere-free narrow-lane records, then runs the
|
|
27284
|
+
* static fixed baseline solver.
|
|
27285
|
+
* @param {Sp3} ephemeris
|
|
27286
|
+
* @param {RinexObs} base_obs
|
|
27287
|
+
* @param {RinexObs} rover_obs
|
|
27288
|
+
* @param {any} config
|
|
27289
|
+
* @returns {any}
|
|
27290
|
+
*/
|
|
27291
|
+
export function solveWideLaneFixedRinexRtkBaseline(ephemeris, base_obs, rover_obs, config) {
|
|
27292
|
+
_assertClass(ephemeris, Sp3);
|
|
27293
|
+
_assertClass(base_obs, RinexObs);
|
|
27294
|
+
_assertClass(rover_obs, RinexObs);
|
|
27295
|
+
const ret = wasm.solveWideLaneFixedRinexRtkBaseline(ephemeris.__wbg_ptr, base_obs.__wbg_ptr, rover_obs.__wbg_ptr, config);
|
|
27296
|
+
if (ret[2]) {
|
|
27297
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
27298
|
+
}
|
|
27299
|
+
return takeFromExternrefTable0(ret[0]);
|
|
27300
|
+
}
|
|
27301
|
+
|
|
27099
27302
|
/**
|
|
27100
27303
|
* Solve a receiver position, preferring precise SP3 products and falling back to
|
|
27101
27304
|
* broadcast ephemeris, reporting which source was used and how stale it is.
|
|
@@ -27248,6 +27451,20 @@ export function spectralSeparationCoefficientHz(desired, interference, receiver_
|
|
|
27248
27451
|
return ret[0];
|
|
27249
27452
|
}
|
|
27250
27453
|
|
|
27454
|
+
/**
|
|
27455
|
+
* Three-dimensional percentile sphere radius from an ENU covariance.
|
|
27456
|
+
* @param {any} covariance_enu_m2
|
|
27457
|
+
* @param {number} probability
|
|
27458
|
+
* @returns {PercentileRadius}
|
|
27459
|
+
*/
|
|
27460
|
+
export function sphericalRadiusAt(covariance_enu_m2, probability) {
|
|
27461
|
+
const ret = wasm.sphericalRadiusAt(covariance_enu_m2, probability);
|
|
27462
|
+
if (ret[2]) {
|
|
27463
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
27464
|
+
}
|
|
27465
|
+
return PercentileRadius.__wrap(ret[0]);
|
|
27466
|
+
}
|
|
27467
|
+
|
|
27251
27468
|
/**
|
|
27252
27469
|
* Continuous seconds since J2000 for a split Julian date.
|
|
27253
27470
|
* @param {number} jd_whole
|
|
@@ -27807,6 +28024,21 @@ export function validateAgainstSp3Ids(records, ids) {
|
|
|
27807
28024
|
return takeFromExternrefTable0(ret[0]);
|
|
27808
28025
|
}
|
|
27809
28026
|
|
|
28027
|
+
/**
|
|
28028
|
+
* Blend a first good post-outage fix back over an outage span.
|
|
28029
|
+
* @param {any} states
|
|
28030
|
+
* @param {any} first_good_fix
|
|
28031
|
+
* @param {any} config
|
|
28032
|
+
* @returns {any}
|
|
28033
|
+
*/
|
|
28034
|
+
export function velocityMatchOutage(states, first_good_fix, config) {
|
|
28035
|
+
const ret = wasm.velocityMatchOutage(states, first_good_fix, config);
|
|
28036
|
+
if (ret[2]) {
|
|
28037
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
28038
|
+
}
|
|
28039
|
+
return takeFromExternrefTable0(ret[0]);
|
|
28040
|
+
}
|
|
28041
|
+
|
|
27810
28042
|
/**
|
|
27811
28043
|
* Estimate robust station velocity with the MIDAS method.
|
|
27812
28044
|
*
|
|
@@ -27825,6 +28057,20 @@ export function velocityMidas(series, options) {
|
|
|
27825
28057
|
return takeFromExternrefTable0(ret[0]);
|
|
27826
28058
|
}
|
|
27827
28059
|
|
|
28060
|
+
/**
|
|
28061
|
+
* Vertical one-dimensional percentile radius from an up variance.
|
|
28062
|
+
* @param {number} sigma_u_m2
|
|
28063
|
+
* @param {number} probability
|
|
28064
|
+
* @returns {number}
|
|
28065
|
+
*/
|
|
28066
|
+
export function verticalRadiusAt(sigma_u_m2, probability) {
|
|
28067
|
+
const ret = wasm.verticalRadiusAt(sigma_u_m2, probability);
|
|
28068
|
+
if (ret[2]) {
|
|
28069
|
+
throw takeFromExternrefTable0(ret[1]);
|
|
28070
|
+
}
|
|
28071
|
+
return ret[0];
|
|
28072
|
+
}
|
|
28073
|
+
|
|
27828
28074
|
/**
|
|
27829
28075
|
* Satellites visible above `minElevationDeg` from `station` at a single instant,
|
|
27830
28076
|
* from already-initialized [`Tle`]s: the opsmode-preserving constellation
|
package/pkg/sidereon_bg.wasm
CHANGED
|
Binary file
|