RFTs_Forecasts / README.md
RFTSystems's picture
Update README.md
b6e17ab verified
---
title: RFTs Forecasts
emoji: 🐢
colorFrom: pink
colorTo: purple
sdk: gradio
sdk_version: 6.1.0
app_file: app.py
pinned: true
short_description: RFTs Weather phenomena live forecasts
license: other
thumbnail: >-
https://huggingface.co/static-proxy/cdn-uploads.huggingface.co/production/uploads/685edcb04796127b024b4805/6Hp-B0MSDCUoC8dsijWJg.png
---
# Rendered Frame Theory — Live Prediction Console (Open Method)
This Space runs **live, transparent, recomputed-from-scratch** signals for four domains:
- **Atmospheric** (location-based)
- **Seismic** (region *or* local-radius, depending on your Seismic Mode)
- **Magnetic** (global)
- **Solar** (global)
No hidden steps. The app surfaces the exact values it computes: **z**, **τ_eff**, **Ω_obs**, **α_R**, **index**, and the **decision rule** that fired.
---
## What changes with location (and what does not)
### Location input
- **Used for Atmospheric** (Open-Meteo hourly at the geocoded lat/lon).
- **Used for Seismic only in “Local radius” mode** (USGS events within your chosen km radius).
- **Not used for Solar** (GOES X-ray flux is global).
- **Not used for Magnetic** (Kp index is global).
- **Not used for Seismic in “Region” mode** (region selector controls the filter).
If you type a different city and Solar/Magnetic stay unchanged: **expected**.
---
## Seismic modes (important)
This Space supports two seismic views:
### 1) Region mode
Counts earthquakes in the selected region over the last **24 hours** with **M ≥ 2.5**.
This is a **regional stress monitor**. It is not “near your city”.
### 2) Local radius mode
Counts earthquakes within your chosen **radius (km)** around your typed location over the last **24 hours** with **M ≥ 2.5**.
This is still **not** a time/epicenter predictor — it’s an activity density monitor.
---
## What this is / what this is not
### This is
- 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**.
### This is not
- A guaranteed “prediction engine”.
- A precipitation model, radar nowcast, or full NWP weather model.
- An earthquake time + epicenter predictor.
- A CME arrival model or flare timing predictor.
- A local magnetometer or grid impact model.
When live data is missing or too short, the domain is **DISABLED** instead of guessed.
---
## Forecast Receipts (durability + verification)
Each run generates a downloadable **Forecast Receipt** (JSON) to make results inspectable over time.
The receipt includes:
- **Source URLs + request parameters + timestamps**
- **sha256 hashes** of upstream payloads
- **Computed intermediates** and the exact **rule_fired**
- **Environment snapshot** (versions + constants)
Optional durability mode:
- Enable **“embed raw upstream payloads”** to include `raw_b64` inside the receipt for stronger offline verification.
You can later upload the receipt under the **Verify Receipt** tab to:
- Validate receipt structure
- Verify embedded payload hashes (if present)
- Recompute **z / τ_eff / index / label** and confirm they match the stored outputs
---
## Instant verification links (official sources)
Use these to falsify the live status immediately:
### Atmospheric (Open-Meteo)
- Docs: https://open-meteo.com/en/docs
- Geocoding: https://open-meteo.com/en/docs/geocoding-api
### Seismic (USGS)
- USGS Earthquake API: https://earthquake.usgs.gov/fdsnws/event/1/
### Magnetic (NOAA SWPC Kp)
- Kp JSON feed: https://services.swpc.noaa.gov/json/planetary_k_index_1m.json
- SWPC data services index: https://services.swpc.noaa.gov/
### Solar (NOAA SWPC GOES X-ray)
- GOES X-ray 1-day JSON: https://services.swpc.noaa.gov/json/goes/primary/xrays-1-day.json
- SWPC data services index: https://services.swpc.noaa.gov/
---
## Open method (equations used in-app)
Shared core:
- **τ_eff = 1.38 · ln(1 + z)**
- **Ω_obs = 2π / T_earth** (T_earth = 365.2422 days)
- **α_R = 1.02**
- **Index = Ω_obs · τ_eff · α_R**
z definitions:
- Atmospheric: `z_atm = clamp( clamp(ΔT/10,0..2) + clamp(|ΔP|/12,0..1.5), 0..3 )`
- Seismic: `z_seis = clamp( clamp(N/60,0..1.5) + clamp(max(0,Mmax-4)/2.5,0..1.5), 0..3 )`
- Magnetic: `z_mag = clamp( (Kp_last/9) + (drift/2) + 2·|slope|, 0..3 )`
- Solar: `z_solar = clamp( ln(F_mean/1e-8)/10, 0..3 )`
Decision thresholds are printed per-domain in the agent output as `rule_fired`.
---
## Practical note: “Why does my city show X seismic events?”
If **Seismic Mode = Region**, the count is for the **selected region** (e.g., EMEA) over the last 24 hours at **M ≥ 2.5**.
Switch to **Local radius** mode to make the count location-dependent.