Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
470 changes: 470 additions & 0 deletions .github/copilot-instructions.md

Large diffs are not rendered by default.

114 changes: 114 additions & 0 deletions electronicparsers/abacus/FEATURES.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
metadata:
last_updated: "2025-12-12"
updated_by: "GitHub Copilot"
parser:
name: "ABACUS"
description: "Atomic-orbital Based Ab-initio Computation at UStc - DFT code with plane-wave and numeric atomic orbital basis sets"
homepage: "http://abacus.ustc.edu.cn/"
mainfile_patterns:
- "running_*.log"
supported_file_formats:
- name: "running_*.log"
supported: true
notes: "Primary output file"
source: "electronicparsers/abacus/parser.py:ABACUSParser.init_parser"
- name: "INPUT"
supported: true
notes: "Input parameters file"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- name: "STRU"
supported: true
notes: "Structure file"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- name: "KPT"
supported: true
notes: "K-points file"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- name: "TDOS"
supported: true
notes: "Total density of states"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
runschema_capabilities:
run:
- capability: "program"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse"
- capability: "time_run"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse"
method:
- capability: "electronic.method"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "electronic.n_spin_channels"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "electronic.smearing"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "electronic.relativity_method"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "electronic.van_der_waals_method"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "dft.xc_functional"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "basis_set"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "k_mesh"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "scf"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
- capability: "atom_parameters"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_method"
system:
- capability: "atoms"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "symmetry"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
calculation:
- capability: "energy.total"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "energy.fermi"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "energy.xc"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "energy.electrostatic"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "energy.van_der_waals"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "forces.total"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "stress.total"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "pressure"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "scf_iteration"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "eigenvalues"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "band_structure_electronic"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "dos_electronic"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
- capability: "temperature"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse_configurations"
workflow:
- capability: "single_point"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse"
- capability: "geometry_optimization"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse"
- capability: "molecular_dynamics"
source: "electronicparsers/abacus/parser.py:ABACUSParser.parse"
special_features:
- "Supports both plane-wave and numeric atomic orbital (NAO) basis sets"
- "Hybrid functionals (HSE, PBE0) with exact exchange"
- "DFT+U for strongly correlated systems"
- "Spin-orbit coupling for heavy elements"
- "van der Waals corrections (D2, D3 variants)"
- "Non-collinear magnetism support"
- "Comprehensive SCF convergence tracking with energy components"
- "Band structure and DOS calculations (TDOS file)"
- "Geometry optimization with force and stress convergence"
- "Molecular dynamics (NVE, NVT ensembles)"
notes:
- "Parser supports plane-wave and numeric atomic orbital basis sets"
- "XC functional mapping includes LDA, GGA (PBE, RPBE, etc.), meta-GGA (SCAN), and hybrid functionals (HSE, PBE0)"
- "K-point sampling supports Gamma-centered and Monkhorst-Pack grids"
- "Spin-polarized (nspin=2) and non-collinear (nspin=4) calculations supported"
- "SCF iteration tracking includes detailed energy component decomposition"
- "Symmetry information includes Bravais lattice and space group operations"
143 changes: 143 additions & 0 deletions electronicparsers/abinit/FEATURES.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
metadata:
last_updated: "2025-12-12"
updated_by: "GitHub Copilot"
parser:
name: "ABINIT"
description: "ABINIT - plane-wave DFT code with extensive beyond-DFT capabilities (GW, BSE, DMFT)"
homepage: "https://www.abinit.org/"
mainfile_patterns:
- "*.*o*"
- "log"
supported_file_formats:
- name: "*.*o*"
supported: true
notes: "*.*o* (primary text output with user-defined name)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*.files"
supported: true
notes: "*.files (user-defined filenames)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*.*i*"
supported: true
notes: "*.*i* (input parameters)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*_o_DDB"
supported: true
notes: "*_o_DDB (netCDF Derivative DataBases)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*_o_DEN"
supported: true
notes: "*_o_DEN (netCDF charge density)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*_o_EIG"
supported: true
notes: "*_o_EIG (eigenvalues text file)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*_o_WFK"
supported: true
notes: "*_o_WFK (netCDF wavefunction)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*o_SCR"
supported: true
notes: "*o_SCR (netCDF RPA inverse dielectric screening)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "*o_SIGRES"
supported: true
notes: "*o_SIGRES (netCDF GW self-energy corrections)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
- name: "log"
supported: true
notes: "log (stdout redirection)"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.init_parser"
runschema_capabilities:
run:
- capability: "program"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse"
- capability: "time_run"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse"
method:
- capability: "electronic.method"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "electronic.n_spin_channels"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "electronic.smearing"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "dft.xc_functional"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "basis_set"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "k_mesh"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "scf"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "gw"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "screening"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
- capability: "frequency_mesh"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_method"
system:
- capability: "atoms"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_system"
- capability: "atoms.labels"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_system"
- capability: "atoms.positions"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_system"
- capability: "atoms.lattice_vectors"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_system"
- capability: "atoms.periodic"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_system"
calculation:
- capability: "energy.total"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "energy.kinetic"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "energy.xc"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "energy.electrostatic"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "energy.ewald"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "energy.fermi"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "forces.total"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "stress.total"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "scf_iteration"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "band_structure_electronic"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "dos_electronic"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
- capability: "band_gap"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_configurations"
workflow:
- capability: "single_point"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_workflow"
- capability: "geometry_optimization"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_workflow"
- capability: "molecular_dynamics"
source: "electronicparsers/abinit/parser.py:AbinitOutParser.parse_workflow"
special_features:
- "Plane-wave basis set with norm-conserving and PAW pseudopotentials"
- "Extensive XC functional library via native ABINIT functionals and libxc"
- GW approximation: "G0W0, eigenvalue self-consistent GW (ev-scGW), quasi-particle self-consistent GW (qp-scGW)'"
- "Bethe-Salpeter equation (BSE) for optical spectra and excitons"
- "DMFT for strongly correlated systems"
- "Time-dependent DFT (TDFPT) for excited states and response functions"
- "Phonons via density-functional perturbation theory (DFPT)"
- "Spin-orbit coupling"
- "Non-linear response properties (second harmonic generation, electro-optic effect)"
- "Multi-dataset calculations (sequential calculations with different parameters)"
- "Band structure calculations along high-symmetry paths (kptopt < 0)"
- "Support for both text output and netCDF binary files"
- "RPA dielectric screening for beyond-DFT calculations"
- "GW band gap corrections and quasi-particle energies"
notes:
- "ABINIT uses plane waves and is particularly suited for periodic systems"
- "Parser handles multi-dataset calculations (DATASET 1, 2, 3, ...)"
- "Beyond-DFT workflows (GW, BSE) are parsed via BeyondDFTWorkflowsParser"
- "XC functional specified via ixc parameter (native) or via libxc (negative ixc)"
- "Parser extracts k-mesh from ngkpt (Monkhorst-Pack) or kptrlatt"
- "Supports both text-based output files and netCDF binary files for density, wavefunctions, screening, and GW results"
111 changes: 111 additions & 0 deletions electronicparsers/ams/FEATURES.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
metadata:
last_updated: "2025-12-12"
updated_by: "GitHub Copilot"
parser:
name: "AMS"
description: "Amsterdam Modeling Suite - comprehensive DFT package with various engines (BAND, DFTB, etc.)"
homepage: "https://www.scm.com"
mainfile_patterns:
- "*.out"
- "ams.rkf"
supported_file_formats:
- name: "*.out"
supported: true
notes: "Primary text output file"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.init_parser"
- name: "ams.rkf"
supported: true
notes: "Binary results file (RKF format)"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse"
- name: "*.rkf"
supported: true
notes: "Additional RKF files for calculation results"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/rkf.py:rkf_to_dict"
runschema_capabilities:
run:
- capability: "program"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse"
- capability: "time_run"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse"
method:
- capability: "electronic.method"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "electronic.n_spin_channels"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "electronic.relativity_method"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "electronic.charge"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "dft.xc_functional"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "basis_set"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "k_mesh"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "scf"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "atom_parameters"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
system:
- capability: "atoms"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
calculation:
- capability: "energy.total"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.fermi"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.electronic_kinetic"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.xc"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.electrostatic"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.nuclear_repulsion"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.highest_occupied"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "energy.lowest_unoccupied"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "forces.total"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "scf_iteration"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "eigenvalues"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "dos_electronic"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "charges"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "multipoles"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "band_gap"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "temperature"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
workflow:
- capability: "single_point"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "geometry_optimization"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
- capability: "molecular_dynamics"
source: "packages/nomad-parser-plugins-electronic/electronicparsers/ams/parser.py:AMSParser.parse_configurations"
special_features:
- "Support for multiple computational engines (BAND, DFTB, ADF)"
- "Extensive XC functional library (LDA, GGA, meta-GGA)"
- "Grimme D3 dispersion corrections"
- "Mulliken and other charge analysis methods (Hirshfeld, Voronoi)"
- "Numeric atomic orbital (NAO) basis sets with confinement parameters"
- "DIIS convergence acceleration for SCF"
- "Band gap analysis with valence and conduction band identification"
- "Dipole moment calculations"
- "Scalar relativistic corrections (ZORA, APA)"
- "RKF binary format for efficient data storage"
- "Comprehensive MD trajectory tracking"
- "Hessian matrix calculations"
notes:
- "Parser supports both text (.out) and binary (RKF) output formats"
- "RKF format provides more comprehensive data including MD histories"
- "Multiple charge analysis methods supported (Mulliken, Hirshfeld, etc.)"
- "Spin-polarized calculations supported"
- "Relativistic treatment via scalar ZORA or APA methods"
- "K-space sampling with BZ integration parameters"
Loading
Loading