Skip to content

afir

esta.ped.afir

AFIR approach implementation for basic chemical reactions: move atoms closer or away from each other to simulate the chemical reaction

Following examples will be explored to understand the AFIR method: 1. take example of H2+H -> H + H2 system and try to move the atoms 2. O2 dissociation on atomic surfaces 3. H2O splitting on atomic surface such as metal surfaces

implementation : see the notes. .... set of procedures to be followed ...

Read CG algorithm and implement as a toy model, relax h2O molcules (test against scipy implementatino) read BFGS algorith and implement as a toy model, and relax H2O molecule -- (test the implementation against the ASE implementation and Scipy implementation)

  1. energy of initial str
  2. energy of moved str with force and without force

dpe(xyz)

dpe for the object xyz

dpe = c * sum (d_ij * gamma_ij)/ sum (gamma_ij)

where c = N/ ( 2^(-⅙) - ( 1 + sqrt (1 + (N/eps) ) ^(-⅙)) * R0) R0 = 3.8164 Ang, and eps = 1.0061 kJmol-1; ith atom belongs to system i(S_i), and jth atom belongs to system j (S_j)

Parameters:

  • xyz (obj) –

    xyz object containing information of coordinates and atomic symbols

Returns:

  • dp_energy ( scalar ) –

    distorted potential energy

  • note ( ) –
  • see ( https://stackoverflow.com/questions/11480106/python-pass-object-as-argument ) –
  • Update ( The OP is trying to pass an object instance at class definition time (or so I ) –
  • think after seeing his comment). The answer below is not applicable.
  • Is this what you are trying to achieve?
  • class Car:

    def init(self, driver): self.driver = driver

  • class Driver:

    pass

  • driver = Driver()
  • car = Car(driver)