skills/experiment/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.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_kpathvasp_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 or 2, with SIGMA≈0.2 as a practical first pass; check that the entropy term is acceptably small before treating the setup as converged.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.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.testing
Draft, audit, or revise point-by-point reviewer response letters for Nature-family manuscript revisions. Use when the user provides reviewer comments, editor decision letters, revision notes, response drafts, or asks how to respond to major/minor revision requests, rebuttal letters, response to reviewers, peer-review reports, 审稿意见回复, 逐点回复, 修回信, 大修回复, 小修回复, or 如何回复 reviewer.
development
Build full-text bilingual, figure-aware, source-grounded Markdown reading files for journal or conference papers from PDF, DOI, arXiv, publisher HTML, or pasted text. Use whenever the user asks to translate an entire paper, make a complete markdown reader, preserve figure or table placement near the relevant prose, or keep exact source anchors for every block. Do not use this for summaries, bullet-keyword notes, or citation-only tasks.
testing
Polish, restructure, or translate academic prose into Nature-leaning English using the paper-architecture and writing-strategy principles from Scientific English Writing & Communication, with phrase-level support from Academic Phrasebank. Use whenever the user asks to polish a manuscript paragraph, abstract, introduction, results, discussion, conclusion, title, methods section, or Chinese academic draft for publication-quality English.
tools
Build a complete but efficient Nature-style Chinese PPTX presentation from a scientific paper, preprint, PDF, article text, abstract, figure legends, or reading notes. Use this skill whenever the user asks to make slides/PPT/PPTX for journal club, group meeting, paper sharing, thesis seminar, lab meeting, department report, or academic presentation from a research paper, not only medical papers. It identifies the paper type and argument, selects only the figures needed for the story, writes Chinese slide content and speaker notes, creates the actual .pptx deck, and performs lightweight verification with cross-platform Python tooling by default.