Got "segmentation fault" error when using pari_style quip with gap potential file

Hello lammps users,

  • I compiled the lammps with quip and gap packages following the guidelines in http://libatoms.github.io/QUIP/install.html and the README files in lammps. The commands from quip and gap works well.

  • Then I tested the example “in.sw” in the /lammps/examples/USER/quip/ folder, it worked well, which ensures that I compiled the quip package right.

  • However when I tried the example named “in.gap” which uses the potential from gap, I got the segmentation fault error in the output file.

  • The information in the output file is listed below:

LAMMPS (15 May 2015)
Reading data file …
orthogonal box = (0 0 0) to (10.9685 10.9685 10.9685)
1 by 1 by 2 MPI processor grid
reading atoms …
64 atoms
Neighbor list info …
1 neighbor list requests
update every 1 steps, delay 10 steps, check yes
master list distance cutoff = 4.3
Setting up run …

Hello lammps users,

- I compiled the lammps with* quip* and* gap* *packages* following the
guidelines in http://libatoms.github.io/QUIP/install.html and the README
files in lammps. *The commands from quip and gap works well*.

- Then I tested the example *"in.sw"* in the /lammps/examples/USER/quip/
folder, it *worked well*, which ensures that I compiled the quip package
right.

- However when I tried the example named *"in.gap"* which uses the
potential from gap, I got the *segmentation fault error* in the output
file.

- The* information in the output file* is listed below:

LAMMPS (15 May 2015)
Reading data file ...
  orthogonal box = (0 0 0) to (10.9685 10.9685 10.9685)
  1 by 1 by 2 MPI processor grid
  reading atoms ...
  64 atoms
Neighbor list info ...
  1 neighbor list requests
  update every 1 steps, delay 10 steps, check yes
  master list distance cutoff = 4.3
Setting up run ...

============================================================

= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= EXIT CODE: 11
= CLEANING UP REMAINING PROCESSES
= YOU CAN IGNORE THE BELOW CLEANUP MESSAGES

=======================
YOUR APPLICATION TERMINATED WITH THE EXIT STRING: Segmentation fault
(signal 11)
This typically refers to a problem with your application.
Please see the FAQ page for debugging suggestions

- My* lammps version* is "*lammps-15May15*".

Could you please kindly help me with the problem?

​this is *far* too old a LAMMPS version. there were some recent,
incompatible changes in the LAMMPS-QUIP interface.
you need to install LAMMPS version 11Aug2017 or later.

axel.

Hello,

I compiled the new version lammps: lammps-11Aug17. However when I tested the “in.gap” example, I got the same error in the output file:

LAMMPS (11 Aug 2017)
Reading data file …
orthogonal box = (0 0 0) to (10.9685 10.9685 10.9685)
1 by 2 by 2 MPI processor grid
reading atoms …
64 atoms
Neighbor list info …
update every 1 steps, delay 10 steps, check yes
max neighbors/atom: 2000, page size: 100000
master list distance cutoff = 4.3
ghost atom cutoff = 4.3
binsize = 2.15, bins = 6 6 6
1 neighbor lists, perpetual/occasional/extra = 1 0 0
(1) pair quip, perpetual
attributes: full, newton on
pair build: full/bin/atomonly
stencil: full/bin/3d
bin: standard
Setting up Verlet run …
Unit style : metal
Current step : 0
Time step : 0.001

Hello,

I compiled the new version lammps: lammps-11Aug17. However when I tested
the "in.gap" example, I got the same error in the output file:

​does it also segfault with the in.sw or in.molecular​ example input?

axel.

Hello,

It works well with the other examples.

Thanks,
Tingyu

Hello,

It works well with the other examples.

​then i suspect you have compiled libatoms without GAP support.
please check the libatoms documentation. the GAP code has different
licensing terms and has to be obtained separately.

at any rate, the interface is working and thus any segfault issue has to be
on the side of libatoms.

axel.

Hello,

Sorry, I don’t quite understand it. Do you mean the libatoms in QUIP?
I did unarchived the GAP.tar.gz in /QUIP/src directory. Then I edited the Makefile.inc in the build directory and do “make” in /QUIP.
I checked the command “teach_sparse” in the build directory, and it worked.
Does it mean that I compiled it with GAP support?

Thanks,
Tingyu

Hello,

Sorry, I don't quite understand it. Do you mean the libatoms in QUIP?
I did unarchived the GAP.tar.gz in /QUIP/src directory. Then I edited the
Makefile.inc in the build directory and do "make" in /QUIP.
I checked the command "teach_sparse" in the build directory, and it
worked.
Does it mean that I compiled it with GAP support?

​i don't know. this is beyond the scope of the LAMMPS list. unless you
provide conclusive proof, that LAMMPS is at fault here (and so far you
didn't), i have to assume, that it is a problem of the external library and
you should consult the corresponding documentation and software developers.

when the USER-QUIP support was updated in LAMMPS, i had reviewed and tested
it thoroughly and it did work for all test cases, include GAP.
there have been no changes in those parts of LAMMPS since. so the logical
conclusion is that either you made a mistake or that something broke in the
external library. neither is a topic for this mailing list.

axel.

Hello,

BTW, I got some warnings printed in the screen when running in.gap:

WARNING: gpCoordinates_startElement_handler: covariance type is dot product, bu t no zeta attribute is present. This may mean an XML generated by an older versi on. If found, the single value from the theta element will be used, to ensure ba ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot product, bu t no zeta attribute is present. This may mean an XML generated by an older versi on. If found, the single value from the theta element will be used, to ensure ba ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot product, bu t no zeta attribute is present. This may mean an XML generated by an older versi on. If found, the single value from the theta element will be used, to ensure ba ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot product, bu t no zeta attribute is present. This may mean an XML generated by an older versi on. If found, the single value from the theta element will be used, to ensure ba ckwards compatibility
WARNING: gpCoordinates_endElement_handler: dot product covariance is used, but found a theta element in the XML. This may be a sign of an XML generated by an o lder version. The first and only element of theta will be used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is used, but found a theta element in the XML. This may be a sign of an XML generated by an o lder version. The first and only element of theta will be used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is used, but found a theta element in the XML. This may be a sign of an XML generated by an o lder version. The first and only element of theta will be used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is used, but found a theta element in the XML. This may be a sign of an XML generated by an o lder version. The first and only element of theta will be used as zeta.

Thanks,
Tingyu

Hello,

BTW, I got some warnings printed in the screen when running in.gap:

WARNING: gpCoordinates_startElement_handler: covariance type is dot
product, bu
            t no zeta attribute is present. This may mean an XML generated
by an older versi
                  on. If found, the single value from the theta element
will be used, to ensure ba
                            ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot
product, bu
            t no zeta attribute is present. This may mean an XML generated
by an older versi
                  on. If found, the single value from the theta element
will be used, to ensure ba
                            ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot
product, bu
            t no zeta attribute is present. This may mean an XML generated
by an older versi
                  on. If found, the single value from the theta element
will be used, to ensure ba
                            ckwards compatibility
WARNING: gpCoordinates_startElement_handler: covariance type is dot
product, bu
            t no zeta attribute is present. This may mean an XML generated
by an older versi
                  on. If found, the single value from the theta element
will be used, to ensure ba
                            ckwards compatibility
WARNING: gpCoordinates_endElement_handler: dot product covariance is
used, but
           found a theta element in the XML. This may be a sign of an XML
generated by an o
                  lder version. The first and only element of theta will be
used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is
used, but
           found a theta element in the XML. This may be a sign of an XML
generated by an o
                  lder version. The first and only element of theta will be
used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is
used, but
           found a theta element in the XML. This may be a sign of an XML
generated by an o
                  lder version. The first and only element of theta will be
used as zeta.
WARNING: gpCoordinates_endElement_handler: dot product covariance is
used, but
           found a theta element in the XML. This may be a sign of an XML
generated by an o

​none of that is LAMMPS output. like i wrote in my previous response,
please contact the QUIP/libatoms/GAP developers.​

​axel.​