Module dcg_sci_tool.applications.sub_neb_batches

自动批量处理NEB计算文件 功能: 1. 识别符合 CO2_formation_frame<正整数>CO2<整数A>to<整数B>.xyz 格式的文件 或者r'^[0-9]+-[0-9]+[0-9].[0-9]+-?[0-9].[0-9]+[0-9]+[0-9]+.xyz$'格式的文件内 2. 为每个 <整数A>to<整数B> 创建对应的目录 3. 将XYZ文件移动到对应目录 4. 复制配置文件到每个目录 5. 提交计算作业

Functions

def create_directory_and_move_files(group_name, xyz_files, config_files)

为每个分组创建目录,移动文件,并复制配置文件

参数: group_name: 组名,如 "123to456" xyz_files: 该组的XYZ文件列表 config_files: 需要复制的配置文件列表

def get_file_groups(current_dir='.')

获取当前目录下所有符合条件的文件,并按AtoB分组

返回: dict: 键为"AtoB"字符串,值为该组文件列表

def get_required_config_files()

返回需要复制的配置文件列表

def main()

主函数

def parse_xyz_filename(filename)

解析XYZ文件名,提取整数A和整数B

参数: filename: 文件名

返回: tuple: (整数A, 整数B) 或 None(如果格式不匹配)

def submit_job(directory, job_script='run-lmps.lsf')

进入指定目录并提交作业

参数: directory: 目标目录 job_script: 作业脚本文件名