Point defects in metals#194
Draft
prabhath-c wants to merge 50 commits into
Draft
Conversation
…_coeff for metal-metal, Ne-Ne, H-M and H-Ne interaction in WaterPotential node (values taken from IonPotential node). Added node for FixAtoms, where Atom species, z-coordiate or atom indexes can be defined.
…ng HEA structures
* Edit gitignore, add pipeline and env for testing, add sample test * Fix CI workflow paths and smoke-test checks * Update CI pipeline to run tests and checks on all files * Configure Ruff, Black, and Mypy without pyproject * Format black * Fix CI paths for branch checks and tests * Match executorlib CI behavior * Restore assyst import cleanup * Format black * Use DEPENDABOT_WORKFLOW_TOKEN instead of GITHUB_TOKEN * Temporarily remove ruff * Add back ruff check * Update pipeline.yml * Update pipeline.yml Temporarily disable ruff, mypy and project install * Set python version to 3.12 and update smoke test to use unittest * Format black --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: pyiron-runner <pyiron@mpie.de>
Edit default password type hint
…mestep is not being recorded as the value from the dataclass, presently the CreateLammpsInput node seems to use the default timestep.
JNmpi
reviewed
Jun 30, 2026
JNmpi
left a comment
Contributor
There was a problem hiding this comment.
While the individual node functions have good doc strings, the module would also benefit from a detailed description. Similarly, one or a few example workflows would be really helpful.
Refactor RunLammpsCalculation to support threading and optional executor. Added input port for the executor and modified input port 'cores' to 'threads_per_core' in accordance with the keys in executorlib.
… static calculations. Merge multiple parsers into one
…files - Add coverage configuration in .coveragerc - Update pipeline.yml to include coverage reporting - Create integration and unit test directories with initial test files for LAMMPS functionality
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #194 +/- ##
==========================================
+ Coverage 3.48% 15.04% +11.56%
==========================================
Files 80 85 +5
Lines 6537 8519 +1982
==========================================
+ Hits 228 1282 +1054
- Misses 6309 7237 +928 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…ect_type API
Collapses the 12 near-duplicate Create{Vacancy,Substitution,Interstitial}{FromIds,FromSeed,BatchFromIds,BatchFromSeed}
functions into 4 (CreateDefectFromIds, CreateDefectFromSeed, CreateDefectBatchFromIds,
CreateDefectBatchFromSeed) dispatched on a defect_type literal, since each family shared
the same parent-resolution/event-bookkeeping logic and only differed in the site-selection
and mutation step. Verified behaviorally identical to the original functions via diff
against the pre-merge implementation.
Also extracts shared helpers for the pairwise PBC distance calculations and the
Voronoi/Delaunay interstitial site-finding pipeline, dedupes the stoichiometry/
operations-short logic that was implemented twice (module-level vs. StructureContainer
staticmethod), and adds node wrappers for four previously-unexposed functions
(GetStoichiometry, ValidateStructure, ElementUids, FindStructureIndex).
Adds an example workflow (Workflows/point_defects_metals.py) demonstrating the merged
API: one independent defect of each type, plus chaining a second defect onto an
existing one via parent_defect_index=-1.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Wires the container_new defect-creation example (point_defects_metals.py) into the GRACE-based energy/formation-energy pipeline from point_def_energies.py: one vacancy, substitution, and interstitial defect plus a chained defect, each run through a static energy calculation and fed into the chemical-potential / formation-energy machinery in atomistic/thermodynamics/defect_phases.py. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…tion test tests/unit/structure/test_container_new.py: 37 fast, dependency-free tests covering AddPristine, CreateDefectFromIds/FromSeed/Batch* for all three defect types, chaining via parent_defect_index, error handling, the newly-added node wrappers (GetStoichiometry, ValidateStructure, ElementUids, FindStructureIndex), the pairwise-PBC-distance getters (checked against ase.Atoms.get_distance), the Voronoi/Delaunay site finders, and a couple of filter functions. tests/integration/structure/test_point_defects_metals_lammps.py: builds a small defect workflow (pristine + vacancy + interstitial, as in Workflows/point_defects_metals.py) and computes real static energies via LAMMPS (CreateLammpsStaticInput, as in Workflows/lammps_static_basic.py) rather than the slower GRACE ML-potential path, then checks the resulting vacancy/interstitial formation energies are physically sane. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.