안녕하세요,
DFT 전공자이고, MD는 시작한지 별로 되지 않은 비기너입니다.
최근 SevenNet-omni 를 활용해서 WO3 표면에서 특정 가스의 sticking coefficient를 계산하는 업무를 수행하고 있습니다.
그러다가 계산값이 실제 실험에서와 차이가 있다고 판단하였고, large gas molecule의 physisorption term이 중요하다고 판단되어 D3 option을 포함하여 계산을 수행하였습니다.
문제는, MD Simulation 계산 자체는 잘 돌아가는데, minimize부터 해서 모든 계산의 energy 값이 nan으로 계산이 되고 있습니다.
D3를 켜지 않은 상태에서는 계산 자체가 잘 진행되는 것을 확인하였고,
D3를 켜기만 하면 아래와 같이 계산이 nan으로 쭉 진행이 되다가 simulation time이 되었을 때 error가 발생하면서 종료가 됩니다.
Setting up cg style minimization ...
Unit style : metal
Current step : 0
Per MPI rank memory allocation (min/avg/max) = 5.562 | 5.562 | 5.562 Mbytes
Step Temp PotEng KinEng TotEng Press Volume
0 0 inf 0 inf nan 84505.863
1 0 inf 0 inf nan 84505.863
Loop time of 0.3316 on 1 procs for 1 steps with 1317 atoms
90.1% CPU use with 1 MPI tasks x 1 OpenMP threads
Minimization stats:
Stopping criterion = linesearch alpha is zero
Energy initial, next-to-last, final =
inf inf inf
Force two-norm initial, final = nan nan
Force max component initial, final = inf inf
Final line search alpha, max atom move = 0 -nan
Iterations, force evaluations = 1 2
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0.33142 | 0.33142 | 0.33142 | 0.0 | 99.95
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 3.1681e-05 | 3.1681e-05 | 3.1681e-05 | 0.0 | 0.01
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 5.75e-06 | 5.75e-06 | 5.75e-06 | 0.0 | 0.00
Other | | 0.0001415 | | | 0.04
Nlocal: 1317 ave 1317 max 1317 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 1801 ave 1801 max 1801 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Neighs: 0 ave 0 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 0
FullNghs: 155712 ave 155712 max 155712 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Total # of neighbors = 155712
Ave neighs/atom = 118.23235
Neighbor list builds = 0
Dangerous builds = 0
Setting up Verlet run ...
Unit style : metal
Current step : 1
Time step : 0.001
Per MPI rank memory allocation (min/avg/max) = 4.437 | 4.437 | 4.437 Mbytes
Step c_relax_temp PotEng KinEng TotEng Press Volume
1 733.15 inf 123.59431 inf nan 84505.863
100 nan nan nan nan nan 84505.863
200 nan nan nan nan nan 84505.863
300 nan nan nan nan nan 84505.863
400 nan nan nan nan nan 84505.863
500 nan nan nan nan nan 84505.863
600 nan nan nan nan nan 84505.863
700 nan nan nan nan nan 84505.863
800 nan nan nan nan nan 84505.863
900 nan nan nan nan nan 84505.863
1000 nan nan nan nan nan 84505.863
1100 nan nan nan nan nan 84505.863
1200 nan nan nan nan nan 84505.863
1300 nan nan nan nan nan 84505.863
1400 nan nan nan nan nan 84505.863
1500 nan nan nan nan nan 84505.863
1600 nan nan nan nan nan 84505.863
1700 nan nan nan nan nan 84505.863
...
시스템의 크기는 총 2150 atoms이며, 5개의 원소로 구성이 되어있습니다.
potential의 경우 아래 command로 얻은 deployed_serial.pt를 사용했습니다.
sevenn get_model ./checkpoint_sevennet_omni_v0.12.0.pth --modal mpa --enable_flash
mpa 말고도 odac23로 테스트를 해보았을 때 같은 결과를 얻었습니다.
제가 MD를 수행한지 별로 되지 않은 비기너이다보니, 해당 에러가 어디에서 발생했는지 및 해결에 많은 어려움을 겪고 있습니다.
Build가 문제인 것인지, input이 문제인 것인지 알 수 없는 상황인데, 혹시 도움을 부탁드려도 될까요?
감사합니다.
** Build
https://sevennet.readthedocs.io/en/latest/user_guide/lammps_torch.html 을 참고하여 flashTP 및 GPU-D3 포함하여 빌드를 수행했습니다.
setup 환경:
module load python-3.11.8
module load cuda_12.4.0
module load nccl_2.8.4
module load cudnn-11.4-linux-x64-v8.2.4.15
module load openmpi-4.1.0-cu110-ucx1110
** Simulation input
units metal
atom_style charge
boundary p p f
read_data all.data
variable SEED equal 263926
pair_style hybrid/overlay e3gnn d3 9000 1600 damp_bj pbe
pair_coeff * * e3gnn ./deployed_serial_7net-omni-mpa-flashtp.pt W O N W Cl
pair_coeff * * d3 W O N W Cl
neighbor 2.0 bin
neigh_modify delay 0 every 1 check yes
thermo_modify lost warn
group slab type 1 2 3
group gas type 4 5
fix f1 gFixed setforce 0.0 0.0 0.0
fix f2 gTherm langevin 733.15 733.15 0.1 ${SEED}
fix f3 gMobile nve
timestep 0.001 # 1 fs
compute relax_temp gMobile temp
compute_modify relax_temp dynamic/dof yes
thermo 50
thermo_style custom step temp pe ke etotal press vol
minimize 1.0e-6 1.0e-8 1000 10000
...
안녕하세요,
DFT 전공자이고, MD는 시작한지 별로 되지 않은 비기너입니다.
최근 SevenNet-omni 를 활용해서 WO3 표면에서 특정 가스의 sticking coefficient를 계산하는 업무를 수행하고 있습니다.
그러다가 계산값이 실제 실험에서와 차이가 있다고 판단하였고, large gas molecule의 physisorption term이 중요하다고 판단되어 D3 option을 포함하여 계산을 수행하였습니다.
문제는, MD Simulation 계산 자체는 잘 돌아가는데, minimize부터 해서 모든 계산의 energy 값이 nan으로 계산이 되고 있습니다.
D3를 켜지 않은 상태에서는 계산 자체가 잘 진행되는 것을 확인하였고,
D3를 켜기만 하면 아래와 같이 계산이 nan으로 쭉 진행이 되다가 simulation time이 되었을 때 error가 발생하면서 종료가 됩니다.
...
시스템의 크기는 총 2150 atoms이며, 5개의 원소로 구성이 되어있습니다.
potential의 경우 아래 command로 얻은 deployed_serial.pt를 사용했습니다.
sevenn get_model ./checkpoint_sevennet_omni_v0.12.0.pth --modal mpa --enable_flash
mpa 말고도 odac23로 테스트를 해보았을 때 같은 결과를 얻었습니다.
제가 MD를 수행한지 별로 되지 않은 비기너이다보니, 해당 에러가 어디에서 발생했는지 및 해결에 많은 어려움을 겪고 있습니다.
Build가 문제인 것인지, input이 문제인 것인지 알 수 없는 상황인데, 혹시 도움을 부탁드려도 될까요?
감사합니다.
** Build
https://sevennet.readthedocs.io/en/latest/user_guide/lammps_torch.html 을 참고하여 flashTP 및 GPU-D3 포함하여 빌드를 수행했습니다.
setup 환경:
module load python-3.11.8
module load cuda_12.4.0
module load nccl_2.8.4
module load cudnn-11.4-linux-x64-v8.2.4.15
module load openmpi-4.1.0-cu110-ucx1110
** Simulation input
units metal
atom_style charge
boundary p p f
read_data all.data
variable SEED equal 263926
pair_style hybrid/overlay e3gnn d3 9000 1600 damp_bj pbe
pair_coeff * * e3gnn ./deployed_serial_7net-omni-mpa-flashtp.pt W O N W Cl
pair_coeff * * d3 W O N W Cl
neighbor 2.0 bin
neigh_modify delay 0 every 1 check yes
thermo_modify lost warn
group slab type 1 2 3
group gas type 4 5
fix f1 gFixed setforce 0.0 0.0 0.0
fix f2 gTherm langevin 733.15 733.15 0.1 ${SEED}
fix f3 gMobile nve
timestep 0.001 # 1 fs
compute relax_temp gMobile temp
compute_modify relax_temp dynamic/dof yes
thermo 50
thermo_style custom step temp pe ke etotal press vol
minimize 1.0e-6 1.0e-8 1000 10000
...