forked from lijiext/lammps
238 lines
8.7 KiB
Groff
238 lines
8.7 KiB
Groff
|
LAMMPS (30 Mar 2018)
|
||
|
using 1 OpenMP thread(s) per MPI task
|
||
|
# fix gcmc example with fix shake
|
||
|
|
||
|
# variables available on command line
|
||
|
|
||
|
variable mu index -8.1
|
||
|
variable disp index 0.5
|
||
|
variable temp index 338.0
|
||
|
variable lbox index 10.0
|
||
|
variable spacing index 5.0
|
||
|
|
||
|
# global model settings
|
||
|
|
||
|
units real
|
||
|
atom_style full
|
||
|
boundary p p p
|
||
|
pair_style lj/cut/coul/long 14
|
||
|
pair_modify mix arithmetic tail yes
|
||
|
kspace_style ewald 0.0001
|
||
|
bond_style harmonic
|
||
|
angle_style harmonic
|
||
|
|
||
|
# box, start molecules on simple cubic lattice
|
||
|
|
||
|
lattice sc ${spacing}
|
||
|
lattice sc 5.0
|
||
|
Lattice spacing in x,y,z = 5 5 5
|
||
|
region box block 0 ${lbox} 0 ${lbox} 0 ${lbox} units box
|
||
|
region box block 0 10.0 0 ${lbox} 0 ${lbox} units box
|
||
|
region box block 0 10.0 0 10.0 0 ${lbox} units box
|
||
|
region box block 0 10.0 0 10.0 0 10.0 units box
|
||
|
create_box 2 box bond/types 1 angle/types 1 extra/bond/per/atom 2 extra/angle/per/atom 1 extra/special/per/atom 2
|
||
|
Created orthogonal box = (0 0 0) to (10 10 10)
|
||
|
1 by 2 by 2 MPI processor grid
|
||
|
|
||
|
molecule h2omol H2O.txt
|
||
|
Read molecule h2omol:
|
||
|
3 atoms with max type 2
|
||
|
2 bonds with max type 1
|
||
|
1 angles with max type 1
|
||
|
0 dihedrals with max type 0
|
||
|
0 impropers with max type 0
|
||
|
create_atoms 0 box mol h2omol 464563 units box
|
||
|
Created 24 atoms
|
||
|
Time spent = 0.00285625 secs
|
||
|
|
||
|
# rigid SPC/E water model
|
||
|
|
||
|
pair_coeff 1 1 0.15535 3.166
|
||
|
pair_coeff * 2 0.0000 0.0000
|
||
|
|
||
|
bond_coeff 1 1000 1.0
|
||
|
angle_coeff 1 100 109.47
|
||
|
|
||
|
# masses
|
||
|
|
||
|
mass 1 15.9994
|
||
|
mass 2 1.0
|
||
|
|
||
|
# MD settings
|
||
|
|
||
|
group h2o type 1 2
|
||
|
24 atoms in group h2o
|
||
|
neighbor 2.0 bin
|
||
|
neigh_modify every 1 delay 1 check yes
|
||
|
velocity all create ${temp} 54654
|
||
|
velocity all create 338.0 54654
|
||
|
timestep 1.0
|
||
|
|
||
|
minimize 0.0 0.0 100 1000
|
||
|
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (../min.cpp:168)
|
||
|
Ewald initialization ...
|
||
|
using 12-bit tables for long-range coulomb (../kspace.cpp:321)
|
||
|
G vector (1/distance) = 0.170448
|
||
|
estimated absolute RMS force accuracy = 0.0332064
|
||
|
estimated relative force accuracy = 0.0001
|
||
|
KSpace vectors: actual max1d max3d = 16 2 62
|
||
|
kxmax kymax kzmax = 2 2 2
|
||
|
Neighbor list info ...
|
||
|
update every 1 steps, delay 0 steps, check yes
|
||
|
max neighbors/atom: 2000, page size: 100000
|
||
|
master list distance cutoff = 16
|
||
|
ghost atom cutoff = 16
|
||
|
binsize = 8, bins = 2 2 2
|
||
|
1 neighbor lists, perpetual/occasional/extra = 1 0 0
|
||
|
(1) pair lj/cut/coul/long, perpetual
|
||
|
attributes: half, newton on
|
||
|
pair build: half/bin/newton
|
||
|
stencil: half/bin/3d/newton
|
||
|
bin: standard
|
||
|
Per MPI rank memory allocation (min/avg/max) = 11.85 | 11.85 | 11.85 Mbytes
|
||
|
Step Temp E_pair E_mol TotEng Press
|
||
|
0 338 -4.9610706 9.2628112e-06 18.211756 730.90791
|
||
|
100 338 -15.742442 0.14954269 7.579918 -637.49568
|
||
|
Loop time of 0.0695416 on 4 procs for 100 steps with 24 atoms
|
||
|
|
||
|
94.4% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||
|
|
||
|
Minimization stats:
|
||
|
Stopping criterion = max iterations
|
||
|
Energy initial, next-to-last, final =
|
||
|
-4.96106135393 -15.5388622715 -15.592899346
|
||
|
Force two-norm initial, final = 15.474 18.1478
|
||
|
Force max component initial, final = 5.80042 7.56514
|
||
|
Final line search alpha, max atom move = 0.00151131 0.0114333
|
||
|
Iterations, force evaluations = 100 328
|
||
|
|
||
|
MPI task timing breakdown:
|
||
|
Section | min time | avg time | max time |%varavg| %total
|
||
|
---------------------------------------------------------------
|
||
|
Pair | 0.0093951 | 0.017625 | 0.028943 | 5.3 | 25.34
|
||
|
Bond | 0.00035357 | 0.00042325 | 0.00055075 | 0.0 | 0.61
|
||
|
Kspace | 0.00664 | 0.019695 | 0.029924 | 6.1 | 28.32
|
||
|
Neigh | 0 | 0 | 0 | 0.0 | 0.00
|
||
|
Comm | 0.022505 | 0.02509 | 0.027851 | 1.3 | 36.08
|
||
|
Output | 3.3855e-05 | 3.5942e-05 | 4.1485e-05 | 0.0 | 0.05
|
||
|
Modify | 0 | 0 | 0 | 0.0 | 0.00
|
||
|
Other | | 0.006672 | | | 9.59
|
||
|
|
||
|
Nlocal: 6 ave 8 max 3 min
|
||
|
Histogram: 1 0 0 0 1 0 0 0 0 2
|
||
|
Nghost: 1722 ave 1725 max 1720 min
|
||
|
Histogram: 2 0 0 0 0 0 1 0 0 1
|
||
|
Neighs: 1256.75 ave 2101 max 667 min
|
||
|
Histogram: 1 0 1 0 1 0 0 0 0 1
|
||
|
|
||
|
Total # of neighbors = 5027
|
||
|
Ave neighs/atom = 209.458
|
||
|
Ave special neighs/atom = 2
|
||
|
Neighbor list builds = 0
|
||
|
Dangerous builds = 0
|
||
|
reset_timestep 0
|
||
|
|
||
|
# rigid constraints with thermostat
|
||
|
|
||
|
fix mynvt h2o nvt temp ${temp} ${temp} 100
|
||
|
fix mynvt h2o nvt temp 338.0 ${temp} 100
|
||
|
fix mynvt h2o nvt temp 338.0 338.0 100
|
||
|
fix wshake h2o shake 0.0001 50 0 b 1 a 1 mol h2omol
|
||
|
0 = # of size 2 clusters
|
||
|
0 = # of size 3 clusters
|
||
|
0 = # of size 4 clusters
|
||
|
8 = # of frozen angles
|
||
|
|
||
|
# important to make temperature dofs dynamic
|
||
|
|
||
|
compute_modify thermo_temp dynamic/dof yes
|
||
|
compute_modify mynvt_temp dynamic/dof yes
|
||
|
|
||
|
run 1000
|
||
|
Ewald initialization ...
|
||
|
using 12-bit tables for long-range coulomb (../kspace.cpp:321)
|
||
|
G vector (1/distance) = 0.170448
|
||
|
estimated absolute RMS force accuracy = 0.0332064
|
||
|
estimated relative force accuracy = 0.0001
|
||
|
KSpace vectors: actual max1d max3d = 16 2 62
|
||
|
kxmax kymax kzmax = 2 2 2
|
||
|
Per MPI rank memory allocation (min/avg/max) = 11.6 | 11.6 | 11.6 Mbytes
|
||
|
Step Temp E_pair E_mol TotEng Press
|
||
|
0 518.26667 -15.742442 0 7.4303753 -613.0781
|
||
|
1000 369.81793 -54.202682 0 -37.667327 294.98832
|
||
|
Loop time of 0.191619 on 4 procs for 1000 steps with 24 atoms
|
||
|
|
||
|
Performance: 450.894 ns/day, 0.053 hours/ns, 5218.680 timesteps/s
|
||
|
96.4% CPU use with 4 MPI tasks x 1 OpenMP threads
|
||
|
|
||
|
MPI task timing breakdown:
|
||
|
Section | min time | avg time | max time |%varavg| %total
|
||
|
---------------------------------------------------------------
|
||
|
Pair | 0.015873 | 0.028989 | 0.040172 | 5.3 | 15.13
|
||
|
Bond | 0.00024271 | 0.00027657 | 0.00034404 | 0.0 | 0.14
|
||
|
Kspace | 0.022896 | 0.034492 | 0.047924 | 5.1 | 18.00
|
||
|
Neigh | 0.0025764 | 0.0025961 | 0.0026152 | 0.0 | 1.35
|
||
|
Comm | 0.068467 | 0.070095 | 0.071535 | 0.4 | 36.58
|
||
|
Output | 4.8161e-05 | 5.0783e-05 | 5.7936e-05 | 0.0 | 0.03
|
||
|
Modify | 0.049141 | 0.049894 | 0.05072 | 0.3 | 26.04
|
||
|
Other | | 0.005226 | | | 2.73
|
||
|
|
||
|
Nlocal: 6 ave 8 max 3 min
|
||
|
Histogram: 1 0 0 0 0 0 1 0 1 1
|
||
|
Nghost: 1331.5 ave 1369 max 1290 min
|
||
|
Histogram: 1 0 0 0 0 2 0 0 0 1
|
||
|
Neighs: 1259.75 ave 1642 max 428 min
|
||
|
Histogram: 1 0 0 0 0 0 0 1 0 2
|
||
|
|
||
|
Total # of neighbors = 5039
|
||
|
Ave neighs/atom = 209.958
|
||
|
Ave special neighs/atom = 2
|
||
|
Neighbor list builds = 27
|
||
|
Dangerous builds = 0
|
||
|
reset_timestep 0
|
||
|
|
||
|
# gcmc
|
||
|
|
||
|
variable tfac equal 5.0/3.0 # (3 trans + 2 rot)/(3 trans)
|
||
|
fix mygcmc h2o gcmc 100 100 0 0 54341 ${temp} ${mu} ${disp} mol h2omol tfac_insert ${tfac} group h2o shake wshake
|
||
|
fix mygcmc h2o gcmc 100 100 0 0 54341 338.0 ${mu} ${disp} mol h2omol tfac_insert ${tfac} group h2o shake wshake
|
||
|
fix mygcmc h2o gcmc 100 100 0 0 54341 338.0 -8.1 ${disp} mol h2omol tfac_insert ${tfac} group h2o shake wshake
|
||
|
fix mygcmc h2o gcmc 100 100 0 0 54341 338.0 -8.1 0.5 mol h2omol tfac_insert ${tfac} group h2o shake wshake
|
||
|
fix mygcmc h2o gcmc 100 100 0 0 54341 338.0 -8.1 0.5 mol h2omol tfac_insert 1.66666666666667 group h2o shake wshake
|
||
|
|
||
|
# atom counts
|
||
|
|
||
|
variable oxygen atom "type==1"
|
||
|
variable hydrogen atom "type==2"
|
||
|
group oxygen dynamic all var oxygen
|
||
|
dynamic group oxygen defined
|
||
|
group hydrogen dynamic all var hydrogen
|
||
|
dynamic group hydrogen defined
|
||
|
variable nO equal count(oxygen)
|
||
|
variable nH equal count(hydrogen)
|
||
|
|
||
|
# output
|
||
|
|
||
|
variable tacc equal f_mygcmc[2]/(f_mygcmc[1]+0.1)
|
||
|
variable iacc equal f_mygcmc[4]/(f_mygcmc[3]+0.1)
|
||
|
variable dacc equal f_mygcmc[6]/(f_mygcmc[5]+0.1)
|
||
|
variable racc equal f_mygcmc[8]/(f_mygcmc[7]+0.1)
|
||
|
thermo_style custom step temp press pe ke density atoms v_iacc v_dacc v_tacc v_racc v_nO v_nH
|
||
|
thermo 1000
|
||
|
|
||
|
# run
|
||
|
|
||
|
run 20000
|
||
|
Ewald initialization ...
|
||
|
using 12-bit tables for long-range coulomb (../kspace.cpp:321)
|
||
|
G vector (1/distance) = 0.170448
|
||
|
estimated absolute RMS force accuracy = 0.0332064
|
||
|
estimated relative force accuracy = 0.0001
|
||
|
KSpace vectors: actual max1d max3d = 16 2 62
|
||
|
kxmax kymax kzmax = 2 2 2
|
||
|
WARNING: Fix gcmc using full_energy option (../fix_gcmc.cpp:485)
|
||
|
0 atoms in group FixGCMC:gcmc_exclusion_group:mygcmc
|
||
|
0 atoms in group FixGCMC:rotation_gas_atoms:mygcmc
|
||
|
ERROR: fix gcmc does currently not support full_energy option with molecules on more than 1 MPI process. (../fix_gcmc.cpp:721)
|
||
|
Last command: run 20000
|