Skip to main content

Atomistic Reverse Monte-Carlo

PyPI Version PyPI Downloads

OVITO Python modifier to generate bulk crystal structures with target Warren-Cowley parameters.

Usage

Here's an example on how to use the code to create the fcc_wc.dump file which has Warren-Cowley parameters that falls within a 1% difference of the targeted ones:

from ovito.io import export_file, import_file

from AtomisticReverseMonteCarlo import AtomisticReverseMonteCarlo

mod = AtomisticReverseMonteCarlo(
    nneigh=12,                                                          # number of neighbors to compute WC parameters (12 1NN in fcc)
    T=1e-9,                                                             # rMC temperature
    target_wc=[                                                         # wc target 1-pij/cj
        [0.32719603, -0.19925471, -0.12794131],
        [-0.19925471, 0.06350427, 0.13575045],
        [-0.12794131, 0.13575045, -0.00762235],
    ],
    tol_percent_diff=[                                                  # max percent tolerence allowed before stopping
        [1, 1, 1],
        [1, 1, 1],
        [1, 1, 1],
    ],                          
    save_rate=1000,                                                    # save rate
    seed=123,
    max_iter=None,                                                     # infinity number of iterations
)

# Load the intial snapshot 
pipeline = import_file("fcc_random.dump")
pipeline.modifiers.append(mod)
data = pipeline.compute()

# Load data of the last trajectory
data = pipeline.compute(-1)
print(f'Target Warren-Cowley parameters: \n {data.attributes["Target Warren-Cowley parameters"]}')
print(f'Warren-Cowley parameters: \n {data.attributes["Warren-Cowley parameters"]}')
print(f'Warren-Cowley Percent error: \n {data.attributes["Warren-Cowley percent error"]}')

export_file(
    data,
    "fcc_wc.dump",
    "lammps/dump",
    columns=[
        "Particle Identifier",
        "Particle Type",
        "Position.X",
        "Position.Y",
        "Position.Z",
    ],
)

The script can be found in the examples directory.

Installation

For a standalone Python package or Conda environment, please use:

pip install --user AtomisticReverseMonteCarlo

For OVITO PRO built-in Python interpreter, please use:

ovitos -m pip install --user AtomisticReverseMonteCarlo

If you want to install the lastest git commit, please replace AtomisticReverseMonteCarlo with git+https://github.com/killiansheriff/AtomisticReverseMonteCarlo.

Contact

If any questions, feel free to contact me (ksheriff at mit dot edu).

References & Citing

If you use this repository in your work, please cite bibtex entry to follow.

Metadata

Release files for AtomisticReverseMonteCarlo 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for AtomisticReverseMonteCarlo 0.0.3
File Size Uploaded
AtomisticReverseMonteCarlo-0.0.3.tar.gz 5.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for AtomisticReverseMonteCarlo 0.0.3
File Interpreter ABI Platform
AtomisticReverseMonteCarlo-0.0.3-py3-none-any.whl Python 3 none any Details

Total release size: 12.1 kB

Release files / AtomisticReverseMonteCarlo-0.0.3.tar.gz

Download URL AtomisticReverseMonteCarlo-0.0.3.tar.gz
Size 5.9 kB
Tags Source
SHA-256 checksum
How to use checksums
8d9d78f50b673e9756b3c5d87db98685c2325066175893810cdec11acb2383dd
BLAKE2b-256 checksum
How to use checksums
b2d11589b29d23ede4732e848e6b69da4354ace19fe7d289b027efcb4be9f4ed
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Release files / AtomisticReverseMonteCarlo-0.0.3-py3-none-any.whl

Download URL AtomisticReverseMonteCarlo-0.0.3-py3-none-any.whl
Size 6.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7f03c8e058c89c50fe61df8fd0a15fa8398be631b5932a1e5eaa8ade6cb7cb10
BLAKE2b-256 checksum
How to use checksums
8744d9ebd37fb1d82e47415bc9293813a123b88bb5d244adf68b10e51298a808
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.9.17

Release history Release notifications | RSS feed

This release

0.0.3 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page