# ICT-CSP An open-source Python framework that integrates machine learning interatomic potentials (MLIPs) with a tailored batched optimization strategy, enabling rapid, unbiased structure prediction across the full density range. ## Installation (Hygon DCU) ### 1. Clone the repository ```sh git clone -b public git@gitee.com:nivren/ict-csp.git cd ict-csp ``` ### 2. Configure local torch & triton wheels Edit `pyproject.toml` — replace the paths under `[tool.uv.sources]` for `torch` and `triton` with the local `.whl` file paths for your DCU platform. ### 3. Fetch third-party submodules ```sh git submodule update --init \ batchASE \ 3rdparty/mace \ 3rdparty/FastEq \ 3rdparty/cuequivariance_torch ``` ### 4. Set up build dependencies ```sh source /opt/dtk/env.sh sudo apt install python3.10-dev python3-dev sudo apt install libgflags-dev libgoogle-glog-dev sudo apt install build-essential libstdc++-12-dev sudo ln -s /usr/lib/x86_64-linux-gnu/librt.so.1 /usr/lib/x86_64-linux-gnu/librt.so ``` ### 5. Create the virtual environment > **Prerequisite:** This project uses [uv](https://docs.astral.sh/uv/) for Python > environment management. Install it first if you haven't: > ```sh > curl -LsSf https://astral.sh/uv/install.sh | sh > ``` ```sh uv sync ``` ### 6. Verify the installation ```sh uv run python -c "import torch, ase, mace, fasteq; print('ok')" ``` ### 7. Prepare MACE model weights Ensure `~/.cache/mace/` contains the required weight file (e.g. `MACE-OFF23_small.model`). Download from: - - ### 8. Set up a test run directory ```sh mkdir run && cp example/* run/ ``` ### 9. Test crystal structure generation ```sh source .venv/bin activate ./run/generation.sh ``` ### 10. Test crystal structure relaxation ```sh source .venv/bin/activate ./run/relaxation.sh ``` ## Results & Configuration - **Results** are written to the `csp_results/` directory. - **Configuration files** for generation and relaxation are located in the `run/` directory. ## Tested Environment Hygon DCU · BW200 · DTK 25.04.1