>[!warning]
>This content has not been peer reviewed.
# RST gravity sector — empirical evaluation
This folder contains the **implementation** that tests the Relational Substrate Theory (RST) gravity sector against observational rotation curves. The **method and results** are documented in the SPARC notes under `../python calculations/` and `../python calculations results/`.
---
## What it tests
RST predicts that the gravitational acceleration threshold $a_0$ evolves with the Hubble parameter: $a_0(z) = c \cdot H(z) / (2\pi)$. This yields three testable consequences:
1. **Local anchor (z≈0):** The interpolation function with $a_0 \approx 1.04 \times 10^{-10}$ m/s² must reproduce the observed Radial Acceleration Relation from the SPARC database.
2. **Rotation curves:** Predicted $v(r)$ for individual SPARC galaxies must match observed rotation curves.
3. **High-z shift:** At $z=2$, the RAR curve shifts (higher $a_0$, sharper transition). This is the unique RST prediction that standard MOND does not reproduce.
**Theory:** [[../Relational Substrate Theory (RST)]], [[../Fidelity]], [[../Resource Triangle]], [[../Noise Floor]].
---
## Setup
```bash
pip install -r requirements.txt
```
---
## Data
Download the SPARC data from [http://astroweb.cwru.edu/SPARC/](http://astroweb.cwru.edu/SPARC/) and place the files in **`data/`**. See **[[about systems/expanded theory/sparc evaluation/data/README]]** for details.
**Citation:** Lelli, F., McGaugh, S. S. & Schombert, J. M. (2016), AJ 152, 157. [arXiv:1606.09251](https://arxiv.org/abs/1606.09251)
---
## Running
```bash
# Run unit tests (from sparc evaluation/ folder)
python -m pytest tests/
# Run analysis scripts
python notebooks/01_rar_local.py
python notebooks/02_rotation_curve.py
python notebooks/03_highz_prediction.py
python notebooks/04_sparc_full.py
python notebooks/05_sparc_n2.py
python notebooks/06_sparc_float_n.py
python notebooks/07_sparc_filtered_n.py
python notebooks/08_gate1_highz_btfr.py
```
Plots and tables are saved to **`notebooks/output/`**.
**Note:** The Super-Relational Mapping identity proof lives in **[[../python calculations/Super-Relational Mapping - Code]]**.
---
## Structure
```
sparc evaluation/
├── README.md ← This note
├── SPARC evaluation - Code.md ← Documents rst + notebooks (engine, outputs)
├── rst/ ← Theory + data reduction
│ ├── interpolation.py ← μ(η,n) and solvers — uses rst_engine (same as applications)
│ ├── cosmology.py ← H(z), a₀(z), n(z)
│ └── rotation_curve.py ← g_N → v_pred at any z
├── data/ ← Observational data (user-downloaded)
│ └── README.md ← Data citation and columns
├── tests/ ← Unit tests
└── notebooks/ ← Analysis scripts (plots, CSV output)
└── output/ ← Generated figures and result tables
```
**Engine:** **`rst/interpolation.py`** imports **`rst_engine`** (at workspace root) for $\mu(\eta,n)$ and for the generic solver, so SPARC evaluation and all application scripts share one implementation of the core RST maths. Cosmology and rotation-curve helpers remain in rst.
---
## Links
| Link | Description |
|:---|:---|
| **[[../python calculations/SPARC Evaluation Verification]]** | Verification note (what is tested, parameters, interpretation) |
| **[[../python calculations/SPARC Evaluation - Code]]** | Method, pipeline logic, data source |
| **[[../python calculations results/SPARC Evaluation Results]]** | Summary statistics (Υ_disk, χ², fit rates) |
| **[[../../expanded theory applied/How we do applications]]** | How applications and evaluation plug into the engine |
| **[[../../expanded theory applied/Implementation status and problems]]** | Status of all implementations (including SPARC) |
| **[[../Fidelity]]** | Fidelity $\mu(\eta,n)$ definition |
| **[[../Resource Triangle]]** | $W^n = \Omega^n + N^n$ |
| **[[../Noise Floor]]** | $a_0 = cH/(2\pi)$ |
| **[[about systems/expanded theory/sparc evaluation/data/README]]** | Data download and column description |