(no subject)

Hello everyone

I want to use reactive force field to simulate a small system
where the demension is smaller than 10 A. So I could not use the
fix reax/c command

So I try to turn to the fix qeq/shielded command. (is this right? this fix handle boxes whose dimension
could be smaller than 10 A?)

but I must extract the " chi eta gamma zeta qcore" from the ffield.reaxc.** file

but I don’t know which data should I copy ( I think this may be one data in this part below)

Thank you for any suggestion !

10 ! Nr of atoms; cov.r; valency;a.m;Rvdw;Evdw;gammaEEM;cov.r2;#
alfa;gammavdW;valency;Eunder;Eover;chiEEM;etaEEM;n.u.
cov r3;Elp;Heat inc.;n.u.;n.u.;n.u.;n.u.
ov/un;val1;n.u.;val3,vval4
C 1.3831 4.0000 12.0000 1.8814 0.1923 0.9000 1.1363 4.0000
9.7821 2.1317 4.0000 30.0000 79.5548 5.9666 7.0000 0.0000
1.2071 0.0000 186.1720 9.0068 34.9357 13.5366 0.8563 0.0000
-2.8983 2.5675 1.0564 4.0000 2.9663 0.0000 0.0000 0.0000
H 0.8873 1.0000 1.0080 1.5420 0.0598 0.6883 -0.1000 1.0000
8.1910 30.9706 1.0000 0.0000 121.1250 3.5768 10.5896 1.0000
-0.1000 0.0000 54.0596 1.3986 2.1457 0.0003 1.0698 0.0000
-15.7683 2.1488 1.0338 1.0000 2.8793 0.0000 0.0000 0.0000
O 1.2450 2.0000 15.9990 2.3878 0.1023 1.0903 1.0548 6.0000
10.5750 32.3923 4.0000 37.5000 116.0768 8.5000 7.5600 2.0000
0.9049 -1.0100 70.1357 2.7162 3.2532 0.0021 0.9745 0.0000
-3.6141 2.7025 1.0493 4.0000 2.9225 0.0000 0.0000 0.0000
N 1.2333 3.0000 14.0000 1.9324 0.1376 0.8596 1.1748 5.0000

Geng Sun

Hello everyone

I want to use reactive force field to simulate a small system
where the demension is smaller than 10 A. So I could not use the
fix reax/c command

You can still use fix qeq/reax, but I would recommend you compare results from the small cell and a larger replicated cell.

So I try to turn to the fix qeq/shielded command. (is this right? this fix handle boxes whose dimension
could be smaller than 10 A?)

Fix qeq/shielded should do this right.

but I must extract the " chi eta gamma zeta qcore" from the ffield.reaxc.** file

Take a look at the CHO example, where qeq parameters are extracted from the force field file.

Ray

thank you for your reply,

I will try the qeq/shielded command first. A simple test show that the result is exactly the same as
the fix qeq/reaxc result.

But something confused me about the units in the file of ffield.reax.** and param.qeq in fix qeq/shielded and qeq/reaxc

In the example/qeq folder,

I find that a file named param.qeq.reax used in the fix qeq/reax command. contains these lines:
1 5.3200 14.8732 1.0206
2 5.8678 14.0000 0.9000
3 8.5000 17.9978 1.0503
the units for these datas are eV and A, according the documents ,is this right?

because these numbers are exactly same as used in the ffield.reax.cho, So , units used in ffield.reax.cho are also eV ,A , am I right?

but , in the same folder ,that param.qeq.1 used in the fix qeq/shielded command looks like this
real
1 5.3200 14.8732 1.0206 0.0 0.0
2 5.8678 14.0000 0.9000 0.0 0.0
3 8.5000 17.9978 1.0503 0.0 0.0

the numbers are the same as showing above, but the the unit is real for these parameters.

This is really confusing for me , thanks for any suggestion !

geng sun

thank you for your reply,

I will try the qeq/shielded command first. A simple test show that the result is exactly the same as
the fix qeq/reaxc result.

But something confused me about the units in the file of ffield.reax.** and param.qeq in fix qeq/shielded and qeq/reaxc

In the example/qeq folder,

I find that a file named param.qeq.reax used in the fix qeq/reax command. contains these lines:
1 5.3200 14.8732 1.0206
2 5.8678 14.0000 0.9000
3 8.5000 17.9978 1.0503
the units for these datas are eV and A, according the documents ,is this right?

This file is copied from the reax/CHO example, and qeq parameters for reax/c in fix qeq/reax are always in ev and ang.

because these numbers are exactly same as used in the ffield.reax.cho, So , units used in ffield.reax.cho are also eV ,A , am I right?

Reax/c force field file has various units, especially those for energies.

but , in the same folder ,that param.qeq.1 used in the fix qeq/shielded command looks like this
real
1 5.3200 14.8732 1.0206 0.0 0.0
2 5.8678 14.0000 0.9000 0.0 0.0
3 8.5000 17.9978 1.0503 0.0 0.0

Yeah, this is a mistake. These values in the param.qeq.1 file are in metal units.

Ray

Thank you for your reply:

I make a simple test, but the result still confuse me a lot

I use a “run 0” method to just calculate the energy of the CHO system in the example/qeq folder, using different qeq/reax method

1st one using the fix qeq/reaxc command, the line in log file is:
Step PotEng q1 q2 q3 qtot
0 -10226.557 0.095634063 -0.15658793 -0.091167279 4.4408921e-16

2nd one using fix qeq/shielded command with the unit in param.qeq is “real”
Step PotEng q1 q2 q3 qtot
0 -10226.557 0.095634063 -0.15658793 -0.091167279 4.4408921e-16

3rd one using fix qeq/shielded command with the unit in para.qeq is “metal”.
Step PotEng q1 q2 q3 qtot
0 -10152.168 0.043225417 0.003809351 -0.13443794 -4.4408921e-15

note that numbers of the force field parameter are kept same.

the results are quite strange: units in file param.qeq.reax should be eV, A as required,
but When I am using the fix qeq/shield command with the same numbers but unit = real. the results are exactly same as the 1 st one,

but fix qeq/shielded command with a unit=metal , the results are different?

This may be not a mistake?

thank you very much for your kindly reply

Geng Sun

Yes, this is a mistake/bug as I said in my previous email. I will take a look at it. It is some trivial unit conversion error in the code.

Nevertheless, the parameters in the param.qeq1 are in metal units.

Ray

Ray,

Thanks,I will follow the update in lammps webs. Hoping for the new verion for this fix.

Geng

Nothing major is going to change except for some minor unit conversions.

Ray

Ray,

I see that there are some updates in the doc of fix qeq.
Now, It seems that , ALL the units in the parameter file must be eV, A. No matter what I used in the input script for lammps, am I right ?

Then I have another question when using the fix qeq.
A error that I often encountered is:
p0: not enough space for bonds! total=14748 allocated=14074
This error happens too, when I used the fix reaxc command. But if I use the fix qeq, it seems coming out more often.( But I am not quite sure,
But this error comes out according the machine, processor numbers …).
How to fix this ?
I have tried to decrease the timestep (not work), building neighbours more frequencly (not work), make the SAFE ZONE and SAFER ZONE in reaxc_defs.h and fix_qeq.h a larger number (sometimes works, sometimes fail)

thank you for any suggestions !

Geng Sun

Yes for your first Q.

For not enough space error, it is easiest to increase the safezone and mincap keywords.

Ray