Data Base Generation and Modeling of Homogeneous ... Compression Ignition Using a Rapid Compression Machine

Data Base Generation and Modeling of Homogeneous Charge
Compression Ignition Using a Rapid Compression Machine
by
Ferran A. Ayala
B.S., Mechanical Engineering
The University of Kansas, 1999
Submitted to the Department of Mechanical Engineering
in Partial Fulfillment of the Requirements for the Degree of
Master of Science in Mechanical Engineering
at the
Massachusetts Institute of Technology
'0.
May 2001
@ 2001 Massachusetts Institute of Technology
All rights reserved
MASSACHUSETTS INSTITUTE
OF TECHNOLOGY
FJU L 1 6 2001
LIBRARIES
Signature of Author
Department of Mecnanical Engineering
May, 2001
Certified by
John B. Heywood
Sun Jae Professor of Mechanical Engineering
Thesis Supervisor
Accepted by
Amn A. Sonin
Chairman, Department Committee on Graduate Students
ARKER
(This page was intentionally left blank)
2
Data Base Generation and Modeling of Homogeneous Charge
Compression Ignition Using a Rapid Compression Machine
by
Ferran A. Ayala
Submitted to the Department of Mechanical Engineering
May 2001 in Partial Fulfillment of the Requirements
for the Degree of Master of Science in Mechanical Engineering
ABSTRACT
Homogeneous Charge Compression Ignition (HCCI) is the spontaneous ignition of fully or
partially premixed fuel vapor/air plus burned gas mixture due to temperature (and pressure) rise during
compression. This combustion process has been shown to be feasible under certain engine conditions and
has the potential of low NO emissions due to the low burned gas temperatures achieved with lean
mixtures. Sufficient premixing of air and fuel also produce low particulate emissions. Thus HCCI has
the potential of having low emissions and high efficiency with lean operating high compression ratio
engines. However this concept requires a good understanding of the different mixture conditions and
engine parameters under which the process can occur and thus be controlled. Some of the challenges are
controlling ignition and the rate of fuel chemical energy release relative to piston position to obtain high
torque, achieving a high enough combustion efficiency, and achieving control over a wide enough range
of loads for the concept to be practical in a vehicle.
This project consists of generating a data base of ignition and energy release rates for different
fuels using a Rapid Compression Machine (RCM). These results are then used to develop and validate a
combustion model of Homogeneous Charge Compression Ignition. By varying parameters such as the
compression ratio, initial charge pressure and temperature, and initial mixture composition, the ignition
and combustion limits of different fuels can be obtained. One of the goals of this study is to determine
conditions that will give ignition delays and combustion conditions comparable to those seen in a real
engine (for example, ignition delays in the milliseconds range). This information is needed to develop
and evaluate engine concepts under which HCCI would be possible and controllable.
Thesis Advisor: Professor John B. Heywood
Title: Sun Jae Professor of Mechanical Engineering
3
(This pages was intentionally left blank)
4
ACKNOWLEDGMENTS
If it took me four years to get to MIT, and two years to complete this project, I think it is only fair
that I spend some time meditating and thinking about all the people who helped me get to this
point today, and thank them, for I did not do it alone.
I would like to thank my two great mentors at MIT: Professor John Heywood and Professor
James Keck. It was a luxury to have worked with both of them; I feel very fortunate. It was the
attention that I received from them, as well as their continuous feedback, support, and guidance,
that motivated me and encouraged me so much during this project. I thank Professor Heywood
for his advice both academic and non-academic. I admire his success and his dedication to his
work and his students. Likewise, I thank Professor Keck who even though is retired, worked on
this project as if he was working full time. His knowledge of the Rapid Compression Machine
and his expertise in combustion and engineering in general were vital to the completion of this
work
I thank all my friends at MIT and my colleagues at the Sloan Lab for their enjoyable company,
and their help. Special thanks to Rolf Karlsson, a good friend who did not get tired of tutoring
me in Fluids and ICE. I also thank Benoist for his extensive help in my research and in my
courses. I thank Tian for the motivating conversations that we had, for his advice whenever I
needed it. A special thanks also to my supportive friends from Undergraduate back in Kansas.
I thank Leslie Regan, for her flexibility and support even before coming to MIT, helping me find
a RA. She is without a doubt one of the engines of this department. I also thank Karla Stryker,
and Susan Lutin for all their amusing talks. I thank Thane DeWitt for his technical support and
his concern with safety issues. He is another engine in the lab, and I am glad he joined at the right
time.
I thank Mr. Tanaka for his help in finishing my thesis, and Dave Schmidt for helping me with the
many questions that I had during this project and for providing some figures for this thesis. I also
thank Robert Meyer for his support and guidance as manager of the project, and I thank BMW for
their funding of this research. I hope they continue to study HCCI, and push towards cleaner
fuels.
I never had the opportunity to thank my parents for all their efforts in giving me one of the finest
educations I could get in Mexico; one that was beyond their reach during their childhood. An
education for privileged people which gave me important tools to advance and progress. It was
not education alone, but also their unending love, as well as the morals and work ethic that they
instilled in me that helped me achieve many of my goals, however unreasonable these seemed at
some point. "Gracias Papa y Mama."
5
(This page was intentionally left blank)
6
TABLE OF CONTENTS
Abstract...........................................................................................................
Acknowledgments...............................................................................................
Nomenclature.....................................................................................................
List of Tables..................................................................................................
List of Figures...................................................................................................
3
5
9
10
11
CHAPTER 1. INTRODUCTION ...................................................................................................
1.1 M otivation ....................................................................................................................
1.2 Background ..................................................................................................................
1.3 HCCI Combustion Characteristics............................................................................
1.4 Challenges.....................................................................................................................
1.5 Objectives .....................................................................................................................
13
13
13
14
14
15
CHAPTER 2. THE RAPID COM PRESSION M ACHINE ...........................................................
2.1 Introduction...................................................................................................................
2.2 RCM Configuration ...................................................................................................
2.3 Characteristics of RCM .............................................................................................
2.4 Specification of RCM O-Rings.....................................................................................
2.5 Basic Operation.............................................................................................................
2.6 RCM Plumbing.............................................................................................................
2.7 Charge Preheat System ............................................................................................
2.8 Gas Handling System and Filling Procedure ................................................................
2.9 Instrumentation and Data Acquisition .....................................................................
17
17
17
18
20
21
21
25
26
27
CHAPTER 3. RAPID COMPRESSION MACHINE MODIFICATIONS AND
IMPROVEM ENTS .............................................................................................................................
3.1 Introduction...................................................................................................................
3.2 RCM Speed Ring.....................................................................................................
3.3 RCM Oil Rim ...............................................................................................................
3.4 RCM Piston Liner.........................................................................................................
3.5 RCM Spacer..................................................................................................................
3.6 Fast Acting Valve .....................................................................................................
3.7 Dovetail Groove............................................................................................................
3.8 Compression Ratio Shim ..........................................................................................
3.9 Thermal Insulator......................................................................................................
3.10 M odified Combustion Chamber Valve.....................................................................
3.11 Other Improvements .................................................................................................
29
29
29
29
31
31
31
31
32
32
32
32
CHAPTER 4. RAPID COMPRESSION MACHINE EXPERIMENTS....................
4.1 Compression Calibration .........................................................................................
4.2 Combustion Calibration............................................................................................
35
35
37
7
4.3
4.4
4.5
4.6
Heat Release During Ignition Delay .........................................................................
Reproducibility of Combustion Curves .....................................................................
End-of-Combustion Variations................................................................................
Knock and High Pressure Oscillations ....................................................................
42
42
4.7
4.8
Piston Rebound.............................................................................................................
Sensitivity Study .......................................................................................................
43
44
4.9
Experimental Program and RCM Data Base ................................................................
4.10 M atrix of Experiments for M odel Calibration .........................................................
47
48
4.11 Data Analysis and Chemkin Comparisons.................................................................
55
CHAPTER 5. HCCI M ODEL ......................................................................................................
5.1 Background...................................................................................................................
39
40
59
59
5.2
Compression and Heat Transfer M odel ....................................................................
59
5.3
The Ignition M odel .................................................................................................
62
5.4
Hydrocarbon Breakdown .........................................................................................
63
5.5
CO Oxidation ...............................................................................................................
64
5.6
Code Logic, Structure, and Equations .......................................................................
64
5.7
M odel Calibration ....................................................................................................
66
5.8
M odel and Data Comparisons ..................................................................................
66
CHAPTER 6. CONCLUSIONS AND DISCUSSIONS ................................................................
77
BIBLIOGRAPHY ...............................................................................................................................
79
APPENDICES ....................................................................................................................................
79
Appendix 1: Rapid Compression Machine Operation Sequence ......................................
Appendix 2: Rapid Compression Machine Modifications (Drawings).............................
Appendix 3: Details of the Hu-Keck Reduced M echanism ..............................................
Appendix 4: M ATLAB Code ...........................................................................................
Appendix 5: FORTRAN Code of HCCI Model (Main Subroutines) ...............
8
79
81
97
98
102
NOMENCLATURE
ON
PRF
RC
RCM
-
y
-
6
V
v
R
d, DSTP
h
h2
td
CAD
RPM
Phi, $
Po
To
HC
Octane Number
Primary Reference Fuel
Compression Ratio
Rapid Compression Machine
Gamma: Ratio of Specific Heats
Alpha: Thermal Diffusivity
Thermal Boundary Layer Thickness
Volume
Velocity
Radius
Stopping Distance
Height
Clearance height
Time to Decelerate Piston
Crank Angle Degrees
Revolutions Per Minute
Fuel-Air equivalence ratio
Pressure (initial)
Temperature (initial)
Hydrocarbons
9
LIST OF TABLES
Table 2.1
RCM Characteristics .................................................................................................
18
Table 2.2
Table 2.3
Table 2.4
Current Operating Pressures ..................................................................................
Operating Pressures Recommended by Park........................................................
Calibration of Oil and Tubing Temperatures .......................................................
22
22
26
Table 4.1
Table 4.2
Compression of Air ..............................................................................................
M atrix of Experiments Using a 90 ON PRF .........................................................
36
48
Table 4.3
Summ ary of Results ..............................................................................................
56
10
LIST OF FIGURES
Figure
Figure
Figure
Figure
Figure
Figure
1.1
1.2
2.1
2.2
2.3
2.4
Figure 2.5
Figure 3.1
Figure 4.1
Figure
Figure
Figure
Figure
4.2
4.3
4.4
4.5
Figure 4.6
Figure 4.7
Figure 4.8
Figure 4.9
Figure 4.10
Figure 4.11
Figure 4.12
Figure 4.13
Figure 4.14
Figure 4.15
Figure 4.16
Figure 4.17
Figure 4.18
Figure 4.19
Figure 4.20
Figure 4.21
Figure 4.22
Figure 4.23
Figure 4.24
Figure 4.25
Figure 4.26
Figure 5.1
Figure 5.2
Figure 5.3
Figure 5.4
Figure 5.5
Figure 5.6
Figure
Figure
Figure
Figure
Figure
Figure
5.7
5.8
5.9
5.10
5.11
5.12
HCCI Concepts and Configurations......................................................................
15
Controllability of HCCI ......................................................................................
RCM D iagram ........................................................................................................
RCM O -Rings ...........................................................................................................
D iagram of RCM Plumbing ......................................................................................
16
19
20
23
G as Handling System .............................................................................................
24
Oil-H eating System ...............................................................................................
25
D iagram of RCM Section .........................................................................................
30
Compression of Air, Rc=14, Po=1 atm , To=300 K ..............................................
36
Compression of Air at V arious Compression Ratios .............................................
M easured Param eters ............................................................................................
Energy Released Before Rapid Com bustion........................................................
Combustion Repeatability (90 ON PRF) ..................................................................
Com bustion Repeatability (Isooctane) ................................................................
End-of-Com bustion V ariations ............................................................................
Knock O scillations ................................................................................................
Piston Rebound ....................................................................................................
Octane N um ber Sensitivity ...................................................................................
Sensitivity to Equivalence Ratio ..........................................................................
Sensitivity to Initial Charge Pressure...................................................................
Sensitivity to Initial Charge Temperature .............................................................
Sensitivity to Initial Compression Ratio ...............................................................
37
38
40
41
41
42
43
44
45
45
46
46
47
Combustion Curves: $=0.4, Rc=
Combustion Curves: $=0.4, Rc=
Combustion Curves: $=0.4, Rc=
Combustion Curves: $=0.4, Rc=
Combustion Curves: $=0.4, Rc=
Combustion Curves: $=0.3, Rc=
Combustion Curves: 0=0.5, Rc=
Combustion Curves: 0=0.3, Rc=
Combustion Curves: 0=0.4, Rc=
Combustion Curves: 0=0.5, Rc=
14, To=50
14, To=60
16, To=50
16, To=60
16, To=70
16, To=60
16, To=60
16, To=60
16, To=60
16, To=60
C,
C,
C,
C,
C,
C,
C,
C,
C,
C,
Po=1 atm....................................
Po=1 atm....................................
Po=1 atm ....................................
Po=1 atm ....................................
Po=1 atm ....................................
Po=1 atm ....................................
Po=1 atm ....................................
Po=0.75 atm ...............................
Po=0.75 atm ...............................
Po=0.75 atm ...............................
50
50
51
51
52
52
53
53
54
54
Change in Pressure due to Combustion (Po= 0.75 atm ) ........................................
Change in Pressure due to Combustion (Po= 1 atm) ............................................
Compression Stage and Heat Transfer M odel ....................................................
58
58
61
The Hu-K eck Ignition M odel ..............................................................................
63
Code L ogic and Structure .....................................................................................
Compression Stage and Heat Transfer Model Calibration ...................................
65
67
Combustion Curves, Model vs. Data $=0.4, Rc= 14, To=50 Po=1 atm................ 68
Combustion
Combustion
Combustion
Combustion
Combustion
Combustion
Combustion
Curves, Model
Curves, Model
Curves, Model
Curves, Model
Curves, Model
Curves, Model
Curves, Model
vs. Data $=0.4,
vs. Data 0=0.4,
vs. Data 0=0.4,
vs. Data $=0.4,
vs. Data $=0.3,
vs. Data $=0.5,
vs. Data $=0.3,
11
Rc=
Rc=
Rc=
Rc=
Rc=
Rc=
Rc=
14,
16,
16,
16,
16,
16,
16,
To=60 Po=1 atm................
To=50 Po=1 atm................
To=60 Po=1 atm................
To=70 Po=1 atm ................
To=60 Po=1 atm................
To=60 Po=1 atm ................
To=60 Po=0.75 atm ..........
68
69
69
70
70
71
71
Figure 5.13
Combustion Curves, Model vs. Data $=0.4, Rc= 16, To=60 Po=0.75 atm..........72
Figure
Figure
Figure
Figure
Combustion Curves, Model vs. Data $=0.5, Rc= 16, To=60 Po=0.75 atm ..........
M odel vs. Data Comparison: Ignition Delays.....................................................
M odel vs. Data Comparison: Burn Times............................................................
Control Panel ............................................................................................................
72
73
74
80
Figure A .2.1
Figure A.2.2a
Figure A.2.2b
RCM Speed Ring ......................................................................................................
RCM Oil Rim ............................................................................................................
RCM Speed Ring ......................................................................................................
81
82
83
Figure A .2.3
RCM Piston Liner .....................................................................................................
84
Figure
Figure
Figure
Figure
RCM Spacer..............................................................................................................85
RCM Fast Acting Valve............................................................................................
M odification of O-Ring Groove ...........................................................................
Compression Ratio Shim .......................................................................................
86
87
88
Figure A.2.8
Thermal Insulator...................................................................................................
89
Figure
Figure
Figure
Figure
Figure
Figure
Figure
Poppet Valve Casing............................................................................................
Poppet Valve Legs ................................................................................................
Poppet Valve Base ................................................................................................
Poppet Valve Base ................................................................................................
ACM E Shaft..............................................................................................................
ACM E Shaft..............................................................................................................
RCM Stands ..............................................................................................................
90
91
92
93
94
95
96
Details of the Hu-Keck Reduced M echanism ........................................................
97
5.14
5.15
5.16
A . 1.1
A.2.4
A .2.5
A.2.6
A .2.7
A.2.9a
A.2.9b
A.2.9c
A.2.9d
A.2.9e
A.2.9f
A .2. 10
Figure A.3.1
12
CHAPTER 1
INTRODUCTION
1.1 Motivation
With emissions regulations on IC engines becoming more stringent every day, and with rising oil
prices, there is an urgent need to improve current engine technology and develop higher efficiency, lower
emissions engines. Currently diesel engines have the highest brake efficiencies among IC engines (up to
45% compared with 33% for Spark Ignition engines) due to their higher compression ratios and their
operation at lean fuel/air ratios. However, due to problems with air utilization during combustion, diesel
engines form excessive amounts of soot, which shows up in particulate emissions in the exhaust.
Hydrocarbon emissions in diesels also contribute to particulates, and nitric oxides levels are comparable
to those of SI engines. Thus, although the SI engine is less efficient, its emissions are now lower because
effective catalyst technology has been developed. Additionally, the SI engine remains attractive due to its
high power-to-weight ratio, making it favorable for compact applications.
Clearly, both engines have
their advantages and disadvantages, and thus they each dominate particular markets.
Current research efforts in Homogeneous Charge Compression Ignition are trying to develop
higher efficiency, lower emissions engines. This alternative combustion process is a hybrid between
diesel and SI. Similar to the spark ignition engine, a well-mixed fuel-air mixture is introduced into the
combustion chamber, however, unlike the SI engine, there is no spark; the mixture is spontaneously
ignited during the compression stroke (like in a diesel). With a lean homogeneous mixture, locally rich
areas are eliminated and combustion temperatures are lower, thus, the formation of NOx and particulate
emissions can be significantly decreased. A more complete combustion can be achieved with a uniform
lean mixture. Additionally, more expansion work can be extracted during lean operation due to the higher
value of y. HCCI is also known to have high and very repeatable energy release rates, approximating the
ideal Otto cycle when properly phased in relation to the engine cycle [1]. Although these characteristics
make HCCI an attractive concept, there are still many challenges to be resolved.
1.2 Background
Early work in Homogeneous Charge Compression Ignition started in Japan [2], where this
process was first known as Active Thermo-Atmosphere Combustion (ATAC). This type of combustion,
characterized by the autoignition of a uniform, lean, fuel-air mixture was identified as a third combustion
process of the internal combustion engine (the other two being Diesel and Spark Ignition). The high
efficiency and low emissions potential of this process, known to have high and repeatable energy release
rates with little cycle-to-cycle variation, was quickly identified. There has been a growing interest in
13
HCCI, and this concept has been successfully applied in some engines over a limited range of loads and
speeds.
For example, in June of 1998, Nissan put on the market the first generation of engines which
successfully implemented Modulated Kinetics (MK) combustion, a version of HCCI, at part loads [3].
Honda also incorporated HCCI at light load in a direct-injection two-stroke SI engine [4].
To better
understand the benefits of such engines, it is necessary to first study the combustion process of HCCI.
1.3 HCCI Combustion Characteristics
Depending on the approach, HCCI fuel-air mixing can be achieved in various ways.
One
possibility is to form a fully homogeneous mixture in the intake system, similar to the SI engine. Another
concept is to inject early into the cylinder. Fig. 1.1 presents HCCI concepts and configurations. Like in
the diesel engine, there is no spark plug, and the mixture spontaneously combusts due to the pressure and
temperature rise during compression.
Different from the SI engine where there is a discernible flame
front and a localized high-temperature reaction region, in the HCCI concept ignition occurs at many hot
spots simultaneously and at the global equivalence ratio. Thus, unlike diesel, this process is not diffusioncontrolled, so it is not constrained by the mixing rate at the interface between the fuel jet and oxidizer [1].
Since the mixture in HCCI is relatively uniform, with a lean equivalence fuel/air ratio, hightemperature burned gas regions are absent in the combustion chamber, drastically decreasing the
production of NOx during combustion compared to a regular SI or diesel engine. The absence of local
fuel-rich regions during HCCI combustion also lowers the formation of soot. With HCCI there are very
small cycle to cycle variations, which is optimal for smooth engine operation.
This is a significant
advantage over SI engines, where large cycle-to cycle variations occur due to significant variations in
early flame development.
Due to the lean mixture conditions under which HCCI typically operates,
however, the low burned gas temperature decreases the rates of fuel oxidation creating high levels of CO
and HC.
1.4 Challenges
One of the main challenges of HCCI is controlling the time at which combustion occurs. Since
there is no physical event that marks the start of combustion, as in a SI or a diesel engine, it is difficult to
control when ignition and fuel chemical energy release will occur, relative to piston position.
This
process must also be controlled over a wide range of loads and speeds to obtain high torque, and a high
enough combustion efficiency must be obtained.
Some methods for controlling HCCI have been
proposed and utilized, and they are shown in Fig. 1.2. Another of the challenges that exists is achieving a
highly or partially homogeneous mixture. High combustion rates due to the simultaneous burning of the
bulk gas limit this process to highly diluted mixtures which lower the rate of combustion. As discussed
14
previously, limited versions of this process have already been incorporated in various engines; however in
these applications HCCI occurs over a narrow range of loads. Thus there are many difficulties that must
still be overcome to develop a successful HCCI engine.
1.5 Objectives
The purpose of this project was to produce a data base of energy release rates and use that data to
develop and calibrate a combustion model of HCCI.
The data, which were obtained in a rapid
compression machine, provide a deeper understanding of the different conditions under which HCCI is
feasible, and possible ways to control it. Of utmost important is determining the sensitivity of mixture
ignition process and energy release rate to the mixture composition and state. A better knowledge,
quantification, and modeling of these combustion characteristics will help determine plausible engine
concepts for HCCI.
Figure 1.1: HCCI Concepts and Configurations
I
I
(Extracted from Fig. 4, [1])
15
Figure 1.2: Controllability of HCCI
(Extracted from Fig. 3, [1])
16
CHAPTER 2
THE RAPID COMPRESSION MACHINE
2.1 Introduction
The rapid compression machine (RCM) is a piston in cylinder apparatus that compresses a fuelair mixture in a short time, to high temperature and pressure, with the least heat and mass loss possible. It
can be used to study the chemical kinetics of autoignition and energy release processes. The RCM is
ideal for observing Homogeneous Charge Compression Ignition under engine-like conditions because it
generates the pressure (4-16 MPa) and temperature
(1800-3000 K) regime of a real engine in times
comparable to engine compression times. After compression, the gases in a RCM autoignite at constant
volume, and the pressure in the combustion chamber is measured. Thus, known pressure and temperature
conditions allow for direct measurement of the autoignition and energy release behavior. As explained
below, rapid compression machines offer well controlled and repeatable experimental conditions,
accurate measurements of cylinder pressure, and in our case, the ability to vary several parameters such as
compression ratio, initial gas composition, initial gas pressure, initial gas temperature, and piston driving
pressure.
2.2 RCM Configuration
A diagram of the MIT RCM used for these experiments is shown in Fig. 2.1. This machine was
designed in 1990 by Dr. Park and Professor James Keck. The driving and piston motion mechanisms
were adapted from Shell's Thornton rapid compression machine. The piston is locked at its starting
position through a hydraulic system; it is then pneumatically accelerated, and then slowed down and
stopped by oil pressure developed in the hydraulic pin and groove mechanism. There are only two
movable parts, the piston and the fast acting valve, and they are both made out of 6061 aluminum. The
rest of the parts are made out of cold-rolled mild steel. The piston is hollow, decreasing the inertial forces
required for acceleration and deceleration. Its head can be changed, and heads with different piston/ring
crevice configurations can be used.
The main components of the machine are labeled in the diagram. The driving chamber holds the
pressurized gases that drive the piston. Its volume is large enough so that the driving pressure does not
drop more than 5% during the expansion of the driving chamber gas, while firing the machine. Thus,
constant driving pressure can be assumed during compression of the experimental gases. The two oil
chambers shown, main oil reservoir and speed control chamber, are part of the hydraulic system that
moves the piston. As explained below, these two chambers are connected and isolated by the fast acting
valve. A complete explanation of the operation of this system is discussed in the Appendix. The piston is
17
smoothly decelerated through pressure generated in the stopping pin. In addition to changing the speed of
the piston by varying the driving pressure, the speed can also be varied by rotating the speed ring,
adjusting the orifice area through which oil flows. The combustion chamber holds the experimental
gases, which are fed in through the poppet valve in the cylinder head. Section 2.8 gives a more thorough
description of the gas handling system. The heating jacket around the cylinder circulates hot oil that
raises the initial temperature of the combustion chamber. The piston stroke, which determines the initial
piston position, can be varied by turning the stroke adjustment screw. Its threads are 1.5-12UNF, so each
turn gives 1/12 inches of stroke [8].
The compression ratio can be changed and different clearance
volumes and compression ratios can be used.
Low viscosity mineral oil (UNIVOL 60) is used for
operating the hydraulic parts of the machine.
2.3 Characteristics of the RCM
Besides being a good apparatus for studying chemical kinetics under controlled conditions, the MIT RCM
is also useful due to its flexibility in changing various parameters, and close in simulating conditions from
a real engine.
The most important characteristics of the RCM are shown in Table 2.1.
A range of
compression ratios can be achieved through different combinations of strokes and clearance volumes.
Likewise, various compression times can be obtained by varying the piston speed through different
combinations of driving chamber pressure and oil flow orifice area.
With different combinations of
compression ratio, initial charge temperature, initial charge pressure, and initial charge composition,
various realistic end-of-compression temperatures can be achieved.
Table 2.1
RCM Characteristics
Cylinder Bore
5.08 cm
Maximum Stroke
11 cm
Maximum Compression Ratio
19
Clearance Height
0.6-2.0 cm
Piston Length
17.2 cm
Piston Mass
0.97 kg
Maximum Driving Pressure
3.45 MPa
Maximum Piston Speed
10 m/s
Maximum Compression Pressure
7 MPa
Compression Time
10-30 ms
Max. Compression Temperature
1300 K
18
Figure 2.1
RCM Diagram
Stroke Adjust nent
I
Driving Chamber
High Pressure Gas
Core
DA~
CbUI
eII
valve-Locking
high pressu e oil
Oil Reservoir Pressu re
oil R
Fast Acting Valve
Speed Ring
peed Control
Control Ring
iston-Locking
igh pressure oil
'
Sopn
Pi.
i
Heatin Jacket
Opening for
Pressure
Transducer
Gas Chamber
19
2.4 Specification of RCM O-rings
To ensure proper sealing and isolation of the different systems (hydraulic, pneumatic, gas handling), the
rapid compression machine uses a variety of o-rings. These are shown in Fig. 2.2. Except for just a few,
the majority of the o-rings are made out of viton. The combustion chamber used viton-encapsulated orings, due to their low hydrocarbon absorbtivity. A stiff teflon o-ring is used in the speed ring face seal
with the fast acting valve to avoid misplacement of the ring between runs.
Figure 2.2
RCM O-Rings
VE= Viton Encapsulated
T= Teflon
2-160
z
2-3 42
2-4 32
ack-up Rings
2-348+B
166
2-274
-23
31
33T
5-177 ID
x 0.177 CS
BUNNA N-70
2-34
+348
2-036 VE
Back-up
26+
Rings
/ III,
2-034 YE
20
' ,,2 -0 44
2-034 YE
2-011
up Rings
2.5 Basic Operation
The RCM operates through means of a hydraulic and a pneumatic system. As shown in Fig. 2.1, there are
two oil chambers separated by the fast acting valve.
When the fast acting valve is open (in its up
position), both of these chambers are connected. The outer chamber is the main oil reservoir and it
operates at relatively low pressures (30-40 psi). The center chamber, the piston locking chamber, is
designed for high pressures (700 psi). After the machine has been fired, the piston is in its down position
and the fast acting valve is open (up), thus both oil reservoirs are connected. To prepare for the next run,
the main oil reservoir is pressurized with nitrogen, causing the oil to lift the piston until it hits the stroke
stop. The chambers are then isolated by lowering the fast acting valve with pressurized gas (80 psi). The
fast acting valve is then locked in place with high pressure nitrogen (500-1000 psi, depending on the
solenoid valve rating). The piston is then locked with high pressure oil (P ;>
). This step is
Pdriving chamber
necessary because although oil can be assumed to be incompressible, this is not entirely true and locking
the piston eliminates any variations in the initial volume and the compression time. After the combustion
chamber has been loaded, and the required settling time has passed, the driving chamber is pressurized
with nitrogen. There is now a force balance between the pressurized gases above the piston, and the
pressurized oil underneath.
As soon as the locking pressure on the fast acting valve is released, by
opening the solenoid valve, the piston-locking high pressure oil opens the fast acting valve and the force
balance is broken.
The piston is accelerated by the driving gas, compressing the gases inside the
combustion chamber. Before the end of compression, the piston is slowed down by the high pressure
generated through the pin and grove mechanism, as shown in Fig. 3.1.
This prevents the piston from
damage, and provides repeatable compression. A detailed operating procedure for the machine is found
in Appendix 1.
2.6 RCM Plumbing
The plumbing of the RCM is composed of fours systems:
hydraulic system, pneumatic system, oil-
heating system, and gas handling system. Fig. 2.3 shows a diagram with the main lines and valves of the
RCM plumbing. The gas handling system is shown separately in Fig. 2.4. All lines are
" stainless steel
with 0.035" wall thickness. Table 2.2 provides the relevant current operating pressures of the systems.
The main oil reservoir operates at low pressures, while the piston locking reservoir operates at high
pressure. The driving chamber has a pressure rating of 500 psi [8], and the rating on the current solenoid
valve is 1000 psi.
The oil-heating system is designed for low pressures (P<150 psi).
nitrogen provides the required pressures for all the systems.
Compressed
The three most critical pressures for
adequate and safe operation of the machine are the driving pressure, the valve-locking pressure, and the
21
piston-locking pressure. The operating pressures recommended by Park are shown in Table 2.3. The
important thing to note is the maximum pressure rating on the driving pressure, and the proper magnitude
of each pressure:
Psolenoid(rated)>Pvave-locking>Ppiston-locking>Priving
Table 2.2
Current Operating Pressures
Valve
1
Description
Piston and Valve Up
System
Pneumatic
2
Fast Acting Valve Down
Pneumatic
80
3
4
5
6
7
Fast Acting Valve Lock
Piston Lock
Driving Pressure
Oil Heating System
Solenoid Valve
Hydraulic
Hydraulic
Pneumatic
Hydraulic
Pneumatic
700
550
450
P<150
P<1000 (current rating on valve)
Operating Pressure (psi)
40
Table 2.3
Operating Pressures Recommended by Park
Piston-Locking Valve-Locking
Driving
Oil Pressure
Pressure (psi) Oil Pressure
(psi)
(psi)
100
150
250
200
300
450
300
450
650
400
500
600
700
22
900
1000
Figure 2.3
Diagram of RCM Plumbing
Oil Lines
Air Lines
Oil Heating System
Gas Lines and Oil Lines of RCM Plumbing
pressure regulator
2-way valve
oil reservoir
G
I H
(
C
vent t
300 psi N2
F
M
trench
muffler
700 N2
oil pump
B E
1000 N2
vent
3000 psi N2 bottles
12-
valve-locking
100 psi N2
21---
~
or vact M
oil ven
6ven
piston-locking
high pressure oil
FL
3 high pressure oil
50 psi N2
vacuun
jo
I VC11
e
L
K
oil dump
oil heater
vacuum pump
Figure 2.4
Gas Handling System
MKS
To Vacuum
Vacuum Gauge
Piston
Pressure
Transducer
Combustion
Chamber
Injection
Septum
Poppet
Valve
To Experimental
Gases
2.7 Charge Preheat System
This system is used to vary the initial charge temperature. It consists of an oil-heating system which heats
up the combustion chamber, and an air heating system which heats the lines of the gas-handling system.
The oil heating system is composed of a centrifugal pump and an Omegalux Strip heater arranged in a
loop as shown in Fig. 2.5. This system has the capacity of delivering 1200 W of power at 120 V, and the
power is controlled from 0-100% using a variac. The air heating system is made up of heaters wrapped
around the gas handling system lines. Power delivered by these heaters is also controlled by a variac.
When operating the charge pre-heat system one must first calibrate the oil temperature as well as the
temperature of the gas handling system tubing, so that the air inside the combustion chamber and the gas
handling lines reaches the desired initial temperature. This is done through bench tests, and Table 2.4
shows the oil and tubing temperatures required to achieve a certain charge temperature. To measure this
initial temperature, a thermocouple was inserted through the pressure transducer opening.
The
combustion chamber was then vacuumed to simulate the real experiment, and then filled with air. The
average steady state temperature was then recorded.
Radial and axial temperature variations will exist
inside the combustion chamber due to the hot walls, and the cool piston. Thus, the measured temperature
was the temperature at the geometric center of the chamber.
Figure 2.5
Oil-Heating System
Temperature Controller
.
L
Oil Heater (1.2 KW)
Pump
By-pass
Oil Reservoir
(500 cc)
L
Tubing
Insulation
CoTmhbusion
Heating Jacket
00
0
Chamber
Therrnocouple
25
Table 2.4
Calibration of Oil and Tubing Temperatures
Target Initial
Charge
Required Oil
Required Outer
Wall Tubing
Temperature (C)
Temperature (C)
Temperature (C)
50
60
65
80
64
68
70
75
105
115
85
95
2.8 Gas Handling System and Filling Procedure
Figure 2.4 shows a diagram of the gas handling system. It consists of the combustion chamber
and the lines that carry the gases to the combustion chamber. One end of the system is sealed with a gas
chromatograph septum, while the other end is sealed with a two-way valve. The poppet valve connects
the gas lines to the combustion chamber.
This valve is sealed with a 2-011 o-ring, and the seal is
designed to improve during compression and combustion of the gases, due to the high pressure inside the
combustion chamber, which forces the valve down.
However, the valve is not designed to see high
pressures from its bottom side.
To prepare a charge of air-fuel mixture prior to firing the machine, the gas handling system is first
vacuumed to less than 5 torr. This ensures that the pressure inside the combustion chamber and gas lines
is kept below the mixture vapor pressure (for this project's experiments, the mixture vapor pressure was
greater than 15 torr). After vacuuming the system, the two-way valve is closed and the proper amount of
liquid fuel is injected through the GC septum. The fuel vaporizes and diffuses into the heated combustion
chamber and the gas lines, heating up while it enters and as it remains in the gas lines and the combustion
chamber. The fuel is then allowed to settle for ten minutes' reaching an equilibrium pressure and the
desired pre-heat temperature. The partial pressure is recorded, and then air is introduced into the system
through the two way valve, until the desired change in partial pressure is obtained. Ten minutes are also
allowed to achieve mixture homogeneity. The poppet valve is then closed and the mixture is ready to
ignite as soon as the machine is fired.
The mixture composition can be determined from the partial
pressures with the following formula:
S= (Pe /Pai,)(Al F)s(Mf I Ma)
Where:
Pfuel= Partial pressure of the fuel
1This number, determined in previous experiment with this RCM, is based on the time to reach pressure
equilibrium.
26
(2.1)
Paj=Partial Pressure of the air
(A/F)S= Stoichiometric ratio of the mass of the air to the mass of the fuel
Mf=Molecular weight of the fuel
Ma=Molecular weight of the air
After the machine is fired and the gases are compressed, the poppet valve is opened and the burned gases
are vented. The combustion chamber is then flushed with dry nitrogen and vacuumed once again before
the next run. In past projects, a dummy run with oxygen was performed after each trial to improve the
repeatability of the experiments. It was believed that the effect of this run was to burn species remaining
on the walls and the o-rings, so that they would not carry on to the next trial, and all runs would then be
independent of each other. During this project this technique was tried a few times but was then dropped.
With the combination of adequate flushing and consistent mixture composition and initial conditions,
good repeatability was obtained. Equation 2.1 should emphasize the importance of keeping consistent
conditions to achieve repeatability. One of the most critical factors, the equivalence ratio is dependent on
both the partial pressures and the initial charge temperature,
and thus, careful and consistent
measurements of these variables are necessary. It is essential to learn how to reproduce the conditions for
each trial in order to compare the repeatability of identical runs.
2.9 Instrumentation and Data Acquisition
To determine the initial mixture composition of the charge, the partial pressures of the gases inside the
gas handling system were read with a MKS 122A (range 0-1000 mmHg) diaphragm pressure gauge with
an accuracy of 0.1 mmHg. The voltage signal produced by the MKS 122A transducer was read by an
MKS PDR-D 1 unit. To measure the combustion chamber pressure, a Kistler 6125 piezoelectric pressure
transducer was used.
The transducer was periodically calibrated with a dead weight tester.
This
transducer is placed in the bottom of the combustion chamber as shown in Fig. 2.1. The voltage produced
by the pressure transducer was amplified with a Kistler 5010 amplifier box. This voltage was then sent to
the data acquisition system, and recorded using a LABVIEW VI.
millisecond. The data was processed with MATLAB.
27
Data was sampled 100 times per
(This page was intentionally left blank)
28
CHAPTER 3
RAPID COMPRESSION MACHINE MODIFICATIONS AND IMPROVEMENTS
3.1 Introduction
Several modifications were made to the MIT rapid compression machine to improve its operating
repeatedly and to facilitate the assembly and disassembly process.
In the past, several mechanical
problems were observed with the machine. These were mainly related to oil leakage due to improper oring sealing and due to the high pressures used. These problems were temporarily solved by lowering the
operational pressures, modifying parts, and using RTV to keep o-rings in place or to fill gaps. However,
the problems still persisted. From the beginning of this project, careful measurements were made of all
the RCM components. New drawings were made and they were compared against the original drawings,
and several parts were found to be dimensionally incorrect.
They had not been machined to the
specifications indicated in the original drawings. Some of the modified parts are discussed here and the
drawings are shown in the Appendix.
Other areas of improvement include the plumbing system, the
implementation of the oil heating system, replacement of viton o-rings for viton-encapsulated with teflon
rings, and the elimination of all gaskets.
3.2 RCM Speed Ring
One of the main inconsistencies of the machine was that the parts were not registering on the proper
location. As shown in Fig. 3.1, the surface of the base plate was intended to be the main point of
reference of the machine. The area control ring and the high pressure oil chamber would rest on the base
plate supporting and fixing the location of all other parts. However, due to dimensional inconsistencies,
the area control ring was registering on the speed ring, shifting the position of the fast acting valve. As a
result, the fast acting valve did not provide an adequate seal, and the speed ring, which was designed to
rotate freely about the area control ring, was fixed because it carried the load of the entire machine. To
assure that all the parts were registering properly, the speed ring was modified as shown in Fig. A.2. 1.
3.3 RCM Oil Rim
This part is responsible for containing the oil of the main reservoir. It is not designed to see high
pressures, as it only has a snug seal with o-rings, and it should be able to rotate with the speed ring. The
oil rim was also contributing to the registration inconsistencies. This part was originally machined too
tall, so due to this interference, the RCM core (see Fig. 2.1) rested on the oil rim rather than on the area
control ring. This created leakage between the core and the area control ring. Also, the entire weight of
the core and of the driving chamber would be supported by the oil rim, again constraining the motion of
29
the speed ring. Modifying this part was simple, as shown in Fig. A.2.2a. In order to keep the speed ring
and the oil rim together during a rotation, set screws were adapted to the oil rim as shown in Fig. A.2.2b,
holding both of these pieces together. Other small but significant modifications include side notches for
ease of assembly and disassembly, and the addition of an optical oil tube to monitor the level of oil inside
the machine.
Figure 3.1
=1*
I
LI1~
IT
I-
-e
qL
9
/
30
3.4 RCM Piston Liner
This part was also dimensionally incorrect, being too tall, creating a gap that was too big to seal with the
o-ring between the RCM core and this high pressure oil chamber. The modification, and the machining
down of the legs of the chamber was straightforward (see Fig. A.2.3). The interior walls of this part were
also polished so that the piston would move smoothly inside the chamber, without damaging the piston orings.
3.5 RCM Spacer
To eliminate the gasket that provided a seal between the driving chamber and the RCM core, an
aluminum plate was machined as shown in Fig. A.2.4. The center of this part was designed to hold an oring, being constrained on its sides by the inner walls of this plate, and on the bottom by the top surface of
the RCM high pressure chamber. The weight of the driving chamber was sufficient to compress the oring, creating a good seal.
3.6 Fast Acting Valve (Fig. A.2.5)
The most critical part of the machine, the Fast Acting Valve, is responsible for separating the main oil
reservoir and the high pressure piston locking chamber. In order to isolate both chambers the fast acting
valve must seal simultaneously at two points. In practice this is a poor design, as it is difficult to provide
this double seal. The valve was sealing at the upper point, but because dimensions did not allow proper
registering, it was not sealing in the bottom. Once the parts were modified to register at the proper
location, the fast acting valve also had to be machined to tight tolerance so that there would not be a gap
left, and if there was, it would be small enough that the extrusion from the o-rings would be able to seal it.
Round corners were also machined into the inside of the fast acting valve for ease of assembly, and to
prevent any damage to the o-rings around the RCM high pressure chamber. The valve was also polished
because it was out of round. The results of these modifications were better sealing and much smoother
dynamics.
3.7 Dovetail Groove
One of the more challenging problems with the operation of the RCM was the popping out of the o-ring
which creates the seal between the high pressure oil chamber and the low pressure oil reservoir (see Fig.
A.2.6). The Fast Acting Valve presses against this o-ring prior to firing the machine (creating the seal),
and when the solenoid valve is opened, high pressure oil flows out radially from the high pressure
chamber and into the low pressure reservoir. Initially, the high pressure oil would push the o-ring out of
place because of a defective o-ring groove, which was made larger than specified.
31
Although custom-
made o-rings were used to solve this deficiency, they still moved out of place. It is believed that this
effect was mostly due to high pressure oil getting into the groove, which did not provide a perfect seal,
and also due to lift from the high speed oil flowing over the curved o-ring surface. RTV was used to fix
the problem temporarily. However, RTV shed pieces in to the oil, and the o-ring would still move out of
place after some 30-40 runs. A better solution was to make the groove a dovetail shape as shown below,
designed to keep the o-ring in place in a face seal situation. However, despite the friction opposing the oil
pressure pushing the o-ring out, this did not solve the problem completely. To eliminate the problem, the
groove was filled with a special silicon glue (Omnivisc 1002-provided by BMW), prior to placing the oring in place to eliminate all gaps. The o-ring was then pushed in place, and the excess glue removed.
This has successfully resolved the problem.
3.8 Compression Ratio Shim
To eliminate all the gaskets and spacers that were previously used with different clearance volumes, a
new compression ratio shim was machined.
This new shim was made of the required thickness to
eliminate any gaps. O-ring grooves were machined into this piece to provide a seal for the oil heating
system. See Fig. A.2.7.
3.9 Thermal Insulator
As part of the oil heating system implementation, an insulation shim was machined as shown in Fig.
A.2.8. This shim is made out of phenolic, and insulates the base plate of the RCM, which acts as a heat
sink, from the hot circulating oil. The shim had o-ring grooves to provide a good seal for the oil-heating
system.
3.10 Modified Combustion Chamber Valve
Due to frequent failure of the threads in the poppet valve mechanism, a new valve was designed. This
valve has stronger threads, and will not fail as the previous one (see Figs. A.2.9a, b, c, d, e, f).
3.11 Other Improvements
Other improvements include machining down the combustion head to provide adequate o-ring extrusion
(and better seal), machining stands for the RCM (Fig. A.2. 10) and various improvements in the plumbing
system. Appendix A. 1.1 shows a diagram of the panel from which the entire machine was controlled. In
addition to better organization and logistics, the plumbing was significantly improved by containing all
the oil in a closed system. A mist system was implemented to filter the high pressure oil-containing air
that was vented. Another improvement, as has already been discussed, was the implementation of the oil
32
heating system. To minimize hydrocarbon absorption, all the o-rings in the combustion chamber, with
the exception of the poppet valve o-ring, were replaced with viton-encapsulated o-rings.
valve viton-encapsulated o-ring was too rigid, and did not provide a good seal.
The poppet
All gaskets were
eliminated and replaced with o-ring seals. These modifications have made a more robust and repeatable
machine.
33
(This page was intentionally left blank)
34
CHAPTER 4
RAPID COMPRESSION MACHINE EXPERIMENTS
4.1 Compression Calibration
After testing the dynamic behavior of the machine and making the required modifications to ensure
proper motion and sealing, the compression behavior of the machine and its repeatability were checked.
Several runs were performed with air at different compression ratios, at an initial temperature and
pressure of 300K and 1 atm, respectively. End of compression pressures were then compared with
isentropic calculations as shown in the example below:
1
vr = V, -
=117
1
-= 73.3 which gives P, = 3390
(4.1)
\ rc )
where the compression ratio is 16 and values for the reduced volumes vr , and reduced pressures Pr, are
obtained from tables of thermodynamic properties of air at low density. The pressure at the end of
(adiabatic) compression is then obtained from:
P2 =
P
r
+ P
=
=Iati
3390
73.4
46 atm
(4.2)
Using the air tables, the temperature at the end of compression can also be found, and for this example:
(4.3)
T(Pr2)=863K
Figure 4.1 shows experimental data for the compression of air (Rc=14). The peak isentropic value of the
maximum compression pressure is also shown. For this set of conditions, the experimental values are
within 7% of the ideal value. This indicates that there is little heat loss or leakage during compression.
This plot also reflects the good repeatability of the machine: the three consecutive runs are basically
indistinguishable. Figure 4.2 shows the compression of air for various compression ratios, and the results
of several runs are summarized in Table 4.1. As noted in this Fig., the deviation of the experimental
results from the theoretical value increases with compression ratio because of increased heat transfer at
higher temperatures (it is believed that it is heat transfer and not leakage what causes this discrepancy
since the time scale is very small). As shown below, all experimental results are at least within 8% of the
ideal value.
35
Table 4.1
Compression of Air
Rc
Tideal (K)
Pideal (MPa)
Pactual (MPa)
Pressure % error
18
900
5.47
5.05
7.75
16
864
4.68
4.37
6.72
14
824
3.90
3.66
6.27
12
781
3.17
3.06
3.37
Figure 4.1
Compression of Air, Rc=14, Po=1 atm, To=300K
4
Isentropic
3.5
3
2.5
2u
n~
2
1.5
1
0.5
0
0
5
10
15
20
Time (ms)
36
25
30
35
40
Figure 4.2
Compression of Air at Various Compression Ratios. Po=1atm, To=300K
6
Isentropic Rc=16
5
4 .Isentropic Rc=1 4
-
.
.
.
.2 .
. .
.
..
.-..
..
S3
2
1
0
0
5
10
15
20
Time (ms)
25
30
35
40
4.2 Combustion Calibration
This section covers the combustion curves obtained with the RCM as well as some of the measurements.
These curves were filtered to eliminate the high pressure oscillations generated due to the rapid energy
release during combustion, facilitating the post-processing of the data. The Matlab code used to filter the
signals is found in the Appendix. A typical filtered' combustion curve obtained with the RCM is shown
in Fig. 4.3. The gas mixture is compressed in about 10 Ms 2 , to a maximum pressure and temperature
which marks the end of compression. Due to heat transfer and boundary layer growth in the combustion
chamber, a slight decrease in pressure and temperature follows during a delay period prior to combustion.
This delay ranges from 20 to less than 4 milliseconds, depending on the mixture composition, its initial
conditions, and the compression ratio. The mixture then spontaneously ignites reaching a second peak in
pressure and temperature, after which heat transfer and boundary layer growth once again dominate
causing a drop in pressure.
I an unfiltered curve is shown in Fig. 4.8
compression time is defined as the time from the start of compression (P>Po), to the end of compression
(marked by the peak pressure),
2 the
37
Figure 4.3: Measured Parameters
Phi=0.4, Rc=16, To=60K, Po=latm
9
8
7
Delta P
- 80-20
6
0z
S5
tignite
"'4
3
2
1
0
'
0
5
10
15
Time (ms)
20
25
30
As with the inert gas runs, the compression of the fuel/air mixture was also checked against ideal
calculations. An average value of gamma was calculated using STRAPP, which is a computer program
that calculates the thermophysical properties of mixtures and pure fluids. The inputs to this software are
the mixture composition, pressure, and temperature.
The average end of compression temperature is
calculated using the ideal gas law, and used together with the maximum compression pressure to calculate
gamma at the end of compression. The final pressure and the core gas end-of-compression temperature
can then be calculated using the following isentropic relationships:
PV7 = constant
(4.4)
T2 = TI-
(4.5)
To check the combustion state of the burned gases, and to obtain a better understanding of the results
produced with the RCM, equilibrium combustion calculations are conducted with CHEMKIN. The input
data are the number of moles of each component for a given mole of air (the mixture composition) and
the end of compression temperature and pressure, which serve as the initial conditions. Constant volume
combustion is then computed with the internal energy held constant. After each combustion calculation,
38
CHEMKIN outputs the equilibrium pressure and temperature. The calculated change in pressure due to
combustion can then be compared against the data. For the CHEMKIN results, this change in pressure is
defined as the equilibrium pressure less the initial pressure: (Pcombustion-Pcompression).
Due to the
slight pressure drop during the delay period, the change in pressure definition for the experiments is the
equilibrium pressure less the minimum pressure after compression but before combustion (Pcombustion Pmin).
Two other important numbers that are extracted from the data are the ignition delay and the burn
time. The ignition delay is defined by:
(4.6)
Td "2= % - tend of compression
where:
t 20 % 3=
time to reach 20% of the change in pressure due to combustion
tend of compression = time at which the peak pressure occurs during compression.
The burn time is defined by:
(4.7)
Tb = t 8 0 % - t 2 0 %
where:
t 8 0 % = the time to reach 80% of the change in pressure due to combustion.
All the important variables that are extracted from the data are labeled in the Fig 4.3.
4.3 Heat Release During Ignition Delay
Comparing the combustion curves, with the compression curves of inert gas at the same compression
ratio, it can be seen that the post-compression, pre-combustion pressure drop is different for both cases.
After the compression of the inert gas, the pressure drops approximately with the square root of the
thermal diffusivity (alpha). This is indicative of heat transfer due to boundary layer growth, and will be
discussed further in Chapter 5. However Fig. 4.4 shows that during combustion the post-compression
pressure does not drop at this same rate. Although heat loss due to boundary layer growth still follows
the same relationship (square root of alpha times time), chemistry starts right at the end of compression,
creating a rise in pressure. Assuming that the gas constant R, for both the inert gas runs and the fuel/air
mixture is approximately the same, the change in energy released during the delay time can be assumed to
be proportional to the change in pressure:
%AEnergy Released
=
l''nert
P
max
-P
inert
AP
AP
(4.8)
max
3 The 20 and 80% values are used to clearly separate ignition, and the slower end of combustion from the main
burning process
39
Where Pinert is the pressure from the inert gas compression curve and AP is the difference between the
combustion curve pressure and the inert curve pressure at a given time during the delay period. Thus, the
amount of fuel energy that has been released can be roughly calculated by comparing the change in postcompression pressures between the combustion curve and an inert gas curve for the same condition. For
example, for Fig. 4.4, the percent of fuel burned at the indicated point, right before rapid combustion is
approximately:
%AFuel burned =
AP
=10%
(4.9)
APMO
Amax
4.4 Reproducibility of Combustion Curves
Using adequate fuel preparation and mixing procedures, the combustion process in the RCM is fairly
reproducible, taking into account the fact that combustion is difficult to replicate. Figures 4.5 and 4.6
show the repeatability of the combustion in the RCM using a 90 octane number Primary Reference Fuel
and isooctane, respectively. As these Figs. show, good combustion repeatability can be achieved in the
RCM and it is mostly dependent on having a consistent mixture filling/preparation procedure.
Figure 4.4: Energy Released Before Rapid Combustion
Rc=16, To=60C, Po=1 atm
12
10-
90 ON, Phi=0.4
8cc
a-
Air
4-
_
-
Energy Released Before Rapid Combustion
2-
0
-5
0
5
10
Time (ms)
40
15
20
Figure 4.5: Combustion Repeatability (90 ON PIRF)
90 ON, Phi=0.4, Rc=16, To=60C, Po=latm
12
10
8
6
U,
(,
2~
4
2
C'
-5
0
5
15
10
Time (ms)
20
25
30
2
Figure 4.6: Combustion Repeatabilibty (Isooctane)
Isooctane, Phi=0.4, Rc=16, To=60C, Po=latm
1
10
8
U,
6
,
(n
4
2
-5
0
5
15
10
Time (ms)
41
20
25
30
4.5 End-of-Combustion Variations
Occasional irregularities in the combustion process were also observed as shown in Fig. 4.7. There are
several possible reasons that can contribute to these differences in the combustion process. Inconsistent
mixing procedures can give rise to experiment-to-experiment differences in the equivalence fuel/air ratio,
resulting in runs with different initial conditions.
Other reasons include leakage or blowby of the
combustion gases, hydrocarbon absorption (due to o-rings or the thin film of oil in the combustion
chamber wall), and perhaps differences in the quenching of the HCCI combustion process depending on
the homogeneity of the mixture.
Figure 4.7: End-of-Combustion Variations
90 ON, Phi=0.4, Rc=16, To=50C, Po=latm
8
7
6
25
3
2
1
0
0
5
10
15
20
25
30
35
40
Time (ms)
4.6 Knock and High Pressure Oscillations
Figure 4.8 shows an unfiltered pressure signal. During combustion the curve shows a steep pressure rise
followed by high frequency oscillations.
This pressure effect is real, and the frequency of these
oscillations was found to be approximately 37 kHz, which is close to the calculated frequency for
oscillations in both the gas and the combustion chamber. The steep pressure rise responsible for these
oscillations was common at an equivalence ratio of around 0.4 or greater, and it is a current controllability
42
concern for successful implementation of HCCL. For the purpose of analyzing the data, all curves were
filtered using a 10 point forward average as shown in the MATLAB program in Appendix 4.
Figure 4.8: Knock Oscillations
90 ON, Phi=0.5, Rc=16, To=60C, Po=latm
16
141210-
-
0-6
42
0
8
10
12
14
16
18
20
Time (ms)
22
24
26
28
30
4.7 Piston Rebound
Figure 4.11 shows a problem that was experienced with especially high combustion pressures:
piston
rebound. Whenever the pressure in the combustion chamber rose high enough, the pressure-force on the
piston became greater than the downward force from the compressed gas in the driving chamber.
Consequently, there would be a force imbalance which would push the piston up. The increase in volume
would cause an expansion of the gases, dropping their pressure and temperature. Due to the inertia of the
piston, it would overshoot, and the driving pressure force would become greater than the opposing
combustion chamber pressure, forcing the piston down to its original locked position. The force balance
on the piston was calculated, and showed that the pressure force from the gases was high enough to
accelerate the piston upwards. To fix this problem, a higher driving pressure was used to lock the piston
in place. There is however a limit on this driving pressure.
In order to increase the driving pressure, the piston locking pressure must also be increased, and
consequently, the fast acting valve locking pressure also needs to be increased.
43
To handle higher
pressures, the solenoid valve was replaced with a higher pressure rated valve. There is however a 500 psi
design limit on the driving pressure, imposed by the maximum possible stress allowed by the driving
chamber. Thus, for mixture conditions where the combustion chamber pressure is very high, it will not be
possible to lock the piston. This problem was observed mostly for high octane fuel-air mixtures at an
initial pressure of 1 atm, compression ratio greater than 16, and an equivalence ratio above 0.5.
Figure 4.9: Piston Rebound
Isooctane, Phi=0.85, Rc=15.8, To=300K, Po=133kPa
20
1816 -
-
4-
1
2CO,
0-
3 Runs
1
08-
642
n
5
10
20
15
25
30
Time (ms)
4.8 Sensitivity Study
During the initial testing stage, various parameters were varied to determine their sensitivity.
These
parameters were type of fuel (octane number), compression ratio, initial charge temperature, relative fuelair ratio, and initial pressure. The sensitivity to some of these variables is shown in Figs. 4.10 through
4.14.
These Figs. show that this spontaneous combustion process depends mostly on octane rating,
compression ratio, fuel-air equivalence ratio, and initial charge pressure.
These last two are related
because they both affect the amount of chemical energy and species concentrations in the mixture. The
compression ratio on the other hand affects the post compression temperature, which has a strong effect
on the kinetics of combustion.
44
Figure 4.10: Octane Number Sensitivity
Various Fuels, Phi=0.4, Rc=16, To=60C, Po=latm
12
10
8
a-
50 ON
75 ON 90 ON
100
.
6
ON
0.
2I
CL
4
2
0
0
5
10
5
15
20
25
30
Time (ms)
Figure 4.11: Sensitivity to Equivalence Ratio
90 ON, Rc=16, To=60C, Po=latm
12
10
8
Phi=0.4
-
Phi=0.5
6
Phi=0.3
C.
4
2
0
-5
0
5
10
15
Time (ms)
45
20
25
30
Figure 4.12: Sensitivity to Initial Charge Pressure
90 ON, Phi=0.4, Rc=16, To=60K
:3
CL
Po=0.75 atm
-5
0
5
10
15
Time (ms)
20
25
30
Figure 4.13: Sensitivity to Initial Charge Temperature
90 ON, Phi=0.4, Rc=16, Po=latm
To=60C
8
To=70C
,D
E- 6
4
2
i
%J
-5
0
5
10
15
Time (ms)
46
20
25
30
Figure 4.14: Sensitivity to Initial Compression Ratio
90 ON, Phi=0.4, To=60C, Po=1 atm
12
10-
8-
6-
R c=1 4
1Rc=16
3
4-
2--
0'
-5
0
5
10
15
Time (ms)
20
25
30
4.9 Experimental Program and RCM Data Base
The focus of the experiments with the rapid compression machine throughout this project was to generate
a complete enough data base to produce and calibrate a combustion model for HCCI. The data base was
generated around three main aspects of combustion that needed to be explored: 1) Sensitivity of mixture
ignition process to mixture composition and state, 2) sensitivity of mixture energy release rate to mixture
composition and state, 3) the quantification of combustion characteristics under conditions where both
ignition delays and energy release rates are appropriate for plausible engine concepts.
To define the end-of-compression conditions necessary to get spontaneous ignition with
appropriate delays (less than 5 ms assuming an engine speed of 2000 rpm and 60 CAD for the duration of
combustion), and to study the energy release rates at realistic temperatures and compression ratios, the
following variables were changed:
initial pressure, initial charge temperature, compression ratio, and
fuel/air equivalence, ratio. These variables were sufficient to generate an appropriate data base used to
develop a combustion model. The data base was generated using a 90 ON Primary Reference Fuel. One
of the requirements of the experiments was to simulate the ignition behavior of a real fuel, so the ignition
characteristics of indolene in the rapid compression machine were compared to primary reference fuels,
and its behavior was similar to the 91-92 ON PRF's; this agrees with indolene's 92 octane number,
47
calculated as the average between the research octane number and the motor octane number. Based on
this study, it was justified to use a 90 ON PRF as the base condition for the generation of the data base.
To keep improving the model, other variables will continue to be explored.
These include
dilution and a range of different Primary Reference Fuels. It should be noted, that by varying the initial
pressure and the fuel-air ratio, dilution is effectively being varied. However it is also desired to vary
dilution by using or simulating residual burned gases. Thus, we are currently expanding the data base.
4.10 Matrix of Experiments for Model Calibration
The data collected from the mapping of the spontaneous ignition behavior and energy release rates are
used to validate the combustion model. The different conditions that were used to generate the data base
are shown in Table 4.2. Data was generated around base conditions by varying the compression ratio,
initial charge temperature, initial charge pressure, and fuel/air equivalence ratio. The results of these runs
are shown in Figs. 4.15 through 4.24, and a brief description is given below.
Table 4.2
Matrix of Experiments Using a 90 ON PRF
Rc
14
14
16
16
16
16
16
16
16
16
To (*C)
50
60
50
60
70
60
60
60
60
60
Phi
0.4
0.4
0.4
0.4
0.4
0.3
0.5
0.3
0.4
0.5
Po (atm)
1.0
1.0
1.0
1.0
1.0
1.0
1.0
0.75
0.75
0.75
Figure 4.15- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression ratio
of 14, initial charge temperature of 50 'C, and initial charge pressure of 1 atm. Some of these curves
show two-stage ignition. The ignition delays are relatively long (around 12 ms).
Figure 4.16- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression
ratio of 14, initial charge temperature of 60 'C and initial charge pressure of 1 atm. There is some
variation between the curves, perhaps because we are reaching a low temperature regime, where the
chemical rates are not very reproducible (the rates can be slow or they can be average). There is little
data for these conditions prohibiting a clear conclusion.
48
Figure 4.17- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression ratio
of 16, initial charge temperature of 50 'C, and initial charge pressure of 1 atm. Ignition delays are faster
than the two previous curves (around 7 ms). There is some variation at the end of combustion.
Figure 4.18- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 1 atm.
Figure 4.19- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression ratio
of 16, initial charge temperature of 70 *C, and initial charge pressure of 1 atm.
The data is fairly
repeatable and the ignition delays are close to 7 ms.
Figure 4.20- This graph shows combustion curves for fuel-air equivalence ratio of 0.3, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 1 atm. There is significant
variation in the ignition delays. It is believed that this was caused by slow evaporation of the PRF over
time, losing its volatility. This problem was identified and corrected in the later experiments.
Figure 4.21- This graph shows combustion curves for fuel-air equivalence ratio of 0.5, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 1 atm. The ignition delays are
fairly short (less than 4 ms).
Figure 4.22- This graph shows combustion curves for fuel-air equivalence ratio of 0.3, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 0.75 atm. The ignition delay is
considerably larger than the previous experiments due to the low concentration.
The rate of energy
release rate during combustion is slow.
Figure 4.23- This graph shows combustion curves for fuel-air equivalence ratio of 0.4, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 0.75 atm. The ignition delays are
smaller than the previous curve, and the energy release rate is faster.
Figure 4.24- This graph shows combustion curves for fuel-air equivalence ratio of 0.5, compression ratio
of 16, initial charge temperature of 60 'C, and initial charge pressure of 0.75 atm. Ignition delays are
among the fastest of the lower concentration curves, and the energy release rate is steep. There is some
variation perhaps because of a transition in temperature regimes, from low to high, were there is more
variation in the combustion process.
49
Figure 4.15
Phi=0.4, Rc= 14, To=50C, Po=latm
12
10
I
I
I
0
5
I
.
-5
10
15
Time (ms)
20
25
30
20
25
30
Figure 4.16
Phi=0.4, Rc= 14, To=60C, Po=latm
12I
10I
8
6
4
2
0
-5
0
5
10
15
Time (ms)
50
Figure 4.17
Phi=0.4, Rc=16, To=50C, Po=latm
12
I
I
I
-5
0
5
I
I
10
15
10
8
6
4
2
20
25
30
25
30
Time (ms)
Figure 4.18
Phi=0.4, Rc=16, To=60C, Po=latm
6
C.
4
2
0
-5
0
5
15
10
Time (ms)
51
20
Figure 4.19
Phi=0.4, Rc=16, To=70C, Po=latm
12
10F
8
1-
6
4
2
0
-5
0
5
10
15
Time (ms)
20
25
30
20
25
30
Figure 4.20
Phi=0.3, Rc=16, To=60C, Po=latm
12
10
8
U
6
4
2
0
-5
0
5
10
Time (mns)
52
15
Figure 4.21
Phi=0.5, Rc= 16, To=60C, Po=latm
12
101F
8
I-
6
-5
0
5
ii
15
10
Time (ms)
20
25
30
25
30
ia
ii
Figure 4.22
Phi=0.3, Rc=16, To=60C, Po=0.75atm
Il
i
-5
0
5
10
15
Time (is)
53
20
Figure 4.23
Phi=0.4, Rc=16, To=60C, Po=0.75atm
12
10
-5
0
5
15
10
Time (ms)
20
25
3)
25
30
Figure 4.24
Phi=0.5, Rc=16, To=60C, Po=0.75atm
12
i
I
I
15
20
101F
8
6
4
2
0
-5
0
5
10
Time (ms)
54
4.11 Data Analysis and Chemkin Comparison
A comparison of the combustion-produced pressure rise of the data and the CHEMKIN equilibrium
calculations is shown in Table 4.3. In order to get a better understanding of the experiments, Chemkin
equilibrium calculations were performed for two different cases. For one case CO 2 was included in the
products, allowing combustion to go to completion.
For the second case however, CO 2 was removed
from the products, simulating incomplete combustion where the fuel carbon ends up as CO. Both of these
results, which are included in Table 4.3, mark the upper (complete combustion) and lower limits
(partial/incomplete combustion) of the combustion-produced pressure for the RCM experiments. This is
more clearly shown in Figs. 4.25 and 4.26, where the change in pressure due to combustion has been
plotted versus the equivalence ratio for two different initial pressure: 0.75 atm, and 1 atm. The RCM data
lies between the partial oxidation and the complete combustion calculations. One of the main things to
note from these graphs is the deviation in experimental combustion-produced pressure from the calculated
ideal (complete) combustion pressure with decreasing equivalence ratio. At higher equivalence ratios, the
data approaches the ideal calculations. This implies that at lower concentrations incomplete combustion
dominates, perhaps due to the lower kinetics caused by the lower bum temperatures due to the excess
amount of air. It may be that CO is not being fully oxidized, or that there are unburned Hydrocarbons,
but most likely, a combination of both. At higher equivalence ratios the temperatures are higher and the
rate of combustion increases, oxidizing the fuel more completely.
The behavior at the lower fuel/air
equivalence ratios indicates a strong dependence of the combustion-produced pressure rise on mixture
concentration. This is a problem that is currently being studied, both to improve the HCCI model, and to
improve combustion through a better understanding of the reasons for this behavior.
55
Table 4.3
Summary of Results
Delta P
Tend of T
end of
Pcombu Delta P Delta P Combus
Tend of Tend of Combus ombus Pend of Pend of Pmin Pcombu Pcombu stion . Combus Combus tion
Delayl Deay2
tion (Chemki Ignition (t80%stion
After
Comp. Comp.
Set Condition
t20%)
(ms)
Actual Comp. (Actual) Chemki n (NO (Actual) (Chemki n-NO
(Chemki Ideal
Avg. (K) Core (K)ti
(ms)
C02)
(MPa)
n)
MPa)
C02)
(MPa)
n
(MPa)
(MPa)
(MPa)
(MPa)
n-No
n) (K)
C02) (K)
(MPa)
(MPa)
Phi=0.4,
1
Rc=14,
Po=1 atm,
To=323K
Phi=0.4,
783
807
1972
1497
3.56
3.43
3.30
7.21
8.92
6.95
3.91
5.36
3.53
9.90
0.37
2
Po=la4,
779
826
1965
1491
3.57
3.34
3.23
7.69
8.65
6.73
4.46
5.08
3.39
9.36
0.32
834
846
1984
1520
4.27
4.19
4.04
8.78
10.32
8.11
4.74
6.05
3.92
5.24
0.20
'o=16,
854
867
2018
1553
4.25
4.18
3.99
9.16
10.18
8.03
5.16
5.93
3.86
4.89
0.20
890
2027
1566
4.23
4.16
3.92
8.47
9.93
7.87
4.54
5.70
3.71
4.65
0.22
To=333K
Phi=0.4,
3
=,
To=323K
Phi=0.4,
4
To=333K
5
Phi=0.4,
Rc=16,
Po=1atm,
To=343K
875
Table 4.3
Summary of Results (Continued)
Tend of Combus Pend of Pend of
Set
Condition
Pmin
Delta P
Pcombu Pcombu Pcombu Delta P Delta P Combus
endof endofPmi PcmbuPcobustion .Combus Combus tion Delayl Delay2
Ten ofTen ofComusComus
tion (Chemki Ignition(80%tion
stion Chemki
stion
After
Comp. Comp.
tion
tion (Chemki Ideal
Actual Comp. (Actual) Chemki n (NO (Actual) (Chemki n-NO
(ins)
t20%)
Tend of Tend of Combus
Comp.
Avg
Comp.
(K)
(K) Core (K)
n-No
(MPa)
(MPa)
(MPa)
(Chemk
(MPa)
n (MPa)
)C2)
(K)
C02)
(MPa)
n)(inmk
(MPa)
(MPa)
CO)
C02)
(Mta)l)
(ms)
(MPa)
Phi=0.3,
6
Rc=16,
Po=1 atm,
864
881
1769
1401
4.32
4.23
3.90
7.09
8.88
7.17
3.19
4.56
2.94
8.55
0.65
To=333K
Phi=0.5,
7
Rc=16,
Po=1atm,
To=333K
Phi=0.3,
862
860
2253
1707
4.18
4.26
4.14
10.76
11.57
9.04
6.62
7.39
4.77
3.38
0.15
8
Rc=14',
Po=.75atm,
To=333K
844
878
1742
1374
3.25
3.11
2.81
4.83
6.58
5.29
2.02
3.34
2.18
20.70
1.93
830
865
1990
1526
3.23
3.11
2.90
5.96
7.64
6.01
3.06
4.41
2.89
13.85
0.54
830
855
2220
1674
3.18
3.12
3.01
7.50
8.59
6.68
4.50
5.41
3.56
8.15
0.25
~JI
Phi=0.4,
9
Rc=16,
Po=.75atm,
To=333K
Phi=0.5,
10
Rc=16,
Po=.75atm,
To=333K
Figure 4.25
Change in Pressure Due to Combustion
Rc=1 6, Po=0.75 atm, To=60 C
6 5
,c43-
ca
0 Chemkin
Chemkin (No
02A
2)
-Lnear (Chemkin)
Linear (Data)
1
Linear (Chekin (No C02))
0
0.4
0.3
0.2
1
0.5
0.6
phi
Figure 4.26
Change in Pressure Due to Combustion
Rc=16, Po=1 atm, To=60 C
87
6
U) 4
Chemkin (No C02)
2A
0 -
0.2
0.4
0.3
phi
58
0.5
0.6
CHAPTER 5
HCCI MODEL
5.1 Background
The original homogeneous charge compression ignition combustion model that was used during this
project was developed by Dr. David Schmidt, and Professor James Keck. Subsequent modifications were
made and implemented by Keck and Ayala. The model was coded as modular subroutines in FORTRAN
77. There are four main stages of the model: compression, ignition, hydrocarbon breakdown, and CO
oxidation. The compression stage was modified based on the equations of motion of the RCM piston,
allowing for a much more accurate comparison against the data. A simple heat transfer model was also
implemented to account for heat loss and thermal boundary layer growth starting near the end of
compression and continuing through the end of combustion. For the ignition chemistry, a branched chain
kinetic model developed by Hu and Keck [5] was used. This stage predicts the ignition delay. A simple
empirical model describes the fuel hydrocarbon breakdown.
During this stage, fuel is consumed and
radicals, CO, and water are produced. This stage is currently being modified using a more fundamental
approach, based on an extension of the Hu-Keck, reduced reaction mechanism. During the late stages of
combustion and the formation of carbon dioxide, well-established elementary kinetic models are used [6].
These chemistry sub-models are programmed in the form of kinetic equations with the appropriate
temperature and concentration sensitivity (Schmidt).
5.2 Compression and Heat Transfer Model
To accurately reproduce the results from the RCM, the equations of motion of the piston were derived and
a volume relationship as a function of time was obtained for the combustion chamber.
Coupled with
isentropic gas relationships, the program then calculates the pressure and temperature inside the cylinder.
It is assumed (correctly) that the piston moves at constant velocity until it slows down due to the high
pressure generated by the pin and groove mechanism. At this moment, marked by an inflection point in
the pressure vs. time curve, the piston starts to decelerate, and boundary layer growth begins. Previous to
this point, compression of the gases is assumed adiabatic and reversible.
The exact location of the
inflection point was determined by calibrating the model compression curves against the actual data.
Likewise, the location of the boundary layer growth initiation was also calibrated, and found to be close
to the inflection point. The derived equations are listed below, followed by a schematic:
V = 7(R +5)
2 (h+S)
(5.1)
59
h+d/h 2 (1-2tlrd)
h~h2
:tr< 0
{1+dlh 2 (1-tIrd)2 : !t ! Z
I
rd
(5.2)
t
= 2d/v
(5.3)
S = (a t)12
(5.4)
td
where:
V is the volume of the gases in the combustion chamber
R is the radius of the combustion chamber
h is the displacement of the instantaneous height of the combustion chamber
5 is the thermal boundary layer thickness
a is the thermal diffusivity (calibrated against data, and compared to predicted value)
h2 is the clearance height of the rapid compression machine (measured)
Td
is the time it takes to decelerate the piston to zero velocity
d is the stopping length (calibrated against data)
vo is the piston speed (calibrated against data, and dependent on operating conditions, such as
driving pressure, and size of opening in the orifice area control).
60
Figure 5.1: Compression Stage and Heat Transfer Model
Rc=16, To=60C, Po=1atm
Hmax=11cm
5h
4-
ci)
CL ED3-
2
01
h2+d
-4
-2
0
2
Time (ms)
h2
4
In this model, at the inflection point, time is set equal to zero.
6
Hmin=0.64 cm
8
This is the reference point, used to
compare the data. The HCCI model assumes that the entire volume in the cylinder is the adiabatic core.
Originally there was no boundary layer growth and heat transfer was accounted for approximately by
reducing the compression ratio, until the end of compression pressures in the simulations matched the
actual data. The heat transfer model added consists of an increase in volume of the core gases due to
boundary layer growth. Although combustion occurs at constant volume, this increase in volume has the
equivalent effect of an actual boundary layer, yet avoids complexities due to differences in geometry, gas
density, and temperature inside the combustion chamber. The added volume from the boundary layer
growth, at constant mass, decreases the chamber pressure.
During the actual combustion process, the
pressure of the cylinder decreases because of the cooling of the gases due to heat transfer to the walls.
For this heat transfer model, it was assumed that the boundary layer growth is proportional to the square
root of the thermal diffusivity (alpha) as described in Eq. (5.4). This parameter was calibrated in the
absence of combustion, against inert gas data, and the value that gave the final agreement was close to the
actual thermal diffusivity at the given conditions. Fig. 5.4 shows a comparison of a simulation and an
inert gas curve used during the calibration. Figs. 5.5 through 5.14 show that the model predictions of
pressure decrease due to heat transfer during the ignition delay are very close to the actual data even in
the presence of chemistry (as has already been discussed, the post-compression, pre-ignition pressure is
61
higher than the pressure in the pure compression curves by about 10%, due to energy released caused by
the initial chemistry).
Currently the heat transfer model does not follow the data in the late stages of
combustion. This could be refined by using a different alpha parameter (alpha is temperature dependant,
which has not been taken into account).
5.3 The Ignition Model
The Hu-Keck branched chain kinetic ignition model used in the HCCI code is a reduced reaction
mechanism, appropriate for simulating the HC ignition chemistry.
active species and 18 chemical reactions.
thermokinetic development:
The original model consists of 13
As illustrated in Fig. 5.2, there are four main steps of
1) chain initiation; 2) chain propagation; 3) chain branching, and 4) chain
termination [5]. The process begins with hydrocarbon abstraction from a saturated hydrocarbon, yielding
an alkyl radical and a hydroperoxy radical (RI), the alkane is then oxidized using alkylperoxy radical
isomerization theory, the main chain cycle being decribed by reactions R2-R6.
This chain-cycle is
completed by the reaction of an OH radical with a fuel molecule. The chain branching reaction is R7.
These reactions (R1-R7), form what is called the low-temperature loop because they are responsible for
oxidation of normal alkanes with carbon numbers greater than 4 at low temperatures (T<800 K), and high
oxygen concentrations. During this low-temperature loop, which describes the first stage ignition delay,
radicals are formed and propagated. In the high temperature regime, when the radical concentrations get
high enough, a high temperature branching loop takes over.
The important reactions for the high
temperature loop are R8, R9, and R10, where the branching agent is now hydrogen peroxide rather than
hydroperoxide. Reactions RI-R10 are the most important for describing the complete two-stage ignitiondelay. These reactions have a high sensitivity to concentration and temperature and their rates can be
adjusted for different fuels. A complete list of the 18 reactions and 13 species from the Hu-Keck model is
found in the Appendix.
After predicting the ignition delay, the HCCI program switches to the combustion chemistry
which is described by an empirical model for hydrocarbon breakdown. This transition occurs when 20%
of the fuel has been consumed.
Well-established, elementary kinetics are used for the late stages of
combustion and for the formation of carbon dioxide.
62
Figure 5.2
The Hu-Keck Ignition Model
H02- -
-
* HOOH--
M
tI
4
+
Hig h
Te nperature
Loc p
02
02*
Oefin
W
RH
_-
2
-021
RH --
Low
Temperature
Loop
+H20
R02 -
W
OH- +-
02
++ 0 2ROOH-
ROOH- +
-
-
1-+ORO-
OROOH
(Courtesy of D. Schmidt)
5.4 Hydrocarbon Breakdown
During the hydrocarbon breakdown stage, fuel is consumed and radicals, CO, and water are produced. In
the original HCCI model, this stage is described by a simple empirical two-step kinetic process, which
produces water, CO, and H' from fuel and 02. The rates of the reactions (shown below) are obtained
empirically. This stage is currently being modified to a more fundamental approach by using an extension
of the Hu-Keck model.
Empirical Hydrocarbon Breakdown
CH, or CH
4
-
C 2 H4 and H'
202+ C2 H 4 -+ 2H 2 0+2CO
63
(5.5)
(5.6)
5.5 CO Oxidation
The oxidation of CO is described by well established elementary kinetics and water chemistry reactions.
The elementary kinetics involve CO, C0 2 , H 2 0,
02,
H, OH, H 2 0 2 , 0, H 2 , Ar, HO 2, and H 2. The water
chemistry involves twenty reactions. The following reactions are used for CO oxidation:
o + CO+ M
CO 2 + M
Pressure Sensitive
(5.8)
Slow
(5.9)
OH+CO=> CO 2 +H
Fast
(5.10)
HO 2 + CO =* CO 2 +OH
Slow
(5.11)
0
2
=
+CO =>CO 2 +O
(Courtesy of D. Schmidt)
5.6 Code Logic, Structure and Equations
As previously discussed, the original HCCI model begins with the compression of the gases, and the
switching on of the Hu/Keck ignition model. The calculated volume of the gases is then used to calculate
the pressure and temperature of the cylinder gases, by solving the kinetics, energy, and state equations
(5.12 - 5.16). These equations are solved using the VODE integrator, which is a stiff equation solver.
The pressure work is then calculated using the trapezoid rule and this term is added to the temperature.
The thermodynamic properties are then updated, calculating a more accurate pressure. Figure 5.3 shows a
schematic of this main time step.
After 20% of the fuel is consumed, the program switches to the
elementary kinetics mode, and the reactions are solved with CHEMKIN. Hydrocarbon breakdown then
occurs, followed by CO oxidation and water chemistry. The HCCI model is currently being modified to
input the entire combustion mechanism into CHEMKIN, where it will be solved using the CHEMKIN
libraries. This modification involves calculating thermodynamics properties for the Hu/Keck ignition
model reactants for all the fuels used (isooctane and n-heptane for the experiments of this project).
Additionally, and as already mentioned, two new reactions are being added to the Hu/Keck model,
eliminating the simplistic HC breakdown mechanism.
64
Figure 5.3: Code Logic and Structure
New Time
Step
Update Volume
V
Calculate
Kinetics and
Energy Release
C,T,P
Update
Thermodynamic
Properties
P,Cv
(Courtesy of D. Schmidt)
Kinetic Equations
ex
k= A ±Tn
M
(5.12)
E T
ji
(5.13)
j=1
dS
-7=VVji
dt
Neqn
i=1
(5.14)
(R1. -R-)
Energy and State Equations
dSi
spec
1
=
L U
i
=
dt
dt Nc-
dT
dV
ct
dt
(5.15)
(5.16)
PV =nRT
(Courtesy of D. Schmidt)
65
5.7 Model Calibration
There are three stages for the calibration of the combustion model: calibration of the compression stage
and the heat transfer model, calibration of the ignition stage, and calibration of the HC breakdown. The
CO oxidation chemistry has been carefully studied by other scientists [6], and its rates are well
established so it does not need to be calibrated. As previously discussed, the compression stage and heat
transfer model were calibrated against inert gas curves, finding appropriate values for parameters such as
alpha, and the stopping distance. To calibrate the ignition chemistry, the rates of reactions R1-R1O were
varied to match the experimental ignition delay times. Some reactions are not very sensitive so their rates
were not varied very much; other reactions such as R9, which is real, were not varied at all. The most
sensitive reactions, and the ones varied the most were RI, R6, R8, and RIO. For these reactions the rate
constant varied was the logarithm of A', shown in Appendix 3. All other parameters such as heat of
formation and activation energy, were assumed constant and their values were taken from [5].
The Hydrocarbon breakdown stage, which is responsible for the energy release rate due to
combustion, was calibrated by varying the Arrhenius parameters of equilibrium.
These were purely
empirical, so they were varied systematically until there was an adequate match with the data.
5.8 Model and Data Comparisons
Figures 5.5 through 5.14 show a comparison of the current combustion model against data generated with
the RCM. The qualitative behavior of the model is good. The compression stage is followed by a delay,
where pressure falls due to heat transfer. Then there is a rapid change in pressure due to combustion,
followed by a decrease in pressure at the end of combustion due to heat transfer. The compression stage
is in excellent agreement with the data, validating the equations of motion that were derived, as well as
the parameters that were calibrated.
The heat transfer model does a good job at reproducing the
decreasing pressure in the chamber, due to cooling of the gases. As previously explained, this model can
be further improved by adding alpha dependencies on temperature and pressure. The time delays are
within the experimental error in most cases, and a more quantitative comparison is shown in Figs. 5.15
and 5.16, where the ignition delays and the burn times are compared for the data and the model. Except
for lower concentration cases (Po=0.75 atm, and Phi=0.3), these plots show acceptable agreement
between model and data. Graphs 5.12, and 5.13 also reflect that the program is not that sensitive to
changes in pressure. The ignition delays for these lower pressure cases have the greatest discrepancy
compared to the data. The model's change in pressure due to combustion also differs from the data as the
relative fuel-air ratio decreases. This is similar to the difference that we saw before in the CHEMKIN
comparisons, and it occurs because the model continues the combustion chemistry to completion when
that is not what is actually happening. Most likely, the slower kinetic rates typical of a lean homogeneous
66
mixture, due to its lower burned gas temperatures, cause incompleteness in combustion. This difference
is still being studied, and is expected will be accounted for with the new additions to the Hu/Keck model.
Figure 5.4: Compression Stage and Heat Transfer Model Calibration
Air, Rc=16, To=60 C, Po=latm
....... MODEL
DATA
-
45
4.5 -
3.5S3-
DSTP =0.0075 m
2*2.5- -21
a= 2.75x10-5 m 2 /s
S2-
v0 =9.75m/s
1.5-
0.5- 0
-5
0
5
10
15
Time (ms)
67
20
25
30
Figure 5.5
Phi=0.4, Rc=14, To=50C, Po=latm
12
MODEL
DATA
10
.............------8
tS
6
-----------
--
4
-.
...............
2
-5
5
0
10
20
15
3)
25
Time (ms)
Figure 5.6
Phi=0.4, Rc=14, To=60C, Po=latm
12 .
MODEL
DATA
10
..................8
.......
1-
.
.. -.
...
-.
6
4
2
0
-5
0
5
10
Time (ms)
68
15
20
25
30
Figure 5.7
Phi=0.4, Rc=1 6, To=50C, Po=latm
12
--
MODEL
-
DATA
10
8
co
6
a_
-.
-
..
. --------
2
0
-5
0
5
15
10
Time (ms)
20
30
25
Figure 5.8
Phi=0.4, Rc=16, To=60C, Po=latm
12
.....-- MODEL
DATA
10
-............
-------
-.
8
.. . . .
a
6
4
2
0
-5
0
5
15
10
Time (ms)
69
20
25
30
Figure 5.9
Phi=0.4, Rc=16, To=70C, Po=latm
12
MODEL
DATA
10
......
8
6
4
2
0
-5
0
5
10
Tine (ms)
15
20
30
25
Figure 5.10
Phi=0.3, Rc=16, To=60C, Po=latm
12
.....
MODEL]
-- DATA
10
-.......
...............
-5
0
5
15
10
Time (ms)
70
20
25
30
Figure 5.11
Phi=0.5, Rc=16, To=60C, Po=latm
12
----- MODEL
-DATA
10-
8 -
6 -
4 -
-.......... _ .......
2-
0
-5
0
5
10
15
20
25
30
Time (ms)
Figure 5.12
4
Phi=0. 3, Rc=1 6, To=60C, Po=0.75atm
12
....- MODEL
-- DATA
8 -
6 -
4 -
2 -
0
-5
0
5
10
Time (ms)
71
15
20
25
30
Figure 5.13
Phi=-0.4, Rc=16, To=60C, Po=0.75atm
12
------ MODEL
-- DATA
10
-........
...---...................
8
6
.
4
... ....-
2
0
-5
0
5
10
15
20
25
30
Time (ms)
Figure 5.14
Phi=0.5, Rc=16, To=60C, Po=0.75atm
12
--. MODEL
DATA
10
.............
.................8
El
6
............. .........-
4
2
0
-5
0
5
15
10
Time (ms)
72
20
25
30
Figure 5.15: Model vs. Data Comparison
IGNITION DELAY
Rc=16, Po=1 atm, To=60C
IGNITION DELAY
Rc=16, PO=0.75atm, To=60C
25
87-
20-
6-
E15-
4 -
1
E
M
5
0.4
0.3
Etignition (model)
10-
3 -- *tignition (data)
2
Etignition (model)
0
0.2
*tignition (data)
0.5
0
0.2
0.6
0.4
0.3
IGNITION DELAY
Rc=16, Po=latm, Phi=0.4
IGNITION DELAY
Rc=14, Po=latm, Phi=0.4
12-
6-M
7-
10
4)
4)
S*tignition (data)
Etignition (model)
40
50
* tignition (data)
Etignition (model)
2
80
70
60
Temperature (C)
10
9
8-
70
60
50
Temperature (C)
40
10-
IGNITION DELAY
Po=1 atm, Phl=0.4, To=60C
E 6
4) 5 E 4
6 *tignition (data)
3
Etignition (model)
2
6
E
IGNITON DELAY
Po= latm, Phi=0.4, To=50C
12
E
4)
E
0.6
phi
phi
2
0.5
*tignition (data)
1 _
tignition (model)
0
13
15
14
16
17
1
1.2
13
Rc
IGNITION DELAY
Rc=16, Phi=0.4, To=60C
16
14
12
10
S8-
6
*tignition (data)
E tignition (model)
2
0.4
0.6
0.8
Pressure (atm)
73
14
15
Rc
16
17
Figure 5.16: Model vs. Data Comparison
Burn Time (20%-80%)
Rc=16, PO=0.75, To=60C
Burn Time (20%-80%)
Rc=16, Po=1atm, To=60C
0.7-
2.5
0.6
0.6
S0.5-
*tburn (data)
-tburn
0.4
2 --
(model)
&
-0.3
*tburn (data)
1.5 _Etburn (model)
El
P 0.20.1
00.2
0.5
U
0-
phi
phi
Burn Time (20%-80%)
Rc=16, Po=1 atm, Phi=0.4
Burn Time (20%-80%)
Rc=14, Po=1atm, Phl=0.4
0.4
0.25
E
0.6
0.4
0.2
0
0.6
0.5
0.4
0.3
p
U
0.35
0.3
0.23
0.21
E 0.25
0 0.2
E 0.15 * tburn (data)
0. 1 Etburn (model)
*tburn (data)
.
0.17 -- Etburn (model)
0.15 40
0-
1
50
80
70
60
Temperature (C)
Temperature (C)
Burn Time (20%-80%)
Po=1atm, Ph=.4, To=60C
Burn Time (20/080%)
Po=latm, Phi=0.4, To=50C
0.35
0.4-
0.30.25 Io0.2-$
'E 0.15-
0.30 e.
E
0.1 - * tburn (data)
F
S tburn (model)
0 13
70
60
50
40
17
16
15
14
13
Burn Time (20%-80%)
Rc=16, Phi=0.4, T=60C
0.6
14
15
Rc
Rc
0.6
0.5
0.4 *tburn (data)
"
Etburn- (model)
* 0.3
0.2
0.1
0
0.4
0.2
0
0.1 - *tburn (data)
0.05 - Etburn (model)
0.8
1
1.2
Pressure (atm)
74
16
17
CHAPTER 6
CONCLUSIONS AND DISCUSSIONS
The purpose of this project was to generate a database of Homogeneous Charge Compression Ignition
Combustion to develop and calibrate a chemical kinetic model of the process The main stages and results
of this research are summarized below:
1.
Various modifications were made to the MIT Rapid Compression Machine designed and built by Dr.
Park and Professor Keck in 1990. Many of its components were modified to improve its operation,
reliability and repeatability. This machine has proved to be an excellent apparatus for chemical
kinetic studies, and the studies and comparisons that we have performed during this research prove
our point.
2. A database of Homogeneous Charge Compression Ignition combustion was generated. This database
covers a range of initial conditions, and served as a good basis for the HCCI model calibration. More
data continues to be generated. The results obtained so far validate the database generated. The
current data base is the most reliable that has been obtained to date with the MIT RCM.
3.
A Homogeneous Charge Compression Ignition combustion code has been developed and calibrated
against RCM data. Qualitatively the model is good. It does an excellent job at simulating the ignition
delays, and energy release rates of the combustion process. The model is satisfactory for doing cycle
simulations of HCCI-based engines. It continues to be improved by developing a more extensive
database, and by extending the Hu/Keck ignition model to include the main energy releasing phase of
combustion.
75
(This page was intentionally left blank)
76
BIBLIOGRAPHY
1.
Stanglmaier, R. H., Roberts, C. E., "Homogeneous Charge Compression Ignition (HCCI): Benefits,
Compromises, and Future Engine Applications," SAE paper 1999-01-3682.
2.
Onishi, S., et al., "Active Thermo-Atmosphere Combustion (ATAC) - A New Combustion Process
for Internal Combustion Engines," SAE paper 790501.
3.
Kimura, S., et al., "New Combustion Concept for Ultra-Clean and High-Efficiency Small DI Diesel
Engines," SAE paper 1999-01-3681.
4.
Ishibashi, Y., and Asai, M., "A Low Pressure Pneumatic Direct Injection Two-Stroke Engine by
Activated Radical Combustion Concept," SAE paper 980757.
5.
Hu, H. and Keck, J. C., "Autoignition of Adiabatically Compressed Combustible Gas Mixtures," SAE
Paper 872110, 1987.
6.
www.me.berkeley.edu/grimech
7.
Heywood, J.B., Internal Combustion Engine Fundamentals, McGraw-Hill Book Co., New York,
1988.
8.
Park, P., Rapid Compression Machine Measurements of Ignition Delaysfor PrimaryReference Fuels,
Ph.D. Thesis, MIT, 1990.
9.
Lee, D., Autoignition Measurement of OxigenatedFuels in a Rapid Compression Machine, M.S.
Thesis, MIT, 1993.
10. Lee, D. Autoignition Measurements and Modeling in a Rapid Compression Machine, Ph.D. Thesis,
MIT, 1990.
11. Keck, J.C. and Hu. H., "Explosion of Adiabatically Compressed Gases in a Constant Volume Bomb,"
2 10
Symposium (international) on Combustion, Munich, Germany, (1986).
77
(This page was intentionally left blank)
78
APPENDIX 1: RAPID COMPRESSION MACHINE OPERATION SEQUENCE
1.
If the RCM has just been fired, and one wishes to prepare the next run then start with step number
2. If the machine has been reassembled and has no oil, then the first step is to open valve 10 (see
panel), and let oil from the reservoir fill the oil chambers to the desired level. Then follow step
number 2.
2.
Push all the air out of the oil chambers and gas lines. If there is a vacuum system set up, then use
it for this step. Otherwise do it manually: close all valves on the control panel. Open valve 10,
letting oil from the oil reservoir flow into the machine. Open the solenoid valve, until a stream of
oil flows through the vent. This means that the length of tubing is full of oil (which eliminates
inconsistencies and delays while firing the machine). Close the solenoid valve and follow the
same procedure for the Valve locking pressure tubing (open valve 3, until a stream of oil flows
through the vent). Close valve 3 and open valve 1, repeating the same procedure so that the
tubing for the piston lock pressure is full of oil. After all lines have been filled with oil, pushing
most of the air outside of the system, close valve 10.
3.
Lift the piston by opening valve 7, pressurizing the oil chamber with 50 psi N2.
4.
Lower the fast acting valve by opening valve 2 and pressurizing the gas chamber above the vavle
with 100 psi N2.
5.
Lock the fast acting valve with high pressure oil (up to 1000 psi) by opening valve 3.
6.
Vent gases from fast acting valve air chamber using valve 6.
7.
Lock the piston with high pressure oil by opening valve 1.
8.
Pressurize the gas chamber above the piston with compressed air (300 psi), by opening valve 5.
9.
Vent gases pressurizing main oil chamber by using valve 4.
10. Fire the RCM when ready by opening valve 8, the solenoid valve.
11. Vent gas chamber above piston by opening valve 5.
12. To repeat fire sequence repeat steps 2 through 11.
79
Figure A.1.1
Control Panel
00
0)
I
h i
3
0
VALVE
LOCK
10
FROM
OIL RES.
4
12
5
9
(9
0
VENT DRIVING VENT
PRESSURE
I
I
I
1
PISTON
LOCK
7
6
0
0
PISTON VENT
UP
2
0
VALVE
DOWN
EXPERIMENTAL
GASES
I
I
I3ONS
A
A
-
NOTES
1. Remove 0.033 +/- 0.005 from this surface.
(0.18 Anular ring, typical 3 places).
2. Thickness prior to machining is 0.2774.,
typical 3 places.
Note 1,
00
rNote 1
SECTION A-A
-//////
' --------\\\\\\\\\\\--
Note
All Dimensions in Inches
21
M IT
SLOAN LABORATORY
HCCI PROJECT
RCM SPEED RING
STMNLESS
sods1 :9 ±6 .-
s.mW.HCCI-002
n..t 1I OF
M,
j
KV
I
____
IOH
_E
EP____
I REV
ocscmeno
Date
APWCV
.048 REF.
NOTE 1
F
t
4-
00
110-32 UNC-2B
3 PLACES (a)120
NOTES
1. REMOVE 0.048 +/- .005 FROM THIS EDGE
(ALL AROUND)
ALL DIMENSIONS IN INCHES
MI
SLOAN LABORATORY
HCCI PROJECT
RCM OIL RIM
a". I WONO
1 STNLESS
Sa11:4
I
s-d- 1I
:4
HCCI-005
mm.t
most
1
I
OF
1
Cr -I
REV
ZONE I MY
DESCFTO
ww
A~P~~
0.156±0.002
00
4-
L
If
.156 DIA
.080 DEEP
3 PLACES @120
NOTE: ALL DIMENSIONS IN INCHES
SLOA
I__
__
PROJECT
T
HCC
RCM SPEED RING
LABOTORY
J
NLELSSg 4-HCCI-003
1: 1.61
02/28/00
1 -d
1
OF 1
[ZOW
00
I WV
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
-J
i
DESCTION
""w
NOTES
1. MACHINE THIS HEIGHT
TO 6.16-0:88 (MACHINE FROM
BOTTOM THREE LEGS, SEE SKETCH).
2. POLISH THIS INNER
SURFASE TO APPROXIMATELY
164 MICROINCH FINISH
02
6.160 088
SEE NOTE 1
4-
ALL DIMENSIONS IN INCHES
7
BOTTOM
LEG
SEE NOTE 2
LEGY
PROJECT
MIT IHCCI
RCM PISTON LINER
SLOAN LABORATORY
TISmsEs sd"HCCI-OO4
si1*:
= 10
1I
1
'l
n.,i2/2i/t0
n 12
|a
IR
1 I n F- 1 J
ZONE
W
I LYDECRD
PPOED
1
"0 87S- O.'ooo
.00
f
00
(-A
ALL DIMENSIONS IN INCHES
0.1875
M ~SLOAN LABORATORY
SLOAN
LBORATOY.
HCCI PROJECT
RCM SPACER
SPACE
RM
ALUMINUM
IsmI 1:2.751
I
NHCCI-007
02/28/00
|3h-e
IR"
1 OF 1
r
ID
.~~~,ZOE~VO~~O
S
IONS
D
PqW-
NOTE 2
NOTES
1. REMOVE .015 +/-.002 ALL AROUND
THID EDGE (SEE VIEW A-A).
2. REWORK THIS SURFACE TO REMOVE
.015 AS SHOWN IN PLAN VIEW
m0
f=
NOTE 3
NOTE1
(.015 REF)l
SEE NOTE
--
-
-
_-L]
M
T HCCI PROJECT
SLOAN LABORATORY
RCM FAST ACTING VALVE
ALUMUM
so*1:2
1
I
HCCI-OO12 lI
1
a-t 1i OF
I|ued
rw I
-
4F
ZONIE
DESCRIMlON
INEY
PRWMM
Dd.
.144±.ool
B k Ed
R dius=.015 ITyp.1
Br
kE
.150±.001
.277t.!A
4-
00
--j
0
5.450±.ool
0p-I
0
0
i
I
--
MIT
HCCI PROJECT
SLOAN LABORATORY
ALL DIMENSIONS IN INCHES
'
MODIFICATION OF 0-RING GROOVE
IUss'T sTm" 0
s-d-e 1: 17.51
1:17.51
HCCI-009
Is-et
IR
1 OF 1
1 OF 1
05.600tO.001
03.941±0.001
Parker O-Rinq 2-044
03.739±0.001
03.545 0.000
02.000±0.001 (BORE)
T
A-A
0l
A-A
02.600 *000
00
00
0.438±0.001 (6 (@)60 degrees apart)-
0rz
4-
2.300t0.001 (T YP.)
.050±0.001
-=
.1870.00
i
IT
Wfflm
.211 00
0"m001r
t
.L36 0.±j0
M
HCCI PROJECT
COMP. RATIO SHIM
IT
SLOAN LAORTOY
sDsMENSI
I
mn
uds
8:14
... .
I
HCCI-008
11h
1 OF 1
?A.i
I~
EcU
E
WRM
F&VODa
03.941±0.001
03.739±0.0010
YP.)
YT
2.3
60 degrees apart)
00.438 (6 (@
f-
00
re
2.600. 0
nq 2-044
(Bore)
I
.0j
5.6±0.001
0.101±0.001
111
I
r
I
I
1
I
0.162±0.001
AlL Dimensions in Inches
----
I
MIT
SLOAN LABORATORY
HCCI PROJECT
THERMAL INSULATOR
Ss
immm"
1:1.651
WsI
HCCI-001 01
|uet 1 OF 1
Ia -11 OF 1
-
[w
I
00.989
DoW
oCWDIoN
v
L
Mpwmm
01.300+* 00s
00.840
01.157
A -A
Not 2
Note 1:
Tap 1/2-10 ACME
As deep as possible
to match supplied threaded rod.
0.084
NN0.050_-
0.252 TYP.
Note 1
F®
1.000
~I.
Note 2:
Groove for 022 Parker 0-ring.
4(
1.30
1.50
0.144±0.002
I
A-A
- - - -
k4 0.318±0.002
0.564±0.002
AlL Dimensions in Inches
-- 4-
0.10
PROJECT
MIT IHCCI
POPPET VALVE CASING
SLOAN LABORATORY
(
sce
SW.
1
I.
1~: 1
1:
1
1
I
..HCCI-015
I "
*
n
0
Zoif
V
APSM
OEc~nwiOats
00.281
*L
0.3134
Ac: *
ol
CD
S050
f
fD
IN
I
0.25
I
I
I
7
eD
t"
fD
ALL DIMENSIONS IN INCHES
MIT
SLOAN LABORATORY
HCCI PROJECT
POPPET VALVE LEGS
Im2
I
s--1:4.2 1
At-
-HCC
I s--t
I-017
1
OF
1
zEm Ifv
|OICWqnM
MPRGD
D.
NOTE 1
0T
NOTE 1:
WELD
I
4-
0
ALL DIMENSIONS IN INCHES
HCCI PROJECT
MTPOPPET
VALVE BASE
SLOAN LABORATORY
1U~STEE
11
Soil 1:1___1__.
scow
.
.I
-1
.
HCCI-018
.I
h
Imisi
1
OFI
orj
mo
o ii
wy
DESRTM
D#At
I
APRW
I
ITI
0
0.10 REF.
NOTE 1
4-
NOTES
1. REMOVE 0.10 INCHES FROM THIS SURFACE
(ALL AROUND)
ALL DIMENSIONS IN INCHE S
MIT
SLOAN LABORATORy
HCCI PROJECT
POPPET VALVE BASE
11
IMLDSTEEL
s- NONE I
HCI-019
I
--t
1
OF
I
oECRupNo
I w
0.23
Date
p
i
0.50
I
1.50
L
ALL DIMENSIONS IN INCHES
1.30
0.306 +-.000
4-
PARTS SUPPLIED BY
THE SLOAN LAB
M
SLOAN LABORATORY
HCCI PROJECT
ACME SHAFT
71IMILDSTEEL
s--i- 1:0.7 |
3- I1:0.7 1
I'HTCCI-016
1 OF 1
|m...t
I 5-d1OFi1
IL
I
zw~
~v
DEVISO*4
0.10 RFF
NOTE 2'
NOTES
1. REMOVE 0.10 INCHES FROM THIS SURFACE
2. REMOVE 0.10 INCHES FROM THIS SURFACE
ROE
1
ALL DIMENSIONS IN INCHES
4PARTS SUPPLIED BY
THE SLOAN LAB
MIT
SLOAN LABORATORY
.
HCCI PROJECT
ACME SHAFT
'l~~
Sci. NONE
N
II IMLSELIHCCI-020
Ish.t 1 OF 1
ZOE EVDESCMflO
1 75 or 2.00
Ma PPM
Drill and Tap
For 7/8" x 9
3.00
I
I
i
-i
~I.
41850
MIT
Drill and Tap
For 1" x 8
HCCI PROJECT
RCM STAND
SLOAN LABORATORY
AllDimensions In Inches
04" 1STIK
g~
mN"H CCI-001
=1
I~ss
:1 | ~rm]~HCCI-OO1
1."
--t 1 OF
S..1
I,
,
I
A
I MY
1
I
0
APPENDIX 3: DETAILS OF THE HU-KECK REDUCED MECHANISM
Figure A.3.1
TABLE I
CHEMICAL KINETIC MODEL
A. 13 Active Species
1. RH
2. 02
3. R
4. R02
5. ROOH
6. OOROOH
T. ORO
8. OH
9. HO2
10. HOOH
11.
13. C - C
12. RI Clo
OROOH
B. 18 Reactions ( Units: cc, mole, sec, kcal
Arrhenius parameters of equilibrium constant K
constants ki
-
A e -E/RT and rate
At e -E±IRT are for heptane oxidation at 600K < T < 1100K
AH3 00 0
Reaction
log A"
E
log A
log A-
E+
E-
Refs
[15]
0
46.4
1.5
46.0
13.5
46.0
12.0
R02
R4
-31.0
-1.4
-27.4
12.0
0.0
13.4
27.4
[15]
3
R02 ++ ROOH
7.5
0.9
8.0
11.9
19.0
11.0
11.0
[16]
4
ROOH+0 2
-31.0
-1.9
-27.4
11.5
0.0
13.4
27.4
[8]
5
02 R02 H +OROOHO
-26.6
11.3
17.0
[16]
6
RH+0H
R+H2 0
-23.5
13.3
3.0
[23]
OH+RO
43.6
15.6
43.0
[15]
11.5
6.0
12.3
0.0
[15]
51.4
17.1
46.0
[21]
8.5
14.0
15.0
[15]
-3.0
14.4
31.0
[15]
11.45
8.6
[15]
8.64
[15]
1
RH+0
2
R+02
7 OROOH
R+H02
.+
2
+
.+
02 R02 H
8
R+02 ++ H02+C-C
-13.5
9
H02+H0 2 + H00H+0 2
-38.5
10
HOOH+M
11
ORO
12
ROOH +0H+R'12O+C-C
13
R02 +R'CO
14
HO2 +R'CHO o HOOH+R'CO -0.6
11.7
15
C-C+HO2 + Epox+OH
10.95
10.0
16
H02 +RH
++
R+HOOH
8.0
0.9
8.0
11.7
16.0
10.8
8.0
(22]
17
R02 +RH
*+
R+ROOH
8.0
1.1
8.0
11.2
16.0
10.1
8.0
[15]
18
R+R
13.2
0.0
+ 2OH+M
*R'CHO+R"
+
+
0.0
-13.5
ROOH+R'CO -0.6
RH
Note: ROOH and OROOH are
inactive.
-0.23
-85.0
treated
as
identical;
97
11.5
19.5
[15]
[15]
[15]
R", R'CO and Epox are assumed
APPENDIX 4: MATLAB CODE
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
%
%
%
This code loads data for a combustion curve and plots the curve.
The code filters and differentiatiates the data twice finding the
inflection point, which is defined as time=0, and extracting all relevant
nformation (delay time, burn time, maximum pressure, etc.)
%
%
%
Written by Ferran Ayala
MIT
Sloan Automotive Laboratory
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear
load oct09O3;
run=oct09O3;
scanrate=100000;
noscans=length(run);
seconds=noscans/scanrate;
totmsec=1000*seconds;
step=(1000/scanrate);
time=O:step:totmsec-step;
Po=.101; %%% Approximate Initial Pressure
offset=sum(run(1:1000))*5/1000; %%%%%%%%Find offset voltage
sensadjust=.975; %%%%%%%%% Adjustment factor for correct sensibility (15.7)
pressure=((run*5-offset)+Po)*sensadjust; %%%%%% Subtract offset from
pressure scaled pressure trace and adjust
[i,j]=find( (pressure>.90)&(pressure<1.5)); %%%%Locate approximately where
compression starts
start=j(l)-1000; %%%%Subtract 5 milliseconds to assure obtaining beginning of
compression
tl=0:step:70; %%%%%%Create a time array for 40 milliseconds
fin2=start+7000; %%%% endpoint of time array
p1=pressure(start:fin2); %%%%% Definition of useful pressure signal (from
Discard all other points.
start to end).
%%%%%%% Filter signal original signal
[col,endpt]=size(p1);
%%%%moving average
points=10;
for x=points: (endpt-points);
sum1=0;
sum2=0;
for i=l:(points-1);
sumi=pl (x-i)+suml;
end
for i=l:(points-1);
sum2=pi (x+i) +sum2;
end
average= (suml+sum2) / (2* (points-1));
pfilt(x)=average;
end
98
[i,j]=find((pfilt>.101)&(pfilt<1.5)); %%%%find where compression starts
start=j(1); %%% define a new start point
t_originalfilt=O:step:60; %% create a new array ti
fin2=start+6000; %% define endpoint of new array
p-originalfilt=pfilt(start:fin2); %%% define new filtered and accurate
pressure signal
[col,endpt]=size(poriginalfilt);
endfilt=endpt; %%% Find number of points in filtered signal
puntos=length(p-originalfilt);
%%%%%%%%% Forward-difference derivative (error of order h2)
for i=l:puntos-2;
p-primel(i)=(-p-originalfilt(i+2)+4*poriginalfilt(i+l)3*poriginalfilt(i))/(2*step);
end
%%%%%%% Filter first derivative
[col,endpt]=size(pprime1);
%%%%moving average
points=10;
for x=points:(endpt-points);
sum1=0;
sum2=0;
for i=l:(points-1);
sum1=pprime1(x-i)+sum1;
end
for i=l:(points-1);
sum2=p-primel(x+i)+sum2;
end
average=(suml+sum2)/(2*(points-1));
pfilt(x)=average;
end
t_primel=O:step:50; %% create a new array tl
fin2=start+5000; %% define endpoint of new array
p-primelfilt=pfilt(1:5001); %%% define new filtered and accurate pressure
signal
puntos2=length(t-primel);
%%%%%%%%% Find second derivative by differentiating Forward-difference
derivative (error of order h2)
for i=l:puntos2-2;
p-prime2(i)=(-p-primelfilt(i+2)+4*pprimelfilt(i+l)3*p-primelfilt(i))/(2*step);
end
t_prime2=tprime1(1:puntos2-2);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Filter second derivative
[col,endpt]=size(pprime2);
%%%%moving average
99
points=10;
for x=points:(endpt-points);
suml=0;
sum2=0;
for i=1:(points-1);
suml=p-prime2(x-i)+suml;
end
for i=1:(points-1);
sum2=pprime2(x+i)+sum2;
end
average=(suml+sum2)/(2*(points-1));
pfilt(x)=average;
end
t-prime2filt=0:step:50; %% create a new array ti
fin2=start+5000; %% define endpoint of new array
p-prime2filt=pfilt(1:5001); %%% define new filtered and accurate pressure
signal
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Filter again
[col,endpt]=size(p-prime2filt);
%%%%moving average
points=10;
for x=points:(endpt-points);
sum1=O;
sum2=0;
for i=i:(points-1);
sumi=p-prime2filt(x-i)+sum1;
end
for i=i:(points-1);
sum2=p-prime2filt(x+i)+sum2;
end
average=(sumi+sum2)/(2*(points-1));
pfilt(x)=average;
end
t-prime2filt2=0:step:50; %% create a new array t1
fin2=start+5000; %% define endpoint of new array
p-prime2filt2=pfilt(1:5001); %%% define new filtered and accurate pressure
signal
%%%%%%%%%%%%%%%%%%%%% find inflection point
[i,j]=find(p-prime2filt2>1.5);
j(1)
newtime=t-prime2filt2(j(1):j(1)+500);
newp=p-prime2filt2(j(l):j(i)+500);
[i2,j2]=find(newp<-.1);
tcero=j2(1)
offset=j (1) +j2 (1)
tcero=t-prime2filt2(offset:5000);
%%%%%% plot original curves from inflection point on
pcero=p-prime2filt2(offset:5000);
a=length(pcero);
tnewest=(0:step:a/100-.01);
100
pnewest=poriginalfilt(offset:5000);
pcompression=p-originalfilt(offset-700:offset);
tcompression=(-7:step:0);
plot(tnewest,pnewest,tcompression,pcompression,'b');
xlabel('Time (ms)')
ylabel('Pressure (MPa)')
title('90 ON, Phi=0.4, Rc=16, To=60C, Po=latm')
hold on
pause
%%%%%% Break pressure trace into two segments
segment compression is the maximum pressure
tendl=12/step; %%%% in first
tend2=30/step; %%%% second segment includes the entire trace
pcomp=max(p-originalfilt(l:tendl)); %%%%%%%%%% Find end of compression
pressure
[i,tcompp]=find(poriginalfilt==pcomp); %%%% Find the datapoint at which
maximum compression occurs
tcomp=tcompp(1)/(1/step); %%% convert datapoint to real time (ms)
pmin=min(poriginalfilt(tcompp(l):endfilt)); %%%%%%% Find minimum postcompression pressure
[i,tmin]=find(p-originalfilt==pmin); %% Find the datapoints at which minimum
post compression pressure occur
tmin=tmin(l); %%%Use the first data point
pmax=max(poriginalfilt) ;%%%%%%%%%%%%%%%%%%%% Find maximum combustion
pressure
[i,tmax]=find(poriginalfilt==pmax); %%%locate the datapoints at which
maximum pressure occurs
tmax=tmax(l); %% Used the first data point
prange=pmax-pmin; %%% Define a range for pressure to be used later
%%%%%%%%%%%%%%%%%%%%%%%%%%% Extract Relevant Information
[i,t1]=find(p-originalfilt>(pmin+0.20*prange));
t20=(((tl(l)+tl(l)-1)/2))/(l/step); %%%%%%%% Time for 20% of fuel burned
p20=(p-originalfilt(tl(l))+poriginalfilt(tl(1)-l))/2; %%%%% Corresponding
Pressure
[i,t2]=find(p-originalfilt>(pmax-0.20*prange));
t80=((t2(1)+t2(l)-l)/2)/(l/step); %%%%%%%%%% Time for 80% of fuel burned
p80=(p-originalfilt(t2(l))+poriginalfilt(t2(l)-l))/2; %%%%% Corresponding
Pressure
delayl=(t20-tcomp); %%%%%%%%%%%%%%%%%%%%%%% Ignition Delay
delay2=(t80-t20);
%%%%%%%%%%%%%%%%%%%%%%% Burn Time
timecomp=tcompp(l)/scanrate; %%%%%%%%%%%%% Time to compress
info=[time-comp pcomp pmin pmax delayl delay2] %%%%%%%%%%%% Print Information
101
APPENDIX 5: FORTRAN CODE OF HCCI MODEL (MAIN SUBROUTINES)
DRIVER.F
program driver
c a program for driving the HCCI combustion model
c written by David Schmidt, MIT Sloan Automotive Laboratory
c 2000
c all units in meters, kilograms, kelvin, kmoles unless specified
c otherwise
c this is going to be "eine Katzenjammer" since ChemKin works in
c CGS units
implicit none
c************ run parameters *
c time at which the simulation ends and time step size
real*8 tend, deltat
c number of time steps
integer nsteps
c volume, temperature, pressure of the chamber
real*8 volume , temp, press
c initial pre-compression volume and time of compression, and compression ratio
real*8 volO,tcomp,CR
c differential change in volume [cu. meters]
real*8 dv
c************
species vectors *
c storage--intended only for use in kinetic calcultions
c numbers of moles of up to twenty "ignition" species in moles
real*8 ignit(20)
c storage--intended only for use in kinetic calcultions
c numbers of moles of up to twenty real species in moles
real*8 species(20)
c
c
c
c
species initial masses--the first twenty species
are storage for "real" species and the second twenty are for
pseudo-species from the ignition chemistry. This vector
is used ONLY for initializing the moles.
102
real*8 m-spec(40)
c initial moles of fuel--used to see how much of the fuel has
c been consumed
real*8 fuelO
c************
chemistry variables
***********
c energy of heat release[J] for this time step
real*8 enrel
c internal energy [J]
real*8 energy
c work out of the cylinder (p*dv) in [J]
real*8 work
c flags whether we are doing ignition or real chemistry
logical preign
c universal gas constant in J/kmol-K
real*8 R-gas
parameter (Rgas = 8.314E3)
c ratio of specific heats
real*8 gamma
c the octane number
real*8 OctN
c the total mass
real*8 totmass
c************
variables for ChemKin *
c lengths of integer, real, and character work arrays
integer leniwk,lenrwk,lencwk
parameter (leniwk=2000,lenrwk=2000,lencwk=2000)
c delcare integer, real, and character work arrays
integer ickwrk(leniwk)
rckwrk(lenrwk)
real*8
character* 16 cckwrk(lencwk)
c
c
c
c
logical unit numbers for input and output
linc is for the Chemkin binary file
lpre is for the preignition output
lout if for the real species output
103
integer linc,lpre,lout
parameter (linc=55,lout=66)
c numbers of elements, species, and reactions
integer mm,kk,ii
c number of coefficents in fits to thermodynamic data
integer nfit
C************
local work variables
***********
c which step number we are on
integer istep
c the current time
real*8 tim
c the state of the stiff ODE integrator
integer istate
c the pressure at the last time step
real*8 oldpress
c the volume before updating
real*8 oldvol
c MODIFIED BY FERRAN AYALA JANUARY 8,2001
c added variables for new compression
real*8 RAD
real*8 HMAX
real*8 RCMP
real*8 HMIN
real*8 DOH
real*8 Vo
real*8 DSTP
real*8
real*8
real*8
real*8
PRI
TAUD
HRATIO
COND
real*8
real*8
real*8
real*8
real*8
real*8
real*8
to
alpha
tiempo
pi
delta
Dlinear
tlinear
CCCCCCCCCCCCCCC
c************
initialization ***********
c order of initial species masses (in Kg).
104
c
octane, o2,
n2, co2,
h20,
data m-spec / 5.1914e-6, 5.063E-5, 1.664E-4, 3.615E-7, 3.615E-8,
c stoich
c
data m.spec /3.47e-4, 0.1218E-02, 4.01E-3, 1.Oe-5, 1.OOOOE-5,
c
C2H4
H02
H202
OH
c
co
& 3.615E-11 ,0.Oe-15 ,O.Oe-15, 0.Oe-9, 0.0,
H2 n-Heptane
0
AR
H
c
,0.00e-3, 0.0, 5.7682e-7,
& 0.0
, 0.0
& 25*0.0 /
c 3.46E-4 kg of n-Heptane is stoichiometric with 0.1218E-2 kg of 02
c half argon is 2.87e-3 kg
data species /20*0.0E-9/
data ignit /20*0.0E-12/
c time stepping information
tim =0.0
t_end =60.0e-3
deltat= 1.00e-5
nsteps = nint(tLend/deltat)
c set compression time and compression ratio
tcomp= 9.2e-3
CR=16.0
c CR= 15.6 for Park & Keck 1000 mbar series
c CR=14.9 for Park & Keck 500 mbar series
c added compression variables
RAD=0.0254
RCMP=CR
HMIN=0.0063875
HMAX=HMIN*RCMP
pi=3.14159
c initial conditions--note that if volume is a function of time, it is most
c accurate to pass the reaction routine the average between the volume at this time
c step and what it will be at the next time step
c volume = 4.55e-4
volO = pi*(RAD)**2*HMAX
volume = volO
temp
= 333.0
c initial condition will be the energy datum
energy = 0.0
105
c estimate the octane number from the initial concentration of n-heptane
c and iso-octane
OctN = 100.0*m-spec(1)/(mspec(1)+m-spec(15))
c avoid round-off error
if (OctN .gt. 99.999) OctN=100.0
c error trap if there is no fuel
if ((mspec(1).eq. 0.0) .and.(mspec(15).eq.0.0)) OctN=0.0
c set flag indicating ignition chemistry is active
preign = .TRUE.
c intialize state variable for stiff ODE solver
istate =
1
c open ChemKin binary data file
open(linc, file ='chem.bin',form=UNFORMATTED',status='old)
c open output file, overwriting previous contents
open(lout, file='driver.txt', status ='unknown)
c open preign output file, overwriting previous contents
open(lpre, file='pre.txt', status ='unknown')
c initializes ChemKin arrays and reads data files
call CKINIT(LENIWK, LENRWK, LENCWK, LINC, 6, ICKWRK,
&
RCKWRK, CCKWRK)
c initialize other arrays
call CKINDX(ICKWRK, RCKWRK, MM, KK, II, NFIT)
c initializes species vectors
call spec-init(cckwrk,kk,m-spec, ignit, species)
c save the initial number of moles of fuel
fuelO = species( 12)+species( 15)
c calculate initial pressure in the chamber
call intherm(temp,volume,species,kk,ickwrk,rckwrk,
&
press,gamma)
tim=0
c do initial output
calculate mass
call calcmass(CCKWRK,kk, species, totmass)
call putout(lpre,lout,tim,kk,preign, ignit, species,
& temp, press, cckwrk, totmass,volume,OctN)
write(6,*)
106
write(6,'(a,i6,a)')Calculating ',nsteps,'time steps'
write(6,*)
C************ main time stepping
do istep = 1, nsteps
loop
*************
C MODIFIED BY FERRAN AYALA AND PROFESSOR JAMES KECK JANUARY 2001
RAD=0.0254
RCMP=CR
HMIN=.0063875
HMAX=HMIN*RCMP
Vo=9.75
DSTP=.0075
DOH=DSTP/HMIN
TAUD=2*DSTP/Vo
Dlinear=HMAX-(HMIN+DSTP)
tlinear=Dlinear/Vo
tcomp=tlinear+TAUD
alpha=0.0000275
pi=3.14159
oldvol=volume
tiempo=tim-tlinear
if (tiempo.lt.0) then
HRATIO=1+DOH*(1-2*tiempo/TAUD)
COND=0
alpha=0
else
if (tiempo.lt.TAUD) then
HRATIO=1+DOH*(1-tiempo/TAUD)**2
COND=tim
else
HRATIO=1
endif
endif
delta=(alpha*tiempo)**0.5
volume=pi*(RAD+delta)**2*(HMIN*HRATIO+delta)
dv=volume-oldvol
write(6,'(3a,f8.3,a,f8.3))char(27),char(77),
& Time [ms] : ',tim*1000.0,' Temperature*: ', temp
c step reactions forward one time step.
c updates the following variables: time, preign, ignit, species,
temp, pressure, enrel, istate
c
c note: Temperature is updated by conservation of energy. Pressure is
107
c approximated with a finite difference integration
call reaction(tim,deltat,preign, ignit, species,
&
temp, press, volume,kk,ickwrk,rckwrk,
&
enrel,istate,OctN,fuelO)
c save pressure
oldpress =press
c estimate new pressure
press = oldpress * ((volume-dv)/volume)**gamma
c caclulate pressure work by the trapezoid rule--note that work is negative
c because it is work done on the control volume
work = dv * 0.5 * (press + oldpress)
c update thermodynamic state--pressure work term is added to temp
c c updates energy, more exact value for pressure
c and returns gamma
call uptherm( kk,ICKWRK, RCKWRK, work,
&
energy,enrel,species, volume, temp, press,gamma)
calculate mass
call calcmass(CCKWRK,kk, species, totmass)
c write output to two files:
c 1--pre.txt for the preignition chemistry
c 2--driver.txt for the main heat release chemistry
&
call putout(lpre,lout,tim,kk,preign, ignit, species,
temp, press,cckwrk, totmass,volume,OctN)
enddo
c************
end of main time stepping
loop *
close output file
close(lout)
write(6,*)
write(6,*)'Work Completed.'
stop
end
c end of main program
108
SPECINIT.F AND CALMASS.F
subroutine spec_init(CCKWRK,kk,mspec, ignit, species)
c written by David P. Schmidt, Sloan Automotive Lab, MIT, 2000
c this subroutine initializes species mole vectors
c
c
c
c
Parameters:
m-spec : mass of species in the combustion chamber in kg (input)
ignit : moles of ignition species
(output)
species: moles of real species
(output)
implicit none
c lengths of character work arrays
integer lencwk
parameter (lencwk=2000)
character* 16 cckwrk(lencwk)
c************
species vectors *
c numbers of moles of up to twenty "ignition" species
real*8 ignit(20)
c numbers of moles of up to twenty real species
real*8 species(20)
c species initial masses--the first twenty species
c are storage for "real" species and the second twenty are for
c pseudo-species from the ignition chemistry
real*8 m-spec(40)
c the number of species in the chemkin list
integer kk
c************
local variables
***********
c molecular weight for initializing species moles in kg/kmol
real*8 weight(40)
c names of the real species--must match the inputs to chemkin
c mech file
character* 16 name(20)
c names of the real species that chemkin knows
character* 16 ksym(20)
c status of call to subroutines
logical ierr
109
c mole fractions and total number of moles
real*8 molefrac(20),totmol
integer i,j
real*8 a,b
c molecular weight in kg/kmol
c
fuel,
o2,
n2,
co2, h20,
co
data weight / 114.0 , 32.0 , 28.0, 44.0 , 18.0, 28.0,
c
c
OH
H02
H202 C2H4
17.0, 33.0 , 34.0, 28.0,
c
H
0
AR H2 n-Heptane
&
1.0, 16.0, 39.948, 2.0, 100.0,
& 25*1.0/
&
data name /"C8H18", "02", "N2", "C02", "H20", "CO",
&
"OH", "HO2", "H2O2", "C2H4",
&
"H", "0", "AR", "H2", "C7H16",
&
5*""/
c list of real species
cl Fuel
c2 02
c3 N2
c4 C02
c5 H20
c6 CO
c7 OH
c8 H02
c9 H202
cdO C2H2
c1 -c20 unused species storage
c list of ignition species
c21 RH (fuel)
c22 02
c23 Rdot
c24 R02
c25 ROOH
c26 OOROOH
c27 ORO
c28 OH
c29 H02
c30 H202
c31 OROOH
c32 RCHO
c33 RCC
c34 H20
c for consistency, we much make sure that the number of moles of
c certain real and ignition species are equal.
c #1=#21
110
c #2=#22
c #7=#28
c #8=#29
c #9=#30
c #5=#34
C***************
begin **************
c enforce consistency between real and pseudo-chemistry
m_spec(21)= m-spec(1)
m_spec(22) = mspec(2)
m_spec(28) = m-spec(7)
m_spec(29) = m-spec(8)
m_spec(30) = mspec(9)
m_spec(34) = mspec(5)
!n-heptane
m-spec(35) = mspec(15)
c make the weight consistent for the real species in the pseudo-species data
weight(21)
weight(22)
weight(28)
weight(29)
weight(30)
weight(34)
weight(35)
=
=
=
=
=
=
=
weight(1)
weight(2)
weight(7)
weight(8)
weight(9)
weight(5)
weight(15)
!n-heptane
c initialize ignition species (moles)
do i= 21,40
ignit(i-20) = 1000.0 * mspec(i)/weight(i)
enddo
c for the ignition model, all fuel species are represented as
c a single species. Move N-heptane moles into the fuel
c storage, adding to the octane moles
ignit(1)=ignit(1)+ignit(15)
ignit(15)=O.O
c initialize real species (moles)
c the tricky part is that we have to store them in the order that
c chemkin expects them
ierr=.FALSE.
c store the names of the species in ksym
call cksyms(cckwrk,6,ksym,ierr)
if (ierr) then
write(6,*)'Failure in CKSYMS--stopping in SPECINIT'
stop
endif
111
c--debugging info:
write(6,*)
write(6,'(a)')Species known to the code:'
do i=1,kk
write(6,'(a,i3,2a)')Name #',i,'is ',name(i)
enddo
write(6,*)
write(6,'(a)')'Species known to ChemKin:'
do i=1,kk
write(6,'(a,i3,2a)')Symbol #',i,'is ',ksym(i)
enddo
write(6,*)
write(6,*)
totmol =0.0
do i = 1,kk
c find which species in the ChemKin list corresponds to our species i
c search for name, expect zero numbers and send error messages to LU#6
call CKSNUM(name(i),0,6,ksym,kkj,a,b,ierr)
c returns j--the index in the chemkin list
if (ierr) then
write(6,*)'Failure in CKSNUM--stopping in SPECINIT'
write(6,*)'Check species names.'
stop
endif
c initialize real species (moles)
species(j)= 1000.0 * m-spec(i)/weight(i)
c add up moles
totmol = totmol +species(j)
enddo
check ksym and gas composition with output
write(6,*)'----- Mole Fractions of the Mixture ----- '
do i = 1,kk
molefrac(i) = species(i)/totmol
write(6,'(a,i3,a,a1O,a,f6.2,a))
& 'Species #',i,': ',ksym(i),'is ',molefrac(i)*100.0,'%'
enddo
return
end
c end of spec-init
112
subroutine calcmass(CCKWRK,kk, species, totmass)
c written by David P. Schmidt, Sloan Automotive Lab, MIT, 2000
c this subroutine calculates total mass
implicit none
c lengths of character work arrays
integer lencwk
parameter (lencwk=2000)
character* 16 cckwrk(lencwk)
c************
species vectors *
c numbers of moles of up to twenty real species
real*8 species(20)
c species initial masses--the first twenty species
c are storage for "real" species and the second twenty are for
c pseudo-species from the ignition chemistry
real*8 m-spec(40)
c the number of species in the chemkin list
integer kk
c************
local variables
***********
c molecular weight for initializing species moles in kg/kmol
real*8 weight(40)
c names of the real species--must match the inputs to chemkin
c mech file
character* 16 name(20)
c names of the real species that chemkin knows
character* 16 ksym(20)
c status of call to subroutines
logical ierr
c mass of each species and total mass [kg]
real*8 mass(20), totmass
integer i,j
real*8 a,b
c molecular weight in kg/kmol
113
fuel,
c
o2,
data weight / 114.0,
n2,
co2, h20,
co
, 28.0, 44.0 , 18.0, 28.0,
32.0
C
c
OH
&
c
17.0,
H
&
1.0,
& 25*1.0/
H02
33.0
H202
,
C2H4
34.0, 28.0,
0
AR H2 n-Heptane
16.0, 39.948, 2.0, 100.0,
data name /"C8H18", "02", "N2", "CO2", "H20", "CO',
&
"OH", "H02", "H202", "C2H4",
&
"H", "0", "AR", "H2", "C7H16",
&
5*""/
c list of real species
cl
c2
c3
c4
c5
c6
c7
c8
c9
cdO
Fuel
02
N2
C02
H20
CO
OH
H02
H202
C2H2
c 11 -c20 unused species storage
c list of ignition species
c21 RH (fuel)
c22
c23
c24
c25
c26
02
Rdot
R02
ROOH
OOROOH
c27 ORO
c28
c29
c30
c31
c32
c33
c34
OH
H02
H202
OROOH
RCHO
RCC
H20
c for consistency, we much make sure that the number of moles of
c certain real and ignition species are equal.
c #1=#21
c #2=#22
c #7=#28
c #8=#29
c #9=#30
c #5=#34
C***************
begin **************
114
c initialize real species (moles)
c the tricky part is that we have to store them in the order that
c chemkin expects them
ierr=.FALSE.
c store the names of the species in ksym
call cksyms(cckwrk,6,ksym,ierr)
if (ierr) then
write(6,*)Failure in CKSYMS--stopping in SPECINIT'
stop
endif
totmass =0.0
do i = 1,kk
c find which species in the ChemKin list corresponds to our species i
c search for name, expect zero numbers and send error messages to LU#6
call CKSNUM(name(i),0,6,ksym,kk,j,a,b,ierr)
c returns j--the index in the chemkin list
if (ierr) then
write(6,*)Failure in CKSNUM--stopping in SPECINIT'
write(6,*)ICheck species names.'
stop
endif
mass(i) = weight(i) * species(j)
totmass = totmass + mass(i)
enddo
return
end
c end of spec-init
115
INTHERM.F
c this subroutine calculates the initial density,
c pressure and total internal energy in the cylinder
Subroutine intherm(temp,volume,species,kk,ickwrk,rckwrk,
&
press,gamma)
implicit none
c volume, temperature, pressure of the chamber
real*8 volume , temp, press
c ratio of specific heats
real*8 gamma
c the number of species
integer kk
c************ species vectors *
c number of moles of real species
real*8 species(20)
c************
variables for ChemKin *
c lengths of integer, real, and character work arrays
integer lenick,lenrck,lencck
parameter (lenick=2000,lenrck=2000,lencck=2000)
c delcare integer, real, and character work arrays
integer ickwrk(lenick)
real*8
rckwrk(lenrck)
c************
local work variables
***********
c average density
real*8 rho
c mole fraction of each real species
real*8 molefrac(20)
c the average molecular weight
real*8 amw
c a loop counter
integer i
c total mole
116
real*8 totmole
c energy, pressure, volume and density in CGS units
real*8 cgsen,cgspress,cgsvol,cgsrho
c specific heats
real*8 cgscp, cgscv
cgsvol = volume * 100**3
calculate total moles of all of the species (pseudo-species don't count)
totmole = 0.0
do i=1,kk
totmole = totmole + species(i)
enddo
c mole fractions
do i=1,kk
molefrac(i)= species(i)/(totmole)
enddo
c get average molecular weight
call ckmmwx(molefrac,ickwrk,rckwrk,amw)
c get average density
cgsrho = totmole*amw/cgsvol
rho = cgsrho*1000.0
calculate pressure
call ckpx(cgsrho,temp,molefrac,ickwrk,rckwrk,cgspress)
press = cgspress * .10
c get specific heat in molar units
call CKCVBL(temp,molefrac,ickwrk,rckwrk,cgscv)
c get specific heat in molar units
call CKCPBL(temp,molefrac,ickwrk,rckwrk,cgscp)
c calculate the ratio of specific heats
gamma = cgscp/cgscv
return
end
c end of subroutine intherm
117
PUTOUT.F
subroutine putout(lpre,lout,tim,kk,preign, ignit, species,
& temp, press, cckwrk, mass, volume,OctN)
c written by David Schmidt, MIT Sloan Automotive Laboratory
c 2000
c this subroutine sends output to the logical unit lout.
implicit none
c******** parameters
************
c logical unit numbers for preigition and real chemistry output
integer lpre,lout
c time
real*8 tim
c indicates whether pre-ignition chemistry is on
logical preign
c numbers of moles of up to twenty "ignition" species
real*8 ignit(20)
c numbers of moles of up to twenty real species
real*8 species(20)
c temperature and pressure
real*8 temp,press
c the number of real species
integer kk
c the system mass [kg]
real*8 mass
c the volume [mA3]
real*8 volume
c the octane number
real*8 OctN
c lengths of character work arrays
integer lencwk
parameter (lencwk=2000)
character* 16 cckwrk(lencwk)
c********* local
integer i
**************
118
c cgs volume and cgs concentrations of ignition species
real*8 cgsvol, conc(14)
c an array of species names
character* 16 ignname(l14),ksym(20)
c flag for errors
logical ierr
c flag for first call
integer ifirst
save ifirst
cDPS -- debugging variables
real*8 totmole, cv
c the yvector and its derivative
real*8 yvec(22),ydot(22)
c real and integer work space
real*8 rpar(2002)
integer ipar(2001)
c "OROOH" is not included, because it is assumed to be the same
c as ROOH
data ignname/"RH","02","Rdot","RO2","ROOH","OOROOH","ORO"," OH",
&
"H02","HOOH","OROOH","RCHO","CC","H20"/
c at first call output headers
if (ifirst.eq.0) then
c do preignition output file
write(lpre,*)
write(lpre,*)
write(lpre,'(a,21a1 1)),'# T[ms] Tmp[K] Pres[MPa]',
(ignname(i),i= 1, 14), Mass [kg]'
&
c acquire names of species from the Chemkin arrays
ierr=.FALSE.
c store the names of the species in ksym
call cksyms(cckwrk,6,ksym,ierr)
if (ierr) then
write(6,*) Failure in CKSYMS--stopping in PUTOUT'
stop
endif
119
c do output file for real speices
write(lout,*)
write(lout,*)
write(lout,'(a,21al 1)),# T[ms] Tmp[K] Pres[MPa]',
(ksym(i),i=1,kk), Mass [kg]'
&
cDPS--debugging
open(unit=77,file='reactions.dat',status='unknown')
cDPS--end
endif
c end of output headers section
c write data to files
if (preign) then
cgsvol = volume * 100**3
c convert moles of ignition species to concentrations in mol/cmA3
do i=1,14
conc(i)=ignit(i)/cgsvol
conc(i)=max(conc(i), 1.01D-30)
conc(i)=log10(conc(i))
enddo
&
&
write(lpre,'(f6.2, x,f5.0, 1x,f6.3,22(x,e1O.4)))
tim*1000.0,temp,press/1.0E6,(conc(i),i=1,14),
mass
cDPS--debugging
totmole=0.0
do i=1,kk
totmole=totmole+species(i)
enddo
c initialize parameter storage from variables
yvec(1) = temp
yvec(2) = press
do i=1,20
yvec(i+2)=ignit(i)
enddo
cv doesn't matter here
cv=22.0
rpar(1)
rpar(2)
rpar(3)
rpar(4)
=
=
=
=
volume
cv
totmole
OctN
120
call ignitkin(15,tim,yvec,ydot,rpar,ipar)
write(77,'( 11 (1 x,e12.4))')tim,(rpar(i),i=5,14)
cDPS--end
endif
write(lout,'(f6.2, Ix,f5.0, 1x,f6.3,22(x,e10.4))')
& tim*1000.0,temp,press/1.0E6,(species(i),i=1,kk),
& mass
c note that this has been called-update ifirst
ifirst = 1
return
end
c end of subroutine putout
121
REACTION.F
c step reactions forward one time step
subroutine reaction(tim,deltat,preign, ignit, species,
& temp, press, volume,kk,ickwrk,rckwrk,
& enrel,istate,OctN, fuelO)
c this subroutine calculates the change in species concentrations and
c heat release for one time step. It can do either ignition chemistry
c or heat release chemistry
c David Schmidt, Sloan Automotive Lab, MIT
implicit none
c************subroutine parameters *
c time [s]
real*8 tim
c time interval
real*8 deltat
c flags whether we are doing ignition or real chemistry
logical preign
c storage--intended only for use in kinetic calcultions
c numbers of moles of up to twenty "ignition" species in moles
real*8 ignit(20)
c storage--intended only for use in kinetic calcultions
c numbers of moles of up to twenty real species in moles
real*8 species(20)
c volume, temperature, pressure of the chamber
real*8 volume , temp, press
c number of species
integer kk
c energy released by combustion [J]
real*8 enrel
c the octane number
real*8 OctN
c the initial moles of fuel
real*8 fuelO
122
c************variables for ChemKin *
c lengths of integer, real, and character work arrays
integer lenick,lenrck,lencck
parameter (lenick=2000,lenrck=2000,lencck=2000)
c delcare integer, real, and character work arrays
integer ickwrk(lenick)
real*8
rckwrk(lenrck)
c***** *****External functions for Stiff
ODE's
external realkin, ignitkinjac
c************local variables
***********
integer i
c tells the state of the stiff ODE solver
integer istate
c mole fraction of each real species
real*8 molefrac(20)
c cv (converted from CGS to MKS units)
real*8 cv
c total moles
real*8 totmole
c end time of integration
real*8 tout
c new and old sensible enthalpy [J]
real*8 newenth, oldenth
c*******Local Variables--work and parameter arrays
real*8 fuelburn
c the amount of fuel burned during this time step
c real and integer work space
real*8 rpar(lenrck+2)
integer ipar(lenick+1)
real*8 yvec(22),ydot(22)
c work arrays for the stiff ODE solver
real*8 RWORK(lenrck)
integer IWORK(lenick)
c these variables should be saved between calls to VODE
123
save RWORK,IWORK
data rwork/lenrck*0.0/
data iwork/lenick*0.0/
c the amount of fuel left (moles)
real*8 fuelnow
C************begin **********
c the stiff solver will need to re-initialize every time step
c because other routines may have changed temp & press
istate= 1
c this is ad-hoc--turn off ignition chemistry when a certain
c fraction of fuel has been consumed
fuelnow = species(12)+species(15)
if ((fuelnow/fue0).le. 0.80) then
preign=.FALSE.
endif
tout = tim + deltat
c calculate total moles of all of the species (pseudo-species don't count)
totmole = 0.0
do i=1,kk
totmole = totmole + species(i)
enddo
c mole fractions
do i=1,kk
molefrac(i)= species(i)/(totmole)
enddo
c calculate Cv--[ergs/mol]
call ckcvbl(temp,molefrac,ickwrk,rckwrk,cv)
c convert cv to J/mol-K units
cv = cv * 1.OD-7
c store sensible enthalpy
oldenth = cv*temp*totmole
c check to see if we should use ignition chemistry or real chemistry
if (preign) then
124
c------------ ignition chemistry
c initialize parameter storage from variables
yvec(1) = temp
yvec(2) = press
do i=1,20
yvec(i+2)=ignit(i)
enddo
rpar(1)
rpar(2)
rpar(3)
rpar(4)
=
=
=
=
volume
cv
totmole
OctN
c call the stiff ODE integrator
iwork(6)=100000
call dvode(ignitkin,16,yvec,tim,tout,1,1.0d-7 ,1.Od-18,
1,istate, 1, RWORK,lenrck,IWORK,lenick,jac,
&
&
22,rpar,ipar)
c check for successful completion
if (istate.lt.0) then
write(6,*)'Failure in Stiff ODE solver.'
write(6,*)'Stopping.'
stop
endif
c copy variables from parameter storage
temp = yvec(1)
press = yvec(2)
do i=1,20
ignit(i)=yvec(i+2)
enddo
c zero negative preigintion species--a good idea?
do i=1,13
c
ignit(i)=max(ignit(i),0.0)
c
enddo
c
else
c------------- real chemistry
c initialize parameter storage from variables
yvec(1) = temp
yvec(2) = press
do i=1,20
yvec(i+2)=species(i)
125
enddo
rpar(1) = volume
rpar(2) = cv
do i=1,lenrck
rpar(i+2)=rckwrk(i)
enddo
ipar(1) = kk
do i= 1,lenick
ipar(i+ 1)=ickwrk(i)
enddo
c call the stiff ODE integrator
iwork(6)=100000
call dvode(realkin,kk+2,yvec,tim,tout, 1,1 .Od-6 ,1.0d- 12,
&
1,istate, 1, RWORK,lenrck,IWORK,lenick,jac,
&
22,rpar,ipar)
c check for successful completion
if (istate.lt.0) then
write(6,*) Failure in Stiff ODE solver.'
write(6,*)'Stopping.'
stop
endif
c copy variables from parameter storage
temp =yvec(1)
press = yvec(2)
do i=1,20
species(i)=yvec(i+2)
enddo
cv
= rpar(2)
endif
c end of if test for what type of chemistry
c calc new sensible enthalpy--note that the number of moles may have changed
totmole = 0.0
do i=1,kk
totmole = totmole + species(i)
enddo
newenth = cv*temp*totmole
c energy release is the change in sensible enthalpy
enrel = newenth - oldenth
c if we are releasing heat during pre-ignition, then we must
c account for this by consuming C8H18.
if ((preign).and.(enrel.gt.0.0)) then
c calculate moles of fuel burned using enthalpy of reaction of
126
c octane going to CO and H20
c split up the amount of heptane and octane that burn according
c to the octane number
fuelburn=(OctN/100.0)*enrel/2.9E6
species(12)=species(12)-1.0*fuelburn
species(8) =species(8) -8.5*fuelburn
species(6) =species(6) +8.0*fuelburn
species(1) =species(1) +9.0*fuelburn
c must calculate the energy release of this reaction and put it
c in the denominator
fuelburn=(1.O-(OctN/100.0))*enrel/2.52OE6
species( 15)=species( 15)- 1.0*fuelburn
species(8) =species(8) -7.5*fuelburn
species(6) =species(6) +7.0*fuelburn
species(1) =species(1) +8.0*fuelburn
endif
do i=1,20
c check for negative moles
if (species(i).lt.0.0) then
write(6,*)
write(6,*)"Warning:
",
"negative species concentration for species ",i
write(6,*)"Mass is not conserved. Reduce timestep.
"
&
&
c zero out species
species(i)=O.O
endif
enddo
return
end
127
IGNITKIN.F
subroutine ignitkin(neq,tim,yvec,ydot,rpar,ipar)
c Ignition Kinetics:
c
c
c
c
This subroutine is called by the stiff equation solver. It takes
data stored in Rpar and Ipar and uses it to operate on a vector, yvec.
Yvec contains all the highly transient variables. The subroutine
returns their time derivatives in ydot.
implicit none
c**************************************** Parameters
c the universal gas constant in kcal/mol-K
real*8 rgas
parameter(rgas= 1.987D-3)
c Number of reactions and ignition species
integer Nrxn, Nspec
parameter (Nrxn=10,Nspec=14)
c the number of equations
integer neq
c the time
real*8 tim
c the yvector and its derivative
real*8 yvec(22),ydot(22)
c lengths of integer, real, and character work arrays
integer lenick,lenrck,lencck
parameter (lenick=2000,lenrck=2000,lencck=2000)
c real and integer work space
real*8 rpar(lenrck+2)
integer ipar(lenick+ 1)
c**************************************** Local Variables
c stoichiemetric coefficients indexed by species, reaction
c negative coefficients are on the left side of the eqn and
c postive are on the right
integer stoico(20,20)
data stoico/400*0/
c indicies for each species
integer RH,02,Rdot,R02,ROOH,OOROOH,ORO,OH,H02,HOOH,
&
OROOH,RCHO,CC,H20,M
128
c enthalpy of reaction
real*8 dH300(Nrxn)
c pre-exponential constants in the positive and negative direction
real*8 aplus(Nrxn),aminus(Nrxn)
c temporary storage of the log of aplus and aminus
real*8 apl(Nrxn),anl(Nrxn)
c Activation energy in the positive and negative direction
real*8 eplus(Nrxn),eminus(Nrxn)
c rate constants in the plus and minus directions
real*8 kplus(Nrxn),kminus(Nrxn)
c rates in the plus and minus directions
real*8 rplus(Nrxn),rminus(Nrxn)
c stoiciometic coefficients
integer coeff
c ignition species in moles
real*8 ignit(20)
c concentrations -- in g/cm3
real*8 conc(20)
c derivatives of the moles (mole/sec)
real*8 dSdt(20)
c derivatives of temperature and pressure
real*8 dTdt,dPdt
c thermodynamic variables
real*8 temp,press,volume
c Spec. Heat at const volume
real*8 cv
c Octane Number of the fuel, passed as rpar(4)
real*8 OctN
c the total number of moles
real*8 totmole
c volume in cgs units
real*8 cgsvol
c indicies
integer i,j
c a fraction related to Octane number
real*8 frac
129
Data initializations
data RH,02,Rdot,R02,ROOH,OOROOH,ORO,OH,H02,HOOH,
&
OROOH,RCHO,CC,H20,M
& /1,2,3,4,5,6,7,8,9,10,11,12,13,14,15/
c the heat of reaction as listed in Hu & Keck (but in J)
c original data
data dH300 / 1.94D5,-1.30D5, 3.14D4, -1.30D5, -1.11D5,
&
-9.83D4, 1.82D5,-5.65D4, -1.61D5, 2.15D5/
c the log of Aplus
c original data with #3 set for iso-octane
c
data apl/13.5, 12.0, 11.0, 11.5, 11.3, 13.3, 15.6, 11.5,
c &
12.3, 17.1/
data apl /12.0, 12.0, 11.0, 11.5, 11.3, 9.55, 15.6, 8.0,
&
12.3, 17.0/
c the log of Aminus
c original data
c
data anl/12.0, 13.4, 11.0, 13.4, 3*0.0,11.5,2*0.0/
data anl /12.0, 13.4, 11.0, 13.4, 3*0.0,11.5,2*0.0/
c Eplus data
c original data with #3 set for iso-octane
c
data eplus/46.0, 0.0, 22.4 ,0.0,17.0,3.0,43.0,6.0,0.0,46.0/
data eplus /46.0, 0.0, 22.4 ,0.0,17.0,3.0,43.0,17.0,0.0,46.0/
c Eminus data
c original data
c
data eminus/0.0, 27.4, 11.0 ,27.4, 3*0.0, 19.5, 2*0.0/
data eminus /0.0, 27.4, 11.0 ,27.4, 3*0.0, 19.5, 2*0.0/
cNOTE THAT ALL DATA FOR REACTION #3 ARE OVERRIDDEN BELOW
c
c
c
c
initialize stoichiometric data
the matrix is referrenced by the species #, the reaction #
a negative number means that the species is on the left side
of the reaction
stoico(RH, 1)=- 1
stoico(RH,6)=- 1
stoico(02, 1)=- 1
stoico(02,2)=- 1
stoico(02,4)=- 1
stoico(02,8)=- 1
stoico(02,9)= 1
130
stoico(Rdot,1)= 1
stoico(Rdot,2)=- 1
stoico(Rdot,6)= 1
stoico(Rdot,8)=-1
stoico(R02,2)= 1
stoico(R02,3)=- 1
stoico(ROOH,3)= 1
stoico(ROOH,4)=-1
stoico(OOROOH,4)= 1
stoico(OOROOH,5)=-1
stoico(ORO,7)= 1
stoico(OH,5)= 1
stoico(OH,6)=- 1
stoico(OH,7)= 1
stoico(OH,10)=2
stoico(H02, 1)= 1
stoico(H02,8)= 1
stoico(H02,9)=-2
stoico(HOOH,9)= 1
stoico(HOOH,10)=-1
stoico(OROOH,5)=1
stoico(OROOH,7)=- 1
stoico(CC,8) = 1
stoico(H20,6) = 1
stoico(M,10) = -1
c M does not need to also appear on the right hand side, since 10
c a one-way reaction
c fill in aplus and aminus arrays
do i=1,Nrxn
if (apl(i) .eq. 0.0) then
aplus(i)=0.0
else
aplus(i)=10.0**(apl(i))
endif
if (anl(i) .eq. 0.0) then
aminus(i)=0.0
else
aminus(i)=10.0**(anl(i))
endif
enddo
131
extract moles of ignition species
c initialize variables from parameter storage
temp =yvec(1)
press = yvec(2)
do i=1,20
ignit(i)=yvec(i+2)
enddo
volume = rpar(1)
cv =rpar(2)
totmole= rpar(3)
OctN = rpar(4)
c OVERRIDE REACTION#3 variables using Octane # to interpolate
c between reaction 3 data for N-Heptane and Iso-octane
frac=OctN/100.0
aplus(3)=frac*(10.0**12.0)+ (1.0-frac)*(10.0**12.2)
eplus(3)=frac*(22.9)
+ (1.0-frac)*(22.7)
convert to concentrations in mol/cm3
cgsvol = volume * 100**3
do i=1,Nspec
conc(i)=ignit(i)/cgsvol
enddo
c concentration Nspec+1 is "M"
conc(Nspec+ 1)=totmole/cgsvol
c****************************************Calculate Rate Coeffs
c loop over reactions and calculate the Arrhenius rates
do i= 1,Nrxn
kplus(i) = aplus(i) *exp(-eplus(i) /(Rgas*temp))
kminus(i)= aminus(i)*exp(-eminus(i)/(Rgas*temp))
enddo
c loop over reactions and calculate the forward and backwards rates
do i = 1,Nrxn
rplus(i)=kplus(i)
do j=1,Nspec+1
c loop over species and calculate the concentrations raised to the
c coefficient power. Throw away positive coefficients--those are
c for the other direction
coeff = abs(min(O,stoico(j,i)))
rplus(i)=rplus(i)*conc(j)**coeff
enddo
rminus(i)=kminus(i)
132
do j= 1,Nspec+ 1
c loop over species and calculate the concentrations raised to the
c coefficient power. Throw away negative coefficients--those are
c for the other direction.
coeff = max(0,stoico(j,i))
rminus(i)=rminus(i)*conc(j)**coeff
enddo
enddo
calculate change in the number of moles for all species in all rxn's
do j=1,Nspec
dSdt(j)=O.O
do i=1,Nrxn
dSdt(j)=dSdt(j)+cgsvol*stoico(j,i)*(rplus(i)-rminus(i))
enddo
enddo
cDPS -- Keck neglected change in fuel and 02 concentration
dSdt(1)=0.0
dSdt(2)=0.0
calculate heat release
dTdt= 0.0
do i=1,Nrxn
dTdt = dTdt - cgsvol*dH300(i)*(rplus(i)-rminus(i))
/(cv*totmole)
&
enddo
c use the ideal gas law to calculate the increase in pressure
c hard-code in Rgas in MKS units [J/mol-K]
dPdt =( totmole *8.314/ volume)*dTdt
c store the derivatives of y in ydot
ydot(1) = dTdt
ydot(2) = dPdt
do i=1,Nspec
ydot(i+2)=dSdt(i)
enddo
cDPS-- for debugging, store the net reaction rates in rpar(5)-rpar(14)
do i=1,10
rpar(i+4)=rplus(i)-rminus(i)
enddo
return
end
ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
133
REALKIN.F
subroutine realkin(neq,tim,yvec,ydot,rpar,ipar)
c Elementary Kinetics:
c This subroutine is called by the stiff equation solver. It takes
c data stored in Rpar and Ipar and uses it to operate on a vector, yvec.
c Yvec contains all the highly transient variables. The subroutine
c returns their time derivatives in ydot.
implicit none
c**************************************** Parameters
c the number of equations
integer neq
c the time
real*8 tim
c the yvector and its derivative
real*8 yvec(22),ydot(22)
c lengths of integer, real, and character work arrays
integer lenick,lenrck,lencck
parameter (lenick=2000,lenrck=2000,lencck=2000)
c real and integer work space
real*8 rpar(lenrck+2)
integer ipar(lenick+ 1)
c the Universal Gas Constant in J/mol-K
real*8 Ru
parameter (Ru=8.314)
c**************************************** Local Variables--from Parameter storage
c the temperature is the first entry in yvec
real*8 temp
c the pressure is the second entry in yvec
real*8 press
c the species vector is stored in the yvec
real*8 species(20)
c the volume is the first entry in rpar
real*8 volume
134
c cv [J/kg-K] is the second entry in rpar
real*8 cv
c the array rckwrk(lenrck) starts with the third entry in rpar
c don't need to declare, since we are just passing this
c the number of species, kk, is stored as the first entry in ipar
integer kk
c the array ickwrk(lenick) starts with the second entry in ipar
c don't need to declare this, since we are just passing it
c**************************************** Local Variables
c molar enthalpies in CGS units
real*8 uml(30)
c molar species production rates
real*8 wdot(30)
c energy released [J]
real*8 enrel
c mole fraction of each real species
real*8 molefrac(20)
c total mass
real*8 totmole
c pressure and volume in cgs units
real*8 cgspress,cgsvol
c dTdt is the time derivative of temperature [K/s]
real*8 dTdt
c dPdt is the time derivative of pressure [Pa/s]
real*8 dPdt
c dndt is the time derivative of the total number of moles [mol/s]
real*8 dndt
c loop index
integer i
c**************************************** Executable Statments
cinitialize energy release
enrel= 0.0
135
c initialize variables from parameter storage
temp = yvec(1)
press = yvec(2)
do i=1,20
species(i)=yvec(i+2)
enddo
volume = rpar(1)
cv
kk
=rpar(2)
= ipar(1)
convert pressure and volume to cgs units
cgspress = press * 10.0
cgsvol = volume * 100**3
calculate total moles of all of the species (pseudo-species don't count)
totmole = 0.0
do i=1,kk
totmole = totmole + species(i)
enddo
c mole fractions
do i=1,kk
molefrac(i)= species(i)/(totmole)
enddo
c get species enthalpies
call ckuml(temp,ipar(2),rpar(3),uml)
c get production rates ( wdot is in mol/cc/sec)
call ckwxp(cgspress,temp,molefrac,ipar(2),rpar(3),wdot)
dndt = 0
convert wdot to mol/s
do i=1,kk
wdot(i)=wdot(i)*cgsvol
dndt=dndt + wdot(i)
enddo
calculate energy release in ergs/sec:
c use the energy of the species * their change over the time sub-step
do i=1,kk
enrel=enrel-uml(i)*wdot(i)
enddo
convert energy release from ergs/s to J/s units
enrel = enrel * 1.OE-7
c dT/dt = (dU/dt) /( Cv * mol)
dTdt = enreL/( cv * totmole)
c use the ideal gas law and the product rule
c dP/dt = n*R/vol * (dT/dt)
+ R*T/vol * (dn/dt)
dPdt = (totmole * Ru/volume) * dTdt + (Ru * temp/volume)*dndt
136
c store the derivatives of y in ydot
ydot(1) = dTdt
ydot(2) = dPdt
do i=1,20
ydot(i+2)=wdot(i)
enddo
return
end
cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc
c dummy jacobian routine
subroutine jac
end
137
UPTHERM.F
subroutine uptherm( kk, ICKWRK, RCKWRK, work,
& energy,enrel,species, volume,temp, press, gamma)
c this subroutine updates the thermodynamic state
c given species (in mass), volume, and enthalpy
c The outputs are temperature, pressure, and energy
c David Schmidt, Sloan Automotive Lab, MIT
implicit none
c volume, temperature, pressure of the chamber
real*8 volume , temp, press
c work [J] and work [ergs]
real*8 work, cgswork
c average molecular weight and density
real*8 amw,rho
c total energy of the gas [J]
real*8 energy
c the energy released by chemical reactions [J]
real*8 enrel
c the number of species
integer kk
c ratio of specific heats
real*8 gamma
c************
species vectors *
c species moles
real*8 species(20)
c************
variables for ChemKin *
c lengths of integer, real, and character work arrays
integer lenick,lenrck,lencck
parameter (lenick=2000,lenrck=2000,lencck=2000)
c delcare integer, real, and character work arrays
integer ickwrk(lenick)
real*8
rckwrk(lenrck)
138
C************
local work variables
***********
c mole fraction of each real species
real*8 molefrac(20)
c specific heat at constant volume and pressure in cgs molar units
real*8 cgscv, cgscp
c energy, pressure, volume and density in cgs units
real*8 cgspress, cgsvol, cgsrho
c a loop counter
integer i
c total mass
real*8 totmole
cgsvol = volume * 100**3
cgswork = work * 1.0E7
calculate total moles of all of the species (pseudo-species don't count)
totmole = 0.0
do i=1,kk
totmole = totmole + species(i)
enddo
c mole fractions
do i=1,kk
molefrac(i)= species(i)/(totmole)
enddo
c get average molecular weight
call ckmmwx(molefrac,ickwrk,rckwrk,amw)
c get specific heat in molar units
call CKCVBL(temp,molefrac,ickwrk,rckwrk,cgscv)
c get specific heat in molar units
call CKCPBL(temp,molefrac,ickwrk,rckwrk,cgscp)
c calculate the ratio of specific heats
gamma = cgscp/cgscv
c get average density
cgsrho = totmole*amw/cgsvol
rho = cgsrho*1000.0
c update internal energy [J] excluding pressure work
energy = energy + enrel
c update temperature for work
temp = temp - cgswork/(cgscv*totmole)
139
calculate pressure
call ckpx(cgsrho,temp,molefrac,ickwrk,rckwrk,cgspress)
press = cgspress * .10
return
end
c end of subroutine intherm
140
CHEM.INP
ELEMENTS H 0 C N AR END
SPECIES H20 H OH H202 0 CO C02 02 N2 AR H02 C8H18 H2 C2H4 C7H16 END
THERMO
! Properties from the French iso-octane mech file
C8H18
C 8H 180 0 G 0300.00 5000.00 1000.00
1
2
1.37096E+01 5.48588E-02 -1.93491E-05 3.15361E-09 -1.96460E-13
3
-3.26026E+04 -4.01191E+01 8.28323E-01 8.04668E-02 -1.76104E-05
4
-2.56094E-08 1.40712E-11 -2.87677E+04 2.84049E+01
C 7H 160 0 G 300.000 5000.000 1391.000 1
C7H16
2.22148969e+01 3.47675750e-02-1.18407129e-05 1.83298478e-09-1.06130266e-13 2
-3.42760081e+04-9.23040196e+01-1.26836187e+00 8.54355820e-02-5.25346786e-05 3
4
1.62945721e-08-2.02394925e-12-2.56586565e+04 3.53732912e+01
END
! Units are cm3, mole, cal; k = A T**n exp(-E/RT)
REACTIONS
!---------------Global CO Formation------------0.00 900.0 ! Guess
9.5E+07
C8H18 + 02 <=>3C2H4+6H+2CO
0.00 900.0 ! Guess
C7H16 + 02 <=>3C2H4+4H+ C02
9.5E+07
02 + C2H4 <=>4H+2CO
4.OE+08
0.00 1000.0 ! Guess
! -------------- Water Chemistry---------------- All these from GRI Mech3
.00
1.200E+17 -1.000
20+M<=>02+M
H2/ 2.40/ H20/15.40/ CO 1.75/ C02/ 3.60/ AR/ .83/
.00
5.OOOE+17 -1.000
O+H+M<=>OH+M
H2/2.00/ H20/6.00/ CO/1.50/ CO2/2.00/ AR/ .70/
3.870E+04 2.700 6260.00
O+H2<=>H+OH
.00
2.OOOE+13 .000
O+HO2<=>OH+02
9.630E+06 2.000 4000.00
O+H202<=>OH+HO2
.00
2.800E+18 -.860
H+02+M<=>HO2+M
02/ .00/ H20/ .00/ CO/ .75/ C02/1.50/ N2/ .00/ AR/ .00/
2.080E+19 -1.240
.00
H+202<=>HO2+02
11.26E+18 -.760
.00
H+02+H20<=>HO2+H20
.00
2.600E+19 -1.240
H+02+N2<=>HO2+N2
.00
7.OOOE+17 -.800
H+02+AR<=>HO2+AR
2.650E+16 -.6707 17041.00
H+02<=>O+OH
1.000E+18 -1.000
.00
2H+M<=>H2+M
H2/ .00/ H20/ .00/ C02/ .00/ AR/ .63/
9.OOOE+16 -.600
2H+H2<=>2H2
.00
6.OOOE+19 -1.250
.00
2H+H20<=>H2+H20
5.500E+20 -2.000
.00
2H+CO2<=>H2+CO2
2.200E+22 -2.000
.00
H+OH+M<=>H20+M
H2/ .73/ H20/3.65/ AR/ .38/
.000 671.00
3.970E+12
H+H02<=>O+H20
4.480E+13 .000 1068.00
H+H02<=>02+H2
0.840E+14 .000 635.00
H+H02<=>20H
1.210E+07 2.000 5200.00
H+H202<=>HO2+H2
H+H22<=>OH+H20
1.OOOE+13 .000 3600.00
OH+H2<=>H+H20
2.160E+08 1.510 3430.00
.00
20H(+M)<=>H202(+M)
7.400E+13 -.370
LOW / 2.300E+18 -.900 -1700.00/
TROE/ .7346 94.00 1756.00 5182.00/
141
H2/2.00/ H20/6.00/ CO/1.50/ C02/2.00/ AR/ .70/
20H<=>O+H20
3.570E+04 2.400 -2110.00
OH+HO2<=>02+H20
0.500E+16
.000 17330.00
DUPLICATE
OH+HO2<=>02+H20
1.450E+13 .000 -500.00
DUPLICATE
OH+H202<=>HO2+H20
2.OOOE+12 .000 427.00
DUPLICATE
OH+H202<=>HO2+H20
1.700E+18 .000 29410.00
DUPLICATE
2HO2<=>02+H202
1.300E+11
.000 -1630.00
DUPLICATE
2HO2<=>02+H202
4.200E+14 .000 12000.00
DUPLICATE
---------------- CO Oxidation---------------------O+CO(+M)<=>CO2(+M)
1.800E+10 .000 2385.00 !GRI Mech 3
LOW/6.020E+14
.000 3000.00/
H2/2.00/ 02/6.00/ H20/6.00/ CO/1.50/ C02/3.50/ AR/ .50/
02+CO=O+CO2
2.500E+12
CO+OH=CO2+H
4.760E+07
H02+CO=OH+CO2
1.500E+14
0.000 47800.00 !GRIMech
1.228 70.00
!GRI Mech 3
0.000 23600.00 !GRIMech
END
142
CHEM.OUT
CHEMKIN INTERPRETER OUTPUT: CHEMKIN-II Version 3.6 Apr. 1994
DOUBLE PRECISION
ELEMENTS ATOMIC
CONSIDERED WEIGHT
1.
2.
3.
4.
5.
H
0
C
N
AR
1.00797
15.9994
12.0112
14.0067
39.9480
C
PH
HA
AR
SPECIES
CONSIDERED
1. H20
2. H
3. OH
4. H202
5.0
6. CO
7. C02
8.02
9. N2
10. AR
11. H02
12. C8H18
13. H2
14. C2H4
15. C7H16
S G MOLECULAR TEMPERATURE ELEMENT COUNT
E E WEIGHT LOW HIGH H 0 C N AR
GO 18.01534 300.0 5000.0 2 1 0 0 0
GO 1.00797 300.0 5000.0 1 0 0 0 0
G 0 17.00737 300.0 5000.0 1 1 0 0 0
GO 34.01474 300.0 5000.0 2 2 0 0 0
G 0 15.99940 300.0 5000.0 0 1 0 0 0
GO 28.01055 300.0 5000.0 0 1 1 0 0
GO 44.00995 300.0 5000.0 0 2 1 0 0
GO 31.99880 300.0 5000.0 0 2 0 0 0
GO 28.01340 300.0 5000.0 0 0 0 2 0
GO 39.94800 300.0 5000.0 0 0 0 0 1
GO 33.00677 300.0 5000.0 1 2 0 0 0
G 0 114.23266 300.0 5000.0 18 0 8 0 0
GO 2.01594 300.0 5000.0 2 0 0 0 0
GO 28.05418 300.0 5000.0 4 0 2 0 0
G 0 100.20557 300.0 5000.0 16 0 7 0 0
(k = A T**b exp(-E/RT))
A
b
REACTIONS CONSIDERED
1.
2.
3.
4.
E
C8H18+02<=>3C2H4+6H+2CO
9.50E+07 0.0
900.0
9.50E+07 0.0
C7H16+02<=>3C2H4+4H+CO2
900.0
4.OOE+08 0.0 1000.0
02+C2H4<=>4H+2CO
1.20E+17 -1.0
0.0
20+M<=>02+M
H2
Enhanced by 2.40 )E+O0
H20
Enhanced by 1.54 0E+01
Enhanced by 1.75 OE+00
CO
C02
Enhanced by 3.60 OE+00
Enhanced by 8.30 OE-01
AR
143
5. O+H+M<=>OH+M
5.OOE+17 -1.0
0.0
H2
Enhanced by 2.OOOE+00
H20
Enhanced by 6.OOOE+00
CO
Enhanced by 1.500E+00
Enhanced by 2.OOOE+00
CO2
AR
Enhanced by 7.OOOE-01
6. O+H2<=>H+OH
3.87E+04 2.7 6260.0
7. O+HO2<=>OH+02
2.OOE+13 0.0
0.0
8. O+H2O2<=>OH+HO2
9.63E+06 2.0 4000.0
9. H+02+M<=>HO2+M
2.80E+18 -0.9
0.0
02
Enhanced by 0.OOOE+00
H20
Enhanced by 0.OOOE+00
CO
Enhanced by 7.500E-01
CO2
Enhanced by 1.500E+00
N2
Enhanced by 0.OOOE+00
AR
Enhanced by 0.OOOE+00
10. H+202<=>HO2+02
2.08E+19 -1.2
0.0
11. H+02+H20<=>HO2+H20
1.13E+19 -0.8
0.0
12. H+02+N2<=>HO2+N2
2.60E+19 -1.2
0.0
13. H+02+AR<=>HO2+AR
7.OOE+17 -0.8
0.0
14. H+02<=>O+OH
2.65E+16 -0.7 17041.0
15. 2H+M<=>H2+M
1.00E+18 -1.0
0.0
H2
Enhanced by 0.OOOE+00
H20
Enhanced by 0.OOOE+00
C02
Enhanced by 0.OOOE+00
AR
Enhanced by 6.300E-01
16. 2H+H2<=>2H2
9.OOE+16 -0.6
0.0
17. 2H+H20<=>H2+H20
6.OOE+19 -1.3
0.0
18. 2H+CO2<=>H2+CO2
5.50E+20 -2.0
0.0
19. H+OH+M<=>H20+M
2.20E+22 -2.0
0.0
H2
Enhanced by 7.300E-01
H20
Enhanced by 3.650E+00
AR
Enhanced by 3.800E-01
20. H+H02<=>O+H20
3.97E+12 0.0
671.0
21. H+H02<=>02+H2
4.48E+13 0.0 1068.0
22. H+H02<=>20H
8.40E+13 0.0
635.0
23. H+H202<=>HO2+H2
1.21E+07 2.0 5200.0
24. H+H202<=>OH+H20
1.OOE+13 0.0 3600.0
25. OH+H2<=>H+H20
2.16E+08 1.5 3430.0
26. 20H(+M)<=>H202(+M)
7.40E+13 -0.4
0.0
Low pressure limit: 0.23000E+19 -0.90000E+00 -0.17000E+04
TROE centering:
0.73460E+00 0.94000E+02 0.17560E+04 0.51820E+04
H2
Enhanced by 2.OOOE+00
H20
Enhanced by 6.OOOE+00
CO
Enhanced by 1.500E+00
C02
Enhanced by 2.OOOE+00
AR
Enhanced by 7.OOOE-01
27. 20H<=>O+H20
3.57E+04 2.4 -2110.0
28. OH+HO2<=>02+H20
5.00E+15 0.0 17330.0
Declared duplicate reaction...
29. OH+HO2<=>02+H20
1.45E+13 0.0 -500.0
Declared duplicate reaction...
30. OH+H202<=>HO2+H20
2.OOE+12 0.0
427.0
Declared duplicate reaction...
31. OH+H202<=>HO2+H20
1.70E+18 0.0 29410.0
Declared duplicate reaction...
144
32. 2HO2<=>02+H202
1.30E+11 0.0 -1630.0
Declared duplicate reaction...
33. 2HO2<=>02+H202
4.20E+14 0.0 12000.0
Declared duplicate reaction...
34. O+CO(+M)<=>CO2(+M)
1.80E+10 0.0 2385.0
Low pressure limit: 0.60200E+15 0.OOOOOE+00 0.30000E+04
H2
Enhanced by 2.OOOE+00
02
Enhanced by 6.000E+00
H20
Enhanced by 6.OOOE+00
CO
Enhanced by 1.500E+00
CO2
Enhanced by 3.500E+00
AR
Enhanced by 5.OOOE-01
35. 02+CO=O+CO2
2.50E+12 0.0 47800.0
36. CO+OH=CO2+H
4.76E+07 1.2
70.0
37. H02+CO=OH+CO2
1.50E+14 0.0 23600.0
NOTE: A units mole-cm-sec-K, E units cal/mole
NO ERRORS FOUND ON INPUT...CHEMKIN LINKING FILE WRITTEN.
WORKING SPACE REQUIREMENTS ARE
INTEGER:
729
REAL:
794
CHARACTER:
20
145
MAKEFILE
CFLAGS = -C -02
OBJS = driver.o intherm.o specinit.o cklib.o putout.o \
uptherm.o reaction.o realkin.o ignitkin.o vode.o
driver: $(OBJS) linalg/liblin.a blas/libblas.a
f77 -o driver $(OBJS) linalg/liblin.a blas/libblas.a
.f.o:
@echo "# Compiling $@ because of $?"
f77 $(CFLAGS) -c $*.f
onestep: onestep.f
f77 -g -r8 -trapuv -C -o onestep onestep.f
146