You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PyStormTracker provides an object-oriented Python API. Tracker instances encapsulate algorithm, preprocessing, and execution configuration. The `.track()` method executes tracking on an input file or xarray dataset and returns an immutable `Tracks` container, which provides `.write()` for output serialization.
3
+
PyStormTracker provides an object-oriented Python API. Tracker instances
4
+
encapsulate algorithm, preprocessing, and execution configuration. The
5
+
`.track()` method executes tracking on an input file or xarray dataset and
6
+
returns an immutable `Tracks` container, which provides `.write()` for output
-**`track()`**: Specifies input data (`data`, `variable`), time window (`start_time`, `end_time`), extremum mode (`detection_mode`), thresholds (`feature_threshold` for Simple, `object_threshold` for Hodges and HEALPix), and reader engine (`engine`).
39
-
-**`Tracks.write()`**: Handles output serialization to supported formats (`json`, `track`, `imilast`).
41
+
PyStormTracker is a pre-1.0 project with a deliberately small compatibility
42
+
surface. Python importability alone does not make a name supported. The
43
+
`__all__` declarations, package re-exports, and the explicitly documented
44
+
members below define the intended API.
40
45
41
-
For `HodgesTracker`, `frame_workers` controls concurrent frame tasks,
42
-
`sht_threads` controls DUCC0 threads per active spherical-harmonic transform,
43
-
and `mge_workers` controls concurrent MGE segment tasks. `segment_frames`
44
-
remains the scientific temporal segment length and is independent of these
45
-
controls.
46
+
### Primary API
46
47
47
-
## Core Exports
48
+
The preferred interface is the package root:
48
49
49
-
The package root exports only the public tracker classes, domain entities, and format functions:
50
+
```python
51
+
import pystormtracker as pst
52
+
```
53
+
54
+
The root exports exactly these nine names:
50
55
51
-
-`pst.Tracker` (Protocol)
52
-
-`pst.SimpleTracker`
53
-
-`pst.HodgesTracker`
54
-
-`pst.HealpixTracker`
55
56
-`pst.Center`
57
+
-`pst.HealpixTracker`
58
+
-`pst.HodgesTracker`
59
+
-`pst.SimpleTracker`
56
60
-`pst.Track`
61
+
-`pst.Tracker`
57
62
-`pst.Tracks`
58
63
-`pst.load_tracks`
59
64
-`pst.save_tracks`
60
65
61
-
Domain value types remain available under `pystormtracker.models`:
66
+
`pystormtracker.__version__` remains normally accessible, but is not part of
67
+
the root `__all__` compatibility list.
68
+
69
+
### Advanced supported APIs
62
70
63
-
-`pystormtracker.models.Center`
64
-
-`pystormtracker.models.CenterFrame`
65
-
-`pystormtracker.models.SpatialBounds`
66
-
-`pystormtracker.models.ProcessingStep`
67
-
-`pystormtracker.models.TracksMetadata`
71
+
The following package and direct-module APIs are supported when explicitly
72
+
documented here or in the linked methodology pages:
Use `load_tracks` and `save_tracks` for ordinary format handling. TrackJSON/1.0
169
+
is provisional; its typed wire structures and direct encoder are documented in
170
+
the [TrackJSON reference](trackjson.md), not promoted to the generic I/O
171
+
namespace.
172
+
173
+
## Scientific preprocessing
111
174
112
-
Trackers accept preprocessing options in their constructors: `lmin` and `lmax` request an optional spectral filter when supplied together, while `taper_points` controls spatial tapering independently. `HodgesTracker` accepts `spectral_taper` with source-compatible default `1.0`; `HealpixTracker` owns a separate default of `0.1`. Hodges' default `feature_refinement="bspline"` uses TRACK/SMOOPY-compatible rectangular B-spline refinement with coordinate-space GDFP optimization. The advanced experimental `"spherical_bspline"` option uses a global spherical B-spline with a candidate-local feasible region on eligible periodic latitude-longitude frames. `"quadratic"` and `"spherical_quadratic"` provide local polynomial subgrid refinement, and `"grid"` disables subgrid refinement. `missing_frame_parameters` and `time_step` model known input-time gaps.
175
+
Tracker constructors accept preprocessing options: `lmin` and `lmax` request an
176
+
optional spectral filter when supplied together, while `taper_points` controls
177
+
spatial tapering independently. `HodgesTracker` accepts `spectral_taper` with
178
+
source-compatible default `1.0`; `HealpixTracker` owns a separate default of
179
+
`0.1`. The Hodges default `feature_refinement="bspline"` uses the
180
+
TRACK/SMOOPY-compatible rectangular B-spline path with coordinate-space GDFP
181
+
optimization. The advanced experimental `"spherical_bspline"` option uses a
182
+
global spherical B-spline with a candidate-local feasible region on eligible
183
+
periodic latitude-longitude frames. `"quadratic"` and
184
+
`"spherical_quadratic"` provide local polynomial alternatives, and `"grid"`
185
+
disables subgrid refinement. `missing_frame_parameters` and `time_step` model
0 commit comments