Skip to main content

Lighthweight but caffeinated Python implementation of computational methods for statistical mechanical calculations of configurational states in crystalline material systems.

Project description

Statistical Mechanics on Lattices

test Codacy Badge pre-commit.ci status pypi version python versions

Lighthweight but caffeinated Python implementation of computational methods for statistical mechanical calculations of configurational states in crystalline material systems.


smol is a minimal implementation of computational methods to calculate statistical mechanical and thermodynamic properties of crystalline material systems based on the cluster expansion method from alloy theory and related methods. Although smol is intentionally lightweight---in terms of dependencies and built-in functionality---it has a modular design that closely follows underlying mathematical formalism and provides useful abstractions to easily extend existing methods or implement and test new ones. Finally, although initially conceived for method development, smol can (and is being) used in production for materials science research applications.

Functionality

smol currently includes the following functionality:

  • Defining cluster expansion functions for a given disordered structure using a variety of available site basis functions with and without explicit redundancy.
  • Option to include explicit electrostatics in expansions using the Ewald summation method.
  • Computing correlation vectors for a set of training structures with a variety of functionality to inspect the resulting feature matrix.
  • Defining fitted cluster expansions for subsequent property prediction.
  • Fast evaluation of correlation vectors and differences in correlation vectors from local updates in order to quickly compute properties and changes in properties for specified supercell sizes.
  • Flexible toolset to sample cluster expansions using Monte Carlo with Canonical and Semigrand Canonical ensembles using a Metropolis sampler.

smol is built on top of pymatgen so any pre/post structure analysis can be done seamlessly using the various functionality supported there.

Installation

:warning: We have been granted the name smol on PyPi now. Please use smol instead of the previous alternative statmech-on-lattices.

From pypi:

pip install smol

From source:

Clone the repository. The latest tag in the main branch is the stable version of the code. The main branch has the newest tested features, but may have more lingering bugs. From the top level directory

pip install .

Usage

Refer to the documentation for details on using smol. Going through the example notebooks will also help you get started.

Contributing

We welcome all your contributions with open arms! Please fork and pull request any contributions. See the developing section in the documentation for how to contribute.

Changes

The most recent changes are detailed in the change log.

Copyright Notice

Statistical Mechanics on Lattices (smol) Copyright (c) 2022, The Regents
of the University of California, through Lawrence Berkeley National
Laboratory (subject to receipt of any required approvals from the U.S.
Dept. of Energy) and the University of California, Berkeley. All rights reserved.

If you have questions about your rights to use or distribute this software,
please contact Berkeley Lab's Intellectual Property Office at
IPO@lbl.gov.

NOTICE.  This Software was developed under funding from the U.S. Department
of Energy and the U.S. Government consequently retains certain rights.  As
such, the U.S. Government has been granted for itself and others acting on
its behalf a paid-up, nonexclusive, irrevocable, worldwide license in the
Software to reproduce, distribute copies to the public, prepare derivative
works, and perform publicly and display publicly, and to permit others to do so.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

smol-0.0.3.tar.gz (7.6 MB view details)

Uploaded Source

Built Distributions

smol-0.0.3-cp310-cp310-win_amd64.whl (185.9 kB view details)

Uploaded CPython 3.10 Windows x86-64

smol-0.0.3-cp310-cp310-win32.whl (174.7 kB view details)

Uploaded CPython 3.10 Windows x86

smol-0.0.3-cp310-cp310-musllinux_1_1_x86_64.whl (572.6 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

smol-0.0.3-cp310-cp310-musllinux_1_1_i686.whl (550.4 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

smol-0.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (555.7 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

smol-0.0.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (546.2 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

smol-0.0.3-cp310-cp310-macosx_10_9_x86_64.whl (200.6 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

smol-0.0.3-cp39-cp39-win_amd64.whl (185.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

smol-0.0.3-cp39-cp39-win32.whl (174.6 kB view details)

Uploaded CPython 3.9 Windows x86

smol-0.0.3-cp39-cp39-musllinux_1_1_x86_64.whl (571.6 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

smol-0.0.3-cp39-cp39-musllinux_1_1_i686.whl (550.0 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

smol-0.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (556.0 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

smol-0.0.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (545.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

smol-0.0.3-cp39-cp39-macosx_10_9_x86_64.whl (200.6 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

smol-0.0.3-cp38-cp38-win_amd64.whl (185.7 kB view details)

Uploaded CPython 3.8 Windows x86-64

smol-0.0.3-cp38-cp38-win32.whl (174.5 kB view details)

Uploaded CPython 3.8 Windows x86

smol-0.0.3-cp38-cp38-musllinux_1_1_x86_64.whl (589.6 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

smol-0.0.3-cp38-cp38-musllinux_1_1_i686.whl (566.9 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

smol-0.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (563.5 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

smol-0.0.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (552.6 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ i686 manylinux: glibc 2.5+ i686

smol-0.0.3-cp38-cp38-macosx_10_9_x86_64.whl (198.6 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

Details for the file smol-0.0.3.tar.gz.

File metadata

  • Download URL: smol-0.0.3.tar.gz
  • Upload date:
  • Size: 7.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3.tar.gz
Algorithm Hash digest
SHA256 e0eb69fe3cbf24d51233f4e9e3b4fd2e0b2979141459aa38868e75e11a4ef249
MD5 81cede3bd40d2a5449501ac1a554e7ab
BLAKE2b-256 949075d0940b5147788c21353de1e7dfc9502e73debe55229357f8ee5655db65

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: smol-0.0.3-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 185.9 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 600ba79094de030fe5d29f4515e5963ae9fe291ac496c49e19ec1f70b6f1f650
MD5 9e8a14d5c6b7a60d2c7e4c039b74f49c
BLAKE2b-256 8f8bf75dbeed25b86e73b202fc4ca0732351f3ca6e74045c3a0dda61d5467678

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-win32.whl.

File metadata

  • Download URL: smol-0.0.3-cp310-cp310-win32.whl
  • Upload date:
  • Size: 174.7 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 7b72f47b9828b0c8e73b7c5cc56289282e195739668abc6daeea0e4a1a3c6453
MD5 014152262a7daedfb37b0d7ba5c4c8f8
BLAKE2b-256 824c2a95fb9c707b95f85888794387d55b0981707df73a61c91d910aa6940d54

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 b097bff911c7cc453542abf8ed2aab330d3f8c502e057a971dbb82db7a6603ff
MD5 406a6cd86da884ac2cbd342e3ff0d714
BLAKE2b-256 0ed3d28061aac62d7cb4e5d05022cd34c2c86adcb6b0bf2716e83b988396d3ab

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 a24a7291b64e03beebb3fd3bc82ed1a2b8bbc51cb5ae9f85a84030dbf4c6d6c3
MD5 95fa63f268b1f0823c8ebbc389db999e
BLAKE2b-256 4bacf1baae85b1778cb95812256408139d58f37b4e41e58015889ea2c510582e

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 195ff5dfeb7feb6673ef366e87cfaca3fc674ed156c80c8a42b0523557fbefe5
MD5 c3d0e14818b51678b61b249b19a5251b
BLAKE2b-256 f958cf8bc66858d41aacf749cab0fa8467557a8728f1cb408e98040c8349fbed

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e3fa3a1263b0f2f884b323234648247806b7897db27ed1821ea5eb9ec4b5cd19
MD5 9cea2cf76b63f6067637a40ffbe1374a
BLAKE2b-256 6bb76e81d4af7240a3cedf7b49e32eac9f05e13d3d353035ae439e4196095a9c

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp310-cp310-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 29025d41d121dfccd91da62ff769604ea398b97cf4347aff35e21666dd34dbf9
MD5 e19300ca3497620d7f0c3130160b1cc6
BLAKE2b-256 4c45641158e1544d823493c540cac1366c50f1c7e3986afdab208296e681f5bd

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: smol-0.0.3-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 185.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 e21f623a978391ecb2f11844fc3be60edb3ddc8b7cbc8dcc5baac4dd197e211f
MD5 896dd8ec5e1ff67ceaabe70e4046e899
BLAKE2b-256 c2f7cfda608888f86141f0118078f677f4cf062a5e5b25b806b4d95889f6acd2

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-win32.whl.

File metadata

  • Download URL: smol-0.0.3-cp39-cp39-win32.whl
  • Upload date:
  • Size: 174.6 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 a590fc549c341623a5adf47a257c3197ac01ec0969cbfae33b306b8dfe3debe0
MD5 06201c976e05a2acc2b984e67c9d381e
BLAKE2b-256 e4f9c8a487c0cbdb7449685d99909e5d3aa67b78dc9acee52fa0abceb91616cc

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 33bf1d09bc673f8cda8a68b6eab646563bf18dd4b500283c2f5778af447db4d5
MD5 6e62a49ab6ac3779c510d55dafec1da0
BLAKE2b-256 72af80fb8ceb66cb6726ee54ec381cc7603b6d3116dabc8a22714a6016a316bb

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 ecba122f88e42bc70a80c1d9a2aada684d6e614207e2806191c5f12deaae22af
MD5 e98accf10a344abdb80df61e947e2dcf
BLAKE2b-256 ba11727d3931e11cd7e0a5493a9aedad6758e657b70d043c80b3ba878dc48251

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 282fc5e4b6a5d8d6c88afa1c916badf3c0976ce40faf0d6cb5eb4dc53b2e3af1
MD5 1fca94873ee37b05777bd378d76249e8
BLAKE2b-256 15e5534ceff1832248bad97a517d7384e9dd9ba7d71122da797a1503c3bb4bfb

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c3cf47dcd6a9bc986597d0007d14d1ef83f07e57f68f48ab953dbdb965edc3c1
MD5 51fa8b00f705c051cc87cf856278f81e
BLAKE2b-256 50ef5ba19baaeb62dae1507bab4fe57140d46ebd0b1548642e0d3dd016d49f91

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp39-cp39-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 527a6afcbc1fa203f3fe607fbacbb5bddb43474f8ff3b6463e3ea50add8ab97c
MD5 6fb7bee038ae0252e92a38671180c1ea
BLAKE2b-256 55a9146790785f9bfb70132744270803d6ebdb045933614a854358a3ab2031f4

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: smol-0.0.3-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 185.7 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 cbdcd890b7728f461c8fedd0ad6d533fe974024be9991dd79700e8b47de6c0ca
MD5 e738c9b95a24d76c0c5d4f0c5326f390
BLAKE2b-256 860612564aac71afa2a21a214b91f7eebd6b69d2a5ea020d658f97cd8986c8ec

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-win32.whl.

File metadata

  • Download URL: smol-0.0.3-cp38-cp38-win32.whl
  • Upload date:
  • Size: 174.5 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for smol-0.0.3-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 15f2944e6d615ef4074e685add13dfe62dc7410866235d25bdb9f518bafab4e9
MD5 a612b506a004f5aa069698c8dfdf7b50
BLAKE2b-256 a3ae30abc20f04bb03e4f0c75b0d11dd7484cb38e5c23a57695b228c385e35e8

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 79ace922e84b5a21779bc530b90086a2b4205e1b4b06c4ebe57b0f494062f0f6
MD5 6051ae2f8a8f72439ca5f9ceb1db07d2
BLAKE2b-256 0a57d104b5391bdd831f74607ae6e7818961056b1a8b0b35147b04474d97a8c2

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 5d519f702478fae596592f52abc5e70a28e5c53a6f7655968bb7f79721b70dc2
MD5 4df9e2f293b45211b615a946d00b6bbc
BLAKE2b-256 c0aed6d9312a961756d44c570c11649864214165db24dbe5f28a0bdf24f65fd0

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 94098e2b3c8e688a1a1123f9ed223747c4ee982e24e39b1a46a9b6f36fb66653
MD5 695e94cf63137aed9c8e1e9e6f3310ef
BLAKE2b-256 5bcebf58e8a751653db659810060ab71bde07b5ba920fae1f381aa377b9e7ee8

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d6e6b5ca12f491a5124fb08a827c05d5a662e5f61202357f37c46ea304f43ba4
MD5 c5252c282b6825088bab2ddac218f0b1
BLAKE2b-256 98d5c054b5e1514d20b41cdfc47f1f993dc79d2a277f44b32b9dcb928388ab16

See more details on using hashes here.

File details

Details for the file smol-0.0.3-cp38-cp38-macosx_10_9_x86_64.whl.

File metadata

File hashes

Hashes for smol-0.0.3-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 f21a7ce39c6aa564d7aad16bf2cfe4a9cb3e7c2412d7926f6c04820ff8f736f4
MD5 49afbb6a583045dbd6820da4fb8716ca
BLAKE2b-256 624874228b29779af0b62fc2894881964ad770e1daae3c5a669349d107d57514

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page