Skip to main content

Python bindings for molrs molecular simulation library

Project description

molcrafts-molrs

PyPI

Python bindings for the molrs molecular modeling toolkit.

This package is the first public preview of the Python API. Install with pip install molcrafts-molrs and import it as molrs.

Full documentation lives at https://molcrafts.github.io/molrs/. The Python API reference is rendered at https://molcrafts.github.io/molrs/reference/python/.

Install

pip install molcrafts-molrs

Quick start

import numpy as np
import molrs

# Parse SMILES and generate 3D coordinates
ir = molrs.parse_smiles("CCO")
mol = ir.to_atomistic()
result = molrs.generate_3d(mol, molrs.EmbedOptions(speed="fast", seed=42))
frame = result.mol.to_frame()

# Build a system from scratch
frame = molrs.Frame()
atoms = molrs.Block()
atoms.insert("x", np.array([0.0, 0.96, -0.24], dtype=np.float64))
atoms.insert("y", np.array([0.0, 0.0, 0.93], dtype=np.float64))
atoms.insert("z", np.zeros(3, dtype=np.float64))
atoms.insert("element", ["O", "H", "H"])
frame["atoms"] = atoms

Support

  • Python 3.9+
  • pip install molcrafts-molrs
  • import molrs
  • Offline API help is available with help(molrs.Frame) and related symbols

API

Data model

  • Frame — dict-like container of named Blocks + optional Box
  • Block — column store backed by numpy arrays
  • Box — simulation box with periodic boundaries

I/O

  • molrs.read_pdb(path) / molrs.read_xyz(path)Frame
  • molrs.parse_smiles(smiles)SmilesIR.to_frame()

Neighbor search and analysis

nq = molrs.NeighborQuery(box, positions, cutoff=5.0)
nlist = nq.query_self()

from molrs.compute.density import RDF
rdf = RDF(100, 5.0)
result = rdf.compute(frame, nlist)

Force field

typifier = molrs.MMFFTypifier()
potentials = typifier.build(atomistic)

Development

maturin build
pip install target/wheels/*.whl
pytest -q
Component Version
Python 3.9+
PyO3 Managed by molrs-python/Cargo.toml
maturin 1.x

License

BSD-3-Clause

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.12+Windows x86-64

molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (9.6 MB view details)

Uploaded CPython 3.12+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 f1fe59951bb772315eebbd18835d4f4ec6892af9a3266646545abf2c3b541bba
MD5 61ecea2aa62e1cd55c97adcb77ae6f37
BLAKE2b-256 73ef2c075da256a5196c0e5c551e82aef4f0a9752635b172739df9eda9fa8fec

See more details on using hashes here.

Provenance

The following attestation bundles were made for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-win_amd64.whl:

Publisher: nightly.yml on MolCrafts/molrs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 7fa42d4210c9174d61c07f42ccff610a58fde77053c9a308bed73c3d90ef6bd1
MD5 79ab8f1da6de4574433415196074746b
BLAKE2b-256 554ec366b31e35627c88f93d25a99ba044bd94f61b772c683a95bf51b7a395a9

See more details on using hashes here.

Provenance

The following attestation bundles were made for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: nightly.yml on MolCrafts/molrs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 158bfa9ca31db8f71f64a934f6aa6b9ccc9fdaf46459a3dedb5ff84156e247a4
MD5 db2a214100c87b8928af920d798b404a
BLAKE2b-256 cd8d8a25c3aab82eadc5a00f36a2d64e1f26da74a5d41738481c34aae14a1263

See more details on using hashes here.

Provenance

The following attestation bundles were made for molcrafts_molrs_nightly-0.7.0.dev202607080241-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl:

Publisher: nightly.yml on MolCrafts/molrs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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