calc—_v1
This commit is contained in:
62
main.sh
62
main.sh
@@ -1,30 +1,64 @@
|
||||
#!/bin/bash
|
||||
#修改权限
|
||||
|
||||
# =====================
|
||||
# 项目自动化筛选脚本
|
||||
# =====================
|
||||
|
||||
# 1. 初始化设置
|
||||
# 修改上一级目录权限
|
||||
chmod -R u+w ../Screen
|
||||
#启用screen环境
|
||||
|
||||
# 启用 screen 环境 (Python 3.11)
|
||||
source $(conda info --base)/etc/profile.d/conda.sh
|
||||
conda activate screen
|
||||
|
||||
# 设置当前目录为 PYTHONPATH
|
||||
cd py/
|
||||
export PYTHONPATH=$(pwd):$PYTHONPATH
|
||||
#调用预筛选
|
||||
|
||||
echo "============ Stage 1: Pre-process & Basic Screening ============"
|
||||
# 调用预筛选 (处理 input_pre 到 input)
|
||||
python pre_process.py
|
||||
#调用第一步筛选
|
||||
|
||||
# 调用第一步筛选
|
||||
# 功能:读取 CIF,进行基础检查,按阴离子分类,创建独立文件夹 (Anion/ID/ID.cif)
|
||||
python step1.py
|
||||
|
||||
#为第一步筛出的所有材料制作脚本
|
||||
# 为所有材料生成 Zeo++ 分析脚本
|
||||
# 功能:生成 analyze.sh,输出重定向至 log.txt
|
||||
python make_sh.py
|
||||
#调整环境
|
||||
|
||||
# 2. 切换环境运行 Zeo++
|
||||
echo "============ Stage 2: Zeo++ Calculations ============"
|
||||
conda deactivate
|
||||
conda activate zeo
|
||||
#运行脚本
|
||||
|
||||
# 进入数据目录执行所有生成的 shell 脚本
|
||||
cd ../data/after_step1
|
||||
source sh_all.sh
|
||||
rm sh_all.sh
|
||||
#调整conda回到screen
|
||||
if [ -f "sh_all.sh" ]; then
|
||||
source sh_all.sh
|
||||
rm sh_all.sh
|
||||
else
|
||||
echo "Error: sh_all.sh not found!"
|
||||
fi
|
||||
|
||||
# 3. 后处理与筛选 (Step 2-4)
|
||||
echo "============ Stage 3: Data Extraction & Advanced Screening ============"
|
||||
# 切回 screen 环境
|
||||
conda deactivate
|
||||
conda activate screen
|
||||
|
||||
#启用不同的python文件做分析
|
||||
cd ../../py
|
||||
python step2-5-file_process.py
|
||||
#python step6.py
|
||||
|
||||
# 提取日志数据
|
||||
# 功能:遍历所有 log.txt,提取孔径、距离等参数,生成汇总 CSV 到 ../output
|
||||
python extract_data.py
|
||||
|
||||
# 联合筛选 (Step 2, 3, 4)
|
||||
# 功能:读取 CSV,根据阈值筛选,将符合条件的材料软链接到 ../data/after_screening
|
||||
python step2_4_combined.py
|
||||
|
||||
# Step 5 (扩胞与实际检查)
|
||||
# 注意:这一步目前尚未更新适配新的软链接结构,待后续处理
|
||||
# python step5.py
|
||||
|
||||
echo "Done! Check results in ../data/after_screening"
|
||||
Reference in New Issue
Block a user