new examples/QM/LATTE dir with examples

This commit is contained in:
Steve Plimpton
2022-07-27 13:17:18 -06:00
parent 925196a24f
commit 5904fa954e
23 changed files with 2826 additions and 73 deletions

View File

@ -0,0 +1,24 @@
LAMMPS Description
6 atoms
2 atom types
0.0000000000000000 10.800000000000001 xlo xhi
0.0000000000000000 5.4000000000000004 ylo yhi
0.0000000000000000 5.4000000000000004 zlo zhi
3.3065463576978537E-016 3.3065463576978537E-016 3.3065463576978537E-016 xy xz yz
Masses
1 238.05078125000000
2 15.994915008544922
Atoms
1 1 1 0.0 2.70000 8.10000 0.00000
2 1 2 0.0 1.35000 9.45000 1.35000
3 1 2 0.0 4.05000 9.45000 1.35000
4 1 1 0.0 2.70000 10.80000 2.70000
5 1 2 0.0 1.35000 12.15000 4.05000
6 1 2 0.0 4.05000 12.15000 4.05000

View File

@ -0,0 +1,27 @@
LAMMPS Description
9 atoms
2 atom types
0.0000000000000000 16.199999999999999 xlo xhi
0.0000000000000000 5.4000000000000004 ylo yhi
0.0000000000000000 5.4000000000000004 zlo zhi
3.3065463576978537E-016 3.3065463576978537E-016 3.3065463576978537E-016 xy xz yz
Masses
1 238.05078125000000
2 15.994915008544922
Atoms
1 1 1 0.0 2.70000 8.10000 0.00000
2 1 2 0.0 1.35000 9.45000 1.35000
3 1 2 0.0 4.05000 9.45000 1.35000
4 1 1 0.0 2.70000 10.80000 2.70000
5 1 2 0.0 1.35000 12.15000 4.05000
6 1 2 0.0 4.05000 12.15000 4.05000
7 1 1 0.0 2.70000 13.50000 5.40000
8 1 2 0.0 1.35000 14.85000 6.75000
9 1 2 0.0 4.05000 14.85000 6.75000

View File

@ -0,0 +1,30 @@
LAMMPS Description
12 atoms
2 atom types
0.0000000000000000 10.800000000000001 xlo xhi
0.0000000000000000 10.800000000000001 ylo yhi
0.0000000000000000 5.4000000000000004 zlo zhi
6.6130927153957075E-016 3.3065463576978537E-016 3.3065463576978537E-016 xy xz yz
Masses
1 238.05078125000000
2 15.994915008544922
Atoms
1 1 1 0.0 2.70000 8.10000 0.00000
2 1 2 0.0 1.35000 9.45000 1.35000
3 1 2 0.0 4.05000 9.45000 1.35000
4 1 1 0.0 5.40000 8.10000 2.70000
5 1 2 0.0 4.05000 9.45000 4.05000
6 1 2 0.0 6.75000 9.45000 4.05000
7 1 1 0.0 2.70000 10.80000 2.70000
8 1 2 0.0 1.35000 12.15000 4.05000
9 1 2 0.0 4.05000 12.15000 4.05000
10 1 1 0.0 5.40000 10.80000 5.40000
11 1 2 0.0 4.05000 12.15000 6.75000
12 1 2 0.0 6.75000 12.15000 6.75000

130
examples/QM/LATTE/README Normal file
View File

@ -0,0 +1,130 @@
LATTE is a semi-empirical tight-binding quantum code, developed
primarily at Los Alamos National Labs.
See these links:
https://www.osti.gov/biblio/1526907-los-alamos-transferable-tight-binding-energetics-latte-version
https://github.com/lanl/LATTE
LAMMPS has 2 ways of working with LATTE:
(1) Via its LATTE package and the fix latte command
must run LAMMPS on a single processor, it calls LATTE as a library
(2) Via its MDI package and the code-coupling MDI library
(a) can run LAMMPS and LATTE as stand-alone codes
LAMMPS can be run on any number of procs
LATTE must run on a single proc, but can use OpenMP
(b) can run LAMMPS with LATTE as a plug-in library
must run LAMMPS on a single processor
Examples for use case (1) are in the examples/latte dir. Use case (2)
is illustrated in this dir.
NOTE: If you compare MDI runs in this dir to similar fix latte runs in
examples/latte, the answers for energy and virial will be differnt.
This is b/c the version of LATTE used by the fix latte command within
the LATTE package is older than the version of LATTE used here which
now has MDI support.
------------------
Building 3 codes needed to run these examples
(1) Download and build MDI
% git clone git@github.com:MolSSI-MDI/MDI_Library.git mdi
% cd mdi
% mkdir build; cd build
% cmake .. # includes support for all langauges (incl Fortran, Python)
% make
(2) Download and build LATTE with MDI support
% git clone git@github.com:lanl/LATTE.git latte
% cd latte
% cp makefiles/makefile.CHOICES.mdi makefile.CHOICES # so can now edit
% edit makefile.CHOICES settings to have these settings:
MAKELIB = OFF, SHARED = ON, MDI = ON
MDI_PATH must point to CMake build of MDI in (1),
e.g. /home/sjplimp/mdi/build/MDI_Library
% make clean
% make # creates liblatte.so and LATTE_DOUBLE with support for MDI
(3) Build LAMMPS with its MDI package
also with the MOLECULE package for these example scripts
% cd lammps
% mkdir build; cd build
% cmake -D PKG_MDI=yes -D PKG_MOLECULE=yes ../cmake
% make
(4) Copy LAMMPS and LATTE files into this dir
Copy the LAMMPS executable (e.g. lmp_mpi) into this dir.
Copy the LATTE executabe (LATTE_DOUBLE) into this dir.
The run commands below assume you have done this.
------------------
Notes on LATTE usage
By default LATTE reads the latte.in file for its parameters. That
file specifies other files LATTE will read. With MDI, the driver code
(e.g. LAMMPS) can use the >FNAME command to specify an alternate
filename to use instead of latte.in.
By default LATTE writes out a log.latte file with info about its
calculations. An "OUTFILE= logfile" setting in latte.in can rename
this file.
This version of LATTE can only run on a single processor in an MPI
context. However LATTE can use OpenMP for parallelism, so that it
effectively runs on more cores. See instructions below for how to do
this.
---------
Run example #1: AIMD
* Run with MPI: 1 proc each
mpirun -np 1 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-in in.aimd.mdi -log log.aimd.mdi.lammps.1 : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
* Run with MPI: 2 procs for LAMMPS, 1 for LATTE
mpirun -np 2 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-in in.aimd.mdi -log log.aimd.mdi.lammps.2 : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
* Run in plugin mode: 1 proc
lmp_mpi -mdi \
"-name LMP -role DRIVER -method LINK -plugin_path /home/sjplimp/latte/git" \
-in in.aimd.mdi.plugin -log log.aimd.mdi.plugin.lammps.1
NOTE: The -plugin_path setting needs to point to where you built LATTE
in step (2).
---------
Run example #2: sequence of configurations
* Run with MPI: 1 proc each
mpirun -np 1 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-in in.series.mdi -log log.series.mdi.lammps.1 : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
* Run with MPI: 2 procs for LAMMPS, 1 for LATTE
mpirun -np 2 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-in in.series.mdi -log log.series.mdi.lammps.2 : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
* Run in plugin mode: 1 proc
lmp_mpi -mdi \
"-name LMP -role DRIVER -method LINK -plugin_path /home/sjplimp/latte/git" \
-in in.series.mdi.plugin -log log.series.mdi.plugin.1
NOTE: The -plugin_path setting needs to point to where you built LATTE
in step (2).

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,15 @@
Noelem= 2
Element basis Numel Es Ep Ed Ef Mass HubbardU Wss Wpp Wdd Wff
U sdf 6.0 -4.08 0.0 0.816 -0.586 238.05078 9.0 0.0 0.0 0.0 0.0
O sp 6.0 -23.77 -8.85 0.0 0.0 15.994915 12.2 0.0 0.0 0.0 0.0
W spd 6.0 -4.52 0.53 -2.91 0.0 183.84 7.048 0.0 0.0 0.0 0.0
Mo sd 6.0 -3.29 0.0 -1.98 0.0 95.95 6.48 0.0 0.0 0.0 0.0
S sp 6.0 -14.00 -3.97 0.0 0.0 32.06 8.28 0.0 -0.4278 0.0 0.0
N sp 5.000000 -18.543798 -7.862407 0.000000 0.000000 14.006700 17.053958 0.000000 -0.6934 0.000000 0.000000
H s 1.000000 -6.237968 0.000000 0.000000 0.000000 1.007900 13.684855 -2.23400 0.000000 0.000000 0.000000
C sp 4.000000 -13.736556 -4.748938 0.000000 0.000000 12.010000 10.522540 0.000000 -0.618100 0.000000 0.000000
O sp 6.000000 -23.833752 -9.645001 0.000000 0.000000 15.999400 14.443874 0.000000 -0.757650 0.000000 0.000000

View File

@ -0,0 +1,27 @@
# AIMD test of two UO2 molecules with LATTE with fix latte
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all latte NULL
fix_modify 2 energy yes
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd &
id type x y z vx vy vz fx fy fz
run 20

View File

@ -0,0 +1,26 @@
# AIMD test of two UO2 molecules with LATTE in MDI stand-alone mode
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd.mdi &
id type x y z vx vy vz fx fy fz
run 20

View File

@ -0,0 +1,27 @@
# AIMD test of two UO2 molecules with LATTE in MDI plugin mode
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd.mdi.plugin &
id type x y z vx vy vz fx fy fz
mdi plugin latte_mdi mdi "-role ENGINE -name LATTE -method LINK" &
command "run 20"

View File

@ -0,0 +1,37 @@
# Series of single-point calcs of 2,3,4 UO2 molecules
# with LATTE in MDI stand-alone mode
variable files index 2uo2 3uo2 4uo2
mdi connect
label LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
write_dump all custom dump.series.${files} &
id type x y z fx fy fz modify sort id
clear
next files
jump SELF LOOP
mdi exit

View File

@ -0,0 +1,32 @@
# Series of single-point calcs of 2,3,4 UO2 molecules
# with LATTE in MDI plugin mode
variable files index 2uo2 3uo2 4uo2
label LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
fix 1 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
mdi plugin latte_mdi mdi "-role ENGINE -name LATTE -method LINK" &
command "run 0"
write_dump all custom dump.series.plugin.${files} &
id type x y z fx fy fz modify sort id
clear
next files
jump SELF LOOP

67
examples/QM/LATTE/latte.in Executable file
View File

@ -0,0 +1,67 @@
#General controls
CONTROL{
XCONTROL= 1
BASISTYPE= NONORTHO
PARAMPATH= './'
SCLTYPE= TABLE
DEBUGON= 0
FERMIM= 6
CGORLIB= 1 CGTOL= 1.0e-6
KBT= 1.0
NORECS= 5
ENTROPYKIND= 1
PPOTON= 2 VDWON= 0
SPINON= 0 SPINTOL= 1.0e-4
ELECTRO= 1 ELECMETH= 0 ELEC_ETOL= 0.001 ELEC_QTOL= 1.0e-12
COULACC= 1.0e-6 COULCUT= -500.0 COULR1= 500.0
MAXSCF= 250
BREAKTOL= 1.0E-12 MINSP2ITER= 22 SP2CONV= REL
FULLQCONV= 1 QITER= 0
QMIX= 0.05 SPINMIX= 0.05 MDMIX= 0.05
#QMIX= 0.25 SPINMIX= 0.25 MDMIX= 0.25
ORDERNMOL= 0
SPARSEON= 0 THRESHOLDON= 1 NUMTHRESH= 1.0e-6 FILLINSTOP= 100 BLKSZ= 4
MSPARSE= 3000
LCNON= 0 LCNITER= 4 CHTOL= 0.01
SKIN= 1.0
RELAX= 0 RELAXTYPE= SD MAXITER= 100 RLXFTOL= 0.001
MDON= 1
PBCON= 1
RESTART= 0
CHARGE= 0
XBO= 1
XBODISON= 1
XBODISORDER= 5
NGPU= 2
KON= 0
COMPFORCE= 1
DOSFIT= 0 INTS2FIT= 1 BETA= 1000.0 NFITSTEP= 5000 QFIT= 0 MCSIGMA= 0.2
PPFITON= 0
ALLFITON= 0
PPSTEP= 500 BISTEP= 500 PP2FIT= 2 BINT2FIT= 6
PPBETA= 1000.0 PPSIGMA= 0.01 PPNMOL= 10 PPNGEOM= 200
PARREP= 0
ER= 1.0
#DOKERNEL= T
}
MDCONTROL{
MAXITER= 2000
UDNEIGH= 1
DT= 0.5
TEMPERATURE= 1.0e-10 RNDIST= GAUSSIAN SEEDINIT= UNIFORM
DUMPFREQ= 250
RSFREQ= 500
WRTFREQ= 1
TOINITTEMP5= 1
THERMPER= 500
THERMRUN= 50000
NVTON= 0 NPTON= 0 AVEPER= 1000 FRICTION= 1000.0 SEED= 54
PTARGET= 0.0 NPTTYPE= ISO
SHOCKON= 0
SHOCKSTART= 100000
SHOCKDIR= 1
UPARTICLE= 500.0 USHOCK= -4590.0 C0= 1300.0
MDADAPT= 0
GETHUG= 0 E0= -795.725 V0= 896.984864 P0= 0.083149
}

View File

@ -0,0 +1,100 @@
LAMMPS (23 Jun 2022)
# AIMD test of two UO2 molecules with LATTE in MDI stand-alone mode
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd.mdi id type x y z vx vy vz fx fy fz
run 20
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 6.489 | 6.489 | 6.489 Mbytes
Step Temp PotEng TotEng Press
0 300 -50.539035 -50.345145 -120197.6
1 307.57345 -50.544722 -50.345937 -120123.27
2 316.3757 -50.551342 -50.346868 -120035.12
3 326.39203 -50.558885 -50.347938 -119933.11
4 337.60559 -50.567341 -50.349146 -119817.17
5 349.99734 -50.576697 -50.350493 -119687.24
6 363.54606 -50.586939 -50.351979 -119543.23
7 378.22834 -50.598054 -50.353605 -119385.07
8 394.0186 -50.610024 -50.355369 -119212.67
9 410.88903 -50.622831 -50.357273 -119025.94
10 428.80963 -50.636457 -50.359317 -118824.77
11 447.74819 -50.65088 -50.3615 -118609.06
12 467.67027 -50.666079 -50.363823 -118378.7
13 488.53922 -50.68203 -50.366287 -118133.58
14 510.31617 -50.698708 -50.36889 -117873.58
15 532.96002 -50.716086 -50.371633 -117598.57
16 556.42747 -50.734137 -50.374517 -117308.44
17 580.67298 -50.75283 -50.377541 -117003.05
18 605.64879 -50.772136 -50.380705 -116682.27
19 631.30497 -50.792023 -50.38401 -116345.95
20 657.58937 -50.812455 -50.387454 -115993.97
Loop time of 3.33709 on 1 procs for 20 steps with 6 atoms
Performance: 0.129 ns/day, 185.394 hours/ns, 5.993 timesteps/s
99.9% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 8.02e-07 | 8.02e-07 | 8.02e-07 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 4.5469e-05 | 4.5469e-05 | 4.5469e-05 | 0.0 | 0.00
Output | 0.00079115 | 0.00079115 | 0.00079115 | 0.0 | 0.02
Modify | 3.3362 | 3.3362 | 3.3362 | 0.0 | 99.97
Other | | 1.728e-05 | | | 0.00
Nlocal: 6 ave 6 max 6 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 2 ave 2 max 2 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:03

View File

@ -0,0 +1,102 @@
LAMMPS (23 Jun 2022)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
# AIMD test of two UO2 molecules with LATTE in MDI stand-alone mode
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
2 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd.mdi id type x y z vx vy vz fx fy fz
run 20
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.485 | 5.987 | 6.489 Mbytes
Step Temp PotEng TotEng Press
0 300 -50.539035 -50.345145 -120197.6
1 307.57345 -50.544722 -50.345937 -120123.27
2 316.3757 -50.551342 -50.346868 -120035.12
3 326.39203 -50.558885 -50.347938 -119933.11
4 337.60559 -50.567341 -50.349146 -119817.17
5 349.99734 -50.576697 -50.350493 -119687.24
6 363.54606 -50.586939 -50.351979 -119543.23
7 378.22834 -50.598054 -50.353605 -119385.07
8 394.0186 -50.610024 -50.355369 -119212.67
9 410.88903 -50.622831 -50.357273 -119025.94
10 428.80963 -50.636457 -50.359317 -118824.77
11 447.74819 -50.65088 -50.3615 -118609.06
12 467.67027 -50.666079 -50.363823 -118378.7
13 488.53922 -50.68203 -50.366287 -118133.58
14 510.31617 -50.698708 -50.36889 -117873.58
15 532.96002 -50.716086 -50.371633 -117598.57
16 556.42747 -50.734137 -50.374517 -117308.44
17 580.67298 -50.75283 -50.377541 -117003.05
18 605.64879 -50.772136 -50.380705 -116682.27
19 631.30497 -50.792023 -50.38401 -116345.95
20 657.58937 -50.812455 -50.387454 -115993.97
Loop time of 25.1385 on 2 procs for 20 steps with 6 atoms
Performance: 0.017 ns/day, 1396.581 hours/ns, 0.796 timesteps/s
99.9% CPU use with 2 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 9.94e-07 | 1.4045e-06 | 1.815e-06 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 1.6802e-05 | 2.4755e-05 | 3.2708e-05 | 0.0 | 0.00
Output | 0.001682 | 0.0018221 | 0.0019621 | 0.3 | 0.01
Modify | 25.136 | 25.136 | 25.136 | 0.0 | 99.99
Other | | 0.0002258 | | | 0.00
Nlocal: 3 ave 6 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 1 ave 2 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 0 ave 0 max 0 min
Histogram: 2 0 0 0 0 0 0 0 0 0
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
Total wall time: 0:00:26

View File

@ -0,0 +1,100 @@
LAMMPS (23 Jun 2022)
# AIMD test of two UO2 molecules with LATTE in MDI plugin mode
units metal
atom_style full
atom_modify sort 0 0.0
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
velocity all create 300.0 87287 loop geom
neighbor 1.0 bin
neigh_modify every 1 delay 0 check yes
timestep 0.00025
fix 1 all nve
fix 2 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
dump 1 all custom 1 dump.aimd.mdi.plugin id type x y z vx vy vz fx fy fz
mdi plugin latte_mdi mdi "-role ENGINE -name LATTE -method LINK" command "run 20"
run 20
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 6.489 | 6.489 | 6.489 Mbytes
Step Temp PotEng TotEng Press
0 300 -50.539035 -50.345145 -120197.6
1 307.57345 -50.544722 -50.345937 -120123.27
2 316.3757 -50.551342 -50.346868 -120035.12
3 326.39203 -50.558885 -50.347938 -119933.11
4 337.60559 -50.567341 -50.349146 -119817.17
5 349.99734 -50.576697 -50.350493 -119687.24
6 363.54606 -50.586939 -50.351979 -119543.23
7 378.22834 -50.598054 -50.353605 -119385.07
8 394.0186 -50.610024 -50.355369 -119212.67
9 410.88903 -50.622831 -50.357273 -119025.94
10 428.80963 -50.636457 -50.359317 -118824.77
11 447.74819 -50.65088 -50.3615 -118609.06
12 467.67027 -50.666079 -50.363823 -118378.7
13 488.53922 -50.68203 -50.366287 -118133.58
14 510.31617 -50.698708 -50.36889 -117873.58
15 532.96002 -50.716086 -50.371633 -117598.57
16 556.42747 -50.734137 -50.374517 -117308.44
17 580.67298 -50.75283 -50.377541 -117003.05
18 605.64879 -50.772136 -50.380705 -116682.27
19 631.30497 -50.792023 -50.38401 -116345.95
20 657.58937 -50.812455 -50.387454 -115993.97
Loop time of 3.95092 on 1 procs for 20 steps with 6 atoms
Performance: 0.109 ns/day, 219.496 hours/ns, 5.062 timesteps/s
6752.7% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 2.132e-06 | 2.132e-06 | 2.132e-06 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 2.3959e-05 | 2.3959e-05 | 2.3959e-05 | 0.0 | 0.00
Output | 0.0016711 | 0.0016711 | 0.0016711 | 0.0 | 0.04
Modify | 3.9491 | 3.9491 | 3.9491 | 0.0 | 99.95
Other | | 8.929e-05 | | | 0.00
Nlocal: 6 ave 6 max 6 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 2 ave 2 max 2 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0

View File

@ -0,0 +1,255 @@
LAMMPS (23 Jun 2022)
# Series of single-point calcs of 2,3,4 UO2 molecules
# with LATTE in MDI stand-alone mode
variable files index 2uo2 3uo2 4uo2
mdi connect
label LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
WARNING: No fixes with time integration, atoms won't move (../verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.238 | 5.238 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -50.539035 -50.539035 -120855.2
Loop time of 1.107e-06 on 1 procs for 0 steps with 6 atoms
180.7% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.107e-06 | | |100.00
Nlocal: 6 ave 6 max 6 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 2 ave 2 max 2 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
write_dump all custom dump.series.${files} id type x y z fx fy fz modify sort id
write_dump all custom dump.series.2uo2 id type x y z fx fy fz modify sort id
clear
next files
jump SELF LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 3uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (16.2 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
9 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.002 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
WARNING: No fixes with time integration, atoms won't move (../verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 16.2, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.238 | 5.238 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -78.155679 -78.155679 -99931.431
Loop time of 7.43e-07 on 1 procs for 0 steps with 9 atoms
134.6% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 7.43e-07 | | |100.00
Nlocal: 9 ave 9 max 9 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 3 ave 3 max 3 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
write_dump all custom dump.series.${files} id type x y z fx fy fz modify sort id
write_dump all custom dump.series.3uo2 id type x y z fx fy fz modify sort id
clear
next files
jump SELF LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 4uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 10.8 5.4) with tilt (6.6130927e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
12 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.001 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
WARNING: No fixes with time integration, atoms won't move (../verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.238 | 5.238 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -108.3939 -108.3939 -20025.507
Loop time of 7.65e-07 on 1 procs for 0 steps with 12 atoms
130.7% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 7.65e-07 | | |100.00
Nlocal: 12 ave 12 max 12 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 5 ave 5 max 5 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
write_dump all custom dump.series.${files} id type x y z fx fy fz modify sort id
write_dump all custom dump.series.4uo2 id type x y z fx fy fz modify sort id
clear
next files
jump SELF LOOP
mdi exit
Total wall time: 0:00:02

View File

@ -0,0 +1,166 @@
LAMMPS (23 Jun 2022)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
# Series of single-point calcs of 2,3,4 UO2 molecules
# with LATTE in MDI stand-alone mode
variable files index 2uo2 3uo2 4uo2
mdi connect
label LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
2 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.234 | 5.236 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -50.539035 -50.539035 -120855.2
Loop time of 1.987e-06 on 2 procs for 0 steps with 6 atoms
100.7% CPU use with 2 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.987e-06 | | |100.00
Nlocal: 3 ave 6 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 1 ave 2 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 0 ave 0 max 0 min
Histogram: 2 0 0 0 0 0 0 0 0 0
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0
write_dump all custom dump.series.${files} id type x y z fx fy fz modify sort id
write_dump all custom dump.series.2uo2 id type x y z fx fy fz modify sort id
clear
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:98)
using 1 OpenMP thread(s) per MPI task
next files
jump SELF LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 3uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (16.2 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
2 by 1 by 1 MPI processor grid
reading atoms ...
9 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.001 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
timestep 0.001
fix 1 all mdi/qm virial yes elements 92 8 connect no
thermo_style custom step temp pe etotal press
thermo 1
run 0
WARNING: No fixes with time integration, atoms won't move (src/verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 16.2, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.234 | 5.236 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -78.155679 -78.155679 -99931.431
Loop time of 1.9115e-06 on 2 procs for 0 steps with 9 atoms
130.8% CPU use with 2 MPI tasks x 1 OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.912e-06 | | |100.00
Nlocal: 4.5 ave 9 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Nghost: 1.5 ave 3 max 0 min
Histogram: 1 0 0 0 0 0 0 0 0 1
Neighs: 0 ave 0 max 0 min
Histogram: 2 0 0 0 0 0 0 0 0 0
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0

View File

@ -0,0 +1,78 @@
LAMMPS (23 Jun 2022)
# Series of single-point calcs of 2,3,4 UO2 molecules
# with LATTE in MDI plugin mode
variable files index 2uo2 3uo2 4uo2
label LOOP
units metal
atom_style full
atom_modify sort 0 0.0
read_data ${files}.lmp
read_data 2uo2.lmp
Reading data file ...
triclinic box = (0 0 0) to (10.8 5.4 5.4) with tilt (3.3065464e-16 3.3065464e-16 3.3065464e-16)
1 by 1 by 1 MPI processor grid
reading atoms ...
6 atoms
Finding 1-2 1-3 1-4 neighbors ...
special bond factors lj: 0 0 0
special bond factors coul: 0 0 0
0 = max # of 1-2 neighbors
0 = max # of 1-3 neighbors
0 = max # of 1-4 neighbors
1 = max # of special neighbors
special bonds CPU = 0.000 seconds
read_data CPU = 0.004 seconds
neighbor 0.3 bin
neigh_modify every 1 delay 0 check yes
fix 1 all mdi/qm virial yes elements 92 8
thermo_style custom step temp pe etotal press
thermo 1
mdi plugin latte_mdi mdi "-role ENGINE -name LATTE -method LINK" command "run 0"
run 0
WARNING: No fixes with time integration, atoms won't move (../verlet.cpp:60)
Neighbor list info ...
update every 1 steps, delay 0 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 0
ghost atom cutoff = 0
binsize = 10.8, bins = 1 1 1
0 neighbor lists, perpetual/occasional/extra = 0 0 0
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:210)
Per MPI rank memory allocation (min/avg/max) = 5.238 | 5.238 | 5.238 Mbytes
Step Temp PotEng TotEng Press
0 0 -50.539035 -50.539035 -120855.2
Loop time of 1.9634e-05 on 1 procs for 0 steps with 6 atoms
11301.8% CPU use with 1 MPI tasks x no OpenMP threads
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Bond | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 0 | 0 | 0 | 0.0 | 0.00
Output | 0 | 0 | 0 | 0.0 | 0.00
Modify | 0 | 0 | 0 | 0.0 | 0.00
Other | | 1.963e-05 | | |100.00
Nlocal: 6 ave 6 max 6 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 2 ave 2 max 2 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
Total # of neighbors = 0
Ave neighs/atom = 0
Ave special neighs/atom = 0
Neighbor list builds = 0
Dangerous builds = 0

View File

@ -0,0 +1,178 @@
3
U O
101
1.0000000000000000 53.452052832272599
1.0520000000000000 48.423668742582244
1.1040000000000001 43.721445018814535
1.1560000000000001 39.334296276283553
1.2080000000000000 35.251137130303420
1.2600000000000000 31.460882196188166
1.3120000000000001 27.952446089251964
1.3639999999999999 24.714743424808852
1.4159999999999999 21.736688818172937
1.4680000000000000 19.007196884658306
1.5200000000000000 16.515182239579076
1.5720000000000001 14.249559498249329
1.6240000000000001 12.199243275983154
1.6760000000000002 10.353148188094648
1.7280000000000000 8.7001888498979163
1.7800000000000000 7.2292798767070447
1.8320000000000001 5.9293358838361092
1.8839999999999999 4.7892714865992376
1.9359999999999999 3.7980013003104953
1.9880000000000000 2.9444399402839894
2.0400000000000000 2.2175020218338095
2.0920000000000001 1.6061021602740548
2.1440000000000001 1.0991549709188142
2.1960000000000002 0.68557506908218180
2.2480000000000002 0.35427707007825704
2.2999999999999998 9.4175589221130632E-002
2.3520000000000003 -0.10581475817510910
2.4039999999999999 -0.25677935679635860
2.4560000000000000 -0.36980359132853102
2.5080000000000000 -0.45596679597127698
2.5600000000000001 -0.52381995798172376
2.6120000000000001 -0.57548542297431915
2.6640000000000001 -0.61207888691334400
2.7160000000000002 -0.63471604576307783
2.7679999999999998 -0.64451259548780349
2.8200000000000003 -0.64258423205180126
2.8719999999999999 -0.63004665141935134
2.9240000000000004 -0.60801554955473625
2.9760000000000000 -0.57760662242223493
3.0280000000000000 -0.53993556598613002
3.0800000000000001 -0.49611807621070214
3.1320000000000001 -0.44726984906023193
3.1840000000000002 -0.39450658049900023
3.2359999999999998 -0.33894396649128961
3.2880000000000003 -0.28169770300137842
3.3399999999999999 -0.22388348599354982
3.3920000000000003 -0.16661701143208349
3.4440000000000000 -0.11101397528126161
3.4960000000000004 -5.8190073505363524E-002
3.5480000000000000 -9.2610020686722198E-003
3.6000000000000001 3.4657543064533058E-002
3.6519999999999997 7.2695102245010301E-002
3.7040000000000002 0.10496216108368017
3.7560000000000002 0.13181444150650151
3.8080000000000003 0.15360766543943441
3.8599999999999999 0.17069755480843840
3.9119999999999999 0.18343983153947352
3.9640000000000004 0.19219021755849935
4.0160000000000000 0.19730443479147558
4.0679999999999996 0.19913820516436204
4.1200000000000001 0.19804725060311840
4.1719999999999997 0.19438729303370450
4.2240000000000002 0.18851405438207983
4.2759999999999998 0.18078325657420447
4.3280000000000003 0.17155062153603778
4.3799999999999999 0.16117187119353987
4.4320000000000004 0.15000272747267010
4.4840000000000000 0.13839891229938861
4.5359999999999996 0.12671614759965491
4.5880000000000001 0.11531015529942858
4.6400000000000006 0.10450791010072910
4.6920000000000002 9.4401608127654982E-002
4.7439999999999998 8.4968801575229971E-002
4.7960000000000003 7.6186266463431560E-002
4.8480000000000008 6.8030778812237541E-002
4.9000000000000004 6.0479114641625663E-002
4.9520000000000000 5.3508049971573365E-002
5.0040000000000004 4.7094360822058187E-002
5.0560000000000000 4.1214823213057958E-002
5.1080000000000005 3.5846213164550077E-002
5.1600000000000001 3.0965306696512353E-002
5.2119999999999997 2.6548879828922314E-002
5.2640000000000002 2.2573708581757501E-002
5.3159999999999998 1.9016568974995669E-002
5.3680000000000003 1.5854237028614312E-002
5.4199999999999999 1.3063488762591162E-002
5.4719999999999995 1.0621100196903764E-002
5.5240000000000000 8.5038473515297100E-003
5.5760000000000005 6.6885062464466568E-003
5.6280000000000001 5.1518529016322447E-003
5.6799999999999997 3.8706633370640541E-003
5.7320000000000002 2.8217135727196876E-003
5.7840000000000007 1.9817796285767830E-003
5.8360000000000003 1.3276375246129659E-003
5.8879999999999999 8.3606328080583568E-004
5.9400000000000004 4.8383291713300426E-004
5.9920000000000009 2.4772245357209625E-004
6.0440000000000005 1.0450791010072858E-004
6.0960000000000001 3.0965306696512431E-005
6.1480000000000006 3.8706633370639547E-006
6.2000000000000002 0.0000000000000000
O O
20
0.59999999999999998 29923.073152218909
0.70000000000000007 4662.8666204588562
0.80000000000000004 849.06541460837946
0.90000000000000002 174.94775568214448
1.0000000000000000 39.499570511324919
1.1000000000000001 9.4630438308109763
1.2000000000000002 2.3294935751104737
1.3000000000000003 0.57058726754144162
1.4000000000000001 0.13466360499250576
1.5000000000000002 2.9654028763683022E-002
1.6000000000000001 5.9001110666872716E-003
1.7000000000000002 1.0271110256853976E-003
1.8000000000000003 1.5149315970664778E-004
1.9000000000000001 1.8332630772941197E-005
2.0000000000000000 1.7625863466525047E-006
2.1000000000000001 1.3037897449239816E-007
2.2000000000000002 7.1851191723432173E-009
2.3000000000000003 2.8567178835137876E-010
2.4000000000000004 7.9349720447872060E-012
2.5000000000000004 1.4910967552225071E-013
U U
50
0.10000000000000001 74348.981230147430
0.20000000000000001 40311.628875481227
0.30000000000000004 22512.215747793147
0.40000000000000002 12931.185562052075
0.50000000000000000 7629.3983056130000
0.59999999999999998 4617.1471175675460
0.70000000000000007 2862.1227331610016
0.80000000000000004 1814.8199558215895
0.90000000000000002 1175.4637167411634
1.0000000000000000 776.63138285251296
1.1000000000000001 522.69735907852555
1.2000000000000002 357.86149706462436
1.3000000000000003 248.89064787141209
1.4000000000000001 175.60252392080037
1.5000000000000002 125.51081146835013
1.6000000000000001 90.752660563379663
1.7000000000000002 66.292603562046978
1.8000000000000003 48.853749739571974
1.9000000000000001 36.270829284225563
2.0000000000000000 27.092149160250134
2.1000000000000001 20.330846347361575
2.2000000000000002 15.307107145388191
2.3000000000000003 11.546652254529212
2.4000000000000004 8.7145303726582952
2.5000000000000004 6.5713781993663156
2.6000000000000001 4.9441671799982290
2.7000000000000002 3.7064118746112378
2.8000000000000003 2.7646343058611356
2.9000000000000004 2.0490135318783476
3.0000000000000004 1.5068662861359490
3.1000000000000001 1.0980623443850352
3.2000000000000002 0.79177413418881881
3.3000000000000003 0.56415350027012756
3.4000000000000004 0.39665649152896415
3.5000000000000004 0.27482281511443302
3.6000000000000001 0.18737497023545538
3.7000000000000002 0.12554244470464804
3.8000000000000003 8.2544745767756542E-002
3.9000000000000004 5.3187278866042048E-002
4.0000000000000000 3.3538623216095062E-002
4.0999999999999996 2.0668142493140005E-002
4.2000000000000002 1.2430141080200409E-002
4.2999999999999998 7.2856566327403139E-003
4.3999999999999995 4.1560332011683883E-003
4.5000000000000000 2.3041281035584126E-003
4.5999999999999996 1.2397986929553748E-003
4.7000000000000002 6.4656516755885957E-004
4.7999999999999998 3.2635453161844339E-004
4.9000000000000004 1.5921458192287997E-004
5.0000000000000000 7.4970692168027886E-005

View File

@ -189,6 +189,9 @@ corresponding doc page in the manual for more info. See the
https://docs.lammps.org/Build_package.html page for more info about
installing and building packages.
The QM directory has examples of how to use LAMMPS in tandem with
several quantum codes.
The TIP4P directory has an example for testing forces computed on a
GPU.

View File

@ -1,63 +0,0 @@
Examples in this directory use LAMMPS as an MDI driver code and the
LATTE tight-binding code as an MDI engine to perform ab initio MD and
evaluate the energy/forces/virial for a series of MD snapshots or
conformations with LATTE.
Talk about LATTE package and fix latte command
---------
copy lmp_mpi and LATTE_DOUBLE into this dir
LATTE always uses latte.in as input file, contains no element info
this version of LATTE does not use MPI, only OpenMP or GPU
run LATTE with OpenMP: setenv OMP_NUM_THREADS max-core-count
---------
Run AIMD test problem:
build LAMMPS with molecule package
LAMMPS uses in.mdi.aimd or in.mdi.aimd.plugin
++ Run with MPI: 1 proc each
mpirun -np 1 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-log log.aimd.driver.mpi.1 -in in.mdi.aimd : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
++ Run with MPI: 2 procs for LAMMPS, 1 for LATTE
mpirun -np 2 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-log log.aimd.driver.mpi.1 -in in.mdi.aimd : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
++ Run in plugin mode: 1 proc
lmp_mpi -mdi \
"-name LMP -role DRIVER -method LINK -plugin_path /home/sjplimp/latte/git" \
-log log.aimd.driver.plugin.1 -in in.mdi.aimd.plugin
mpirun -np 2 lmp_mpi -mdi \
"-name LMP -role DRIVER -method LINK -plugin_path /home/sjplimp/latte/git" \
-log log.aimd.driver.plugin.1 -in in.mdi.aimd.plugin
++ Run with fix latte: 1 proc
lmp_mpi < in.aimd
---------
Run sequence of configs:
++ Run with MPI: 1 proc each
mpirun -np 1 lmp_mpi -mdi "-name LMP -role DRIVER -method MPI" \
-log log.series.driver.mpi.1 -in in.series.driver : \
-np 1 LATTE_DOUBLE -mdi "-name LATTE -role ENGINE -method MPI"
++ Run in plugin mode: 1 proc
lmp_mpi -mdi \
"-name LMP -role DRIVER -method LINK -plugin_path /home/sjplimp/latte/git" \
-log log.series.driver.plugin.1 -in in.series.driver.plugin

View File

@ -2,6 +2,9 @@ These are examples that work the MDI package in LAMMPS which uses the
MolSSI MDI library for coupling codes together and communicating
between them with MDI messages.
There are more examples of using LAMMPS with quantum codes via MDI in
the examples/QM directory.
Within the MDI context, one code is the driver and another code is the
engine. The 2 codes can be written in any language; C++ (LAMMPS) and
Python are illustrated here. The 2 codes can each be stand-alone

View File

@ -237,6 +237,7 @@ void FixMDIQM::init()
}
// send natoms, atom types or elements, and simulation box to engine
// confirm engine count of NATOMS is correct
// this will trigger setup of a new system
// subsequent calls in post_force() will be for same system until new init()
@ -245,36 +246,38 @@ void FixMDIQM::init()
int natoms_exists;
int ierr = MDI_Check_command_exists("@DEFAULT", ">NATOMS", mdicomm, &natoms_exists);
if (ierr) error->all(FLERR, "MDI: >NATOMS command check");
if ( natoms_exists ) {
MPI_Bcast(&natoms_exists, 1, MPI_INT, 0, world);
if (natoms_exists) {
ierr = MDI_Send_command(">NATOMS", mdicomm);
if (ierr) error->all(FLERR, "MDI: >NATOMS command");
int n = static_cast<int> (atom->natoms);
ierr = MDI_Send(&n, 1, MDI_INT, mdicomm);
if (ierr) error->all(FLERR, "MDI: >NATOMS data");
} else { // confirm that the engine's NATOMS is correct
} else {
ierr = MDI_Send_command("<NATOMS", mdicomm);
if (ierr) error->all(FLERR, "MDI: <NATOMS command");
int n;
ierr = MDI_Recv(&n, 1, MDI_INT, mdicomm);
if (ierr) error->all(FLERR, "MDI: <NATOMS data");
if ( n != atom->natoms ) error->all(FLERR, "MDI: Engine has the wrong number of atoms, and does not support the >NATOMS command.");
MPI_Bcast(&n, 1, MPI_INT, 0, world);
if (n != atom->natoms) error->all(FLERR, "MDI: Engine has wrong atom count and does not support >NATOMS command");
}
int elements_exists;
int types_exists;
ierr = MDI_Check_command_exists("@DEFAULT", ">ELEMENTS", mdicomm, &elements_exists);
if (ierr) error->all(FLERR, "MDI: >ELEMENTS command check");
MPI_Bcast(&elements_exists, 1, MPI_INT, 0, world);
ierr = MDI_Check_command_exists("@DEFAULT", ">TYPES", mdicomm, &types_exists);
if (ierr) error->all(FLERR, "MDI: >TYPES command check");
if ( elements && elements_exists ) {
send_elements();
} else if ( types_exists ) {
send_types();
}
MPI_Bcast(&types_exists, 1, MPI_INT, 0, world);
if (elements && elements_exists) send_elements();
else if (types_exists) send_types();
send_box();
}
@ -530,7 +533,9 @@ void FixMDIQM::send_box()
int celldispl_exists;
int ierr = MDI_Check_command_exists("@DEFAULT", ">NATOMS", mdicomm, &celldispl_exists);
if (ierr) error->all(FLERR, "MDI: >CELL_DISPL command check");
if ( celldispl_exists ) {
MPI_Bcast(&celldispl_exists, 1, MPI_INT, 0, world);
if (celldispl_exists) {
ierr = MDI_Send_command(">CELL_DISPL", mdicomm);
if (ierr) error->all(FLERR, "MDI: >CELL_DISPL command");
cell[0] = domain->boxlo[0] * lmp2mdi_length;