qeq/reax

Dear Lammps Experts

Im running a system with REBO+lj/cut/coul/cut potential.
System has a nanotube wrapped with a protein.

I performed energy minimizations using this potential and obtained a minimum
configuration.

I want to perform a charge equilibriation to this system using qeq/reax method.
And I don’t want the configuration of the system to change.

Is this approach correct and if yes how to perform this on lammps using qeq/reax

thanks

Milinda Samaraweera
University of Connecticut
Department of Chemistry
55 N Eagleville road
unit 3060
Storrs CT
USA

Yes, you can perform this with LAMMPS, but I am not sure how correct
or meaningful it is.

Anyway, please see the fix qeq/reax doc page on how to perform charge
equilibration without using pair_sytle reax. You still have to
manually extract the three parameters (chi, eta, gamma) from reax
force field files (ffield.reax.*) for the elements of your system.

To perfrom qeq/reax while freezing the system, simply apply fix
qeq/reax as your only fix.

Ray

Anyway, please see the fix qeq/reax doc page on how to perform charge
equilibration without using pair_sytle reax. You still have to
manually extract the three parameters (chi, eta, gamma) from reax
force field files (ffield.reax.*) for the elements of your system.

Coincidentally I've just tried that. The fix crashes. It still relies
on the reaxc variable (and a reax/c pair potential!), which is set in
the constructor:
  reaxc = (PairReaxC *) force->pair_match("reax/c",1);

In the version that reads a parameter file (and sets reaxflag to 0) in
FixQEqReax::setup_pre_force the allocate_matrix method is called. In
there a null pointer dereference occurs:
  int mincap = reaxc->system->mincap;
  double safezone = reaxc->system->safezone;

Any suggestions on how to determine sensible default values for these variables?
Daniel

Any suggestions on how to determine sensible default values for these variables?

I modified the fix to use MIN_CAP and SAFE_ZONE from reax_defs.h
Let's see how that goes.