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_mzigzag within-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_payload
  • write_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_sequence
  • atomic_fixed_radial_angular_level_dense_payload
  • write_atomic_fixed_radial_angular_level_jld2
  • atomic_fixed_radial_angular_overlap_sidecar_payload
  • write_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_matrixFunction
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.

source
GaussletBases.build_atomic_fixed_radial_angular_sequenceFunction
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.

source
GaussletBases.fullida_dense_payloadFunction
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:

  • payload
  • bridge_meta
  • meta_values

and matches the data written by write_fullida_dense_jld2.

source
GaussletBases.sliced_ham_payloadFunction
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_values
  • basis_values
  • ordering_values
  • onebody_values
  • twobody_values
  • meta_values

and matches the data written by write_sliced_ham_jld2.

source
GaussletBases.atomic_hamv6_payloadFunction
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.

source
GaussletBases.angular_benchmark_exact_hamv6_payloadFunction
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.

source
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.

source
GaussletBases.write_atomic_fixed_radial_angular_level_jld2Function
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.

source
GaussletBases.write_atomic_fixed_radial_angular_overlap_sidecar_jld2Function
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.

source
GaussletBases.write_fullida_dense_jld2Function
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:

  • H1
  • Vee (and optional Vps)
  • dims_per_shell
  • orders
  • basis_centers
  • bridge/... metadata
  • meta/... 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.

source
GaussletBases.write_sliced_ham_jld2Function
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
source
GaussletBases.write_atomic_hamv6_jld2Function
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.

source
GaussletBases.write_angular_benchmark_exact_hamv6_jld2Function
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.

source