Skip to content

Repository files navigation

ZeoGen - 沸石结构生成器

项目简介

ZeoGen是一个先进的计算工具,用于生成沸石分子筛结构。本项目包含多个版本的沸石生成算法,从基础的傅里叶曲面生成到高级的双重排斥力场优化。

版本说明

v7.1 (Dual Repulsion Edition)

  • 双重排斥力场实现
  • 物种特异性截断距离
  • 务实的边数平衡策略

v8.0 (Refactored Object-Oriented Edition)

  • 完全面向对象的重构版本
  • 参数与计算分离
  • 模块化设计,易于扩展和维护
  • 支持多种配置方式

核心特性

  • 🔬 科学准确:基于真实的物理力场
  • 🎛️ 高度可配置:支持多种参数调节
  • 🏗️ 模块化设计:易于扩展和定制
  • 📊 多种拓扑:支持P、D、G、I-WP、Neovius等TPMS结构
  • 高效优化:使用FIRE优化器进行几何优化

快速开始

使用默认配置

from zeogen_v8_refactored import ZeoliteGeneratorFactory

generator = ZeoliteGeneratorFactory.create_default_generator()
atoms, message = generator.generate(0)

if atoms:
    atoms.write("zeolite.cif")
    print(f"生成成功: {message}")

自定义配置

from zeogen_v8_refactored import ZeoliteGenerationConfig, ZeoliteGenerator

config = ZeoliteGenerationConfig()
config.structure.density_range = (20.0, 40.0)  # 大孔道结构
generator = ZeoliteGenerator(config)

文件结构

├── zeogen_new2.py                 # v7.1 原始版本
├── zeogen_v8_refactored.py        # v8.0 重构版本
├── zeogen_v8_examples.py          # 使用示例
├── zeogen_new2_documentation.md   # 英文文档
├── zeogen_new2_中文文档.md         # 中文详细文档
├── zeogen_v8_重构说明.md           # 重构说明文档
└── *.cif                          # 生成的沸石结构文件

依赖库

  • numpy
  • scipy
  • ase (Atomic Simulation Environment)
  • random (Python标准库)
  • collections (Python标准库)

参数配置指南

结构大小控制

  • base_length_range: 晶胞基础边长范围
  • density_range: 原子密度范围
  • anisotropy_range: 各向异性程度

拓扑控制

  • weight_sampling_mode: 权重采样模式
  • weight_alpha: Dirichlet分布参数
  • threshold_range: 等值面阈值范围

力场参数

  • si_o_bond_length: Si-O键长目标
  • repulsion_force_constant: 排斥力强度
  • si_si_cutoff: Si-Si截断距离

使用示例

查看 zeogen_v8_examples.py 获取7个详细的使用示例:

  1. 默认配置生成
  2. 自定义参数配置
  3. 预设生成器使用
  4. 参数研究
  5. 拓扑结构对比
  6. 批量生成
  7. 高级自定义

贡献指南

欢迎提交Issue和Pull Request来改进这个项目!

许可证

请查看项目许可证文件。

联系方式

如有问题或建议,请通过GitHub Issues联系。

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages