ضبط مجال قوة التعلم الآلي VASP
حزمة محاكاة فيينا Ab initio (VASP:دليل VASP – ويكي VASP ) هو برنامج كمبيوتر للنمذجة المادية على المستوى الذري من المبادئ الأولى، مثل حسابات البنية الإلكترونية وديناميكيات الجزيئات الميكانيكية الكمومية.
مجال قوة التعلم الآليالفئة: حقول القوة المتعلمة آليًا – ويكي VASP) يمكن استخدامها بالتزامن مع ديناميكيات الجزيئات الأساسية (MD) لالتقاط الآليات الفيزيائية الأساسية من المبادئ الأولى مع تمكين عمليات المحاكاة الطويلة بتكلفة حسابية منخفضة نسبيًا. عادةً ما تكون خطوة واحدة من ديناميكيات الجزيئات الأساسية مكلفة حسابيًا بسبب الحاجة إلى المعالجة الميكانيكية الكمومية للإلكترونات، كما هو الحال في إطار نظرية الكثافة الوظيفية (DFT). في حسابات ديناميكيات الجزيئات الكلاسيكية بالكامل، تُستخدم حقول القوة بدلاً من DFT لحساب القوى المؤثرة على كل ذرة. تستند هذه الإمكانات بين الذرات تقليديًا إلى الملاحظات التجريبية وتدمج القوى المعروفة (مثل قوى فان دير فالس وتفاعلات الشحنة الكهروستاتيكية وما إلى ذلك) من خلال الطرق التجريبية. لذلك، تعتمد جودة مجال القوة على درجة معرفة التفاعلات في نظام معين. يوفر VASP حقول قوة التعلم الآلي في الوقت الفعلي لمعالجة المسألتين المذكورتين أعلاه.
محتوى البرنامج التعليمي
في هذا البرنامج التعليمي، سنُولّد سلسلة من أطياف الفونون المتوافقة من خلال تغيير مُعاملات التعلم الآلي الفائقة باستمرار، وسنحصل على ملفات مُعاملات مجال القوة الأمثل المُتوافقة. من خلال هذا البرنامج التعليمي، ستفهم مُعاملات التعلم الآلي الفائقة التالية لـ VASP:
وضع اختيار الوزن ML_IWEIGHT #
معامل الوزن ML_WTSIF #
ML_WTOTEN # معامل وزن الطاقة الكلية
ML_WIFOR # معامل وزن القوة
دقة خطوة التركيب ML_SIGW0 #
ML_RCUT1 # مسافة القطع الشعاعية
ML_RCUT2 # مسافة قطع الزاوية
دقة تركيب ML_EPS_LOW #
ومن خلال ضبط المعلمات بشكل مناسب، سنحصل في النهاية على نتائج متطابقة تقريبًا مع نتائج DFT.

ملف الإدخال
├── dft_phonon
│ ├── band.yaml (طيف الفونون المرجعي DFT)
├── ml_phonon (مجلد حساب طيف الفونون للتعلم الآلي)
├── إعادة التجهيز (ضبط المجلد بدقة)
│ ├── إنكار
│ ├── نقاط الكيبوينتس
│ ├── ML_AB
│ ├── بوسكار
│ ├── بوتكار
│ ├── clean.sh
│ └── run.sh
├── t.py
يركز هذا البرنامج التعليمي فقط على ملفات الإدخال الموجودة في المجلد ~/refit
تشغيل.sh
#进行机器学习拟合
mpirun -n 1 vasp_std
#将力场参数文件转移到声子计算文件夹中
cp ML_FFN ../ml_phonon/ml/ML_FF
#进行声子机器学习计算
cd ../ml_phonon/
chmod 777 *.sh
./run.sh
cd ../
#绘制对比图
python t.py
إعداد تركيب التعلم الآلي INCAR
SYSTEM = Si
IVDW = 11 #范德华力
ISMEAR = 0 #费米展宽
SIGMA = 0.02 #展宽
LWAVE = F #不保留波函数
LCHARG = F #不保留电荷
IBRION = 0 #MD (treat ionic degrees of freedom)
NSW = 1 #机器学习需要设置成 1
POTIM = 1 #MD time step in fs
ISIF = 3 #
# 机器学习
ML_LMLFF = T #启用机器学习力场
ML_ISTART = 3 #重新拟合模式(微调模式)
ML_IWEIGHT = 3 #权重选取模式
ML_WTSIF = 1 #权重系数
ML_WTOTEN = 1 #总能权重系数
ML_WIFOR = 1 #力权重系数
ML_SIGW0 = 1E-20 #拟合步长精度
ML_RCUT1 = 8. #径向截断距离
ML_RCUT2 = 6. #夹角截断距离
ML_EPS_LOW = 1E-20 #拟合精度
ML_MB = 5000 #运行内存设置
KPOINTS (لا يتم استخدامها عند تمكين التعلم الآلي، فقط قم بتعيين نقطة واحدة)
K-Spacing Value to Generate K-Mesh: 0.040
0
Gamma
4 4 4
0.0 0.0 0.0
بوسكار
لمعرفة حجم الخلية العملاقة لتدريب التعلم الآلي، يرجى الرجوع إلى البرنامج التعليمي:استخدام VASP لتدريب مجال قوة التعلم الآلي
بوتكار
التركيبة الكاذبة المحتملة للعناصر المقابلة للنظام، هنا هي الكاذبة المحتملة للسيليكون
ML_AB
هذه هي بيانات الديناميكية الجزيئية للنظام المحسوب مسبقًا. للاطلاع على عملية التدريب المحددة، يُرجى مراجعة البرنامج التعليمي:استخدام VASP لتدريب مجال قوة التعلم الآلي، ثم قم بإعادة تسمية ML_ABN إلى ML_AB، حيث تم إعداد بيانات الديناميكيات الجزيئية للسيليكون مسبقًا.
ابدء
1. استنساخ الحاوية
ابحث عن دليل عمل البرنامج التعليمي واستنسخ الحاوية
2. إعداد الحاوية
حدد 4090 — الدفع حسب الاستخدام — vasp 6.3.0-cuda11.8 — مساحة العمل

بعد التحميل، افتح مساحة العمل

افتح المحطة الطرفية

أدخل مجلد التعديل
cd refit
قم بتحميل جهد السيليكون الكاذب المُجهز، هنا يمكنك استخدام "مثال للموقع الرسمي"POTCAR الكاذب المحتمل في هذه الورقة."
ضع POTCAR في الدليل وانسخه إلى ml_phonon/ml
cp POTCAR ../ml_phonon/ml/

3. قم بتثبيت بيئة phonopy
conda install -c conda-forge phonopy
ثم أدخل y واضغط على Enter للموافقة على التثبيت

4. قم بتشغيل البرنامج النصي
chmod 777 *.sh
./run.sh
5. ضبط المعلمات بدقة
عرض الملف ml.png

ارجع إلى مجلد التعديل، وقم بتغيير وضع الوزن إلى ML_IWEIGHT = 2، ثم قم بتشغيل البرنامج النصي مرة أخرى لرؤية النتائج.

يمكنك أن ترى أن النتائج أسوأ. ارجع إلى وضع الوزن ML_IWEIGHT = 1 ولاحظ النتائج مرة أخرى.

تُظهر مقارنة شاملة أن نتائج الخيارين 1 و3 متشابهة، بل إن الخيار 1 يتميز بتفاصيل أفضل (دعم بصري). بعد ذلك، سنجري تحسينات بشرط أن يكون ML_IWEIGHT = 1.
نحاول زيادة دقة القوة المجهزة وحدها، عن طريق جعل ML_WIFOR أصغر.

وجدنا أن التغيير ليس كبيرا، مما يشير إلى أنه ينبغي لنا أن نحاول زيادة مسافة القطع للسماح بمساحة أكبر للتجهيز.

كما ترى، النتيجة أسوأ (دعم بصري)، مما يعني أن مساحة المعلمات كبيرة جدًا، والنقطة القصوى التي تم العثور عليها ليست النقطة الدنيا. يجب تقليل مسافة القطع.

بعد تغيير المعلمات وإعادة التشغيل، حصلنا أخيرًا على معلمات مجال قوة التعلم الآلي التي يمكنها توليد نفس طيف الفونون مثل DFT.