Export layer
The package’s current export layer is producer-side only. It now exposes both:
- public in-memory payload builders
- JLD2 writers that delegate to those payload builders
- one public current-model atomic interaction accessor
The current atomic IDA Hamiltonian model is exported honestly as dense or sliced/block density-density data for downstream solver consumers.
For the current SlicedMRGUtils / HamIO bridge family, the package also exposes a thin explicit compatibility adapter:
- the native sliced payload keeps the package’s current
l0_desc_mzigzagwithin-slice ordering - the HamV6 compatibility payload/writer reorders within each slice to
mzigzag_then_l
Both payload families now also carry one shared package-owned producer/source manifest in meta/manifest/..., including the atomic charge, public radial extent recipe, mapping parameters, radial dimension, channel convention, and producer identity.
The angular research track now also exposes one narrow downstream-facing bridge path:
angular_benchmark_exact_hamv6_payloadwrite_angular_benchmark_exact_hamv6_jld2
That bridge is intentionally limited to the benchmark line's exact common low-l reference. The full mixed shell-local angular basis is not yet exported as HamV6, because the current consumer language still assumes definite per-orbital l,m labels.
For the current mixed-basis angular line, the direct in-memory HF handshake is instead:
build_atomic_injected_angular_hfdmrg_payload
That payload builder hands dense H, V, seeds, and occupations directly to HFDMRG.solve_hfdmrg(...) without claiming full mixed-basis HamV6 compatibility.
The current branch-point note for that boundary is:
docs/angular_consumer_contract_boundary.md
The same angular line now also exposes one native fixed-radial sequence export surface for increasing-N_sph ladders:
build_atomic_fixed_radial_angular_sequenceatomic_fixed_radial_angular_level_dense_payloadwrite_atomic_fixed_radial_angular_level_jld2atomic_fixed_radial_angular_overlap_sidecar_payloadwrite_atomic_fixed_radial_angular_overlap_sidecar_jld2
This is a producer-side contract for external continuation studies. It exports:
- one dense native level artifact per
N_sph - one adjacent shell-local overlap sidecar per
N_sph[k] -> N_sph[k+1] - stable radial shell ids and shell centers across the sequence
- stable within-shell labels from cached shell-local angular profiles
It does not yet include the later common-target embedding/lift layer, and it does not claim compatibility with older dense consumer formats.
For the narrative explanation of the current producer-side story, see:
GaussletBases.atomic_ida_density_interaction_matrix — Function
atomic_ida_density_interaction_matrix(ops::AtomicIDAOperators; ordering=:channel_major)Return the current atomic IDA density-density interaction matrix in an explicit orbital ordering.
Supported symbolic orderings are:
:channel_major:shell_major:sliced_native:hamv6
An explicit orbital permutation vector may also be supplied through ordering = perm.
GaussletBases.build_atomic_fixed_radial_angular_sequence — Function
build_atomic_fixed_radial_angular_sequence(
radial_ops::RadialAtomicOperators,
N_sph_values;
beta=2.0,
l_inject=:auto,
tau=1e-12,
whiten=:svd,
nelec=round(Int, radial_ops.source_manifest.nuclear_charge),
)Build the fixed-radial-basis angular profile ladder for a user-specified list of N_sph values.
The radial substrate is held fixed across every level. Each level reuses one cached shell-local angular profile for its N_sph value and exports the dense HF-facing bridge data independently.
GaussletBases.atomic_fixed_radial_angular_level_dense_payload — Function
atomic_fixed_radial_angular_level_dense_payload(level; meta=nothing)Build the current dense per-level bridge payload for one fixed-radial angular sequence level without writing a file.
GaussletBases.atomic_fixed_radial_angular_overlap_sidecar_payload — Function
atomic_fixed_radial_angular_overlap_sidecar_payload(sidecar; meta=nothing)Build the adjacent shell-local profile-overlap sidecar for one neighboring N_sph[k] -> N_sph[k+1] pair without writing a file.
GaussletBases.fullida_dense_payload — Function
fullida_dense_payload(ops::AtomicIDAOperators; Vps=nothing, nelec=nothing, meta=nothing)Build the current dense full-IDA export payload in memory without writing a JLD2 file.
The returned named tuple contains:
payloadbridge_metameta_values
and matches the data written by write_fullida_dense_jld2.
GaussletBases.sliced_ham_payload — Function
sliced_ham_payload(ops::AtomicIDAOperators; nelec=nothing, meta=nothing, threshold=0.0)Build the current sliced/block atomic Hamiltonian export payload in memory without writing a JLD2 file.
The returned named tuple contains:
layout_valuesbasis_valuesordering_valuesonebody_valuestwobody_valuesmeta_values
and matches the data written by write_sliced_ham_jld2.
GaussletBases.atomic_hamv6_payload — Function
atomic_hamv6_payload(ops::AtomicIDAOperators; nelec=nothing, meta=nothing, threshold=0.0)Build the current atomic IDA sliced/block payload in the explicit HamV6 / HamIO.jl compatibility ordering used by the present downstream bridge stack.
This keeps the current atomic density-density IDA model and grouped COO block storage, but adapts the within-slice orbital order to mzigzag_then_l.
GaussletBases.angular_benchmark_exact_hamv6_payload — Function
angular_benchmark_exact_hamv6_payload(
benchmark::AtomicInjectedAngularHFStyleBenchmark;
nelec=nothing,
meta=nothing,
threshold=0.0,
)Build an explicit HamV6 / HamIO.jl compatibility payload for the exact common low-l reference embedded in the angular benchmark line.
This is intentionally narrow. It does not export the full mixed shell-local angular basis, because that basis is not yet representable in the current consumer language that assumes definite per-orbital l,m labels. Instead, it exports the honest exact common reference already carried by the benchmark.
angular_benchmark_exact_hamv6_payload(
benchmark::AtomicInjectedAngularSmallEDBenchmark;
nelec=nothing,
meta=nothing,
threshold=0.0,
)Build the same exact-common-reference HamV6 payload starting from the small-ED benchmark wrapper.
GaussletBases.write_atomic_fixed_radial_angular_level_jld2 — Function
write_atomic_fixed_radial_angular_level_jld2(path, level; meta=nothing)Write one native dense per-level artifact for the fixed-radial increasing-N_sph sequence line.
This writer stores the current level Hamiltonian, interaction, seeds, stable radial shell metadata, and stable within-shell labels from the cached angular profile. It is the native producer-side level export for this sequence family.
GaussletBases.write_atomic_fixed_radial_angular_overlap_sidecar_jld2 — Function
write_atomic_fixed_radial_angular_overlap_sidecar_jld2(path, sidecar; meta=nothing)Write the native adjacent-overlap sidecar for one neighboring N_sph[k] -> N_sph[k+1] pair in the fixed-radial sequence line.
This writer stores the compact shell-local cross-overlap, stable source/target labels, and overlap diagnostics/provenance needed by external continuation consumers.
GaussletBases.write_fullida_dense_jld2 — Function
write_fullida_dense_jld2(path, ops::AtomicIDAOperators; Vps=nothing, nelec=nothing, meta=nothing)Write the current dense full-IDA bridge file for downstream solver consumers.
The written file follows the existing fullida_dense_v1 bridge shape:
H1Vee(and optionalVps)dims_per_shellordersbasis_centersbridge/...metadatameta/...producer metadata
The present export is honest about the current model:
- one-body
H1 - dense two-index IDA
Vee - density-density interaction model
It is not a full four-index Coulomb Hamiltonian export.
GaussletBases.write_sliced_ham_jld2 — Function
write_sliced_ham_jld2(path, ops::AtomicIDAOperators; nelec=nothing, meta=nothing, threshold=0.0)Write the grouped sliced/block Hamiltonian export for the current atomic IDA model.
The written file follows the existing HamIO.jl grouped structure:
layout/*basis/*ordering/*onebody/*twobody/*meta/*
The present export remains honest about the current model:
- atomic-only
- density-density / two-index IDA interaction
- not a full four-index Coulomb Hamiltonian
GaussletBases.write_atomic_hamv6_jld2 — Function
write_atomic_hamv6_jld2(path, ops::AtomicIDAOperators; nelec=nothing, meta=nothing, threshold=0.0)Write the explicit HamV6 / HamIO.jl compatibility export for the current atomic density-density IDA model.
GaussletBases.write_angular_benchmark_exact_hamv6_jld2 — Function
write_angular_benchmark_exact_hamv6_jld2(
path,
benchmark::Union{
AtomicInjectedAngularHFStyleBenchmark,
AtomicInjectedAngularSmallEDBenchmark,
};
nelec=nothing,
meta=nothing,
threshold=0.0,
)Write the narrow angular bridge artifact that reuses the proven HamV6 grouped shape for the benchmark's exact common low-l reference only.