Reference
Contents
Index
PHysicalTDA.AXPHysicalTDA.LSWTPHysicalTDA.La2CuO4PHysicalTDA.MADPHysicalTDA.TMMCPHysicalTDA.betti_curvaturePHysicalTDA.betti_curvePHysicalTDA.convert4DPHysicalTDA.pd_array_intensityPHysicalTDA.pd_sunny_intensitiesPHysicalTDA.persistence_entropy
PHysicalTDA.AX — ConstantCollapse (reduce) a 4D array over one or more axes with specified operation (default operation is :sum). Axes may be symbols (:h,:k,:ℓ,:ω) [Julia Syntax] or integer indices [Python Syntax]. Reduces highest axes first to keep indices stable. Returns collapsed (reduced) array.
Note, the indexing convention in Julia is such that (JuliaArr[1] ~ PythonArr[0]).
PHysicalTDA.LSWT — MethodComputes LSWT S(q,ω) on a coarse 3D Q-grid and along several q-space paths. Build Gaussian-broadened 2D intensity and multiple 1D path scans in parallel. Returns ([results2D, Qs], [resultalongpaths, paths], energies)
Assumes input is a Sunny.System corresponding to the provided Sunny.Crystal type.
PHysicalTDA.La2CuO4 — MethodConstructs a tetragonal La₂CuO₄-like crystal and Sunny spin system. Applies J, J′, J″, Jc exchanges, randomizes spins, and minimizes energy.
Space Group: 139 ~ Single Cu Ion @ [0,0,0] | (s=1/2, g=2) Supercell: (6×6×3)
Returns (cryst::Sunny.Crystal, sys::Sunny.System).
PHysicalTDA.MAD — MethodMedian Absolute Deviation (MAD) Applies elementwise relative to the median of t. Suitable for thresholding outliers in intensity arrays. Returns an array of MAD values with the same shape as t.
PHysicalTDA.TMMC — MethodConstructs low-temperature monoclinic (CH₃)₄[NMnCl₃] crystal via Sunny. Applies exchange coupling J and anisotropic exchange Δ (along z-axis).
This crystal is commonly referred to as TMMC. It is a 1D high-spin Heisenberg chain.
Space group: 14 (P2₁/b) ~ Single Mn Ion @ [1/5, 1/4, 1/5] | (s=5/2, g=2) Supercell: (1×4×150)
Returns (cryst::Sunny.Crystal, sys::Sunny.System)
PHysicalTDA.betti_curvature — Methodbetti_curvature(pd, τ; dims = 0:1, scheme = :forward)Compute βp(τ) and κp(τ) = dβ_p/dτ on a grid τ.
scheme = :forward(default) uses forward differences and sets κ[end]=κ[end-1]. Use:centralfor central differences on interior points.
Returns (β::Dict{Int,Vector{Int}}, κ::Dict{Int,Vector{Float64}}).
PHysicalTDA.betti_curve — Methodbetti_curve(PDs, τ; dims = 0:1)Compute per-dimension Betti curves βp(τj) on a user-provided grid τ.
PDsis a vector of Ripserer PD (grouped by degree).τis a sorted vector of thresholds (monotone increasing).
Returns Dict{Int,Vector{Int}} mapping p ↦ β_p(τ).
PHysicalTDA.convert4D — MethodReshape Sunny intensities from (ω, q) or (q, ω) into a 4D cube (h,k,ℓ,ω). Validates sizes given Q-grid shape, then reshapes/permutedims accordingly. Error thrown if flattened data size does not match nω × nQ. Returns a 4D Array with axis order (h,k,ℓ,ω).
PHysicalTDA.pd_array_intensity — MethodComputes persistance diagrams of an intensity array via cubical complexes. Returns PDs with birth–death scatter per dimension, grouped by homology degree up to maxdim.
Optional superlevel filtration (invert intensities) and normalization to [0,1]. Used to analyze the topology of I(Q,ω) = |S(Q,ω)|².
PHysicalTDA.pd_sunny_intensities — MethodWrapper: Sunny.Intensities -> dense Array -> pdarrayintensity
Converts I.data to a dense array and calls pd_array_intensity. Respects maxdim and superlevel. Returns (PD, Figures).
Convenient for topology on LSWT or phonon intensity objects.
PHysicalTDA.persistence_entropy — Methodpersistence_entropy(PDs; dims = 0:1, tol = 0.0)Compute per-dimension persistence entropy Sₚ and total persistence Eₚ.
PDsis a vector of Ripserer persistence diagrams, grouped by homology degree as returned bypd_array_intensities()orpd_sunny_intensities().dimsselects homology degrees (default 0:1).toldiscardslifetimes ≤ tol(guards numerical noise).
Returns (S::Dict{Int,Float64}, E::Dict{Int,Float64}) keyed by p.