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.
from httk.analyse.generic import LowerConvexHull
from httk.analyse.matsci import PhaseDiagramLowerConvexHull 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.
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 benchmarkhttk 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