0% found this document useful (0 votes)
352 views15 pages

Chemkin Tutorial for Reaction Mechanisms

A tutorial document provides an overview of using Chemkin, a software package for modeling chemical kinetics. Chemkin allows for the efficient handling of large reaction mechanisms and includes tools like AURORA and PLUG for simulating different reactor configurations. The document reviews using Chemkin to define gas phase and surface species/reactions, and thermal and transport properties. It also discusses initializing Chemkin and interfacing it with application codes to calculate species rates and coverages.

Uploaded by

Osas E Egho
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
352 views15 pages

Chemkin Tutorial for Reaction Mechanisms

A tutorial document provides an overview of using Chemkin, a software package for modeling chemical kinetics. Chemkin allows for the efficient handling of large reaction mechanisms and includes tools like AURORA and PLUG for simulating different reactor configurations. The document reviews using Chemkin to define gas phase and surface species/reactions, and thermal and transport properties. It also discusses initializing Chemkin and interfacing it with application codes to calculate species rates and coverages.

Uploaded by

Osas E Egho
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
  • Introduction to Chemkin
  • Ammonia Decomposition Example
  • Utilities in Chemkin
  • Components of Chemkin Suite
  • Defining Conditions in Chemkin

A Tutorial on Chemkin

Niket Kaisare (11-12-2007)


Indian Institute of Technology Madras Original Presentation: Dr. Ashish Mhadeshwar (June 2004)

Why use Chemkin?

1. Efficient handling of large reaction mechanisms 2. Generalized framework, simple and standard inputs 3. Minimization of common mistakes 4. Common platform for distributing new products

Example: Ammonia Decomposition on Ruthenium

NH3 NH3* NH2* NH* H*

H2

Ruthenium

Requirements
We intend to solve a combined flow-diffusion-reaction problem 1. 2. 3. 4. Reaction stoichiometry and rate constants Reaction thermo-chemistry Thermodynamic properties Transport properties (diffusion, viscosity and thermal conductivity)

Example: Ammonia Decomposition on Ruthenium Matrix of stoichiometric coefficients


R1 1. 2. 3. 4. 5. 6. N2 + 2* H2 +2* NH* + * NH2* + * NH3* + * NH3 + * 2N* 2H* N* + H* NH* + H* NH2* + H* NH3* N* H* NH* NH2* NH3* 2 2 R2 R3 1 1 -1 1 1 -1 1 -1 1 1 R4 R5 R6

Kinetic parameters for each reaction

T r j = A0 j T ref

j E j m e RT akj

Reaction thermo-chemistry H , G, S

Thermodynamic and Transport properties

cp , H , ; k g , Dik ,

Example: Ammonia Decomposition on Ruthenium

Matrix of stoichiometric coefficients


R1 R2 R3 R4 R5 R6 N* 2 1 1. N2 + 2* 2N* 2. H2 +2* 2H* H* 2 1 1 1 [Link] NH* NH* + * N* + H* 1. -1 1 4. NH2* + * NH* + H* -1 1 5. NH3* + * NH2* + H* NH2* [Link] NH3 + * NH3* NH3* -1 1

straightforward

T j E j Kinetic parameters for 3. Adding/removingreactionsfromkj e RT a m r j = A0 j each reaction T ref mechanismiscumbersome


Reaction thermo-chemistry H , G, S Thermodynamic and Transport properties cp , H , ; k g , Dik ,

Utilities

AURORA/SENKIN AURORA predicts the timeevolution or steady state of a well mixed reactor.

CRESLAF simulates laminar, chemically reacting, boundary-layer flow in cylindrical or planar channels.

Utilities

PLUG simulates a plug-flow reactor with gas-phase and surface chemistry.

EQUIL calculates the equilibrium state of systems containing ideal gas mixtures or ideal solutions.

Utilities

OPPDIF predicts the structure of opposed-flow diffusion flames in cylindrical or planar coordinate systems.

PREMIX predicts the structure of steady, laminar, 1D, pre-mixed flames.

Utilities

SHOCK: A program for predicting chemical behavior behind incident and reflected shock waves.

SPIN: A program for modeling one-dimensional, rotating-disk or stagnation-flow chemicalvapor-deposition reactors.

Components of Chemkin Suite

1. Chemkin 2. Surface Chemkin 3. Transport

Components of Chemkin Suite


Chemistry Input Properties Input Link File
ChemKin Utilities

Interpreter

Library Application

CHEMKIN Interpreter Library Chemistry Input Physical Properties Input Link File cklink ckinterp.x cklib.f fort.15

SURFACE TRANSPORT skinterp.x sklib.f [Link] tranfit.x tranlib.f --trandat tplink

thermdat sklink

Note: Surface Chemkin and Transport Libraries require cklink for species information

Example: Ammonia Decomposition on Ruthenium

NH3 NH3* NH2* NH* H*

H2

Ruthenium

1. CHEMKIN: To define gas phase species and thermodynamics 2. SURFACE CHEMKIN: To define surface species and reactions 3. TRANSPORT: To define gas phase transport properties (diffusion, viscosity and thermal conductivity) if applicable

Defining Gas Phase Conditions in Chemkin


fort.15 thermdat
ChemKin Utilities

ckinterp.x

cklink

cklib.f Application

Steps: Create fort.15 (gas phase reaction mechanism)

Input of elements, species, and reactions in fort.15

Input of thermodynamic database: thermdat Compile ckinterp.f to create ckinterp.x Run ckinterp.x to create fort.16 and cklink (MUST READ fort.16) Compile cklib.f to create cklib.o and link with your code

1. Chemkin inputs: Sample fort.15

ELEMENTS N H AR RH END SPECIES N2 NH3 END REACTIONS END H2 AR

5 elements

6 species

0 reactions

Chemkin peculiarity: Catalyst should be declared with gas phase species

2. Chemkin inputs: Thermodynamic database thermdat

Low
THERMO 300.000 1000.000 5000.000 NH3 L 7/88N 1H 3

Mid High

G 200.000 3500.000 1000.000

1 2

3.85746029E+00 4.41437026E-03-2.21481404E-06 5.23490188E-10-4.72084164E-14

-4.87591660E+04 2.27163806E+00 2.35677352E+00 8.98459677E-03-7.12356269E-06 3 2.45919022E-09-1.43699548E-13-4.83719697E+04 9.90105222E+00 4

Chemkin peculiarity: Fixed format that must be followed for every new entry

3. Check output file fort.16 for errors Run ckinterp.x. Two output files are created: cklink and fort.16

Defining Surface Conditions in Chemkin


[Link] cklink thermdat
Surface ChemKin

skinterp.x

sklink

sklib.f Application

Steps: Create [Link] (surface reaction mechanism) Input surface species and reactions Input of thermodynamic database: thermdat Compile skinterp.f to create skinterp.x

Run skinterp.x to create [Link] and sklink (MUST READ [Link]) Compile cklib.f to create cklib.o and link with your code

1. Surface Chemkin inputs: Sample [Link]


SITE/SURFACE/ H(S) NH2(S) END N(S) NH3(S) SDEN/1.66058e-9/ NH(S) RU(S)

site density (mol/cm2s)

surface species units reaction

BULK RU(B)/12.37/ END

REACTIONS H2 + 2RU(S) STICK

kcal/mole => 2H(S) + 2RU(B) 1.0 0.0 1.9

2H(S) + 2RU(B) => H2 + 2RU(S)

6.022e21

0.0

23.7

N2 + 2RU(S) STICK

=> 2N(S) + 2RU(B)

1.0

0.0

6.2

sticking keyword
6.022e21 0.0 50.3 => N(S) + H(S) + RU(B) 6.022e19 0.0 5.8

2N(S) + 2RU(B) => N2 + 2RU(S)

NH(S) + RU(S)

COV/N(S) 0.0 0.0 15.4/ N(S) + H(S) + RU(B) => NH(S) + RU(S) 6.022e19 0.0 37.3

Coverage dependent parameters


T E k = A0 exp Tref RT

COV/N(S) 0.0 0.0 -19.7/

...

1. Surface Chemkin inputs: Peculiarities in [Link] Site density is a 3 element vector (gas, surface, bulk). Surface site density, i.e., sden(2) is typically used in the calculations, other two are zero. For every consumed vacant surface site, a bulk site is produced. However, for reactions in the category of A(S) + B(S) C(S) + D(S), no vacant surface sites or bulk sites are involved. Reactions are written in irreversible manner, due to unavailability of thermodynamic database (specific heats) for surface species. Units of pre-exponential factors are dependent on the type of reaction in the mechanism. The pre-exponential factor should be defined such that the reaction rate is calculated in mol/cm2sec.

2. Surface Chemkin inputs: Thermodynamic database thermdat


RU(S) 81292RU 1 S 300.00 2000.00 1000.00 1 2 0.02318546E+02 0.01929426E-01-0.01682130E-05 0.04131402E-09-0.16692935E-14

-0.07634172E+04-0.09802473E+02 0.15056368E+01 0.09217769E-01-0.01955590E-03 3 0.02020330E-06-0.07251403E-10-0.07226661E+04-0.06689818E+02 N(S) TPIS79N 1 S 300.000 3000.000 1000.000 4 1 2 3 4

0.00000E+00 0.00000E-00 -0.00000E-00 -0.00000E-00 0.00000E-00 -0.00000E+00 -0.00000E+00 -0.00000E+00 0.00000E-00 0.00000E-00 -0.00000E-00 0.00000E-00 -0.00000E+00 0.00000E+00

Follows same format as earlier Can be provided in [Link] or thermdat Thermodynamic inputs for surface species are usually not available. Put all specific heats as zero, since all heats of reactions are calculated using BOC Thermodynamic consistency is therefore important

Defining Surface Conditions in Chemkin


trandat cklink
Transport Utilities

tranfit.x

tplink

tranlib.f Application

Steps: Input of transport database: thermdat Compile tranfit.f and dmath.f to create tranfit.x Run tranfit.x to create tplink Compile tranlib.f to create tranlib.o and link with your code

10

1. Transport inputs: Transport database trandat (optional)

AR C C2 C2O CN2

0 136.500 0 1 71.400 97.530

3.330 3.298 3.621 3.828 3.828

0.000 0.000 0.000 0.000 0.000

0.000 0.000 1.760 0.000 0.000

0.000 0.000 ! * 4.000 1.000 ! * 1.000 ! OIS

1 232.400 1 232.400

species molecular index

L-J collision diameter

polariz ability rotational relaxation collision number

L-J potential well depth

dipole moment

Interfacing with Application codes Typical structure of Chemkin subroutines:


subroutine ckcpbs(t, yk, ickwrk, rckwrk, cpmean)

Name Input(s)

Work arrays

Output(s)

Interfacing with Application codes: Chemkin Mnemonics ck = Chemkin sk = Surface Chemkin mc = Transport iwk = integer work array rwk = real work array cwk = character work array

11

Interfacing with Application codes: Dimensionalize Work Arrays


! *** File identifiers integer, parameter :: linc = 25, linksk = 26, linkmc = 35, lout = 6

! *** Dimensionalizing work arrays integer, parameter :: leniwk = 6000, lenrwk = 6000, lencwk = 6000 integer, parameter :: lsiwk = 6000, lsrwk = 6000, lscwk = 6000 integer, parameter :: lenimc = 6000, lenrmc = 6000 integer :: ickwrk(leniwrk), iskwrk(lsiwk), imcwrk(lenimc) double precision :: rckwrk(lenrwrk), rskwrk(lsrwk) rmcwrk(lenrmc) character (len=16) :: cckwrk(lencwk), cskwrk(lscwk)

Interfacing with Application codes: Initialization


! *** Open chemkin link files open (linc, file='cklink', form='unformatted') open (linkmc, file='tplink', form='unformatted') open (linksk, file='sklink', form='unformatted') ! *** Initialize chemkin call ckinit (leniwk, lenrwk, lencwk, linc, lout, ickwrk, rckwrk, cckwrk) call mcinit (linkmc, lout, lenimc, lenrmc, imcwrk, rmcwrk) call skinit (lenisk,lenrsk,lencsk,linksk,lout,iskwrk, rskwrk,cskwrk)

Interfacing with Application codes: Using subroutines


!.......tutorial open (unit=394, file='[Link]',status='unknown') write(394,*)'Inlet mole fractions' write(394,39)xin call ckxty(xin,ickwrk,rckwrk,yin) write(394,*)'Inlet mass fractions' write(394,39)yin

Inlet mole fractions 0.300000 0.600000 0.100000 0.000000

Inlet mass fractions 0.743363 0.106195 0.150442 0.000000

12

Interfacing with Application codes: Using subroutines


write(394,*)'Initial coverages' write(394,39)(act(ii),ii=kgmax+1,ksmax-1) call skrat (p,temper,act,sden,iskwrk,rskwrk,sdot,sitdot) write(394,*)'Rates of species production' write(394,39)sdot

pressure activity Gas: mole fractions Surface: coverage Bulk: 1.0

Site density sden(2) is the site density of the catalyst surface

Initial coverages 0.10000E-05 0.99990E+00 0.10000E-05 0.98000E-04

Rates of species production -0.53416E-05 -0.21331E-05 0.45925E-05 0.00000E+00 0.21331E-05 -0.45925E-05 0.24594E-05 -0.24594E-05 0.10678E-10

Recent modifications in Surface Chemkin 1. UBI-QEP implementation using a new subroutine (subroutine ubi) internally called from subroutine skrrop 2. Modification of sklib.f to incorporate Molecular beam effects (subroutines skatcz, skden) Large reaction mechanisms (subroutine skinu) Replacement of temperature exponents using a new subroutine (subroutine skrbex) Modification of Arrhenius temperature exponent formula (subroutine skrrop)

13

Useful links
Reaction Design: [Link] History of chemkin: [Link] Overview of chemkin: [Link] Equilibrium calculations: [Link] GRI-Mech: [Link] Sensitivity, reaction path, and principal component analysis modules: [Link] [Link] [Link]

Useful links
Cantera - MATLAB based Chemkin: [Link] Burcats extended thermodynamic database: [Link] Chemical reaction network toolbox: [Link] EGLIB A multicomponent transport software: [Link] Caltech gas phase mechanism library: [Link] Software aid for developing mechanisms (unit conversion, deleting species, etc.): [Link]

14

Useful links
Information about Equil, Aurora, Senkin, Premix, Spin, Creslaf, Surftherm: [Link] A general link for chemical engineers: [Link]

15

1
A Tutorial on Chemkin
Niket Kaisare
(11-12-2007)
Indian Institute of Technology – Madras
Original Presentation: Dr. Ashish
2
Example: Ammonia Decomposition on Ruthenium
NH3
NH3*
NH2*
NH*
H*
H2
Ruthenium
1.
Reaction stoichiometry and rate constants
3
Example: Ammonia Decomposition on Ruthenium
1.
N2 + 2* ÅÆ 2N*
2.
H2 +2* ÅÆ 2H*
3.
NH* + * ÅÆ N* + H*
4.
NH2* + * ÅÆ NH* + H
4
Utilities
EQUIL calculates the 
equilibrium state of systems
containing ideal gas mixtures 
or ideal solutions.
PLUG simula
5
Utilities
SHOCK: A program for 
predicting chemical behavior 
behind incident and reflected 
shock waves.
SPIN: A program f
6
Components of Chemkin Suite
Interpreter
Library
ChemKin Utilities
Chemistry
Input
Properties
Input
Link
File
Application
tp
7
Defining Gas Phase Conditions in Chemkin
ckinterp.x
cklib.f
ChemKin Utilities
fort.15
thermdat
cklink
Application
Steps:
•
8
2. Chemkin inputs: Thermodynamic database thermdat
THERMO
300.000  1000.000  5000.000
NH3
L 7/88N 1H   3
G 200.000  3500.00
9
1. Surface Chemkin inputs: Sample surf.inp
SITE/SURFACE/    SDEN/1.66058e-9/
H(S)    N(S)    NH(S)
NH2(S)  NH3(S)  RU(S)
EN
10
2. Surface Chemkin inputs: Thermodynamic database thermdat
RU(S)
81292RU  1               
S 300.00   2000.00   1000.00

You might also like