FW: NATDEF in Reaxff

Hi,

There are some problems in the NATDEF tag in Reaxff

/* NATDEF = Max number of atoms

#define NATDEF 40000

This is the default. And I can successfully compiled

But when I increase this NATDEF 40000 to 70000, it fails to compile.

reax_inout.F:(.text+0x2275): relocation truncated to fit: R_X86_64_PC32 against symbol `cbktregime_’ defined in COMMON section in …/…/lib/reax/libreax.a(reax_inout.o)

reax_inout.F:(.text+0x2298): relocation truncated to fit: R_X86_64_32S against symbol `cbkrestr_’ defined in COMMON section in …/…/lib/reax/libreax.a(reax_inout.o)

reax_inout.F:(.text+0x229f): relocation truncated to fit: R_X86_64_32S against symbol `cbkrestr_’ defined in COMMON section in …/…/lib/reax/libreax.a(reax_inout.o)

What is possible reason? And how to fix this?

Thanks for your help.

Best Regards

Zhendong

Maybe Aidan can respond to this.

Steve

The short answer is, you are allocating an awful lot of memory. You may
still be able to compile, if you can find the right compiler switch. But a
better solution is probably to put reax_defs.h on a diet. See this thread
for more info:

http://lammps.sandia.gov/threads/msg13503.html

Dear Aidan and Steve,

Thanks, I already read that thread http://lammps.sandia.gov/threads/msg13503.html.

I note that the NATDEF tag (Max number of atoms) in Reax/c can be up to 100K (by default). And it can be successfully compiled.

However, in Reax, the NATDEF tag is 40K (by default). And if increased such as 60K,70K, it is going to fail to compile.

Anyway, is there another good solution?

Thanks

Best Regards
Zhendong