Warning message about field

Hello all,

when I’m running my esh script, I’m reaching this warning message :
“Info: force field type = “opls”
Info: force field name = “opls/2012/opls-ua”
Info: force field location = “/field”
Info: build for LAMMPS script in “…/build”
Warning: field ‘pcff_iff_nuwan’ not found;
Info: adding pressure sampling
Info: creating EMC build script “build.emc”
Info: assuming mass fractions”

and because of my field is not founded, I need to change my field manually in my build.emc to finally execute my build.emc file to get params and data file to use on lammps.

Is it possible a way to define my field path when my running my esh file using: perl emc_setup.pl pu_spherulitic.esh to use pcff field ?

I’m attaching my esh file.
pu_spheruliticNEW.esh (640 Bytes)

My goal is use this two fields :

pcff_templates.dat (34.7 KB)
pcff.frc (332.4 KB)

Hi Cássia,

To get straight to the point: you are missing the path to your field. For some reason, fields are not at the location, that EMC Setup is expecting them. EMC Setup uses two ways:

  1. It tries to use the environment variable EMC_ROOT, which should be set to where your EMC distribution is residing. In my case this is $HOME/emc/v9.4.4
  2. If the former fails, it uses the location of emc_setup.pl – which normally would be $EMC_ROOT/scripts – from which the field directory should be at $EMC_ROOT/scripts/../field

The line stating where fields are located, i.e.

Info: force field location = “/field”

tells me, that neither of the two above assumptions are satisfied. You can also provide a search path, if you have moved the field directory, by


field_location	your/field/location
field			pcff_iff_nuwan
field_increment warn


Note that setting of field_location has to precede field. EMC Setup descends into provided field directories to search for the name as given by field.

As an aside – since I see you are thinking of using IFF – you can also rack-and-stack force fields. In this case, you can indicate what specific force to apply in the definition of your groups with keyword field or f, e.g.


field		pcff, iff



name1:f=iff	[your][group]
name2		CCO


Typically, you would apply IFF to an imported crystal structure though, e.g.


structure	import, name="crystal.car", field=iff, etc.


Even though I put the field that I wan to use, it’s always is getting opls-ua, so I took a look at emc_setup.pl and it’s is there:

“%::EMC::Field = (
dpd => {auto => 0, bond => 0},
flag => 0,
“format” => “15.10e", id => "opls-ua", name => scrub_dir("opls/2012/opls-ua"), type => "opls", location => scrub_dir("$::EMC::Root/field/"), write => 1 ); ::EMC::FieldFlag = (
angle => 0,
bond => 0,
charge => 1,
check => 1,
debug => “false”,
error => 1,
group => 0,
improper => 0,
increment => 0,
nbonded => 0,
torsion => 0
::EMC::FieldFlags = ( complete => 1, empty => 1, error => 1, false => 1, first => 1, ignore => 1, reduced => 1, true => 1, "warn" => 1 ); ::EMC::FieldList = (
id => {},
name => [],
location => [scrub_dir(”$::EMC::Root/field/”)]"

But I included the field location in my script and now it works! thank you!