@neilberkman/sidereon 0.26.1 → 0.27.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/CHANGELOG.md +9 -0
- package/README.md +27 -3
- package/package.json +1 -1
- package/pkg/sidereon.d.ts +917 -872
- package/pkg/sidereon.js +65 -0
- package/pkg/sidereon_bg.wasm +0 -0
- package/pkg/sidereon_bg.wasm.d.ts +874 -872
- package/pkg-node/sidereon.d.ts +43 -0
- package/pkg-node/sidereon.js +67 -0
- package/pkg-node/sidereon_bg.wasm +0 -0
- package/pkg-node/sidereon_bg.wasm.d.ts +874 -872
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.27.0 - 2026-07-12
|
|
4
|
+
|
|
5
|
+
- Builds against `sidereon` and `sidereon-core` 0.27.0.
|
|
6
|
+
- Adds `GeoidGrid.fromProjEgm96Gtx` for PROJ's public EGM96 15-arcminute GTX
|
|
7
|
+
grid.
|
|
8
|
+
- Adds `GeoidGrid.undulationProjRad` with explicit fused-versus-separately
|
|
9
|
+
rounded arithmetic and typed `RangeError` coordinate failures. Existing geoid
|
|
10
|
+
lookup functions retain their previous bits.
|
|
11
|
+
|
|
3
12
|
## 0.26.1 - 2026-07-12
|
|
4
13
|
|
|
5
14
|
- Builds against `sidereon` and `sidereon-core` 0.26.1.
|
package/README.md
CHANGED
|
@@ -138,6 +138,29 @@ geometry and an integrity support message. `araimLpv200Allocation()` provides th
|
|
|
138
138
|
default LPV-200 budget. The direct result has `hplM`, `vplM`, `sigmaAccHM`, and
|
|
139
139
|
`sigmaAccVM`, plus the detailed monitor fields.
|
|
140
140
|
|
|
141
|
+
## Example: PROJ EGM96 vertical-grid interpolation
|
|
142
|
+
|
|
143
|
+
`GeoidGrid.fromProjEgm96Gtx(bytes)` loads the public OSGeo
|
|
144
|
+
`egm96_15.gtx` grid. Lookup requires an explicit arithmetic recipe because
|
|
145
|
+
valid PROJ builds can differ by one ULP:
|
|
146
|
+
|
|
147
|
+
```js
|
|
148
|
+
import { GeoidGrid, ProjVgridshiftArithmetic } from "@neilberkman/sidereon";
|
|
149
|
+
|
|
150
|
+
const grid = GeoidGrid.fromProjEgm96Gtx(gtxBytes);
|
|
151
|
+
const undulationM = grid.undulationProjRad(
|
|
152
|
+
latitudeRad,
|
|
153
|
+
longitudeRad,
|
|
154
|
+
ProjVgridshiftArithmetic.FusedMultiplyAdd,
|
|
155
|
+
);
|
|
156
|
+
```
|
|
157
|
+
|
|
158
|
+
Use `SeparateMultiplyAdd` for a PROJ build without floating-point contraction.
|
|
159
|
+
Invalid coordinates throw a `RangeError` whose `kind` is
|
|
160
|
+
`"NonFiniteCoordinate"` or `"CoordinateOutsideGrid"`; its `coordinate` field
|
|
161
|
+
is `"latitude"` or `"longitude"`, and `detail` carries the complete typed
|
|
162
|
+
record.
|
|
163
|
+
|
|
141
164
|
## Capabilities
|
|
142
165
|
|
|
143
166
|
The wasm surface mirrors the full breadth of the engine:
|
|
@@ -200,9 +223,10 @@ The wasm surface mirrors the full breadth of the engine:
|
|
|
200
223
|
- **Almanac:** seasons, moon phases, lunar and solar eclipses, planetary
|
|
201
224
|
conjunctions and oppositions, Sun/Moon/planet meridian transits.
|
|
202
225
|
- **Atmosphere and Earth models:** Klobuchar and NeQuick-G ionosphere, IONEX
|
|
203
|
-
slant delay, troposphere models, geoid undulation (EGM96),
|
|
204
|
-
|
|
205
|
-
|
|
226
|
+
slant delay, troposphere models, geoid undulation (EGM96), PROJ EGM96 GTX
|
|
227
|
+
interpolation with explicit fused/separate arithmetic and typed coordinate
|
|
228
|
+
errors, solid Earth and pole tides, ocean tide loading, DTED terrain
|
|
229
|
+
elevation lookup with batch queries, and memory-mappable terrain stores.
|
|
206
230
|
- **RF link budget:** free-space path loss, EIRP, C/N0, antenna gain, Doppler
|
|
207
231
|
shift and range rate.
|
|
208
232
|
- **GNSS/INS fusion:** strapdown mechanization with an error-state EKF (UKF
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@neilberkman/sidereon",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "WebAssembly / JavaScript interface over the sidereon GNSS + astrodynamics engine: SP3 loading and multi-product merge, SPP / RTK (float + fixed) / PPP (float + fixed) positioning, IONEX slant delay, SGP4 and numerical orbit propagation, RINEX observation/navigation/clock parsing, CRINEX (Hatanaka) decoding, observable-domain math (carrier combinations, cycle slips, Hatch smoothing, weighting, velocity, GPS C/A signal), and the astro domain (scale-tagged time, frame transforms, Sun/Moon ephemerides, eclipse / body angles, DOP, passes / visibility, conjunction + collision probability, CDM / OMM / ANTEX parsing, RF link budget)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|