Skip to contentStanford Interventional Pain AtlasProfessionalAccount
← Back to the atlas

Science behind the simulation

Methods & literature

How anatomy becomes an image, how a needle moves, and how contrast spreads. A source-linked account of what the simulator computes and what its evidence supports.

Scope & evidence

The atlas combines CT-derived anatomy with mathematical imaging and interaction models. It is a teaching simulator. A citation establishes the scientific basis of a method or a useful comparison; it does not validate this implementation, its parameters, or a learner’s clinical performance.

  1. 01 / SourceCT + segmentation

    Region-specific scans, masks and provenance.

  2. 02 / RepresentationMeshes + voxel fields

    Shared coordinates, material classes and authored anatomy.

  3. 03 / SimulationImages + interactions

    X-ray attenuation, acoustic echoes, needle paths and fluid transport.

Computational pipeline. Authored teaching structures supplement the source scans.
Published foundation
Established methods such as path-length attenuation, scatterer convolution and nonholonomic needle kinematics.
Simulator choice
Our numerical implementation, simplified anatomy, display effects and provisional parameter values.
Validation still needed
Comparison with measured devices, paired clinical images and independent educational outcomes.

This documents the current source tree. The contrast workshop and Gaussian-scatterer experiments are identified separately from the default atlas imaging paths.

Full-text implementation audit

Partial correspondence, with corrections still needed. The 9 September full-text audit found that all 14 supplied article files have the expected scientific text, including author versions with different pagination. Their relevant methods, equations and assumptions were compared directly with the current code. The reviews below separate a confirmed algorithm family from a faithful quantitative reproduction.

The clearest matches are the L-buffer construction, Taubin-family smoothing, quadric-decimation call, quadrature-before-envelope ordering, conservative upstream transport and conjugate-gradient pressure solve. The main open discrepancies are:

  • Ultrasound signal conventions: one-way amplitude attenuation and intensity-based reflection mixed into an amplitude envelope.
  • Fluoroscopic materials: soft tissue remains counted inside bone rather than being replaced by bone attenuation.
  • Mesh preprocessing: a quarter-voxel coordinate offset and a boundary-crop failure in synthetic checks.
  • Spatial ultrasound: sector blur uses constant line spacing, and default bulk speckle is fixed to scan coordinates.
  • Parameter and transport laws: exact acoustic constants are not reproduced by Mast’s table, and heterogeneous diffusion uses an empirical minimum-based face law.

This review updates the documentation and acquisition records. The identified simulation and preprocessing issues have not been fixed. Passing the existing tests does not resolve them.

  1. Wasserthal et al. (2023)

    Source provenance confirmed

    The CT/segmentation dataset is the stated anatomical source. The paper’s segmentation performance concerns its evaluated masks, not the atlas’s resampling, meshes or authored structures.

    Paper evidence and limits of the comparison

    9-page main article; Methods and dataset description. Separate supplementary appendices are not included.

    The current head tasks are additional models. This paper does not validate them or the atlas’s clinical landmarks. The missing training supplement is only needed for a deeper reproduction of TotalSegmentator training.

  2. Lewiner et al. (2003)

    Algorithm family confirmed; preprocessing defects

    The pipeline calls the library’s Lewiner marching-cubes method. A synthetic cube check found a +0.25 source-voxel coordinate offset introduced by the preceding upsampling transform, and a boundary-touching crop can fail.

    Paper evidence and limits of the comparison

    8-page author version; case ambiguities and topologically consistent isosurface construction.

    These are surrounding pipeline defects, not failures of Lewiner’s method. Their effect on existing shipped assets has not been measured. Later smoothing and simplification do not inherit the extraction algorithm’s topology guarantee.

  3. Taubin (1995)

    Bounded adaptation confirmed

    When enabled, paired uniform-adjacency steps with weights 0.5 and −0.53 implement a Taubin-family smoother. Displacement caps, a volume-change guard and normal smoothing are additional atlas choices. The CLI’s surface-displacement default is zero, disabling this vertex-smoothing stage.

    Paper evidence and limits of the comparison

    8-page paper; paired positive/negative smoothing passes and spectral interpretation.

    The 2% volume guard is relative to the mesh after decimation, not the original segmentation. Earlier mask erosion is logged, not bounded by a rejection threshold. Volume preservation alone cannot establish landmark accuracy.

  4. Garland & Heckbert (1997)

    Library-method correspondence confirmed

    The builder invokes quadric decimation through its mesh library and checks candidate winding and signed volume. This supports the stated algorithm family.

    Paper evidence and limits of the comparison

    8-page paper; quadric error accumulation and contraction-based simplification.

    The fast_simplification backend was unavailable in the review environment, so fresh decimation was not reproduced. The pipeline can accept nonwatertight candidates; an audit of 53 shipped meshes found no boundary edges after exact-position welding, so current holes were not demonstrated. This does not guarantee preserved thin cortex.

  5. Vidal et al. (2009)

    L-buffer method confirmed

    Signed front/back surface distances and additive blending match the L-buffer method for material path lengths. Consistent surface winding and paired intersections are necessary assumptions.

    Paper evidence and limits of the comparison

    15-page author manuscript, including cover and references; signed intersection-distance accumulation.

    The atlas’s effective coefficients, marrow inset, exposure and detector effects are separate approximations. This correspondence does not validate the final radiographic intensity.

  6. Vidal & Villard (2016)

    Material-overlap correction required

    The paper subtracts internal material lengths from the whole skin volume. The atlas adds full soft-tissue attenuation through that volume and then full bone attenuation, counting the bone-occupied path as both soft tissue and bone.

    Paper evidence and limits of the comparison

    30-page accepted manuscript; PDF p.13, §3.2.6, Eq.(9).

    For 2 cm of bone inside a body, μsoft = 0.2 cm⁻¹ produces 0.4 excess log attenuation before exposure/windowing. The paper’s spectrum, motion and experimental validation are not implemented as a complete system.

  7. Siddon (1985)

    Comparator; not implemented

    Siddon orders ray/voxel-plane intersections to obtain exact voxel path lengths. The atlas instead accumulates mesh chords; its contrast-volume renderer uses sampled ray marching.

    Paper evidence and limits of the comparison

    4 scanned pages, visually checked; exact radiological path through a CT array.

    The citation is an alternative computational approach. Neither the mesh renderer nor the contrast renderer should be described as a Siddon implementation.

  8. Mast (2000)

    Parameter foundation; exact values not confirmed

    The paper supports tissue-dependent bulk acoustic properties. At 5 MHz its muscle row gives approximately 1.624 MRayl and 0.06275 Np/mm; the app uses 1.70 and 0.063. Its fat/adipose rows do not reproduce the app’s 0.035 Np/mm fat attenuation.

    Paper evidence and limits of the comparison

    6 pages; PDF p.2 / printed p.38, Table 1; PDF p.4 / p.40, Discussion.

    The table mixes literature-informed and empirical choices. Mast cautions against treating bulk relationships as pointwise tissue laws; it does not validate a HU transfer function, bone-loss multiplier or nerve profile.

  9. Wagner et al. (1983)

    I/Q construction confirmed; spatial model differs

    Filtering signed quadrature components before envelope magnitude agrees with the paper. A homogeneous probe gave mean/SD 1.881 versus the Rayleigh value 1.913.

    Paper evidence and limits of the comparison

    8 pages; PDF p.2, Eqs.(1)–(4); p.3, Eq.(9); pp.4–5, covariance and PSF.

    Default bulk scatter is indexed by scan coordinates: an 8.715 mm lateral translation changed none of 73,728 homogeneous-scan samples. Sparsity is an empirical choice, not a requirement for Rayleigh speckle; the paper derives that distribution from many random-phase scatterers. The interface/intensity and diffuse/amplitude mixture is not its coherent mixed-scatter model.

  10. Jensen & Svendsen (1992)

    Comparator; signal conventions need correction

    The paper computes aperture-based spatial impulse responses with distinct transmit and receive responses. The atlas uses Gaussian image filtering instead. Its nonzero amplitude attenuation is applied for only one path, and intensity-based reflection is added to an amplitude envelope.

    Paper evidence and limits of the comparison

    6 pages; PDF p.2 / printed p.263, Eq.(11); pp.2–4, Eqs.(6)–(17).

    Jensen assumes a nondissipative medium; the two-way attenuation issue is a signal/path consistency finding, not a dissipative formula claimed from that paper. Sector PSF conversion also uses constant footprint spacing despite diverging rays; at 60 mm in the checked sector it gives about twice the declared lateral width.

  11. Jensen, Field (1996)

    Comparator; not implemented

    Field uses transducer apertures, excitation/impulse responses, focus/apodization timelines and spatial phantom scatterers. The atlas does not call Field or reproduce those computations.

    Paper evidence and limits of the comparison

    3-page author file: cover plus two substantive pages with phantom example and references.

    A focus-dependent Gaussian PSF is a reduced appearance model. Field’s validation cannot be transferred to it, and display noise is not a simulation of repeated RF acquisition.

  12. Eymard, Gallouët & Herbin (2000)

    Finite-volume framework confirmed; diffusion differs

    Cell balances, equal/opposite face transfers, harmonic hydraulic conductance and upstream convection agree with the numerical framework. The explicit stability limiter is consistent with a positivity bound.

    Paper evidence and limits of the comparison

    302-page chapter; §1, pp.717–720; §7.1, p.743, Eqs.(7.4)–(7.5); §11, §20.3 and §35.1.

    Diffusive faces use min(D) × min(φ), not the usual harmonic transmissibility of φD. A two-material face probe gave 0.01 instead of 0.08. This is a distinct effective interface law; mass conservation alone does not establish equivalence to the standard variable-coefficient equation.

  13. Hestenes & Stiefel (1952)

    CG family confirmed by numerical checks

    The pressure solver uses conjugate-gradient updates with Jacobi preconditioning. On an independent smooth Poisson problem, relative L2 errors were 1.295%, 0.322% and 0.0804% on 8³, 16³ and 32³ grids; independently recomputed residuals were below 7 × 10⁻¹².

    Paper evidence and limits of the comparison

    28 pages, printed pp.409–436; §2 and PDF p.3 / p.411, Eqs.(3:1a)–(3:1f).

    Jacobi preconditioning is an extension of the original recurrence. The result is for a drained positive-conductance test domain with a tight diagnostic tolerance, not a guarantee for every anatomical solve or a calibration of injection pressure.

  14. Gallouët, Herbin & Vignal (2000)

    Numerical precedent; theorem not established here

    Orthogonal cartesian geometry, diagonal mobility and upstream face concentrations correspond to the analyzed method family.

    Paper evidence and limits of the comparison

    38 pages, printed pp.1935–1972; §1, Eqs.(1.1)–(1.2); §2 and Remark 1; upstream face scheme.

    The paper’s error results concern a steady elliptic problem with regularity and ellipticity assumptions. They do not prove convergence of our transient, compartment-coupled transport, minimum-based diffusion or reduced CSF model.

Anatomy & source data

The models derive from the TotalSegmentator CT dataset. The dataset and the segmentation software have separate provenance: the derived CT assets carry CC BY 4.0 attribution, while the software is distributed under Apache-2.0. The segmentation paper describes the original 104-structure system; additional head tasks are recorded in the head model’s own provenance.[1][2]

Current regions use four subjects, not one whole-body virtual patient.
RegionSubjectAsset provenance
Lumbosacral spine & pelviss0024Mesh record · CT grid
Shoulders0224Attribution record only · CT grid
Cervical spines1384Mesh record · CT grid
Pelvis & hips1387Mesh record · CT grid
Head & jaws1384Mesh record · CT grid

Surface construction

The build pipeline combines selected binary masks, pads the volume, smooths the mask while logging erosion, and extracts an isosurface with marching cubes. The implementation uses scikit-image’s marching-cubes routine; Lewiner et al. describe the topology-aware algorithm behind its default method. Triangle reduction uses quadric error metrics. When enabled, a bounded Taubin step controls displacement and volume change relative to the mesh after decimation; its CLI displacement default is zero, disabling this stage. These are numerical safeguards, not proof that small anatomical features are correct.[3][4][5]

CT sampling and material labels

Each region’s CT is resampled into its fitted model frame and stored as an 8-bit volume over −300 to 700 HU. This gives approximately 3.92 HU per stored level and clips values outside the window. The shoulder source is recorded in the repository attribution file; its mesh sidecar is not currently shipped. Grid spacing follows the shipped grid size, view span and millimetres-per-unit scale; it must not be confused with native CT spacing. The head crop records a 1.5 mm source spacing. A synthetic extraction check found a +0.25 source-voxel mesh offset in the upsampling transform and a crop failure for a boundary-touching structure. These preprocessing defects remain open; their effect on the shipped assets has not yet been quantified.

Ultrasound also reads a categorical bone/vessel channel. A preprocessing heuristic uses cortical proximity and connectivity to separate bone interior from contrast-enhanced vessels that can overlap in HU. Unresolved voxels fall back to the density mapping. This is our classification heuristic, not a generally validated tissue segmentation method. Wein et al. already discuss the difficulty of mapping contrast-enhanced CT intensity to ultrasound appearance.[6]

Resolution and provenance matter. Resampling cannot restore subvoxel fascia, small foramina or thin cortex. Peripheral nerves, small vessels, dural interfaces, targets and annotation volumes may be authored teaching geometry. They must not be interpreted as structures measured from the source CT. Head muscle and craniofacial segmentations remain automated, unreviewed assets.

Implementation source files
  • scripts/segmentations-to-glb.py
  • scripts/ct-underlay.py
  • scripts/bone-interior.mjs
  • scripts/prepare-head-jaw.py
  • app/lib/geometry/substructure-volume.ts
  • ATTRIBUTION.md

Fluoroscopy: integrating attenuation

The radiograph starts from the Beer–Lambert attenuation model: the detector signal decreases exponentially with the material traversed. NIST supplies energy-dependent reference attenuation data; an effective coefficient is still an approximation to a clinical beam’s spectrum and detector response.[7]

I / I₀ = exp(−∫ μ(x, E) dl) ≈ exp(−Σ μₘ Lₘ)μ: linear attenuation coefficient · L: ray length through a material

Mesh path lengths, not surface shading

Closed solids are rasterized with depth testing disabled and additive blending. Signed distances from entering and leaving surfaces accumulate the total chord through each material. This is an L-buffer-style method, closely related to Vidal et al.’s GPU X-ray simulation work. Siddon’s exact voxel-path traversal is an alternative approach, not the algorithm used here. The geometric sum is valid for consistently oriented, closed surfaces with paired intersections; clipping, open meshes and invalid inset surfaces can break that assumption.[8][9][10]

Four channels retain bone path length, marrow-cavity path length, preweighted soft-material attenuation and steel attenuation. The marrow is approximated by an inset bone surface, with a nominal 1.8 mm cortical shell. Its chord is clamped between zero and the containing bone chord minus two shell thicknesses. This prevents unphysical negative attenuation, but does not make the shell a CT-measured cortical thickness. The current nested-material calculation also adds soft tissue inside bone instead of replacing that portion of the skin volume with bone material. Vidal and Villard explicitly subtract internal paths in Eq.(9); this is an identified implementation discrepancy, not a validated approximation.[9]

Reference attenuation coefficients (cm⁻¹); spectral energy dependence is described below.
MaterialμInterpretation
Cortical / trabecular bone0.52 / 0.27Two-material shell approximation
Soft tissue0.20Homogeneous surrounding tissue
Omnipaque 300 iodine contribution2.2737 at 60 keVNIST total mass attenuation × 0.300 g iodine/cm³; single-energy reference
Steel28Effective rendering coefficient
Polymer / marker / table0.45 / 5.5 / 0.26Illustrative device and table materials

The non-iodine values remain authored rendering parameters, not a material-by-material calibration against NIST or a named fluoroscope. The former contrast value of 6.4 cm⁻¹ has been replaced by an iodine-content calculation. The spectral model preserves the existing bone and soft-tissue coefficients at its 60 keV reference energy; adding energy dependence does not independently validate those coefficients.

Projection, exposure and instruments

The C-arm projection uses diverging rays from a nominal source 730 mm from isocentre, with the detector 750 mm on the opposite side. Shared projection and picking geometry keep the radiograph, annotations and needle placement aligned. Orbit framing is separated from these physical rig dimensions.

Exposure normalization, tone mapping, grain and collimation shape the displayed image. In the default path, steel is composited separately from the anatomy image. The contrast workshop instead filters tissue-plus-steel transmission with a small point-spread kernel, two effective spectral components and a veiling-scatter floor before display. This is an authored detector-response approximation. The transported iodine field is separately ray-marched, and its integrated column contributes to the radiograph.

Omnipaque 300 and the NIST conversion

The stock preparation is Omnipaque 300 (iohexol), containing 300 mg iodine/mL, or 0.300 g iodine/cm³. This is iodine mass per solution volume, not the density of elemental iodine or the mass of the complete iohexol molecule.[43]

In the NIST iodine table (Z = 53), choose photon energy in MeV and the total mass attenuation column μ/ρ. At 0.060 MeV (60 keV), μ/ρ = 7.579 cm²/g; multiplying by 0.300 g/cm³ gives 2.2737 cm⁻¹ for the stock iodine contribution. The mass energy-absorption column μₑₙ/ρ measures a different quantity and is not used for primary-beam photon removal. The existing patient attenuation supplies the carrier/tissue background; another water column is not added for each injected dose.[42]

Polychromatic transmission with SpekPy

The contrast model uses spectra generated offline with SpekPy 2.5.4 and its spekpy-v2-casim model: a tungsten target, 10° anode angle, 6.3 mm aluminum filtration, NIST attenuation data and 1 keV bins. Committed spectra span 40–120 kVp; 80 kVp is the assumed starting beam. SpekPy supplies the source fluence; the browser integrates the transmitted signal.[44][45]

This is a provisional GE OEC 9800 beam approximation. Its operator supplement lists a 10° target and minimum total filtration equivalent to 6.3 mm Al at 75 kVp. Using exactly 6.3 mm pure Al at every voltage and pure tungsten in place of the specified target materials simplifies that specification. Neither the actual unit’s spectrum nor its detector response has been measured for this model.[46]

T = Σₑ wₑ exp[−τbone,60 Rbone(E) − τsoft,60 Rwater(E) − Lstock μiodine(E)]wₑ = E Φ(E) / Σₑ E Φ(E)Φ: source photon fluence · R: NIST attenuation relative to 60 keV · Lstock: stock-equivalent iodine column in cm · μiodine(E) = (μ/ρ)iodine(E) × 0.300 g/cm³

The weights approximate an ideal energy-integrating detector with unit absorption efficiency. The sum averages transmission after applying attenuation at each energy; averaging attenuation coefficients before the exponential would lose beam-hardening behavior. Overlapping iodine columns are combined before this spectral calculation. Bone and soft tissue preferentially remove lower-energy photons, so the incremental effect of iodine depends on the preceding anatomy. The two effective components used for steel remain a separate detector-response approximation.

Tube voltage in kVp is not a monoenergetic photon setting. The assumed 80 kVp source has a calculated mean energy of about 48.34 keV before patient attenuation; its transmitted spectrum changes with tissue thickness. The retained 60 keV calculation is a single-energy comparison, not a standard clinical C-arm setting. Exposure normalization and display mapping still influence apparent darkness; the existing bone appearance and tone mapping have been retained.

Not a calibrated device or dose calculation. The model includes estimated spectral tissue/iodine transmission, but not full photon scattering, measured image-intensifier efficiency, GE automatic brightness control, or absorbed patient dose. The geometric rig and instrument coefficients are not a complete OEC 9800 reproduction. Apparent image quality is not a prediction of clinical machine performance.

Implementation source files
  • app/lib/three/fluoro.ts
  • app/lib/three/fluoro-camera.ts
  • app/lib/geometry/fluoro-geometry.ts
  • app/lib/three/fluoro-detector.ts
  • app/lib/three/contrast.ts
  • app/lib/three/contrast-attenuation.ts
  • app/lib/three/fluoro-spectrum.ts
  • scripts/generate-fluoro-spectra.py

Ultrasound: from CT to synthetic B-mode

The default simulator marches rays through the region’s CT volume in the probe frame, accumulating interface echoes, attenuation and tissue-dependent scatter. It belongs to the established family of CT-derived ultrasound approximations described by Wein, Shams, Kutter and Dillenseger. Convolution-based and deformable-model approaches provide further precedent; the app is not a reproduction of any one published implementation.[6][11][12][13][14]

1. Acoustic properties and interfaces

A lookup table interpolates tissue properties from stored HU, with bone/vessel labels and authored nerve fields overriding that mapping where available. Fat and muscle impedance are 1.38 and 1.70 MRayl; the cortex entry is 7.0 MRayl. Mast and IT’IS provide physical-property references. The complete mapping, especially echogenicity, roughness and the enhanced bone attenuation, is a mixture of literature-informed values and simulator choices—not a direct measurement of this patient’s acoustic properties.[15][16]

At an ideal normal-incidence interface, the intensity reflection coefficient is R = ((Z₂ − Z₁)/(Z₂ + Z₁))². The implementation approximates interface strength using an impedance gradient over a fixed spatial baseline. It weights this by beam alignment raised to 2.2, mixed with a tissue-dependent diffuse floor. The exponent and roughness are appearance parameters, not universal tissue constants. The squared reflection term is currently added to an amplitude envelope with an empirical gain; it is not a consistently normalized coherent interface response.[6][12]

2. Propagation and shadow

An effective propagation factor decreases with interface loss and bulk attenuation per physical step. The code applies an amplitude-scale attenuation coefficient only once along the outgoing path, then combines it with an amplitude-style envelope and 20-log display. A reciprocal pulse-echo path requires transmit and return loss. Time-gain compensation is tuned around the current convention; correcting propagation will require a consistent signal model and gain calibration. The current low-attenuation regions can produce qualitative posterior enhancement, but the depth-dependent brightness is not quantitatively confirmed. Bone attenuation intentionally represents unresolved reflection, scattering and other loss as well as absorption. Optional roughness, elevation sampling, edge shadow, sidelobe and anisotropy effects are reduced approximations. In particular, the edge-shadow option attenuates the beam; it does not solve a refracted ray trajectory.

3. Coherent scatter and the point-spread function

The current default uses sparse signed in-phase and quadrature scatter fields indexed by scan line and depth sample, rather than by tissue position. In a homogeneous test, lateral probe translation left the entire bulk-scatter image unchanged. The nerve-local field has a separate spatial representation. Each component is blurred in the beam frame before taking the envelope magnitude. Reflection is filtered separately and then combined with the scatter envelope. This follows the scatterer/point-spread-function model; it is no longer the older value-noise-only implementation. Starkov’s patient-specific scatterer estimation and deformation are related methods, not features implemented here.[17][13]

A = √((h ∗ sᵢ)² + (h ∗ sᵩ)²)h: point-spread function · sᵢ, sᵩ: signed scatter components · ∗: convolution

Under fully developed speckle assumptions, many independent random-phase scatterers lead to Gaussian quadrature components and a Rayleigh-distributed envelope; its mean-to-standard-deviation ratio is approximately 1.91. The measured homogeneous-test ratio was 1.881. This supports that one statistical diagnostic, not a claim that every tissue or the full spatial covariance satisfies the model. Sparse occupancy is an empirical choice; sparsity is not required for Rayleigh statistics. A plausible speckle statistic cannot establish anatomical or clinical realism.[18]

The point-spread function has a nominal 0.45 mm axial width and a lateral width that depends on focus and depth. Its conversion from lateral millimetres to samples currently assumes constant footprint spacing even for a sector probe. Diverging rays violate that assumption; the checked 60 mm-deep sector had approximately twice its declared lateral blur width. These widths are therefore not confirmed physical resolutions for both formats. Gain and dynamic-range compression then map echoes to display greyscale, and sector scans are resampled to image pixels. Separate live-frame noise adds presentation motion without recomputing anatomy. These are simplified signal and display models; Field II’s spatial impulse-response calculations are a more complete acoustic reference and are not run by this app.[19][20]

4. What is authored or experimental

Nerve profiles and courses are teaching fields added to the CT-derived image. Their internal texture and angle response do not constitute patient-specific nerve imaging. The Gaussian-scatterer option is a research switch outside durable training settings. UltraGauss and UltraG-Ray are relevant Gaussian ultrasound methods, but they learn reconstructions from ultrasound observations. Their results do not establish that CT alone determines ultrasound microstructure, and their trained renderers are not the default atlas renderer.[21][22]

Uncalibrated appearance. HU does not uniquely identify acoustic properties. The simulator does not solve the full wave equation, transmit/receive beamforming, multiple scattering or probe-induced tissue deformation. Paired CT/ultrasound calibration—such as the appearance-optimization strategy in Salehi et al.—is a future validation route, not a completed step.[23]

Implementation source files
  • app/lib/ultrasound/simulate.ts
  • app/lib/ultrasound/live.ts
  • app/lib/ultrasound/nerve.ts
  • app/lib/ultrasound/nerve-profile.ts
  • app/lib/ultrasound/experiments/gaussian-scatterer-live.prototype.ts
  • app/lib/geometry/ultrasound.ts

Needle mechanics: feed, roll and a recorded tract

Inserting a flexible asymmetric tip changes both position and heading. Axial roll changes the direction of curvature. This is the low-order nonholonomic modeling framework introduced by Webster et al. A rigid straight spinal needle, a rigid bent Tuohy and the flexible pre-bent needle have separate model families.[24]

Kinematics and bending response

For each physical feed substep, the integrator advances along the exact chord of a local circular arc. The current flexible profile has a nominal path radius of 120 mm, a separately drawn 4 mm / 15° tip, and a 25 mm feed-distance bending response. The response state approaches the current bevel direction exponentially with insertion distance, so rolling does not instantly reverse curvature. The local curvature is the nominal curvature multiplied by the response magnitude.

bₙ₊₁ = e^(−Δs/ℓ) b⊥ + (1 − e^(−Δs/ℓ)) vb: bending response · v: bevel direction · ℓ = 25 mm · midpoint response determines each local arc

All three profile values are provisional. A tip’s visible shape does not determine its path radius: shaft stiffness, tissue and insertion conditions matter. Mechanics studies and experiments with pre-bent needles support that distinction, not a universal 120 mm trajectory for this instrument.[25][26][27][28]

Hub roll and distal roll

A depth-dependent play operator stores hub-minus-tip twist, with a nominal window reaching 30° at 100 mm depth. Small roll commands and reversals can first consume this play before the distal bevel turns. Reed et al. establish the importance of torsional friction; Ertop et al. supply a deadband-model precedent. Our parameter is not fitted to their devices, and the distributed torsional dynamics studied by Swensen et al. are not solved here. Rigid instruments retain one-to-one roll.[29][30][31]

History, withdrawal and bone contact

The state records the tip-cut path and canonical buried arc length. Withdrawal follows that history; re-advancement without a roll retraces it, while rolling during withdrawal branches the subsequent path. Drawing reconstructs hub, external shaft, skin entry, buried path and rigid tip from that state. The recorded cut channel is preserved rather than repeatedly smoothed into a new path.

Bone contact uses centreline raycasts against geometry. Sufficiently steep incidence arrests the tip; a shallow contact projects travel onto the surface. A roughly 30° arrest threshold and 45° accumulated turning budget constrain the interaction. These are simulator safeguards, not measured friction or needle–bone laws. Tip-frame transport avoids introducing an unintended axial roll during redirection. Full shaft and rigid bent-tip swept-volume collision remain outside this approximation.

Automatic placement and omitted mechanics

Automatic placement is inspired by duty-cycled flipping: it combines opening and closing half-limbs with full limbs and alternating 180° hub flips. The profile targets 10° nominal heading change per limb; feed pauses during roll, and flips pass through the same torsional play as manual commands. Duty-cycled spinning and flipping have published precedent, but this repeated placement policy is not a validated manual clinical technique.[32][33]

Rate dependence, cutting/friction forces, tissue displacement and elastic shaft equilibrium require additional models and measurements. Crouch, Okamura and DiMaio document mechanisms omitted here; Terzano provides an adaptive finite-element alternative. The implemented 25 mm response is distance-based, not a viscoelastic relaxation clock. Online curvature estimation is another possible calibration route.[34][35][36][37][38]

Interaction model, not a device predictor. Exact tract retracing and homogeneous nominal curvature simplify real tissue behavior. Numerical consistency under repeated commands is necessary for a simulator, but does not establish needle-placement accuracy in a patient.

Implementation source files
  • app/lib/geometry/tract.ts
  • app/lib/geometry/needle.ts
  • app/lib/geometry/dress.ts
  • app/lib/interventions/tools.ts
  • app/lib/interventions/needle-navigation.ts

Contrast transport: a finite-volume workshop model

The contrast workshop solves a spatial concentration field. Its anatomical domains include epidural, vascular, intrathecal, subdural and intraneural scenarios, with mixed outlets and puncture-related connections. These use segmented bone plus authored compartment geometry. The computed field is a synthetic teaching demonstration, not a prediction of an individual injection pattern.

Pressure and conservative transport

Each active grid cell carries porosity, directional hydraulic mobility, diffusivity and clearance. Face conductance uses harmonic mobility, face area and separation. A Darcy-type pressure system enforces flux balance, no flux through solid boundaries and prescribed conditions at drains. The symmetric linear system is solved with Jacobi-preconditioned conjugate gradients. Finite-volume methods and conjugate gradients supply the numerical foundations; neither reference validates our tissue parameters.[39][40]

Σⱼ Gᵢⱼ(pᵢ − pⱼ) = Qᵢd(φVc)/dt = source − net advective flux + diffusion − clearanceG: face conductance · p: pressure potential · φV: pore volume · c: concentration

Transport uses conservative upwind face fluxes plus diffusion, with a timestep bounded by available pore volume and outgoing transport. Hydraulic conductance is harmonic, but internal diffusion uses min(Dᵢ, Dⱼ) × min(φᵢ, φⱼ) × spacing. This is a separate effective interfacial law, not the standard resistance-weighted transmissibility for cellwise φD. A heterogeneous-face check gave 0.01 instead of 0.08 for that standard equation; the face law needs clarification or correction. Each step tracks injected, retained, escaped and cleared volume-equivalent mass; inter-domain exchange is accounted separately. Concentration is derived from mass and pore volume. Upwind convection–diffusion analysis supplies related numerical precedent, without proving an error bound for this coupled implementation.[41] Pressure residuals and mass-balance error expose numerical behavior, not clinical validity.

Physical volume, dilution and saline transport

Injection volume is expressed in physical mL, with 1 mL = 1,000 mm³. Grid spacing and model coordinates are converted through the anatomy’s physical scale; 0.35 mL is not a fraction of the visible model or enlarged to fill the image. Repeated injections add to the existing fields. Preservative-free normal saline (PFNS) supplies the same prescribed hydraulic volume/time source without adding iodine, displacing and diluting existing contrast through the transport solve rather than fading it by a display rule. Contrast content specifies radiopacity; product-specific viscosity and temperature dependence have not been calibrated.

Regional canal anatomy and extra-canal pooling

The main lumbar and cervical simulations use patient-fixed canal profiles registered to the supplied bone meshes. Connected epidural, intrathecal and subdural domains span the lumbar/sacral and C1–T1 regions, respectively; the lumbar dural sac tapers near S2 while the epidural domain continues to the sacral hiatus. Canal curvature follows axial bone openings; dural dimensions and neural contents are authored regional approximations informed by MRI morphometry. Cervical sections include a cord obstacle, while lumbar sections distinguish the conus and cauda equina. Population diameters are not treated as a universal bone-to-dura ratio or as patient-specific segmentations.[47][48]

The original sacrum mesh filled the lower canal. A reproducible, CT-informed authored reconstruction opens that channel in the bone mesh used for both imaging and instrument collisions; its shape and dural endpoint are not a source segmentation. The original CT has 1.5 mm voxels, limiting thin-boundary detail. The upper cervical transition is also authored. These remain separate lumbar/sacral and cervical assets; an intervening thoracic model has not been assembled, and expected canal continuations at scan ends are reserved rather than silently assigned to ordinary tissue pooling. Detailed L2–3 root and vessel geometry is retained locally, without copying those structures to every spinal level.

Elsewhere inside each model’s body surface, resolved extra-canal tissue receives local pooling. Bone, outside air and the canal envelope are excluded. Persistent local grids preserve earlier deposits when the needle moves. A linear pressure-relaxation term approximates local tissue accommodation without opening a drain through the skin or deleting iodine. This is an uncalibrated reduced storage model, not a growing liquid pocket or measured tissue-compliance law; distant pooling grids do not model interactions between deposits.

Detailed L2–3 anatomy and fluid storage

The epidural domain surrounds a fixed authored dural sac and extends into both foramina, with segmented bone and modeled fat, nerves, veins and ligamentum flavum constraining flow. Local pooling occupies dorsal interlaminar tissue behind intact ligamentum flavum. Separate full and partial puncture cases provide an explicit tract through that barrier; ordinary dorsal pooling does not inject directly into the epidural domain.

The revised epidural envelope reaches the ventral ligamentum flavum where an earlier elliptical boundary left a gap. In the local L2–3 reference model, this adds 33 one-mm³ cells (0.033 mL). The dural sac was not reduced to make room for contrast. That reference model’s full 128 mm cropped epidural/foraminal domain contains 23.722 mL of open geometric volume; these values describe the authored model, not a measured patient’s epidural capacity.

After explicitly modeled tissue obstacles are excluded, the remaining epidural cells use a default fluid-accessible fraction of 0.50. In the L2–3 reference model this gives 11.861 mL of effective storage across that crop. A 32 mm slab spanning the ligamentum-flavum patch contains about 4.24 mL of effective storage, including foraminal extensions. Tissue irregularity varies flow resistance without silently reducing this fraction. The 50% value is a provisional static storage assumption, not measured physiological porosity or a pressure-dependent compliance law. At fixed injected volume, changing accessible storage can change spatial spread without changing the amount of iodine.

Outlet routing and the limits of the needle model

The needle’s outlet footprint is sampled against tissue labels to route injection. A mixed vascular/epidural outlet couples receiving branches by pressure and conductance rather than simply splitting dose by contact area. A session retains existing concentration fields when the needle moves and advances them on one clock. Puncture connections allow modeled exchange between fields.

The modeled Tuohy and spinal needles have outer diameters of 1.27 and 0.70 mm, with authored opening lengths of 2 and 1.5 mm. These dimensions define an outlet footprint for tissue assessment and mixed-branch coupling. They do not specify measured lumen diameters. Pure local pooling uses a Gaussian source neighborhood (σ = 1.1 mm, cutoff radius 2.2 mm) to impose volume per time. This numerical neighborhood is not the physical aperture. There is no Q/A jet-velocity boundary condition, needle-lumen resistance, inertial jet, turbulence or growing liquid-pocket model; adjusting an assumed jet speed cannot explain or correct spread in the present solver.

Mass-preserving radiographic density

The radiographic renderer integrates stock-equivalent contrast density per whole voxel, φc = mass/V, along the same source rays as anatomy. Using pore-fluid concentration c alone would overstate iodine in partially fluid-filled cells. The conversion keeps attenuation consistent with iodine mass when fluid capacity or dilution changes. Reconstruction and boundary filtering control the displayed contour; they do not redefine the solver’s mass. The CSF extension uses three damped, forced wall-motion modes with volume-preserving shear maps. It is a reduced authored motion model, not a Navier–Stokes or full fluid–structure interaction solution.

Parameters require measurement. Relative mobility, porosity, clearance, vascular flow, cleft dimensions and wall motion are authored scenario parameters. Pressure potential is not calibrated clinical injection pressure. The model does not establish safe injection volumes, diagnostic pattern sensitivity or patient-specific spread. Clinical pattern references belong to reviewed lessons and must be appraised separately from numerical-method references.

Implementation source files
  • app/lib/geometry/contrast-fluid.ts
  • app/lib/geometry/contrast-anatomy.ts
  • app/lib/geometry/contrast-flavum.ts
  • app/lib/geometry/contrast-needles.ts
  • app/lib/geometry/contrast-session.ts
  • app/lib/geometry/contrast-outlet.ts
  • app/lib/geometry/contrast-routing.ts
  • app/lib/geometry/contrast-mixed.ts
  • app/lib/geometry/contrast-leakage.ts
  • app/lib/geometry/contrast-csf.ts
  • app/lib/three/contrast.ts
  • app/lib/three/contrast-reconstruction.ts

Learning activity & technical assessment

Geometry-based scorers measure station-specific quantities such as projection alignment, annotation placement and needle visibility. In ultrasound, the model distinguishes a shaft crossing the scan plane from the actual tip being imaged. A visible dot is therefore not automatically counted as a visible tip.

Rubrics supply criterion weights, tolerances, critical criteria and a pass threshold. The engine computes a weighted score from available measurements, reports missing measurements as incomplete, and lets a measured critical failure override the aggregate score. These are explicit software and faculty configuration rules, not a published universal competency scale.

Authenticated learning activity records interactions automatically. Engagement records, technical results and faculty approval are distinct. Reading activity is not self-certified completion, and a technical result of “met” does not certify clinical competency.

Implementation source files
  • app/lib/training/rubric.ts
  • app/lib/training/scoring/fluoro.ts
  • app/lib/training/scoring/ultrasound.ts
  • app/lib/training/scoring/needle.ts
  • app/lib/tfesi-course/activity.ts
  • app/api/learning/activity/route.ts

Validation status & reproducibility

The repository contains numerical and geometric checks for projection, detector response, needle path integration and length, ultrasound visibility, contrast transport, mass accounting and replay. Spectral checks cover normalized energy weights, iodine’s K edge, beam hardening and dilution/column equivalence. Transport checks cover PFNS washout, mass conservation and the response to epidural storage changes. These check implementation behavior. In the full-text audit, an independent smooth pressure problem showed approximately second-order spatial convergence, but existing tests also passed despite the imaging and preprocessing discrepancies listed above. Test coverage does not establish measured image fidelity, expert anatomical review or transfer to clinical performance.

SystemEvidence still needed
AnatomyIndependent region-by-region review of source masks, derived surfaces and authored structures; small-feature errors.
FluoroscopyRegistered phantom images across angles and exposures; geometry, contrast and detector-response error.
UltrasoundTracked paired acquisitions across probe angles, focus and tissue; texture statistics and landmark visibility.
NeedleInstrument- and tissue-specific curvature, roll lag, bending response and contact measurements.
ContrastGrid/time convergence and measured transport, pressure and compartment behavior against matched experiments.
LearningIndependent assessment of scoring validity, inter-rater agreement and transfer beyond simulator performance.

To reproduce an image or attempt, preserve the code revision, region asset hashes and sidecars, device profile, probe or C-arm settings, authored station revision and ordered interaction history. Performance timings require the browser, hardware and rendering configuration; historical frame-rate claims are not presented here as current benchmarks.

Source files below each section are repository paths for audit. Asset records are publicly linked above. Local paper availability is inventoried below; “held” records a local full text or preprint, not completed critical appraisal or permission to redistribute it.

References & full-text availability

48 sources connect the algorithms to their literature. 38 local full texts or preprints are held. All 14 main-paper PDFs requested for this methods page have now been received and checked. The acquisition record is updated in papers-wanted.html. Databases are cited as web resources. Receipt and a methods comparison do not establish clinical validation.

  1. TotalSegmentator: Robust Segmentation of 104 Anatomic Structures in CT Images

    Wasserthal J, Breit HC, Meyer MT, et al. · 2023 · Radiology: Artificial Intelligence. 5(5):e230024

    The source project released CT examinations and segmentation labels for 104 structures. These labels underpin the atlas mesh pipeline; its reported segmentation performance does not validate this simulator.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-wasserthal-2023.pdf
  2. TotalSegmentator CT dataset

    Wasserthal J et al. · 2022–2023 · Zenodo; CC BY 4.0, region-specific records in asset sidecars

    Source CT and segmentation dataset; distinct from derived teaching assets and their validation.

    Web reference
  3. Efficient Implementation of Marching Cubes’ Cases with Topological Guarantees

    Lewiner T, Lopes H, Vieira AW, Tavares G · 2003 · Journal of Graphics Tools. 8(2):1–15

    The mesh pipeline calls skimage.measure.marching_cubes with its default Lewiner method to extract an isosurface. Topological guarantees of that algorithm do not certify later smoothing/decimation or anatomical accuracy.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-lewiner-2003.pdf
  4. Surface Simplification Using Quadric Error Metrics

    Garland M, Heckbert PS · 1997 · SIGGRAPH ’97. 209–216

    The builder calls simplify_quadric_decimation to reduce triangle count. The paper supports quadric-error simplification; it does not certify preservation of small clinical landmarks.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-garland-1997.pdf
  5. A Signal Processing Approach to Fair Surface Design

    Taubin G · 1995 · SIGGRAPH ’95. 351–358

    The mesh builder uses paired uniform-adjacency Taubin steps (0.5, −0.53). Its displacement cap and 2% volume-change guard are additional simulator safeguards, not inherited clinical validation.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-taubin-1995.pdf
  6. Automatic CT-ultrasound registration for diagnostic imaging and image-guided intervention

    Wein W, Brunke S, Khamene A, Callstrom MR, Navab N · 2008 · Medical Image Analysis 12:577–585

    CT-to-ultrasound transfer functions and contrast-phase ambiguity.

    Local full text / preprint held
    Local library recordpapers/01-wein-2008-ct-us-registration.pdf
  7. Tables of X-Ray Mass Attenuation Coefficients and Mass Energy-Absorption Coefficients

    Hubbell JH, Seltzer SM · 1995 · NIST Standard Reference Database 126 / NISTIR 5632

    NIST supplies the iodine mass attenuation and the bone/water energy ratios used in spectral transmission. The remaining reference material coefficients are authored values; this calculation is not a measured fluoroscope calibration.

    Web reference
  8. Simulation of X-ray Attenuation on the GPU

    Vidal FP, Garnier M, Freud N, Létang JM, John NW · 2009 · Theory and Practice of Computer Graphics. 25–32

    GPU L-buffer accumulation obtains material chord lengths from signed surface intersections and evaluates transmission. This is the closest precedent to fluoro.ts signed front/back additive blending; it is not evidence this implementation reproduces the paper’s validation results.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-vidal-2009.pdf
  9. Development and Validation of Real-Time Simulation of X-ray Imaging with Respiratory Motion

    Vidal FP, Villard P-F · 2016 · Computerized Medical Imaging and Graphics. 49:1–15

    A fuller GPU X-ray simulation framework provides methodological and evaluation context. Its respiratory model, energy treatment, and validation cannot be attributed to this atlas.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-vidal-2016.pdf
  10. Fast Calculation of the Exact Radiological Path for a Three-Dimensional CT Array

    Siddon RL · 1985 · Medical Physics. 12(2):252–255

    Exact voxel radiological-path traversal is a classical route to CT projections. fluoro.ts instead uses mesh surface chords; do not say it implements Siddon.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-siddon-1985.pdf
  11. Real-time simulation of medical ultrasound from CT images

    Shams R, Hartley R, Navab N · 2008 · MICCAI, LNCS 5242:734–741

    CT-derived ultrasound simulation precedent.

    Local full text / preprint held
    Local library recordpapers/07-shams-2008-realtime-us-from-ct.pdf
  12. Visualization and GPU-accelerated simulation of medical ultrasound from CT images

    Kutter O, Shams R, Navab N · 2009 · Computer Methods and Programs in Biomedicine 94:250–266

    Ray-based reflection/transmission with separately generated scattering.

    Local full text / preprint held
    Local library recordpapers/02-kutter-2009-gpu-us-from-ct.pdf
  13. Fast simulation of ultrasound images from a CT volume

    Dillenseger JL, Laguitton S, Delabrousse É · 2009 · Computers in Biology and Medicine 39:180–186

    Point-scatterer modeling applied to CT-derived ultrasound.

    Local full text / preprint held
    Local library recordpapers/09-dillenseger-2009-fast-simulation.pdf
  14. Real-Time GPU-Based Ultrasound Simulation Using Deformable Mesh Models

    Bürger B, Bettinghausen S, Rädle M, Hesser J · 2013 · IEEE Transactions on Medical Imaging 32:609–618

    Convolution-enhanced ray tracing and deformation; comparison method.

    Local full text / preprint held
    Local library recordpapers/05-burger-2013-gpu-deformable-mesh.pdf
  15. Empirical Relationships between Acoustic Parameters in Human Soft Tissues

    Mast TD · 2000 · Acoustics Research Letters Online. 1(2):37–42

    The tissue table cites Mast for physical-property context. This does not validate hand-assigned HU classes, scattering amplitudes, roughness, or the deliberately inflated effective bone-loss term.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-mast-2000.pdf
  16. Tissue Properties Database — Acoustic Properties

    IT’IS Foundation · 2026 · Online reference database; accessed 9 September 2026

    The code cites this database for acoustic properties but does not identify a release. Do not attach a version-specific DOI as though that version was used. Database access is available online; it is not a missing methods paper.

    Web reference
  17. Ultrasound simulation with deformable and patient-specific scatterer maps

    Starkov R, Zhang L, Bajka M, Tanner C, Goksel O · 2019 · International Journal of Computer Assisted Radiology and Surgery 14:1589–1599

    Scatterer-space convolution; our synthetic field is not their patient-estimated map.

    Local full text / preprint held
    Local library recordpapers/08-starkov-2019-scatterer-maps.pdf
  18. Statistics of Speckle in Ultrasound B-Scans

    Wagner RF, Smith SW, Sandrik JM, Lopez H · 1983 · IEEE Transactions on Sonics and Ultrasonics. 30(3):156–163

    Complex amplitude summation followed by envelope magnitude gives Rayleigh statistics for fully developed speckle. The simulator convolves signed I/Q scatter fields then computes their envelope. A Rayleigh mean/standard-deviation ratio near 1.91 is a limited statistical check, not image or clinical validation.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-wagner-1983.pdf
  19. Calculation of Pressure Fields from Arbitrarily Shaped, Apodized, and Excited Ultrasound Transducers

    Jensen JA, Svendsen NB · 1992 · IEEE Transactions on Ultrasonics, Ferroelectrics, and Frequency Control. 39(2):262–267

    Spatial-impulse-response simulation models transducer fields and pulse echo. The atlas uses a simplified PSF/convolution renderer; it does not run Field II.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-jensen-1992.pdf
  20. FIELD: A Program for Simulating Ultrasound Systems

    Jensen JA · 1996 · Medical & Biological Engineering & Computing. 34(Suppl 1, Part 1):351–353

    Field II can provide a transducer-aware reference beyond the browser approximation. Use 1996 as printed on the author PDF; DTU’s institutional metadata lists 1997, so the publication-year discrepancy is recorded here.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-jensen-field-1996.pdf
  21. UltraGauss: Ultrafast Gaussian Reconstruction of 3D Ultrasound Volumes

    Eid MC, Namburete AIL, Henriques JF · 2026 · ICLR

    Related reconstruction research using ultrasound observations; local preprint held.

    Local full text / preprint held
    Local library recordliterature-review/eid2025-ultragauss.pdf
  22. UltraG-Ray: Physics-Based Gaussian Ray Casting for Novel Ultrasound View Synthesis

    Duelmer F, Klaushofer J, Wysocki M, Navab N, Azampour MF · 2026 · MIDL, PMLR 315:928–946

    Related learned acoustic Gaussian fields; local preprint held.

    Local full text / preprint held
    Local library recordliterature-review/duelmer2026-ultraGray.pdf
  23. Patient-specific 3D ultrasound simulation based on convolutional ray-tracing and appearance optimization

    Salehi M et al. · 2015 · MICCAI, LNCS 9350:510–518

    Tissue-parameter fitting against paired images; not performed in this app.

    Local full text / preprint held
    Local library recordpapers/03-salehi-2015-appearance-optimization.pdf
  24. Nonholonomic Modeling of Needle Steering

    Webster et al. · 2006 · International Journal of Robotics Research 25:509–525

    Kinematic foundation; approximate arc motion in a calibrated medium.

    Local full text / preprint held
    Local library recordpapers/webster-2006-nonholonomic-modeling.pdf
  25. Mechanics of Flexible Needles Robotically Steered through Soft Tissue

    Misra et al. · 2010 · International Journal of Robotics Research 29:1640–1660

    Mechanics explaining why path curvature depends on tissue and shaft properties.

    Local full text / preprint held
    Local library recordpapers/misra-2010-mechanics-flexible-needles.pdf
  26. Hand-Held Steerable Needle Device

    Okazawa et al. · 2005 · IEEE/ASME Transactions on Mechatronics

    Distinction between tip shape and resulting trajectory.

    Local full text / preprint held
    Local library recordpapers/okazawa-2005-hand-held-steerable-device.pdf
  27. Behavior of Tip-Steerable Needles in Ex Vivo and In Vivo Tissue

    Majewicz et al. · 2012 · IEEE Transactions on Biomedical Engineering

    Biological-tissue evidence and limits of homogeneous phantom calibration.

    Local full text / preprint held
    Local library recordpapers/majewicz-2012-ex-vivo-in-vivo.pdf
  28. Methods for Improving the Curvature of Steerable Needles in Biological Tissue

    Adebar et al. · 2016 · IEEE Transactions on Biomedical Engineering 63:1167–1177

    Effect of pre-bent tip geometry on experimentally measured curvature.

    Local full text / preprint held
    Local library recordpapers/adebar-2016-improving-curvature.pdf
  29. Modeling and Control of Needles with Torsional Friction

    Reed et al. · 2009 · IEEE Transactions on Biomedical Engineering 56:2905–2916

    Evidence for base-to-tip roll lag from torsional friction.

    Local full text / preprint held
    Local library recordpapers/reed-2009-torsional-friction.pdf
  30. Steerable Needle Trajectory Following in the Lung: Torsional Deadband Compensation and Full Pose Estimation with 5DOF Feedback for Needles Passing Through Flexible Endoscopes

    Ertop et al. · 2020 · ASME Dynamic Systems and Control Conference, V001T05A003

    Deadband compensation precedent; not calibration of our device.

    Local full text / preprint held
    Local library recordpapers/ertop-2020-lung-torsional-deadband.pdf
  31. Torsional Dynamics of Steerable Needles: Modeling and Fluoroscopic Guidance

    Swensen et al. · 2014 · IEEE Transactions on Biomedical Engineering

    Distributed torsion dynamics beyond the implemented play operator.

    Local full text / preprint held
    Local library recordpapers/swensen-2014-torsional-dynamics.pdf
  32. Modeling of Needle Steering via Duty-Cycled Spinning

    Minhas et al. · 2007 · IEEE Engineering in Medicine and Biology Society Conference

    Duty-cycled rotation as a way to vary effective curvature.

    Local full text / preprint held
    Local library recordpapers/minhas-2007-duty-cycled-spinning.pdf
  33. Design and Evaluation of Duty-Cycling Steering Algorithms for Robotically-Driven Steerable Needles

    Majewicz et al. · 2014 · IEEE International Conference on Robotics and Automation

    Duty-cycled flipping precedent for automatic placement.

    Local full text / preprint held
    Local library recordpapers/majewicz-2014-duty-cycling-algorithms.pdf
  34. A Velocity-Dependent Model for Needle Insertion in Soft Tissue

    Crouch et al. · 2005 · MICCAI, LNCS 3750:624–632

    Measured rate dependence and relaxation; limits of the distance-based response.

    Local full text / preprint held
    Local library recordpapers/crouch-2005-velocity-dependent-model.pdf
  35. Force Modeling for Needle Insertion Into Soft Tissue

    Okamura et al. · 2004 · IEEE Transactions on Biomedical Engineering 51:1707–1716

    Cutting and friction forces omitted by the kinematic model.

    Local full text / preprint held
    Local library recordpapers/okamura-2004-force-modeling.pdf
  36. Needle Insertion Modeling and Simulation

    DiMaio and Salcudean · 2003 · IEEE Transactions on Robotics and Automation

    Deformable tissue insertion modeling as an alternative to kinematics.

    Local full text / preprint held
    Local library recordpapers/dimaio-2003-needle-insertion-modeling.pdf
  37. An Adaptive Finite Element Model for Steerable Needles

    Terzano et al. · 2020 · Biomechanics and Modeling in Mechanobiology 19:1809–1825

    Adaptive finite-element modeling; related work, not implemented.

    Local full text / preprint held
    Local library recordpapers/terzano-2020-adaptive-fem.pdf
  38. Needle Steering in Biological Tissue using Ultrasound-based Online Curvature Estimation

    Moreira et al. · 2014 · IEEE International Conference on Robotics and Automation

    Online curvature estimation as a future calibration route.

    Local full text / preprint held
    Local library recordpapers/moreira-2014-online-curvature-estimation.pdf
  39. Finite Volume Methods

    Eymard R, Gallouët T, Herbin R · 2000 · Handbook of Numerical Analysis. 7:713–1018

    Cellwise conservation through shared face fluxes supports the contrast solver’s finite-volume structure. This numerical foundation supplies neither patient-specific tissue mobility nor physiological transport calibration.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-eymard-2000.pdf
  40. Methods of Conjugate Gradients for Solving Linear Systems

    Hestenes MR, Stiefel E · 1952 · Journal of Research of the National Bureau of Standards. 49(6):409–436

    ContrastFluid.solvePressure uses conjugate gradients with Jacobi diagonal preconditioning on its symmetric conductance matrix. Residual tolerance is a numerical solve criterion, not pressure calibration.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-hestenes-1952.pdf
  41. Error Estimates on the Approximate Finite Volume Solution of Convection Diffusion Equations with General Boundary Conditions

    Gallouët T, Herbin R, Vignal MH · 2000 · SIAM Journal on Numerical Analysis. 37(6):1935–1972

    Supports upstream convection combined with finite-volume diffusion and boundary flux treatment. Its error theorem is not a proved bound for the app’s heterogeneous, compartment-coupled solver.

    Local full text / preprint held

    Read the full-text comparison

    Local library recordpapers/methods-gallouet-2000.pdf
  42. X-Ray Mass Attenuation Coefficients: Iodine (Z = 53)

    NIST · 1995 · Elemental attenuation table

    The 0.060 MeV total mass attenuation value is 7.579 cm²/g. Multiplication by 0.300 g iodine/cm³ gives the Omnipaque 300 iodine contribution; energy-absorption coefficients are not substituted.

    Web reference
  43. Omnipaque product details

    GE HealthCare · n.d. · Manufacturer product specifications

    Confirms 300 mg iodine/mL for Omnipaque 300. This composition input does not calibrate viscosity, transport, or clinical image appearance.

    Web reference
  44. Technical Note: SpekPy v2.0—a software toolkit for modeling x-ray tube spectra

    Poludniowski G, Omar A, Bujila R, Andreo P · 2021 · Medical Physics

    Methodological basis of the source-spectrum generator. Our target, filtration, binning and detector weights are explicit implementation choices, not measurements of an OEC 9800.

    Web reference
  45. SpekPy 2.5.4

    SpekPy developers · n.d. · Versioned software release · MIT license

    Pinned software release used to generate the committed energy bins and source fluence offline.

    Web reference
  46. GE OEC 9800 operator manual update and supplement

    GE Healthcare · 2011 · 5431291-1ES Rev. 1, §10.5 · Spanish edition, hosted copy

    Specifies a 10° target and minimum total filtration equivalent to 6.3 mm aluminum at 75 kVp. Our pure-tungsten target and pure-aluminum filter approximate these specifications; the clinical unit’s actual beam and detector response remain unmeasured.

    Web reference
  47. Sagittal Normal Limits of Lumbosacral Spine in a Large Adult Population: A Quantitative Magnetic Resonance Imaging Analysis

    Pierro A et al. · 2017 · Journal of Clinical Imaging Science. 7:35

    Level-specific population AP diameters inform provisional dural profiles. They do not establish this model subject’s transverse dimensions, fluid capacity or interlaminar clearances.

    Web reference
  48. Reference values for the cervical spinal canal and the vertebral bodies by MRI in a general population

    Nell C et al. · 2019 · PLOS ONE

    Regional cervical canal, dural and cord AP measurements provide population priors. C1 transitions and model-specific bone-constrained reductions remain authored assumptions.

    Web reference
↑ Back to the methods