# Reduce an surface reaction scheme.

43 views

### b.b...@gmail.com

Jun 3, 2024, 3:29:32 PMJun 3
to Cantera Users' Group
Hello

I am trying to create a sub surface reaction scheme:

#gas
for s in species:print(s.name)
print('-----')
#surface
for s in species_s: print(s.name)
for r in reactions: print(r.equation)
surf2=ct.Interface(name='My_Pts',thermo='ideal-surface', kinetics='surface',
species=species_s, reactions=reactions, gas=[gas2])

I obtain:
-----
H2
-----
PT(S)
H(S)
H2 + 2 PT(S) => 2 H(S)
2 H(S) => H2 + 2 PT(S)

and the error :

InputFileError thrown by Kinetics::addReaction: Error on line 71 of ./ptH2.yaml: Reaction 'H2 + 2 PT(S) => 2 H(S)' contains the undeclared species 'H2' | Line | | 66 | -1.3209912e+04, 3.6137905] | 67 | - [1.945418, 9.1761647e-04, -1.1226719e-07, -9.9099624e-11, 2.4307699e-14, | 68 | -1.4005187e+04, -11.531663] | 69 | | 70 | reactions: > 71 > - equation: H2 + 2 PT(S) => 2 H(S) # Reaction 1 . (0) ^ | 72 | rate-constant: {A: 4.4579e+10, b: 0.5, Ea: 0} | 73 | orders: {PT(S): 1} | 74 | - equation: 2 H(S) => H2 + 2 PT(S) # Reaction 2 . (1) ***********************************************************************

It seems that I do not link the surface to the gas scheme.

Thanks

Ben

### Ray Speth

Jun 10, 2024, 11:33:34 PMJun 10
to Cantera Users' Group

Hi Ben,

The correct keyword argument for specifying the adjacent phases is adjacent, not gas. If you write:

surf2=ct.Interface(name='My_Pts', thermo='ideal-surface', kinetics='surface', species=species_s, reactions=reactions, adjacent=[gas2])

I think it should work.

Regards,
Ray