Merge pull request #1703 from jboschen/nwchem

add NWChem wrapper to client/server mode for AIMD
This commit is contained in:
Axel Kohlmeyer
2020-01-31 20:50:51 -05:00
committed by GitHub
27 changed files with 6689 additions and 25 deletions

View File

@ -68,8 +68,8 @@ programs.
.. note::
For client/server coupling to work between LAMMPS and another
code, the other code also has to use the CSlib. This can often be
done without any modification to the other code by simply wrapping it
code, the other code also has to use the CSlib. This can sometimes be
done without any modifications to the other code by simply wrapping it
with a Python script that exchanges CSlib messages with LAMMPS and
prepares input for or processes output from the other code. The other
code also has to implement a matching protocol for the format and
@ -94,17 +94,23 @@ client or server code:
* examples/message
* examples/COUPLE/README
* examples/COUPLE/lammps\_mc
* examples/COUPLE/lammps\_nwchem
* examples/COUPLE/lammps\_vasp
The examples/message dir couples a client instance of LAMMPS to a
server instance of LAMMPS.
The lammps\_mc dir shows how to couple LAMMPS as a server to a simple
Monte Carlo client code as the driver.
The files in the *lammps\_mc* folder show how to couple LAMMPS as
a server to a simple Monte Carlo client code as the driver.
The lammps\_vasp dir shows how to couple LAMMPS as a client code
running MD timestepping to VASP acting as a server providing quantum
DFT forces, through a Python wrapper script on VASP.
The files in the *lammps\_nwchem* folder show how to couple LAMMPS
as a client code running MD timestepping to NWChem acting as a
server providing quantum DFT forces, through a Python wrapper script
on NWChem.
The files in the *lammps\_vasp* folder show how to couple LAMMPS as
a client code running MD timestepping to VASP acting as a server
providing quantum DFT forces, through a Python wrapper script on VASP.
Here is how to launch a client and server code together for any of the
4 modes of message exchange that the :doc:`message <message>` command

View File

@ -70,8 +70,9 @@ in this pseudo code is a pointer to an instance of the CSlib.
See the src/MESSAGE/server\_md.cpp and src/MESSAGE/fix\_client\_md.cpp
files for details on how LAMMPS uses these messages. See the
examples/COUPLE/lammps\_vasp/vasp\_wrapper.py file for an example of how
a quantum code (VASP) can use these messages.
examples/COUPLE/lammps\_vasp/vasp\_wrap.py or
examples/COUPLE/lammps\_nwchem/nwchem\_wrap.py files for examples of how
a quantum code (VASP or NWChem) can use these messages.
The following pseudo-code uses these values, defined as enums.

150
doc/src/server_md.txt Normal file
View File

@ -0,0 +1,150 @@
"LAMMPS WWW Site"_lws - "LAMMPS Documentation"_ld - "LAMMPS Commands"_lc :c
:link(lws,http://lammps.sandia.gov)
:link(ld,Manual.html)
:link(lc,Commands_all.html)
:line
server md command :h3
[Syntax:]
server md :pre
md = the protocol argument to the "server"_server.html command
[Examples:]
server md :pre
[Description:]
This command starts LAMMPS running in "server" mode, where it will
expect messages from a separate "client" code that match the {md}
protocol for format and content explained below. For each message
LAMMPS receives it will send a message back to the client.
The "Howto client/server"_Howto_client_server.html doc page gives an
overview of client/server coupling of LAMMPS with another code where
one code is the "client" and sends request messages to a "server"
code. The server responds to each request with a reply message. This
enables the two codes to work in tandem to perform a simulation.
When this command is invoked, LAMMPS will run in server mode in an
endless loop, waiting for messages from the client code. The client
signals when it is done sending messages to LAMMPS, at which point the
loop will exit, and the remainder of the LAMMPS script will be
processed.
The "server"_server.html doc page gives other options for using LAMMPS
in server mode. See an example of how this command is used in
examples/message/in.message.server.
:line
When using this command, LAMMPS (as the server code) receives the
current coordinates of all particles from the client code each
timestep, computes their interaction, and returns the energy, forces,
and pressure for the interacting particles to the client code, so it
can complete the timestep. This command could also be used with a
client code that performs energy minimization, using the server to
compute forces and energy each iteration of its minimizer.
When using the "fix client/md"_fix_client_md.html command, LAMMPS (as
the client code) does the timestepping and receives needed energy,
forces, and pressure values from the server code.
The format and content of the exchanged messages are explained here in
a conceptual sense. Python-style pseudo code for the library calls to
the CSlib is shown, which performs the actual message exchange between
the two codes. See the "CSlib website"_http://cslib.sandia.gov doc
pages for more details on the actual library syntax. The "cs" object
in this pseudo code is a pointer to an instance of the CSlib.
See the src/MESSAGE/server_md.cpp and src/MESSAGE/fix_client_md.cpp
files for details on how LAMMPS uses these messages. See the
examples/COUPLE/lammps_vasp/vasp_wrap.py or
examples/COUPLE/lammps_nwchem/nwchem_wrap.py files for examples of how
a quantum code (VASP or NWChem) can use these messages.
The following pseudo-code uses these values, defined as enums.
Define:
SETUP=1, STEP=2
DIM=1, PERIODICITY=2, ORIGIN=3, BOX=4, NATOMS=5, NTYPES=6, TYPES=7, COORDS=8, UNITS-9, CHARGE=10
FORCES=1, ENERGY=2, PRESSURE=3, ERROR=4 :pre
[Client sends 2 kinds of messages]:
# required fields: DIM, PERIODICTY, ORIGIN, BOX, NATOMS, NTYPES, TYPES, COORDS
# optional fields: UNITS, CHARGE :pre
cs->send(SETUP,nfields) # msgID with nfields :pre
cs->pack_int(DIM,dim) # dimension (2,3) of simulation
cs->pack(PERIODICITY,3,xyz) # periodicity flags in 3 dims
cs->pack(ORIGIN,3,origin) # lower-left corner of simulation box
cs->pack(BOX,9,box) # 3 edge vectors of simulation box
cs->pack_int(NATOMS,natoms) # total number of atoms
cs->pack_int(NTYPES,ntypes) # number of atom types
cs->pack(TYPES,natoms,type) # vector of per-atom types
cs->pack(COORDS,3*natoms,x) # vector of 3N atom coords
cs->pack_string(UNITS,units) # units = "lj", "real", "metal", etc
cs->pack(CHARGE,natoms,q) # vector of per-atom charge :pre
# required fields: COORDS
# optional fields: ORIGIN, BOX :pre
cs->send(STEP,nfields) # msgID with nfields :pre
cs->pack(COORDS,3*natoms,x) # vector of 3N atom coords
cs->pack(ORIGIN,3,origin) # lower-left corner of simulation box
cs->pack(BOX,9,box) # 3 edge vectors of simulation box :pre
[Server replies to either kind of message]:
# required fields: FORCES, ENERGY, PRESSURE
# optional fields: ERROR :pre
cs->send(msgID,nfields) # msgID with nfields
cs->pack(FORCES,3*Natoms,f) # vector of 3N forces on atoms
cs->pack(ENERGY,1,poteng) # total potential energy of system
cs->pack(PRESSURE,6,press) # global pressure tensor (6-vector)
cs->pack_int(ERROR,flag) # server had an error (e.g. DFT non-convergence) :pre
:line
The units for various quantities that are sent and received iva
messages are defined for atomic-scale simulations in the table below.
The client and server codes (including LAMMPS) can use internal units
different than these (e.g. "real units"_units.html in LAMMPS), so long
as they convert to these units for messaging.
COORDS, ORIGIN, BOX = Angstroms
CHARGE = multiple of electron charge (1.0 is a proton)
ENERGY = eV
FORCES = eV/Angstrom
PRESSURE = bars :ul
Note that these are "metal units"_units.html in LAMMPS.
If you wish to run LAMMPS in another its non-atomic units, e.g. "lj
units"_units.html, then the client and server should exchange a UNITS
message as indicated above, and both the client and server should
agree on the units for the data they exchange.
:line
[Restrictions:]
This command is part of the MESSAGE package. It is only enabled if
LAMMPS was built with that package. See the "Build
package"_Build_package.html doc page for more info.
[Related commands:]
"message"_message.html, "fix client/md"_fix_client_md.html
[Default:] none

View File

@ -2050,6 +2050,7 @@ Nvidia
nvk
nvt
Nwait
nwchem
nx
Nx
nxnodes

View File

@ -6,23 +6,16 @@ codes or calling LAMMPS as a library. The examples are provided for
demonstration purposes. The physics they calculate is too simple to
model a realistic problem.
See these sections of the LAMMPS manaul for details:
In many of the examples included here, LAMMPS must first be built as a
library.
2.5 Building LAMMPS as a library (doc/Section_start.html#start_5)
6.10 Coupling LAMMPS to other codes (doc/Section_howto.html#howto_10)
6.29 Using LAMMPS in client/server mode (doc/Section_howto.html#howto_29)
See these sections of the LAMMPS manual for details:
In all of the examples included here, LAMMPS must first be built as a
library. Basically, in the src dir you type one of
make mode=lib machine
make mode=shlib machine
to create the static library liblammps_machine.a or the shared library
liblammps_machine.so for your code to link against. A soft link
(liblammps.a or liblammps.so) is also created that points to the most
recently built static or shared library. Your code build can simply
use the soft link if you prefer.
Build LAMMPS as a library (doc/Build_basics.html)
Link LAMMPS as a library to another code (doc/Build_link.html)
Coupling LAMMPS to other codes (doc/Howto_couple.html)
Using LAMMPS in client/server mode (doc/Howto_client_server.html)
Library interface to LAMMPS (doc/Howto_library.html)
The library interface to LAMMPS is in src/library.cpp. Routines can
be easily added to this file so an external program can perform the
@ -36,10 +29,12 @@ simple simple example of driver code calling LAMMPS as a lib
multiple example of driver code calling multiple instances of LAMMPS
lammps_mc client/server coupling of Monte Carlo client
with LAMMPS server for energy evaluation
lammps_nwchem client/server coupling of LAMMPS client with
NWChem quantum DFT as server for quantum forces
lammps_quest MD with quantum forces, coupling to Quest DFT code
lammps_spparks grain-growth Monte Carlo with strain via MD,
coupling to SPPARKS kinetic MC code
lammps_vasp client/server coupling of LAMMPS client with
lammps_vasp client/server coupling of LAMMPS client with
VASP quantum DFT as server for quantum forces
library collection of useful inter-code communication routines
fortran a simple wrapper on the LAMMPS library API that

View File

@ -0,0 +1,197 @@
Sample LAMMPS MD wrapper on NWChem via client/server coupling
See the MESSAGE package (doc/Section_messages.html#MESSAGE) and
Section_howto.html#howto10 for more details on how client/server
coupling works in LAMMPS.
In this dir, the nwchem_wrap.py is a wrapper on the NWChem electronic
structure code so it can work as a "server" code which LAMMPS drives
as a "client" code to perform ab initio MD. LAMMPS performs the MD
timestepping, sends NWChem a current set of coordinates each timestep,
NWChem computes forces and energy (and virial) and returns that info
to LAMMPS.
Messages are exchanged between NWChem and LAMMPS via a client/server
library (CSlib), which is included in the LAMMPS distribution in
lib/message. As explained below you can choose to exchange data
between the two programs either via files or sockets (ZMQ). If the
nwchem_wrap.py program became parallel, or the CSlib library calls were
integrated into NWChem directly, then data could also be exchanged via
MPI.
There are 2 examples provided in the planeware and ao_basis
sub-directories. See details below.
----------------
Build LAMMPS with its MESSAGE package installed:
See the Build extras doc page and its MESSAGE package
section for details.
CMake:
-D PKG_MESSAGE=yes # include the MESSAGE package
-D MESSAGE_ZMQ=value # build with ZeroMQ support, value = no (default) or yes
Traditional make:
cd lammps/lib/message
python Install.py -m -z # build CSlib with MPI and ZMQ support
cd lammps/src
make yes-message
make mpi
You can leave off the -z if you do not have ZMQ on your system.
----------------
Build the CSlib in a form usable by the nwchem_wrapper.py script:
% cd lammps/lib/message/cslib/src
% make shlib # build serial and parallel shared lib with ZMQ support
% make shlib zmq=no # build serial and parallel shared lib w/out ZMQ support
This will make a shared library versions of the CSlib, which Python
requires. Python must be able to find both the cslib.py script and
the libcsnompi.so library in your lammps/lib/message/cslib/src
directory. If it is not able to do this, you will get an error when
you run nwchem_wrapper.py.
You can do this by augmenting two environment variables, either from
the command line, or in your shell start-up script. Here is the
sample syntax for the csh or tcsh shells:
setenv PYTHONPATH ${PYTHONPATH}:/home/sjplimp/lammps/lib/message/cslib/src
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:/home/sjplimp/lammps/lib/message/cslib/src
----------------
Prepare to use NWChem and the nwchem_wrap.py script
You can run the nwchem_wrap.py script as-is to test that the coupling
between it and LAMMPS is functional. This will use the included
nwchem_lammps.out files output by a previous NWChem run.
But note that the as-is version of nwchem_wrap.py will not attempt to
run NWChem.
To do this, you must edit the 1st nwchemcmd line at the top of
nwchem_wrapper.py to be the launch command needed to run NWChem on
your system. It can be a command to run NWChem in serial or in
parallel, e.g. an mpirun command. Then comment out the 2nd nwchemcmd
line immediately following it.
Ensure you have the necessary NWChem input file in this directory,
suitable for the NWChem calculation you want to perform.
Example input files are provided for both atom-centered AO basis sets
and plane-wave basis sets. Note that the NWChem template file should
be matched to the LAMMPS input script (# of atoms and atom types, box
size, etc).
Once you run NWChem yourself, the nwchem_lammps.out file will be
overwritten.
The syntax of the wrapper is:
nwchem_wrap.py file/zmq ao/pw input_template
* file/zmg = messaging mode, must match LAMMPS messaging mode
* ao/pw = basis set mode, selects between atom-centered and plane-wave
the input_template file must correspond to the appropriate basis set mode:
the "ao" mode supports the scf and dft modules in NWChem,
the "pw" mode supports the nwpw module.
* input_template = NWChem input file used as template, must include a
"geometry" block with the atoms in the simulation, dummy
xyz coordinates should be included (but are not used).
Atom ordering must match LAMMPS input.
During a simulation, the molecular orbitals from the previous timestep
will be used as the initial guess for the next NWChem calculation. If
a file named "nwchem_lammps.movecs" is in the directory the wrapper is
called from, these orbitals will be used as the initial guess orbitals
in the first step of the simulation.
----------------
Example directories
(1) planewave
Demonstrates coupling of the nwpw module in NWChem with LAMMPS. Only fully
periodic boundary conditions and orthogonal simulation boxes are currently
supported by the wrapper. The included files provide an example run using a
2 atom unit cell of tungsten.
Files:
* data.W LAMMPS input with geometry information
* in.client.W LAMMPS simulation input
* log.client.output LAMMPS simulation output
* w.nw NWChem template input file
* nwchem_lammps.out NWChem output
(2) ao_basis
Demonstrates coupling of the scf (or dft) modules in NWChem with
LAMMPS. Only fully aperiodic boundary conditions are currently
supported by the wrapper. The included files provide an example run
using a single water molecule.
Files:
* data.h2o LAMMPS input with geometry information
* in.client.h2o LAMMPS simulation input
* log.client.output LAMMPS simulation output
* h2o.nw NWChem template input file
* nwchem_lammps.out NWChem output
As noted above, you can run the nwchem_wrap.py script as-is to test that
the coupling between it and LAMMPS is functional. This will use the included
nwchem_lammps.out files.
----------------
To run in client/server mode:
NOTE: The nwchem_wrap.py script must be run with Python version 2, not
3. This is because it used the CSlib python wrapper, which only
supports version 2. We plan to upgrade CSlib to support Python 3.
Both the client (LAMMPS) and server (nwchem_wrap.py) must use the same
messaging mode, namely file or zmq. This is an argument to the
nwchem_wrap.py code; it can be selected by setting the "mode" variable
when you run LAMMPS. The default mode = file.
Here we assume LAMMPS was built to run in parallel, and the MESSAGE
package was installed with socket (ZMQ) support. This means either of
the messaging modes can be used and LAMMPS can be run in serial or
parallel. The nwchem_wrap.py code is always run in serial, but it
launches NWChem from Python via an mpirun command which can run NWChem
itself in parallel.
When you run, the server should print out thermodynamic info every
timestep which corresponds to the forces and virial computed by NWChem.
NWChem will also generate output files each timestep. Output files from
previous timesteps are archived in a "nwchem_logs" directory.
The examples below are commands you should use in two different
terminal windows. The order of the two commands (client or server
launch) does not matter. You can run them both in the same window if
you append a "&" character to the first one to run it in the
background.
--------------
File mode of messaging:
% mpirun -np 1 lmp_mpi -v mode file < in.client.W
% python nwchem_wrap.py file pw w.nw
% mpirun -np 2 lmp_mpi -v mode file < in.client.h2o
% python nwchem_wrap.py file ao h2o.nw
ZMQ mode of messaging:
% mpirun -np 1 lmp_mpi -v mode zmq < in.client.W
% python nwchem_wrap.py zmq pw w.nw
% mpirun -np 2 lmp_mpi -v mode zmq < in.client.h2o
% python nwchem_wrap.py zmq ao h2o.nw

View File

@ -0,0 +1,20 @@
LAMMPS H2O data file
3 atoms
2 atom types
-10.0 10.0 xlo xhi
-10.0 10.0 ylo yhi
-10.0 10.0 zlo zhi
Masses
1 15.994915008544922
2 1.0078250169754028
Atoms
1 1 0.0 0.0 0.0
2 2 0.0 0.756723 -0.585799
3 2 0.0 -0.756723 -0.585799

View File

@ -0,0 +1,25 @@
echo
memory global 40 mb stack 23 mb heap 5 mb
geometry units angstrom noautosym
O 0.0 0.0 0.0
H 1.0 0.5 0.0
H -1.0 0.5 0.0
end
basis
O library 6-31g*
H library 6-31g*
end
scf
maxiter 100
end
#dft
# xc b3lyp
#end
task scf gradient
#task dft gradient

View File

@ -0,0 +1,27 @@
# H2O with NWChem
variable mode index file
if "${mode} == file" then &
"message client md file tmp.couple" &
elif "${mode} == zmq" &
"message client md zmq localhost:5555" &
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
boundary m m m
read_data data.h2o
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3

View File

@ -0,0 +1,30 @@
# H2O with NWChem
variable mode index file
if "${mode} == file" then &
"message client md file tmp.couple" &
elif "${mode} == zmq" &
"message client md zmq localhost:5555" &
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
boundary m m m
read_data data.h2o
group one id 2
displace_atoms one move 0.1 0.2 0.3
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
minimize 1.0e-6 1.0e-6 10 50

View File

@ -0,0 +1,66 @@
LAMMPS (19 Sep 2019)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:93)
using 1 OpenMP thread(s) per MPI task
# H2O with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
boundary m m m
read_data data.h2o
orthogonal box = (-10 -10 -10) to (10 10 10)
1 by 1 by 1 MPI processor grid
reading atoms ...
3 atoms
read_data CPU = 0.000627125 secs
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:166)
Per MPI rank memory allocation (min/avg/max) = 0.0276 | 0.0276 | 0.0276 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 300 0 0 0.077556087 10.354878 8000
1 300 0 0 0.077556087 10.354878 8000
2 300 0 0 0.077556087 10.354878 8000
3 300 0 0 0.077556087 10.354878 8000
Loop time of 0.30198 on 1 procs for 3 steps with 3 atoms
Performance: 0.858 ns/day, 27.961 hours/ns, 9.934 timesteps/s
0.0% CPU use with 1 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
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 2.5979e-06 | 2.5979e-06 | 2.5979e-06 | 0.0 | 0.00
Output | 0.00012053 | 0.00012053 | 0.00012053 | 0.0 | 0.04
Modify | 0.30185 | 0.30185 | 0.30185 | 0.0 | 99.96
Other | | 8.211e-06 | | | 0.00
Nlocal: 3 ave 3 max 3 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 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
Neighbor list builds = 0
Dangerous builds not checked
Total wall time: 0:00:07

View File

@ -0,0 +1,66 @@
LAMMPS (19 Sep 2019)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:93)
using 1 OpenMP thread(s) per MPI task
# H2O with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
boundary m m m
read_data data.h2o
orthogonal box = (-10 -10 -10) to (10 10 10)
1 by 1 by 1 MPI processor grid
reading atoms ...
3 atoms
read_data CPU = 0.000608759 secs
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:166)
Per MPI rank memory allocation (min/avg/max) = 0.0276 | 0.0276 | 0.0276 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 300 0 0 -2068.2746 10.354878 8000
1 200.33191 0 0 -2068.2704 6.9147085 8000
2 152.36218 0 0 -2068.269 5.2589726 8000
3 227.40679 0 0 -2068.2722 7.8492321 8000
Loop time of 1.90319 on 1 procs for 3 steps with 3 atoms
Performance: 0.136 ns/day, 176.221 hours/ns, 1.576 timesteps/s
0.0% CPU use with 1 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
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 3.9274e-06 | 3.9274e-06 | 3.9274e-06 | 0.0 | 0.00
Output | 0.00011798 | 0.00011798 | 0.00011798 | 0.0 | 0.01
Modify | 1.9031 | 1.9031 | 1.9031 | 0.0 | 99.99
Other | | 1.054e-05 | | | 0.00
Nlocal: 3 ave 3 max 3 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 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
Neighbor list builds = 0
Dangerous builds not checked
Total wall time: 0:00:07

View File

@ -0,0 +1,82 @@
LAMMPS (19 Sep 2019)
OMP_NUM_THREADS environment is not set. Defaulting to 1 thread. (src/comm.cpp:93)
using 1 OpenMP thread(s) per MPI task
# H2O with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
boundary m m m
read_data data.h2o
orthogonal box = (-10 -10 -10) to (10 10 10)
1 by 1 by 1 MPI processor grid
reading atoms ...
3 atoms
read_data CPU = 0.000615383 secs
group one id 2
1 atoms in group one
displace_atoms one move 0.1 0.2 0.3
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
minimize 1.0e-6 1.0e-6 10 50
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (src/min.cpp:174)
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:166)
Per MPI rank memory allocation (min/avg/max) = 0.0279 | 0.0279 | 0.0279 Mbytes
Step Temp E_pair E_mol TotEng Press Volume
0 300 0 0 -2067.8909 10.354878 8000
1 300 0 0 -2068.0707 10.354878 8000
2 300 0 0 -2068.252 10.354878 8000
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:166)
3 300 0 0 -2068.2797 10.354878 8000
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (src/comm_brick.cpp:166)
4 300 0 0 -2068.2799 10.354878 8000
Loop time of 5.71024 on 1 procs for 4 steps with 3 atoms
0.1% CPU use with 1 MPI tasks x 1 OpenMP threads
Minimization stats:
Stopping criterion = energy tolerance
Energy initial, next-to-last, final =
-2067.96847053 -2068.35730416 -2068.35745184
Force two-norm initial, final = 4.54685 0.124714
Force max component initial, final = 3.48924 0.0859263
Final line search alpha, max atom move = 1 0.0859263
Iterations, force evaluations = 4 8
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 6.2305e-07 | 6.2305e-07 | 6.2305e-07 | 0.0 | 0.00
Comm | 1.1522e-05 | 1.1522e-05 | 1.1522e-05 | 0.0 | 0.00
Output | 8.4217e-05 | 8.4217e-05 | 8.4217e-05 | 0.0 | 0.00
Modify | 5.7099 | 5.7099 | 5.7099 | 0.0 | 99.99
Other | | 0.0002355 | | | 0.00
Nlocal: 3 ave 3 max 3 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 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
Neighbor list builds = 2
Dangerous builds not checked
Total wall time: 0:00:10

View File

@ -0,0 +1,626 @@
argument 1 = nwchem_lammps.nw
============================== echo of input deck ==============================
echo
memory global 40 mb stack 23 mb heap 5 mb
geometry units angstrom noautosym nocenter
O 0.00197082 0.0012463 -0.00298048
H -0.0432066 0.769363 -0.596119
H 0.0119282 -0.789143 -0.528177
end
scf
vectors input nwchem_lammps.movecs
end
dft
vectors input nwchem_lammps.movecs
end
basis
O library 6-31g*
H library 6-31g*
end
scf
maxiter 100
end
#dft
# xc b3lyp
#end
task scf gradient
#task dft gradient
================================================================================
Northwest Computational Chemistry Package (NWChem) 6.8
------------------------------------------------------
Environmental Molecular Sciences Laboratory
Pacific Northwest National Laboratory
Richland, WA 99352
Copyright (c) 1994-2018
Pacific Northwest National Laboratory
Battelle Memorial Institute
NWChem is an open-source computational chemistry package
distributed under the terms of the
Educational Community License (ECL) 2.0
A copy of the license is included with this distribution
in the LICENSE.TXT file
ACKNOWLEDGMENT
--------------
This software and its documentation were developed at the
EMSL at Pacific Northwest National Laboratory, a multiprogram
national laboratory, operated for the U.S. Department of Energy
by Battelle under Contract Number DE-AC05-76RL01830. Support
for this work was provided by the Department of Energy Office
of Biological and Environmental Research, Office of Basic
Energy Sciences, and the Office of Advanced Scientific Computing.
Job information
---------------
hostname = almondjoy
program = /home/jboschen/nwchem-6.8.1-release/bin/LINUX64/nwchem
date = Fri Jan 31 00:31:00 2020
compiled = Tue_Oct_01_13:20:43_2019
source = /home/jboschen/nwchem-6.8.1-release
nwchem branch = Development
nwchem revision = N/A
ga revision = 5.6.5
use scalapack = F
input = nwchem_lammps.nw
prefix = nwchem_lammps.
data base = ./nwchem_lammps.db
status = restart
nproc = 1
time left = -1s
Memory information
------------------
heap = 655358 doubles = 5.0 Mbytes
stack = 3014651 doubles = 23.0 Mbytes
global = 5242880 doubles = 40.0 Mbytes (distinct from heap & stack)
total = 8912889 doubles = 68.0 Mbytes
verify = yes
hardfail = no
Directory information
---------------------
0 permanent = .
0 scratch = .
Previous task information
-------------------------
Theory = scf
Operation = gradient
Status = ok
Qmmm = F
Ignore = F
Geometries in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 geometry 3 Fri Jan 31 00:30:59 2020
The geometry named "geometry" is the default for restart
Basis sets in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 ao basis 2 Fri Jan 31 00:30:59 2020
The basis set named "ao basis" is the default AO basis for restart
NWChem Input Module
-------------------
Scaling coordinates for geometry "geometry" by 1.889725989
(inverse scale = 0.529177249)
------
auto-z
------
no constraints, skipping 0.0000000000000000
no constraints, skipping 0.0000000000000000
Geometry "geometry" -> ""
-------------------------
Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.)
No. Tag Charge X Y Z
---- ---------------- ---------- -------------- -------------- --------------
1 O 8.0000 0.00197082 0.00124630 -0.00298048
2 H 1.0000 -0.04320660 0.76936300 -0.59611900
3 H 1.0000 0.01192820 -0.78914300 -0.52817700
Atomic Mass
-----------
O 15.994910
H 1.007825
Effective nuclear repulsion energy (a.u.) 9.1573270473
Nuclear Dipole moment (a.u.)
----------------------------
X Y Z
---------------- ---------------- ----------------
-0.0293131272 -0.0185374561 -2.1696696942
Z-matrix (autoz)
--------
Units are Angstrom for bonds and degrees for angles
Type Name I J K L M Value
----------- -------- ----- ----- ----- ----- ----- ----------
1 Stretch 1 2 0.97152
2 Stretch 1 3 0.94902
3 Bend 2 1 3 108.72901
XYZ format geometry
-------------------
3
geometry
O 0.00197082 0.00124630 -0.00298048
H -0.04320660 0.76936300 -0.59611900
H 0.01192820 -0.78914300 -0.52817700
==============================================================================
internuclear distances
------------------------------------------------------------------------------
center one | center two | atomic units | angstroms
------------------------------------------------------------------------------
2 H | 1 O | 1.83591 | 0.97152
3 H | 1 O | 1.79339 | 0.94902
------------------------------------------------------------------------------
number of included internuclear distances: 2
==============================================================================
==============================================================================
internuclear angles
------------------------------------------------------------------------------
center 1 | center 2 | center 3 | degrees
------------------------------------------------------------------------------
2 H | 1 O | 3 H | 108.73
------------------------------------------------------------------------------
number of included internuclear angles: 1
==============================================================================
Basis "ao basis" -> "" (cartesian)
-----
O (Oxygen)
----------
Exponent Coefficients
-------------- ---------------------------------------------------------
1 S 5.48467170E+03 0.001831
1 S 8.25234950E+02 0.013950
1 S 1.88046960E+02 0.068445
1 S 5.29645000E+01 0.232714
1 S 1.68975700E+01 0.470193
1 S 5.79963530E+00 0.358521
2 S 1.55396160E+01 -0.110778
2 S 3.59993360E+00 -0.148026
2 S 1.01376180E+00 1.130767
3 P 1.55396160E+01 0.070874
3 P 3.59993360E+00 0.339753
3 P 1.01376180E+00 0.727159
4 S 2.70005800E-01 1.000000
5 P 2.70005800E-01 1.000000
6 D 8.00000000E-01 1.000000
H (Hydrogen)
------------
Exponent Coefficients
-------------- ---------------------------------------------------------
1 S 1.87311370E+01 0.033495
1 S 2.82539370E+00 0.234727
1 S 6.40121700E-01 0.813757
2 S 1.61277800E-01 1.000000
Summary of "ao basis" -> "" (cartesian)
------------------------------------------------------------------------------
Tag Description Shells Functions and Types
---------------- ------------------------------ ------ ---------------------
O 6-31g* 6 15 3s2p1d
H 6-31g* 2 2 2s
NWChem SCF Module
-----------------
ao basis = "ao basis"
functions = 19
atoms = 3
closed shells = 5
open shells = 0
charge = 0.00
wavefunction = RHF
input vectors = ./nwchem_lammps.movecs
output vectors = ./nwchem_lammps.movecs
use symmetry = F
symmetry adapt = F
Summary of "ao basis" -> "ao basis" (cartesian)
------------------------------------------------------------------------------
Tag Description Shells Functions and Types
---------------- ------------------------------ ------ ---------------------
O 6-31g* 6 15 3s2p1d
H 6-31g* 2 2 2s
Forming initial guess at 0.0s
Loading old vectors from job with title :
Starting SCF solution at 0.0s
----------------------------------------------
Quadratically convergent ROHF
Convergence threshold : 1.000E-04
Maximum no. of iterations : 100
Final Fock-matrix accuracy: 1.000E-07
----------------------------------------------
#quartets = 1.540D+03 #integrals = 1.424D+04 #direct = 0.0% #cached =100.0%
Integral file = ./nwchem_lammps.aoints.0
Record size in doubles = 65536 No. of integs per rec = 43688
Max. records in memory = 2 Max. records in file = 1392051
No. of bits per label = 8 No. of bits per value = 64
iter energy gnorm gmax time
----- ------------------- --------- --------- --------
1 -76.0095751323 4.63D-02 1.64D-02 0.1
2 -76.0097628164 8.13D-04 2.83D-04 0.1
3 -76.0097629130 3.92D-06 1.55D-06 0.1
Final RHF results
------------------
Total SCF energy = -76.009762913030
One-electron energy = -123.002897732381
Two-electron energy = 37.835807772101
Nuclear repulsion energy = 9.157327047250
Time for solution = 0.0s
Final eigenvalues
-----------------
1
1 -20.5584
2 -1.3367
3 -0.7128
4 -0.5617
5 -0.4959
6 0.2104
7 0.3038
8 1.0409
9 1.1202
10 1.1606
11 1.1691
12 1.3840
13 1.4192
14 2.0312
15 2.0334
ROHF Final Molecular Orbital Analysis
-------------------------------------
Vector 2 Occ=2.000000D+00 E=-1.336749D+00
MO Center= -2.8D-03, -1.3D-02, -1.7D-01, r^2= 5.1D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
2 0.476636 1 O s 6 0.442369 1 O s
1 -0.210214 1 O s
Vector 3 Occ=2.000000D+00 E=-7.127948D-01
MO Center= -4.9D-03, 3.9D-03, -2.1D-01, r^2= 7.8D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
4 0.504894 1 O py 8 0.303932 1 O py
18 -0.234724 3 H s 16 0.229765 2 H s
Vector 4 Occ=2.000000D+00 E=-5.617306D-01
MO Center= 3.6D-03, 9.0D-03, 5.6D-02, r^2= 6.9D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
5 0.559565 1 O pz 9 0.410981 1 O pz
6 0.315892 1 O s 2 0.157960 1 O s
Vector 5 Occ=2.000000D+00 E=-4.959173D-01
MO Center= 1.4D-03, 6.9D-05, -2.2D-02, r^2= 6.0D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
3 0.638390 1 O px 7 0.511530 1 O px
Vector 6 Occ=0.000000D+00 E= 2.103822D-01
MO Center= -2.3D-02, 3.5D-02, -7.3D-01, r^2= 2.6D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 1.416869 1 O s 17 -1.068330 2 H s
19 -1.014775 3 H s 9 -0.490951 1 O pz
5 -0.212990 1 O pz
Vector 7 Occ=0.000000D+00 E= 3.037943D-01
MO Center= -1.8D-02, -8.9D-02, -7.1D-01, r^2= 2.8D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
19 -1.426837 3 H s 17 1.332767 2 H s
8 -0.842141 1 O py 4 -0.327553 1 O py
Vector 8 Occ=0.000000D+00 E= 1.040852D+00
MO Center= -7.4D-03, 1.3D-01, -1.6D-01, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
16 0.931594 2 H s 18 -0.747590 3 H s
8 -0.655817 1 O py 17 -0.523035 2 H s
19 0.366407 3 H s 14 -0.357109 1 O dyz
Vector 9 Occ=0.000000D+00 E= 1.120172D+00
MO Center= -6.8D-03, -2.9D-02, -3.1D-01, r^2= 1.5D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 1.145090 1 O s 18 0.841596 3 H s
2 -0.727471 1 O s 16 0.684927 2 H s
9 0.559191 1 O pz 19 -0.546678 3 H s
17 -0.538778 2 H s 10 -0.344609 1 O dxx
15 -0.250035 1 O dzz
Vector 10 Occ=0.000000D+00 E= 1.160603D+00
MO Center= 1.2D-02, -4.3D-02, 2.5D-01, r^2= 1.0D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 1.137949 1 O s 5 -0.844233 1 O pz
9 0.595088 1 O pz 2 -0.475986 1 O s
18 -0.455932 3 H s 16 -0.357325 2 H s
13 -0.317117 1 O dyy 15 -0.196968 1 O dzz
Vector 11 Occ=0.000000D+00 E= 1.169054D+00
MO Center= 1.9D-03, 1.2D-03, -6.4D-03, r^2= 1.1D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
7 -1.034653 1 O px 3 0.962043 1 O px
Vector 12 Occ=0.000000D+00 E= 1.384034D+00
MO Center= 6.0D-04, -2.6D-03, -5.0D-02, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
8 1.557767 1 O py 4 -1.035829 1 O py
17 -0.900920 2 H s 19 0.901756 3 H s
Vector 13 Occ=0.000000D+00 E= 1.419205D+00
MO Center= -1.3D-02, -4.9D-02, -5.2D-01, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 3.605136 1 O s 2 -1.454853 1 O s
9 -1.107532 1 O pz 19 -0.874208 3 H s
17 -0.757016 2 H s 13 -0.634436 1 O dyy
5 0.516593 1 O pz 15 -0.401100 1 O dzz
10 -0.319873 1 O dxx 16 -0.260650 2 H s
Vector 14 Occ=0.000000D+00 E= 2.031234D+00
MO Center= 1.9D-03, 2.3D-03, -3.0D-03, r^2= 6.1D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
11 1.727083 1 O dxy
Vector 15 Occ=0.000000D+00 E= 2.033369D+00
MO Center= 3.4D-03, 3.4D-03, 4.3D-02, r^2= 6.2D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
15 1.012642 1 O dzz 13 -0.512441 1 O dyy
10 -0.438481 1 O dxx 6 -0.226567 1 O s
center of mass
--------------
x = -0.00000001 y = -0.00000003 z = -0.12388979
moments of inertia (a.u.)
------------------
6.378705068992 0.153373998471 -0.069687034145
0.153373998471 2.014476065716 0.150739744400
-0.069687034145 0.150739744400 4.379134195179
Mulliken analysis of the total density
--------------------------------------
Atom Charge Shell Charges
----------- ------ -------------------------------------------------------
1 O 8 8.87 2.00 0.90 2.90 0.92 2.08 0.08
2 H 1 0.56 0.46 0.11
3 H 1 0.56 0.47 0.10
Multipole analysis of the density wrt the origin
------------------------------------------------
L x y z total open nuclear
- - - - ----- ---- -------
0 0 0 0 -0.000000 0.000000 10.000000
1 1 0 0 -0.026417 0.000000 -0.029313
1 0 1 0 -0.023604 0.000000 -0.018537
1 0 0 1 -0.846090 0.000000 -2.169670
2 2 0 0 -5.373227 0.000000 0.007286
2 1 1 0 -0.085617 0.000000 -0.152252
2 1 0 1 0.038215 0.000000 0.069311
2 0 2 0 -2.927589 0.000000 4.337695
2 0 1 1 -0.071410 0.000000 -0.149465
2 0 0 2 -4.159949 0.000000 2.265483
Parallel integral file used 1 records with 0 large values
NWChem Gradients Module
-----------------------
wavefunction = RHF
RHF ENERGY GRADIENTS
atom coordinates gradient
x y z x y z
1 O 0.003724 0.002355 -0.005632 0.000909 -0.019294 0.007866
2 H -0.081649 1.453885 -1.126502 -0.001242 0.025549 -0.011605
3 H 0.022541 -1.491264 -0.998110 0.000333 -0.006255 0.003739
----------------------------------------
| Time | 1-e(secs) | 2-e(secs) |
----------------------------------------
| CPU | 0.00 | 0.03 |
----------------------------------------
| WALL | 0.00 | 0.03 |
----------------------------------------
Task times cpu: 0.1s wall: 0.1s
NWChem Input Module
-------------------
Summary of allocated global arrays
-----------------------------------
No active global arrays
GA Statistics for process 0
------------------------------
create destroy get put acc scatter gather read&inc
calls: 182 182 2869 728 468 0 0 68
number of processes/call 1.00e+00 1.00e+00 1.00e+00 0.00e+00 0.00e+00
bytes total: 6.18e+05 3.56e+05 1.04e+05 0.00e+00 0.00e+00 5.44e+02
bytes remote: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
Max memory consumed for GA by this process: 39432 bytes
MA_summarize_allocated_blocks: starting scan ...
MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks
MA usage statistics:
allocation statistics:
heap stack
---- -----
current number of blocks 0 0
maximum number of blocks 18 28
current total bytes 0 0
maximum total bytes 1060104 16000888
maximum total K-bytes 1061 16001
maximum total M-bytes 2 17
CITATION
--------
Please cite the following reference when publishing
results obtained with NWChem:
M. Valiev, E.J. Bylaska, N. Govind, K. Kowalski,
T.P. Straatsma, H.J.J. van Dam, D. Wang, J. Nieplocha,
E. Apra, T.L. Windus, W.A. de Jong
"NWChem: a comprehensive and scalable open-source
solution for large scale molecular simulations"
Comput. Phys. Commun. 181, 1477 (2010)
doi:10.1016/j.cpc.2010.04.018
AUTHORS
-------
E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski,
T. P. Straatsma, M. Valiev, H. J. J. van Dam, D. Wang, T. L. Windus,
J. Hammond, J. Autschbach, K. Bhaskaran-Nair, J. Brabec, K. Lopata,
S. A. Fischer, S. Krishnamoorthy, M. Jacquelin, W. Ma, M. Klemm, O. Villa,
Y. Chen, V. Anisimov, F. Aquino, S. Hirata, M. T. Hackler, V. Konjkov,
D. Mejia-Rodriguez, T. Risthaus, M. Malagoli, A. Marenich,
A. Otero-de-la-Roza, J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao,
P.-D. Fan, A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr,
M. Dupuis, D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju,
M. Krishnan, B. E. Van Kuiken, A. Vazquez-Mayagoitia, L. Jensen, M. Swart,
Q. Wu, T. Van Voorhis, A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown,
G. Cisneros, G. I. Fann, H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall,
J. A. Nichols, K. Tsemekhman, K. Wolinski, J. Anchell, D. E. Bernholdt,
P. Borowski, T. Clark, D. Clerc, H. Dachsel, M. J. O. Deegan, K. Dyall,
D. Elwood, E. Glendening, M. Gutowski, A. C. Hess, J. Jaffe, B. G. Johnson,
J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, R. Littlefield, X. Long, B. Meng,
T. Nakajima, S. Niu, L. Pollack, M. Rosing, K. Glaesemann, G. Sandrone,
M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, A. T. Wong, Z. Zhang.
Total times cpu: 0.1s wall: 0.2s

View File

@ -0,0 +1,626 @@
argument 1 = nwchem_lammps.nw
============================== echo of input deck ==============================
echo
memory global 40 mb stack 23 mb heap 5 mb
geometry units angstrom noautosym nocenter
O -0.00836667 0.0010006 0.0866404
H 0.0968795 0.837453 -0.346117
H 0.0114839 -0.638453 -0.612122
end
scf
vectors input nwchem_lammps.movecs
end
dft
vectors input nwchem_lammps.movecs
end
basis
O library 6-31g*
H library 6-31g*
end
scf
maxiter 100
end
#dft
# xc b3lyp
#end
task scf gradient
#task dft gradient
================================================================================
Northwest Computational Chemistry Package (NWChem) 6.8
------------------------------------------------------
Environmental Molecular Sciences Laboratory
Pacific Northwest National Laboratory
Richland, WA 99352
Copyright (c) 1994-2018
Pacific Northwest National Laboratory
Battelle Memorial Institute
NWChem is an open-source computational chemistry package
distributed under the terms of the
Educational Community License (ECL) 2.0
A copy of the license is included with this distribution
in the LICENSE.TXT file
ACKNOWLEDGMENT
--------------
This software and its documentation were developed at the
EMSL at Pacific Northwest National Laboratory, a multiprogram
national laboratory, operated for the U.S. Department of Energy
by Battelle under Contract Number DE-AC05-76RL01830. Support
for this work was provided by the Department of Energy Office
of Biological and Environmental Research, Office of Basic
Energy Sciences, and the Office of Advanced Scientific Computing.
Job information
---------------
hostname = almondjoy
program = /home/jboschen/nwchem-6.8.1-release/bin/LINUX64/nwchem
date = Fri Jan 31 00:33:40 2020
compiled = Tue_Oct_01_13:20:43_2019
source = /home/jboschen/nwchem-6.8.1-release
nwchem branch = Development
nwchem revision = N/A
ga revision = 5.6.5
use scalapack = F
input = nwchem_lammps.nw
prefix = nwchem_lammps.
data base = ./nwchem_lammps.db
status = restart
nproc = 1
time left = -1s
Memory information
------------------
heap = 655358 doubles = 5.0 Mbytes
stack = 3014651 doubles = 23.0 Mbytes
global = 5242880 doubles = 40.0 Mbytes (distinct from heap & stack)
total = 8912889 doubles = 68.0 Mbytes
verify = yes
hardfail = no
Directory information
---------------------
0 permanent = .
0 scratch = .
Previous task information
-------------------------
Theory = scf
Operation = gradient
Status = ok
Qmmm = F
Ignore = F
Geometries in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 geometry 3 Fri Jan 31 00:33:40 2020
The geometry named "geometry" is the default for restart
Basis sets in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 ao basis 2 Fri Jan 31 00:33:40 2020
The basis set named "ao basis" is the default AO basis for restart
NWChem Input Module
-------------------
Scaling coordinates for geometry "geometry" by 1.889725989
(inverse scale = 0.529177249)
------
auto-z
------
no constraints, skipping 0.0000000000000000
no constraints, skipping 0.0000000000000000
Geometry "geometry" -> ""
-------------------------
Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.)
No. Tag Charge X Y Z
---- ---------------- ---------- -------------- -------------- --------------
1 O 8.0000 -0.00836667 0.00100060 0.08664040
2 H 1.0000 0.09687950 0.83745300 -0.34611700
3 H 1.0000 0.01148390 -0.63845300 -0.61212200
Atomic Mass
-----------
O 15.994910
H 1.007825
Effective nuclear repulsion energy (a.u.) 9.2881144400
Nuclear Dipole moment (a.u.)
----------------------------
X Y Z
---------------- ---------------- ----------------
0.0782914233 0.3911823503 -0.5009962172
Z-matrix (autoz)
--------
Units are Angstrom for bonds and degrees for angles
Type Name I J K L M Value
----------- -------- ----- ----- ----- ----- ----- ----------
1 Stretch 1 2 0.94763
2 Stretch 1 3 0.94740
3 Bend 2 1 3 104.86952
XYZ format geometry
-------------------
3
geometry
O -0.00836667 0.00100060 0.08664040
H 0.09687950 0.83745300 -0.34611700
H 0.01148390 -0.63845300 -0.61212200
==============================================================================
internuclear distances
------------------------------------------------------------------------------
center one | center two | atomic units | angstroms
------------------------------------------------------------------------------
2 H | 1 O | 1.79077 | 0.94763
3 H | 1 O | 1.79032 | 0.94740
------------------------------------------------------------------------------
number of included internuclear distances: 2
==============================================================================
==============================================================================
internuclear angles
------------------------------------------------------------------------------
center 1 | center 2 | center 3 | degrees
------------------------------------------------------------------------------
2 H | 1 O | 3 H | 104.87
------------------------------------------------------------------------------
number of included internuclear angles: 1
==============================================================================
Basis "ao basis" -> "" (cartesian)
-----
O (Oxygen)
----------
Exponent Coefficients
-------------- ---------------------------------------------------------
1 S 5.48467170E+03 0.001831
1 S 8.25234950E+02 0.013950
1 S 1.88046960E+02 0.068445
1 S 5.29645000E+01 0.232714
1 S 1.68975700E+01 0.470193
1 S 5.79963530E+00 0.358521
2 S 1.55396160E+01 -0.110778
2 S 3.59993360E+00 -0.148026
2 S 1.01376180E+00 1.130767
3 P 1.55396160E+01 0.070874
3 P 3.59993360E+00 0.339753
3 P 1.01376180E+00 0.727159
4 S 2.70005800E-01 1.000000
5 P 2.70005800E-01 1.000000
6 D 8.00000000E-01 1.000000
H (Hydrogen)
------------
Exponent Coefficients
-------------- ---------------------------------------------------------
1 S 1.87311370E+01 0.033495
1 S 2.82539370E+00 0.234727
1 S 6.40121700E-01 0.813757
2 S 1.61277800E-01 1.000000
Summary of "ao basis" -> "" (cartesian)
------------------------------------------------------------------------------
Tag Description Shells Functions and Types
---------------- ------------------------------ ------ ---------------------
O 6-31g* 6 15 3s2p1d
H 6-31g* 2 2 2s
NWChem SCF Module
-----------------
ao basis = "ao basis"
functions = 19
atoms = 3
closed shells = 5
open shells = 0
charge = 0.00
wavefunction = RHF
input vectors = ./nwchem_lammps.movecs
output vectors = ./nwchem_lammps.movecs
use symmetry = F
symmetry adapt = F
Summary of "ao basis" -> "ao basis" (cartesian)
------------------------------------------------------------------------------
Tag Description Shells Functions and Types
---------------- ------------------------------ ------ ---------------------
O 6-31g* 6 15 3s2p1d
H 6-31g* 2 2 2s
Forming initial guess at 0.0s
Loading old vectors from job with title :
Starting SCF solution at 0.0s
----------------------------------------------
Quadratically convergent ROHF
Convergence threshold : 1.000E-04
Maximum no. of iterations : 100
Final Fock-matrix accuracy: 1.000E-07
----------------------------------------------
#quartets = 1.540D+03 #integrals = 1.424D+04 #direct = 0.0% #cached =100.0%
Integral file = ./nwchem_lammps.aoints.0
Record size in doubles = 65536 No. of integs per rec = 43688
Max. records in memory = 2 Max. records in file = 1392051
No. of bits per label = 8 No. of bits per value = 64
iter energy gnorm gmax time
----- ------------------- --------- --------- --------
1 -76.0107350035 4.75D-05 2.49D-05 0.1
Final RHF results
------------------
Total SCF energy = -76.010735003510
One-electron energy = -123.220958992568
Two-electron energy = 37.922109549024
Nuclear repulsion energy = 9.288114440035
Time for solution = 0.0s
Final eigenvalues
-----------------
1
1 -20.5583
2 -1.3466
3 -0.7130
4 -0.5721
5 -0.4985
6 0.2129
7 0.3068
8 1.0286
9 1.1338
10 1.1678
11 1.1807
12 1.3845
13 1.4334
14 2.0187
15 2.0311
ROHF Final Molecular Orbital Analysis
-------------------------------------
Vector 2 Occ=2.000000D+00 E=-1.346587D+00
MO Center= 1.1D-02, 3.1D-02, -8.5D-02, r^2= 5.0D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
2 0.475648 1 O s 6 0.435095 1 O s
1 -0.209463 1 O s
Vector 3 Occ=2.000000D+00 E=-7.129747D-01
MO Center= 1.5D-02, 3.8D-02, -1.3D-01, r^2= 7.6D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
4 0.500246 1 O py 8 0.299047 1 O py
16 0.232138 2 H s 18 -0.232195 3 H s
Vector 4 Occ=2.000000D+00 E=-5.720760D-01
MO Center= -1.5D-02, -9.7D-03, 1.5D-01, r^2= 6.8D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
5 0.545527 1 O pz 9 0.395332 1 O pz
6 0.326735 1 O s 2 0.164593 1 O s
Vector 5 Occ=2.000000D+00 E=-4.984552D-01
MO Center= -6.2D-03, 4.4D-03, 6.7D-02, r^2= 6.0D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
3 0.634559 1 O px 7 0.507891 1 O px
Vector 6 Occ=0.000000D+00 E= 2.128732D-01
MO Center= 7.5D-02, 1.3D-01, -6.6D-01, r^2= 2.6D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 1.437795 1 O s 17 -1.050892 2 H s
19 -1.050374 3 H s 9 -0.494696 1 O pz
5 -0.208359 1 O pz
Vector 7 Occ=0.000000D+00 E= 3.067764D-01
MO Center= 7.1D-02, 1.3D-01, -6.3D-01, r^2= 2.7D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
17 1.413885 2 H s 19 -1.414835 3 H s
8 -0.824411 1 O py 4 -0.320355 1 O py
Vector 8 Occ=0.000000D+00 E= 1.028607D+00
MO Center= 7.1D-03, 2.6D-02, -5.2D-02, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
16 0.839269 2 H s 18 -0.838060 3 H s
8 -0.692349 1 O py 17 -0.426291 2 H s
19 0.425092 3 H s 14 -0.319117 1 O dyz
Vector 9 Occ=0.000000D+00 E= 1.133833D+00
MO Center= -2.7D-02, -2.9D-02, 2.6D-01, r^2= 1.5D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 1.621086 1 O s 2 -0.910150 1 O s
9 0.744864 1 O pz 16 0.490586 2 H s
18 0.491102 3 H s 5 -0.484186 1 O pz
17 -0.426087 2 H s 19 -0.425823 3 H s
10 -0.375325 1 O dxx 15 -0.317874 1 O dzz
Vector 10 Occ=0.000000D+00 E= 1.167849D+00
MO Center= -8.0D-03, 1.6D-03, 8.3D-02, r^2= 1.1D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
7 -1.028149 1 O px 3 0.955686 1 O px
Vector 11 Occ=0.000000D+00 E= 1.180721D+00
MO Center= 1.8D-02, 4.2D-02, -1.5D-01, r^2= 1.1D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
16 0.710073 2 H s 18 0.711177 3 H s
5 0.704677 1 O pz 17 -0.389719 2 H s
19 -0.389376 3 H s 6 -0.326170 1 O s
9 -0.288739 1 O pz 13 0.229749 1 O dyy
Vector 12 Occ=0.000000D+00 E= 1.384514D+00
MO Center= -7.4D-04, 1.3D-02, 1.8D-02, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
8 1.510506 1 O py 4 -1.021750 1 O py
17 -0.934844 2 H s 19 0.935260 3 H s
9 0.272171 1 O pz 5 -0.184286 1 O pz
Vector 13 Occ=0.000000D+00 E= 1.433397D+00
MO Center= 4.7D-02, 8.7D-02, -4.1D-01, r^2= 1.4D+00
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
6 3.628985 1 O s 2 -1.436467 1 O s
9 -1.143870 1 O pz 17 -0.805578 2 H s
19 -0.806493 3 H s 13 -0.635948 1 O dyy
5 0.489050 1 O pz 15 -0.410417 1 O dzz
16 -0.312860 2 H s 18 -0.312722 3 H s
Vector 14 Occ=0.000000D+00 E= 2.018721D+00
MO Center= -1.4D-02, -7.1D-03, 1.3D-01, r^2= 6.2D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
15 0.947149 1 O dzz 14 -0.531399 1 O dyz
13 -0.526961 1 O dyy 10 -0.358371 1 O dxx
12 -0.297495 1 O dxz 6 -0.233087 1 O s
Vector 15 Occ=0.000000D+00 E= 2.031133D+00
MO Center= -8.4D-03, 1.0D-03, 8.7D-02, r^2= 6.1D-01
Bfn. Coefficient Atom+Function Bfn. Coefficient Atom+Function
----- ------------ --------------- ----- ------------ ---------------
11 1.681563 1 O dxy 12 0.314688 1 O dxz
center of mass
--------------
x = -0.00258245 y = 0.02272235 z = 0.04407491
moments of inertia (a.u.)
------------------
6.155330507195 -0.266185800841 0.185335033231
-0.266185800841 2.211585220634 -0.350250164177
0.185335033231 -0.350250164177 4.020009073007
Mulliken analysis of the total density
--------------------------------------
Atom Charge Shell Charges
----------- ------ -------------------------------------------------------
1 O 8 8.87 2.00 0.90 2.91 0.91 2.06 0.08
2 H 1 0.57 0.47 0.10
3 H 1 0.57 0.47 0.10
Multipole analysis of the density wrt the origin
------------------------------------------------
L x y z total open nuclear
- - - - ----- ---- -------
0 0 0 0 -0.000000 0.000000 10.000000
1 1 0 0 0.094145 0.000000 0.078291
1 0 1 0 0.148179 0.000000 0.391182
1 0 0 1 -0.851621 0.000000 -0.500996
2 2 0 0 -5.338111 0.000000 0.035987
2 1 1 0 0.149191 0.000000 0.263306
2 1 0 1 -0.084723 0.000000 -0.165556
2 0 2 0 -3.114464 0.000000 3.960160
2 0 1 1 0.205130 0.000000 0.362991
2 0 0 2 -4.329185 0.000000 1.980308
Parallel integral file used 1 records with 0 large values
NWChem Gradients Module
-----------------------
wavefunction = RHF
RHF ENERGY GRADIENTS
atom coordinates gradient
x y z x y z
1 O -0.015811 0.001891 0.163727 -0.000201 -0.000505 0.001671
2 H 0.183076 1.582557 -0.654066 0.000065 -0.000505 -0.001056
3 H 0.021701 -1.206501 -1.156743 0.000136 0.001011 -0.000616
----------------------------------------
| Time | 1-e(secs) | 2-e(secs) |
----------------------------------------
| CPU | 0.00 | 0.03 |
----------------------------------------
| WALL | 0.00 | 0.03 |
----------------------------------------
Task times cpu: 0.1s wall: 0.1s
NWChem Input Module
-------------------
Summary of allocated global arrays
-----------------------------------
No active global arrays
GA Statistics for process 0
------------------------------
create destroy get put acc scatter gather read&inc
calls: 46 46 2296 477 27 0 0 68
number of processes/call 1.00e+00 1.00e+00 1.00e+00 0.00e+00 0.00e+00
bytes total: 2.70e+05 1.39e+05 2.27e+04 0.00e+00 0.00e+00 5.44e+02
bytes remote: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
Max memory consumed for GA by this process: 37544 bytes
MA_summarize_allocated_blocks: starting scan ...
MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks
MA usage statistics:
allocation statistics:
heap stack
---- -----
current number of blocks 0 0
maximum number of blocks 18 28
current total bytes 0 0
maximum total bytes 1060104 16000888
maximum total K-bytes 1061 16001
maximum total M-bytes 2 17
CITATION
--------
Please cite the following reference when publishing
results obtained with NWChem:
M. Valiev, E.J. Bylaska, N. Govind, K. Kowalski,
T.P. Straatsma, H.J.J. van Dam, D. Wang, J. Nieplocha,
E. Apra, T.L. Windus, W.A. de Jong
"NWChem: a comprehensive and scalable open-source
solution for large scale molecular simulations"
Comput. Phys. Commun. 181, 1477 (2010)
doi:10.1016/j.cpc.2010.04.018
AUTHORS
-------
E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski,
T. P. Straatsma, M. Valiev, H. J. J. van Dam, D. Wang, T. L. Windus,
J. Hammond, J. Autschbach, K. Bhaskaran-Nair, J. Brabec, K. Lopata,
S. A. Fischer, S. Krishnamoorthy, M. Jacquelin, W. Ma, M. Klemm, O. Villa,
Y. Chen, V. Anisimov, F. Aquino, S. Hirata, M. T. Hackler, V. Konjkov,
D. Mejia-Rodriguez, T. Risthaus, M. Malagoli, A. Marenich,
A. Otero-de-la-Roza, J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao,
P.-D. Fan, A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr,
M. Dupuis, D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju,
M. Krishnan, B. E. Van Kuiken, A. Vazquez-Mayagoitia, L. Jensen, M. Swart,
Q. Wu, T. Van Voorhis, A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown,
G. Cisneros, G. I. Fann, H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall,
J. A. Nichols, K. Tsemekhman, K. Wolinski, J. Anchell, D. E. Bernholdt,
P. Borowski, T. Clark, D. Clerc, H. Dachsel, M. J. O. Deegan, K. Dyall,
D. Elwood, E. Glendening, M. Gutowski, A. C. Hess, J. Jaffe, B. G. Johnson,
J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, R. Littlefield, X. Long, B. Meng,
T. Nakajima, S. Niu, L. Pollack, M. Rosing, K. Glaesemann, G. Sandrone,
M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, A. T. Wong, Z. Zhang.
Total times cpu: 0.1s wall: 0.1s

View File

@ -0,0 +1,447 @@
#!/usr/bin/env python
# ----------------------------------------------------------------------
# LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator
# http://lammps.sandia.gov, Sandia National Laboratories
# Steve Plimpton, sjplimp@sandia.gov
# ----------------------------------------------------------------------
# Syntax: nwchem_wrap.py file/zmq ao/pw input_template
# file/zmg = messaging mode, must match LAMMPS messaging mode
# ao/pw = basis set mode, selects between atom-centered and plane-wave
# the input_template file must correspond to the appropriate basis set mode:
# the "ao" mode supports the scf and dft modules in NWChem,
# the "pw" mode supports the nwpw module.
# input_template = NWChem input file used as template, must include a
# "geometry" block with the atoms in the simulation, dummy
# xyz coordinates should be included (but are not used).
# Atom ordering must match LAMMPS input.
# wrapper on NWChem
# receives message with list of coords
# creates NWChem inputs
# invokes NWChem to calculate self-consistent energy of that config
# reads NWChem outputs
# sends message with energy, forces, pressure to client
from __future__ import print_function
import sys
version = sys.version_info[0]
if version == 3:
sys.exit("The CSlib python wrapper does not yet support python 3")
import subprocess
import re
import os
import shutil
from cslib import CSlib
# comment out 2nd line once 1st line is correct for your system
nwchemcmd = "mpirun -np 1 /usr/bin/nwchem"
nwchemcmd = "touch tmp"
# enums matching FixClientMD class in LAMMPS
SETUP,STEP = range(1,2+1)
DIM,PERIODICITY,ORIGIN,BOX,NATOMS,NTYPES,TYPES,COORDS,UNITS,CHARGE = range(1,10+1)
FORCES,ENERGY,VIRIAL,ERROR = range(1,4+1)
# -------------------------------------
# functions
# error message and exit
def error(txt):
print("ERROR:",txt)
sys.exit(1)
# -------------------------------------
# read initial input file to setup problem
# return natoms
def nwchem_setup_ao(input):
template = open(input,'r')
geometry_block = False
natoms = 0
while True:
line = template.readline()
if not line: break
if geometry_block and re.search("end",line):
geometry_block = False
if geometry_block and not re.match("#",line) :
natoms += 1
if re.search("geometry",line):
geometry_block = True
return natoms
# -------------------------------------
# write a new input file for NWChem
# assumes the NWChem input geometry is to be specified in angstroms
def nwchem_input_write_ao(input,coords):
template = open(input,'r')
new_input = open("nwchem_lammps.nw",'w')
geometry_block = False
i = 0
while True:
line = template.readline()
if not line: break
if geometry_block and not re.match("#",line) and re.search("end",line):
geometry_block = False
if os.path.exists("nwchem_lammps.movecs"):
# The below is hacky, but one of these lines will be ignored
# by NWChem depending on if the input file is for scf/dft.
append = "\nscf\n vectors input nwchem_lammps.movecs\nend\n"
append2 = "\ndft\n vectors input nwchem_lammps.movecs\nend\n"
line = line + append + append2
if geometry_block and not re.match("#",line):
x = coords[3*i+0]
y = coords[3*i+1]
z = coords[3*i+2]
coord_string = " %g %g %g \n" % (x,y,z)
atom_string = line.split()[0]
line = atom_string + coord_string
i += 1
if (not re.match("#",line)) and re.search("geometry",line):
geometry_block = True
line = "geometry units angstrom noautosym nocenter\n"
print(line,file=new_input,end='')
new_input.close()
# -------------------------------------
# read a NWChem output nwchem_lammps.out file
def nwchem_read_ao(natoms, log):
nwchem_output = open(log, 'r')
energy_pattern = r"Total \w+ energy"
gradient_pattern = "x y z x y z"
eout = 0.0
fout = []
while True:
line = nwchem_output.readline()
if not line: break
# pattern match for energy
if re.search(energy_pattern,line):
eout = float(line.split()[4])
# pattern match for forces
if re.search(gradient_pattern, line):
for i in range(natoms):
line = nwchem_output.readline()
forces = line.split()
fout += [float(forces[5]), float(forces[6]), float(forces[7])]
# convert units
hartree2eV = 27.21138602
bohr2angstrom = 0.52917721092
eout = eout * hartree2eV
fout = [i * -hartree2eV/bohr2angstrom for i in fout]
return eout,fout
# -------------------------------------
# read initial planewave input file to setup problem
# return natoms,box
def nwchem_setup_pw(input):
template = open(input,'r')
geometry_block = False
system_block = False
coord_pattern = r"^\s*\w{1,2}(?:\s+-?(?:\d+.?\d*|\d*.?\d+)){3}"
natoms = 0
box = []
while True:
line = template.readline()
if not line: break
if geometry_block and re.search("system crystal",line):
system_block = True
for i in range(3):
line = template.readline()
line = re.sub(r'd|D', 'e', line)
box += [float(line.split()[1])]
if geometry_block and not system_block and re.match("#",line) and re.search("end",line):
geometry_block = False
if system_block and re.search("end",line):
system_block = False
if geometry_block and not re.match("#",line) and re.search(coord_pattern,line):
natoms += 1
if re.search("geometry",line) and not re.match("#",line):
geometry_block = True
return natoms,box
# -------------------------------------
# write a new planewave input file for NWChem
# assumes the NWChem input geometry is to be specified fractional coordinates
def nwchem_input_write_pw(input,coords,box):
template = open(input,'r')
new_input = open("nwchem_lammps.nw",'w')
writing_atoms = False
geometry_block = False
system_block = False
coord_pattern = r"^\s*\w{1,2}(?:\s+-?(?:\d+.?\d*|\d*.?\d+)){3}"
i = 0
while True:
line = template.readline()
if not line: break
if geometry_block and re.search("system crystal",line):
system_block = True
if geometry_block and not system_block and not re.match("#",line) and re.search("end",line):
geometry_block = False
if os.path.exists("nwchem_lammps.movecs"):
append = "\nnwpw\n vectors input nwchem_lammps.movecs\nend\n"
line = line + append
if system_block and re.search("end",line):
system_block = False
if geometry_block and not re.match("#",line) and re.search(coord_pattern,line):
x = coords[3*i+0] / box[0]
y = coords[3*i+1] / box[1]
z = coords[3*i+2] / box[2]
coord_string = " %g %g %g \n" % (x,y,z)
atom_string = line.split()[0]
line = atom_string + coord_string
i += 1
if re.search("geometry",line) and not re.match("#",line):
geometry_block = True
print(line,file=new_input,end='')
new_input.close()
# -------------------------------------
# read a NWChem output nwchem_lammps.out file for planewave calculation
def nwchem_read_pw(log):
nw_output = open(log, 'r')
eout = 0.0
sout = []
fout = []
reading_forces = False
while True:
line = nw_output.readline()
if not line: break
# pattern match for energy
if re.search("PSPW energy",line):
eout = float(line.split()[4])
# pattern match for forces
if re.search("C\.O\.M", line):
reading_forces = False
if reading_forces:
forces = line.split()
fout += [float(forces[3]), float(forces[4]), float(forces[5])]
if re.search("Ion Forces",line):
reading_forces = True
# pattern match for stress
if re.search("=== total gradient ===",line):
stensor = []
for i in range(3):
line = nw_output.readline()
line = line.replace("S ="," ")
stress = line.split()
stensor += [float(stress[1]), float(stress[2]), float(stress[3])]
sxx = stensor[0]
syy = stensor[4]
szz = stensor[8]
sxy = 0.5 * (float(stensor[1]) + float(stensor[3]))
sxz = 0.5 * (stensor[2] + stensor[6])
syz = 0.5 * (stensor[5] + stensor[7])
sout = [sxx,syy,szz,sxy,sxz,syz]
# convert units
hartree2eV = 27.21138602
bohr2angstrom = 0.52917721092
austress2bar = 294210156.97
eout = eout * hartree2eV
fout = [i * hartree2eV/bohr2angstrom for i in fout]
sout = [i * austress2bar for i in sout]
return eout,fout,sout
# -------------------------------------
# main program
# command-line args
#
if len(sys.argv) != 4:
print("Syntax: python nwchem_wrap.py file/zmq ao/pw input_template")
sys.exit(1)
comm_mode = sys.argv[1]
basis_type = sys.argv[2]
input_template = sys.argv[3]
if comm_mode == "file": cs = CSlib(1,comm_mode,"tmp.couple",None)
elif comm_mode == "zmq": cs = CSlib(1,comm_mode,"*:5555",None)
else:
print("Syntax: python nwchem_wrap.py file/zmq")
sys.exit(1)
natoms = 0
box = []
if basis_type == "ao":
natoms = nwchem_setup_ao(input_template)
elif basis_type == "pw":
natoms,box = nwchem_setup_pw(input_template)
# initial message for AIMD protocol
msgID,nfield,fieldID,fieldtype,fieldlen = cs.recv()
if msgID != 0: error("Bad initial client/server handshake")
protocol = cs.unpack_string(1)
if protocol != "md": error("Mismatch in client/server protocol")
cs.send(0,0)
# endless server loop
i = 0
if not os.path.exists("nwchem_logs"):
os.mkdir("nwchem_logs")
while 1:
# recv message from client
# msgID = 0 = all-done message
msgID,nfield,fieldID,fieldtype,fieldlen = cs.recv()
if msgID < 0: break
# SETUP receive at beginning of each run
# required fields: DIM, PERIODICITY, ORIGIN, BOX,
# NATOMS, COORDS
# optional fields: others in enum above, but NWChem ignores them
if msgID == SETUP:
origin = []
box_lmp = []
natoms_recv = ntypes_recv = 0
types = []
coords = []
for field in fieldID:
if field == DIM:
dim = cs.unpack_int(DIM)
if dim != 3: error("NWChem only performs 3d simulations")
elif field == PERIODICITY:
periodicity = cs.unpack(PERIODICITY,1)
if basis_type == "ao":
if periodicity[0] or periodicity[1] or periodicity[2]:
error("NWChem AO basis wrapper only currently supports fully aperiodic systems")
elif basis_type == "pw":
if not periodicity[0] or not periodicity[1] or not periodicity[2]:
error("NWChem PW basis wrapper only currently supports fully periodic systems")
elif field == ORIGIN:
origin = cs.unpack(ORIGIN,1)
elif field == BOX:
box_lmp = cs.unpack(BOX,1)
if (basis_type == "pw"):
if (box[0] != box_lmp[0] or box[1] != box_lmp[4] or box[2] != box_lmp[8]):
error("NWChem wrapper mismatch in box dimensions")
elif field == NATOMS:
natoms_recv = cs.unpack_int(NATOMS)
if natoms != natoms_recv:
error("NWChem wrapper mismatch in number of atoms")
elif field == COORDS:
coords = cs.unpack(COORDS,1)
if not origin or not box_lmp or not natoms or not coords:
error("Required NWChem wrapper setup field not received");
# STEP receive at each timestep of run or minimization
# required fields: COORDS
# optional fields: ORIGIN, BOX
elif msgID == STEP:
coords = []
for field in fieldID:
if field == COORDS:
coords = cs.unpack(COORDS,1)
if not coords: error("Required NWChem wrapper step field not received");
else: error("NWChem wrapper received unrecognized message")
# unpack coords from client
# create NWChem input
if basis_type == "ao":
nwchem_input_write_ao(input_template,coords)
elif basis_type == "pw":
nwchem_input_write_pw(input_template,coords,box)
# invoke NWChem
i += 1
log = "nwchem_lammps.out"
archive = "nwchem_logs/nwchem_lammps" + str(i) + ".out"
cmd = nwchemcmd + " nwchem_lammps.nw > " + log
print("\nLaunching NWChem ...")
print(cmd)
subprocess.check_output(cmd,stderr=subprocess.STDOUT,shell=True)
shutil.copyfile(log,archive)
# process NWChem output
if basis_type == "ao":
energy,forces = nwchem_read_ao(natoms,log)
virial = [0,0,0,0,0,0]
elif basis_type == "pw":
energy,forces,virial = nwchem_read_pw(log)
# return forces, energy to client
cs.send(msgID,3)
cs.pack(FORCES,4,3*natoms,forces)
cs.pack_double(ENERGY,energy)
cs.pack(VIRIAL,4,6,virial)
# final reply to client
cs.send(0,0)
# clean-up
del cs

View File

@ -0,0 +1,15 @@
LAMMPS W data file
2 atoms
1 atom types
0.0 3.16 xlo xhi
0.0 3.16 ylo yhi
0.0 3.16 zlo zhi
Atoms
1 1 0.000 0.000 0.000
2 1 1.58 1.58 1.58

View File

@ -0,0 +1,34 @@
# small W unit cell for use with NWChem
variable mode index file
if "${mode} == file" then &
"message client md file tmp.couple" &
elif "${mode} == zmq" &
"message client md zmq localhost:5555" &
variable x index 1
variable y index 1
variable z index 1
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
read_data data.W
mass 1 183.85
replicate $x $y $z
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3

View File

@ -0,0 +1,38 @@
# small W unit cell for use with NWChem
variable mode index file
if "${mode} == file" then &
"message client md file tmp.couple" &
elif "${mode} == zmq" &
"message client md zmq localhost:5555" &
variable x index 1
variable y index 1
variable z index 1
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
read_data data.W
mass 1 183.85
group one id 2
displace_atoms one move 0.1 0.2 0.3
replicate $x $y $z
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
dump 1 all custom 1 dump.W.min id type x y z
thermo 1
minimize 1.0e-6 1.0e-6 10 50

View File

@ -0,0 +1,76 @@
LAMMPS (18 Sep 2018)
# small W unit cell for use with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
variable x index 1
variable y index 1
variable z index 1
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
read_data data.W
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
reading atoms ...
2 atoms
mass 1 183.85
replicate $x $y $z
replicate 1 $y $z
replicate 1 1 $z
replicate 1 1 1
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
2 atoms
Time spent = 0.000187325 secs
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3
Per MPI rank memory allocation (min/avg/max) = 1.8 | 1.8 | 1.8 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 0 0 -549.75686 36815830
1 300 0 0 -549.75686 36815830
2 300 0 0 -549.75686 36815830
3 300 0 0 -549.75686 36815830
Loop time of 0.400933 on 1 procs for 3 steps with 2 atoms
Performance: 0.646 ns/day, 37.123 hours/ns, 7.483 timesteps/s
0.1% CPU use with 1 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
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 4.755e-06 | 4.755e-06 | 4.755e-06 | 0.0 | 0.00
Output | 0.00010114 | 0.00010114 | 0.00010114 | 0.0 | 0.03
Modify | 0.40082 | 0.40082 | 0.40082 | 0.0 | 99.97
Other | | 1.232e-05 | | | 0.00
Nlocal: 2 ave 2 max 2 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 7 ave 7 max 7 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
Neighbor list builds = 0
Dangerous builds not checked
Total wall time: 0:00:09

View File

@ -0,0 +1,78 @@
LAMMPS (19 Sep 2019)
# small W unit cell for use with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
variable x index 1
variable y index 1
variable z index 1
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
read_data data.W
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
reading atoms ...
2 atoms
read_data CPU = 0.0014801 secs
mass 1 183.85
replicate $x $y $z
replicate 1 $y $z
replicate 1 1 $z
replicate 1 1 1
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
2 atoms
replicate CPU = 0.000123978 secs
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
thermo 1
run 3
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:166)
Per MPI rank memory allocation (min/avg/max) = 1.801 | 1.801 | 1.801 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 0 0 -549.75686 36815830
1 298.93216 0 0 -549.75686 36815825
2 295.76254 0 0 -549.75687 36814830
3 290.55935 0 0 -549.75687 36811865
Loop time of 2.60414 on 1 procs for 3 steps with 2 atoms
Performance: 0.100 ns/day, 241.124 hours/ns, 1.152 timesteps/s
0.0% 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
Neigh | 0 | 0 | 0 | 0.0 | 0.00
Comm | 7.1526e-06 | 7.1526e-06 | 7.1526e-06 | 0.0 | 0.00
Output | 0.00012779 | 0.00012779 | 0.00012779 | 0.0 | 0.00
Modify | 2.604 | 2.604 | 2.604 | 0.0 | 99.99
Other | | 9.06e-06 | | | 0.00
Nlocal: 2 ave 2 max 2 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 7 ave 7 max 7 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
Neighbor list builds = 0
Dangerous builds not checked
Total wall time: 0:00:05

View File

@ -0,0 +1,92 @@
LAMMPS (19 Sep 2019)
# small W unit cell for use with NWChem
variable mode index file
if "${mode} == file" then "message client md file tmp.couple" elif "${mode} == zmq" "message client md zmq localhost:5555"
message client md file tmp.couple
variable x index 1
variable y index 1
variable z index 1
units metal
atom_style atomic
atom_modify sort 0 0.0 map yes
read_data data.W
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
reading atoms ...
2 atoms
read_data CPU = 0.00183487 secs
mass 1 183.85
group one id 2
1 atoms in group one
displace_atoms one move 0.1 0.2 0.3
replicate $x $y $z
replicate 1 $y $z
replicate 1 1 $z
replicate 1 1 1
orthogonal box = (0 0 0) to (3.16 3.16 3.16)
1 by 1 by 1 MPI processor grid
2 atoms
replicate CPU = 0.000159979 secs
velocity all create 300.0 87287 loop geom
neighbor 0.3 bin
neigh_modify delay 0 every 10 check no
fix 1 all nve
fix 2 all client/md
fix_modify 2 energy yes
dump 1 all custom 1 tmp.dump id type x y z
thermo 1
minimize 1.0e-6 1.0e-6 10 50
WARNING: Using 'neigh_modify every 1 delay 0 check yes' setting during minimization (../min.cpp:174)
WARNING: Communication cutoff is 0.0. No ghost atoms will be generated. Atoms may get lost. (../comm_brick.cpp:166)
Per MPI rank memory allocation (min/avg/max) = 4.676 | 4.676 | 4.676 Mbytes
Step Temp E_pair E_mol TotEng Press
0 300 0 0 -547.52142 28510277
1 300 0 0 -549.43104 35614471
2 300 0 0 -549.75661 36815830
3 300 0 0 -549.75662 36815830
Loop time of 7.71121 on 1 procs for 3 steps with 2 atoms
0.0% CPU use with 1 MPI tasks x no OpenMP threads
Minimization stats:
Stopping criterion = energy tolerance
Energy initial, next-to-last, final =
-547.560202518 -549.795386038 -549.795398827
Force two-norm initial, final = 16.0041 0.00108353
Force max component initial, final = 9.57978 0.000719909
Final line search alpha, max atom move = 1 0.000719909
Iterations, force evaluations = 3 5
MPI task timing breakdown:
Section | min time | avg time | max time |%varavg| %total
---------------------------------------------------------------
Pair | 0 | 0 | 0 | 0.0 | 0.00
Neigh | 9.5367e-07 | 9.5367e-07 | 9.5367e-07 | 0.0 | 0.00
Comm | 1.3113e-05 | 1.3113e-05 | 1.3113e-05 | 0.0 | 0.00
Output | 0.00017023 | 0.00017023 | 0.00017023 | 0.0 | 0.00
Modify | 7.7109 | 7.7109 | 7.7109 | 0.0 |100.00
Other | | 0.0001729 | | | 0.00
Nlocal: 2 ave 2 max 2 min
Histogram: 1 0 0 0 0 0 0 0 0 0
Nghost: 0 ave 0 max 0 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
Neighbor list builds = 1
Dangerous builds not checked
Total wall time: 0:00:19

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,817 @@
argument 1 = nwchem_lammps.nw
============================== echo of input deck ==============================
echo
#**** Enter the geometry using fractional coordinates ****
geometry units angstrom noautosym
system crystal
lat_a 3.16d0
lat_b 3.16d0
lat_c 3.16d0
end
W 0.999335 0.99967 0.998875
W 0.500665 0.50033 0.501125
end
nwpw
vectors input nwchem_lammps.movecs
end
#***** setup the nwpw gamma point code ****
nwpw
simulation_cell
ngrid 16 16 16
end
ewald_ncut 8
mulliken
lcao #old default
end
nwpw
tolerances 1.0d-9 1.0d-9
end
task pspw stress
================================================================================
Northwest Computational Chemistry Package (NWChem) 6.8
------------------------------------------------------
Environmental Molecular Sciences Laboratory
Pacific Northwest National Laboratory
Richland, WA 99352
Copyright (c) 1994-2018
Pacific Northwest National Laboratory
Battelle Memorial Institute
NWChem is an open-source computational chemistry package
distributed under the terms of the
Educational Community License (ECL) 2.0
A copy of the license is included with this distribution
in the LICENSE.TXT file
ACKNOWLEDGMENT
--------------
This software and its documentation were developed at the
EMSL at Pacific Northwest National Laboratory, a multiprogram
national laboratory, operated for the U.S. Department of Energy
by Battelle under Contract Number DE-AC05-76RL01830. Support
for this work was provided by the Department of Energy Office
of Biological and Environmental Research, Office of Basic
Energy Sciences, and the Office of Advanced Scientific Computing.
Job information
---------------
hostname = singsing
program = /home/sjplimp/tools/nwchem-6.8.1-release/bin/LINUX64/nwchem
date = Thu Oct 3 16:57:17 2019
compiled = Wed_Oct_02_09:25:27_2019
source = /home/sjplimp/tools/nwchem-6.8.1-release
nwchem branch = Development
nwchem revision = N/A
ga revision = 5.6.5
use scalapack = F
input = nwchem_lammps.nw
prefix = nwchem_lammps.
data base = ./nwchem_lammps.db
status = restart
nproc = 1
time left = -1s
Memory information
------------------
heap = 13107200 doubles = 100.0 Mbytes
stack = 13107197 doubles = 100.0 Mbytes
global = 26214400 doubles = 200.0 Mbytes (distinct from heap & stack)
total = 52428797 doubles = 400.0 Mbytes
verify = yes
hardfail = no
Directory information
---------------------
0 permanent = .
0 scratch = .
Previous task information
-------------------------
Theory = pspw
Operation = stress
Status = unknown
Qmmm = F
Ignore = F
Geometries in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 geometry 2 Thu Oct 3 16:57:16 2019
The geometry named "geometry" is the default for restart
Basis sets in the database
--------------------------
There are no basis sets in the database
NWChem Input Module
-------------------
!!!!!!!!! geom_3d NEEDS TESTING !!!!!!!!!!
Geometry "geometry" -> ""
-------------------------
Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.)
No. Tag Charge X Y Z
---- ---------------- ---------- -------------- -------------- --------------
1 W 74.0000 3.15789860 3.15895720 3.15644500
2 W 74.0000 1.58210140 1.58104280 1.58355500
Lattice Parameters
------------------
lattice vectors in angstroms (scale by 1.889725989 to convert to a.u.)
a1=< 3.160 0.000 0.000 >
a2=< 0.000 3.160 0.000 >
a3=< 0.000 0.000 3.160 >
a= 3.160 b= 3.160 c= 3.160
alpha= 90.000 beta= 90.000 gamma= 90.000
omega= 31.6
reciprocal lattice vectors in a.u.
b1=< 1.052 0.000 -0.000 >
b2=< -0.000 1.052 -0.000 >
b3=< 0.000 0.000 1.052 >
Atomic Mass
-----------
W 183.951000
XYZ format geometry
-------------------
2
geometry
W 3.15789860 3.15895720 3.15644500
W 1.58210140 1.58104280 1.58355500
==============================================================================
internuclear distances
------------------------------------------------------------------------------
center one | center two | atomic units | angstroms
------------------------------------------------------------------------------
2 W | 1 W | 5.15689 | 2.72891
------------------------------------------------------------------------------
number of included internuclear distances: 1
==============================================================================
>>>> PSPW Parallel Module - stress <<<<
****************************************************
* *
* NWPW PSPW Calculation *
* *
* [ (Grassmann/Stiefel manifold implementation) ] *
* *
* [ NorthWest Chemistry implementation ] *
* *
* version #5.10 06/12/02 *
* *
* This code was developed by Eric J. Bylaska, *
* and was based upon algorithms and code *
* developed by the group of Prof. John H. Weare *
* *
****************************************************
>>> JOB STARTED AT Thu Oct 3 16:57:17 2019 <<<
================ input data ========================
input psi filename:./nwchem_lammps.movecs
initializing pspw_APC data structure
------------------------------------
nga, ngs: 3 6
Gc : 2.5000000000000000
APC gamma: 1 0.59999999999999998
APC gamma: 2 0.90000000000000002
APC gamma: 3 1.3500000000000001
number of processors used: 1
processor grid : 1 x 1
parallel mapping :2d hilbert
parallel mapping : balanced
number of threads : 1
parallel io : off
options:
boundary conditions = periodic (version3)
electron spin = restricted
exchange-correlation = LDA (Vosko et al) parameterization
elements involved in the cluster:
1: W valence charge: 6.0000 lmax= 2
comment : Troullier-Martins pseudopotential
pseudpotential type : 0
highest angular component : 2
local potential used : 0
number of non-local projections: 8
semicore corrections included : 1.800 (radius) 4.538 (charge)
cutoff = 2.389 3.185 2.244
total charge: 0.000
atomic composition:
W : 2
number of electrons: spin up= 6 ( 6 per task) down= 6 ( 6 per task) (Fourier space)
number of orbitals : spin up= 6 ( 6 per task) down= 6 ( 6 per task) (Fourier space)
supercell:
cell_name: cell_default
lattice: a1=< 5.972 0.000 0.000 >
a2=< 0.000 5.972 0.000 >
a3=< 0.000 0.000 5.972 >
reciprocal: b1=< 1.052 0.000 -0.000 >
b2=< -0.000 1.052 -0.000 >
b3=< 0.000 0.000 1.052 >
lattice: a= 5.972 b= 5.972 c= 5.972
alpha= 90.000 beta= 90.000 gamma= 90.000
omega= 212.9
density cutoff= 35.427 fft= 16x 16x 16( 1052 waves 1052 per task)
wavefnc cutoff= 35.427 fft= 16x 16x 16( 1052 waves 1052 per task)
Ewald summation: cut radius= 1.90 and 8
Madelung Wigner-Seitz= 1.76011888 (alpha= 2.83729748 rs= 3.70444413)
technical parameters:
time step= 5.80 fictitious mass= 400000.0
tolerance=0.100E-08 (energy) 0.100E-08 (density)
maximum iterations = 1000 ( 10 inner 100 outer )
== Energy Calculation ==
====== Grassmann conjugate gradient iteration ======
>>> ITERATION STARTED AT Thu Oct 3 16:57:17 2019 <<<
iter. Energy DeltaE DeltaRho
------------------------------------------------------
10 -0.2020457267E+02 -0.12753E-06 0.54770E-09
20 -0.2020457281E+02 -0.96520E-09 0.65680E-11
*** tolerance ok. iteration terminated
>>> ITERATION ENDED AT Thu Oct 3 16:57:18 2019 <<<
== Summary Of Results ==
number of electrons: spin up= 6.00000 down= 6.00000 (real space)
total energy : -0.2020457281E+02 ( -0.10102E+02/ion)
total orbital energy: 0.5093546150E+01 ( 0.84892E+00/electron)
hartree energy : 0.2903382088E+00 ( 0.48390E-01/electron)
exc-corr energy : -0.9445078100E+01 ( -0.15742E+01/electron)
ion-ion energy : -0.2193939674E+02 ( -0.10970E+02/ion)
kinetic (planewave) : 0.1441586264E+02 ( 0.24026E+01/electron)
V_local (planewave) : 0.1156111351E+02 ( 0.19269E+01/electron)
V_nl (planewave) : -0.1508741234E+02 ( -0.25146E+01/electron)
V_Coul (planewave) : 0.5806764176E+00 ( 0.96779E-01/electron)
V_xc. (planewave) : -0.6376694082E+01 ( -0.10628E+01/electron)
Virial Coefficient : -0.6466707350E+00
orbital energies:
0.5414291E+00 ( 14.733eV)
0.5414285E+00 ( 14.733eV)
0.5414070E+00 ( 14.733eV)
0.3596871E+00 ( 9.788eV)
0.3596781E+00 ( 9.787eV)
0.2031433E+00 ( 5.528eV)
Total PSPW energy : -0.2020457281E+02
=== Spin Contamination ===
<Sexact^2> = 0.0000000000000000
<S^2> = 0.0000000000000000
== Center of Charge ==
spin up ( -0.0030, -0.0015, -0.0050 )
spin down ( -0.0030, -0.0015, -0.0050 )
total ( -0.0030, -0.0015, -0.0050 )
ionic ( -1.4929, -1.4929, -1.4929 )
== Molecular Dipole wrt Center of Mass ==
mu = ( -17.8792, -17.8970, -17.8547 ) au
|mu| = 30.9638 au, 78.6976 Debye
Translation force removed: ( -0.00000 -0.00000 -0.00000)
============= Ion Gradients =================
Ion Forces:
1 W ( 0.002737 0.001358 0.004631 )
2 W ( -0.002737 -0.001358 -0.004631 )
C.O.M. ( 0.000000 0.000000 0.000000 )
===============================================
|F| = 0.784689E-02
|F|/nion = 0.392344E-02
max|Fatom|= 0.554859E-02 ( 0.285eV/Angstrom)
======================
= Stress calculation =
======================
============= total gradient ==============
S = ( 0.12512 0.00000 0.00000 )
( 0.00000 0.12512 0.00001 )
( 0.00000 0.00001 0.12511 )
===================================================
|S| = 0.21671E+00
pressure = 0.125E+00 au
= 0.368E+02 Mbar
= 0.368E+04 GPa
= 0.363E+08 atm
dE/da = 0.12512
dE/db = 0.12512
dE/dc = 0.12511
dE/dalpha = -0.00003
dE/dbeta = -0.00002
dE/dgamma = -0.00001
*************************************************************
** **
** PSPW Mulliken analysis **
** **
** Population analysis algorithm devloped by Ryoichi Kawai **
** **
** Thu Oct 3 16:57 **
** **
*************************************************************
== XYZ OUTPUT ==
2
W -0.002101 -0.001043 -0.003555
W -1.577898 -1.578956 -1.576444
== Atomic Orbital Expansion ==
W nodamping
=====================================================
| POPULATION ANALYSIS OF FILLED MOLECULAR ORBITALS |
=====================================================
== Using pseudoatomic orbital expansion ==
------------------------------------------------------------------------------
*** ORBITAL= 1*** SPIN=BOTH SUM= 0.12471E+01 E= 0.54143E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 0.00000
px pz py
1 W 1 0.00000 -0.00018 -0.00011 0.00005
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.49999 0.00003 -0.68532 0.00001 0.10591 0.13824
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00001 -0.00003 -0.00187 -0.00238 -0.00028 0.00001 0.00000 -0.00017
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00000 0.00018 0.00011 -0.00005
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.49999 0.00003 -0.68532 0.00001 0.10591 0.13824
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00001 -0.00003 0.00187 0.00238 0.00028 -0.00001 -0.00000 0.00017
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 2*** SPIN=BOTH SUM= 0.12472E+01 E= 0.54143E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 0.00000
px pz py
1 W 1 0.00000 0.00002 -0.00005 -0.00011
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.49998 -0.00001 -0.02322 0.00001 -0.61187 0.35363
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00002 -0.00001 0.00071 -0.00049 -0.00015 -0.00283 0.00006 0.00266
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00000 -0.00002 0.00005 0.00011
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.49998 -0.00001 -0.02322 0.00001 -0.61187 0.35363
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00002 -0.00001 -0.00071 0.00049 0.00015 0.00283 -0.00006 -0.00266
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 3*** SPIN=BOTH SUM= 0.12472E+01 E= 0.54141E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 -0.00000
px pz py
1 W 1 0.00000 0.00010 0.00006 0.00020
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.49999 0.00000 0.17259 0.00000 0.33820 0.59651
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00001 0.00000 0.00001 -0.00015 0.00015 -0.00033 -0.00325 -0.00033
s
2 W 0 0.00000 -0.00000
px pz py
2 W 1 0.00000 -0.00010 -0.00006 -0.00020
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.49999 0.00000 0.17259 0.00000 0.33820 0.59651
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00001 0.00000 -0.00001 0.00015 -0.00015 0.00033 0.00325 0.00033
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 4*** SPIN=BOTH SUM= 0.14577E+01 E= 0.35969E+00 ( 9.788eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 -0.00000
px pz py
1 W 1 0.00002 0.00162 -0.00440 0.00049
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.48998 -0.09896 0.00001 0.69296 0.00001 -0.00001
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00999 -0.09993 0.00031 -0.00131 -0.00234 -0.00064 0.00000 0.00022
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00002 0.00162 -0.00440 0.00049
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.48998 0.09896 -0.00001 -0.69296 -0.00001 0.00001
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00999 0.09993 0.00031 -0.00131 -0.00234 -0.00064 0.00000 0.00022
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 0.9800 0.0200
------------------------------------------------------------------------------
*** ORBITAL= 5*** SPIN=BOTH SUM= 0.14616E+01 E= 0.35968E+00 ( 9.787eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 0.00000
px pz py
1 W 1 0.00001 0.00206 0.00063 -0.00121
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.48871 -0.69206 -0.00002 -0.09883 0.00001 0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.01129 -0.10621 0.00214 0.00009 0.00033 0.00014 0.00000 0.00063
s
2 W 0 0.00000 -0.00000
px pz py
2 W 1 0.00001 0.00206 0.00063 -0.00121
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.48871 0.69206 0.00002 0.09883 -0.00001 -0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.01129 0.10621 0.00214 0.00009 0.00033 0.00014 0.00000 0.00063
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 0.9774 0.0226
------------------------------------------------------------------------------
*** ORBITAL= 6*** SPIN=BOTH SUM= 0.19540E+01 E= 0.20314E+00 ( 5.528eV)
NO ATOM L POPULATION
s
1 W 0 0.49974 -0.70692
px pz py
1 W 1 0.00000 0.00028 0.00047 0.00014
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.00000 -0.00000 -0.00000 -0.00000 -0.00000 -0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00026 0.01609 -0.00000 -0.00007 0.00021 -0.00003 0.00000 -0.00004
s
2 W 0 0.49974 -0.70692
px pz py
2 W 1 0.00000 -0.00028 -0.00047 -0.00014
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.00000 -0.00000 -0.00000 -0.00000 -0.00000 -0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00026 0.01609 0.00000 0.00007 -0.00021 0.00003 -0.00000 0.00004
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.9995 0.0000 0.0000 0.0005
========================================
| POPULATION ANALYSIS ON EACH ATOM |
========================================
NO ATOM SPIN TOTAL s p d f
1 W UP 3.00000 0.49974 0.00003 2.47866 0.02157
1 W DOWN 3.00000 0.49974 0.00003 2.47866 0.02157
2 W UP 3.00000 0.49974 0.00003 2.47866 0.02157
2 W DOWN 3.00000 0.49974 0.00003 2.47866 0.02157
=== TOTAL ANGULAR MOMENTUM POPULATION ===
SPIN s p d f
UP 16.66% 0.00% 82.62% 0.72%
UP 16.66% 0.00% 82.62% 0.72%
TOTAL 16.66% 0.00% 82.62% 0.72%
*************************************************************
** **
** PSPW Atomic Point Charge (APC) Analysis **
** **
** Point charge analysis based on paper by P.E. Blochl **
** (J. Chem. Phys. vol 103, page 7422, 1995) **
** **
*************************************************************
pspw_APC data structure
-----------------------
nga, ngs: 3 6
Gc : 2.5000000000000000
APC gamma: 1 0.59999999999999998
APC gamma: 2 0.90000000000000002
APC gamma: 3 1.3500000000000001
charge analysis on each atom
----------------------------
no atom Qelc Qion Qtotal
-- ---- ------- ------- -------
1 W -6.000 6.000 -0.000
2 W -6.000 6.000 -0.000
Total Q -12.000 12.000 -0.000
gaussian coefficients of model density
--------------------------------------
no atom g=0.000 g=0.600 g=0.900 g=1.350
-- ---- ------- ------- ------- -------
1 W 6.000 -7.235 17.653 -16.419
2 W 6.000 -7.235 17.653 -16.419
=== Electric Field at Atoms ===
1 W Atomic Electric Field =( -0.00022 -0.00011 -0.00038 )
(ion) =( 0.00094 0.00047 0.00159 )
(electronic) =( -0.00116 -0.00058 -0.00197 )
2 W Atomic Electric Field =( 0.00022 0.00011 0.00038 )
(ion) =( -0.00094 -0.00047 -0.00159 )
(electronic) =( 0.00116 0.00058 0.00197 )
output psi filename:./nwchem_lammps.movecs
== Timing ==
cputime in seconds
prologue : 0.114428E+00
main loop : 0.475396E+00
epilogue : 0.316691E-01
total : 0.621493E+00
cputime/step: 0.559289E-02 ( 85 evalulations, 20 linesearches)
Time spent doing total step percent
total time : 0.623259E+00 0.733246E-02 100.0 %
i/o time : 0.103071E-01 0.121260E-03 1.7 %
FFTs : 0.348712E-01 0.410250E-03 5.6 %
dot products : 0.981057E-02 0.115418E-03 1.6 %
geodesic : 0.696999E-01 0.819999E-03 11.2 %
ffm_dgemm : 0.104145E-02 0.122523E-04 0.2 %
fmf_dgemm : 0.565297E-01 0.665055E-03 9.1 %
mmm_dgemm : 0.129490E-03 0.152342E-05 0.0 %
m_diagonalize : 0.701885E-03 0.825747E-05 0.1 %
exchange correlation : 0.764353E-01 0.899239E-03 12.3 %
local pseudopotentials : 0.439882E-03 0.517509E-05 0.1 %
non-local pseudopotentials : 0.271890E-01 0.319871E-03 4.4 %
hartree potentials : 0.202482E-02 0.238214E-04 0.3 %
ion-ion interaction : 0.104062E+00 0.122426E-02 16.7 %
structure factors : 0.152984E-01 0.179981E-03 2.5 %
phase factors : 0.107278E-04 0.126210E-06 0.0 %
masking and packing : 0.304392E-01 0.358108E-03 4.9 %
queue fft : 0.111536E+00 0.131219E-02 17.9 %
queue fft (serial) : 0.708244E-01 0.833228E-03 11.4 %
queue fft (message passing): 0.360800E-01 0.424470E-03 5.8 %
non-local psp FFM : 0.860008E-02 0.101177E-03 1.4 %
non-local psp FMF : 0.111482E-01 0.131155E-03 1.8 %
non-local psp FFM A : 0.214632E-02 0.252509E-04 0.3 %
non-local psp FFM B : 0.560879E-02 0.659858E-04 0.9 %
>>> JOB COMPLETED AT Thu Oct 3 16:57:18 2019 <<<
Task times cpu: 0.6s wall: 0.6s
Summary of allocated global arrays
-----------------------------------
No active global arrays
GA Statistics for process 0
------------------------------
create destroy get put acc scatter gather read&inc
calls: 0 0 0 0 0 0 0 0
number of processes/call 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
bytes total: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
bytes remote: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
Max memory consumed for GA by this process: 0 bytes
MA_summarize_allocated_blocks: starting scan ...
MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks
MA usage statistics:
allocation statistics:
heap stack
---- -----
current number of blocks 0 0
maximum number of blocks 294 17
current total bytes 0 0
maximum total bytes 4879496 351944
maximum total K-bytes 4880 352
maximum total M-bytes 5 1
NWChem Input Module
-------------------
CITATION
--------
Please cite the following reference when publishing
results obtained with NWChem:
M. Valiev, E.J. Bylaska, N. Govind, K. Kowalski,
T.P. Straatsma, H.J.J. van Dam, D. Wang, J. Nieplocha,
E. Apra, T.L. Windus, W.A. de Jong
"NWChem: a comprehensive and scalable open-source
solution for large scale molecular simulations"
Comput. Phys. Commun. 181, 1477 (2010)
doi:10.1016/j.cpc.2010.04.018
AUTHORS
-------
E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski,
T. P. Straatsma, M. Valiev, H. J. J. van Dam, D. Wang, T. L. Windus,
J. Hammond, J. Autschbach, K. Bhaskaran-Nair, J. Brabec, K. Lopata,
S. A. Fischer, S. Krishnamoorthy, M. Jacquelin, W. Ma, M. Klemm, O. Villa,
Y. Chen, V. Anisimov, F. Aquino, S. Hirata, M. T. Hackler, V. Konjkov,
D. Mejia-Rodriguez, T. Risthaus, M. Malagoli, A. Marenich,
A. Otero-de-la-Roza, J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao,
P.-D. Fan, A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr,
M. Dupuis, D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju,
M. Krishnan, B. E. Van Kuiken, A. Vazquez-Mayagoitia, L. Jensen, M. Swart,
Q. Wu, T. Van Voorhis, A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown,
G. Cisneros, G. I. Fann, H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall,
J. A. Nichols, K. Tsemekhman, K. Wolinski, J. Anchell, D. E. Bernholdt,
P. Borowski, T. Clark, D. Clerc, H. Dachsel, M. J. O. Deegan, K. Dyall,
D. Elwood, E. Glendening, M. Gutowski, A. C. Hess, J. Jaffe, B. G. Johnson,
J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, R. Littlefield, X. Long, B. Meng,
T. Nakajima, S. Niu, L. Pollack, M. Rosing, K. Glaesemann, G. Sandrone,
M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, A. T. Wong, Z. Zhang.
Total times cpu: 0.6s wall: 0.7s

View File

@ -0,0 +1,816 @@
argument 1 = nwchem_lammps.nw
============================== echo of input deck ==============================
echo
#**** Enter the geometry using fractional coordinates ****
geometry units angstrom noautosym
system crystal
lat_a 3.16d0
lat_b 3.16d0
lat_c 3.16d0
end
W 0.0158218 0.0316436 0.0474661
W 0.515824 0.531647 0.547471
end
nwpw
vectors input nwchem_lammps.movecs
end
#***** setup the nwpw gamma point code ****
nwpw
simulation_cell
ngrid 16 16 16
end
ewald_ncut 8
mulliken
lcao #old default
end
nwpw
tolerances 1.0d-9 1.0d-9
end
task pspw stress
================================================================================
Northwest Computational Chemistry Package (NWChem) 6.8
------------------------------------------------------
Environmental Molecular Sciences Laboratory
Pacific Northwest National Laboratory
Richland, WA 99352
Copyright (c) 1994-2018
Pacific Northwest National Laboratory
Battelle Memorial Institute
NWChem is an open-source computational chemistry package
distributed under the terms of the
Educational Community License (ECL) 2.0
A copy of the license is included with this distribution
in the LICENSE.TXT file
ACKNOWLEDGMENT
--------------
This software and its documentation were developed at the
EMSL at Pacific Northwest National Laboratory, a multiprogram
national laboratory, operated for the U.S. Department of Energy
by Battelle under Contract Number DE-AC05-76RL01830. Support
for this work was provided by the Department of Energy Office
of Biological and Environmental Research, Office of Basic
Energy Sciences, and the Office of Advanced Scientific Computing.
Job information
---------------
hostname = singsing
program = /home/sjplimp/tools/nwchem-6.8.1-release/bin/LINUX64/nwchem
date = Thu Oct 3 16:58:54 2019
compiled = Wed_Oct_02_09:25:27_2019
source = /home/sjplimp/tools/nwchem-6.8.1-release
nwchem branch = Development
nwchem revision = N/A
ga revision = 5.6.5
use scalapack = F
input = nwchem_lammps.nw
prefix = nwchem_lammps.
data base = ./nwchem_lammps.db
status = restart
nproc = 1
time left = -1s
Memory information
------------------
heap = 13107200 doubles = 100.0 Mbytes
stack = 13107197 doubles = 100.0 Mbytes
global = 26214400 doubles = 200.0 Mbytes (distinct from heap & stack)
total = 52428797 doubles = 400.0 Mbytes
verify = yes
hardfail = no
Directory information
---------------------
0 permanent = .
0 scratch = .
Previous task information
-------------------------
Theory = pspw
Operation = stress
Status = unknown
Qmmm = F
Ignore = F
Geometries in the database
--------------------------
Name Natoms Last Modified
-------------------------------- ------ ------------------------
1 geometry 2 Thu Oct 3 16:58:53 2019
The geometry named "geometry" is the default for restart
Basis sets in the database
--------------------------
There are no basis sets in the database
NWChem Input Module
-------------------
!!!!!!!!! geom_3d NEEDS TESTING !!!!!!!!!!
Geometry "geometry" -> ""
-------------------------
Output coordinates in angstroms (scale by 1.889725989 to convert to a.u.)
No. Tag Charge X Y Z
---- ---------------- ---------- -------------- -------------- --------------
1 W 74.0000 0.04999689 0.09999378 0.14999288
2 W 74.0000 1.63000384 1.68000452 1.73000836
Lattice Parameters
------------------
lattice vectors in angstroms (scale by 1.889725989 to convert to a.u.)
a1=< 3.160 0.000 0.000 >
a2=< 0.000 3.160 0.000 >
a3=< 0.000 0.000 3.160 >
a= 3.160 b= 3.160 c= 3.160
alpha= 90.000 beta= 90.000 gamma= 90.000
omega= 31.6
reciprocal lattice vectors in a.u.
b1=< 1.052 0.000 -0.000 >
b2=< -0.000 1.052 -0.000 >
b3=< 0.000 0.000 1.052 >
Atomic Mass
-----------
W 183.951000
XYZ format geometry
-------------------
2
geometry
W 0.04999689 0.09999378 0.14999288
W 1.63000384 1.68000452 1.73000836
==============================================================================
internuclear distances
------------------------------------------------------------------------------
center one | center two | atomic units | angstroms
------------------------------------------------------------------------------
2 W | 1 W | 5.17154 | 2.73666
------------------------------------------------------------------------------
number of included internuclear distances: 1
==============================================================================
>>>> PSPW Parallel Module - stress <<<<
****************************************************
* *
* NWPW PSPW Calculation *
* *
* [ (Grassmann/Stiefel manifold implementation) ] *
* *
* [ NorthWest Chemistry implementation ] *
* *
* version #5.10 06/12/02 *
* *
* This code was developed by Eric J. Bylaska, *
* and was based upon algorithms and code *
* developed by the group of Prof. John H. Weare *
* *
****************************************************
>>> JOB STARTED AT Thu Oct 3 16:58:54 2019 <<<
================ input data ========================
input psi filename:./nwchem_lammps.movecs
initializing pspw_APC data structure
------------------------------------
nga, ngs: 3 6
Gc : 2.5000000000000000
APC gamma: 1 0.59999999999999998
APC gamma: 2 0.90000000000000002
APC gamma: 3 1.3500000000000001
number of processors used: 1
processor grid : 1 x 1
parallel mapping :2d hilbert
parallel mapping : balanced
number of threads : 1
parallel io : off
options:
boundary conditions = periodic (version3)
electron spin = restricted
exchange-correlation = LDA (Vosko et al) parameterization
elements involved in the cluster:
1: W valence charge: 6.0000 lmax= 2
comment : Troullier-Martins pseudopotential
pseudpotential type : 0
highest angular component : 2
local potential used : 0
number of non-local projections: 8
semicore corrections included : 1.800 (radius) 4.538 (charge)
cutoff = 2.389 3.185 2.244
total charge: 0.000
atomic composition:
W : 2
number of electrons: spin up= 6 ( 6 per task) down= 6 ( 6 per task) (Fourier space)
number of orbitals : spin up= 6 ( 6 per task) down= 6 ( 6 per task) (Fourier space)
supercell:
cell_name: cell_default
lattice: a1=< 5.972 0.000 0.000 >
a2=< 0.000 5.972 0.000 >
a3=< 0.000 0.000 5.972 >
reciprocal: b1=< 1.052 0.000 -0.000 >
b2=< -0.000 1.052 -0.000 >
b3=< 0.000 0.000 1.052 >
lattice: a= 5.972 b= 5.972 c= 5.972
alpha= 90.000 beta= 90.000 gamma= 90.000
omega= 212.9
density cutoff= 35.427 fft= 16x 16x 16( 1052 waves 1052 per task)
wavefnc cutoff= 35.427 fft= 16x 16x 16( 1052 waves 1052 per task)
Ewald summation: cut radius= 1.90 and 8
Madelung Wigner-Seitz= 1.76011888 (alpha= 2.83729748 rs= 3.70444413)
technical parameters:
time step= 5.80 fictitious mass= 400000.0
tolerance=0.100E-08 (energy) 0.100E-08 (density)
maximum iterations = 1000 ( 10 inner 100 outer )
== Energy Calculation ==
====== Grassmann conjugate gradient iteration ======
>>> ITERATION STARTED AT Thu Oct 3 16:58:54 2019 <<<
iter. Energy DeltaE DeltaRho
------------------------------------------------------
10 -0.2020460841E+02 -0.37164E-09 0.13892E-11
*** tolerance ok. iteration terminated
>>> ITERATION ENDED AT Thu Oct 3 16:58:54 2019 <<<
== Summary Of Results ==
number of electrons: spin up= 6.00000 down= 6.00000 (real space)
total energy : -0.2020460841E+02 ( -0.10102E+02/ion)
total orbital energy: 0.5093526999E+01 ( 0.84892E+00/electron)
hartree energy : 0.2902689593E+00 ( 0.48378E-01/electron)
exc-corr energy : -0.9445045626E+01 ( -0.15742E+01/electron)
ion-ion energy : -0.2193948849E+02 ( -0.10970E+02/ion)
kinetic (planewave) : 0.1441573280E+02 ( 0.24026E+01/electron)
V_local (planewave) : 0.1156119613E+02 ( 0.19269E+01/electron)
V_nl (planewave) : -0.1508727219E+02 ( -0.25145E+01/electron)
V_Coul (planewave) : 0.5805379185E+00 ( 0.96756E-01/electron)
V_xc. (planewave) : -0.6376667662E+01 ( -0.10628E+01/electron)
Virial Coefficient : -0.6466688811E+00
orbital energies:
0.5414223E+00 ( 14.733eV)
0.5414201E+00 ( 14.733eV)
0.5414174E+00 ( 14.733eV)
0.3596809E+00 ( 9.787eV)
0.3596804E+00 ( 9.787eV)
0.2031424E+00 ( 5.528eV)
Total PSPW energy : -0.2020460841E+02
=== Spin Contamination ===
<Sexact^2> = 0.0000000000000000
<S^2> = 0.0000000000000000
== Center of Charge ==
spin up ( 0.0106, 0.0203, 0.0283 )
spin down ( 0.0106, 0.0203, 0.0283 )
total ( 0.0106, 0.0203, 0.0283 )
ionic ( -1.3984, -1.3039, -1.2094 )
== Molecular Dipole wrt Center of Mass ==
mu = ( -16.9083, -15.8910, -14.8528 ) au
|mu| = 27.5503 au, 70.0218 Debye
Translation force removed: ( -0.00002 0.00000 0.00002)
============= Ion Gradients =================
Ion Forces:
1 W ( -0.000001 0.000005 0.000014 )
2 W ( 0.000001 -0.000005 -0.000014 )
C.O.M. ( -0.000000 0.000000 0.000000 )
===============================================
|F| = 0.216488E-04
|F|/nion = 0.108244E-04
max|Fatom|= 0.153080E-04 ( 0.001eV/Angstrom)
======================
= Stress calculation =
======================
============= total gradient ==============
S = ( 0.12513 0.00001 -0.00003 )
( 0.00001 0.12513 -0.00001 )
( -0.00003 -0.00001 0.12513 )
===================================================
|S| = 0.21673E+00
pressure = 0.125E+00 au
= 0.368E+02 Mbar
= 0.368E+04 GPa
= 0.363E+08 atm
dE/da = 0.12513
dE/db = 0.12513
dE/dc = 0.12513
dE/dalpha = 0.00006
dE/dbeta = 0.00020
dE/dgamma = -0.00008
*************************************************************
** **
** PSPW Mulliken analysis **
** **
** Population analysis algorithm devloped by Ryoichi Kawai **
** **
** Thu Oct 3 16:58 **
** **
*************************************************************
== XYZ OUTPUT ==
2
W 0.049997 0.099994 0.149993
W -1.529995 -1.479995 -1.429991
== Atomic Orbital Expansion ==
W nodamping
=====================================================
| POPULATION ANALYSIS OF FILLED MOLECULAR ORBITALS |
=====================================================
== Using pseudoatomic orbital expansion ==
------------------------------------------------------------------------------
*** ORBITAL= 1*** SPIN=BOTH SUM= 0.12471E+01 E= 0.54142E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 0.00000
px pz py
1 W 1 0.00000 0.00000 0.00000 0.00000
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.50000 -0.00001 -0.03953 0.00002 0.50309 0.49532
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00000 -0.00001 -0.00000 -0.00000 0.00000 0.00000 -0.00001 -0.00000
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00000 -0.00000 -0.00000 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.50000 -0.00001 -0.03953 0.00002 0.50309 0.49532
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00000 -0.00001 0.00000 0.00000 -0.00000 -0.00000 0.00001 0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 2*** SPIN=BOTH SUM= 0.12471E+01 E= 0.54142E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 -0.00000
px pz py
1 W 1 0.00000 0.00000 0.00000 0.00000
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.50000 0.00004 0.62658 0.00003 -0.20360 0.25680
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00000 -0.00004 0.00000 0.00000 -0.00000 -0.00000 -0.00001 0.00000
s
2 W 0 0.00000 -0.00000
px pz py
2 W 1 0.00000 -0.00000 -0.00000 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.50000 0.00004 0.62658 0.00003 -0.20360 0.25680
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00000 -0.00004 -0.00000 -0.00000 -0.00000 0.00000 0.00001 -0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 3*** SPIN=BOTH SUM= 0.12471E+01 E= 0.54142E+00 ( 14.733eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 0.00001
px pz py
1 W 1 0.00000 0.00000 -0.00000 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.50000 -0.00001 -0.32532 -0.00000 -0.45327 0.43441
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00000 0.00001 0.00000 -0.00000 -0.00000 -0.00000 -0.00000 0.00000
s
2 W 0 0.00000 0.00001
px pz py
2 W 1 0.00000 -0.00000 0.00000 0.00000
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.50000 -0.00001 -0.32532 -0.00000 -0.45327 0.43441
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00000 0.00001 -0.00000 0.00001 0.00000 0.00000 0.00000 -0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 1.0000 0.0000
------------------------------------------------------------------------------
*** ORBITAL= 4*** SPIN=BOTH SUM= 0.14785E+01 E= 0.35968E+00 ( 9.787eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 -0.00000
px pz py
1 W 1 0.00000 -0.00000 0.00001 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.48310 0.33381 0.00000 -0.60965 0.00000 0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.01690 0.13001 -0.00000 0.00000 0.00000 0.00000 0.00000 -0.00000
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00000 -0.00000 0.00001 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.48310 -0.33381 -0.00000 0.60965 -0.00000 -0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.01690 -0.13001 -0.00000 0.00000 0.00000 0.00000 0.00000 -0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 0.9662 0.0338
------------------------------------------------------------------------------
*** ORBITAL= 5*** SPIN=BOTH SUM= 0.14407E+01 E= 0.35968E+00 ( 9.787eV)
NO ATOM L POPULATION
s
1 W 0 0.00000 -0.00000
px pz py
1 W 1 0.00000 -0.00000 -0.00000 0.00001
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.49580 0.61761 -0.00000 0.33817 0.00000 -0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00420 0.06484 -0.00001 0.00000 -0.00000 -0.00000 -0.00000 -0.00000
s
2 W 0 0.00000 0.00000
px pz py
2 W 1 0.00000 -0.00000 -0.00000 0.00001
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.49580 -0.61761 0.00000 -0.33817 -0.00000 0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00420 -0.06484 -0.00001 0.00000 -0.00000 -0.00000 -0.00000 -0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.0000 0.0000 0.9916 0.0084
------------------------------------------------------------------------------
*** ORBITAL= 6*** SPIN=BOTH SUM= 0.19540E+01 E= 0.20314E+00 ( 5.528eV)
NO ATOM L POPULATION
s
1 W 0 0.49974 -0.70692
px pz py
1 W 1 0.00000 0.00000 -0.00000 0.00000
dx2-y2 dzx d3z2-1 dyz dxy
1 W 2 0.00000 0.00000 -0.00000 -0.00000 -0.00000 0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
1 W 3 0.00026 0.01609 -0.00000 -0.00000 -0.00000 -0.00000 -0.00000 -0.00000
s
2 W 0 0.49974 -0.70692
px pz py
2 W 1 0.00000 -0.00000 0.00000 -0.00000
dx2-y2 dzx d3z2-1 dyz dxy
2 W 2 0.00000 0.00000 -0.00000 -0.00000 -0.00000 0.00000
fx(x2-3y2) fz(5z2-1) fx(5z2-1) fz(5z2-3) fy(5z2-1) fxyz fy(3x2-y2)
2 W 3 0.00026 0.01609 0.00000 0.00000 -0.00000 0.00000 0.00000 0.00000
=== DISTRIBUTION ===
1(W ) 0.5000 2(W ) 0.5000
== ANGULAR MOMENTUM POPULATIONS ===
s p d f
0.9995 0.0000 0.0000 0.0005
========================================
| POPULATION ANALYSIS ON EACH ATOM |
========================================
NO ATOM SPIN TOTAL s p d f
1 W UP 3.00000 0.49974 0.00000 2.47889 0.02137
1 W DOWN 3.00000 0.49974 0.00000 2.47889 0.02137
2 W UP 3.00000 0.49974 0.00000 2.47889 0.02137
2 W DOWN 3.00000 0.49974 0.00000 2.47889 0.02137
=== TOTAL ANGULAR MOMENTUM POPULATION ===
SPIN s p d f
UP 16.66% 0.00% 82.63% 0.71%
UP 16.66% 0.00% 82.63% 0.71%
TOTAL 16.66% 0.00% 82.63% 0.71%
*************************************************************
** **
** PSPW Atomic Point Charge (APC) Analysis **
** **
** Point charge analysis based on paper by P.E. Blochl **
** (J. Chem. Phys. vol 103, page 7422, 1995) **
** **
*************************************************************
pspw_APC data structure
-----------------------
nga, ngs: 3 6
Gc : 2.5000000000000000
APC gamma: 1 0.59999999999999998
APC gamma: 2 0.90000000000000002
APC gamma: 3 1.3500000000000001
charge analysis on each atom
----------------------------
no atom Qelc Qion Qtotal
-- ---- ------- ------- -------
1 W -6.000 6.000 -0.000
2 W -6.000 6.000 0.000
Total Q -12.000 12.000 -0.000
gaussian coefficients of model density
--------------------------------------
no atom g=0.000 g=0.600 g=0.900 g=1.350
-- ---- ------- ------- ------- -------
1 W 6.000 -7.235 17.654 -16.419
2 W 6.000 -7.234 17.651 -16.418
=== Electric Field at Atoms ===
1 W Atomic Electric Field =( -0.00002 0.00000 0.00001 )
(ion) =( 0.00000 0.00000 0.00000 )
(electronic) =( -0.00002 -0.00000 0.00001 )
2 W Atomic Electric Field =( -0.00002 0.00000 0.00002 )
(ion) =( -0.00000 -0.00000 -0.00000 )
(electronic) =( -0.00002 0.00000 0.00002 )
output psi filename:./nwchem_lammps.movecs
== Timing ==
cputime in seconds
prologue : 0.991130E-01
main loop : 0.101190E+00
epilogue : 0.203540E-01
total : 0.220657E+00
cputime/step: 0.252975E-01 ( 4 evalulations, 1 linesearches)
Time spent doing total step percent
total time : 0.222262E+00 0.555655E-01 100.0 %
i/o time : 0.847340E-02 0.211835E-02 3.8 %
FFTs : 0.576015E-02 0.144004E-02 2.6 %
dot products : 0.157053E-02 0.392634E-03 0.7 %
geodesic : 0.203228E-02 0.508070E-03 0.9 %
ffm_dgemm : 0.641376E-04 0.160344E-04 0.0 %
fmf_dgemm : 0.202988E-02 0.507471E-03 0.9 %
mmm_dgemm : 0.286302E-05 0.715756E-06 0.0 %
m_diagonalize : 0.101088E-03 0.252721E-04 0.0 %
exchange correlation : 0.287819E-02 0.719547E-03 1.3 %
local pseudopotentials : 0.346661E-03 0.866652E-04 0.2 %
non-local pseudopotentials : 0.268912E-02 0.672280E-03 1.2 %
hartree potentials : 0.163791E-03 0.409476E-04 0.1 %
ion-ion interaction : 0.699389E-01 0.174847E-01 31.5 %
structure factors : 0.889608E-02 0.222402E-02 4.0 %
phase factors : 0.102510E-04 0.256275E-05 0.0 %
masking and packing : 0.839656E-02 0.209914E-02 3.8 %
queue fft : 0.418949E-02 0.104737E-02 1.9 %
queue fft (serial) : 0.264608E-02 0.661519E-03 1.2 %
queue fft (message passing): 0.136477E-02 0.341193E-03 0.6 %
non-local psp FFM : 0.391964E-03 0.979910E-04 0.2 %
non-local psp FMF : 0.407219E-03 0.101805E-03 0.2 %
non-local psp FFM A : 0.144235E-03 0.360588E-04 0.1 %
non-local psp FFM B : 0.216961E-03 0.542402E-04 0.1 %
>>> JOB COMPLETED AT Thu Oct 3 16:58:54 2019 <<<
Task times cpu: 0.2s wall: 0.2s
Summary of allocated global arrays
-----------------------------------
No active global arrays
GA Statistics for process 0
------------------------------
create destroy get put acc scatter gather read&inc
calls: 0 0 0 0 0 0 0 0
number of processes/call 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
bytes total: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
bytes remote: 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00 0.00e+00
Max memory consumed for GA by this process: 0 bytes
MA_summarize_allocated_blocks: starting scan ...
MA_summarize_allocated_blocks: scan completed: 0 heap blocks, 0 stack blocks
MA usage statistics:
allocation statistics:
heap stack
---- -----
current number of blocks 0 0
maximum number of blocks 294 17
current total bytes 0 0
maximum total bytes 4879496 351944
maximum total K-bytes 4880 352
maximum total M-bytes 5 1
NWChem Input Module
-------------------
CITATION
--------
Please cite the following reference when publishing
results obtained with NWChem:
M. Valiev, E.J. Bylaska, N. Govind, K. Kowalski,
T.P. Straatsma, H.J.J. van Dam, D. Wang, J. Nieplocha,
E. Apra, T.L. Windus, W.A. de Jong
"NWChem: a comprehensive and scalable open-source
solution for large scale molecular simulations"
Comput. Phys. Commun. 181, 1477 (2010)
doi:10.1016/j.cpc.2010.04.018
AUTHORS
-------
E. Apra, E. J. Bylaska, W. A. de Jong, N. Govind, K. Kowalski,
T. P. Straatsma, M. Valiev, H. J. J. van Dam, D. Wang, T. L. Windus,
J. Hammond, J. Autschbach, K. Bhaskaran-Nair, J. Brabec, K. Lopata,
S. A. Fischer, S. Krishnamoorthy, M. Jacquelin, W. Ma, M. Klemm, O. Villa,
Y. Chen, V. Anisimov, F. Aquino, S. Hirata, M. T. Hackler, V. Konjkov,
D. Mejia-Rodriguez, T. Risthaus, M. Malagoli, A. Marenich,
A. Otero-de-la-Roza, J. Mullin, P. Nichols, R. Peverati, J. Pittner, Y. Zhao,
P.-D. Fan, A. Fonari, M. J. Williamson, R. J. Harrison, J. R. Rehr,
M. Dupuis, D. Silverstein, D. M. A. Smith, J. Nieplocha, V. Tipparaju,
M. Krishnan, B. E. Van Kuiken, A. Vazquez-Mayagoitia, L. Jensen, M. Swart,
Q. Wu, T. Van Voorhis, A. A. Auer, M. Nooijen, L. D. Crosby, E. Brown,
G. Cisneros, G. I. Fann, H. Fruchtl, J. Garza, K. Hirao, R. A. Kendall,
J. A. Nichols, K. Tsemekhman, K. Wolinski, J. Anchell, D. E. Bernholdt,
P. Borowski, T. Clark, D. Clerc, H. Dachsel, M. J. O. Deegan, K. Dyall,
D. Elwood, E. Glendening, M. Gutowski, A. C. Hess, J. Jaffe, B. G. Johnson,
J. Ju, R. Kobayashi, R. Kutteh, Z. Lin, R. Littlefield, X. Long, B. Meng,
T. Nakajima, S. Niu, L. Pollack, M. Rosing, K. Glaesemann, G. Sandrone,
M. Stave, H. Taylor, G. Thomas, J. H. van Lenthe, A. T. Wong, Z. Zhang.
Total times cpu: 0.2s wall: 0.3s

View File

@ -0,0 +1,28 @@
echo
#**** Enter the geometry using fractional coordinates ****
geometry units angstrom noautosym
system crystal
lat_a 3.16d0
lat_b 3.16d0
lat_c 3.16d0
end
W 0.0 0.0 0.0
W 0.5 0.5 0.5
end
#***** setup the nwpw gamma point code ****
nwpw
simulation_cell
ngrid 16 16 16
end
ewald_ncut 8
mulliken
lcao #old default
end
nwpw
tolerances 1.0d-9 1.0d-9
end
task pspw stress