ase.calculators.kim.exceptions.KimpyError: Calling "create" failed

Dear all,

I used calc = KIM('Tersoff_LAMMPS_AlbeNordlundNord_2002_GaAs__MO_799020228312_002') in ASE to obtain EAM potential for GaAS. But error said:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kim.py", line 124, in KIM
    return KIMCalculator(model_name, options, debug)
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/calculators.py", line 22, in KIMCalculator
    return KIMModelCalculator(model_name, debug=debug, **options)
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimmodel.py", line 243, in __init__
    self.model_name, ase_neigh, neigh_skin_ratio, self.debug
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimmodel.py", line 33, in __init__
    self.init_kim()
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimmodel.py", line 61, in init_kim
    self.kim_model = kimpy_wrappers.PortableModel(self.model_name, self.debug)
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimpy_wrappers.py", line 126, in __init__
    self.model_name,
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimpy_wrappers.py", line 36, in check_call
    _check_error(error, f.__name__)
  File "/Users/yswang/anaconda/lib/python3.6/site-packages/ase/calculators/kim/kimpy_wrappers.py", line 26, in _check_error
    raise KimpyError('Calling "{}" failed.'.format(msg))
ase.calculators.kim.exceptions.KimpyError: Calling "create" failed.

I don’t know what’s wrong with it. Please help me if you have any suggestion. Thanks.

Bests

Hi,

It looks like it’s having trouble initializing a KIM API model object. Are you sure that model is installed? Do you see a file named kim.log in the directory where you were running this python module? That should give more details.

Dan

Hi Dan,

Thanks for your response! The information listed in Kim.log said:

2021-01-18:07:45:07CST * 0 * information * 0x7fb3682054e0 * KIM_LogImplementation.cpp:96 * Log object created.  Default verbosity level is 'information'.
2021-01-18:07:45:07CST * 1 * information * 0x7fb3682054e0 * KIM_LogImplementation.cpp:106 * Log object destroyed.
2021-01-18:07:45:07CST * 0 * information * 0x7fb3684948a0 * KIM_LogImplementation.cpp:96 * Log object created.  Default verbosity level is 'information'.
2021-01-18:07:45:07CST * 0 * information * 0x7fb3682054e0 * KIM_LogImplementation.cpp:96 * Log object created.  Default verbosity level is 'information'.
2021-01-18:07:45:07CST * 1 * information * 0x7fb3682054e0 * KIM_LogImplementation.cpp:156 * Log object renamed.  ID changed to '0x7fb3684948a0_Collections'.
2021-01-18:07:45:07CST * 2 * information * 0x7fb3684948a0_Collections * KIM_LogImplementation.cpp:160 * Log object renamed.  ID changed from '0x7fb3682054e0'.
2021-01-18:07:45:07CST * 1 * error * 0x7fb3684948a0 * model_driver_Tersoff.cpp:526 * model_driver_create: Not all interactions were set!
2021-01-18:07:45:07CST * 2 * error * 0x7fb3684948a0 * KIM_ModelImplementation.cpp:3138 * Model Driver supplied Create() routine returned error.
2021-01-18:07:45:07CST * 3 * error * 0x7fb3684948a0 * KIM_ModelImplementation.cpp:2163 * Initialization of Parameterized Model returned error.
2021-01-18:07:45:07CST * 3 * information * 0x7fb3684948a0_Collections * KIM_LogImplementation.cpp:106 * Log object destroyed.
2021-01-18:07:45:07CST * 4 * information * 0x7fb3684948a0 * KIM_LogImplementation.cpp:106 * Log object destroyed.

Yangshuai

The relevant thing here is the model driver complaining that “Not all interactions were set!”. If you look at the model driver source code, you can see that this error is being raised inside of the function that reads the parameter file. I’ve checked that I can build and run the model from source successfully. Did you install the model using the ‘openkim-models’ binary package? If so, what OS are you on?

Yes, I think ‘openkim-models’ binary package has already been installed. My OS is macOS Catalina. In fact, I can use most of the calculators in OpenKIM, e.g.

calc = KIM('SW_StillingerWeber_1985_Si__MO_405512056662_005')
calc = KIM('EAM_Dynamo_Ackland_2003_W__MO_141627196590_005')
calc = KIM('EDIP_JustoBazantKaxiras_1998_Si__MO_958932894036_002')
calc = KIM('LJ_ElliottAkerson_2015_Universal__MO_959249795837_003')
calc = KIM('EAM_Dynamo_BonnyPasianotMalerba_2009_FeNi__MO_267721408934_005')

But only this GaAS potential went wrong.

Hi all, I can confirm an issue. It is independent of kimpy or ASE. If I do this at the command line

% /usr/local/Cellar/kim-api/2.2.1/libexec/kim-api/kim-api-portable-model-info Tersoff_LAMMPS_AlbeNordlundNord_2002_GaAs__MO_799020228312_002
Error creating model object

I get the reported error in the kim.log file.

A quick testing of other openkim.org models associated with the same Model Driver shows that some work and some don’t. The underlying cause is still under investigation.

Hi, I’m the maintainer of the model driver. I cannot reproduce this error using KIM 2.2.1 installed from source and my own test simulator code.

What operating systems are you using? I only test on Linux.

@relliott: any ideas what’s going wrong? Can you test if you also get this error with the new version of the driver that I uploaded a while ago, it should have some adjustments for newer KIM versions?

It appears that this issue is due to homebrew binaries being built with the combination (clang, clang++, and gfortran) of compilers. Testing indicates that building with (gcc, g++, and gfortran), i.e., a consistent compiler suite, will resolve the issue.

Efforts to update the homebrew binaries are already underway.

Hello,

OK! There were a couple of technical issues involved here. The details are not so important. Also, in the meantime Tobias has provided an updated Model Driver and thus the model you are trying to use now has a new version:

Tersoff_LAMMPS_AlbeNordlundNord_2002_GaAs__MO_799020228312_003

We’ve released a new snapshot of the openkim-models archive and it is (just) now available via homebrew.

So, If you update & upgrade your homebrew you should get the new versions of everything. Then, I think it should all work for you.

Please let us know if you continue to have any problems.

Cheers,
Ryan