AICCM visualization

Both Γ-CCM and χ-CCM[1] write standard visualization formats that can be opened in vibe-view, VMD, VESTA, or any cube/Molden reader. Γ-CCM is the direct-torus representation; χ-CCM is the finite-character (Γ-centred character-mesh) representation of the same declared finite-BvK torus Hamiltonian. This page covers what each route writes and how to inspect it.

Γ-CCM visualization

The aiccm-viz route (full orbital export)

The aiccm-viz route runs an HF SCF and writes two complete orbital sets - the canonical crystalline orbitals (COs) and the localized Wannier orbitals - plus the density:

cd aiccm-2026
python run_case.py c-diamond aiccm-viz

Outputs (written to the output directory):

file

contents

open with

<system>_canonical.qvf

Crystalline orbitals (canonical HF)

vibe-view

<system>_wannier.qvf

Localized Wannier orbitals (Pipek-Mezey)

vibe-view

<system>_density.cube

HF density on a uniform grid

VMD, VESTA

<system>_co_<i>.cube

Canonical orbital i on a grid

VMD, VESTA

<system>_wannier_<i>.cube

Wannier orbital i on a grid

VMD, VESTA

<system>.molden

All orbitals in Molden format

Molden, Jmol

The JSON result (<system>__aiccm-viz.json) records the Wannier centers and spreads, the localization objective, and the unitary-invariance density residual (must be ~1e-15).

The aiccm-properties route (density + properties .qvf)

python run_case.py c-diamond aiccm-properties

Writes:

file

contents

<system>_props_canonical.qvf

Crystalline orbitals + density + per-atom properties

<system>_props_density.cube

HF density cube

Python API

from vibeqc.periodic.ccm import CCMSystem
from vibeqc.periodic.ccm.scf import run_ccm_rhf
from vibeqc.output.formats.qvf import write_qvf

ccm = CCMSystem(system, (2, 2, 2), "sto-3g")
scf = run_ccm_rhf(ccm, method="aiccm2026dev-a")

# Write a QVF archive with the HF density and orbitals
write_qvf(
    "my_system.qvf",
    molecule=ccm.supercell,
    mo_coefficients=scf.mo_coeffs,
    mo_energies=scf.mo_energies,
    density_matrix=scf.density,
    basis_name="sto-3g",
)

The QVF format is documented in the QVF specification and consumer reference.

χ-CCM visualization

χ-CCM writes standard output formats through run_periodic_job with the usual output flags:

result = vq.run_periodic_job(
    system, basis,
    method="RHF",
    jk_method="aiccm2026dev-b",
    aiccm_lattice_extension=(2, 2, 2),
    aiccm_backend="ri",
    write_molden_file=True,
    output_qvf=True,
)

Enable write_molden_file=True and output_qvf=True on any run_periodic_job call. The output directory receives:

file

contents

<jobname>.molden

Orbitals in Molden format

<jobname>.qvf

QVF orbital archive

The aiccm2026dev_b_band_structure function also writes band-structure data that can be plotted with the standard band-structure tools (vibeqc.bands).

Opening a QVF in vibe-view

vibe-view is the GPU-accelerated 3-D viewer for QVF archives. From the vibe-view checkout:

cd ~/gitlab/vibe-view
python -m vibe_view <path/to/file.qvf>

Or from within Python:

from vibe_view import load_qvf

archive = load_qvf("c-diamond_canonical.qvf")
print(f"n_atoms = {archive.n_atoms}, n_orbitals = {archive.n_orbitals}")
# archive.render(isosurface=0.05)  # interactive

The vibe-view handover documents the current capabilities (orbital isosurfaces, density, bond analysis, COOP/COHP).

Opening a cube file in VMD / VESTA

Cube files are plain-text volumetric grids. Any standard tool reads them:

# VMD
vmd c-diamond_density.cube

# VESTA (GUI)
open c-diamond_density.cube

For orbital cubes, VMD can display isosurfaces of individual orbitals:

# VMD Tcl console
mol new c-diamond_co_0.cube
mol addrep top
mol modstyle 0 top Isosurface 0.05 0 0 0 1 1

Rendering for publication

The QVF → vibe-view pipeline is the recommended path for paper and cover figures:

  1. Run aiccm-viz on the target system

  2. Open the .qvf in vibe-view

  3. Choose the orbital, isovalue, and colour map

  4. Export a high-resolution PNG or the camera state for reproducibility

The .cube files are the fallback when vibe-view is not available or when you need VESTA’s crystallographic rendering (bonds, polyhedra, unit-cell outline).

See also