Skip to content

Latest commit

 

History

History

README.md

/ampoule: the sealed machine in real photon transport

The ampoule of transistor/SEALED.md is the one machine the theory says it can seal today, and transistor/EMBODIMENT.md specifies it at assembly grade. Every number in those two notes that is not a decay constant was an assumption: the photons a gigabecquerel of ⁹⁰Sr/⁹⁰Y actually sends into the compute shell, the rate at which the boundary counts them, the pile up in a 2 mm site, the coupling between sites through a real glass plate, what a tungsten aperture and a lead septum actually do to a hard bremsstrahlung spectrum, and the dose outside a wall the build note said the builder must certify. This directory builds the vessel in OpenMC with the official ENDF/B-VIII.0 photoatomic library, drives it with the beta spectra of its own core, calibrates the instrument first, and replaces every one of those assumptions with a tally.

file what it is
beta.py the ⁹⁰Sr and ⁹⁰Y beta spectra (unique first forbidden shape, Fermi function), checked against the ICRP 107 mean energies
calibrate.py the instrument against references that are not OpenMC: attenuation against NIST XCOM, slab transmission against the exponential, thick target bremsstrahlung against the textbook rule; writes calibration.json
model.py the vessel, shell by shell, its sources and tallies, and the stages below; writes tallies.json (needs OpenMC and the data)
report.py every derived number, results.md, and figure 17, from the two JSON files (numpy and matplotlib only)
results.md the numbers, regenerated by report.py
compile.py the compiler of theory Section 11 on the measured Green's function, the exact law at 64 sites, and the timing closure; writes compile_results.md and figure 18 (numpy and matplotlib only)
compile_results.md the vessel compiled, regenerated by compile.py
tallies.json, calibration.json the committed run, with uncertainties

The vessel as built

Nested cylinders on one axis, dimensions from the build note where it gives them and stated where it does not:

  • core: an 8 mm × 10 mm SrTiO₃ pellet in a 1 mm 316L capsule at the centre of a 30 mm × 40 mm krypton cell at 5 bar with 2 mm aluminium walls;
  • collar: a 2 mm tungsten sleeve around the lamp cell with one opening per site, ±10° by 6 mm at nominal, the mechanical GATE terminal of the reference transistor;
  • compute shell: borosilicate glass from 19 to 25 mm radius carrying 64 sites, 2 mm scintillator cells on a lattice of 8 heights by 8 azimuths at 22 mm radius, plastic throughout and CsI in one variant run (the build note offers either), with an optional 1 mm lead septum between two sectors, the build note's inhibitory blocking;
  • boundary: a 6 mm plastic scintillator ring with end caps (the 24 SiPM paddles), 1 mm of silicon behind it, and four 5 mm CZT pixels in the ring;
  • shield: 8 mm PMMA, 4 mm lead, 3 mm titanium, outer radius 4.9 cm and half length 6.6 cm, then air to a metre.

The betas are handled by OpenMC's thick target bremsstrahlung treatment: an electron born in the pellet deposits its energy there and emits the bremsstrahlung a thick target of that material would. For a ceramic pellet whose radius exceeds the range of most of the spectrum this is the right approximation and it is stated wherever a number descends from it.

The stages

  1. Calibration. The library's total attenuation for lead, iron, tungsten and water at 100 keV to 2 MeV against NIST XCOM; uncollided transmission through slabs of up to three mean free paths against exp(−μx); the energy an electron radiates stopping in water and iron at 0.5, 1 and 2 MeV against the thick target rule. The last is the source term of everything and the least certain link, and the report says so.
  2. The source. An emission stage first: the betas at their real activities in the pellet ceramic, and the bremsstrahlung they make, per second. Then the nominal vessel driven by that spectrum: photons leaving the capsule, the field in every site, the boundary counts and their spectra, the energy deposited in every cell, the dose in air at contact, ten centimetres and a metre, and the leakage through the shield. The same stage is run once more with CsI cells in place of plastic.
  3. The gate. The collar opening at 0, 25, 50, 75 and 100 percent of nominal: the transfer curve.
  4. The septum. The nominal vessel with the lead sheet in place.
  5. The synapse. Photons born in each site in turn, with the spectrum the source stage found there, tallied in every site: the 64 × 64 Green's function, open and with the septum.

What came out

what assumed in the notes computed where it lands
photons leaving the core not given 43.9 M/s, mean 252 keV, 0.0569 per decay the whole budget, a few percent of the beta energy
deposited power 181 µW per GBq 183 µW for the pair the ledger holds
site interactions, all 64 proposal budget 10⁶/s 32.9 k/s in plastic, 1.02 M/s in CsI plastic is 30× short; CsI meets the budget
pile up per site n ≳ λ τ_d 0.16 percent of events overlap at 100 ns in CsI the floor plan holds
accidental coincidences, two mean sites the coincidence multiplier's raw material 51 /s in CsI (0.2 four bit readings per second) enough for a slow four bit AND gate
boundary events 10⁷/s at percent level collection 3.25 M/s, from 7% of core photons 0.33× the assumption; 50 eight bit reads per second, not 153
collar contrast the GATE terminal 6.34 in plastic, 11.94 in CsI a knob, not a switch
synapse weights written by geometry nearest neighbour 3×10⁻⁵, fan out 0.1% the fan out tax, three orders below the toy fabric
septum blocking inhibitory coupling left at 0.49 (unshielded side 1.00) a filter, not a wall
dose to be certified 67.8 µSv/h at the wall, 0.261 µSv/h at 1 m; 7.7% of core photons escape a lead pot instrument, as the licence class said

The design's power ledger holds; its proposal budget holds only with CsI cells; its boundary budget is a factor 3.0 optimistic; its two mechanical controls are analog because its light is hard; and its wall is a filter for the same reason. The ampoule is a rate coded sampler with small weights and a narrower mouth than it was priced with, and each of those words is now a number.

The compilation

compile.py runs the compiler of theory Section 11 on the Green's function above and closes the vessel's timing (compile_results.md, figure 18). The fabric is solid angle times a 3 percent interaction probability. Way B places the twin's instance on the lattice's 120 bonds exactly, and the 60 couplings per site that pass no aperture then bury it, 7.9× the instance in weight units, with a fluctuation still 3.1× the drive after the collar takes out the mean. The 64 site law is checked against an exact transfer matrix at 3.3 sweeps per independent sample. And every weight is a photon current, 16.3 per second per nearest neighbour bond with CsI cells, which makes the vessel as built a 0.34 sample per second machine against the 38,462 priced on proposals, with a ladder of two measured levers and two licences back.

Running it

python3 calibrate.py    # a minute
python3 model.py        # about ten minutes on a laptop; --quick for a tenth of the particles
python3 report.py       # seconds; numpy and matplotlib only
python3 compile.py      # ten seconds; numpy and matplotlib only

Requires OpenMC 0.16 and the data that neutron/data.py fetches, which now includes the photoatomic files and the natural isotopes of every element in the vessel.

The theory's sealed machine was a design; it is now a transport calculation, and the calculation says what the design could not: how many photons there are, where they go, how much of each site's traffic is another site's, what the two mechanical controls are worth, and what the wall lets through.