Chapter 8 · Section 4
The Novas Drawn: Eruption, Pin Head, Big Bang, First Light and Fade
The BPT law
BPT Part 3.6 orders the novas as the UniSpheral Outward Expansion Set: the Null Nova, Toroidal Genesis, makes space; the Data Nova, Dimensional Genesis, is "the first true expansion of data beyond containment", the data pouring onto space and laying its lattice; the Physical Nova, Temporal Genesis, is the big bang; the fourth, Spacetime Genesis, completes the four-dimensional scaffold. The book says how the third arrives: "From the Data Nova until it, the data roams the scaffold freely, at light speed, filling the lattice; as the Causal Nova nears, the scaffold with all its data draws in to the pin head, the Pulsecore's own size, and then erupts as the physical universe, every part of it at once."
BPT Part 3.11 (The Expansion of the Physical Universe) gives the size it starts from, the Pin Head Scale a↯ = R⊛/R⊚, "at the Physical Nova the universe is the size of its Pulsecore", about 10⁻⁶¹ for ours. Its first light obeys Radiation Cooling, T_γ = T_γr·a_r/a, and its first gravitational waves the Primordial Wave Stretch, λ_w = λw0·a/a₀, with the strain falling as a₀/a inside the horizon. The Part describes the game's own drawing: "The game draws the first light at the Physical Nova as a white-hot glow over the whole torus, cooling through yellow and red to dark as it grows, with the first waves' crests over it, stretching with the space; the empty shell of Harmonic 1 stays in view round it." Its Game's Reading adds that the vacuum's share tanh²(x) rises through the life and "the skin of the torus darkens behind the stars as it grows"; the Null Vacuum's Vacuum Pressure, p⦵ = −ρ⦵·c², is BPT Part 3.13's. BPT Part 8.7's Modal Amplitude Function, Ψ{m,n} = A{m,n}·exp(i(mφ + nθ − ω{m,n}t)) with whole mode numbers m and n, is the form any wave that closes on the torus must take. BPT Part 3.10 ends the life with Universal Dissipation: once the census is complete, "it goes on pulsing through its decay, and its field dissipates into null only when the decay ends", and "the space remains".
The established physics
Radiation in an expanding universe cools as T ∝ 1/a (the scale factor a); a hot body's color runs from white through yellow, orange and red as it cools (Planck 1900). Gravitational waves from a source fixed in comoving space stretch with it. A gravitational-wave signal rings down after its peak (Abbott et al. 2016). The drawings below follow these in shape; their colors and timings are look only.
The game's math
The Data Nova (setEpoch('nova') scene3d.js:1204, render() scene3d.js:1935–1946). Over 10 steps, with the ease e = 2k² for k < ½ and 1 − (2 − 2k)²/2 after, the skin fades in over the space already standing (or grows from 0.01 of its size if there is none) and the mask opens from the hole outward, drawMask(0.7, 0, max(0.02, e)). makeDataEruption() scene3d.js:291 sends 14,000 points out of the center, colored from the lit skin: 62 % to one of 24 lines round the tube, 38 % to one of 12 rings, each starting after a delay of up to 0.25 and landing within 0.85 of the 1.5 s flight (stepDataEruption() scene3d.js:315), with the ease e = 1 − (1 − k)³. For e < 0.3 a point runs straight out in the torus's plane to the throat; after that it runs round the tube on the skin to its place, never across open space. Landed, the points ride the lattice's phase and twist and pulse as 0.7 + 0.3·sin(age/160 ms).
The pin head. pinS() scene3d.js:339 is the torus at the Pulsecore's size:
pinS = min(1, CORE·coreK / (HOLE + 2·TUBE·scale))
which is HOLE/2.22 once the core is at its true size: 0.0061 at level 6 on a desktop. app.js:1301–1303 sets setPinhead(p²) with p the share of the way from the Data Nova to the Physical Nova, and the scene scales the torus, the lattice, the wells and every point layer by s = 1 − kk·(1 − pinS), kk the pin's progress since it started (scene3d.js:2009–2010). After the Physical Nova the scale is s = max(pinS, a), the expansion's scale factor from app.js expansionA() (Chapter 4).
The big bang (burstInner() scene3d.js:1067). In drawn time, 3.2 s (scene3d.js:1965–1999):
kb = bangAge / 3200 ms; ease = 1 − (1 − kb)³
flash : scale 0.6 + (2·HOLE − 0.6)·ease, opacity 0.9 − 1.1·kb (the Pulsecore blazing in the hole)
ring : scale 0.3·s + ((R + t)·s − 0.3·s)·ease, opacity 0.9·(1 − kb) (the shock in the torus's plane, to its outer edge)
cloud : kg = min(1, 1.4·kb), eg = 1 − (1 − kg)²
sphere : scale max(0.001, 1 − 3·kb)
torus : s = pinFrom + (1 − pinFrom)·ease
The cloud is a copy of the data within plus makeBangSkin() scene3d.js:369, 16,000 points sampled from the core's lit skin (dark pixels only after 5·N tries), each lifted to full color by min(1.6, 0.85/max). Both follow bangPath() scene3d.js:396: for eg < 0.4 they flatten into the torus's plane and run out to the throat; after that they run round inside the tube, half each way, by a share 0.3 + 0.7·frac(2h) of half a turn (h a golden-ratio sequence), swelling at mid-tube by 1 − 0.5·sin(π·min(1, 1.2f)). They fade from kg = 0.65 to 1. Meanwhile each star flies out with the torus from the pin head (Part 8.7).
The first light and the first waves (scene3d.js:2153–2167, drawn on the starlight skin of Part 8.7). From the Physical Nova:
x = clamp( ln(a / a₀) / ln(clamp(0.35 / a₀, 4, 40)), 0, 1 ) (a₀ the scale factor at the bang)
T = 1 − x
glow color = ramp over T: (1, 0.97, 0.9) at 1, (1, 0.82, 0.45) at 0.7, (1, 0.5, 0.18) at 0.45, (0.75, 0.16, 0.05) at 0.2, (0.2, 0.02, 0.01) at 0
glow = 0.75·T^1.3 · color
wave strain = 0.7·T²
so the whole torus glows white-hot at once and is dark by the time the universe reaches 0.35 of its full size (or within a factor 4 to 40 of the bang's scale). With no scale factor yet, x runs on 20 s of clock. The waves are three plane waves with whole wave numbers round the torus (k = 24 round the ring, 12 round the tube, and their sum), so they close on themselves and stretch exactly with the skin; their crests are drawn where the mean of the three passes 0.45 to 0.85.
The vacuum darkens the skin (scene3d.js:2023–2027): once there are stars, the skin's color is 0.62·max(0.3, 1 − 1.2·Ω⦵) for the Null Vacuum's share Ω⦵ (app.js vacuumShare(), Chapter 4), and its glow at most 0.1·(1 − Ω⦵).
The fade into nothing (setNothing(f) scene3d.js:363, render() scene3d.js:2028–2041). During full decay f rises to 1: the skin's glow is 0.1·(1 − f) and its color 1 − f, the harmonic rings fade by (1 − f), the galaxies and streams go at f = 0.5, and at f = 1 everything goes but the space torus, rebuilt at the universe's last size at 0.8·SPACE_OP: "the hollow but noticeable torus". While the data returns the universe is held as it stood. At a bifurcation the spark breathes as 1 + 0.6·|sin(0.6k)| and cycles its hue every 20 frames.
In the game
The novas are the run's chapters, each announced by a banner at the top of the page (Part 8.13) and struck as a note (Part 8.14).
At the Data Nova the player watches the data leave the Pulsecore: 14,000 points in the skin's own colors burst from the center, fly flat out to the throat, and then run round the tube on the skin, never across open space, to land on the lattice's lines and rings, while the skin fades in from the hole outward. The banner is "Data Nova · the data erupts" (Part 8.2). The epoch line reads "Universe · the data roams the scaffold at light speed" (app.js:2146), and the wells' readout is relabeled "Proto Wells" (app.js:2141).
As the Physical Nova nears, the whole torus with its lattice, wells and points shrinks toward the hole, faster as it nears, and the epoch line reads "Universe · the scaffold draws in toward the pin head". Then, over 3.2 seconds of drawn time, the Pulsecore blazes in the hole, a shock ring runs out in the torus's plane to the outer edge, a cloud of the core's colors pours out and round the tube, and the torus balloons back with every star in it. The banner is "Physical Nova · the big bang", over "Harmonic 3 · Temporal Genesis", with "space erupts from the pin head, everywhere at once · the data on the scaffold condenses into matter". The whole skin glows white-hot at once and cools through yellow, orange and red to dark as the universe grows, with pale cyan crests of the first gravitational waves sliding over it and stretching with it. The epoch line becomes "Universe · expanding, …% of its final size · … stars" (or "gas collapsing" before the first star). "Harmonic 4 · spacetime" follows, "the fourfold scaffold is complete", with the stars shining and the wells so far. As the life goes on the skin behind the stars darkens with the vacuum's share.
At the final well the banner turns to a prompt: "Final well · … wells", "Returning to the Source", "its last bits pass home through its wells · …%" (app.js:2588), and the "Epoch:" line reads "returning to the Source", then "returned to the Source". The run summary opens, "Returned to the Source", with "Play again", "Play the next universe" and "Continue to full decay" (index.php:424–426). In the full decay the banner reads "Full decay" over its stage, "the matter spirals into the wells", then "the wells' glow goes home to the vacuum", then "the field fades into nothing" (app.js:2649–2651). The skin and the harmonic rings fade, the galaxies go at half way, and at the end only the veil of space is left on screen; the run summary's title becomes "Dissipated into nothing".
The scale model
Every animation here is drawn time, not universe time: the Data Nova takes 10 steps and 1.5 s, the big bang 3.2 s, the physical's lighting 2.5 s, whatever the level. The 14,000 erupting points and the 16,000 points of the bang skin are samples of the skin's colors, not of its data: at level 6 the field has 65,536 cells, at level 28 the theory's 16·4²⁸ ≈ 1.2 × 10¹⁸, and the eruption draws 14,000 either way.
Where the game and the theory differ
- BPT's Radiation Cooling has T_γ ∝ 1/a, falling for ever (2.7255 K today). The drawn first light runs on a ramp linear in log a, T = 1 − x, and is dark once the universe reaches 0.35 of its full size (or a factor 4 to 40 past the bang's scale); its colors are not computed from a temperature.
- BPT's primordial strain falls as a₀/a inside the horizon. The drawn wave strain is 0.7·T², the same ramp as the light's.
- The eruption lands on the fixed 24 lines and 12 rings of Part 8.2, not on the level's 4·2^L lattice.
- Code left in place but unused:
burstInner()builds a burst cloud with N = 0 points (scene3d.js:1085), so its 12-frame animation (scene3d.js:2044) runs on nothing; the stars' own fly path (placeMatter,fly < 1.4) is kept but never runs (fly = 2); the dissipation epoch computes a 20-frame fade (scene3d.js:2052) and does not use it.
Fixed numbers
| Number | Where | What it is | Kind |
|---|---|---|---|
| 10 steps, 0.01, 0.7, 0.02 | scene3d.js:1936–1943 | the Data Nova's pour | DISPLAY |
| 14,000 | makeDataEruption() scene3d.js:295 |
erupting points | CAP |
| NU = 24, NR = 12 | scene3d.js:295 | lines and rings the eruption lands on | CAP |
| 4·N tries | scene3d.js:299 | sampling attempts | METHOD (rejection sampling bound) |
| 0.62, 0.02, 0.25, 0.85, 0.08, 1.8, 0.9, (0.55, 0.6, 0.9), (0.75, 0.85, 1) | scene3d.js:302–306 | eruption shares, jitter, delays, color lift and fallback | DISPLAY |
| 1500 ms, 0.3, 1.004, 1.2, 0.7, 0.3, 160 ms, 0.035, 1002 | stepDataEruption() scene3d.js:318–337 |
flight time, path split, pulse, point size | DISPLAY |
| CORE·coreK/(HOLE + 2·TUBE·scale) | pinS() scene3d.js:339 |
the pin head | BPT (Part 3.11: the scaffold draws in to the Pulsecore's size) |
| p² | app.js:1303 | the pin's approach, faster as the nova nears | DISPLAY |
| 3200 ms | scene3d.js:1967, 2008 | the big bang's length | DISPLAY |
| 0.6, 2·HOLE, 0.9, 1.1, 0.3, 1.4, 0.65, 0.35, 3, 0.001, 0.03, 0.02 | scene3d.js:1972–1997 | flash, ring, cloud and sphere easing | DISPLAY |
| 16,000 | makeBangSkin() scene3d.js:374 |
points lifted off the core's skin | CAP |
| 6·N, 5·N tries, 0.25, 1.6, 0.85 | scene3d.js:376–386 | sampling and color lift | METHOD (rejection sampling bound) and DISPLAY |
| 0.4, 0.97, 0.6180339, 0.3, 0.7, 0.5, 1.2, 0.37, 0.9 | bangPath() scene3d.js:398–402 |
the path's split, spread and mid-tube swell | DISPLAY |
| N = 0, 12 frames | scene3d.js:1085, 2045 | the burst cloud, now empty | DISPLAY (dead code) |
| gradient stops (128 px), 0.96–1 ring, 128 segments | scene3d.js:1074–1078 | the flash and shock ring | DISPLAY |
| 0.35, 4, 40, 20,000 ms | scene3d.js:2160 | first light dark at 0.35 of full size, clamp of the log range, clock fallback | DISPLAY |
| ramp colors, 0.75, 1.3, 0.7, 2 | scene3d.js:2162–2164 | first light color and strength, wave strain | DISPLAY |
| 24 (uGWk), 0.5, 2.1, 1.7, 1.3, 0.45, 0.85, 0.9, (0.45, 0.95, 1.0) | scene3d.js:849, 870–871 | wave numbers, speeds, crest band, color | DISPLAY |
| 0.62, 0.3, 1.2, 0.1 | scene3d.js:2024–2026 | the skin darkened by the vacuum | DISPLAY |
| 0.1, 0.5, 0.8·SPACE_OP | scene3d.js:2029–2039 | the fade into nothing | DISPLAY |
| 20 frames | scene3d.js:2052 | the dissipation fade (unused) | DISPLAY (dead code) |
| 0.06, 1, 0.6, 20, 0.8, 0.85 | scene3d.js:170, 2055 | the bifurcation spark | DISPLAY |