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-0.7.0-cp312-abi3-win_amd64.whl (4.6 MB view details)

Uploaded CPython 3.12+Windows x86-64

molcrafts_molrs-0.7.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB view details)

Uploaded CPython 3.12+manylinux: glibc 2.17+ x86-64

molcrafts_molrs-0.7.0-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-0.7.0-cp312-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for molcrafts_molrs-0.7.0-cp312-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 8c52eeafef7495666e21d68ea53f4421fef11864136a67b488b98918dbe72a73
MD5 2f047146cb6c234bf4f4cfaa87fc7b10
BLAKE2b-256 30e1c27e857f9de49e57cb1c3e3fec597f811dabace675381837b8f6d41ee7c3

See more details on using hashes here.

Provenance

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

Publisher: publish.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-0.7.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for molcrafts_molrs-0.7.0-cp312-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d3582f59fdfa446c9776c8b8a1807312e61db9edaf3bb9c02cab9e8c6f428255
MD5 50428342d5c01423db511433bf7e4191
BLAKE2b-256 baa2264b82deeedbf2dd4b14e68f534f94a358479a29ca52e9b05765c1b13b29

See more details on using hashes here.

Provenance

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

Publisher: publish.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-0.7.0-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for molcrafts_molrs-0.7.0-cp312-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 c2d43c26fbc32ce81f70122abf7ecd16495be3ff6040adbdb978e990c3f7a708
MD5 fe0391c15d08e472bd8a529888d12681
BLAKE2b-256 87b2a320903a53031b7748ce59d2f157bfb2f30706d9792b78c66197f7f8b9b6

See more details on using hashes here.

Provenance

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

Publisher: publish.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