This release is a pre-release and may not be stable for production use.
GenIce3
A Swiss army knife to generate hydrogen-disordered ice structures.
Quick start: Use the unit cell name as the first argument (e.g. 1h for Ice Ih, 4 for Ice IV): genice3 1h > ice.gro
Version 3.0b6
For usage, ice structures, output formats, water models, guest molecules, and the full manual, see the documentation.
New in GenIce3
- Command line
- Option syntax is unified; hierarchical options and YAML config files (
-Y/--config) replace many GenIce2-style flags. - Polarization control uses
pol_loop_1andpol_loop_2(replacingdepol_loop). - Package and entry points are
genice3(PyPI:genice3); plugin groups use thegenice3.*namespaces.
- Option syntax is unified; hierarchical options and YAML config files (
- API
- Python API redesigned around
GenIce3andDependencyEngine: specify what you need and dependent quantities recompute automatically. - Embed protonic defects (H₃O⁺, OH⁻) and Bjerrum topological defects from Python (see the API examples in the manual).
- Setter-style configuration and expanded notebooks/examples (
API.ipynb,examples/api/).
- Python API redesigned around
- Algorithm and core
- Ice-rule and depolarization logic delegated to genice-core (≥1.6.0); GenIce3 focuses on unit cells, guests, ions, and exporters.
- Reactive pipeline:
@reactiveproperties and explicit dependency tracking replace ad-hoc recalculation.
- Unit cells and structures
- Lattice plugins moved to
genice3.unitcell; many GenIce2 structures ported with identity comparison tests. - CIF-derived unit cells branch on whether hydrogen positions are supplied;
partial_orderremoved. - New or updated structures include auxiliary ices,
YKD,ice21(and aliases), and cylindrical prism ice (API).
- Lattice plugins moved to
- Clathrates, ions, and defects
- Cage assessment: GenIce2's
--assess_cagesremoved — use exportercage_survey(JSON). Default max cage ring count is 16 (override via exporter options). - Spot ions use
-A/-C(spot anion/cation; not the old cage-assessment flag). Group guests and spot-cation cage reporting extended; unit-cell ion suboptions (e.g.--group) in YAML.
- Cage assessment: GenIce2's
- Exporters and visualization
- Built-in and plugin exporters (GROMACS, CIF, LAMMPS, yaplot, plotly, py3Dmol, etc.); format functions and option parsing refined.
- Optional Web API (
genice3-web) with client examples and tests.
- Documentation and tooling
- Manual on GitHub Pages; plugin tables and citations generated from the repo (
make docs,make README.md). - For a narrative of the GenIce3 development period and compatibility notes, see RELEASE_NOTE.md in the repository.
- Manual on GitHub Pages; plugin tables and citations generated from the repo (
Example — cage survey (formerly --assess_cages):
genice3 CS2 -e cage_survey > cages.json
Demo
Try GenIce3 on Google Colaboratory.
Requirements
- networkx >=2.0.dev20160901144005
- numpy >=2.0
- pairlist >=1.0.0
- cycless >=0.7
- graphstat >=0.3.3
- yaplotlib >=0.1.2
- openpyscad >=0.5.0
- pyyaml >=6.0
- jinja2 >=3.1.4
- cif2ice (>=0.4.1,<0.5.0)
- genice-core (>=1.6.0,<2.0.0)
- fastapi (>=0.135.3,<0.136.0)
- uvicorn (>=0.44.0,<0.45.0)
Installation
GenIce3 is on PyPI. Install with pip:
pip install genice3
Uninstallation
pip uninstall genice3
References
See the manual → References for the full reference list (generated from citations.yaml).
Citation
If you use GenIce in your work, please cite as in CITATION.cff or:
M. Matsumoto, T. Yagasaki, and H. Tanaka, "GenIce: Hydrogen-Disordered Ice Generator", J. Comput. Chem. 39, 61-64 (2017). DOI: 10.1002/jcc.25077
M. Matsumoto, T. Yagasaki, and H. Tanaka, "GenIce-core: Efficient algorithm for generation of hydrogen-disordered ice structures.", J. Chem. Phys. 160, 094101 (2024). DOI:10.1063/5.0198056
How to contribute
GenIce is developed on GitHub (https://github.com/genice-dev/GenIce3). Feedback, bug fixes, and contributions are welcome.
License
MIT License. See LICENSE for details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file genice3-3.0b6.tar.gz.
File metadata
- Download URL: genice3-3.0b6.tar.gz
- Upload date:
- Size: 580.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
poetry/2.3.2 CPython/3.14.3 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6925bc5e52b1a8fd2cb92ccfc0d860f37f229d0eb89cf16f700955d6084a36f1
|
|
| MD5 |
42a931d50fe0adb8bd522d8337825dc0
|
|
| BLAKE2b-256 |
050eefad6bf9052f44c9f80ded8eed65a8c983a6353eda5cc05633abb792a19f
|
File details
Details for the file genice3-3.0b6-py3-none-any.whl.
File metadata
- Download URL: genice3-3.0b6-py3-none-any.whl
- Upload date:
- Size: 742.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via:
poetry/2.3.2 CPython/3.14.3 Darwin/24.6.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9d1d5dc0a0d61438b6004c180311384782bccb345402832402e7b76ac3b0e444
|
|
| MD5 |
18734b434b5ddd30741625692616884d
|
|
| BLAKE2b-256 |
332f8a3e7c979d99721d6952e26c16b45df5140a76f196d4ab1068e0276fb54a
|