Skip to main content

Berni

pypi version license Binder pipeline coverage report

A database of interaction models and trajectory samples for molecular dynamics and Monte Carlo simulations. Berni can export interaction models to a range of simulation backends, such as atooms, LAMMPS, RUMD.

Quick start

Get info on the available models

import berni
for model in berni.models:
    print(f'- "{model["name"]}": {model["description"]}')
- "bernu_hiwatari_hansen_pastore": Binary soft-sphere mixture with size ratio of 1.4
- "coslovich_pastore": Short-ranged pairwise-additive model for silica
- "dellavalle_gazzillo_frattini_pastore": Binary Lennard-Jones mixture model for NiY alloys
- "gaussian_core": One-component Gaussian core model with long-range cutoff
- "grigera_cavagna_giardina_parisi": Binary soft-sphere mixture with size ratio of 1.2 and smooth cutoff
- "harmonic_spheres": Binary mixture of harmonic spheres with size ratio of 1.4
- "kob_andersen": Binary Kob-Andersen Lennard-Jones mixture
- "kob_andersen_2": Ternary Kob-Andersen Lennard-Jones mixture
- "lennard_jones": One-component Lennard-Jones model
- "roux_barrat_hansen": Binary soft-sphere mixture with size ratio of 1.2
- "roy_heyde_heuer-II": Variant of roy_heyde_heuer with optimized parameters               
- "roy_heyde_heuer": 2d model of a silica bilayer
- "wahnstrom": Binary Lennard-Jones mixture with size ratio of 1.2

Get a specific model as a dictionary in the default schema

berni.models.get("lennard_jones")

Print the qualified names of the available samples

for sample in berni.samples():
    print(sample["path"])
coslovich_pastore-488db481cdac35e599922a26129c3e35.xyz
lennard_jones-13ce47602b259f7802e89e23ffd57f19.xyz
roy_heyde_heuer-II-b8d70742799933357ea83314590d2b4d.xyz
lennard_jones-5cc3b80bc415fa5c262e83410ca65779.xyz
kob_andersen-8f4a9fe755e5c1966c10b50c9a53e6bf.xyz
bernu_hiwatari_hansen_pastore-f61d7e58b9656cf9640f6e5754441930.xyz
grigera_cavagna_giardina_parisi-0ac97fa8c69c320e48bd1fca80855e8a.xyz

Get a local copy of a Lennard-Jones fluid sample

local_file = berni.samples.get("lennard_jones-5cc3b80bc415fa5c262e83410ca65779.xyz")

The local_file can then be used to start a simulation or further analysis.

Export a model for a simulation backend

berni.models.export("kob_andersen", backend='lammps')
pair_style lj/cut 1.0
pair_coeff 1 1 1.0 1.0 2.5
pair_coeff 1 2 1.5 0.8 2.0
pair_coeff 2 2 0.5 0.88 2.2
pair_modify shift yes

Documentation

Check out the documentation for full details.

Installation

Clone the code repository and install from source

git clone https://framagit.org/coslo/berni.git
cd sample
pip install .

Install berni with pip

pip install berni

Contributing

Contributions to the project are welcome. If you wish to contribute, check out these guidelines.

Authors

Daniele Coslovich: https://www.units.it/daniele.coslovich/

Metadata

Release files for berni 0.2.1

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

Source distribution (sdist)

Source distribution for berni 0.2.1
File Size Uploaded Provenance Actions
berni-0.2.1.tar.gz 112.8 kB Without provenance Details for berni-0.2.1.tar.gz

Built distribution (wheel)

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

Total release size: 233.6 kB

Release files / berni-0.2.1.tar.gz

Download URL berni-0.2.1.tar.gz
Size 112.8 kB
Tags Source
SHA-256 checksum
How to use checksums
75fe167e7f6a5e2e9bcd5675e2ab6b4945c3d35b96c3ad0e921ce5b6d02bb829
BLAKE2b-256 checksum
How to use checksums
c231aad6df0eab18603afed0af786afedc8da3cf29b9cd553f14d52121d4ca20
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.12

Release files / berni-0.2.1-py3-none-any.whl

Download URL berni-0.2.1-py3-none-any.whl
Size 120.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
08fa8fadebfa7d420f5ddea273f79c7e02f9b9ce05a17be7e2249c7ba8decd85
BLAKE2b-256 checksum
How to use checksums
95a9d8779b3bed1a1982918680c852bb292dfd5aeb51554259ab994b20ce2326
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.10.12

Security for berni 0.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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