Crystal Structure Design Software Based on Molecular/Ionic Configuration.
Project description
基于分子/离子构型的晶体结构设计软件 V2.2
项目概述
基于分子/离子构型的晶体结构设计软件通过结合经验公式、机器学习势函数微调、第一性原理分步优化和分子/离子识别技术,实现了从分子/离子构型出发的高效晶体结构设计。该软件采用模块化设计,支持全流程自动化材料筛选,在保证预测精度的同时显著提升计算效率。
功能特性
核心功能
- 双模块工作流
- EE模块:基于经验评估的离子组合生成
- CSP模块:基于离子晶体结构预测的优化筛选
- 智能任务管理
- 实时进程监控(PID跟踪)
- 日志文件自动符号链接
- 进程安全终止与资源清理
- 高级日志系统
- 分页浏览(10条/页)
- 模块过滤(CSP/EE)
- 软链接解析显示实际路径
技术特性
- 跨平台支持(Linux/Docker)
- 基于Python 3.11+的面向对象架构
- 集成psutil进程管理
- 结构化日志记录系统
安装指南
环境要求
| 组件 | 最低版本 |
|---|---|
| Python | 3.11 |
| psutil | 5.9 |
| Docker | 20.10 |
| ase | 3.23.0 |
| deepmd-kit | 3.0.1 |
| torch | 2.5.0 |
| dpdispatcher | 0.6.7 |
| numpy | 1.26.4 |
| paramiko | 3.5.1 |
| pyxtal | 1.0.4 |
| phonopy | 2.28.0 |
| rdkit | 2024.03.3 |
安装步骤
pip install ion-csp
或
# 创建虚拟环境
python -m venv venv
source venv/bin/activate # Linux/Mac
# 安装依赖
git clone https://github.com/Bagabaga007/ion_CSP.git
cd ion_CSP
pip install -e .
快速入门
交互模式
ion-csp
启动交互式命令行界面,支持以下操作:
- 模块选择
- 日志查看
- 进程管理
脚本调用
EE模块示例
./scripts/main_EE.sh examples/example_1
从SMILES表格生成离子组合
CSP模块示例
./scripts/main_CSP.sh examples/example_2
从离子组合生成并优化晶体结构
技术架构
graph TD
A[用户界面] --> B[任务管理器]
B --> C[EE模块]
B --> D[CSP模块]
B --> E[日志系统]
B --> F[任务调度]
C --> G[经验评估引擎]
D --> H[离子晶体结构预测引擎]
E --> I[结构化日志]
F --> J[进程终止]
贡献指南
- Fork仓库并创建特性分支
- 编写单元测试覆盖新功能
- 提交Pull Request时注明关联Issue
- 遵循PEP8代码规范
许可证
本项目采用MIT许可证,详见LICENSE文件。
Project Overview
This software enables efficient crystal structure design from molecular/ion configurations by integrating empirical formulas, tuned machine learning potentials, stepwise first-principles optimization, and molecular/ion recognition techniques. The modular architecture ensures extensibility and maintainability while maintaining prediction accuracy.
Key Features
Core Functionalities
- Dual-Module Workflow
- EE Module: Empirical evaluation-based ion combination generation
- CSP Module: Ion crystal structure prediction and optimization
- Intelligent Task Management
- Real-time process monitoring (PID tracking)
- Automatic log file symlink creation
- Safe process termination with resource cleanup
- Advanced Logging System
- Paginated log viewing (10 entries/page)
- Module-based filtering (CSP/EE)
- Symlink resolution for actual log paths
Technical Specifications
- Cross-platform support (Linux/Docker)
- Object-oriented architecture with Python 3.11+
- Integrated process management via psutil
- Structured logging system
Installation
Prerequisites
| Component | Min Version |
|---|---|
| Python | 3.11 |
| psutil | 5.9 |
| Docker | 20.10 |
| ase | 3.23.0 |
| deepmd-kit | 3.0.1 |
| torch | 2.5.0 |
| dpdispatcher | 0.6.7 |
| numpy | 1.26.4 |
| paramiko | 3.5.1 |
| pyxtal | 1.0.4 |
| phonopy | 2.28.0 |
| rdkit | 2024.03.3 |
Installation Steps
# Create virtual environment
python -m venv venv
source venv/bin/activate # Linux/Mac
# Install dependencies
git clone https://github.com/Bagabaga007/ion_CSP.git
cd ion_CSP
pip install -e .
Quick Start
Interactive Mode
ion-csp
Launches CLI interface with:
- Module selection
- Log management
- Process control
Script Execution
EE Module Example
./scripts/main_EE.sh examples/example_1
Generates ion combinations from SMILES tables
CSP Module Example
./scripts/main_CSP.sh examples/example_2
Optimizes crystal structures from ion combinations
Technical Architecture
graph TD
A[User Interface] --> B[Task Manager]
B --> C[EE Module]
B --> D[CSP Module]
B --> E[Log System]
B --> F[Task Scheduler]
C --> G[Empirical Evaluation Engine]
D --> H[Ionic Crystal Structure Prediction Engine]
E --> I[Structured Logs]
F --> J[Process Termination]
Contribution Guide
- Fork repository and create feature branch
- Write unit tests for new features
- Submit PR with issue reference
- Follow PEP8 coding standards
License
MIT License, see LICENSE file.
Project details
Release history Release notifications | RSS feed
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 ion_csp-2.2.6.tar.gz.
File metadata
- Download URL: ion_csp-2.2.6.tar.gz
- Upload date:
- Size: 94.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ab1a7858b18134d51911f81c99b0fdbc9bd97915e54d0e9ab3af06115275112a
|
|
| MD5 |
49d4d9818f1bb2bf280b22777f62b1ba
|
|
| BLAKE2b-256 |
8bb7a0db6edd09e3956d72ccf31d42355bc84b999304932d0a930b805f334ddc
|
File details
Details for the file ion_csp-2.2.6-py3-none-any.whl.
File metadata
- Download URL: ion_csp-2.2.6-py3-none-any.whl
- Upload date:
- Size: 47.1 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8d28b65694cb67fef4651b32c7d2546308ef7871f868e58e193c27a4ec21ee30
|
|
| MD5 |
6a9c40009bef508ad58b00787f5e7a49
|
|
| BLAKE2b-256 |
b423b8c8e7f0b903e8962f1e821178b20a1df61215d0516c3a1bf58b0ae819f3
|