An open API service indexing awesome lists of open source software.

https://github.com/dgehringer/sqsgenerator

A tool for finding optimized SQS structures tool written in C++
https://github.com/dgehringer/sqsgenerator

alloy materials-science mpi openmp python3 random

Last synced: 3 months ago
JSON representation

A tool for finding optimized SQS structures tool written in C++

Awesome Lists containing this project

README

          

![plats](https://anaconda.org/conda-forge/sqsgenerator/badges/platforms.svg)
![downloads](
https://anaconda.org/conda-forge/sqsgenerator/badges/downloads.svg)
[![Documentation Status](https://readthedocs.org/projects/sqsgenerator/badge/?version=latest)](https://sqsgenerator.readthedocs.io/en/latest/?badge=latest)


sqsgenerator-logo



WebAssembly icon Web Application

๐Ÿ“ docs

---

**sqsgenerator** is a Python package, which allows you to efficiently generate optimised *Special-Quasirandom-Structures* (SQS). The package uses *Warren-Cowley Short-Range-Order* (SRO) parameters to quantify randomness. The core routines are written in C++ and directly usable with your browser

> [!TIP]
> **sqsgenerator** runs natively (multithreaded) in your browser using WebAssembly. No installation is required, just open the [๐Ÿš€WebApp](https://sqsgen.gehringer.tech) and start using it.




Your browser does not support the video tag.

> [!IMPORTANT]
> Version 0.4 brings breaking changes. Most of the parameter remain the same, but some have been renamed or removed. Please refer to the [documentation](https://sqsgenerator.readthedocs.io/en/latest) for more details or open an issue in case you need help migrating your scripts.

## Highlights

- ๐Ÿš€ Blazingly fast short-range-order calculations (C++ core)
- โžฐ Monte-Carlo and systematic approach to compute optimal atomic configuration
- ๐Ÿงตmultithreaded by default (optional MPI support) also in the browser ๐ŸŒ
- ๐Ÿ”€ optimize multiple sublattices simultaneously in a single run
- ๐Ÿ”Œ easy integration with other frameworks ([*ase*](https://wiki.fysik.dtu.dk/ase/),
[*pymatgen*](https://pymatgen.org/) and [*pyiron*](https://pyiron.org/))

## Installation

### start directly

Start directly in your browser without any installation at ๐ŸŒ [**sqsgen.gehringer.tech**](https://sqsgen.gehringer.tech).

You can preview the results, download single files or the entire optimization for further analysis on your local machine.
The WebAssembly powered application is multithreaded and runs completely in your at near native speed.

### via `pip`

You can install the latest release of *sqsgenerator* from [PyPI](https://pypi.org/project/sqsgenerator/) using `pip`:

```bash
pip install sqsgenerator
```

### using conda
The easiest way to install *sqsgenerator* is to use conda package manager. *sqsgenerator* is deployed on the
*conda-forge* channel. To install use:

```bash
conda install -c conda-forge sqsgenerator
```

### Native application (MPI)

Since version 0.4 a native application is available, which can be used in HPC environments. The application is MPI enabled and can be built from source. Please refer to the [installation instructions](https://sqsgenerator.readthedocs.io/en/latest/installation.html#native-application) for more details.

### Cite us
In case you use the software in your research, please cite our [article](https://doi.org/10.1016/j.cpc.2023.108664). Here is the [BibTeX entry](citation.bib).

## Documentation

- You can find the online documentation [here](https://sqsgenerator.readthedocs.io/en/latest/)
- Learn how to [get started](https://sqsgenerator.readthedocs.io/en/latest/how_to.html)!
- For a more in-depth insight, you can read our [research article](https://doi.org/10.1016/j.cpc.2023.108664)