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.4.tar.gz (7.6 MB view details)

Uploaded Source

Built Distributions

smol-0.0.4-cp310-cp310-win_amd64.whl (186.2 kB view details)

Uploaded CPython 3.10 Windows x86-64

smol-0.0.4-cp310-cp310-win32.whl (175.1 kB view details)

Uploaded CPython 3.10 Windows x86

smol-0.0.4-cp310-cp310-musllinux_1_1_x86_64.whl (573.0 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ x86-64

smol-0.0.4-cp310-cp310-musllinux_1_1_i686.whl (550.7 kB view details)

Uploaded CPython 3.10 musllinux: musl 1.1+ i686

smol-0.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (556.0 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ x86-64

smol-0.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (546.5 kB view details)

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

smol-0.0.4-cp310-cp310-macosx_10_9_x86_64.whl (200.9 kB view details)

Uploaded CPython 3.10 macOS 10.9+ x86-64

smol-0.0.4-cp39-cp39-win_amd64.whl (186.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

smol-0.0.4-cp39-cp39-win32.whl (175.0 kB view details)

Uploaded CPython 3.9 Windows x86

smol-0.0.4-cp39-cp39-musllinux_1_1_x86_64.whl (571.9 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ x86-64

smol-0.0.4-cp39-cp39-musllinux_1_1_i686.whl (550.4 kB view details)

Uploaded CPython 3.9 musllinux: musl 1.1+ i686

smol-0.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (556.3 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

smol-0.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (546.1 kB view details)

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

smol-0.0.4-cp39-cp39-macosx_10_9_x86_64.whl (200.9 kB view details)

Uploaded CPython 3.9 macOS 10.9+ x86-64

smol-0.0.4-cp38-cp38-win_amd64.whl (186.1 kB view details)

Uploaded CPython 3.8 Windows x86-64

smol-0.0.4-cp38-cp38-win32.whl (174.9 kB view details)

Uploaded CPython 3.8 Windows x86

smol-0.0.4-cp38-cp38-musllinux_1_1_x86_64.whl (590.0 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ x86-64

smol-0.0.4-cp38-cp38-musllinux_1_1_i686.whl (567.3 kB view details)

Uploaded CPython 3.8 musllinux: musl 1.1+ i686

smol-0.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (563.8 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

smol-0.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (552.9 kB view details)

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

smol-0.0.4-cp38-cp38-macosx_10_9_x86_64.whl (199.0 kB view details)

Uploaded CPython 3.8 macOS 10.9+ x86-64

File details

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

File metadata

  • Download URL: smol-0.0.4.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.4.tar.gz
Algorithm Hash digest
SHA256 4b66dc458040b5cb6c1a10fa144b6f67dd6a80a6b7e1a2d06bcdefd59ea1fff5
MD5 0ecdf8583aaa9b61b5971d25be2ef6e1
BLAKE2b-256 57cbe245369dd8372bf61a165ecc22f77d72d80a38a01f0d6380ff8aee457208

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 186.2 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.4-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c20768b57c54c7ed25fba77241a0c4ee3ae831479875839c696a5f4cb22ea437
MD5 c239f0cb80a2f5eb0c068bba1469f3d2
BLAKE2b-256 8ff4789fef351d054ed381e522de75cd9b726fabb14261e251839de2ced1c814

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp310-cp310-win32.whl
  • Upload date:
  • Size: 175.1 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.4-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 90ddbfed12374fb87ad0fe3321c6409cc9bfe8ae8a7b19addb949e4f28d4269e
MD5 cf067d8680b3d5f0a6af8d2923ab2cc4
BLAKE2b-256 4f2960f53499099a90156e69e4bbe865a8d670edeaeba13d5a56411fed56554b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 7935b4f6781ad482c94a3561385079774095cc4972f0ed1ca2f0543ddfeaaf15
MD5 1e7ba776d82a029f33f758bff265468b
BLAKE2b-256 175c5803e1c5749992f9feceef8ff92f7a6b51218848c71acfe73089196d008a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 9aee99c88a67c8b4eba243469fb9adfd129fd61cfbdcf13da85fab3b64632c8d
MD5 5c762056173522d5ed9159ac6a1447e6
BLAKE2b-256 d25e6ed351e10b1f221f67c43392d9ba83c1a634b3ac5f5c841e137d286f09d8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e1e50430984abf9dc0a10698363312f4bf1397079fb3443293851ca67675c8fa
MD5 fe9e3f77b58305693450aacf04ef447d
BLAKE2b-256 6c07d14d70b77bccba18437737a5757102d9d0539d00117a21bcbdff5513a3a0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 17acea1d41be1a55f53d952e7c12a8d118a576a3845f5ae66d6413b53144d468
MD5 574eb667f034ab72c4ed756a8cfc496b
BLAKE2b-256 75b03f0c503095c35221eed3c93a8d477795f96601570eef5eacc1ab7df8f5ab

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 cdb7a8777b2a8dddd3a4954ee0f19e6066cefd140447f9ef277ad6de628ad1b3
MD5 f0efe92f3e665231d6cc779e814b30de
BLAKE2b-256 50e97ed19efd762a9daba0804260d04173f45c0af68e9d1ff81e362033d32dfc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 186.2 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.4-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 67f52984a18730545fb77c8dfcb8509715d471c07f342346ad8505560125b14a
MD5 bf0c5101ef583e2dcf582f39501d4e1d
BLAKE2b-256 097755b333991acd7e39b5570febad5ffb9ed7e1a350f914beb5b674dfb81e44

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp39-cp39-win32.whl
  • Upload date:
  • Size: 175.0 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.4-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 71fa44bb7929b320da816a217e728cb9904d13637b14eb9b096cd84575fcff4a
MD5 1ce3a4e3e5b3e9f1c98f1423e6940bc0
BLAKE2b-256 4465e7dd1285768fe1755f6bfefdbb89a7620c11e78b5d988cec3d6bd9a2bc44

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 6a741dae30a571a5bca0f4a293736df437fc1743fbc65cfde15b1aad3b62727d
MD5 dcdf5d947f73c6c8bf8410402c65c78a
BLAKE2b-256 9eb76be2114f0a89e110c007901ff1a009d3adfc89e261d9ff8f0ca000871cf5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 bd7229560a329b6fa6a2735955d13a129dc0c964ca9d9b56701f5b67c29b91ce
MD5 741e65a1eeb63a540b74f02913741e71
BLAKE2b-256 7f432e966870d193904ab7e0dd1f716bfefe09ef473c810db7b07947312f44d0

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d6318b8ad29f30835ea2acc38c025bef155c08812676018d5202e5adc2a486b
MD5 d27344ed60ec45b52da4398a85fb4d98
BLAKE2b-256 a90f6cec550140b2cdec426b4d3ef13860ad4fe75f633a01658b4e54bd766eb5

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4e0078e268f03b7b2285c7dda498683e1a5a88a376bdae33b4f044d00f767ada
MD5 caf6a08e1f223839d8f6f5d71cc0b695
BLAKE2b-256 10ac603304e9bb599b73cf3b4d589fbcde62bc49e6953b7e3007044c8487f432

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 d240174cedbd88968bad40a501979b770d06d22a77e20b5b0e30df8335377744
MD5 abace5e675f0a990e810197fe6609e12
BLAKE2b-256 49b114df13145c70ad15cac25b921f79f4f9e8e1eea2234a1b18118d85b2cae8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 186.1 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.4-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 8c1f9cb550da4c5f167489a0d1db49510b23ff00ccbb9d26f2aa78e2428ed75d
MD5 30968dacebfa4d04ebc6e8bd24ed1efc
BLAKE2b-256 b0873a9fef3e4fa6f462ab85525bb8bcf8dd0d96292a8eb8b9aa59d83570146d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: smol-0.0.4-cp38-cp38-win32.whl
  • Upload date:
  • Size: 174.9 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.4-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 89eb6c90ee65e21da222b4f65675c4dd0d22172743c1f3e921a386d7ae2660d7
MD5 c229840dbb2bf5b73ef2361944aae477
BLAKE2b-256 b6f67c60aea9af53215b9a52376823b63104046480685c67cffbe831b83b8e70

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 0d2f238c9335ebc71e05ed41e8ded5e6d083c79db0aa59d7ecd4eb3e9ba793ad
MD5 152500f78d3ace1b43cbdfb7f22e8fa0
BLAKE2b-256 88edd03bc5611cbf37cc5450bf90fa2396799502b9fbb5edf6cf0cd1c88c3c63

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 46d054e70de22a8383127eadafcd656b89bc3bd4e23c5fda7a59072ef94773d9
MD5 4cff98031148a676cfcf29b9c1041fa0
BLAKE2b-256 998482eda38cb1842ca46fd1894fce9b06c4db856e851f1c9589fea112e5680e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6f294b9a8418f8daa75a164af440369998ff0518c4ffde450e2a9b504ec84bf8
MD5 dae947849bf1c5cd02961dd2d6d254f9
BLAKE2b-256 c056e95ebe8f490dfb07e12fbff8e23490bf1f94167e55af3f8b0605072b3e10

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 d96362c05587c3eb6d9fd578ad42d517e6ea4ca0c665ea7e0ec29c10df896840
MD5 55b6b72726e74b2a0cd21b37495e3d21
BLAKE2b-256 3dc89f1db8e4cd8dbc2c473aa2ead4bf3ae54bdb587ed68ad762615262e0e5f9

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for smol-0.0.4-cp38-cp38-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 e8f5f71cc5411ddff770e80d1e6e4e72d165b94cbf2689e510eef6ca5a3c81dc
MD5 9f3ba0d9750bcd218bc38e96dd878864
BLAKE2b-256 f8e4f74fc69066baa6ce8738f14814c7900fae87d874619b0a30f7dc7b55008a

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