{"id":21913061,"url":"https://github.com/jcwang587/xdatbus","last_synced_at":"2025-04-16T06:40:49.144Z","repository":{"id":76517964,"uuid":"599499649","full_name":"jcwang587/xdatbus","owner":"jcwang587","description":"A Python package for enhancing VASP AIMD simulations and analysis","archived":false,"fork":false,"pushed_at":"2025-04-05T00:37:13.000Z","size":43991,"stargazers_count":12,"open_issues_count":2,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T01:25:27.324Z","etag":null,"topics":["aimd","metadynamics","python","vasp"],"latest_commit_sha":null,"homepage":"https://xdatbus.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jcwang587.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-02-09T09:13:29.000Z","updated_at":"2025-04-05T00:35:58.000Z","dependencies_parsed_at":"2023-12-19T07:54:42.177Z","dependency_job_id":"e0eba458-f4e4-40e1-834c-f7b8a1634a48","html_url":"https://github.com/jcwang587/xdatbus","commit_stats":null,"previous_names":[],"tags_count":204,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcwang587%2Fxdatbus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcwang587%2Fxdatbus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcwang587%2Fxdatbus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jcwang587%2Fxdatbus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jcwang587","download_url":"https://codeload.github.com/jcwang587/xdatbus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249209294,"owners_count":21230468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aimd","metadynamics","python","vasp"],"created_at":"2024-11-28T18:14:22.223Z","updated_at":"2025-04-16T06:40:49.137Z","avatar_url":"https://github.com/jcwang587.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\n\u003cp class=\"center-content\"\u003e \n  \u003cimg src=\"https://raw.githubusercontent.com/jcwang587/xdatbus/main/docs/logo.png\" alt=\"\"/\u003e\n\u003c/p\u003e\n--\u003e\n\n# xdatbus 🚌\n\n[![Build](https://github.com/jcwang587/xdatbus/actions/workflows/build.yml/badge.svg)](https://github.com/jcwang587/xdatbus/actions/workflows/build.yml)\n[![Release](https://img.shields.io/github/v/release/jcwang587/xdatbus)](https://github.com/jcwang587/xdatbus/releases)\n  [![PyPI Downloads](https://static.pepy.tech/badge/xdatbus)](https://pepy.tech/projects/xdatbus)\n[![codecov](https://codecov.io/gh/jcwang587/xdatbus/branch/main/graph/badge.svg?token=V27VIJZDAE)](https://codecov.io/gh/jcwang587/xdatbus)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n\nXdatbus is a Python package designed specifically for Vienna Ab-initio Simulation Package (VASP) users conducting\nab-initio molecular dynamics (AIMD) simulations, as well as biased MD simulations. The name of the package is derived \nfrom the MD trajectory file (XDATCAR) generated by VASP. The documentation for \nthe package can be accessed [here](https://xdatbus.readthedocs.io/en/latest/), and a collection of \nJupyter Notebook [tutorial](https://github.com/jcwang587/xdatbus/tree/main/examples) is also available.\n\n## Installation\n\nMake sure you have a Python interpreter, preferably version 3.10 or higher. Then, you can simply install xdatbus from\nPyPI using `pip`:\n\n```bash\npip install xdatbus\n```\n\nIf you'd like to use the latest unreleased version on the main branch, you can install it directly from GitHub:\n\n```bash\npip install git+https://github.com/jcwang587/xdatbus\n```\n\nThe package is also available from conda-based installation. It is generally recommended you first create a separate\nenvironment, then you can install via the xdatbus channel on Anaconda cloud:\n\n```bash\nconda install --channel xdatbus xdatbus\n```\n\nIf you plan to use PLUMED to analyze enhanced sampling AIMD results, you can also install the conda version of PLUMED\ntogether:\n\n```bash\nconda install -c xdatbus -c conda-forge xdatbus plumed\n```\n\n## Get Started\n\nThis is a brief example demonstrating how to use the basic function of xdatbus to aggregate multiple xdatcar files into\na single file and unwrap the coordinates into an `.xyz` file.\n\nAs is often the case when you have submitted a continuous AIMD job, it is likely that you would have subfolders for each \nsubmission. `XDATCAR` files can be first gathered in a separate directory by:\n\n```bash\n$ mkdir xdc_files \u0026\u0026 for i in {01..10}; do cp RUN$i/XDATCAR xdc_files/XDATCAR_$i; done\n```\n\nThen, try aggregating and unwrapping the coordinate data from the `XDATCAR` files:\n\n```python\nimport os\nfrom xdatbus import xdc_aggregate, xdc_unwrap\n\nxdc_dir = \"./xdc_files\"\nxdb_dir = os.path.dirname(xdc_dir)\nxdb_path = os.path.join(xdb_dir, \"XDATBUS\")\nxyz_path = os.path.join(xdb_dir, \"XDATBUS_unwrap.xyz\")\n\nxdc_aggregate(xdc_dir=xdc_dir, output_dir=xdb_dir)\nxdc_unwrap(xdc_path=xdb_path, output_path=xyz_path)\n```\n\nThere are also entry points included with the installation for the Command Line Interface (CLI) to perform similar\ntasks:\n\n```bash\n$ xdc_aggregate --xdc_dir ./xdc_files --output_dir ./\n```\n\n```bash\n$ xdc_unwrap --xdc_path ./XDATBUS --output_path ./XDATBUS_unwrap.xyz\n```\n\n## Visualization\n\n[![Powered by MolecularNodes](https://img.shields.io/badge/powered%20by-MolecularNodes-blue.svg)](https://github.com/BradyAJohnston/MolecularNodes)\n[![Powered by bpy](https://img.shields.io/badge/powered%20by-bpy-blue.svg)](https://docs.blender.org/api/current/)\n\nThis is testing functionality for visualizing the molecular dynamics trajectory with Blender. There is a strict Python version required for compatibility with Blender. Please check the compatible version of Python for `bpy` to ensure there are no conflicts in your environment.\n\n```bash\npip install molecularnodes bpy\n```\n\n## Major Changelog\n`0.3.8` Added functions for locating minima and running NEB in a 2D FES.\n\n`0.2.5` Enabled a command-line interface that runs through the `rich` package.\n\n`0.2.0` Added a function to generate [extxyz](https://github.com/libAtoms/extxyz) data for training machine learning interatomic potentials.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcwang587%2Fxdatbus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcwang587%2Fxdatbus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcwang587%2Fxdatbus/lists"}