Tutorial
Reading the plasma-blackout programs
Three walks through code that is committed, runs, and gates itself. Each station gives what the program does, the reason for that construction, and the failure mode of the alternative.
What you will be able to do
After the third walk you can open an unfamiliarCfdFlow program and answer four questions about it: where its leg boundaries sit and why, whether its counterfactual forks a state or alternates a world, what its gates would catch, and which of its constants record a measurement rather than a preference.
The subject is a reentry vehicle that enters at Mach 25, loses every GNSS link to its own plasma sheath, navigates without one, and lands under a retro burn. That problem requires fluid dynamics, plasma chemistry, navigation, and control to be correct simultaneously, which is the multidisciplinary coupling the NASA CFD Vision 2030 Study names as an open challenge. The Why pagecarries that mapping in full.
Before you start
The walks require a Rust toolchain and a clone of the repository. They assume no prior familiarity with the crate, and cover reentry physics only where a design decision depends on it.
git clone https://github.com/deepcausality-rs/deep_causality.git
cd deep_causalityEach walk opens by running its program. Run them in order the first time, because walk 2 writes the table walk 3 reads. Total runtime is about eleven minutes. Every number quoted in the walks comes from a committed run output, so your output should match.
The three walks
- 01Walk 1: How the corridor was builtWhy does the blackout window come out of a predicate instead of a constant, and why is the counterfactual a fork rather than six re-runs?you learn Read a CfdFlow program and state the reason for each of its four structural decisions.produces The vocabulary walks 2 and 3 assume.
- 02Walk 2: How one descent became a tableWhy is a weather world an alternation of a baseline rather than its own config, and why does every row need eight runs behind it?you learn State when to fork a state, when to alternate a world, and why a table row without an ensemble cannot separate a mechanism from a draw.produces weather_table.csv, the artifact walk 3 reads in flight.
- 03Walk 3: How the loop was closedWhy is coast, commit and burn a single march call, and why must the throttle counterfactual fork a marched state rather than a parameter?you learn Identify a leg boundary that would discard the state a counterfactual needs, and read a constants file as a record of corrections.produces A landing at 1.78 m/s, and the family's closed loop.
Source for all three programs:examples/avionics_examples/cfd/plasma_blackout/