Mixed-boundary (wire/slab) Green’s function for the low-D CCM four-center¶
The aiccm2026dev-a side of joint deliverable item 6 (the open construction of
the converged -a/-b theory result, docs/manuscripts/aiccm_a_position.md
§0.5). Derived Hamiltonian-first: define the mixed-boundary Poisson problem,
then read both the Coulomb kernel and the exchange-q=0 seam off the same
Green’s function G — not a minimum-image truncation. Built as -a’s own
implementation; parity with -b is checked out-of-process.
Status: M1 (derive + declare the Poisson problem and BCs) — this document.
M2–M5 are tracked in handovers/HANDOVER_AICCM_FOLLOWON.md.
0. Why the production kernel is wrong for genuine 1-D/2-D¶
The settled production object (-a and -b, verified A==B==KRHF) is the
charge-neutral 3-D-torus Ewald Green’s function v_E^{3D} — the unique
solution of the torus Poisson equation with a uniform compensating background
−1/V_c over the 3-torus 𝕋³ = ℝ³/L_c, with the G=0 mode dropped
(python/vibeqc/periodic/ccm/neutral.py; ccm_neutral_cderi is its Γ density
fit). A vacuum-padded 1-D chain or 2-D slab is modelled with this same 3-D
kernel by inflating the open directions with vacuum. That is a supercell
model, not the right Hamiltonian: the neutralizing background is spread through
the vacuum, the long-range field in the open directions is the wrong functional
form, and the resulting four-center carries a system-size-dependent gauge
offset that is not an RI fitting error. The measured symptom (joint, both
lines): the four-center-vs-RI gap is hundreds of kJ/mol in low-D and -b’s
vacuum-padded H₄ shows 4c − RI = 22.2 mHa — gauge differences, not accuracy.
Until M5 passes, no 1-D/2-D accuracy number is claimed; present low-D numbers
are model numbers (Q-lowD).
The honest fix is a Green’s function that is periodic in the d lattice
directions and open (decaying, free-space) in the 3−d transverse
directions, with the neutralizing background a uniform charge only over the
periodic directions (a sheet for d=2, a line for d=1). This is the
mixed-boundary kernel G^{(d)}. The 3-D kernel is recovered as the
transverse-periodic sum of G^{(d)} — the hard, dependency-free validation
anchor (§5).
1. The mixed-boundary Poisson problem (Hamiltonian-first)¶
Let the cell be periodic in d directions with in-plane/along-axis cell area /
length A (d=2) or L (d=1), and open in the transverse coordinate(s),
written z (a scalar for d=2; ρ=(x,y) for d=1). Write r = (R∥, z) with
R∥ the periodic coordinates. The electrostatic kernel G(r,r') is the periodic
solution of Poisson’s equation with the periodicity’s neutralizing background:
−∇² G(r, 0) = 4π [ δ^{(3)}(r) − b_d(z) ] , (Gaussian units, e=1)
where b_d is the compensating background that makes the source charge-neutral
per periodic cell, smeared uniformly over the periodic directions and
localized in the transverse coordinate exactly as the unit point source is:
d=3:b_3 = 1/V_c(uniform over the 3-torus) → the productionv_E^{3D}(G=0dropped). The transverse background is absent (no open direction).d=2(slab):b_2(z) = δ(z)/A— a neutralizing sheet in the source plane. The in-plane average density vanishes; thez-profile is aδat the source.d=1(wire):b_1(ρ) = δ^{(2)}(ρ)/L— a neutralizing line along the axis.
Boundary conditions (the part that is declared, not derived — they fix the otherwise-undetermined harmonic piece):
Periodic in
R∥(Born–von-Kármán):G(R∥+T, z) = G(R∥, z)for latticeT.Open / decaying in the transverse direction(s): the oscillatory (
G∥≠0/G_z≠0) Fourier components decay ase^{−|G∥||z|}(d=2) /K₀(|G_z|ρ)(d=1); the zero transverse-mean (G∥=0/G_z=0) channel is the field of the neutralizing sheet/line and is only conditionally convergent — its linear-in-|z|(d=2) / logarithmic-in-ρ(d=1) growth is the low-D analogue of the 3-DG=0conditional convergence (§4). A finite constantC(the gauge) is fixed by a reference (z→0/ρ→ρ₀).Dipole / asymptotic BC (polar systems). A slab with a net normal dipole
M_z ≠ 0(or a wire with a net transverse dipole) carries a dipole-layer term in the conditional channel — a discontinuity in the asymptotic potential across the slab, the low-D analogue of the surface term in the 3-D conditionally convergent lattice sum. It must be declared and is the physical content of theM_z≠0correction; see §4 and the known limitation in §6.
2. The 2-D slab kernel G^{2D} (periodic in the plane, open in z)¶
Solving §1 for d=2 in a plane-wave basis over the in-plane reciprocal lattice
{G∥} (area A per cell), each G∥≠0 mode solves
(|G∥|² − ∂_z²) ĝ_{G∥}(z) = 4π δ(z), giving the decaying Green’s function
ĝ_{G∥}(z) = (2π/|G∥|) e^{−|G∥||z|}. The G∥=0 mode solves
−∂_z² ĝ_0(z) = 4π[δ(z) − 1/A]·A per area, the field of a sheet pair, giving
ĝ_0(z) = −2π|z|/A (up to the gauge constant). Summing:
G^{2D}(ρ, z) = (2π/A) Σ_{G∥≠0} (e^{iG∥·ρ} e^{−|G∥||z|}) / |G∥| − (2π/A)|z| + C
└──────── oscillatory, exponentially screened ────────┘ └ sheet ┘
(Parry, Surf. Sci. 49, 433 (1975); de Leeuw–Perram, Mol. Phys. 37,
1313 (1979); Bertaut.) This is exactly the gauge realized in vibe-qc’s
already-landed slab Hartree: python/vibeqc/ewald_composed_slab.py builds the
oscillatory G∥≠0 channel as the L_z→∞ continuous-G_z 3-D-FT and the
G∥=0 channel as the analytic −(2π/A)∫dz∫dz' n(z)|z−z'|n(z') |z|-convolution,
with V_ne (periodic_v_ne_slab.py) sharing the same gauge so the bilinear
total E = E_nn + Tr[D·V_ne] + ½Tr[D·J] is gauge-consistent
(tests/test_j_slab_ewald_2d.py). The 2-D Coulomb/Hartree side of G^{2D}
therefore already exists and is validated against the 3-D kernel (§5). What D3
adds for d=2: the four-center / ERI form of the same G^{2D} and the
matching exchange-q=0 seam (§3, §6), plus closing the polar-slab dipole BC
(§4/§6).
3. The 1-D wire kernel G^{1D} (periodic along z, open in ρ)¶
For d=1 (axis z, length L per cell, transverse ρ=(x,y)), each G_z≠0
mode solves (G_z² − ∇_ρ²) ĝ_{G_z}(ρ) = 4π δ^{(2)}(ρ), the 2-D screened-Poisson
(Yukawa-in-2-D) equation, whose decaying solution is the modified Bessel function
ĝ_{G_z}(ρ) = 2 K₀(|G_z|ρ). The G_z=0 mode solves the 2-D Poisson equation of
a neutralized line, −∇_ρ² ĝ_0 = 4π[δ^{(2)}(ρ) − 1/(L·∞)]·L, giving the
logarithmic line potential ĝ_0(ρ) = −2 ln(ρ/ρ₀) (up to gauge). Summing:
G^{1D}(ρ, z) = (2/L) Σ_{G_z≠0} K₀(|G_z|ρ) e^{iG_z z} − (2/L) ln(ρ/ρ₀) + C
└──── oscillatory, Bessel-screened ────┘ └─── line ───┘
This kernel is new to vibe-qc (the slab workstream marked NEUTRALIZED_1D
explicitly out of scope, handovers/HANDOVER_SLAB_EWALD_2D.md). M2 implements it.
K₀ is available via scipy.special.k0; the G_z≠0 sum converges
exponentially (K₀(x) ~ √(π/2x) e^{−x}), and the ρ→0 short-range singularity
is K₀(|G_z|ρ) → −ln(|G_z|ρ/2) − γ, which combines with the −(2/L)ln(ρ/ρ₀)
line term to give the correct bare 1/r Coulomb singularity as ρ,z→0 (the
short-range K exchange piece is built molecular-limit/real-space, as in the 3-D
and slab paths). ρ₀ (the gauge radius) and C are fixed by the reduction
anchor (§5).
4. The conditional (zero-transverse-mean) channel and the dipole BC¶
The G∥=0 (d=2) / G_z=0 (d=1) channel is where all the finite-size physics
and the convention freedom live — it is the low-D image of the 3-D G=0 term:
Its growing part (
−(2π/A)|z|;−(2/L)ln(ρ/ρ₀)) is forced by the neutralizing sheet/line — the analogue of the forcedJ/Coulomb part in 3-D.Its constant
Cis the gauge, fixed by a reference point; differences of energies (and the MO-basis correlation numerator) areC-independent.For a polar cell (net normal dipole
M_z, slab; net transverse dipole, wire) the asymptotic potential is discontinuous across the system — a dipole-layer termΔφ = 4π M_z/A(slab). This is the genuine low-D analogue of the 3-D conditionally-convergent surface term, and it is a declared boundary condition: the modeller chooses tin-foil (short-circuit,Δφ=0) or open (the dipole layer is kept).-adeclares the open BC (the dipole layer is physical for an isolated slab/wire) and records it alongsideexchange_q0. The existing slab Hartree carries a known inaccuracy here (theM_z≠0z-profile first moment is off ~6.7e-3, blocking the slab SCF un-gate, §6) — D3 must get the dipole-layer term right, because it is exactly the term that distinguishes a polar slab’s Hamiltonian.
5. The transverse-periodic-reduction gate (M3 — the hard, dependency-free check)¶
v_E^{3D} is the transverse-periodic sum of the mixed-boundary kernel: stacking
G^{2D} at every transverse image z → z + nL_z (a 3-D lattice with the open
direction re-periodized at period L_z) must reproduce the already-validated
v_E^{3D} up to the gauge constant:
Σ_{n∈ℤ} G^{2D}(ρ, z + nL_z) ≟ v_E^{3D}(ρ, z; L_z) + c·(gauge) [d=2 → 3]
Σ_{m,n} G^{1D}(ρ + m a_x + n a_y, z) ≟ v_E^{3D}(·; a_x,a_y) + c [d=1 → 3]
Realized on the four-center / kernel level, the gate is: the low-D effective
four-center g_eff^{(d)} = (μν| G^{(d)} |rs) re-periodized in the transverse
directions equals ccm_eri_neutral/ccm_neutral_cderi (v_E^{3D}) up to a
rank-1 c·S⊗S gauge shift — the four-center analogue of the already-passing
tests/test_j_slab_ewald_2d.py::test_j_matches_3d_vacuum_limit_up_to_gauge
(J_2D − J_3D → c·S + resid, residual → 0 as the gap grows). This needs no
external dependency: the right-hand side is -a’s own validated 3-D kernel.
Passing it for both d=2 and d=1, on the four-center, is M3.
6. The exchange-q=0 seam from the same G (M4) — and the D1 tie-in¶
The exchange contribution K_{μν} = Σ_{rs} D_{rs} (μs| G |rν) carries a
q=0 (G∥=0/G_z=0) self-interaction seam — the low-D analogue of the 3-D
exxdiv term. It is read off the same G, not chosen independently: the
seam is the signed probe-charge limit of the conditional channel of G^{(d)}
(the C-gauge value at the probe-charge self-distance), i.e. the low-D analogue
of madelung.apply_exxdiv_ewald_to_K / exxdiv_ewald_energy_shift (the 3-D
BvK-Madelung exchange). Because the seam shifts the HF occupied/virtual spectrum,
it propagates into correlation through the gap — exactly the dependence D1
made a machine-recorded provenance field (exchange_q0,
python/vibeqc/periodic/exchange_convention.py). The low-D run records
exchange_q0 = BvK-ewald (the signed-probe-charge seam of G^{(d)}) and the
A/B/KMP2 comparison asserts it matches, and the new dipole BC is recorded
beside it. M4 derives the seam and pins it numerically against the 3-D seam under
the M5 reduction.
7. Milestones¶
M |
Deliverable |
Gate |
State |
|---|---|---|---|
M1 |
Poisson problem + BCs + kernels declared (this doc) |
derivation + dependency-free reduction anchor stated |
DONE |
M2a |
Scalar mixed-boundary kernels: |
G∥ |
|
M2b |
Four-center routing |
short-range → bare |
TODO |
M3a |
Scalar reduction: each kernel |
reference Ewald |
DONE ( |
M3b |
Four-center reduction: |
residual → 0 with gap |
TODO (after M2b) |
M4-foundation |
Low-D self-energy ξ = |
r² Richardson, gauge-shift exact |
DONE ( |
M4 |
Exchange- |
seam reduces to |
TODO (builds on the M4-foundation ξ) |
M5 |
Re-run 1-D/2-D H-chain / graphene controls |
4c-vs-RI gap (now hundreds of kJ/mol; |
TODO |
Until M5 passes, low-D numbers are model numbers, not accuracy claims.
8. Reuse / boundaries¶
Reuse vibe-qc’s own slab Ewald (
ewald_composed_slab.py,periodic_v_ne_slab.py) and the 3-Dv_E(neutral.py) — vibe-qc code, not an external program (CLAUDE.md §10). The 1-D wire kernel is new.The slab SCF un-gate (the polar-dipole §7 gate) is the periodic-SCF chat’s workstream (
HANDOVER_SLAB_EWALD_2D.md, blocked onM_z≠0); D3 builds the CCM four-center + exchange-seam layer on top and contributes the corrected dipole-layer term back to that gate.Parity with
-b’s mixed-boundary construction is checked out-of-process (subprocess), never by importing-bmodules;-akeeps its own implementation.Heavy runs (the dense
g_eff/ all-FT GDF) go to vq, never local (the 137 GB hazard); M3/M5 numerics are vq jobs.
References: Parry 1975; de Leeuw–Perram 1979; Bertaut; Rozzi et al.,
Phys. Rev. B 73, 205119 (2006) (mixed-boundary Coulomb cutoffs);
Sun–Berkelbach–McClain–Chan 2017 (the 3-D periodic GDF this reduces to);
Peintinger & Bredow 2014 (CCM). Joint spec: aiccm_a_position.md §0.5 item 6,
aiccm_a_proposed_comparison_text.md point 5.