Problem with fingerprints for CH4

107 views
Skip to first unread message

Maxi Ramos

unread,
Apr 29, 2019, 10:56:12 AM4/29/19
to aenet
Dear Dr. Artrith,

I'm trying to construct a ANN potential for CH4 molecule. The problem I'm facing is that if I set only 1 atom type in the environment of C

C.fingeprint.stp file:

==================================================================
DESCR
  Structural fingerprint setup for C in CH4 molecule.
END DESCR

ATOM C

ENV  1
H

RMIN 0.25d0

FUNCTIONS type=Behler2011
26
G=2 type2=H  eta=0.003214  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.035711  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.071421  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.124987  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.214264  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.357106  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=0.714213  Rs=0.0000  Rc=3.0000
G=2 type2=H  eta=1.428426  Rs=0.0000  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= -1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= -1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= -1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= 1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= 1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= 1.0  zeta= 1.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= -1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= -1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= -1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= 1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= 1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= 1.0  zeta= 2.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= -1.0  zeta= 4.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= -1.0  zeta= 4.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= -1.0  zeta= 4.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.000357 lambda= 1.0  zeta= 4.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.028569 lambda= 1.0  zeta= 4.0  Rc=3.0000
G=4 type2=H type3=H   eta=0.089277 lambda= 1.0  zeta= 4.0  Rc=3.0000

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

When executing generate.x I get the following error:

forrtl: severe (408): fort: (3): Subscript #1 of the array SF_NG_TYPE has value 0 which is less than the lower bound of 1

As far as I understand it is due to the fact that there are zero atoms of kind C in the environment of a C atom.


As an alternative I tried defining fingertprints for C in the environment for C (knowing that they would be equal to zero):

In this case I can run generate.x, but in the training I get:

Warning: Invalid scaling encountered in 'stp_normalize()'.
          This means at least one fingerprint function for C is always equal to zero!
          Maybe an atomic species is not present in the reference set?

And the RMSE gives NaN.

Could you suggest what would be the proper way to generate fingerprints and train?

Thanks in advance,

Maxi

Nongnuch Artrith

unread,
Apr 29, 2019, 11:27:19 AM4/29/19
to Maxi Ramos, aenet
Dear Maxi,

Have you tried including C in the environment but not setting up any symmetry functions with “type2=C” or “type3=C”?  (I am not sure if that works.)

Alternatively, you could use the Chebyshev descriptor [1] as described in the manual:

Example:
====================================
DESCR
   N. Artrith and A. Urban, Comput. Mater. Sci. 114 (2016) 135-150.
   N. Artrith, A. Urban, and G. Ceder, Phys. Rev. B 96 (2017) 014112.
END DESCR

ATOM C

ENV  2
C
H

RMIN 0.50d0
BASIS type=Chebyshev
radial_Rc = 3.0  radial_N = 16 angular_Rc = 3.0  angular_N = 2
====================================

The Chebyshev descriptor [1]  should not have any issues with CH4, but you will also have to list C as one of the environment (ENV) species. In general, ENV just has to include all chemical species that occur in the training set.

[1] N. Artrith, A. Urban, and G. Ceder, “Efficient and Accurate Machine-Learning Interpolation of Atomic Energies in Compositions with Many Species”, Phys. Rev. B 96 (2017) 014112.

Best,
Nong

Maxi Ramos

unread,
Apr 29, 2019, 2:04:04 PM4/29/19
to Nongnuch Artrith, aenet
Dear Nong,

Thank you for answering so quickly.

I didn't try including C in the ENV without setting any descriptor for it, I will try it immediately.

Yes, the Chebyshev descriptor is already training without problems. I saw another thread where you suggested it.

Best regards,

Maxi


Dr. Maximiliano Ramos  
Fisicoquímica en Interfases y Nanoestructuras
Instituto de Física Rosario / CONICET-UNR



Reply all
Reply to author
Forward
0 new messages