Missing rules in surface example

I downloaded EMC v9.4.4 and tried to do some example in examples/setup/chemistry/surface

I ran emc_setup.pl surface.esh and emc_linux64 build.emc but there’s some error

I also use the ‘field_debug reduced’ setting to see how EMC interprets rules but hard to interpret it.

It would be glad if you tell me what’s problem and how can I solve it.

I’ll attach error message to make better understand for you. opls-ua.define file is original version of emc v 9.4.4

error message(last 20~ lines)

Debug: core/field/rule.c:442 109 c34 0.25 C(O(C))
Debug: core/field/rule.c:442 92 c34 0.3 C(S(S()))
Debug: core/field/rule.c:442 90 c34 0.235 C(S(
))
Debug: core/field/rule.c:442 68 c32 0 C(c(:c)(:c))
Debug: core/field/rule.c:442 68 c32 0 C(C(=C)(*))
Debug: core/field/rule.c:442 68 c32 0 C(C(C))
core/field/apply/rules.c:215 match =

{id → 47, type → 12, reference → 68, element → “C”,
connect →
{element → “C”, test → {flag → {bond → single}},
connect →
{element → “C”, test → {flag → {bond → single}}}}}

core/field/apply/rules.c:377 match = 0x2bdc970
core/field/apply/rules.c:443 type[9] = c32

Warning: missing rules for field ‘~/program/emc/v9.4.4/field/opls/2012/opls-ua.prm’.
Warning: missing rule for {group, site} = {carbon, 0}.
Error: core/fields.c:432 FieldsApply:
Missing rules.
Program aborted.

I solved this problem. Problem occured in surface.esh

modified point was diamond_chemistry because in diamond_bonded.emc,
diamond_chemistry is defined as

*[diamond](*)(*)*
ITEM    VARIABLES

 following variables redefine counterparts occuring in "lib/diamond_bonded"

# diamond_chemistry     "*C(*)(*)*"
diamond_chemistry       "C"
diamond_name            "carbon"
diamond_atomistic       1

lbond                   1.529
1 Like