Back to skills
SkillHub ClubAnalyze Data & AIFull StackData / 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.

Packaged view

This page reorganizes the original catalog entry around fit, installability, and workflow context first. The original raw source lives below.

Stars
16
Hot score
86
Updated
March 20, 2026
Overall rating
C1.6
Composite score
1.6
Best-practice grade
A92.0

Install command

npx @skill-hub/cli install edwnh-dqmc-dqmc-analyze

Repository

edwnh/dqmc

Skill path: .claude/skills/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.

Open repository

Best for

Primary workflow: Analyze Data & AI.

Technical facets: Full Stack, Data / AI.

Target audience: everyone.

License: Unknown.

Original source

Catalog source: SkillHub Club.

Repository owner: edwnh.

This is still a mirrored public skill entry. Review the repository before installing into production workflows.

What it helps with

  • Install dqmc-analyze into Claude Code, Codex CLI, Gemini CLI, or OpenCode workflows
  • Review https://github.com/edwnh/dqmc before adding dqmc-analyze to shared team environments
  • Use dqmc-analyze for development workflows

Works across

Claude CodeCodex CLIGemini CLIOpenCode

Favorites: 0.

Sub-skills: 0.

Aggregator: No.

Original source / Raw SKILL.md

---
name: dqmc-analyze
description: 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.
---

# 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:**
```python
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 <n_up n_down> | - |
| `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:**
```python
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:**
```python
# 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 |
dqmc-analyze | SkillHub