# simplified version of Harris and Goodwin diamond (100) growth
# mechanism, J. Phys. Chem., 1993.


units(length = 'cm', quantity = 'mol', act_energy = 'kcal/mol')

ideal_gas(name = 'gas',
          elements = 'H C',
          species = 'gri30: H H2 CH3 CH4',
          initial_state = state(temperature = 1200.0,
                                pressure = 1.0e3,
                                mole_fractions = 'H:0.002, H2:1, CH4:0.01, CH3:0.0002'))

stoichiometric_solid(name = 'diamond',
           elements = 'C',
           density = (3.52, 'g/cm3'),
           species = 'C(d)')

ideal_interface(name = 'diamond_100',
                elements = 'H C',
                species = 'c6HH c6H* c6*H c6** c6HM c6HM* c6*M c6B ',
                reactions = 'all',
                phases = 'gas diamond',
                site_density = (3.0e-9, 'mol/cm2'),                
                initial_state = state(temperature = 1200.0,
                                      coverages = 'c6H*:0.1, c6HH:0.9'))

species(name = 'C(d)',
        atoms = 'C:1',
        thermo = const_cp() )

# an empty surface site
species(name = 'c6H*',
        atoms = 'H:1',
        thermo = const_cp(h0 = (51.7, 'kcal/mol'), s0 = (19.5, 'cal/mol/K') ) )

species(name = 'c6*H',
        atoms = 'H:1',
        thermo = const_cp(h0 = (46.1, 'kcal/mol'), s0 = (19.9, 'cal/mol/K') ) )

# a hydrogen-terminated site
species(name = 'c6HH',
        atoms = 'H:2',
        thermo = const_cp(t0 = 1200.0, h0 = (11.4, 'kcal/mol'),
                          s0 = (21.0, 'cal/mol/K'))
       )

species(name = 'c6HM',
        atoms = 'C:1 H:4',
        thermo = const_cp(h0 = (26.9, 'kcal/mol'),
                          s0 = (40.3, 'cal/mol/K') )
       )

species(name = 'c6HM*',
        atoms = 'C:1 H:3',
        thermo = const_cp(h0 = (65.8, 'kcal/mol'),
                          s0 = (40.1, 'cal/mol/K') )
       )

species(name = 'c6*M',
        atoms = 'C:1 H:3',
        thermo = const_cp(h0 = (53.3, 'kcal/mol'),
                          s0 = (38.9, 'cal/mol/K') )
       )

species(name = 'c6**',
        atoms = 'C:0',
        thermo = const_cp(h0 = (90.0, 'kcal/mol'),
                          s0 = (18.4, 'cal/mol/K') )
       )

species(name = 'c6B',
        atoms = 'H:2 C:1',
        thermo = const_cp(h0 = (40.9, 'kcal/mol'),
                          s0 = (26.9, 'cal/mol/K') ) )

surface_reaction('c6HH + H <=> c6H* + H2',        [1.3e14,   0.0,  7.3]) # a
surface_reaction('c6H* + H <=> c6HH',             [1.0e13,   0.0,  0.0]) # b
surface_reaction('c6H* + CH3 <=> c6HM',           [5.0e12,   0.0,  0.0]) # c
surface_reaction('c6HM + H <=> c6*M + H2',        [1.3e14,   0.0,  7.3]) # d
surface_reaction('c6*M + H <=> c6HM',             [1.0e13,   0.0,  0.0]) # e
surface_reaction('c6HM + H <=> c6HM* + H2',       [2.8e7,    2.0,  7.7]) # f
surface_reaction('c6HM* + H <=> c6HM',            [1.0e13,   0.0,  0.0]) # g
surface_reaction('c6HM* <=> c6*M',               [1.0e8,    0.0,  0.0]) # h
surface_reaction('c6HM* + H <=> c6H* + CH3',      [3.0e13,   0.0,  0.0]) # i
surface_reaction('c6HM* + H <=> c6B + H2',        [1.3e14,   0.0,  7.3]) # k
surface_reaction('c6*M + H <=> c6B + H2',         [2.8e7,    2.0,  7.7]) # l
surface_reaction('c6HH + H <=> c6*H + H2',        [1.3e14,   0.0,  7.3]) # m
surface_reaction('c6*H + H <=> c6HH',             [1.0e13,   0.0,  0.0]) # n
surface_reaction('c6H* + H <=> c6** + H2',        [1.3e14,   0.0,  7.3]) # o
surface_reaction('c6** + H <=> c6H*',              [1.0e13,   0.0,  0.0]) # p
surface_reaction('c6*H + H <=> c6** + H2',        [4.5e6,    2.0,  5.0]) # q
surface_reaction('c6** + H <=> c6*H',             [1.0e13,   0.0,  0.0]) # r
surface_reaction('c6** + CH3 <=> c6*M',           [5.0e12,   0.0,  0.0]) # s
surface_reaction('c6H* <=> c6*H',                 [1.0e8,    0.0,  0.0]) # t
surface_reaction('c6B  => c6HH + C(d)',           [1.0e9,    0.0,  0.0])
