Pluto notebooks · auto-rendered

Examples

Worked examples covering the full BasisSimulator.jl pipeline. Each notebook runs end-to-end against a simulated phantom and renders publication-quality figures. Pluto-rendered, statically embedded — open one to see the full code, prose, and outputs in place.

The Five-Struct API
01EICTFBPGE Apex Elite

The Five-Struct API

Walk the entire BasisSimulator surface — Phantom, Scanner, CTProtocol, SimOptions, ReconOptions — on the GE Revolution Apex Elite, with the full clinical correction pipeline (BHC + noise floor + cupping).

Open notebook →
XCAT Phantom + Custom Materials
02EICTFBPHybrid IRXCAT

XCAT Phantom + Custom Materials

Load a high-resolution XCAT voxel phantom and assign each region a tissue-specific XrayAttenuation.Material — including a custom iodinated blood mixture built inline. FBP vs Hybrid IR side-by-side.

Open notebook →
Dual-kVp VMI on Gammex 472
03EICTDual-kVpVMIMono+

Dual-kVp VMI on Gammex 472

Image-domain dual-energy pipeline (Ding 2012) — RSKR joint denoise, clinical-calibrated decomposition, Mono+ VMI at 40/70/100/140 keV, verified per-rod against XrayAttenuation theory.

Open notebook →
PCCT VMI on Gammex 472
04PCCTNaeotom AlphaVMIMono+

PCCT VMI on Gammex 472

Photon-counting CT image-domain pipeline on a Siemens Naeotom Alpha — 4-bin sim → low/high recombine → RSKR-2ch denoise → self-cal Ding decomp → Mono+ VMI at 40/70/100/140 keV, verified per-rod against XrayAttenuation theory.

Open notebook →
XCAT UHR → CT Scan: Phantom Grids and the Affine Round-Trip
05EICTXCATAffineResampling

XCAT UHR → CT Scan: Phantom Grids and the Affine Round-Trip

Crop a 0.4 mm UHR XCAT down to a cardiac sub-region (the simulator's memory-efficient equivalent of scanner SFOV), then use phantom_to_world_affine + recon_to_world_affine + resample_to_recon to overlay ground-truth labels onto the HU recon — pixel-perfect, with :nearest / :linear / bring-your-own interpolation.

Open notebook →
CatSim vs BasisSimulator (CPU + GPU) — qualitative + runtime
06EICTCatSimGPUBenchmark

CatSim vs BasisSimulator (CPU + GPU) — qualitative + runtime

Same Gammex 472 phantom (heavily downsampled), same GE Apex Elite scanner, three forward-projection + FDK pipelines: XCIST/CatSim (Python reference), BasisSim CPU, BasisSim GPU. Side-by-side mid-slice mosaic + wallclock table — BasisSim matches the physics and lands well ahead on time.

Open notebook →