11. Glossary
Every term used on the site.
Accession (PSI-nn)
The identifier PSI gives each investigation, written like PSI-25. Every result in PYRION names the investigation by its accession, so you can find it in the archive. An accession is an identifier, not a number to calculate with.
## For engineers
Format PSI-<number>; sorted numerically by compareAccession (engine/src/evidence.ts). The manifest data/manifest/investigations.csv maps accession to acronym, title and DOI (parseInvestigationCatalog, engine/src/experiments.ts).
Blocker
A blocker is the fixed reason why an investigation is not comparable with your condition: something was not recorded, cannot be used, was tested only in another regime, and so on. A blocker has a code, a plain sentence and sometimes an action.
## For engineers
Blocker { code, axis, testedValues?, sentence, action? }; codes AXIS_NOT_RECORDED, NO_USABLE_VALUE, REGIME_NOT_TESTED, RECORDS_DISAGREE, AXES_NOT_RECORDED_TOGETHER, VALUES_NOT_PAIRED (engine/src/types.ts; produced by blockersOf, engine/src/verdict.ts:100). See "Why an investigation is not comparable: the blocker codes".
Cluster
The tests of one investigation that were run in the same regime. An investigation with tests in air and tests in a helium mix has two clusters; each gets its own verdict and the best one becomes the investigation's verdict.
## For engineers
Cluster { accession, key, regime, tests }, key from regimeKey over REGIME_AXES (engine/src/evidence.ts). One verdict per cluster (judgeCluster).
Condition record
One measured value of one test of one investigation, with the unit as written, the exact quote it came from and where the quote is (file and location). The engine only knows what is written in these records.
## For engineers
Fields: accession, test_id, variable, value, unit, value_original, unit_original, method, source_file, source_location, quote, status, note (RECORD_FIELDS, engine/src/types.ts; validated by parseConditionCsv, engine/src/records.ts). test_id * applies to every test of the investigation unless the test has its own record for that variable.
Continuous axis
A setting that is a number: oxygen fraction, pressure, flow velocity, sample thickness and a few others. Compared by range and, for oxygen with pressure, by region. The opposite is a regime axis, which is a category.
## For engineers
CONTINUOUS_AXES (engine/src/types.ts): o2_mole_fraction, burner_o2_mole_fraction, pressure (kPa), flow_velocity (cm/s), sample_thickness (mm), droplet_diameter_initial (mm), ambient_temperature (K), gravity_level (g). gravity_level is informational and never compared.
Glossary of terms
Regime: the physical situation (gravity, fuel phase, diluent, flame type). Different regimes are not compared.
Convex hull: the smallest outline containing an investigation's measured oxygen and pressure points; inside it counts as tested.
Diluent: the gas that fills most of the atmosphere besides oxygen. Normal flame: fuel on one side, oxygen from the surrounding gas. Inverse flame: oxygen from a burner into a surrounding fuel gas.
psia is absolute pressure; kPa is shown first, psia in brackets.
PYRION convention
A choice PYRION made that is not a NASA value and is labelled as such wherever it affects a result: the 0.5 % tolerance, the 0.01 g microgravity cut, the 0.9 to 1.1 g normal band, the 10 % and 30 % extrapolation levels, the plausibility windows, and the test-matrix steps for pressure.
## For engineers
MEASUREMENT_TOLERANCE_NOTE, MICROGRAVITY_CONVENTION_NOTE, NORMAL_GRAVITY_CONVENTION_NOTE, EXTRAPOLATION_LEVEL_NOTE, TEST_MATRIX_NOTE, HABITAT_WINDOWS (see "Limits and honesty" for the list).
Different regime (route)
A route that needs a change of regime, for example from partial gravity to microgravity. It is always ranked after every route that does not need one, and always labelled "another regime, not a small step".
## For engineers
Route.kind === 'different_regime' iff any change has kind: 'switch_regime' (engine/src/navigator.ts); compareRoutes gives it tier 1.
DOI
A permanent web identifier for a published dataset. Every PSI investigation has one, and PYRION shows it with every result that rests on that investigation. NASA technical reports (NTRS) and NASA standards have no DOI; they are cited by their NTRS number or URL instead.
## For engineers
Stored in data/manifest/investigations.csv (doi column) and passed to the engine as a catalog; NASA_STD_6001B.doi is null on purpose.
Evidence map
The shaded background of the chart: for each oxygen and pressure on a grid, how many investigations are Applicable and how many Extrapolation, for the selected regime. See "The evidence map".
## For engineers
evidenceMap(...) (engine/src/navigator.ts:419); each cell equals evaluate() for that oxygen and pressure.
Extrapolation level
How far outside the tested data an Extrapolation verdict is: inside each tested range but this combination was not tested, just outside (up to 10 %), outside (up to 30 %) or far outside (more than 30 %). It measures distance from the tested data, not reliability or safety.
## For engineers
ExtrapolationLevel, EXTRAPOLATION_LEVELS = { just_outside: 0.1, outside: 0.3 }, EXTRAPOLATION_AXIS_FLOOR = 0.05 (engine/src/levels.ts).
Fingerprint
A 64-character code computed from the whole result. Same question, same data, same engine: same fingerprint. A different fingerprint means something changed.
## For engineers
sha256Hex(canonicalJson(evaluation)) (engine/src/answer.ts, engine/src/sha256.ts:34).
Gravity regime: microgravity, partial gravity, normal gravity
The three gravity situations PSI's tests are sorted into: microgravity (as aboard the ISS or in a drop tower), partial gravity (the Moon, Mars) and normal gravity (the ground). A gravity level you type is turned into a regime with PYRION conventions: below 0.01 g microgravity, 0.01 up to 0.9 g partial, 0.9 to 1.1 g normal, above that not covered.
## For engineers
REGIME_VALUES.gravity_regime = ['microgravity', 'partial_gravity', 'normal_gravity']; regimeOfLevel (engine/src/quantity.ts:399); MICROGRAVITY_BELOW_G = 0.01, NORMAL_GRAVITY_BAND = { lo: 0.9, hi: 1.1 }.
Gravity level (informational)
The number of g you typed. It is shown and it selects the regime, but it is not compared with anything, because no PSI record states a gravity level.
## For engineers
Target.informational.gravity_level (engine/src/types.ts); a continuous.gravity_level in a target is moved there by routesToEvidence, experimentsNeeded and threePartAnswer.
Investigation
One entry of the PSI archive (NASA Physical Sciences Informatics): a research project with its tests, its data and its DOI. PYRION judges each investigation separately.
## For engineers
Identified by its accession; verdict = best verdict of its clusters (evaluate, engine/src/verdict.ts:523).
Leave open
Not stating an axis, so it is not compared. Allowed as a route step only for fuel phase, diluent and flame type, when an investigation did not record them. Never for gravity, oxygen, pressure or any other number you set.
## For engineers
RouteChange.kind === 'leave_open'; enforced in planCluster (engine/src/navigator.ts:120) and blockersOf (engine/src/verdict.ts:100).
Margin point
A point of the proposed test matrix with a higher oxygen partial pressure than your target: more severe than your target, so it shows how much room there is.
## For engineers
MatrixPoint.marginPoint iff o2 × pressure exceeds the target's (engine/src/experiments.ts).
Measurement tolerance
The 0.5 % of your own value by which you may miss a tested range or region and still count as inside. It stops 101.3 kPa and 101.325 kPa from giving different verdicts. A PYRION convention.
## For engineers
MEASUREMENT_TOLERANCE_REL = 0.005 (engine/src/types.ts:175).
NTRS
The NASA Technical Reports Server: where NASA's published papers, presentations and reports live. PYRION cites them by NTRS number (for example NTRS 20260001966) and by PDF page.
## For engineers
NTRS documents have no DOI; the NTRS id is the identifier (SourceRef.identifier, engine/src/presets.ts). Page numbers are PDF pages, with the printed slide number beside them when the PDF has one (the slide number is the PDF page minus one for NTRS 20260001966).
Oxygen partial pressure
The share of the total pressure that is oxygen: oxygen fraction times total pressure. 34 % oxygen at 8.2 psia is 2.788 psia of oxygen; 21 % at 14.7 psia is 3.087 psia. It is computed by code, never by a language model.
## For engineers
o2PartialPressure(o2, pressure) (web/lib/expert/calculators.ts) parses with parseQuantity and uses the table TO_KPA (psia 6.894757). Margin points of the test matrix are defined on it.
PSI
NASA's Physical Sciences Informatics archive of microgravity and combustion experiments. PYRION only knows what it extracted from PSI records, so it always says "in PSI" and never "no data exists".
## For engineers
Records come from the PSI investigations listed in data/manifest/investigations.csv; PYRION text uses "in PSI" by rule (engine/src/answer.ts).
Target
The condition you are asking about: oxygen, pressure and a gravity regime, plus any other axes you set. The marker on the chart.
PYRION proposal
A plan PYRION suggests, always labelled "PYRION proposal (a testable plan, not a NASA plan)". Quotes from NASA inside it are word for word, with document and page.
## For engineers
EXPERIMENT_LABEL (engine/src/experiments.ts:13).
Scenario (preset)
A target taken from a NASA source, such as the ISS cabin air. Changing any control leaves the scenario, and the page then says Your condition.
Receipt
The records, with their sources and DOI, that stand behind a statement. A verdict or an answer without a receipt cannot be checked, so every result carries one.
## For engineers
Reason.citations and AnswerCitation.recordIds (engine/src/verdict.ts, engine/src/answer.ts): accession|test|variable|source file|location.
Show on the envelope
A button in a TARS answer that loads the answer's condition into the dashboard, replacing your controls.
Help mode
A switch in the ? menu. While it is on, clicking an element opens its topic and does not run the element's action.
Regime
A situation that changes the physics of the flame so much that two investigations in different regimes are not near each other, however similar their numbers: gravity regime, fuel phase, diluent gas, flame type. No distance is defined across a regime.
## For engineers
REGIME_AXES = ['gravity_regime', 'fuel_phase', 'diluent', 'flame_type'], values in REGIME_VALUES (engine/src/types.ts).
Layer (engine, NASA, expert)
One of the three kinds of block in a TARS answer: computed by code, quoted from NASA and checked, or TARS's own explanation, labelled unverified.
Region covered by tests (hull)
On the oxygen-pressure chart, the smallest convex shape that contains all the points an investigation's tests measured: the region its tests cover. Inside it (with the 0.5 % tolerance) your condition is Applicable; outside, Extrapolation.
## For engineers
Convex hull (Andrew's monotone chain, convexHull, engine/src/geometry.ts:25) of the points normalized by the axis scales; hullContains (line 70, EPS = 1e-9), hullNearBox (line 88). One point and one segment are valid (degenerate) hulls.
Hypothetical
A simulated test added in memory for a what-if answer. It is not a measurement and is never saved.
Route
The smallest change to your condition that would make a given investigation comparable: move a number, leave an axis open, or switch regime. Each route is checked by the engine before it is shown.
## For engineers
Route (engine/src/navigator.ts): kind, changes[], changeCount, distance, target, sentence.
Device id
A random number in a cookie that lets each browser have its own rate-limit allowance. It carries no personal data.
Record status
How far a record has been checked: extracted (read from the source with its quote), verified (a person checked it against the source) or insufficient evidence (the source does not state it clearly enough; never counted).
## For engineers
RecordStatus = 'extracted' | 'verified' | 'insufficient_evidence'; EngineOptions.minimumStatus selects 'extracted' (default) or 'verified' (engine/src/types.ts, counts in engine/src/evidence.ts).
Technical note
The figures that only specialists need (normalized distances, test identifiers) kept apart from the sentence everybody reads.
## For engineers
Reason.technicalNote (engine/src/types.ts).
Transfer analog
A PSI test whose flame stretch rate falls inside the stretch rate expected from buoyancy at another gravity level. A hypothesis, never evidence.
Test
One run of an experiment inside an investigation (one test_id). A test has its own measured values.
## For engineers
TestEvidence (engine/src/evidence.ts); testPoints returns its measured points on given axes, or null when pairing is unknown.
Test matrix
The set of conditions proposed around your target: oxygen plus and minus 4 and 8 points, pressure plus and minus 15 %, up to 15 points.
## For engineers
TEST_MATRIX_O2_OFFSETS_POINTS, TEST_MATRIX_PRESSURE_FRACTIONS (engine/src/experiments.ts:16-17).
Unreachable route
An investigation for which no honest route exists (for example it did not record the pressure you set). It is listed with its reason, never silently skipped.
## For engineers
RouteSet.unreachable[{ accession, reason }] (engine/src/navigator.ts).