hello-qm/catgo-lrg/convergence
Claude Code and agent skill by hello-qm/catgo-lrg
- community
Checking that the SKILL.md file is still in the repository.
Use when the user asks to test ENCUT convergence, k-point convergence, or any parameter sweep to determine converged computational settings.
Install
npx vskill@latest install hello-qm/catgo-lrg/convergenceSKILL.md
Convergence Testing
Purpose
Before production calculations, verify that results are converged with respect to key numerical parameters. The two most important are:
- ENCUT (planewave cutoff energy) -- controls basis set completeness
- KPOINTS (k-point mesh density) -- controls Brillouin zone sampling
Convergence is reached when the target property (energy, forces, band gap) changes by less than a threshold (typically 1 meV/atom for energy).
Fan-Out Pattern
Convergence tests use a fan-out DAG: one input structure feeds into multiple independent single_point calculations with different parameter values.
Use single_point (not geo_opt) to isolate the parameter effect without geometry changes confounding the comparison.
MCP Workflow: ENCUT Convergence
Step 1: Create workflow
Step 2: Add single_point tasks at each ENCUT
Repeat for ENCUT = 600, 700, 800.
Step 3: Submit
Step 4: Check results
MCP Workflow: KPOINTS Convergence
Repeat for 6x6x1, 8x8x1. Use the converged ENCUT from the previous test.
Python API
ENCUT Convergence
KPOINTS Convergence
Convergence Criteria
| Property | Threshold | Typical Converged ENCUT | |
|---|---|---|---|
| Total energy | 1 meV/atom | 1.3x max(ENMAX) in POTCAR | |
| Forces | 5 meV/A | Same as energy | |
| Band gap | 10 meV | May need higher ENCUT | |
| Stress tensor | 0.1 kbar | Often needs 1.5x ENMAX |
Recommended ENCUT Values by Element Type
| System | Starting ENCUT Range | Notes | |
|---|---|---|---|
| Simple metals (Cu, Pt) | 300-500 | Usually converges quickly | |
| Oxides (TiO2, RuO2) | 400-600 | O has high ENMAX | |
| Nitrides, carbides | 400-600 | N, C have moderate ENMAX | |
| F-containing | 500-800 | F has very high ENMAX |
Two-Stage Strategy
- ENCUT first: Fix KPOINTS at a moderate value (e.g., 4x4x4),
sweep ENCUT. Pick the converged ENCUT.
- KPOINTS second: Fix ENCUT at converged value, sweep KPOINTS.
Pick the converged mesh.
This avoids the combinatorial explosion of testing all ENCUT x KPOINTS pairs.
Common Pitfalls
- Always use
single_point, notgeo_opt. Geometry changes at different
ENCUT introduce noise that masks the convergence behavior.
- For slab models, only converge the in-plane k-points (e.g., NxNx1).
The vacuum direction needs only 1 k-point.
- ENCUT should be at least 1.3x the maximum ENMAX in the POTCAR.
Check POTCAR ENMAX values before choosing the test range.
- Report energy per atom (E_total / N_atoms), not total energy,
for meaningful comparison across different systems.
- Always plot E vs parameter -- convergence should be monotonic.
Non-monotonic behavior suggests other issues (e.g., SCF convergence).
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingserver/catgo/workflow/skills/analysis/convergence/SKILL.md
Popularity
- Repository stars
- 172
- Repository forks
- 18
- 7-day trend score
- 26
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/hello-qm/catgo-lrg/convergence)