Skip to main content

Crate caustic

Crate caustic 

Source

Re-exports§

pub use tooling::core::algos::ht::HtTensor;
pub use tooling::core::algos::lagrangian::SemiLagrangian;
pub use tooling::core::init::isolated::HernquistIC;
pub use tooling::core::init::isolated::IsolatedEquilibrium;
pub use tooling::core::init::isolated::KingIC;
pub use tooling::core::init::isolated::NfwIC;
pub use tooling::core::init::isolated::PlummerIC;
pub use tooling::core::init::isolated::sample_on_grid;
pub use tooling::core::algos::uniform::UniformGrid6D;

Modules§

conservative_svd
Conservative SVD: moment-preserving truncation for low-rank tensors.
prelude
Convenience re-exports for the most commonly used items.
tooling

Structs§

AccelerationField
3D vector field g = −∇Φ; three flat Vec<f64> for gx, gy, gz components.
AmrGrid
Adaptive mesh refinement grid in 6D phase space. The root cell spans the full domain; cells are refined where the distribution function is significant.
CasimirDriftCondition
Exit when relative Casimir drift exceeds tolerance.
CausticFormationCondition
Exit when the first caustic forms (max stream count > 1).
CflViolationCondition
Exit when adaptive Δt drops below dt_min.
CustomICArray
Pre-computed 6D array [Nx1, Nx2, Nx3, Nv1, Nv2, Nv3] loaded from file.
DensityField
3D scalar field ρ(x); flat Vec<f64> with (nx1, nx2, nx3) shape.
DiskStabilityIC
Disk stability IC: f(E, Lz) for axisymmetric disk plus an optional perturbation.
DisplacementField
Displacement Δx = v·Δt for the spatial drift sub-step.
Domain
Complete computational domain specification, ready for use by solver components.
DomainBuilder
Builder for Domain following a fluent API.
ExitEvaluator
Evaluates all active exit conditions each timestep.
FftIsolated
Isolated-BC Poisson solver (Hockney-Eastwood zero-padding). Correct vacuum BC. Pads density into (2N)³ box, convolves with precomputed Green’s function, extracts N³ solution.
FftPoisson
Periodic-BC Poisson solver. O(N³ log N). For cosmological boxes.
GlobalDiagnostics
One row of the global time-series output.
HybridRepr
Hybrid representation combining SheetTracker and UniformGrid6D.
KfvsSolver
KFVS macroscopic solver on a 3D spatial grid.
LieSplitting
Lie (1st-order) operator splitting: drift(Δt) → kick(Δt).
LoMaC
LoMaC conservation manager.
MacroState
Macroscopic state at a single spatial cell: density, momentum, energy.
MassLossCondition
Exit when mass fraction drops below threshold.
MergerIC
f(x,v,t₀) = f₁(x−x₁, v−v₁) + f₂(x−x₂, v−v₂). Exact for collisionless systems before interaction begins.
Multigrid
Geometric multigrid Poisson solver.
PhaseSpaceSnapshot
Full 6D snapshot f(x,v) at one instant; flat Vec<f64> with shape (nx1, nx2, nx3, nv1, nv2, nv3). Only stored at checkpoint intervals.
PotentialField
3D scalar potential field Φ(x); same layout as DensityField.
RankAdaptiveController
Adaptive rank controller for HT tensor truncation.
SheetTracker
Lagrangian cold dark matter sheet tracker.
Simulation
The top-level simulation object. Owns all solver components.
SpectralV
Spectral-in-velocity representation using orthonormal Hermite function basis.
SphericalHarmonicsPoisson
Spherical-harmonics expansion Poisson solver.
SteadyStateCondition
Exit when ‖∂f/∂t‖ < threshold (steady state reached). Uses interior mutability (Cell) to track previous entropy across calls, since the trait takes &self.
StrangSplitting
Strang splitting: drift(Δt/2) → kick(Δt) → drift(Δt/2).
StreamCountField
Number of distinct velocity streams n_s(x) at each spatial point. Nonzero where the sheet has folded (caustic formation).
Tensor
General velocity moment tensor of arbitrary rank.
TensorPoisson
Tensor-format Poisson solver with isolated (vacuum) boundary conditions.
TensorTrain
Tensor-Train representation of the 6D phase-space distribution f(x,v).
TidalIC
Tidal stream IC: progenitor cluster on an orbit in an external host potential.
TreePoisson
Barnes-Hut tree code Poisson solver.
UnsplitIntegrator
Method-of-lines Runge-Kutta integrator for the full 6D Vlasov PDE.
VirialRelaxedCondition
Exit when the virial ratio 2T/|W| stabilises within tolerance of 1.0.
WallClockCondition
Exit when wall-clock time exceeds limit_secs seconds.
YoshidaSplitting
Yoshida 4th-order symplectic integrator.
ZeldovichIC
Zel’dovich pancake IC: cold dark matter sheet. f(x,v,t₀) = ρ̄·δ³(v − v₀(x)) where v₀ is the Zel’dovich velocity field.
ZeldovichSingleMode
Simple single-mode Zel’dovich pancake IC for validation tests.

Enums§

CausticError
Top-level error type for caustic operations.
ExitReason
Reason why the simulation terminated.
SpatialBoundType
Spatial boundary condition type.
VelocityBoundType
Velocity boundary condition type.

Traits§

Advector
Trait for all phase-space advection schemes.
ExitCondition
Trait for simulation exit predicates. Evaluated after each timestep.
PhaseSpaceRepr
Central trait for all phase-space storage and manipulation strategies.
PoissonSolver
Trait for all gravitational Poisson solver implementations.
TimeIntegrator
Trait for all time integration / operator splitting strategies.