skills/materials/vasp-input-preparation/SKILL.md
Use this skill for preparing canonical VASP relax/static/frequency/DOS/MD input sets, choosing the correct regime and preset, handling INCAR patch-policy edge cases, explicit slab-frequency setup, and producing execution-ready folder layouts before dispatch.
npx skillsauth add q734738781/CatMaster vasp-input-preparationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill to produce execution-ready VASP input trees without fighting tool-enforced defaults.
vasp_prepare with the right preset: relax, static, freq, dos, or md.regime correctly: bulk, slab, or gas.output_root.patch_policy="safe" by default.dos and md, treat the preset as a starter template and do job-specific tuning through user_incar_patch in the same call.CHGCAR, make that an explicit upstream requirement and preserve the file in the self-consistent stage.use_d3, use_dft_plus_u, enable_dipole, spin/MAGMOM, smearing, or reference-state choices), set them explicitly in the first preparation call and report them.vasp_band_prepare instead of vasp_prepare when the job is a line-mode band-structure calculation with an explicit band KPOINTS.fix_atoms_by_indicesvasp_preparevasp_band_preparegenerate_kpathuser_incar_patch for targeted job-specific INCAR controls.dos_charge_density_path copies a CHGCAR into the output root, enables ICHARG=11, and applies the recommended LMAXMIX baseline when absent.user_incar_patch is the main hook for controls such as NEDOS, ISMEAR, TEBEG, TEEND, POTIM, NSW, SMASS, or MDALGO.MAGMOM, LDAUU, and LDAUJ must be element-value maps such as {"Fe": 2.2}.null in user_incar_patch to request removal of a key from the final INCAR.patch_policy="safe" by default; use force only when intentionally overriding canonical defaults.vasp_prepare(preset="relax", ...) is for ionic relaxation jobs.vasp_prepare(preset="static", ...) is for static jobs and enforces NSW=1, IBRION=-1.vasp_prepare(preset="freq", ...) is for finite-difference vibrational jobs and enforces the frequency-specific overrides.vasp_prepare(preset="dos", ...) is for DOS/PDOS-style jobs. The tool starts from a bulk-leaning tetrahedron-style template with ISMEAR=-5, NEDOS=2001, LORBIT=11, and if dos_charge_density_path is provided it copies CHGCAR, sets ICHARG=11, and auto-fills a recommended LMAXMIX baseline when absent.vasp_prepare(preset="md", ...) is for molecular dynamics. The tool starts from a Nose-Hoover NVT-style template with IBRION=0, MDALGO=2, NSW=1000, POTIM=1.0, TEBEG=300, TEEND=300, and SMASS=0.bulk: periodic bulk models; relax_cell=True is allowed only with preset="relax" and switches ISIF=3.slab: surface slabs; ISIF=2, KPOINTS z forced to 1, relax_cell=True is invalid.gas: molecules or gas references; forced 1x1x1 KPOINTS and relax_cell=True is invalid.ENCUT, EDIFF, smearing defaults, and relax-vs-SP mode settings.compute_dos, use_d3, use_dft_plus_u, and enable_dipole are the toggles worth surfacing when they matter.k_product is 35 for production slab work unless the task explicitly provides a convergence-backed value.user_incar_patch.ISMEAR=0, SIGMA=0.05-0.1; for clearly gapped or unknown-gap cases, consider EFERMI=MIDGAP.ISMEAR=1, SIGMA=0.2; check that the entropy term is acceptably small before treating the setup as converged.ISMEAR=0, SIGMA=0.1.ISMEAR=-5 on a sufficiently dense Gamma-centered mesh.ISMEAR=0 with small SIGMA, typically 0.03-0.1.ISYM=0, ISMEAR=0, SIGMA=0.01, and 1x1x1 KPOINTS.user_incar_patch is for targeted overrides. For dos and md, it is also the preferred path for one-call tuning of method knobs.ISMEAR, SIGMA, EFERMI, NEDOS, EMIN, EMAX, and occasionally LMAXMIX.MAGMOM, LDAUU, and LDAUJ must be element maps.patch_policy="safe" rejects overrides only for the small protected set of preset/regime-bound keys. For dos and md, safe intentionally leaves most method controls overrideable so the model can change NEDOS, ISMEAR, NSW, POTIM, TEBEG, TEEND, SMASS, MDALGO, and similar knobs without switching to force.patch_policy="force" applies the patch after canonical defaults, including explicit removal with null.force when you are intentionally breaking the preset identity itself, for example replacing IBRION with a non-matching job type or tearing down other protected invariants.output_root/<stem>/.<stem>/ per structure.generate_kpath only after a relaxed bulk baseline is accepted; it emits the band-path KPOINTS, not a full calc directory.vasp_band_prepare when that line-mode KPOINTS should become a dedicated band-structure job root.vasp_prepare; the prepare tool should only own the force-job input deck after the displacement set already exists.IBRION=5, POTIM=0.015, NFREE=2, and ISYM=0.ads_indices are available, explicitly run fix_atoms_by_indices(indices=ads_indices, reverse=true) on the relaxed adsorbate-slab structure before writing the frequency input.ENCUT, EDIFF, smearing policy, spin treatment, DFT+U, D3, dipole correction, and other reference-sensitive toggles.use_d3, use_dft_plus_u, enable_dipole, spin treatment, or reference-state-sensitive INCAR toggles when they affect comparison.ISMEAR=0 with small SIGMA is the safer generic starting point than jumping directly to Methfessel-Paxton.ISMEAR=1, SIGMA=0.2, then check the entropy term before treating it as production-worthy.ISMEAR=0, SIGMA=0.1 is the project-default explicit starting recipe.relax_cell=true unless the task explicitly requires a variable-cell study and the system is not in slab mode.k*a ~= 35 Å as the initial project default unless convergence evidence justifies something else.k_product should be chosen from the bulk convergence requirement, not copied mechanically from slab policy.k_product to around 50 when the extra sampling is part of the stated objective.DOSCAR as the final result.ISMEAR=0 with small SIGMA (0.03-0.1).ISMEAR=-5 is a good explicit start only when the mesh is dense enough and Gamma-centered.EFERMI=MIDGAP.CHGCAR, surface that explicitly with dos_charge_density_path, and make sure the upstream self-consistent stage actually kept CHGCAR (for example by setting LCHARG=True there).ICHARG=11), VASP Wiki recommends LMAXMIX=2/4/6 for s,p / d / f dominated systems; the tool now auto-fills a baseline when absent, but deliberate overrides should still be reported.NEDOS together with EMIN/EMAX when narrow peaks or edge resolution matter; VASP Wiki recommends checking the integrated DOS to confirm the grid is fine enough.user_incar_patch.Return:
output_root_relpreset and regimek_gridk_product, DFT+U, or INCAR normalization matter.band-and-dos-analysis or phonon-displacement-workflow when the task goes beyond pure input preparation.band-and-dos-analysis, strain grids to elastic-property-workup, displacement sets to phonon-displacement-workflow, and MD trajectories to md-diffusion-analysis.data-ai
Use this skill for source-grounded CP2K AIMD preparation, restart staging, generic execution handoff through cp2k_execute, and run-health inspection.
testing
Use this skill for CP2K vibrational-analysis preparation and task-specific thermochemistry parsing after an accepted stationary point.
tools
Use this skill for source-grounded CP2K NEB and dimer path-refinement preparation through the single cp2k_prepare tool.
testing
Use this skill for CP2K DOS/PDOS, band-style, and population-analysis follow-up planning where parsing is task-specific and should usually be scripted.