smithery.ai

dqmc-analyze

Extract physical observables with error estimates from completed DQMC simulations. Use when computing density, double occupancy, spin correlations, structure factors, or any measured quantity from simulation data.

First seen Mar 23, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,543 B
  • docs SUMMARY.md 233 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 1 installs

SKILL.md

Analyze Results

Inputs

  • Directory containing bin_*.h5 files (completed simulations)
  • Observable names (see table below)

Outputs

  • Dictionary with parameters and (mean, stderr) tuples for each observable

Procedure

Basic analysis:

from dqmc_util import analyze_hub

data = analyze_hub.get("data/run/", "sign", "den", "zzr")

print(f"sign = {data['sign'][0]:.4f} +/- {data['sign'][1]:.4f}")
print(f"density = {data['den'][0]:.4f} +/- {data['den'][1]:.4f}")

Available observables:

Name Description Requires
sign Fermion sign -
den Density <n> -
docc Double occupancy <nup ndown> -
gr, gk Green's function (real/k-space) -
nnr, nnq Density correlator / structure factor -
zzr, zzq Spin-z correlator / structure factor -
xxr Spin-x correlator -
swq0 S-wave pair structure factor -
nnrw0, zzrw0 Zero-freq susceptibilities period_uneqlt > 0
dwq0t D-wave pair susceptibility period_uneqlt > 0

Collect from multiple directories:

import os

def collect_results(base_dir, observables):
    results = []
    for subdir in sorted(os.listdir(base_dir)):
        path = os.path.join(base_dir, subdir)
        if os.path.isdir(path):
            try:
                results.append(analyze_hub.get(path + "/", *observables))
            except Exception as e:
                print(f"Skipping {path}: {e}")
    return results

Compute derived quantities:

# Magnetic moment squared from spin correlator
path = "data/run/"
data = analyze_hub.get(path, "zzr")
mz2 = 4 * data["zzr"][0][0, 0]       # [0] = mean, shape (Ny, Nx)
mz2_err = 4 * data["zzr"][1][0, 0]   # [1] = stderr

Validation

  • Errorbar on sign is significantly less than mean. Otherwise, sign problem is too severe.
  • Errorbars on observable are reasonable (not >> mean)

Failure Modes

Symptom Cause Recovery
KeyError for observable Observable not computed Check period_uneqlt setting
"No files found" Wrong path or no bin_*.h5 Verify directory structure
Large error bars Insufficient statistics Run more sweeps or bins