Replies: 1 comment 1 reply
-
|
This way of modelling the interactions doesn't work. MACE (like almost all ML potential) is not a pairwise potential, it's a true many-body potential (like real quantum mechanics is!) So you can't turn off a certain element or a specific interaction. If you really insisted on mixing interactions I guess you could do this with ASE by creating a new calculator which physically (temporarily) deletes the third atom, evaluates mace, and then adds your analytical potential. But even this would probably not give the results you expect because with the third atom deleted,the system is quite different than the original one, maybe not very chemical. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi,
I have three atom types in my system, and I'm using LAMMPS and MACE for carrying out MD. Now, I want to use MACE-OFF to describe the interactions between just the first two atom types and a different set of tabulated potentials for describing interactions with atom type 3. In other words, MACE-OFF should NOT recognize type 3.
I tried to use this:
pair_style hybrid mace no_domain_decomposition table spline 2000
pair_coeff 1 3 table Pair_1-3_eV.table 1_3
pair_coeff 2 3 table Pair_2-3_eV.table 2_3
pair_coeff 3 3 table Pair_3-3_eV.table 3_3
pair_coeff * * mace MACE-OFF24_medium.model-lammps.pt C Cl NULL
But I get this error:
Loading MACE model from "MACE-OFF24_medium.model-lammps.pt" ... finished.
==== backtrace (tid: 556404) ====
0 0x0000000000012b20 .annobin_sigaction.c() sigaction.c:0
1 0x0000000000ab64a8 LAMMPS_NS::PairMACE::coeff() ???:0
2 0x00000000009b7137 LAMMPS_NS::PairHybridOverlay::coeff() ???:0
3 0x0000000000893367 LAMMPS_NS::Input::pair_coeff() ???:0
4 0x0000000000898a0e LAMMPS_NS::Input::execute_command() ???:0
5 0x00000000008992f5 LAMMPS_NS::Input::file() ???:0
6 0x0000000000404448 main() ???:0
7 0x0000000000023493 __libc_start_main() ???:0
8 0x00000000004045fe _start() ???:0
=================================
Now if I use this:
pair_coeff 1 3 table Pair_1-3_eV.table 1_3
pair_coeff 2 3 table Pair_2-3_eV.table 2_3
pair_coeff 3 3 table Pair_3-3_eV.table 3_3
pair_coeff * * mace MACE-OFF24_medium.model-lammps.pt C Cl
(same as the first case except without NULL)
I get this error:
Setting up Verlet run ...
Unit style : metal
Current step : 0
Time step : 0.002
ERROR: Problem converting lammps_type to mace_type. (src/ML-MACE/pair_mace.cpp:403)
Last command: run 5000000
terminate called after throwing an instance of 'LAMMPS_NS::LAMMPSException'
what(): ERROR: Problem converting lammps_type to mace_type. (src/ML-MACE/pair_mace.cpp:403)
===================================================================================
= BAD TERMINATION OF ONE OF YOUR APPLICATION PROCESSES
= PID 556608 RUNNING AT beagle3-0008
= EXIT CODE: 134
= CLEANING UP REMAINING PROCESSES
= YOU CAN IGNORE THE BELOW CLEANUP MESSAGES
How do I fix this?
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions