RFTSystems commited on
Commit
b6e17ab
·
verified ·
1 Parent(s): 28358f3

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +70 -26
README.md CHANGED
@@ -17,33 +17,49 @@ thumbnail: >-
17
 
18
  This Space runs **live, transparent, recomputed-from-scratch** signals for four domains:
19
 
20
- - Atmospheric (location-based)
21
- - Seismic (region-based)
22
- - Magnetic (global)
23
- - Solar (global)
24
 
25
- No hidden steps. The app prints the exact values it computes: **z, τ_eff, Ω_obs, α_R, index, and the decision rule used**.
 
 
26
 
27
  ## What changes with location (and what does not)
28
 
29
  ### Location input
30
  - **Used for Atmospheric** (Open-Meteo hourly at the geocoded lat/lon).
 
31
  - **Not used for Solar** (GOES X-ray flux is global).
32
  - **Not used for Magnetic** (Kp index is global).
33
- - **Not used for Seismic in this build** (Seismic is filtered by the selected region, not by city/radius).
 
 
 
 
 
 
34
 
35
- If you type a different city and see Solar/Magnetic/Seismic unchanged: that is expected.
36
 
37
- ### Seismic region selector
38
- The Seismic tab is a **regional stress monitor**. It counts earthquakes in the selected region for the last 24 hours (M≥2.5). It is **not** a “near your city” counter unless a radius mode is implemented.
 
 
 
 
 
 
 
39
 
40
  ## What this is / what this is not
41
 
42
  ### This is
43
- - A live multi-domain regime detector that turns raw public feeds into an explicit RFT-style stress coordinate **z**, then maps it to **τ_eff** and an **index**, then labels states using fixed thresholds.
44
 
45
  ### This is not
46
- - A guaranteed prediction engine.
47
  - A precipitation model, radar nowcast, or full NWP weather model.
48
  - An earthquake time + epicenter predictor.
49
  - A CME arrival model or flare timing predictor.
@@ -51,40 +67,68 @@ The Seismic tab is a **regional stress monitor**. It counts earthquakes in the s
51
 
52
  When live data is missing or too short, the domain is **DISABLED** instead of guessed.
53
 
54
- ## Instant verification links (sources)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
 
56
  Use these to falsify the live status immediately:
57
 
58
  ### Atmospheric (Open-Meteo)
59
- - Open-Meteo API docs: https://open-meteo.com/en/docs
60
- - Geocoding (Open-Meteo): https://open-meteo.com/en/docs/geocoding-api
61
 
62
  ### Seismic (USGS)
63
  - USGS Earthquake API: https://earthquake.usgs.gov/fdsnws/event/1/
64
 
65
  ### Magnetic (NOAA SWPC Kp)
66
- - NOAA SWPC Kp JSON feed: https://services.swpc.noaa.gov/json/planetary_k_index_1m.json
67
  - SWPC data services index: https://services.swpc.noaa.gov/
68
 
69
  ### Solar (NOAA SWPC GOES X-ray)
70
  - GOES X-ray 1-day JSON: https://services.swpc.noaa.gov/json/goes/primary/xrays-1-day.json
71
  - SWPC data services index: https://services.swpc.noaa.gov/
72
 
 
 
73
  ## Open method (equations used in-app)
74
 
75
  Shared core:
76
- - τ_eff = 1.38 · ln(1 + z)
77
- - Ω_obs = 2π / T_earth (T_earth = 365.2422 days)
78
- - α_R = 1.02
79
- - Index = Ω_obs · τ_eff · α_R
80
 
81
  z definitions:
82
- - Atmospheric: z_atm = clamp( clamp(ΔT/10,0..2) + clamp(|ΔP|/12,0..1.5), 0..3 )
83
- - Seismic: z_seis = clamp( clamp(N/60,0..1.5) + clamp(max(0,Mmax-4)/2.5,0..1.5), 0..3 )
84
- - Magnetic: z_mag = clamp( (Kp_last/9) + (drift/2) + 2·|slope|, 0..3 )
85
- - Solar: z_solar= clamp( ln(F_mean/1e-8)/10, 0..3 )
 
 
 
 
86
 
87
- Decision thresholds are printed in the agent output as `rule_fired`.
88
 
89
- ## Practical note (why London shows “38 events”)
90
- That number is **not London earthquakes**. In this build, Seismic counts **all quakes in the selected region** (e.g., EMEA) over the last 24 hours at M≥2.5. Change the region selector to see different counts.
 
17
 
18
  This Space runs **live, transparent, recomputed-from-scratch** signals for four domains:
19
 
20
+ - **Atmospheric** (location-based)
21
+ - **Seismic** (region *or* local-radius, depending on your Seismic Mode)
22
+ - **Magnetic** (global)
23
+ - **Solar** (global)
24
 
25
+ No hidden steps. The app surfaces the exact values it computes: **z**, **τ_eff**, **Ω_obs**, **α_R**, **index**, and the **decision rule** that fired.
26
+
27
+ ---
28
 
29
  ## What changes with location (and what does not)
30
 
31
  ### Location input
32
  - **Used for Atmospheric** (Open-Meteo hourly at the geocoded lat/lon).
33
+ - **Used for Seismic only in “Local radius” mode** (USGS events within your chosen km radius).
34
  - **Not used for Solar** (GOES X-ray flux is global).
35
  - **Not used for Magnetic** (Kp index is global).
36
+ - **Not used for Seismic in “Region” mode** (region selector controls the filter).
37
+
38
+ If you type a different city and Solar/Magnetic stay unchanged: **expected**.
39
+
40
+ ---
41
+
42
+ ## Seismic modes (important)
43
 
44
+ This Space supports two seismic views:
45
 
46
+ ### 1) Region mode
47
+ Counts earthquakes in the selected region over the last **24 hours** with **M 2.5**.
48
+ This is a **regional stress monitor**. It is not “near your city”.
49
+
50
+ ### 2) Local radius mode
51
+ Counts earthquakes within your chosen **radius (km)** around your typed location over the last **24 hours** with **M ≥ 2.5**.
52
+ This is still **not** a time/epicenter predictor — it’s an activity density monitor.
53
+
54
+ ---
55
 
56
  ## What this is / what this is not
57
 
58
  ### This is
59
+ - A live multi-domain **regime detector** that turns raw public feeds into an explicit **RFT-style stress coordinate** **z**, maps it to **τ_eff**, then produces an **index**, then assigns labels using **fixed thresholds**.
60
 
61
  ### This is not
62
+ - A guaranteed prediction engine”.
63
  - A precipitation model, radar nowcast, or full NWP weather model.
64
  - An earthquake time + epicenter predictor.
65
  - A CME arrival model or flare timing predictor.
 
67
 
68
  When live data is missing or too short, the domain is **DISABLED** instead of guessed.
69
 
70
+ ---
71
+
72
+ ## Forecast Receipts (durability + verification)
73
+
74
+ Each run generates a downloadable **Forecast Receipt** (JSON) to make results inspectable over time.
75
+
76
+ The receipt includes:
77
+ - **Source URLs + request parameters + timestamps**
78
+ - **sha256 hashes** of upstream payloads
79
+ - **Computed intermediates** and the exact **rule_fired**
80
+ - **Environment snapshot** (versions + constants)
81
+
82
+ Optional durability mode:
83
+ - Enable **“embed raw upstream payloads”** to include `raw_b64` inside the receipt for stronger offline verification.
84
+
85
+ You can later upload the receipt under the **Verify Receipt** tab to:
86
+ - Validate receipt structure
87
+ - Verify embedded payload hashes (if present)
88
+ - Recompute **z / τ_eff / index / label** and confirm they match the stored outputs
89
+
90
+ ---
91
+
92
+ ## Instant verification links (official sources)
93
 
94
  Use these to falsify the live status immediately:
95
 
96
  ### Atmospheric (Open-Meteo)
97
+ - Docs: https://open-meteo.com/en/docs
98
+ - Geocoding: https://open-meteo.com/en/docs/geocoding-api
99
 
100
  ### Seismic (USGS)
101
  - USGS Earthquake API: https://earthquake.usgs.gov/fdsnws/event/1/
102
 
103
  ### Magnetic (NOAA SWPC Kp)
104
+ - Kp JSON feed: https://services.swpc.noaa.gov/json/planetary_k_index_1m.json
105
  - SWPC data services index: https://services.swpc.noaa.gov/
106
 
107
  ### Solar (NOAA SWPC GOES X-ray)
108
  - GOES X-ray 1-day JSON: https://services.swpc.noaa.gov/json/goes/primary/xrays-1-day.json
109
  - SWPC data services index: https://services.swpc.noaa.gov/
110
 
111
+ ---
112
+
113
  ## Open method (equations used in-app)
114
 
115
  Shared core:
116
+ - **τ_eff = 1.38 · ln(1 + z)**
117
+ - **Ω_obs = 2π / T_earth** (T_earth = 365.2422 days)
118
+ - **α_R = 1.02**
119
+ - **Index = Ω_obs · τ_eff · α_R**
120
 
121
  z definitions:
122
+ - Atmospheric: `z_atm = clamp( clamp(ΔT/10,0..2) + clamp(|ΔP|/12,0..1.5), 0..3 )`
123
+ - Seismic: `z_seis = clamp( clamp(N/60,0..1.5) + clamp(max(0,Mmax-4)/2.5,0..1.5), 0..3 )`
124
+ - Magnetic: `z_mag = clamp( (Kp_last/9) + (drift/2) + 2·|slope|, 0..3 )`
125
+ - Solar: `z_solar = clamp( ln(F_mean/1e-8)/10, 0..3 )`
126
+
127
+ Decision thresholds are printed per-domain in the agent output as `rule_fired`.
128
+
129
+ ---
130
 
131
+ ## Practical note: “Why does my city show X seismic events?”
132
 
133
+ If **Seismic Mode = Region**, the count is for the **selected region** (e.g., EMEA) over the last 24 hours at **M ≥ 2.5**.
134
+ Switch to **Local radius** mode to make the count location-dependent.