error of atom.cpp

Hi all,

I want to use eam potential to simulate my case. The commands as shown here

units metal
boundary p p s
atom_style atomic

Atom definition

lattice hcp 3.21
region allbox block -5 10 0 10 0 110
create_box 2 allbox

region left-Mg block INF INF INF INF 55 INF
create_atoms 1 region left-Mg
mass 1 24.305

region right-Al block INF INF INF INF INF 55
lattice fcc 4.05
create_atoms 2 region right-Al
mass 2 26.982

Setting and Runing

group Mg type 1
group Al type 2
group allbox region allbox

pair_style eam
pair_coeff * * Al_Mg.eam
neighbor 3.0 bin

But the error is shown that Invalid mass value atom.cpp:972

void Atom::set_mass(int itype, double value)
if (mass == NULL) error->all(FLERR,“Cannot set mass for this atom style”);
if (itype < 1 || itype > ntypes)
error->all(FLERR,“Invalid type for mass set”);

mass[itype] = value;
mass_setflag[itype] = 1;

if (mass[itype] <= 0.0) error->all(FLERR,“Invalid mass value”);

What’s meaning about it, and how to write the command?



That variant of set_mass() is called by EAM when it reads
your potential file. Pair style eam (as opposed to eam/alloy, etc) is for single-element system,

though you can run an alloy system with it if you assign different

potential files to different atom types.

You appear to be using Al_Mg.eam for both atom types in your system.

It probably isn’t a single-element file format and the code is thus

reading a bogus value for element mass.