>[!warning]
>This content has not been peer reviewed.
# Fluid Dynamics — Code
## Purpose
`rst_fluid_dynamics.py` fits the RST fidelity model to fluid viscosity(T) and the laminar-turbulent friction factor transition.
**Modes:**
- `--viscosity` — Fit viscosity(T) for water, glycerol, ethanol (liquids) and air (gas). Compare to Arrhenius/Sutherland benchmarks.
- `--reynolds` — Fit friction factor f(Re) as μ-weighted interpolation between laminar and turbulent regimes. Compare to Churchill (1977).
Running with no flags executes both modes.
## Dependencies
- `numpy`, `scipy`, `matplotlib`
- `rst_engine.core.mu_rst` (workspace root)
## Run
From workspace root:
```bash
python "expanded theory applied/further applications/Fluid Dynamics/rst_fluid_dynamics.py"
python "expanded theory applied/further applications/Fluid Dynamics/rst_fluid_dynamics.py" --viscosity
python "expanded theory applied/further applications/Fluid Dynamics/rst_fluid_dynamics.py" --reynolds
```
## Built-in data
**Viscosity:** Water (15 points, 273–373 K), glycerol (10 points, 293–373 K), ethanol (10 points, 273–353 K), air (11 points, 200–1000 K). Sources: CRC Handbook, Perry's, NIST.
**Reynolds:** Churchill (1977) smooth-pipe friction factor at 19 Re values spanning 100–10⁶.
## Output
**Viscosity mode:**
- Console: per-fluid RST fit params, R², comparison to benchmark
- `fluid_dynamics_viscosity.png` — 4-panel viscosity vs T
**Reynolds mode:**
- Console: Re_c, n_turb, R², per-Re comparison table
- `fluid_dynamics_reynolds.png` — Moody diagram + residual plot
**CSV:** `fluid_dynamics_results.csv`
## Links
- **Theory:** [[Fluid Dynamics (RST)]]
- **Results:** [[Fluid Dynamics Results]]