Skip to content

Repository files navigation

httk-analyse

httk-analyse is a httk₂ module for analysis algorithms: generic lower-convex-hull construction and materials-science phase diagrams. Its Python package is httk.analyse.

Usage

from httk.analyse.generic import LowerConvexHull
from httk.analyse.matsci import PhaseDiagram

LowerConvexHull provides the generic geometric construction. PhaseDiagram applies it to compositions and energies for materials-science phase-diagram analysis. See the example for a deterministic, headless invocation.

The module depends on httk-core, httk-atomistic, NumPy, and Matplotlib.

Performance benchmarks

The opt-in phase-diagram benchmark compares httk with ASE while sweeping both the number of phases and the number of species. The species sweep reaches twelve species by default so that it captures the high-dimensional regime where explicit convex-hull facet enumeration can become expensive.

python -m pip install -e '.[benchmark]'
make benchmark

httk eagerly computes hull membership, energy above hull, decompositions, and supported phase lines. ASE's constructor computes only its lower simplices, so the benchmark reports both ASE construction alone and ASE construction followed by a decomposition query for every unstable input phase. Use --help to change either sweep, the repeat count, seed, or write full results and environment metadata to JSON, for example:

python benchmarks/run_phase_diagram_benchmarks.py \
  --species-counts 2 4 6 8 10 12 \
  --species-sweep-phases 40 \
  --repeats 5 \
  --json phase-diagram-benchmark.json

About

httk2 module for result plots and analysis

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages