Feat: Add analytic moving Alcubierre spacetime backend
Add a third analytic spacetime provider for the moving Alcubierre warp bubble, x_s(t) = v_s*t with x_s(0) = 0. The lab slices stay flat, so alpha = 1, gamma_ij = delta_ij, beta^x = -v_s f(r_s), and K_ij follows from the flat spatial metric; the time dependence enters through the moving shape argument. The exotic matter is treated as transparent, so there is no capture: rays are only ACTIVE or ESCAPED, with a bubble- centered escape radius R + 20/sigma. Expose --alcubierre-vs, --alcubierre-radius, and --alcubierre-sigma (|v_s| < 1). Scale the per-ray step budget with the escape radius and 1/(1-|v_s|) so near-luminal grazing rays still escape, and reject parameter combinations whose worst-case budget exceeds the cap. Use a cancellation-free shape formula for small sigma*R and reject derived escape radii that overflow. The regression test covers metric reconstruction, d_beta/K finite differences, the translation isometry, small-sigma stability, the flat limit, reflection symmetry, step convergence, and a near-luminal slow ray. build.md, usage.md, and README.md document the backend.
This commit is contained in:
1 parent
4e34780fa9
commit
3cbf5ba386
8 files changed
+688
-16
No files matched your search
@@ -28,8 +28,9 @@ the horizon. See [single-frame camera parameters and complete commands](usage.md
|
||||
|
||||
## Current status
|
||||
|
||||
The current implementation supports analytic **Minkowski** and
|
||||
**Schwarzschild** spacetimes, single images and observer-track image sequences,
|
||||
The current implementation supports analytic **Minkowski**,
|
||||
**Schwarzschild**, and moving **Alcubierre** warp-bubble spacetimes,
|
||||
single images and observer-track image sequences,
|
||||
adaptive lens meshes, and reusable lens-map files. It is written primarily in
|
||||
C with OpenMP CPU parallelism; an optional HIP backend accelerates PSF
|
||||
accumulation.
|
||||
@@ -52,8 +53,8 @@ libpng development files. From the repository root:
|
||||
make -j
|
||||
```
|
||||
|
||||
This builds both `build/Release/minkowski_sky` and
|
||||
`build/Release/schwarzschild_sky`. For individual backends, Debug builds,
|
||||
This builds `build/Release/minkowski_sky`, `build/Release/schwarzschild_sky`,
|
||||
and `build/Release/alcubierre_sky`. For individual backends, Debug builds,
|
||||
optional HDR/FITS output, HIP support, and regression checks, see
|
||||
[build.md](build.md).
|
||||
|
||||
|
||||
Reference in new issue
Block a user