Metadata-Version: 2.4
Name: pymatgen-analysis-molcrys
Version: 0.1.0
Summary: Pymatgen namespace addon for MolCrysKit molecular-crystal analysis
Author: MolCrysKit Development Team
License: MIT
Project-URL: Homepage, https://github.com/SchrodingersCattt/MolCrysKit
Project-URL: Repository, https://github.com/SchrodingersCattt/MolCrysKit
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Chemistry
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: pymatgen>=2024.1.0
Requires-Dist: molcrys-kit>=0.8.0b2
Provides-Extra: test
Requires-Dist: pytest>=6.0.0; extra == "test"
Requires-Dist: pytest-timeout>=2.0; extra == "test"

# pymatgen-analysis-molcrys

Pymatgen namespace addon that exposes [MolCrysKit](https://github.com/SchrodingersCattt/MolCrysKit)
molecular-crystal workflows under `pymatgen.analysis.molcrys`.

After installation:

```python
from pymatgen.core import Structure
from pymatgen.analysis.molcrys import TopologicalSlabGenerator, generate_topological_slab

structure = Structure.from_file("molecular_crystal.cif")
slab = generate_topological_slab(structure, (0, 0, 1), layers=3, vacuum=15.0)
# slab is a pymatgen Structure; molecules are not cut through
```

## Install

From this monorepo (development):

```bash
pip install -e .                 # molcrys-kit at repo root
pip install -e addons/pymatgen-analysis-molcrys
```

From PyPI (when published):

```bash
pip install pymatgen-analysis-molcrys
```

## Design

- This package is a thin Structure-facing facade.
- Algorithms live in `molcrys-kit`.
- Conversion uses MolCrysKit's occupancy-preserving pymatgen bridge
  (`MolecularCrystal.to_pymatgen` / `from_pymatgen`), not `AseAtomsAdaptor`
  (which rejects partially occupied structures).

## Versioning

This addon has its own semver (`0.1.0` initially) and depends on
`molcrys-kit>=0.8.0b2`. Bump the lower bound when the facade needs a newer
engine API.
