#lattice #crystal #graph #material

bin+lib vegas-lattice

CLI and library to work with lattices

17 releases (breaking)

Uses new Rust 2024

0.13.0 Nov 21, 2025
0.11.1 Nov 3, 2025
0.11.0 Jun 10, 2025
0.9.0 Sep 19, 2024
0.1.0 Sep 12, 2017

#44 in Science


Used in vegas

Custom license

71KB
1.5K SLoC

vegas-lattice-rs

Crates.io Build Status Documentation DOI

A little tool to build lattices and samples out of patterns written in rust.

Installation

vegas-lattice-rs can be used as a standalone executable in order to build yourself some lattices and otherwise it can be used as a rust crate (library). If you have cargo installed in your system, you can grab the executable from crates.io using:

cargo install vegas-lattice

after running that you will have an executable vegas-lattice in your system that will run as expected.

To use it as a library, just run:

cargo add vegas-lattice

Usage

I'd recommend to alias vegas-lattice to something shorter, since the pipelines can get really complex real quick.

alias vl=vegas-lattice

Now, lets write a basic example,

vl bcc \
    | vl expand --along-x 10 --along-y 10 --along-z 5 \
    | vl alloy A Fe+ 50 Fe 50 \
    | vl alloy B Fe+ 50 Fe 50 \
    | vl into xyz

This command will create a 10x10x5 bcc lattice, and will turn half the iron sites into iron + and after that it will transform the lattice into an xyz file representation.

Notice that you can pipe the output of one command to the next one using the standard io.

Dependencies

~11MB
~223K SLoC