a bunch refactoring changes in the python pair style and the examples
- make all python potential classes derived from LAMMPSPairPotential which contains shared functionality. We currently don't check for supported atom types. may want to add that again later. - keep track of skipped atom types in the C++ code. - add test against units setting. must set self.units='...' in constructor - make compute_force method consistent with Pair::single() in LAMMPS and return force/r instead of force. - rename potentials.py to py_pot.py - update test runs. some small tweaks.
This commit is contained in:
@ -1,5 +1,4 @@
|
||||
LAMMPS (4 May 2017)
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
# 3d Lennard-Jones hybrid
|
||||
|
||||
@ -19,7 +18,7 @@ mass * 1.0
|
||||
velocity all create 3.0 87287
|
||||
|
||||
pair_style hybrid lj/cut 2.5 python 2.5
|
||||
pair_coeff * * python potentials.LJCutMelt lj NULL
|
||||
pair_coeff * * python py_pot.LJCutMelt lj NULL
|
||||
pair_coeff * 2 lj/cut 1.0 1.0
|
||||
|
||||
neighbor 0.3 bin
|
||||
@ -59,20 +58,20 @@ Step Temp E_pair E_mol TotEng Press
|
||||
150 1.6596605 -4.7699432 0 -2.2810749 5.7830138
|
||||
200 1.6371874 -4.7365462 0 -2.2813789 5.9246674
|
||||
250 1.6323462 -4.7292021 0 -2.2812949 5.9762238
|
||||
Loop time of 11.1422 on 4 procs for 250 steps with 4000 atoms
|
||||
Loop time of 6.01723 on 4 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 9692.888 tau/day, 22.437 timesteps/s
|
||||
35.1% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
Performance: 17948.472 tau/day, 41.547 timesteps/s
|
||||
98.2% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 10.448 | 10.772 | 10.937 | 5.9 | 96.67
|
||||
Neigh | 0.062061 | 0.062949 | 0.06439 | 0.4 | 0.56
|
||||
Comm | 0.12929 | 0.29444 | 0.61802 | 35.8 | 2.64
|
||||
Output | 0.000301 | 0.000684 | 0.001824 | 0.0 | 0.01
|
||||
Modify | 0.009803 | 0.0098622 | 0.010014 | 0.1 | 0.09
|
||||
Other | | 0.002618 | | | 0.02
|
||||
Pair | 5.1507 | 5.4989 | 5.9629 | 13.1 | 91.39
|
||||
Neigh | 0.024123 | 0.024877 | 0.025959 | 0.5 | 0.41
|
||||
Comm | 0.02258 | 0.48785 | 0.83691 | 44.1 | 8.11
|
||||
Output | 0.00039768 | 0.00045246 | 0.00052929 | 0.0 | 0.01
|
||||
Modify | 0.0036325 | 0.0037773 | 0.0038905 | 0.2 | 0.06
|
||||
Other | | 0.001357 | | | 0.02
|
||||
|
||||
Nlocal: 1000 ave 1010 max 982 min
|
||||
Histogram: 1 0 0 0 0 0 1 0 0 2
|
||||
@ -90,7 +89,6 @@ write_data hybrid.data
|
||||
write_restart hybrid.restart
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
read_restart hybrid.restart
|
||||
@ -99,7 +97,7 @@ read_restart hybrid.restart
|
||||
4000 atoms
|
||||
|
||||
pair_style hybrid lj/cut 2.5 python 2.5
|
||||
pair_coeff * * python potentials.LJCutMelt lj NULL
|
||||
pair_coeff * * python py_pot.LJCutMelt lj NULL
|
||||
pair_coeff * 2 lj/cut 1.0 1.0
|
||||
|
||||
fix 1 all nve
|
||||
@ -136,20 +134,20 @@ Step Temp E_pair E_mol TotEng Press
|
||||
400 1.6388136 -4.7387093 0 -2.2811035 5.9331084
|
||||
450 1.6431295 -4.7452215 0 -2.2811435 5.8929898
|
||||
500 1.643316 -4.7454222 0 -2.2810644 5.8454817
|
||||
Loop time of 11.287 on 4 procs for 250 steps with 4000 atoms
|
||||
Loop time of 6.09991 on 4 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 9568.520 tau/day, 22.149 timesteps/s
|
||||
34.9% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
Performance: 17705.179 tau/day, 40.984 timesteps/s
|
||||
98.2% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 10.274 | 10.76 | 11.02 | 8.8 | 95.33
|
||||
Neigh | 0.12639 | 0.1291 | 0.13056 | 0.5 | 1.14
|
||||
Comm | 0.12094 | 0.38226 | 0.87078 | 46.7 | 3.39
|
||||
Output | 0.000297 | 0.0006965 | 0.001867 | 0.0 | 0.01
|
||||
Modify | 0.010445 | 0.010638 | 0.011054 | 0.2 | 0.09
|
||||
Other | | 0.003901 | | | 0.03
|
||||
Pair | 5.2315 | 5.5179 | 6.0183 | 13.7 | 90.46
|
||||
Neigh | 0.049134 | 0.051424 | 0.053837 | 0.8 | 0.84
|
||||
Comm | 0.021671 | 0.52455 | 0.8132 | 44.5 | 8.60
|
||||
Output | 0.00019336 | 0.00026017 | 0.00032115 | 0.0 | 0.00
|
||||
Modify | 0.0036032 | 0.0036635 | 0.0038021 | 0.1 | 0.06
|
||||
Other | | 0.002068 | | | 0.03
|
||||
|
||||
Nlocal: 1000 ave 1012 max 983 min
|
||||
Histogram: 1 0 0 0 0 0 2 0 0 1
|
||||
@ -164,7 +162,6 @@ Neighbor list builds = 25
|
||||
Dangerous builds = 25
|
||||
|
||||
clear
|
||||
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (../comm.cpp:90)
|
||||
using 1 OpenMP thread(s) per MPI task
|
||||
|
||||
units lj
|
||||
@ -179,7 +176,7 @@ read_data hybrid.data
|
||||
4000 velocities
|
||||
|
||||
pair_style hybrid lj/cut 2.5 python 2.5
|
||||
pair_coeff * * python potentials.LJCutMelt lj NULL
|
||||
pair_coeff * * python py_pot.LJCutMelt lj NULL
|
||||
pair_coeff * 2 lj/cut 1.0 1.0
|
||||
|
||||
neighbor 0.3 bin
|
||||
@ -219,20 +216,20 @@ Step Temp E_pair E_mol TotEng Press
|
||||
150 1.6384234 -4.7389689 0 -2.2819482 5.9315273
|
||||
200 1.6428814 -4.7460743 0 -2.2823683 5.8888228
|
||||
250 1.6432631 -4.7466603 0 -2.2823818 5.8398819
|
||||
Loop time of 11.1573 on 4 procs for 250 steps with 4000 atoms
|
||||
Loop time of 6.04476 on 4 procs for 250 steps with 4000 atoms
|
||||
|
||||
Performance: 9679.760 tau/day, 22.407 timesteps/s
|
||||
35.0% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
Performance: 17866.705 tau/day, 41.358 timesteps/s
|
||||
98.3% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||||
|
||||
MPI task timing breakdown:
|
||||
Section | min time | avg time | max time |%varavg| %total
|
||||
---------------------------------------------------------------
|
||||
Pair | 10.166 | 10.713 | 10.932 | 9.7 | 96.01
|
||||
Neigh | 0.060687 | 0.062175 | 0.063163 | 0.4 | 0.56
|
||||
Comm | 0.14931 | 0.36938 | 0.91686 | 52.5 | 3.31
|
||||
Output | 0.00036 | 0.00058175 | 0.001228 | 0.0 | 0.01
|
||||
Modify | 0.009918 | 0.010237 | 0.010388 | 0.2 | 0.09
|
||||
Other | | 0.002356 | | | 0.02
|
||||
Pair | 5.2589 | 5.5841 | 5.9788 | 11.1 | 92.38
|
||||
Neigh | 0.023942 | 0.024705 | 0.025509 | 0.4 | 0.41
|
||||
Comm | 0.034946 | 0.43056 | 0.75671 | 40.0 | 7.12
|
||||
Output | 0.00022149 | 0.00029725 | 0.0003593 | 0.0 | 0.00
|
||||
Modify | 0.003613 | 0.0037647 | 0.003829 | 0.1 | 0.06
|
||||
Other | | 0.001313 | | | 0.02
|
||||
|
||||
Nlocal: 1000 ave 1013 max 989 min
|
||||
Histogram: 1 0 0 1 0 1 0 0 0 1
|
||||
@ -247,4 +244,4 @@ Neighbor list builds = 12
|
||||
Dangerous builds not checked
|
||||
|
||||
shell rm hybrid.data hybrid.restart
|
||||
Total wall time: 0:00:35
|
||||
Total wall time: 0:00:18
|
||||
|
||||
Reference in New Issue
Block a user