class ReaxParams(ffieldfile, bounds_scale=1.2, settings=None)

Interface to the ReaxFF force field format.


In addition to the ones already availabe in BaseParameters

ff : dict
A dictionary representation of the ffield
path : str
The path to the last written ffield file. Only available after write() or get_engine() has been called.

Parameter Naming Conventions:

Naming follows the tables as documented in the ReaxFF manual.
The name string is generated from the table’s columns Name in Eq, Equation and Comment. Within the name string, a double semicolon (;;) marks the start of a new column.
All atom-specific parameter names will start with the atom prefix, followed by the name: At1.At2.At3:NAME.
Example: The name of the first parameter in the atoms block for a Hydrogen will be H:r_0^sigma;;2;;Sigma bond covalent radius. See below for a full list of names.

__init__(ffieldfile, bounds_scale=1.2, settings=None)

Initialize the class instance, reading a ffied from ffieldfile.

ffieldfile : str
Path to the force field file.
bounds_scale : float >= 0

Apply arbitrary bounds, by providing a factor which will determine lower/upper bounds by b = x0 ± (bounds_scale-1)*abs(x0).


Bounds for any x0 == 0 will be set to +-1.

settings : optional, Settings
A plams.Settings instance that will be added to the output of get_engine(). Must have the input.ReaxFF keys defined.
get_engine(parameters=None, ffpath=None)


When called without ffpath, will store a ffield file in a temporary directory for as long as the returned Engine instance is referenced.

Returns:A ReaxFF Engine class matching the passed params, or the current set of parameters if None.
write(file=None, parameters=None)

Writes the current parameters to file.


When called without file, will store the ffield file in a temporary directory.
Use the path attribute to get the file path.

get_constraints() → List[scm.params.parameterinterfaces.base.Constraint]

Returns a list of physically reasonable Constraints for this instance to be passed to the Optimization.

Will constrain the covalent radii and bond lengths \(r_0\) for the \(\sigma, \pi, \pi\pi\) bonds to \(r_0^\sigma >= r_0^\pi >= r_0^\pi\pi\) and the Van der Waals radius \(r_\mathrm{VdW}\) to \(r_\mathrm{VdW}\) >= r_0^sigma`. Full List of Parameter Names

General block, no prefix
  • p_boc1;;4c;;Overcoordination parameter
  • p_boc2;;4d;;Overcoordination parameter
  • -p_coa2;;15;;Valency angle conjugation parameter
  • p_trip4;;20;;Triple bond stabilization parameter
  • p_trip3;;20;;Triple bond stabilization parameter
  • k_c2;;19;;C2-correction
  • p_ovun6;;12;;Undercoordination parameter
  • p_trip2;;20;;Triple bond stabilization parameter
  • p_ovun7;;12;;Undercoordination parameter
  • p_ovun8;;12;;Undercoordination parameter
  • p_trip1;;20;;Triple bond stabilization energy
  • nonb_low,swa;;21;;Lower Taper-radius
  • R_cut;;21;;Upper Taper-radius
  • p_fe1;;6a;;Fe dimer correction
  • p_val6;;13c;;Valency undercoordination
  • p_lp1;;8;;Valency angle/lone pair parameter
  • p_val9;;13f;;Valency angle parameter
  • p_val10;;13g;;Valency angle parameter
  • p_fe2;;6a;;Fe dimer correction
  • p_pen2;;14a;;Double bond/angle parameter
  • p_pen3;;14b;;Double bond/angle parameter: overcoord
  • p_pen4;;14b;;Double bond/angle parameter: overcoord
  • p_fe3;;6a;;Fe dimer correction
  • p_tor2;;16b;;Torsion/BO parameter
  • p_tor3;;16c;;Torsion overcoordination
  • p_tor4;;16c;;Torsion overcoordination
  • p_elho;;26a;;eReaxFF
  • p_cot2;;17b;;Conjugation
  • p_vdW1;;23b;;VdW shielding
  • cutoff*100;;3a,b;;Cutoff for bond order (* 100)
  • p_coa4;;15;;Valency angle conjugation parameter
  • p_ovun4;;11b;;Overcoordination parameter
  • p_ovun3;;11b;;Overcoordination parameter
  • p_val8;;13d;;Valency/lone pair parameter
  • X_soft;;25;;ACKS2 softness parameter
  • n/a;;n/a;; n/a
  • p_val;;27 via n_el;;eReaxFF
  • n/a;;13d;;if 1: remove delta_j term for non-C-C-C angles and where none of the atoms is N
  • p_coa3;;15;;Valency angle conjugation parameter
  • n/a;;20;;Condition to turn triple bond option: vpar(40) == 1
  • n/a;;26 via Tap(R);;eReax-specific taper radius for interactions with/between electrons and holes
Atoms block, prefix: At1:
  • r_0^sigma;;2;;Sigma bond covalent radius
  • Val_i;;3a,4b,5,9a;;Valency
  • n/a;;9a;;Atomic mass
  • r_vdW;;23a;;van der Waals radius
  • D_ij;;23a;;van der Waals dissociation energy
  • gamma_i;;24;;gammaEEM, EEM shielding
  • r_0^pi;;2;;Pi bond covalent radius
  • Val_i^e;;7,8,9;;Number of valence electrons
  • alpha_ij;;23b;;van der Waals parameter
  • 1/gamma_w;;23b;;van der Waals shielding
  • Val_j^angle;;16c,13c;;Valency for 1, 3-BO correction”
  • p_ovun5;;12;;Undercoordination energy
  • p_i^xel2;;26;;eReaxFF, atom type parameter
  • chi_i;;24,25;;EEM electronegativity
  • eta_i;;24,25;;EEM hardness
  • n/a;;n/a;;Donor or acceptor switch in H-bonds
  • r_0^pi;;2;;Double pi bond covalent radius
  • p_lp2;;10;;Lone pair energy
  • n/a;;n/a;;Atomic heat of formation
  • p_boc4;;4e,f;;Bond order correction
  • p_boc3;;4e,f;;Bond order correction
  • p_boc5;;4e,f;;Bond order correction
  • C_i;;25;;Atomic softness cutoff parameter
  • alpha_i;;26,26a;;eReaxFF, constant, dependent on atom type
  • p_ovun2;;12;;Valence angle parameter
  • p_val3;;13b,13a;;Valence angle parameter
  • beta_i;;26a;;eReaxFF, constant, dependent on atom type
  • Val_i^’boc;;3b;;Number of lone pairs
  • p_val5;;13b;;Valence angle parameter
  • p_c1;;23c;;Inner wall vdW repulsion parameter
  • p_c2;;23c;;Inner wall vdW repulsion parameter
  • p_c3;;23c;;Inner wall vdW repulsion parameter
  • C_i;;23d;;Lg dispersion parameter
  • R_eij;;23d;;VdW Radius for Lg dispersion correctio
Bonds block, prefix: At1.At2:
  • D_e^sigma;;6,11a;;Sigma-bond dissociation energy
  • D_e^pi;;6;;Pi-bond dissociation energy
  • D_e^pipi;;6;;Double pi-bond dissociation energy
  • p_be1;;6;;Bond energy parameter
  • p_bo5;;2;;Double pi bond parameter
  • Val’_i^boc;;3b;;1,3-Bond order correction
  • p_bo6;;2;;Double pi bond order
  • p_ovun1;;11a;;Overcoordination penalty
  • p_be2;;6;;Bond energy parameter
  • p_bo3;;2;;Pi bond order parameter
  • p_bo4;;2;;Pi bond order parameter
  • n/a;;n/a;;n/a
  • p_bo1;;2;;Sigma bond order
  • p_bo2;;2;;Sigma bond order
  • delta’_i;;3a;;Uncorrected BO overcoordination
  • p_ij^xel1;;27;;eReaxFF param for adjusting number of electrons available to host ato
Off-diagonals block, prefix: At1.At2:
  • D_ij;;23a;;VdW energy
  • r_vdW;;23a;;VdW radius
  • alpha_ij;;23a;;VdW parameter
  • r_0^sigma;;2;;Sigma bond length
  • r_0^pi;;2;;Pi bond length
  • r_0^pipi;;2;;PiPi bond length
  • C_i,C_lg,ij;;23d;;Lg dispersion parameter
Angles block, prefix At1.At2.At3:
  • Theta_0,0;;13g;;180o-(equilibrium angle)
  • p_val1;;13a;;Valence angle parameter
  • p_val2;;13a;;Valence angle parameter
  • p_coa1;;15;;Valence conjugation
  • p_val7;;13c;;Undercoordination
  • p_pen1;;14b,14a;;Penalty energy
  • p_val4;;13b;;Valence angle parameter
Torsions block, prefix At1.At2.At3.At4:
  • V_1;;16a;;V1-torsion barrier
  • V_2;;16a;;V2-torsion barrier
  • V_3;;16a;;V3-torsion barrier
  • p_tor1;;16a;;Torsion angle parameter
  • p_cot1;;17a;;Conjugation energy
  • n/a 1;;n/a;;n/a
  • n/a 2;;n/a;;n/a
Hydrogen Bonds block, prefix At1.H.At2:
  • r_hb^0;;18;;Hydrogen bond equilibrium distance
  • p_hb1;;18;;Hydrogen bond energy
  • -p_hb2;;18;;Hydrogen bond/bond order
  • -p_hb3;;18;;Hydrogen bond parameter