@matteria-js/workflows
v0.1.0
Published
VASP and Quantum ESPRESSO input-template generators for MATTERIA structures.
Readme
@matteria-js/workflows
VASP and Quantum ESPRESSO input-template generators for MATTERIA structures.
This package prepares editable input files as strings. It does not read or write directories, submit jobs, manage queues, choose pseudopotentials for you, or run solvers.
Included
- VASP input sets with
POSCAR,INCAR,KPOINTS, and aPOTCAR.specspecies list. - Quantum ESPRESSO
pw.xinput sets with optionalbands.x,dos.x, andpp.xcompanion files. - Workflow presets for relaxation, static, band, DOS, charge-density, STM, SOC, DFT+U, vdW, NEB, phonon, elastic, slab, defect, and heterostructure starting points.
- User tag overrides for INCAR and QE namelists.
- Automatic or explicit k-point meshes.
- Line-mode VASP paths and QE
crystal_bpaths. - JSON-friendly input-set summaries with file names, line counts, byte counts, species, and warnings.
- Metadata-only workflow plans with generated files, external files, expected output artifacts, and external program stages.
Example
import {
generateQeInputSet,
generateVaspInputSet,
summarizeWorkflowInputSet,
summarizeWorkflowPlan,
} from "@matteria-js/workflows";
const vasp = generateVaspInputSet(structure, {
workflow: "relax",
incar: {
encut: 600,
ediffg: -0.01,
},
kpoints: {
mode: "gamma",
grid: [4, 4, 4],
},
});
const qe = generateQeInputSet(structure, {
workflow: "dos",
prefix: "silicon",
pseudoPotentials: {
Si: "Si.pbe-n-kjpaw_psl.1.0.0.UPF",
},
});
const vaspSummary = summarizeWorkflowInputSet(vasp);
const qePlan = summarizeWorkflowPlan(qe);
console.log(vasp.files.INCAR);
console.log(qe.files["pw.in"]);
console.log(vaspSummary.fileNames);
console.log(vaspSummary.warningCount);
console.log(qePlan.expectedOutputArtifacts);The returned object is JSON-friendly:
console.log(vasp.metadata.warnings);
console.log(Object.keys(vasp.files));
console.log(summarizeWorkflowInputSet(qe).totalBytes);
console.log(summarizeWorkflowPlan(vasp).stages);Limits
- templates are starting points, not guaranteed production input decks
- no filesystem, queue, cluster, or cloud orchestration
- no automatic pseudopotential download or POTCAR generation
- no convergence testing or error recovery
- no workflow execution
- workflow plans are summaries for caller-owned orchestration; they do not prove a run completed
- NEB templates only create common starting files; image directories remain caller-owned
- QE NEB has a separate
neb.xinput shape and is not fully generated yet
