Design
Niclas Falck
February 2008
Master Thesis
Division of Thermal Power Engineering
Department of Energy Sciences
Lund University, Sweden
Preface
This master thesis has been conducted at the division of Thermal Power Engineering,
department of Energy Science, Lund University, Sweden.
This experience has been very educational in terms of modeling and computing thermal
energy devices. This thesis has been about axial flow compressors, but the approach and
methodic that I have implemented in this thesis will also be useful in my future career
as an Engineer regardless of branch.
I want to thank my supervisor Magnus Genrup for his support and expertise in the field
of turbomachinery.
I also want to thank the rest of the department of Energy Science, especially my fellow
master thesis workers, for an enjoyable time here in Lund.
Abstract
The main objective in this thesis is creating a method on how one can model an axial
flow compressor. The calculation used in this thesis is based on common
thermodynamics and aerodynamics principles in a mean stream line analyses.
Calculations based on one stream line i.e. one dimension, is a good first start to model a
compressor. Most of the correlations and thermodynamics are based on one stream line,
or they can be modified to work on one stream line.
By just a handful of design specifications an accurate model can be generated. These
specifications can be mass flow, rotational speed, number of stages, pressure ratio etc.
The pressure ratio is also the one parameter that the calculation aims to satisfy. If the
calculation results in a pressure ratio that is not what was specified in the beginning an
adjustment must be made on one parameter. In this case the stage load coefficient is
selected. By changing the stage loading coefficient and keeping the other parameters
constant the pressure ratio will vary. This is done in an iterative process until the
pressure ratio is converged.
The purposes of modeling compressors based on correlations and thermodynamics and
not model them in a CFD (Computational Fluid Dynamics) simulation program at once
is that it takes a long time for a calculation to converge in a CFD program. Finding
better correlations and methods on how one can model a compressor will result in fewer
hours fine tuning them in advanced fluid dynamic programs and hence same time and
not to mention money.
Content
Nomenclature .................................................................................................................. 4
Introduction ..................................................................................................................... 6
1 Background .................................................................................................................. 7
1.1 Gas turbine .............................................................................................................. 7
1.2 Compressor ............................................................................................................. 8
1.3 Stagnation property ................................................................................................. 9
2 Compressor Fundamentals ....................................................................................... 11
2.1 Compressor operation ........................................................................................... 11
2.2 Blade to Blade Flow path ...................................................................................... 12
2.3 Rothalpy ................................................................................................................ 13
2.4 Compressor Losses ................................................................................................ 14
2.4.1 Profile-loss ..................................................................................................... 15
2.4.2 Endwall-loss ................................................................................................... 15
2.5 Blade geometry ..................................................................................................... 16
2.6 Dimensionless Parameters .................................................................................... 16
2.6.1 Stage load coefficient ..................................................................................... 17
2.6.2 Stage flow coefficient ...................................................................................... 17
2.6.3 Stage reaction ................................................................................................. 17
2.6.4 de Haller number ............................................................................................ 17
2.6.5 Pressure rise coefficient ................................................................................. 18
2.7 Efficiency .............................................................................................................. 18
2.7.1 Isentropic efficiency ........................................................................................ 18
2.7.2 Polytropic efficiency ....................................................................................... 19
2.7 Operating Limits ................................................................................................... 20
3 Methods of Calculation ............................................................................................. 22
3.1 State properties ...................................................................................................... 22
3.2 Incidence and Deviation ........................................................................................ 22
3.2.1 Incidence Angle .............................................................................................. 23
Content Axial Flow Compressor Mean Line Design
Nomenclature
Symbol Unit Description
a [m/s] Speed of sound
A [m2] Area
c
p
[kJ/kgK] Specific heat at constant pressure
c
v
[kJ/kgK] Specific heat at constant volume
c [m] Chord
C [m/s] Absolute velocity
C
Introduction
The development of gas turbines has in the recent years come a long way. Serious
development began during the Second World War with the key interest of shaft power,
but attention was shortly transferred to the turbojet engine for aircraft propulsion. The
gas turbine began to compete successfully in other fields in the mid 1950s, since then it
has made a successful impact in an increasing variety of applications.
When combining a gas turbine with a heat recovery steam generator the heat, that
otherwise would be wasted from the gas turbine outlet, can be extracted. Together with
a conventional steam generator this will form a combined cycle. The efficiency of a
combined cycle power plant is far better than regular gas turbine power plants.
The question is than, how could we improve the efficiency of a gas turbine? One can
either focus on the compressor, the combustion chamber or the turbine. In this thesis the
compressor, especially the axial flow compressor, will be investigated.
When designing a new compressor, a good start is to create a base design for the
compressor. By just a handful of design specifications an accurate model can be
generated. The modelling techniques used are based on combinations of thermodynamic
and aerodynamic correlations. This base design will make up for about 60-70 % of the
finished design. In this first stage in designing a new compressor, designs that would
not work or have pore efficiency can be avoided.
Further on in the process powerful CFD (Computational Fluid Dynamics) simulation
programs are being used. A CFD calculation takes a long time and hence cost a lot of
money. The solution to cutting down the number of simulations is then to make the base
design more accurate.
1 Background
1.1 Gas turbine
A gas turbine consists mainly by three components, the compressor, the combustion
chamber and the turbine, see Figure 1.1. The compressor is one a part of the entire gas
turbine, but never the less, an important and probably the most complicated component
to design in an aerodynamic point of view.
The working fluid enters an inlet duct and continues to the compressor. The compressor
pressurises the fluid and will also lead to an increase in temperature. Depending on the
application it can either have a radial or an axial design depending on mass flow and
pressure ratio. After the compressor, the pressure of the working fluid will have
increased to 15-30 bar, even above 40 in aero engines, and will have a temperature of
about 500C.
By combustion of fuel in the combustion chamber, energy is added to the working fluid.
A gas turbine is very flexible in terms of what sort of fuels can be used. The working
fluid which now has a temperature of about 1200-1450C enters the last stage in the
process, the turbine. Here the fluid expands and thus transferring its energy to the
turbine blade in form of mechanical work. The turbine is connected to the compressor
by a shaft and this lead the mechanical work from the turbine to the compressor. If the
gas turbine is to be used in a multi-shaft configuration, the work provided by the turbine
will just be enough to drive the compressor otherwise a load can be connected like a
pump, a propeller or a generator.
Compressor Turbine
Combustion
chamber
Load
Figure 1.1, Schematic figure over the main components in a gas turbine
1 Backg
1.2 Co
There a
Figure 1
consists
pressure
often co
stage in
flow co
compres
example
the only
SAAB
fuselage
A deepe
and be d
ground
ompress
are two typ
1.3 and 1.4.
s of a rotatin
e rise in a
onsists of a
n a radial co
ompared to
ssor a radia
e in a jet en
y choice. An
J29 also k
e because o
er insight o
discussed in
sor
pes of com
. Axial flow
ng rotor and
single stag
single stag
ompressor. A
a radial flow
al design is
ngine for a b
n example o
known as
f the large r
of the axial
n this thesis
Fig
mpressor des
w compresso
d a stationa
ge. Unlike a
ge. It is pos
An axial flo
w compress
s the best c
big airliner
of a radial c
Tunnan (i
radial comp
Figure 1
flow comp
.
gure 1.3, Ax
Axial F
8
signs, radia
ors are divi
ary one calle
axial flow c
ssible to obt
ow compres
sor. If one w
choice. But
, an axial fl
compressor
in eng. Th
pressor desig
1.2, SAAB J
pressors con
xial flow co
Flow Compr
al and axial
ided in a ser
ed stator. It
compressor
tain a highe
ssor can ha
would like
t if high po
low is not ju
in an aircra
he Barrel)
gn, see Figu
J29
nstruction an
ompressor
ressor Mean
l flow com
ries of stage
t is difficult
rs, the radia
er pressure
andle a muc
to have a s
ower is req
ust the best
aft is the Sw
). This has
ure 1.2.
nd its desig
n Line Desi
mpressors, s
es, each sta
t to get a hi
al compress
rise over o
ch larger ma
mall compa
quired, for
t but probab
wedish aircr
a very wi
gn will follo
gn
see
age
gh
sor
one
ass
act
an
bly
aft
ide
ow
A
1
W
ca
th
th
te
If
C
Fi
in
th
or
Axial Flow C
.3 Stagn
When the kin
ase, the enth
he kinetic en
he convenien
erm called st
f the kinetic
onsider a d
igure 1.5. T
nput or outp
he fluid, the
r
Compressor
ation pro
netic and p
halpy repres
nergy is hig
nt to combi
tagnation (o
energy is n
duct such a
The flow ta
put. Assumi
energy bala
Mean Line
operty
otential ene
sents the tot
ghly noticea
ine the kine
or total) enth
negligible th
s a nozzle
akes place
ing there is
ance can the
Figure 1
e Design
9
ergies of a
tal energy o
able, but th
etic energy w
halpy h
0
, w
he enthalpy
or a diffus
under an a
no potenti
en be reduc
.4, Radial fl
given fluid
of the fluid.
he potential
with the ent
hich is defin
is the referr
ser where a
adiabatic pro
al energy d
ed to.
flow compre
d are negligi
For high sp
energy is s
thalpy of th
ned as.
red as the st
a fluid is flo
ocess wher
difference th
essor
1 Bac
ible, as is o
peed flows,
still negligib
he fluid into
tatic enthalp
owing throu
re there is n
hrough the
ckground
often the
, M>0.4,
ble. It is
a single
(1.1)
py, h.
ugh, see
no work
duct for
1 Background Axial Flow Compressor Mean Line Design
10
The stagnation enthalpy will not change through a duct if there is no heat or work done
to the system. Flows through nozzles or diffusers usually satisfy these conditions, and
any changes in the fluid velocity will create a change in the static enthalpy of the fluid.
Substituting the enthalpy with temperature instead results in the following expression
or
(1.2)
C
p
represents the specific heat value for the fluid for an ideal gas. T
0
is called stagnation
(or total) temperature. The term V
2
/2C
p
is called the dynamic temperature and
corresponds to the temperature rise during an adiabatic process.
The pressure a fluid obtains when brought to rest is called stagnation pressure, P
0
. For
ideal gases with constant specific heats, P
0
is related to the static pressure of the fluid
by,
represents the specific heat ratio, C
p
/C
v
.
1 2
Figure 1.5, Steady flow of a fluid through an adiabatic duct
11
2 Compressor Fundamentals
2.1 Compressor operation
A typical axial flow compressor consists of a series of stages; each stage has a row of
moving rotor blades followed by a row of stator blades which is stationary, see Figure
2.1. The rotor blades accelerates the working fluid thus gaining energy, this kinetic
energy is then converted into static pressure by decelerating the fluid in the stator
blades. The process is then repeated as many times as necessary to get the required
pressure ratio. The number of stages in a compressor is important especially when the
engine will be used in an aircraft. The main reason is that too many stages will result in
an increase in weight and a large core engine length. For land based gas turbines the
main reason is the cost, which will increase when adding more stages. Some different
compressors used in aircrafts are shown in Table 2.1, and here one can see how
compressor improvement has come along over the years.
Engine Date Thrust Pressure Stages
[kN] ratio
Avon 1958 44 10 17
Spey 1963 56 21 17
RB-211 1972 225 29 14
Trent 1995 356 41 15
Table 2.1, Compressor evolution, aircraft engine
Figure 2.1, Cross-section view over a compressor flow path
2 Compressor Fundamentals Axial Flow Compressor Mean Line Design
12
As discussed earlier all the power is absorbed in the rotor and the stator transforms the
kinetic energy which has been absorbed by the rotor into an increase in static pressure.
The stagnation temperature remains constant throughout the stator since there is no
work feed into the fluid. Figure 2.2 shows a sketch of a typical compressor stage.
The stagnation pressure rise occurs wholly in the rotor, but in practice, there will be
some losses in the stator due to fluid friction which will result in a decrease in
stagnation pressure. There are also some losses in the rotor and the stagnation pressure
rise will be less than of an isentropic compression.
2.2 Blade to Blade Flow path
To get a clear picture in how a compressor works, blade to blade flow path analysis is
the most fundamental part. The velocity components of the working fluid can be
expressed in two velocity vectors, absolute and relative velocity. The fluid enters the
rotor with an absolute velocity, C
1
, and has an angle,
1
, from the axial direction.
Combining the absolute velocity with the blade speed, U, gives the relative velocity, W
1
,
with its angle
1
. The mechanical energy from the rotating rotors will be transferred to
the working fluid. This energy absorption will increase the absolute velocity of the
fluid. After leaving the rotor the fluid will have a relative velocity, W
2
, with an angle,
2
, determined by the blade outlet angle. The fluid leaving the rotor is consequently the
air entering the stator where a similar change in velocity will occur. Here the relative
p
1
p
01
p
2
p
03
p
3
p
02
T
03
T
2
T
01
T
1
T
02
, T
03
Temperature, T
Entropy, s
3 2 1
R
S
Figure 2.2, Compressor stage and T-s diagram
Axial Flow Compressor Mean Line Design 2 Compressor Fundamentals
13
velocity, W
2
, will be diffused and leaving the stator with a velocity, C
3
, at an angle,
3
.
Typically the velocity leaving the stator will be the same as the velocity entering the
rotor in the next row, C
3
= C
1
and
3
=
1
. By creating so called velocity triangles,
see Figure 2.3, will make it easier to visualize the change of velocities and angles in a
compressor stage [1].
2.3 Rothalpy
The work, W, is expressed as the enthalpy change. For adiabatic machines the heat flux,
Q, is zero. Introducing the Euler equation and expanding the stagnation enthalpy gives
after rearrangement.
This can then be used for obtaining the difference between the inlet and outlet.
U
W
1
C
1
C
a1
1
1
W
2
C
2
C
a2
2
2
C
2
C
1
1
C
1
2
C
3
C
2
Figure 2.3, Velocity triangles for one stage
2 Comp
Or alter
The ter
rothalpy
In rotat
stationa
the equa
2.4 Co
The flo
effects,
pressure
pressor Fund
rnatively
rm (h
02
)
rel
y is defined
ting blade
ary passages
ation revert
ompress
ow in a com
see Figure
e occurs due
damentals
is the stag
as the quan
rows rotha
s. If the sam
s to conserv
sor Losse
mpressor is
e 2.4. This
e to the flow
Figu
gnation enth
ntity
alpy has pr
me concept
vation of sta
es
s complicat
s dissipative
w effects.
ure 2.4, Flo
Axial F
14
halpy in th
roperties an
of rothalpy
agnation ent
ted 3-D, un
e nature in
ow fields in
Flow Compr
he relative f
nalogous to
is applied t
thalpy [2].
nsteady and
ncreases the
a cascade
ressor Mean
frame of re
o stagnation
to a stationa
d dominate
e entropy a
n Line Desi
eference. T
(2.1
n enthalpy
ary blade ro
ed by visco
and a loss
gn
The
1)
in
ow
ous
in
Axial Flow Compressor Mean Line Design 2 Compressor Fundamentals
15
The individual losses are lumped into profile- and endwall-losses. These pressure losses
are dependent on a numerous parameters which include tip clearance, blade aspect ratio,
pitch chord ratio, thickness chord ratio, Mach number and Reynolds number. The
different loss models are based on mid radius and will be modelled individually for the
rotor/stator.
2.4.1 Profile-loss
Profile-losses are based on the effect of blade boundary layer growth (including
separated flow) and wakes through turbulent and viscous dissipation. The effect of these
losses is an increase of entropy due to the heat developed by the mechanical energy
within the boundary layers. This results in a stagnation pressure loss [3].
2.4.2 Endwall-loss
In addition to the losses which arise from the blade surfaces, i.e. profile losses,
additional losses generated on the end walls. These are often called secondary losses
which arises from end-wall boundary layer build up, secondary flow and tip clearance.
When a flow that is parallel but non-uniform in velocity and density is made to follow a
curved path, the result is a three-dimensional motion with velocity normal to the overall
flow direction. Cross-flow of this type is referred as secondary flow. A good analogy
of this is a simple teacup. When stirring the tea in a teacup, the tea leafs will move
towards the center of the cup driven by the secondary flow.
The formation, development, diffusion and dissipation of these vortices as well as the
kinetic energy in secondary velocities generate secondary flow losses. Somewhere
between 50-70% of the losses may come from endwall losses, depending of the type of
turbo machinery [3].
16
1
Relative air inlet angle
b1
Blade inlet angle
2
Relative air outlet angle
b2
Blade outlet angle
Stagger angle
Camber angle
i Incidence angle,
1
-
b1
Deviation angle,
2
-
b2
c Chord length
S Staggered spacing
t Maximum thickness
Solidity, c/s
Table 2.2, Cascade notation
2.6 Dimensionless Parameters
Introducing a set of dimensionless parameters will give a useful guidance in designing a
compressor stage. These dimensionless performance parameters define the performance
of a single stage in a compressor.
b1
b2
W
1
Profile
W
2
C
S
Camber line
t
Figure 2.5, Cascade notation
Axial Flow Compressor Mean Line Design 2 Compressor Fundamentals
17
(2.2)
where H is the total enthalpy rise through the rotor. It is often useful to introduce
dimensionless stage performance parameters for a repeating stage, i.e. the rotor-inlet
(station 1) and the stator-outlet (station 3) from the previous stage has identical velocity
diagrams. Then, the stage load coefficient, , can be defined as
0
0
(2.3)
2.6.2 Stage flow coefficient
The stage flow coefficient, , is defined as followed.
(2.4)
This expresses the ratio between the meridional velocity and the blade velocity. A high
stage flow coefficient indicated a high flow through the stage relative to the blade
velocity. A low whirl velocity change in a stage would also indicate a high stage flow
coefficient and vice versa [1].
2.6.3 Stage reaction
The stage reaction, R, is defined as the fraction of the rise in static enthalpy in rotor
compared to the rise in stagnation enthalpy throughout the entire stage.
(2.5)
If a compressor stage would have a stage reaction of 1.0 or 100%, the rotor would do all
of the diffusion in the stage. Similar if the stage reaction is 0 than the stator will do all
of the diffusion of the working fluid. It is never good to have either a stage reaction of
1.0 or 0. The literature, reference 1, suggest that a stage reaction about 0.5 i.e. the
diffusion is equally divided between the two blade rows. But in practice a higher stage
reaction is preferred. Increasing the stage reaction results in a decrease in whirl prior to
the rotor. A smaller whirl will create a larger relative inlet velocity to the rotor row, at a
constant C
p,
and hence make it easier for the rotor to increase the static pressure.
2.6.4 de Haller number
In most compressor stages both the rotors and the stators are designed to diffuse the
fluid, and hence transform its kinetic energy into an increase in static enthalpy and static
pressure. The more the fluid is decelerated, the bigger pressure rise, but boundary layer
growth and wall stall is limiting the process. To avoid this, de Haller proposed that the
2 Compressor Fundamentals Axial Flow Compressor Mean Line Design
18
(2.6)
2.6.5 Pressure rise coefficient
Another parameter is the pressure rise coefficient.
(2.7)
If axial velocity is assumed constant and the working fluid is assumed to be
incompressible, then the pressure rise coefficient can also be expressed as a function of
the deHaller number. This is done by applying Bernoullis principle.
(2.8)
2.7 Efficiency
The term efficiency finds very wide application in turbo machinery. For all machines or
stages, efficiency is defined as.
There are several different ways of evaluating efficiency and these reveal different
information. Two of the most widely used efficiencies are the isentropic efficiency and
the polytropic efficiency.
2.7.1 Isentropic efficiency
The isentropic efficiency can be expressed as the ratio between enthalpy change in an
ideal compressor and the actual enthalpy change. An ideal compressor which is both
adiabatic and reversible cannot alter the entropy of the gas flowing through it. These
types of compressors are usually referred to as isentropic. Since there will be some
Axial Flow Compressor Mean Line Design 2 Compressor Fundamentals
19
losses which generates an entropy rise, the actual work into the compressor will differ
from an ideal one. The efficiency can then be described as,
(2.9)
The subscript s denotes entropy held constant. Figure 2.6 shows a typical schematic
diagram over a reversible adiabatic compression.
The constant pressure lines in the T-S diagram, Figure 2.6, have a slope proportional to
the temperature and diverge as the temperature increases. For a given pressure rise the
work input needed is greater for the later stages in a compressor, this because the
temperature is higher and also that the work input required by the later stages is raised
because of the previous stages. The isentropic efficiency therefore gets lower as the
overall pressure ratio is increased. To cope with this problem, another efficiency the so-
called polytropic or small-stage efficiency may be used instead [2].
2.7.2 Polytropic efficiency
The definition of polytropic efficiency is as follows.
By applying Gibbs law and the relationship between temperature and enthalpy it can be
rewritten so it depends on temperatures and pressures instead.
2s
2
1
p
01
p
02
Entropy S
Temperature T
Figure 2.6, isentropic compression
2 Compressor Fundamentals Axial Flow Compressor Mean Line Design
20
(2.10)
One can also assume that the specific heat capacity is constant, which is not the case in
this thesis. If this is assumed, the following expression can be found [2].
(2.11)
2.7 Operating Limits
There are mainly two phenomena that can cause a compressor to break down, rotating
stall and surge. Gas turbines, for example, may encounter severe performance and
durability problems if the compressor is not able to avoid stall and surge. In preliminary
designs there is a need for reliable methods for computing the compressors stall margin
capability. This because it is difficult to correct and change the compressor stall margin
after its basic design has been chose.
In a typical compressor it is normal that if the mass flow is reduced the pressure rise
increases. At a certain point in an operating range the pressure rise is at its maximum, in
a further reduction in mass flow will lead to an abrupt and definite change in flow
pattern in the compressor. This change in flow pattern is known as surge and can cause
the flow to start oscillating backwards and forwards, and after a while the compressor
will break down. A mild version of surge causes the operating point to orbit around the
point of maximum pressure rise. An audible burble is a clear indicator when the
compressor is on the limit of the more severe surge [2].
The other phenomena that one should be looking for is stall. If the mass flow is reduced
the axial velocity will, according to the continuity equation, also decrease. This will
increase the air inlet angle and, due to the difference in air inlet angle and blade inlet
angle, create incidence. With an increasing incidence angle the flow will eventually
separate from the surface at the trailing edge. The separation will grow with a further
Axial Flow Compressor Mean Line Design 2 Compressor Fundamentals
21
increase of incidence angle, and finally cover the whole upper blade. This phenomenon
is called stall, and will change the performance of a compressor drastically.
Rotating stall means that the stall is moved from one blade to another and an
uninformed pattern will occur, see Figure 2.7. The annulus then contains regions of
stalled flow, usually referred as cells, and regions of unstalled flow. Rotating stall is a
mechanism which allows the compressor to adapt to a mass flow which is too small.
Instead of trying to share the limited flow over the whole annulus the flow is shared
unequally, so that some areas have a larger mass flow than other. The overall mass flow
remains constant but the local mass flow varies as the rotating cell passes the point of
observation. The cells always rotate in the direction of the rotor. Part-span cells very
often rotate at close to 50 percent of the rotor speed, full-span cells usually rotate more
slowly in the range of 20-40 percent. Full-span cells extend axially through the whole
compressor while part-span cells can exist in a single blade row [2].
3 Methods of Calculation
3.1 State properties
In order to calculate the state of a fluid, an approach according to the Gibbs-Dalton is
used. The model used is the NASA SP-273, and by integration, the enthalpy and
entropy are known. The specific heat is expressed as fifth order polynomial.
The reference values are set to zero at 101.325 kPa and 273.15 K. as seen in the
equations above.
As seen in the equation above, the temperature and the pressure must be known if the
entropy and enthalpy are to be found. If let say that the enthalpy and the temperature are
known instead, an iterative process is needed since the specific heat value is expressed
as a fifth order polynomial. This iterative procedure uses the standard Newton method,
see chapter 4.5 Newton Rhapson Method. Introduction of other property libraries are
straightforward, as long as they are semi-perfect (specific heat only a function of
temperature) [11].
3.2 Incidence and Deviation
There are several different methods on how to get the blade angles in a cascade. In this
thesis, one method is used to calculate the angles based on a number of input variables.
Howard, see reference 4, has put together a number of correlations and equations based
on Johnsen and Bullock (1965), which commonly is referred to as NASA SP-36
correlations. These correlations are largely based on low speed cascade test; he also
introduces some correlations for advanced transonic compressor blades by Kning, et al
(1996), but this will not be taken in consideration in this thesis.
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
23
Min. loss
2 x
Min. loss
i/2 i/2
Incidence angle, i
Pressure loss,
Reference incidence angle
+
_
Figure 3.1, induced incidence
Figure 3.2, Definition of reference incidence angle
3 Methods of Calculation Axial Flow Compressor Mean Line Design
24
(3.1)
K
sh
and K
it
are correction factors for blade shape and thickness respectively. K
sh
differs
whether the blade is a DCA, 65-Serie or a C-Series, see Table 3.1.
K
sh
Blade type
0.7 DCA
1.0 65-Series
1.1 C-Series
Table 3.1, Shape factor, K
sh
, for the calculation of incidence angle
(3.2)
i
010
is the incidence angle based on 10% thick blades, see Figure 3.3. The variable n
represents the incidence slope factor, see Figure 3.4.
(3.3)
(3.4)
In the polynomials above,
1
denotes the relative inlet flow angle for the rotor, and
replaced by
2
for the stator.
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
25
Figure 3.3, reference incidence angle for profiles with zero camber with variations in
solidity
Figure 3.4, slope factor, n, with variations in solidity
0 10 20 30 40 50 60 70 80
-2
0
2
4
6
8
10
12
14
i
n
c
i
d
e
n
c
e
,
i
0
1
0
flow inlet angle [degree]
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
0 10 20 30 40 50 60 70 80
-0.45
-0.4
-0.35
-0.3
-0.25
-0.2
-0.15
-0.1
-0.05
0
0.05
s
l
o
p
e
f
a
c
t
o
r
,
n
flow inlet angle [degree]
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
3 Methods of Calculation Axial Flow Compressor Mean Line Design
26
= deviation angle
m
c
= an empirical function of stagger angle,
= camber angle
= solidity
x = experimental factor (typical 2)
The deviation angle is dependent on both camber and stagger angle. This makes it quite
difficult to calculate the deviation angle, therefore another approach is needed.
The deviation angle used in the calculation is based on the reference incidence angle
and the structure looks very similar to that of the reference incidence angle.
(3.5)
K
sh
is the same as for reference incidence but the correction factor for blade thickness is
different.
(3.6)
010
is the deviation angle based on 10% thick blades, see Figure 3.5. The variable m
represents the deviation slope factor, see Figure 3.6.
(3.7)
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
27
(3.8)
(3.9)
The modified slope factor, m, is different whether DCA, 65-series or C-Series is used.
65-series
(3.10)
DCA and C-series
(3.11)
Figure 3.5, zero camber deviation angle at i
ref
with variations in solidity
0 10 20 30 40 50 60 70 80
0
1
2
3
4
5
6
d
e
v
i
a
t
i
o
n
,
G
0
1
0
flow inlet angle [degree]
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
2.0
1.2
1.0
0.8
0.6
0.4
3 Methods of Calculation Axial Flow Compressor Mean Line Design
28
(3.12)
(3.13)
Lieblein developed useful approximations for both diffusion ratio and diffusion factor.
DF denotes the diffusion factor and D
eq
* the equivalent diffusion ratio. The derivation
of the diffusion factor is based on the establishment of the velocity gradient on the
0 10 20 30 40 50 60 70 80
0.1
0.15
0.2
0.25
0.3
0.35
0.4
0.45
0.5
0.55
0.6
s
l
o
p
e
f
a
c
t
o
r
,
m
flow inlet angle [degree]
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
0.4
0.6
0.8
1.0
1.2
1.4
1.6
1.8
2.0
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
29
(3.14)
(3.15)
Koch and Smith modified the Lieblein approach and developed a more advanced
correlation for the losses which allows for the factors maximum thickness to chord (t/c)
and the Axial Velocity Density Ratio, i.e. AVDR.
(3.16)
where
(3.17)
(3.18)
(3.19)
and the density ratio between the passage throat to entry is
3 Methods of Calculation Axial Flow Compressor Mean Line Design
30
(3.20)
where M
x1
is the axial component of entry Mach number.
3.4 Losses
3.4.1 Profile loss model
The profile-loss model used is a modified version of the two dimensional low speed
correlation of Lieblein, see Figure 3.7. This correlation has been established for DCA
aerofoils but is used for conventional circular arc aerofoils [8].
Figure 3.7, profile loss parameter with variation in Mach number
The profile-loss parameter is expressed as
(3.21)
where
(3.22)
where
From this the loss in stagnation pressure with respect to inlet dynamic pressure, p
01
- p
1
,
can be calculated [2].
0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65
0.02
0.04
0.06
0.08
0.1
0.12
0.14
Diffusion factor
E
n
d
w
a
l
l
l
o
s
s
p
a
r
a
m
e
t
e
r
0.10
0.07
0.04
0.02
0.00
0.10
0.07
0.04
0.02
0.00
0.10
0.07
0.04
0.02
0.00
0.10
0.07
0.04
0.02
0.00
0.10
0.07
0.04
0.02
0.00
3 Methods of Calculation Axial Flow Compressor Mean Line Design
32
Pressure losses in the blade row can be calculated, but it is preferred to express the
losses in an entropy change instead. By applying Gibbs 2
nd
law, the pressure change can
be expressed as a change in entropy instead.
By definition there is no enthalpy change, will be zero.
With help from the ideal gas law the following modification can be made.
After integration on the right hand side, the following expression can be found where 1
and 2 denoted the inlet and outlet conditions.
The final result will be as follow.
(3.23)
3.5 Pitch Chord ratio
The pitch chord ratio is also known as the inverse of the solidity, , where the latter is
used in the U.S. When determining the aerodynamic loading in a blade row the pitch
chord ratio is an important parameter. A blade row with a low pitch chord ratio, high
solidity, will probably have fewer blades in a blade row than one with a high stagger
chord ratio. The aerodynamic loading will then be shared by less number of blades and
thus the blade loading will increase. A higher aerodynamic loading will probably be
nearer the surge/stall point than one with a lower aerodynamic load.
As for the Diffusion Factor, there are several methods on how to determine the pitch
chord ratio.
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
33
(3.24)
3.5.2 Hearsey Method
Hearsey uses an explicit loss correlation:
(3.25)
where D
opt
is the Diffusion Factor calculated using =
opt
. This correlation is based on
profile losses only and underestimates the required solidity when shocks are expected.
3.5.3 McKenzie Method
Another method is for determining the pitch chord ratio is taken from McKenzie, see
reference 5. Here the pitch chord ratio is a function of the static pressure rise, C
p
.
(3.26)
3.6 Stall/Surge
When calculating on how near the each stage is to surge/stall a relationship is used
created by Koch, see reference 9. By calculating the static pressure rise coefficient, C
p
,
based on pitchline dynamic head, and comparing it to the maximum static pressure rise,
will give a good indication of how close the stage is towards stall. The maximum static
pressure rise, C
p,max
, is based on diffuser correlation modified by the influence of
Reynolds number, tip clearance and axial spacing between blade rows. The correction
factors for the static pressure rise coefficient are shown in Figures 3.10-3.13.
The static pressure rise coefficient and the maximum pressure rise coefficient are as
followed.
3 Methods of Calculation Axial Flow Compressor Mean Line Design
34
(3.27)
Since there is a change in radius throughout the rotor, the factor (U
2
2
-U
1
2
)/2 will
decrease static pressure rise. This decrease in static pressure rise will not put any more
stress on the boundary layers because there will not be any further diffusion caused by
the change in radius.
(3.28)
The effective dynamic pressure factor
ef
is described by Koch in the paragraph below.
A parameter giving a quantitative measure of this flow coefficient/stagger angle effect,
termed the effective dynamic pressure factor
ef
, was defined as the effective dynamic
head divided by the pitchline free stream dynamic head. As indicated by the equation
3.29, the effective dynamic head was represented by a weighted average of the free
stream dynamic head, the minimum possible dynamic head and the dynamic head at
zero axial velocity. By trial and error, the best fit of the data was found to occur if the
minimum dynamic head was weighted 2.5 times as heavily as the free stream head, and
the head at zero axial velocity was weighted one half as heavily as the free stream head.
The minimum dynamic head was set equal to the free stream value for vector triangles
where ( + ) was greater than 90 deg., because in such a case the minimum possible
dynamic head could only occur at axial velocities higher than the free stream value.
Also, for vector triangles in which the upstream blade row turned the flow past the axial
direction, the minimum dynamic head was not allowed to become less than the zero
through-flow value, because in this case the mathematical minimum dynamic head
could only occur at negative axial velocities. [9]
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
35
Figure 3.9, diagram giving definition of the effective dynamic pressure factor,
ef
[9]
(3.29)
For the influences of Reynolds number, tip clearance and axial spacing between blade
rows a set o graphs is used. These graphs were created by a numerous sets of tests in
which different parameters were varied. The tests were performed with a General
Electric low-speed multistage compressor and the blade geometry and clearance was
systematically varied. These tests, plus some additional low speed experimental
configurations, also provided data for the correction for Reynolds number and showed
the effect of extreme values of stagger angle, flow coefficient and reaction [9].
Note that the value for the stage is determined by a weighted average value for the rotor
and the stator.
g
1
g
2
L
U
U
C
W
C
min
min
90
Rotor
3 Methods of Calculation Axial Flow Compressor Mean Line Design
36
The equations that will be presented are for the rotor but are applicable for the stator as
well [4].
(3.30)
In the equation above Z denotes the number of blades in one row.
cos
(3.31)
To determine the axial spacing between the rows, a guide rule can be used [10].
(3.32)
Figure 3.10, Correlation of stalling pressure rise data for baseline testing [9]
0 0.5 1 1.5 2 2.5 3 3.5
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
C
p
D
Diffusion length/Exit passage width, L/g
2
Axial Flow Compressor Mean Line Design 3 Methods of Calculation
37
Figure 3.11, Effect of tip clearance on stalling pressure rise coefficient [9]
Figure 3.12, Effect of axial spacing on stalling pressure rise coefficient [9]
0 0.02 0.04 0.06 0.08 0.1 0.12 0.14 0.16
0.8
0.85
0.9
0.95
1
1.05
1.1
1.15
1.2
1.25
(
C
p
/
C
p
D
)
H
Tip clearence/Average Pitchline Gap,
H
/g
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8
0.98
1
1.02
1.04
1.06
1.08
1.1
1.12
1.14
(
C
p
/
C
p
D
)
'
Z
Normalized Axial Spacing,
'
Z/s
3 Methods of Calculation Axial Flow Compressor Mean Line Design
38
Figure 3.13, Effect of Reynolds number on stalling pressure rise coefficient [9]
0.1 0.2 0.4 0.6 0.8 1 2 4 6 8 10
0.8
0.85
0.9
0.95
1
1.05
(
C
p
/
C
p
D
)
R
e
Reynolds Number x10
-5
, Re
39
4 Calculation procedures
4.1 Input parameters
When designing a new compressor, a number of parameters must be chosen to specify
the geometry and operating conditions for the compressor. There are numerous different
combinations of parameters that could specify the compressor. The different input
parameters, used in this thesis, are shown in table 4.1.
Main specification
Type of compressor
Mass flow
Number of stages
Pressure ratio
Rotational speed
Stage reaction
Detailed specification
Tip clearance, /c
Aspect ratio, h/c
Thickness chord ratio, t/c
Axial velocity ratio, AVR
Blockage factor, BLK
Diffusion factor, DF
Stage Loading distribution
Inlet specification
Inlet flow angle,
Stage flow coefficient,
Hub tip ratio, r
hub
/r
tip
Table 4.1, Input parameters for the calculations
40
42
As for the blockage factor one can say that after a certain stage in the compressor the
boundary layer growth will have settled. By studying several different calculations that
have been made a conclusion can be made that at the 5
th
stage the boundary layer
growth has been stabilized.
The stage load distribution throughout the compressor can be determined by setting the
inlet value, the mean value and the outlet value. This will create a type of ramp
function, see Figure 4.2 for an example how it can look. Using this type of ramp
function gives more control over how the stage load is distributed. More advanced
functions can be used or a customized distribution can be made as well, but for most
cases this ramp function will be adequate.
Figure 4.2, stage load distribution over a compressor
4.3 Calculation limitations
4.3.1 Mean stream line analyses
The calculations in this thesis are based on mean line stream analysis i.e. one
dimension. The mean radius is used in the calculations to determine the blade speed.
Normally when calculating with the mean line stream method, the mean radius will not
change. But by changing the mean radius throughout one stage will give a more
accurate design, see Figure 4.3. The mean radius will be kept constant in the space
between rotor and stator as well for the space between each row. A change in radius in
the space between each blade row wont make a big difference in the end result. It is
more crucial to have a change in radius in the blade them self since this will have a
more noticeable effect.
stage
Distribution, %
100
80
90
Axial Flow Compressor Mean Line Design 4 Calculation procedures
43
r
mean
Rotor Stator
Figure 4.3, variation in radius through a single stage
4 Calculation procedures Axial Flow Compressor Mean Line Design
44
Module 1
Module 2
Module 3
Module 0
Figure 4.4, structure over the iteration procedure for the whole compressor
Axial Flow Compressor Mean Line Design 4 Calculation procedures
45
4.4.3 Module 2
In this module the calculations at rotor-outlet/stator-inlet are performed. There are two
parameters that must be approximated. The first is the entropy rise in the rotor. This
must be known to be able to calculate the entropy at rotor-outlet. With this identified,
the temperature and pressure can then be determined. The second approximation is the
mean radius at rotor-outlet. There will be a change in radius throughout the rotor and to
be able to determine the velocities, a radius must be known. In Figure 4.5 a more
detailed view over this procedure is shown.
guess s
2-1
guess r
rms,2
r
rms,2
s
21
Module 2.1
Module 2.2
Module 1
Module 3
Module 2
Figure 4.5, structure over the iteration procedure for a rotor (module 2)
4 Calculation procedures Axial Flow Compressor Mean Line Design
46
4.4.4 Module 3
In the last of the three main modules, the stator-outlet is computed. The same method as
in module 2 is used, namely two parameters must be approximated. The two parameters
are somewhat the same as for the rotor, the entropy rise throughout the stator and the
mean radius at stator-outlet, see Figure 4.6.
guess s
3-2
guess r
rms,3
r
rms,3
s
32
Module 3.1
Module 3.2
Module 2
Module 3
Figure 4.6, structure over the iteration procedure for a stator (module 3)
Axial Flow Compressor Mean Line Design 4 Calculation procedures
47
This equation is applied repetitively until either one or both of the following
convergence criteria are satisfied:
x
fx
f(x)
g(x)
x
n+1
x
n
f(x)
x
Figure 4.7, Newtons method [7]
48
5 Calculation process
5.1 Module 0, Inlet geometry
To be able to solve the inlet geometry the inlet flow velocity, C
m
, must be known. Since
this velocity is unknown an iterative process must be used. By approximating the value
of C
m
, the density can be found. With help of mass continuity a new inlet flow velocity
can be calculated. This value is then used to start over the calculation until converged,
see Figure 5.1.
The first step is to get hold off the thermodynamic properties in the inlet of the
compressor. The ambient pressure and temperature is known and from these the
enthalpy and entropy can be found.
Now that the inlet properties are known, the iteration procedure can begin.
Axial Flow Compressor Mean Line Design 5 Calculation process
49
Start value C
m
cos
Figure 5.1, structure over the iteration procedure for the inlet geometry (module 0)
5 Calculation process Axial Flow Compressor Mean Line Design
50
Since the calculation for the entire stage will be repeated, the rotor-inlet conditions, i.e.
station 1, will have the same velocity and radius as the stator-outlet, i.e. station 3, for the
previous stage.
Now that the preferences for the rotor-inlet at the first stage are known the calculations
can begin.
The first thing is to find out the entropy and the enthalpy for this station. From the
ambient temperature and pressure the enthalpy and entropy can be found. If the
calculations is not preformed on the first stage than the stagnation properties of the
working fluid is taken from the previous stage.
tan
tan
cos
cos
Static properties
Now that the velocity is known, the static enthalpy can be calculated. And with help
from the entropy other fluid dynamic properties like pressure, temperature, density etc.
can be found.
To be able to move from the rotor-inlet towards the outlet of the rotor a relationship
between these must be used. Since the rothalpy is constant throughout the rotor, makes
the rothalpy useful when calculating the outlet of the rotor.
Further in to the calculations the relative Mach number and the axial Mach number will
be used and since that the speed of sound, a
1
, is known these two Mach numbers can be
calculated.
W
1
C
1
C
m1
1
1
C
1
Figure 5.2, velocity triangle for the rotor inlet
5 Calculation process Axial Flow Compressor Mean Line Design
52
Relative properties
The dominating velocity that is acting on a rotor blade is the relative velocity, W
1
;
therefore relative stagnation properties must be calculated. Instead of calculations based
on the absolute velocity, C
1
, the relative velocity is used. The relative pressure and
temperature are found out by the relative enthalpy and entropy.
Geometry
The blockage factor is here denoted as, BLK. The geometry is the same for the rotor-
inlet as for the stator-outlet in the previous stage. A result of this is that the blockage
factor should be the same for the rotor-inlet and the stator-outlet at the previous stage.
From the definition of the cross section area and the mean radius, the hub radius, the
mean radius or the tip radius can be calculated depending if the compressor is of the
type CID, CMD or COD.
The coefficient omega is the rotational speed in radians per second. By substituting this
with the blade speed, U=r, following relation can be found.
5 Calculation process Axial Flow Compressor Mean Line Design
54
The stage load coefficient is known and from this the tangential part of the absolute
velocity, C
2
, can be calculated.
Now that the tangential part of the absolute velocity is know the tangential part of the
relative velocity, W
2
, can be calculated. From this the absolute and relative velocities
can be calculated and there angle.
tan
tan
Static properties
From the rothalpy calculation done previously on the rotor blade inlet, the static
enthalpy at rotor blade outlet can now be calculated.
Due to the losses throughout the rotor passage, an increase in entropy will occur. This
increase in entropy is used to calculate the entropy at the rotor-outlet, s
2
. The value of
W
2
C
2
C
a2
2
2
C
2
Figure 5.3, velocity triangle for the stator inlet
Axial Flow Compressor Mean Line Design 5 Calculation process
55
this entropy rise is just an approximation. A new value for this will be calculated further
in to the calculations.
Stagnation properties
Geometry
Like for the inlet of the rotor the different radiuses is calculated with help from the area
and the definition of the mean radius. This value is a new value for the one that was
approximated in the beginning of module 2.1.
56
Rotor properties
An average value for the tip radius, mean radius and hub radius is used for calculating
the height of the rotor blade. Since one of the input design parameters is the aspect ratio,
i.e. H/c, the chord of the blade can also be calculated.
Reynolds number and AVDR are also calculated for the calculations that will follow.
Reynolds number is based on the inlet velocity and viscosity at the inlet of the rotor.
AVDR for the rotor is calculated because it is a definition that will be used when the
equivalent diffusion ratio, D
eq
, will be determined.
Rotor losses
The last step in the rotor is to calculate entropy rise due to the losses throughout the
rotor. In the beginning of the rotor calculation a good approximation was made for the
entropy rise. This must be corrected by calculating a true entropy rise. To see more in
detail on how this calculation is made see chapter 3 Losses.
5.3.4 Module 2 end
At this point the geometry of the rotor is fully defined and the calculation can now
proceed to the stator.
58
tan
cos
Static properties
There is no work done to the working fluid in the stator. This results in a constant
stagnation enthalpy throughout the stator passage. From this the static enthalpy can be
calculated based on the absolute velocity, C
3
.
As for the rotor, an approximation for the entropy rise must be made for the stator. This
will give the entropy at the stator-outlet. Later on in the calculation an accurate entropy
rise will be calculated.
From the entropy and the enthalpy, the fluid dynamic properties of the working fluid
can be found for the stator-outlet.
Stagnation properties
Geometry
Like for the rotor-inlet and the stator-inlet the different radiuses is calculated with help
from the area and the definition of the mean radius. This value of the radius at stator-
outlet is then used to update the approximated value at the beginning of the calculation
of the stator-outlet.
60
Stator losses
5.4.4 Module 3 end
The entire stage is now fully defined. This process is then repeated for the remaining
stages.
The next step in the calculation is to calculate the outlet guide vane.
5.5 Outlet Guide Vane, OGV
An outlet guide vane, OGV, is an extra stator after the compressor. Its main purpose is
to turn the flow so the whirl component decreases or gets eliminated. When entering the
combustion chamber one wants a smooth and controlled flow with no disturbances. The
calculation for the outlet guide vane is similar to the stator in the compressor.
Flow angles and velocities
If zero whirl is desirable then the axial velocity at the last stator-outlet is equal to the
absolute velocity at the OGV outlet.
Static properties
As before the stagnation enthalpy at the OGV outlet is equal to the stagnation enthalpy
at the outlet of the last stator. And again an entropy rise must me approximated since
this is unknown and is necessary for further calculations.
3
C
3
C
OGV
Figure 5.4, velocity triangle for the outlet guide vane
5 Calculation process Axial Flow Compressor Mean Line Design
62
Stagnation properties
Geometry
An approximation is used for the OGV radiuses. This approximation is that the radiuses
at the last stator-outlet are the same as for the OGV radiuses.
The entire compressor is now fully computed and the pressure ratio and the stage
reaction have converged. The next step is to determine the blade angles for the rotor
row and stator row.
64
guess
Figure 5.5, structure over the iteration procedure for the blade angles
65
6 Results
In this chapter a compressor is calculated and the results analyzed. In the following
tables, the input parameters are specified.
The compressor that will be calculated has a constant mean line design with a mass flow
of 122 kg/s. The desirable pressure ratio is 20 and it has 15 stages. A stage reaction of
0.55 is also set as one of the input variables.
Main specification
Type of compressor CMD
Mass flow 122
Number of stages 15
Pressure ratio 20
Rotational speed 6600
Stage reaction 0.55
Table 6.1, input parameter example for the main specifications
The detailed specifications are listed below in table 6.2. Here the diffusion factor is set
constant throughout the compressor, both for the rotors and the stators. The thickness
chord ratio and tip clearance are also set constant.
Detailed specification First stage Last stage
Tip clearance, /c 0.02 0.02
0 0
Aspect ratio, h/c 2.5 1
3.5 1
Thickness chord ratio, t/c 0.06 0.06
0.06 0.06
Axial velocity ratio, AVR 0.99 0.98
0.99 0.98
Diffusion factor, DF 0.45 0.45
0.45 0.45
First stage 5
th
stage
Blockage factor, BLK 0.98 0.88
Table 6.2, input parameter example for the detailed specifications
As for the loading, the first blade rows have the highest stress. Further in to the
compressor the stress on the blades will decrease.
66
68
Figure 6.3, Koch surge limit for this compressor example, with a change in pitch chord
ratio
0 2 4 6 8 10 12 14 16
0.35
0.4
0.45
0.5
0.55
Stage
S
t
a
t
i
c
p
r
e
s
s
u
r
e
r
i
s
e
c
o
e
f
f
i
c
i
e
n
t
C
h,max
C
h
69
7 LUAX-C
7.1 Structure of the program
In order to use these calculations for designing a preliminary design of a compressor a
GUI, Graphic User Interface, was created. This interface was made in MATLAB and is
called LUAX-C, Lund University Axial Flow Compressor.
The main calculation which calculates the whole compressor is divided into separate
sub programs, each program takes care of one part of the calculation, for example the
losses generated in the rotor/stator.
As discussed in chapter 4.1 Input parameters, a set of input parameters that specify
the running conditions and geometry is needed for the calculations. These input
parameters are placed in a text file. This because it is easier to make small and more
specific changes in the input parameters this way and the text file is compatible with
other computer programs as well. As for the input file, the result, output file, is also a
text file. In this all the results from the calculations that could be of use for further study
are displayed.
The communication between the GUI and the calculation and other post processing
programs are done with a type of databases. There are three different databases that are
generated by the main calculation.
x STG
x CompInfo
x OGV
In the first one, STG, the information for each stage is saved. Some of this
information can be the different velocities, angles, geometry etc. The second one,
CompInfo, consists of all the information about the compressor, for example
efficiency, power, mass flow, pressure ratio etc. The last one, OGV, consists of the
information about the outlet guide vane.
After the calculation is finished and the database is created the data is transferred to the
post processing. The post processing will create a text file which consists of all the
results from the database. It will also send information to the GUI so different graphs
and other demonstrations can be made to visualize the result.
7 LUAX-C Axial Flow Compressor Mean Line Design
70
72
All of these specifications are varied linearly throughout the compressor based on the
inlet and outlet values.
After all the input parameters are specified, an input file must be created. By pressing
Create Data File, the variations will be created and an input data file will be created.
If one wish to specify these parameters for each blade row separately, this is possible by
pressing Open/Edit, see Figure 7.2. This will open the input text file where it is
possible to make the changes that one wants to do. Table 7.1 shows which row in the
text file that represents which input parameter and the choices that can be made for each
parameter. After this, the text file must be saved since this is the input file for the
calculations.
Figure 7.3, input text file for LUAX-C
74
If the user wishes to study the surge limits, this is done by pressing Surge Graph, see
Figure 7.6. This opens a graph in which the user can see if the compressor is on the
limit of surge on a particular stage. This surge graph is based on Koch which is
discussed in this thesis.
Figure 7.6, Koch surge limit for this compressor example
76
References
[1] Saravanamutto, HIH, Rogers, GFC och Cohen, H. Gas Turbine Theory
Fifth Edition, Pearson Prentice Hall, 2001.
[2] Cumpsty, N.A. Compressor Aerodynamics, Krieger Publishing Company,
2004.
[3] Lakshminarayana, Budugur. Fluid Dynamics and Heat Transfer of
Turbomachinery, Wiley-Interscience, John Wiley & Sons, 1996.
[4] Howard, J.H.G. Axial Fan and Compressor Modeling. 2001.
[5] McKenzie, A.B. Axial Flow Fans and Compressors, Ashgate Publishing
Limited, 1997.
[6] Denton, J D. Cambridge Turbomachinery Course, Whittle Laboratory,
Deparment of Engineering, University of Cambridge, 2004.
[7] Hoffman, Joe D. Numerical Methods for Engineers and Scientists, Marcel
Dekker Inc.
[8] Wright, P I och Miller, D C. An Improved Compressor Performance
Prediction Model, ACGI,DIC,Rolls-Royce, Derby, 1991.
[9] Koch, C.C. Stalling Preuusre Rise Capability of Axial Flow Compressor
Stages, Aircraft Engine Group, General Electric Co., 1981.
[10] Walsh, P.P och Fletcher, P. Gas Turbine Performance, Blackwell Science,
1998.
[11] Genrup, Magnus. Degradation and Monitoring Tools for Gas and Steam
Turbines, Doctoral Thesis, Department of Heat and Power Engineering,
Lund Institute of Technology, Lund University, Sweden, 2005.
77
Appendix
A, polynomial coefficients for the graphs
A polynomial fitting method has been used to interpret the graphs that are used in this
thesis for the calculations. The different coefficients for each polynomial for each figure
are listed in the following tables.
a
4
a
3
a
2
a
1
a
0
-1.61839e-02 1.14774e-01 -2.66675e-01 2.62982e-01 -8.26097e-02
-2.08264e-02 1.48500e-01 -3.56939e-01 3.68490e-01 -1.30107e-01
-2.13465e-02 1.52219e-01 -3.66336e-01 3.78126e-01 -1.36535e-01
Table A.1, Polynomial coefficients for Figure 3.7
a
4
a
3
a
2
a
1
a
0
2.32625e02 -3.14825e02 1.60855e02 -3.66895e01 3.23881e00
1.85224e02 -2.58533e02 1.36001e02 -3.18679e01 2.86933e00
2.48570e01 -2.03045e01 3.12191e00 1.04984e00 -2.00381e-01
4.61697e01 -6.61454e01 3.57996e01 -8.62635e00 8.18792e-01
1.36794e01 -1.92343e01 1.01622e01 -2.36201e00 2.38135e-01
Table A.2, Polynomial coefficients for Figure 3.8
a
5
a
4
a
3
a
2
a
1
a
0
1.7779e-03 -1.9627e-02 9.1688e-02 -2.5166e-01 4.9160e-01 7.6431e-02
Table A.3, Polynomial coefficients for Figure 3.10
a
5
a
4
a
3
a
2
a
1
a
0
-5.35103e04 2.20418e04 -3.38124e03 2.42416e02 -1.00986e01 1.21683e00
Table A.4, Polynomial coefficients for Figure 3.11
a
5
a
4
a
3
a
2
a
1
a
0
5.1421e-01 -7.4519e-01 -2.2107e-01 9.6073e-01 -6.1567e-01 1.1191e00
Table A.5, Polynomial coefficients for Figure 3.12
78
For the interpretation of figure 3.13 a normal polynomial fitting was not feasible,
instead a function of the type
was used.
a b c
-101.8 -0.6767 1.041
Table A.5, coefficients for the function in Figure 3.11
B, MATLAB script for the calculations
B.1 Main Calculation
% Main Calculation for the compressor
%#####################################################################
%## ##
%## Main Calculation ##
%## ##
%## (c) Niclas Falck and Magnus Genrup 2008 ##
%## ##
%## Lund University/Dept of Energy Sciences ##
%## ##
%#####################################################################
function [STG,CompInfo,OGV] = compressorcalculation(filename);
%################# Converts textfile to a matrix ##########################
CompInputdata = createInputFile(filename);
%###################### Numerical settings ##############################
RLX_REACT = 0.8;
RLX_PR = 0.95;
%################### Import data from the input matrix ####################
N_stg = str2num(CompInputdata{5,1}); % number of stages in the compressor
PR_comp = str2num(CompInputdata{7,1}); % sets the desirable compressor ratio
P0_in = str2num(CompInputdata{3,1}); % absolute inlet pressure
T0_in = str2num(CompInputdata{4,1})-273.15; % absolute inlet temperature
RPM = str2num(CompInputdata{8,1}); % revolutions per minute
for k=1:N_stg % massflow variation
flow(k) = str2num(CompInputdata{6,k});
end
Alpha_in = str2num(CompInputdata{12,1});
PHI_in = str2num(CompInputdata{13,1});
HONT_in = str2num(CompInputdata{14,1}); % hub/tip
comp_type = CompInputdata{2,1};
SONC_type = CompInputdata{11,1};
set_REACT = str2num(CompInputdata{9,1});
if set_REACT == 1
for i=1:N_stg
Axial Flow Compressor Mean Line Design Appendix
79
80
82
Cm2(i) = Cm1(i)*AVR_rtr(i);
U2(i) = r_rms_2(i)*pi*RPM/30;
C_theta2(i) =
PSI(j,i)*U2(i)+(r_rms_1(i)/r_rms_2(i))*C_theta1(i); % N.B. Based on delH/U2^2
W_theta2(i) = U2(i)-C_theta2(i);
C2(i) = (Cm2(i)^2+C_theta2(i)^2)^0.5;
W2(i) = (Cm2(i)^2+W_theta2(i)^2)^0.5;
Alpha2(i) = atand(C_theta2(i)/Cm2(i));
Beta2(i) = atand(W_theta2(i)/Cm2(i));
dH_rtr(i) = W2(i)/W1(i); % Rotor deHaller #
%########## Station 2 static properties ###########
S2(i) = S1(i)+dS21(i);
I2(i) = I1(i); %I.e. constant rothalpy through a rotor
H2(i) = I2(i)-(W2(i)^2)/2+(U2(i)^2)/2;
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto,
LHV, y_SO2, y_H2O, y_CO2, y_N2, y_O2, y_Ar, y_He] = state('HS',H2(i),S2(i),0,1);
P2(i) = P;
T2(i) = T;
Cp2(i) = Cp;
rho2(i) = rho;
Visc2(i) = Visc;
kappa2(i) = kappa;
a2(i) = a;
MC2(i) = C2(i)/a2(i); % Absolute inlet Mach #
MCm2(i) = Cm2(i)/a2(i); % Relative inlet meridional Mach #
%############# Station 2 relative properties ##############
H02_rel(i) = H2(i)+ (W2(i)^2)/2; % Relative total enthalpy
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto,
LHV, y_SO2, y_H2O, y_CO2, y_N2, y_O2, y_Ar, y_He]=state('HS',H02_rel(i),S2(i),0,1);
P02_rel(i) = P;
T02_rel(i) = T;
%########### Station 2 total properties ###########
H02(i) = H2(i)+(C2(i)^2)/2; % Exit total enthalpy
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto,
LHV, y_SO2, y_H2O, y_CO2, y_N2, y_O2, y_Ar, y_He] = state('HS',H02(i),S2(i),0,1);
P02(i) = P;
T02(i) = T;
%################ Station 2 geometry ##############
area2(i) = flow(i)/(Cm2(i)*rho2(i)*BLK_stg(i));
if comp_type == 'CMD'
r_hub_2(i) = ((r_rms_2(i)^2)-(area2(i)/(2*pi)))^0.5;
r_tip_2(i) =((r_rms_2(i)^2)+(area2(i)/(2*pi)))^0.5;
r_rms_2_new(i) = r_rms_2(i);
elseif comp_type == 'CID'
r_hub_2(i) = r_hub(i);
r_rms_2_new(i) = ((r_hub_2(i)^2)+(area2(i)/(2*pi)))^0.5;
r_tip_2(i) =((r_rms_2_new(i)^2)+(area2(i)/(2*pi)))^0.5;
elseif comp_type == 'COD'
r_tip_2(i) = r_tip(i);
r_rms_2_new(i) = ((r_tip_2(i)^2)-(area2(i)/(2*pi)))^0.5;
r_hub_2(i) = ((r_rms_2_new(i)^2)-(area2(i)/(2*pi)))^0.5;
end
height2(i) = r_tip_2(i)-r_hub_2(i);
chord2(i) = height2(i)/AR_rtr(i);
RMS_rel_error = r_rms_2_new(i)/r_rms_2(i) - 1;
r_rms_2(i)= r_rms_2_new(i);
n_RMS = n_RMS+1;
if n_RMS > 50 %Emergency break
RMS_rel_error = 0;
warning('RMS radius Convergence Error');
end
Axial Flow Compressor Mean Line Design Appendix
83
84
r_hub_str(i) = ((r_rms_str(i)^2)-(area_str(i)/(2*pi)))^0.5;
r_tip_str(i) =((r_rms_str(i)^2)+(area_str(i)/(2*pi)))^0.5;
HONT_str(i) = r_hub_str(i)/r_tip_str(i);
height_str(i) = r_tip_str(i)-r_hub_str(i);
chord_str(i) = height_str(i)/AR_str(i);
Re_str(i) = C2(i)*chord_str(i)/Visc2(i); % Reynolds number
%# Stator Pitch-to-chord ratios and diffusion factors #
rel_ang_in = Alpha2(i);
rel_ang_out = Alpha3(i);
AVDR_str(i) = rho3(i)*Cm3(i)/(rho2(i)*Cm2(i));% Axial Velocity
Density Ratio for the stator
if strcmp(SONC_type,'Custom')==0
[SONC,SONC_Hearsey,SONC_McKenzie] =
SONC1(rel_ang_in,rel_ang_out,Cm2(i),Cm3(i),r_rms_2(i),r_rms_3(i),DF_str(i));
if strcmp(SONC_type,'DF')
SONC_str(i) = SONC;
elseif strcmp(SONC_type,'Hearsey')
SONC_str(i) = SONC_Hearsey;
elseif strcmp(SONC_type,'McKenzie')
SONC_str(i) = SONC_McKenzie;
end
end
[DF_lbl,Deq_star_lbl,Deq,Deq_star_ks] =
Deq_star1(rel_ang_in,rel_ang_out,Cm2(i),Cm3(i),r_rms_2(i),r_rms_3(i),SONC_rtr(i),TONC_st
r(i),AVDR_str(i),MCm2(i));
DF_lbl_str(i) = DF_lbl;
Deq_star_lbl_str(i) = Deq_star_lbl;
Deq_str(i) = Deq;
Deq_star_ks_str(i) = Deq_star_ks;
[Mcrit_Hearsey,Mcrit_Sch] =
MCRIT1(rel_ang_in,rel_ang_out,Cm2(i),SONC_str(i),TONC_str(i),kappa2(i));
Mcrit_Hearsey_str(i) = Mcrit_Hearsey;
Mcrit_Sch_str(i) = Mcrit_Sch;
%################## Stator entropy rise ###############
[OMEGA_p, OMEGA_ew, K_Re] =
WRTMLR(DF_lbl_str(i),Deq_str(i),dH_str(i),rel_ang_out,MC2(i),AR_str(i),EPSONC_str(i),Re_
str(i));
K_Re_str(i) = K_Re; % Correction factor for Reynolds number
OMEGA_p_str(i) = OMEGA_p;
OMEGA_ew_str(i) = OMEGA_ew;
OMEGA_str(i) = OMEGA_p+OMEGA_ew;
OMEGA_str(i) = OMEGA_str(i)*K_Re;
dP32(i) = OMEGA_str(i)*(P02(i)-P2(i)); % P0_3 - P0_2
dS32_new(i) = -R*log(1-(dP32(i))/P02(i)); %S_3 - S_2
dS32_rel_error = dS32_new(i)/dS32(i) - 1;
dS32(i) = dS32_new(i);
n_dS = n_dS+1;
if n_dS > 20 %Emergency break
dS21_rel_error = 0;
warning('entropy rise Convergence Error on stator');
end
end % End of entropy loop
end % for all stages
%##############################################################
%############### outlet guide vane, OGV #######################
dS_OGV = dS32(N_stg); % initial guess value
dS_OGV_rel_error = 1;
n_dS = 0; % Noff iteration steps
while abs(dS_OGV_rel_error) > 10^(-4) % Solves for correct entropy rise
Appendix Axial Flow Compressor Mean Line Design
86
AVR_OGV = 1.0;
Cm_OGV = Cm3(N_stg)*AVR_OGV;
C_OGV = Cm_OGV;
%########### OGV static properties ##########
H0_OGV = H03(N_stg); % Constant total enthalpy through the OGV
H_OGV = H0_OGV-(C_OGV^2)/2;
S_OGV = S3(N_stg)+dS_OGV;
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV,
y_SO2, y_H2O, y_CO2, y_N2, y_O2, y_Ar, y_He]=state('HS',H_OGV,S_OGV,0,1);
P_OGV = P;
T_OGV = T;
Cp_OGV = Cp;
rho_OGV = rho;
Visc_OGV = Visc;
kappa_OGV = kappa;
a_OGV = a;
MCm_OGV = Cm_OGV/a_OGV;
MC_OGV = C_OGV/a_OGV;% Absolute inlet Mach #
dH_OGV = C_OGV/C3(N_stg);
%############ OGV total properties ##########
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV,
y_SO2, y_H2O, y_CO2, y_N2, y_O2, y_Ar, y_He]=state('HS',H0_OGV,S_OGV,0,1);
P0_OGV = P;
T0_OGV = T;
%############ OGV geometry ##########
r_rms_OGV = r_rms_3(N_stg);
r_tip_OGV = r_tip_3(N_stg);
r_hub_OGV = r_hub_3(N_stg);
HONT_OGV = r_hub_OGV/r_tip_OGV;
height_OGV = r_tip_OGV-r_hub_OGV;
chord_OGV = height_OGV/AR_str(i);
Re_OGV = C_OGV*chord_OGV/Visc_OGV; % Reynolds number
rel_ang_in = Alpha3(N_stg);
rel_ang_out = 0;
AVDR_OGV = rho_OGV*Cm_OGV/(rho3(N_stg)*Cm3(N_stg));% Axial Velocity
Density Ratio for the stator
if strcmp(SONC_type,'Custom')==0
[SONC_OGV,SONC_OGV_Hearsey,SONC_OGV_McKenzie] =
SONC1(rel_ang_in,rel_ang_out,Cm3(N_stg),Cm_OGV,r_rms_3(N_stg),r_rms_OGV,DF_str(N_stg));
if strcmp(SONC_type,'DF')
SONC_OGV = SONC_OGV;
elseif strcmp(SONC_type,'Hearsey')
SONC_OGV = SONC_OGV_Hearsey;
elseif strcmp(SONC_type,'McKenzie')
SONC_OGV = SONC_OGV_McKenzie;
end
else
SONC_OGV = SONC_str(N_stg);
end
[DF_lbl,Deq_star_lbl,Deq,Deq_star_ks] =
Deq_star1(rel_ang_in,rel_ang_out,Cm3(N_stg),Cm_OGV,r_rms_3(N_stg),r_rms_OGV,SONC_OGV,TON
C_str(N_stg),AVDR_OGV,MCm_OGV);
DF_lbl_OGV = DF_lbl;
Deq_star_lbl_OGV = Deq_star_lbl;
Deq_OGV = Deq;
Deq_star_ks_OGV = Deq_star_ks;
[Mcrit_Hearsey,Mcrit_Sch] =
MCRIT1(rel_ang_in,rel_ang_out,Cm3(N_stg),SONC_OGV,TONC_str(N_stg),kappa3(N_stg));
Mcrit_Hearsey_OGV = Mcrit_Hearsey;
Mcrit_Sch_OGV = Mcrit_Sch;
%################## OGV entropy rise ###############
Axial Flow Compressor Mean Line Design Appendix
87
[OMEGA_p,OMEGA_ew, K_Re] =
WRTMLR(DF_lbl_OGV,Deq_OGV,dH_OGV,rel_ang_out,MC3(N_stg),AR_str(N_stg),EPSONC_str(i),Re_O
GV);
K_Re_OGV = K_Re; % Correction factor for Reynolds number
OMEGA_p_OGV = OMEGA_p;
OMEGA_ew_OGV = OMEGA_ew;
OMEGA_OGV = OMEGA_p+OMEGA_ew;
OMEGA_OGV = OMEGA_OGV*K_Re;
dP_OGV = OMEGA_OGV*(P03(N_stg)-P3(N_stg)); % P0_3 - P0_3
dS_OGV_new = -R*log(1-(dP_OGV)/P03(N_stg)); %S_OGV - S_3
dS_OGV_rel_error = dS_OGV_new/dS_OGV - 1;
dS_OGV = dS_OGV_new;
n_dS = n_dS+1;
if n_dS > 20 %Emergency break
dS_OGV_rel_error = 0;
warning('entropy rise Convergence Error on stator');
end
end % End of entropy loop for OGV
if set_REACT == 1
%#### Calculates the degree of reaction and the slope #####
for k=1:N_stg
REACT(k) = (H2(k)-H1(k))/(H03(k)-H01(k));
REACT_slope(k) = Cm1(i)/U1(i)*AVR_rtr(i)*pi/(180*cosd(Alpha3(k))^2);
end
%############### Calculates new Alpha3 values #############
for k=2:N_stg
REACT_error(k) = REACT(k)-REACT_stg(k);
REACT_rel_error(k) = REACT_stg(k)/REACT(k)-1;
Alpha3(k-1) = Alpha3(k-1)+REACT_error(k)/REACT_slope(k)*RLX_REACT;
end
%############### Evaluate RMS error for reaction ##########
REACT_rel_RMS_error = 0;
for k=1:N_stg
REACT_rel_RMS_error = REACT_rel_RMS_error+REACT_rel_error(k)^2;
end
if abs(REACT_rel_RMS_error) < 10^(-4)
conv_REACT = 1; % the itertation has converged
end
n_REACT = n_REACT+1;
if n_REACT > 50 %Emergency break
REACT_rel_RMS_error = 0;
warning('REACT Convergence Error');
end
else
conv_REACT = 1;
for k=1:N_stg
REACT_stg(k) = (H2(k)-H1(k))/(H03(k)-H01(k));
end
end
end
%####################### End of REACT loop ########################
%##################################################################
PR(j) = P0_OGV/P01(1); % calculates the pressure ratio
%################ breaks the pressure ratio loop ##################
if conv_PR == 1
break
Appendix Axial Flow Compressor Mean Line Design
88
end
end % end of the "two" calculations for obtaining derivative
%############## calculates the PR slope if not converged ##############
if conv_PR == 0
PR_slope = (PR(1)-PR(2))/(mean(PSI(1,:))-mean(PSI(2,:))); % the numerical
derivative dPR/dPSI
PR_rel_error_level = PR_comp/PR(1)-1;
PR_error_level = PR_comp-PR(1);
%##################### Calculates new PSI values ######################
for i=1:N_stg
PSI(1,i) = PSI(1,i)+PR_error_level/PR_slope*RLX_PR; % calculate new PSI
numbers
PSI(2,i) = PSI(1,i)*factor;
end
n_PR = n_PR+1;
if n_PR>20 % Emergency break
PR_error_level = 0;
warning('Pressure ratio Convergence Error');
end
end
end
%####################### End of PR loop ################################
%##########################################################################
pressure_ratio = P_OGV/P01(1);
%########################## Blade angles ##################################
for i = 1:N_stg
spacing_rtr(i) = chord_rtr(i)*SONC_rtr(i);
diameter_rtr(i) = 2*pi*r_rms_rtr(i);
numb_blades_rtr(i) = diameter_rtr(i)/spacing_rtr(i);
numb_blades_rtr(i) = ceil(numb_blades_rtr(i));
spacing_str(i) = chord_str(i)*SONC_str(i);
diameter_str(i) = 2*pi*r_rms_str(i);
numb_blades_str(i) = diameter_str(i)/spacing_str(i);
numb_blades_str(i) = ceil(numb_blades_str(i));
%############################## Rotor angles ##########################
rel_ang_in = Beta1(i);
rel_ang_out = Beta2(i);
SONC = SONC_rtr(i);
TONC = TONC_rtr(i);
M = MW1(i);
[incidence_angle,deviation_angle,camber_angle,attack_angle,stagger_angle,blade_angle_in,
blade_angle_out] = Bladeangles(rel_ang_in,rel_ang_out,SONC,TONC,M);
incidence_angle_rtr(i) = incidence_angle;
deviation_angle_rtr(i) = deviation_angle;
camber_angle_rtr(i) = camber_angle;
attack_angle_rtr(i) = attack_angle;
stagger_angle_rtr(i) = stagger_angle;
blade_angle_in_rtr(i) = blade_angle_in;
blade_angle_out_rtr(i) = blade_angle_out;
%########################### Stator angles ############################
rel_ang_in = Alpha2(i);
rel_ang_out = Alpha3(i);
SONC = SONC_str(i);
TONC = TONC_str(i);
M = MC2(i);
[incidence_angle,deviation_angle,camber_angle,attack_angle,stagger_angle,blade_angle_in,
blade_angle_out] = Bladeangles(rel_ang_in,rel_ang_out,SONC,TONC,M);
incidence_angle_str(i) = incidence_angle;
deviation_angle_str(i) = deviation_angle;
camber_angle_str(i) = camber_angle;
Axial Flow Compressor Mean Line Design Appendix
89
attack_angle_str(i) = attack_angle;
stagger_angle_str(i) = stagger_angle;
blade_angle_in_str(i) = blade_angle_in;
blade_angle_out_str(i) = blade_angle_out;
%########################### Tip-housing angle ########################
tip_angle_rtr(i) = atand((r_tip_1(i)-
r_tip_2(i))/(chord_rtr(i)*cosd(stagger_angle_rtr(i))));
tip_angle_str(i) = atand((r_tip_2(i)-
r_tip_3(i))/(chord_str(i)*cosd(stagger_angle_str(i))));
end
%##################### Blade angles for the OGV ###########################
spacing_OGV = chord_OGV*SONC_OGV;
diameter_OGV = 2*pi*r_rms_OGV;
numb_blades_OGV = diameter_OGV/spacing_OGV;
numb_blades_OGV = ceil(numb_blades_OGV);
rel_ang_in = Alpha3(N_stg);
rel_ang_out = 0;
SONC = SONC_OGV;
TONC = TONC_str(N_stg);
M = MC3(N_stg);
[incidence_angle,deviation_angle,camber_angle,attack_angle,stagger_angle,blade_angle_in,
blade_angle_out] = Bladeangles(rel_ang_in,rel_ang_out,SONC,TONC,M);
incidence_angle_OGV = incidence_angle;
deviation_angle_OGV = deviation_angle;
camber_angle_OGV = camber_angle;
attack_angle_OGV = attack_angle;
stagger_angle_OGV = stagger_angle;
blade_angle_in_OGV = blade_angle_in;
blade_angle_out_OGV = blade_angle_out;
%########################## Misc. properties ##############################
Power=0; %Resetting stage power summation
for i=1:N_stg
%####################### static pressure rise #########################
Cp_rtr(i) = (P2(i)-P1(i))/(P01_rel(i)-P1(i));
Cp_str(i) = (P3(i)-P2(i))/(P02(i)-P2(i));
%######################### Stage pressure ratio #######################
PR_stg(i) = P03(i)/P01(i);
%###################### Accumulated pressure ratio ####################
PR_acc(i) = P03(i)/P01(1);
%######################### Stage temp increase ########################
dT0_stg(i) = T03(i)-T01(i);
%#################### Polytropic stage efficiency #####################
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O,
y_CO2, y_N2, y_O2, y_Ar, y_He]=state('PT',1,T03(i),0,1);
aa = S; % a dummie variable
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O,
y_CO2, y_N2, y_O2, y_Ar, y_He]=state('PT',1,T01(i),0,1);
bb = S; % a dummie variable
poly_eff_stg(i) = R*log(P03(i)/P01(i))/(aa-bb);
%################# Accumulated polytropic efficiency ##################
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O,
y_CO2, y_N2, y_O2, y_Ar, y_He]=state('PT',1,T03(i),0,1);
aa = S; % a dummie variable
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O,
y_CO2, y_N2, y_O2, y_Ar, y_He]=state('PT',1,T01(1),0,1);
bb = S; % a dummie variable
Appendix Axial Flow Compressor Mean Line Design
90
poly_eff_acc(i) = R*log(P03(i)/P01(1))/(aa-bb);
%###################### Isentropic stage efficiency ###################
P = P03(i);
S = S01(i);
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O,
y_CO2, y_N2, y_O2, y_Ar, y_He]=state('PS',P,S,0,1);
H03s = H; % the isentropic enthalpy
isen_eff_stg(i) = (H03s-H01(i))/(H03(i)-H01(i));
%##################### Stage flow coefficient #########################
PHI_stg(i) = (Cm1(i)+Cm2(i))/(U1(i)+U2(i));
%####################### Compressor Power ############################
Power=Power+flow(i)*(H03(i)-H01(i))/1000;
end
%############################ Stall and Surge #############################
%##########################################################################
for i =1:N_stg
%##################### constants/variables ######################
% staggered spacing
g_rtr =
pi*r_rms_rtr(i)*(cosd(blade_angle_in_rtr(i))+cosd(blade_angle_out_rtr(i)))/numb_blades_r
tr(i);
g_str =
pi*r_rms_str(i)*(cosd(blade_angle_in_str(i))+cosd(blade_angle_out_str(i)))/numb_blades_s
tr(i);
g = (W1(i)^2*g_rtr + C2(i)^2*g_str)/(W1(i)^2+C2(i)^2); % average value of g in the
stage
% L/g2, L is meanline length of circular-arc profile
LONG2_rtr =
(1/SONC_rtr(i))/(cosd(blade_angle_out_rtr(i))*cosd(camber_angle_rtr(i)/2));
LONG2_str =
(1/SONC_str(i))/(cosd(blade_angle_out_str(i))*cosd(camber_angle_str(i)/2));
LONG2 = (W1(i)^2*LONG2_rtr + C2(i)^2*LONG2_str)/(W1(i)^2+C2(i)^2); % average value
of L/g2 in the stage
% endwall space
epsilon_rtr = EPSONC_rtr(i)*chord_rtr(i);
epsilon_str = EPSONC_str(i)*chord_str(i);
epsilon = (W1(i)^2*epsilon_rtr + C2(i)^2*epsilon_str)/(W1(i)^2+C2(i)^2);
% epsilon/g
EPSONG = epsilon/g;
%Reynolds number
Re = (W1(i)^2*Re_rtr(i) + C2(i)^2*2*Re_str(i))/(W1(i)^2+C2(i)^2);
% axial spacing
axial_spacing_rtr = 0.2*chord_rtr(i);
axial_spacing_str = 0.2*chord_str(i);
axial_spacing = (W1(i)^2*axial_spacing_rtr +
C2(i)^2*axial_spacing_str)/(W1(i)^2+C2(i)^2);
dZ = axial_spacing;
%staggered spacing
s_rtr = spacing_rtr(i);
s_str = spacing_str(i);
s = (W1(i)^2*spacing_rtr(i) + C2(i)^2*spacing_str(i))/(W1(i)^2+C2(i)^2);
dZONS = dZ/s; % dZ/s
%################## F_ef #################
Axial Flow Compressor Mean Line Design Appendix
91
% rotor
U_in = U1(i);
C_in = C1(i);
W_rtr_in = W1(i);
if (Alpha1(i)+Beta1(i)) >= 90
V_min = C1(i)*sind(Alpha1(i)+Beta1(i));
else
V_min = C1(i);
end
F_ef_rtr = (1+2.5*V_min^2+0.5*U_in^2)/(4*C_in^2);
% stator
U_in = U2(i);
C_in = C2(i);
V_str_in = C2(i);
if (Alpha2(i)+Beta2(i)) >= 90
V_min = C2(i)*sind(Alpha2(i)+Beta2(i));
else
V_min = C2(i);
end
F_ef_str = (1+2.5*V_min^2+0.5*U_in^2)/(4*C_in^2);
% average
F_ef(i) = (W1(i)^2*F_ef_rtr + C2(i)^2*F_ef_str)/(W1(i)^2+C2(i)^2);
%######################## ChD ###############################
x = LONG2;
%polynomial coefficients
coeff_Ch_D = [0.001777942251246
-0.019627519528419
0.091687954954062
-0.251659185450453
0.491601357182957
0.076431045899622];
Ch_D(i) = 0;
for j=1:6
Ch_D(i) = Ch_D(i)+coeff_Ch_D(j)*(x)^(6-j); % evaluate the polynomial
end
%######################## (Ch/ChD)_eps ###############################
x = EPSONG; % epsilon/g
%polynomial coefficients
coeff_Ch_eps = [-53510.30317191636
22041.80905688297
-3381.24369820182
242.41566524838544
-10.098550480478846
1.216825975980701];
Ch_eps(i) = 0;
for j=1:6
Ch_eps(i) = Ch_eps(i)+coeff_Ch_eps(j)*(x)^(6-j); % evaluate the polynomial
end
%######################## (Ch/ChD)_dZ ###############################
x = dZONS; % dZ/S
%polynomial coefficients
coeff_Ch_dZ = [0.514206502798114
-0.745186356821405
-0.221066436780794
0.960732185823537
-0.615664604922058
1.119049824148622];
Ch_dZ(i) = 0;
for j=1:6
Ch_dZ(i) = Ch_dZ(i)+coeff_Ch_dZ(j)*(x)^(6-j); % evaluate the polynomial
Appendix Axial Flow Compressor Mean Line Design
92
end
%######################## (Cp/CpD)_Re ###############################
x = Re;
% coefficients
a = -107.8;
b = -0.6767;
c = 1.041;
Ch_Re(i) = a*x^b+c;
%##################################################
Ch_max(i) = F_ef(i)*Ch_D(i)*Ch_Re(i)*Ch_dZ(i)*Ch_eps(i);
%#################### Ch #####################
kappa_mean = (kappa1(i)+kappa3(i))/2;
Cp_mean = (Cp1(i)+Cp3(i))/2;
aa = Cp_mean*(T1(i)+273.15)*((P3(i)/P1(i))^((kappa_mean-1)/kappa_mean)-1);
bb = (U2(i)^2-U1(i)^2)/2;
cc = (W1(i)^2+C2(i)^2)/2;
Ch(i) = (aa-bb)/cc;
omega(i) = Ch(i)/Ch_max(i);
end
%########################## Polytropic efficency ##########################
P_ref = 1; % a reference pressure for the calculation
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O, y_CO2,
y_N2, y_O2, y_Ar, y_He]=state('PT',P_ref,T03(N_stg),0,1);
aa = S; % a dummie variable
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O, y_CO2,
y_N2, y_O2, y_Ar, y_He]=state('PT',P_ref,T01(1),0,1);
bb = S; % a dummie variable
poly_eff = R*log(P03(N_stg)/P01(1))/(aa-bb);
%########################## Isentropic efficency ##########################
P = P3(N_stg);
S = S3(1);
[P, T, H, S, Cp, rho, Visc, lambda, kappa, R, a, crit, FARsto, LHV, y_SO2, y_H2O, y_CO2,
y_N2, y_O2, y_Ar, y_He]=state('PS',P,S,0,1);
H2s = H; % the isentropic enthalpy
isen_eff = (H2s-H1(1))/(H3(N_stg)-H1(1));
%############################# Compressor cost ############################
mean_diameter = r_rms_1(1)+r_rms_3(N_stg);
comp_cost = 1.13*2625*(N_stg^1.155 * PR_comp^0.775 * mean_diameter^0.489 + 14.25);
%########################### Compressor Length ############################
Comp_length = 0;
for i=1:N_stg
Comp_length = Comp_length + chord_rtr(i)*cosd(stagger_angle_rtr(i));
Comp_length = Comp_length + chord_rtr(i)*0.2;
Comp_length = Comp_length + chord_str(i)*cosd(stagger_angle_str(i));
Comp_length = Comp_length + chord_str(i)*0.2;
end
Comp_length = Comp_length - chord_str(N_stg)*0.2;
Comp_angle = atand((r_tip_1(1)-r_tip_3(N_stg))/Comp_length);
%############ Creates a structure of a properties and values #############
Axial Flow Compressor Mean Line Design Appendix
93
CompInfo.comp_name = CompInputdata{1,1};
CompInfo.type = comp_type;
CompInfo.P0_in = P0_in;
CompInfo.T0_in = T0_in;
CompInfo.PR_comp = PR_comp;
CompInfo.N_stg = N_stg;
CompInfo.RPM = RPM;
CompInfo.Alpha_in = Alpha_in;
CompInfo.PHI_in = PHI_in;
CompInfo.HONT_in = HONT_in;
CompInfo.poly_eff = poly_eff;
CompInfo.isen_eff = isen_eff;
CompInfo.comp_cost = comp_cost;
CompInfo.area_in = area_in;
CompInfo.M_tip_in = M_tip_in;
CompInfo.Power = Power;
CompInfo.Comp_length = Comp_length;
CompInfo.Comp_angle = Comp_angle;
OGV.Cm = Cm_OGV;
OGV.C = C_OGV;
OGV.H0 = H0_OGV;
OGV.H = H_OGV;
OGV.S = S_OGV;
OGV.P = P_OGV;
OGV.T = T_OGV;
OGV.Cp = Cp_OGV;
OGV.rho = rho_OGV;
OGV.Visc = Visc_OGV;
OGV.kappa = kappa_OGV;
OGV.a = a_OGV;
OGV.P0 = P0_OGV;
OGV.T0 = T0_OGV;
OGV.MCm = MCm_OGV;
OGV.MC = MC3(N_stg);
OGV.dH = dH_OGV;
OGV.r_rms = r_rms_OGV;
OGV.r_tip = r_tip_OGV;
OGV.r_hub = r_hub_OGV;
OGV.HONT = HONT_OGV;
OGV.height = height_OGV;
OGV.chord = chord_OGV;
OGV.Re = Re_OGV;
OGV.SONC = SONC_OGV;
OGV.DF_lbl = DF_lbl_OGV;
OGV.Deq_star_lbl = Deq_star_lbl_OGV;
OGV.Deq = Deq_OGV;
OGV.Deq_star_ks = Deq_star_ks_OGV;
OGV.Mcrit_Hearsey = Mcrit_Hearsey_OGV;
OGV.Mcrit_Sch = Mcrit_Sch_OGV;
OGV.OMEGA_p = OMEGA_p_OGV;
OGV.OMEGA_ew = OMEGA_ew_OGV;
OGV.numb_blades = numb_blades_OGV;
OGV.incidence_angle = incidence_angle_OGV;
OGV.deviation_angle = deviation_angle_OGV;
OGV.camber_angle = camber_angle_OGV;
OGV.attack_angle = attack_angle_OGV;
OGV.stagger_angle = stagger_angle_OGV;
OGV.blade_angle_in = blade_angle_in_OGV;
OGV.blade_angle_out = blade_angle_out_OGV;
for i = 1:N_stg
STG(i).Alpha1 = Alpha1(i);
STG(i).Alpha2 = Alpha2(i);
STG(i).Alpha3 = Alpha3(i);
STG(i).Beta1 = Beta1(i);
STG(i).Beta2 = Beta2(i);
STG(i).C1 = C1(i);
STG(i).C2 = C2(i);
STG(i).C3 = C3(i);
STG(i).W1 = W1(i);
STG(i).W2 = W2(i);
STG(i).Cm1 = Cm1(i);
STG(i).Cm2 = Cm2(i);
Appendix Axial Flow Compressor Mean Line Design
94
STG(i).Cm3 = Cm3(i);
STG(i).U1 = U1(i);
STG(i).U2 = U2(i);
STG(i).C_theta1 = C_theta1(i);
STG(i).C_theta2 = C_theta2(i);
STG(i).C_theta3 = C_theta3(i);
STG(i).W_theta1 = W_theta1(i);
STG(i).W_theta2 = W_theta2(i);
STG(i).MW1 = MW1(i);
STG(i).MC2 = MC2(i);
STG(i).Mcrit_Hearsey_rtr = Mcrit_Hearsey_rtr(i);
STG(i).Mcrit_Sch_rtr = Mcrit_Sch_rtr(i);
STG(i).Mcrit_Hearsey_str = Mcrit_Hearsey_str(i);
STG(i).Mcrit_Sch_str = Mcrit_Sch_str(i);
STG(i).a1 = a1(i);
STG(i).a2 = a2(i);
STG(i).a3 = a3(i);
STG(i).kappa1 = kappa1(i);
STG(i).kappa2 = kappa2(i);
STG(i).kappa3 = kappa3(i);
STG(i).Cp1 = Cp1(i);
STG(i).Cp2 = Cp2(i);
STG(i).Cp3 = Cp3(i);
STG(i).rho1 = rho1(i);
STG(i).rho2 = rho2(i);
STG(i).rho3 = rho3(i);
STG(i).visc1 = Visc1(i);
STG(i).visc2 = Visc2(i);
STG(i).visc3 = Visc3(i);
STG(i).P1 = P1(i);
STG(i).P2 = P2(i);
STG(i).P3 = P3(i);
STG(i).P01 = P01(i);
STG(i).P02 = P02(i);
STG(i).P03 = P03(i);
STG(i).T1 = T1(i);
STG(i).T2 = T2(i);
STG(i).T3 = T3(i);
STG(i).T01 = T01(i);
STG(i).T02 = T02(i);
STG(i).T03 = T03(i);
STG(i).H1 = H1(i);
STG(i).H2 = H2(i);
STG(i).H3 = H3(i);
STG(i).H01 = H01(i);
STG(i).H02 = H02(i);
STG(i).H03 = H03(i);
STG(i).S1 = S1(i);
STG(i).S2 = S2(i);
STG(i).S3 = S3(i);
STG(i).S01 = S1(i);
STG(i).S02 = S2(i);
STG(i).S03 = S3(i);
STG(i).EPSONC_rtr = EPSONC_rtr(i);
STG(i).EPSONC_str = EPSONC_str(i);
STG(i).SONC_rtr = SONC_rtr(i);
STG(i).SONC_str = SONC_str(i);
STG(i).HONT_rtr = HONT_rtr(i);
STG(i).HONT_str = HONT_str(i);
STG(i).TONC_rtr = TONC_rtr(i);
STG(i).TONC_str = TONC_str(i);
STG(i).AR_rtr = AR_rtr(i);
STG(i).AR_str = AR_str(i);
STG(i).chord_rtr = chord_rtr(i);
STG(i).chord_str = chord_str(i);
STG(i).height_rtr = height_rtr(i);
STG(i).height_str = height_str(i);
STG(i).DF_rtr = DF_lbl_rtr(i);
STG(i).DF_str = DF_lbl_str(i);
STG(i).Deq_rtr = Deq_rtr(i);
STG(i).Deq_str = Deq_str(i);
STG(i).Deq_star_lbl_rtr = Deq_star_lbl_rtr(i);
STG(i).Deq_star_lbl_str = Deq_star_lbl_str(i);
STG(i).Deq_star_ks_rtr = Deq_star_ks_rtr(i);
STG(i).Deq_star_ks_str = Deq_star_ks_str(i);
STG(i).dH_rtr = dH_rtr(i);
STG(i).dH_str = dH_str(i);
Axial Flow Compressor Mean Line Design Appendix
95
STG(i).dS_rtr = dS21(i);
STG(i).dS_str = dS32(i);
STG(i).area1 = area1(i);
STG(i).area2 = area2(i);
STG(i).area3 = area3(i);
STG(i).Re_rtr = Re_rtr(i);
STG(i).Re_str = Re_str(i);
STG(i).r_tip_1 = r_tip_1(i);
STG(i).r_tip_2 = r_tip_2(i);
STG(i).r_tip_3 = r_tip_3(i);
STG(i).r_hub_1 = r_hub_1(i);
STG(i).r_hub_2 = r_hub_2(i);
STG(i).r_hub_3 = r_hub_3(i);
STG(i).r_rms_1 = r_rms_1(i);
STG(i).r_rms_2 = r_rms_2(i);
STG(i).r_rms_3 = r_rms_3(i);
STG(i).incidence_angle_rtr = incidence_angle_rtr(i);
STG(i).deviation_angle_rtr = deviation_angle_rtr(i);
STG(i).camber_angle_rtr = camber_angle_rtr(i);
STG(i).attack_angle_rtr = attack_angle_rtr(i);
STG(i).stagger_angle_rtr = stagger_angle_rtr(i);
STG(i).turning_rtr = Beta1(i)-Beta2(i);
STG(i).blade_angle_in_rtr = blade_angle_in_rtr(i);
STG(i).blade_angle_out_rtr = blade_angle_out_rtr(i);
STG(i).incidence_angle_str = incidence_angle_str(i);
STG(i).deviation_angle_str = deviation_angle_str(i);
STG(i).camber_angle_str = camber_angle_str(i);
STG(i).attack_angle_str = attack_angle_str(i);
STG(i).stagger_angle_str = stagger_angle_str(i);
STG(i).turning_str = Alpha2(i)-Alpha3(i);
STG(i).blade_angle_in_str = blade_angle_in_str(i);
STG(i).blade_angle_out_str = blade_angle_out_str(i);
STG(i).tip_angle_rtr = tip_angle_rtr(i);
STG(i).tip_angle_str = tip_angle_str(i);
STG(i).spacing_rtr = spacing_rtr(i);
STG(i).numb_blades_rtr = numb_blades_rtr(i);
STG(i).spacing_str = spacing_str(i);
STG(i).numb_blades_str = numb_blades_str(i);
STG(i).PR = PR_stg(i);
STG(i).PR_acc = PR_acc(i);
STG(i).React = REACT_stg(i);
STG(i).PSI = PSI(1,i);
STG(i).PHI = PHI_stg(i);
STG(i).dT0 = dT0_stg(i);
STG(i).dS = dS21(i)+dS32(i);
STG(i).OMEGA_p_rtr = OMEGA_p_rtr(i);
STG(i).OMEGA_ew_rtr = OMEGA_ew_rtr(i);
STG(i).OMEGA_p_str = OMEGA_p_str(i);
STG(i).OMEGA_ew_str = OMEGA_ew_str(i);
STG(i).poly_eff = poly_eff_stg(i);
STG(i).poly_eff_acc = poly_eff_acc(i);
STG(i).isen_eff = isen_eff_stg(i);
STG(i).flow = flow(i);
STG(i).Ch = Ch(i);
STG(i).Ch_max = Ch_max(i);
STG(i).omega = omega(i);
end
96
98
100
102
Appendix C
A result file from the program LUAX-C based on the input parameters set in chapter 6
Result are shown on the following pages.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
|
L
U
A
X
-
C
|
|
V
e
r
s
i
o
n
1
.
0
|
|
N
i
c
l
a
s
F
a
l
c
k
&
M
a
g
n
u
s
G
e
n
r
u
p
|
|
2
0
0
8
|
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
N
a
m
e
:
C
o
m
p
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
_
1
2
-
F
e
b
-
2
0
0
8
1
3
:
3
7
:
5
8
T
y
p
e
:
C
o
n
t
s
t
a
n
t
M
e
a
n
R
a
d
i
u
s
P
r
e
s
s
u
r
e
r
a
t
i
o
:
2
0
N
u
m
b
e
r
o
f
s
t
a
g
e
s
:
1
5
I
n
l
e
t
m
a
s
s
f
l
o
w
:
1
2
2
k
g
/
s
R
o
t
a
t
i
o
n
a
l
s
p
e
e
d
:
6
6
0
0
r
p
m
A
m
b
i
e
n
t
p
r
e
s
s
u
r
e
:
1
b
a
r
A
m
b
i
e
n
t
t
e
m
p
e
r
a
t
u
r
e
:
1
5
C
=
=
=
=
=
C
o
m
p
r
e
s
s
o
r
P
e
r
f
o
r
m
a
n
c
e
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
o
l
y
t
r
o
p
i
c
e
f
f
i
c
i
e
n
c
y
:
9
1
.
8
0
%
I
s
e
n
t
r
o
p
i
c
e
f
f
i
c
i
e
n
c
y
:
8
9
.
5
5
%
T
e
m
p
e
r
a
t
u
r
e
r
i
s
e
:
4
2
8
.
7
K
I
n
l
e
t
M
a
c
h
@
t
i
p
:
1
.
0
8
m
a
s
s
f
l
o
w
@
3
0
0
0
:
5
9
0
.
5
k
g
/
s
s
p
e
c
i
f
i
c
m
a
s
s
f
l
o
w
:
2
3
1
.
4
k
g
/
(
s
m
^
2
)
C
o
m
p
r
e
s
s
o
r
c
o
s
t
:
6
7
6
0
0
0
C
o
m
p
r
e
s
s
o
r
p
o
w
e
r
:
5
4
.
1
3
M
W
=
=
=
=
=
K
o
c
h
S
u
r
g
e
l
i
m
i
t
=
=
=
=
=
S
t
a
g
e
1
2
3
4
5
6
7
8
9
1
0
1
1
1
2
1
3
1
4
1
5
C
h
0
.
3
8
1
0
.
4
1
0
0
.
4
0
8
0
.
4
0
6
0
.
4
0
6
0
.
4
1
2
0
.
4
1
9
0
.
4
2
5
0
.
4
3
1
0
.
4
3
5
0
.
4
3
5
0
.
4
3
6
0
.
4
3
7
0
.
4
3
9
0
.
4
4
8
C
h
_
m
a
x
0
.
3
9
1
0
.
4
0
4
0
.
4
0
6
0
.
4
0
7
0
.
4
1
0
0
.
4
1
9
0
.
4
2
8
0
.
4
3
8
0
.
4
4
7
0
.
4
5
5
0
.
4
5
9
0
.
4
6
4
0
.
4
7
2
0
.
4
8
1
0
.
5
0
2
C
h
/
C
h
_
m
a
x
0
.
9
7
4
1
.
0
1
5
1
.
0
0
6
0
.
9
9
9
0
.
9
9
0
0
.
9
8
5
0
.
9
7
8
0
.
9
7
1
0
.
9
6
4
0
.
9
5
6
0
.
9
4
8
0
.
9
3
9
0
.
9
2
7
0
.
9
1
2
0
.
8
9
2
=
=
=
=
=
S
T
A
G
E
1
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
4
2
0
0
.
5
5
0
1
2
2
0
.
3
9
1
0
.
6
4
7
3
2
.
8
7
2
8
.
0
3
1
0
.
9
2
6
0
.
9
2
2
0
.
9
2
6
0
.
3
8
1
0
.
3
9
1
0
.
9
7
4
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
5
2
8
0
.
4
2
1
0
.
2
7
4
2
9
0
.
7
0
1
8
8
.
9
5
1
9
5
.
6
2
3
0
5
.
5
1
5
0
.
6
3
0
1
5
.
0
0
0
5
1
.
7
9
4
2
0
.
5
1
3
0
.
4
2
1
0
.
3
0
0
2
9
0
.
7
0
1
8
7
.
0
7
2
4
9
.
0
3
2
2
5
.
7
1
1
6
4
.
3
9
2
4
1
.
3
0
9
3
4
.
0
2
7
3
0
.
5
0
7
0
.
4
2
1
0
.
3
1
0
N
/
A
1
8
5
.
1
9
2
0
1
.
1
5
N
/
A
7
8
.
5
1
9
2
2
.
9
6
1
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
.
0
1
3
0
.
7
9
7
1
4
.
8
5
-
4
.
1
9
1
4
.
9
2
3
5
3
.
2
7
0
-
4
.
2
1
1
1
0
0
4
.
4
8
1
1
.
4
0
0
1
.
0
3
2
1
.
7
7
6
e
-
0
0
5
3
2
8
.
9
3
2
1
.
4
5
1
1
.
0
1
8
4
7
.
7
2
1
6
.
9
0
4
7
.
9
9
3
5
8
.
8
6
7
1
6
.
9
8
4
1
0
0
5
.
3
0
6
1
.
4
0
0
1
.
2
2
2
1
.
5
9
5
e
-
0
0
5
3
4
1
.
5
3
3
1
.
4
3
8
1
.
1
4
7
4
7
.
7
2
2
7
.
6
2
4
7
.
9
9
3
6
1
.
3
0
1
2
7
.
7
6
2
1
0
0
5
.
8
2
7
1
.
4
0
0
1
.
3
2
7
1
.
5
1
2
e
-
0
0
5
3
4
7
.
7
5
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
3
9
0
.
4
5
0
1
.
6
4
8
1
.
7
0
7
1
.
8
5
8
0
.
0
1
1
4
0
.
0
2
1
5
0
.
9
2
9
0
.
8
9
2
2
.
5
0
0
1
.
0
1
4
0
.
0
6
0
0
.
5
5
2
s
t
a
t
o
r
0
.
8
0
8
0
.
3
6
7
1
.
4
8
8
1
.
5
8
3
1
.
6
5
0
0
.
0
0
7
0
0
.
0
2
0
9
0
.
7
2
9
0
.
8
8
8
3
.
5
0
0
1
.
4
9
5
0
.
0
6
0
0
.
5
9
8
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
2
8
.
0
0
0
5
4
.
5
4
2
2
4
.
6
9
6
-
2
.
7
4
8
9
.
3
3
2
2
9
.
8
4
6
3
6
.
8
7
1
1
7
.
7
6
7
s
t
a
t
o
r
3
1
.
0
0
0
4
9
.
0
5
1
5
.
8
5
3
-
7
.
7
4
2
1
7
.
1
0
8
4
3
.
1
9
8
1
9
.
7
1
0
1
8
.
3
4
8
=
=
=
=
=
S
T
A
G
E
2
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
3
6
3
0
.
5
5
0
1
2
2
0
.
3
8
1
0
.
6
3
4
3
1
.
9
6
5
6
.
8
5
7
0
.
9
2
8
0
.
9
2
5
0
.
9
2
7
0
.
4
1
0
0
.
4
0
4
1
.
0
1
5
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
5
0
7
0
.
4
2
1
0
.
3
1
0
2
9
0
.
7
0
1
8
5
.
1
9
2
0
1
.
1
5
2
8
1
.
6
3
7
8
.
5
1
9
2
2
.
9
7
6
4
8
.
8
8
5
2
0
.
5
0
0
0
.
4
2
1
0
.
3
2
1
2
9
0
.
7
0
1
8
3
.
3
4
2
6
3
.
5
9
2
0
9
.
4
8
1
8
9
.
3
7
4
4
5
.
9
2
7
2
8
.
9
2
7
3
0
.
4
9
4
0
.
4
2
1
0
.
3
3
2
N
/
A
1
8
1
.
5
1
1
9
8
.
3
2
N
/
A
7
9
.
9
1
7
2
3
.
7
5
2
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
.
4
3
8
1
.
1
4
7
4
7
.
7
2
2
7
.
6
2
4
7
.
9
9
3
6
1
.
3
0
1
2
7
.
7
6
2
1
0
0
5
.
8
2
7
1
.
4
0
0
1
.
3
2
7
1
.
5
1
2
e
-
0
0
5
3
4
7
.
7
5
2
1
.
9
7
8
1
.
3
7
9
7
9
.
6
9
4
5
.
2
3
8
0
.
2
1
9
6
5
.
5
5
6
4
5
.
4
8
0
1
0
0
6
.
8
3
4
1
.
3
9
9
1
.
5
0
8
1
.
3
9
2
e
-
0
0
5
3
5
7
.
7
1
3
1
.
9
6
0
1
.
6
0
5
7
9
.
6
9
6
0
.
1
9
8
0
.
2
1
9
6
8
.
1
5
8
6
0
.
5
5
3
1
0
0
7
.
8
4
9
1
.
3
9
9
1
.
6
7
7
1
.
2
9
8
e
-
0
0
5
3
6
5
.
9
5
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
4
4
0
.
4
5
0
1
.
6
4
5
1
.
7
1
3
1
.
8
3
6
0
.
0
1
2
1
0
.
0
2
2
1
0
.
8
1
0
0
.
8
9
2
2
.
3
9
0
0
.
9
8
5
0
.
0
6
0
0
.
6
2
7
s
t
a
t
o
r
0
.
7
5
2
0
.
4
5
2
1
.
6
4
3
1
.
7
1
7
1
.
8
1
8
0
.
0
0
7
1
0
.
0
2
2
6
0
.
7
3
7
0
.
8
9
1
3
.
3
2
0
0
.
9
7
5
0
.
0
6
0
0
.
6
5
7
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
3
5
.
0
0
0
5
3
.
1
0
9
1
8
.
6
6
1
-
4
.
2
2
4
1
0
.
2
6
6
3
4
.
4
4
8
3
1
.
6
6
1
1
9
.
9
5
7
s
t
a
t
o
r
5
3
.
0
0
0
5
1
.
0
5
2
1
2
.
6
6
5
-
5
.
1
2
5
1
1
.
0
8
7
3
8
.
3
8
7
2
6
.
7
3
4
2
2
.
1
7
5
=
=
=
=
=
S
T
A
G
E
3
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
3
1
6
0
.
5
5
0
1
2
2
0
.
3
7
1
0
.
6
2
1
3
1
.
0
4
3
6
.
3
7
4
0
.
9
2
5
0
.
9
2
2
0
.
9
2
7
0
.
4
0
8
0
.
4
0
6
1
.
0
0
6
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
9
4
0
.
4
2
1
0
.
3
3
2
2
9
0
.
7
0
1
8
1
.
5
1
1
9
8
.
3
2
2
7
8
.
1
6
7
9
.
9
1
7
2
3
.
7
6
4
4
9
.
2
6
8
2
0
.
4
8
9
0
.
4
2
1
0
.
3
3
9
2
9
0
.
7
0
1
7
9
.
6
9
2
5
9
.
9
7
2
0
7
.
0
4
1
8
7
.
8
6
5
4
6
.
2
7
4
2
9
.
7
8
1
3
0
.
4
8
4
0
.
4
2
1
0
.
3
4
6
N
/
A
1
7
7
.
9
0
1
9
5
.
6
0
N
/
A
8
1
.
3
1
9
2
4
.
5
5
8
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
.
9
6
0
1
.
6
0
5
7
9
.
6
9
6
0
.
1
9
8
0
.
2
1
9
6
8
.
1
5
8
6
0
.
5
5
3
1
0
0
7
.
8
4
9
1
.
3
9
9
1
.
6
7
7
1
.
2
9
8
e
-
0
0
5
3
6
5
.
9
5
2
2
.
6
0
1
1
.
8
8
8
1
1
0
.
7
3
7
7
.
3
0
1
1
1
.
5
9
9
7
2
.
0
9
1
7
7
.
8
0
8
1
0
0
9
.
2
0
0
1
.
3
9
8
1
.
8
7
5
1
.
2
0
6
e
-
0
0
5
3
7
5
.
1
2
3
2
.
5
7
9
2
.
1
5
9
1
1
0
.
7
3
9
1
.
8
2
1
1
1
.
5
9
9
7
4
.
5
3
2
9
2
.
4
6
9
1
0
1
0
.
5
1
8
1
.
3
9
7
2
.
0
5
9
1
.
1
3
3
e
-
0
0
5
3
8
2
.
7
1
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
4
4
0
.
4
5
0
1
.
6
4
5
1
.
7
1
1
1
.
8
3
4
0
.
0
1
2
6
0
.
0
2
3
0
0
.
7
6
0
0
.
8
9
2
2
.
2
9
0
1
.
0
0
1
0
.
0
6
0
0
.
6
8
3
s
t
a
t
o
r
0
.
7
5
2
0
.
4
5
3
1
.
6
4
4
1
.
7
1
7
1
.
8
1
8
0
.
0
0
7
5
0
.
0
2
3
3
0
.
6
9
3
0
.
8
9
1
3
.
1
4
0
0
.
9
8
8
0
.
0
6
0
0
.
7
0
5
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
3
9
.
0
0
0
5
4
.
2
9
0
1
9
.
1
6
4
-
5
.
0
2
2
1
0
.
6
1
7
3
5
.
1
2
5
3
1
.
7
0
5
1
9
.
4
8
6
s
t
a
t
o
r
5
9
.
0
0
0
5
2
.
0
6
9
1
3
.
1
9
8
-
5
.
7
9
5
1
1
.
3
6
0
3
8
.
8
7
0
2
6
.
8
3
8
2
1
.
7
1
5
=
=
=
=
=
S
T
A
G
E
4
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
2
7
9
0
.
5
5
0
1
2
2
0
.
3
6
1
0
.
6
0
9
3
0
.
1
0
6
5
.
9
5
9
0
.
9
2
2
0
.
9
1
9
0
.
9
2
6
0
.
4
0
6
0
.
4
0
7
0
.
9
9
9
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
8
4
0
.
4
2
1
0
.
3
4
6
2
9
0
.
7
0
1
7
7
.
9
0
1
9
5
.
6
0
2
7
4
.
7
5
8
1
.
3
1
9
2
4
.
5
6
6
4
9
.
6
4
8
2
0
.
4
8
0
0
.
4
2
1
0
.
3
5
1
2
9
0
.
7
0
1
7
6
.
1
2
2
5
6
.
4
1
2
0
4
.
7
1
1
8
6
.
3
6
0
4
6
.
6
1
8
3
0
.
6
4
4
3
0
.
4
7
6
0
.
4
2
1
0
.
3
5
7
N
/
A
1
7
4
.
3
6
1
9
2
.
9
9
N
/
A
8
2
.
7
2
8
2
5
.
3
7
8
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
2
.
5
7
9
2
.
1
5
9
1
1
0
.
7
3
9
1
.
8
2
1
1
1
.
5
9
9
7
4
.
5
3
2
9
2
.
4
6
9
1
0
1
0
.
5
1
8
1
.
3
9
7
2
.
0
5
9
1
.
1
3
3
e
-
0
0
5
3
8
2
.
7
1
2
3
.
3
2
4
2
.
4
9
3
1
4
0
.
8
4
1
0
8
.
4
2
1
4
2
.
1
3
5
7
8
.
2
0
5
1
0
9
.
2
6
1
1
0
1
2
.
2
2
4
1
.
3
9
6
2
.
2
7
4
1
.
0
6
1
e
-
0
0
5
3
9
1
.
1
9
3
3
.
2
9
8
2
.
8
1
0
1
4
0
.
8
4
1
2
2
.
4
9
1
4
2
.
1
3
5
8
0
.
4
9
2
1
2
3
.
5
1
3
1
0
1
3
.
8
4
0
1
.
3
9
5
2
.
4
7
3
1
.
0
0
2
e
-
0
0
5
3
9
8
.
2
1
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
4
5
0
.
4
5
0
1
.
6
4
4
1
.
7
0
8
1
.
8
3
2
0
.
0
1
3
3
0
.
0
2
3
9
0
.
7
1
8
0
.
8
9
2
2
.
1
8
0
1
.
0
2
0
0
.
0
6
0
0
.
7
2
4
s
t
a
t
o
r
0
.
7
5
3
0
.
4
5
4
1
.
6
4
5
1
.
7
1
6
1
.
8
1
9
0
.
0
0
8
0
0
.
0
2
3
7
0
.
6
5
5
0
.
8
9
1
2
.
9
6
0
1
.
0
0
3
0
.
0
6
0
0
.
7
4
0
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
4
3
.
0
0
0
5
5
.
3
9
5
1
9
.
6
7
8
-
5
.
7
4
7
1
0
.
9
6
6
3
5
.
7
1
7
3
1
.
7
8
9
1
9
.
0
0
3
s
t
a
t
o
r
6
3
.
0
0
0
5
3
.
0
2
6
1
3
.
7
4
4
-
6
.
4
0
7
1
1
.
6
3
4
3
9
.
2
8
2
2
6
.
9
7
7
2
1
.
2
4
0
=
=
=
=
=
S
T
A
G
E
5
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
2
4
8
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
9
7
2
9
.
1
5
8
5
.
6
1
8
0
.
9
1
9
0
.
9
1
6
0
.
9
2
5
0
.
4
0
6
0
.
4
1
0
0
.
9
9
0
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
7
6
0
.
4
2
1
0
.
3
5
7
2
9
0
.
7
0
1
7
4
.
3
6
1
9
2
.
9
9
2
7
1
.
3
9
8
2
.
7
2
8
2
5
.
3
8
3
5
0
.
0
2
5
2
0
.
4
7
4
0
.
4
2
1
0
.
3
6
0
2
9
0
.
7
0
1
7
2
.
6
1
2
5
2
.
9
2
2
0
2
.
4
8
1
8
4
.
8
6
2
4
6
.
9
6
2
3
1
.
5
1
5
3
0
.
4
7
0
0
.
4
2
1
0
.
3
6
4
N
/
A
1
7
0
.
8
9
1
8
9
.
8
0
N
/
A
8
2
.
6
0
0
2
5
.
7
9
5
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
3
.
2
9
8
2
.
8
1
0
1
4
0
.
8
4
1
2
2
.
4
9
1
4
2
.
1
3
5
8
0
.
4
9
2
1
2
3
.
5
1
3
1
0
1
3
.
8
4
0
1
.
3
9
5
2
.
4
7
3
1
.
0
0
2
e
-
0
0
5
3
9
8
.
2
1
2
4
.
1
4
8
3
.
1
9
6
1
6
9
.
9
9
1
3
8
.
5
8
1
7
1
.
8
2
5
8
3
.
9
3
8
1
3
9
.
8
4
1
1
0
1
5
.
8
8
0
1
.
3
9
4
2
.
7
0
3
9
.
4
4
6
e
-
0
0
6
4
0
6
.
0
6
3
4
.
1
1
7
3
.
5
6
3
1
6
9
.
9
9
1
5
2
.
3
2
1
7
1
.
8
2
5
8
6
.
1
1
0
1
5
3
.
8
1
3
1
0
1
7
.
7
8
4
1
.
3
9
3
2
.
9
1
5
8
.
9
7
0
e
-
0
0
6
4
1
2
.
6
3
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
4
6
0
.
4
5
0
1
.
6
4
4
1
.
7
0
5
1
.
8
3
1
0
.
0
1
4
0
0
.
0
2
4
5
0
.
6
8
2
0
.
8
9
2
2
.
0
7
0
1
.
0
4
2
0
.
0
6
0
0
.
7
5
5
s
t
a
t
o
r
0
.
7
5
0
0
.
4
6
0
1
.
6
5
6
1
.
7
2
4
1
.
8
3
0
0
.
0
0
8
5
0
.
0
2
4
3
0
.
6
2
3
0
.
8
9
2
2
.
7
9
0
0
.
9
9
1
0
.
0
6
0
0
.
7
6
7
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
4
6
.
0
0
0
5
6
.
4
4
8
2
0
.
1
8
9
-
6
.
4
2
3
1
1
.
3
2
6
3
6
.
2
5
9
3
1
.
8
9
5
1
8
.
5
1
0
s
t
a
t
o
r
6
8
.
0
0
0
5
3
.
7
2
2
1
4
.
1
5
2
-
6
.
7
6
0
1
1
.
6
4
3
3
9
.
5
7
0
2
7
.
1
7
7
2
1
.
1
6
7
=
=
=
=
=
S
T
A
G
E
6
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
2
3
1
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
8
5
2
9
.
0
2
8
5
.
2
8
2
0
.
9
1
9
0
.
9
1
6
0
.
9
2
4
0
.
4
1
2
0
.
4
1
9
0
.
9
8
5
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
7
0
0
.
4
2
1
0
.
3
6
4
2
9
0
.
7
0
1
7
0
.
8
9
1
8
9
.
8
0
2
6
9
.
2
7
8
2
.
6
0
0
2
5
.
7
9
7
5
0
.
6
0
8
2
0
.
4
6
7
0
.
4
2
1
0
.
3
6
8
2
9
0
.
7
0
1
6
9
.
1
8
2
5
0
.
5
0
1
9
9
.
6
3
1
8
4
.
7
3
4
4
7
.
5
1
7
3
2
.
0
6
1
3
0
.
4
6
4
0
.
4
2
1
0
.
3
7
2
N
/
A
1
6
7
.
4
9
1
8
6
.
6
9
N
/
A
8
2
.
4
7
7
2
6
.
2
1
8
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
4
.
1
1
7
3
.
5
6
3
1
6
9
.
9
9
1
5
2
.
3
2
1
7
1
.
8
2
5
8
6
.
1
1
0
1
5
3
.
8
1
3
1
0
1
7
.
7
8
4
1
.
3
9
3
2
.
9
1
5
8
.
9
7
0
e
-
0
0
6
4
1
2
.
6
3
2
5
.
1
0
2
4
.
0
1
7
1
9
9
.
0
2
1
6
8
.
3
4
2
0
1
.
5
1
6
8
9
.
3
4
5
1
7
0
.
1
4
2
1
0
2
0
.
1
8
6
1
.
3
9
2
3
.
1
6
8
8
.
4
8
1
e
-
0
0
6
4
2
0
.
1
4
3
5
.
0
6
6
4
.
4
4
5
1
9
9
.
0
2
1
8
2
.
0
0
2
0
1
.
5
1
6
9
1
.
3
9
3
1
8
4
.
0
8
8
1
0
2
2
.
3
8
2
1
.
3
9
1
3
.
4
0
0
8
.
0
7
8
e
-
0
0
6
4
2
6
.
4
1
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
4
1
0
.
4
5
0
1
.
6
4
7
1
.
7
0
9
1
.
8
3
4
0
.
0
1
4
6
0
.
0
2
4
6
0
.
6
5
3
0
.
8
9
2
1
.
9
6
0
1
.
0
0
9
0
.
0
6
0
0
.
7
8
2
s
t
a
t
o
r
0
.
7
4
5
0
.
4
6
1
1
.
6
6
1
1
.
7
2
9
1
.
8
3
5
0
.
0
0
9
0
0
.
0
2
4
4
0
.
5
9
6
0
.
8
9
2
2
.
6
1
0
0
.
9
5
7
0
.
0
6
0
0
.
7
9
5
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
5
1
.
0
0
0
5
7
.
1
8
7
2
0
.
9
5
8
-
6
.
5
7
9
1
1
.
1
0
3
3
6
.
2
2
9
3
2
.
4
9
4
1
8
.
5
4
7
s
t
a
t
o
r
7
6
.
0
0
0
5
4
.
3
5
6
1
4
.
8
5
8
-
6
.
8
3
9
1
1
.
3
6
0
3
9
.
4
9
8
2
7
.
7
6
8
2
1
.
2
9
8
=
=
=
=
=
S
T
A
G
E
7
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
2
1
5
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
7
3
2
8
.
8
8
3
4
.
9
8
7
0
.
9
1
8
0
.
9
1
6
0
.
9
2
3
0
.
4
1
9
0
.
4
2
8
0
.
9
7
8
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
6
4
0
.
4
2
1
0
.
3
7
2
2
9
0
.
7
0
1
6
7
.
4
9
1
8
6
.
6
9
2
6
7
.
2
2
8
2
.
4
7
7
2
6
.
2
1
7
5
1
.
1
8
8
2
0
.
4
6
2
0
.
4
2
1
0
.
3
7
5
2
9
0
.
7
0
1
6
5
.
8
1
2
4
8
.
1
4
1
9
6
.
8
5
1
8
4
.
6
1
1
4
8
.
0
7
1
3
2
.
6
1
2
3
0
.
4
6
0
0
.
4
2
1
0
.
3
7
8
N
/
A
1
6
4
.
1
5
1
8
3
.
6
6
N
/
A
8
2
.
3
5
8
2
6
.
6
4
8
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
5
.
0
6
6
4
.
4
4
5
1
9
9
.
0
2
1
8
2
.
0
0
2
0
1
.
5
1
6
9
1
.
3
9
3
1
8
4
.
0
8
8
1
0
2
2
.
3
8
2
1
.
3
9
1
3
.
4
0
0
8
.
0
7
8
e
-
0
0
6
4
2
6
.
4
1
2
6
.
1
9
9
4
.
9
7
2
2
2
7
.
9
0
1
9
7
.
9
5
2
3
1
.
2
0
6
9
4
.
4
4
1
2
0
0
.
4
1
9
1
0
2
5
.
1
1
2
1
.
3
8
9
3
.
6
7
4
7
.
6
6
0
e
-
0
0
6
4
3
3
.
5
9
3
6
.
1
5
8
5
.
4
6
6
2
2
7
.
9
0
2
1
1
.
5
2
2
3
1
.
2
0
6
9
6
.
3
8
0
2
1
4
.
3
4
1
1
0
2
7
.
5
6
4
1
.
3
8
8
3
.
9
2
6
7
.
3
1
5
e
-
0
0
6
4
3
9
.
5
8
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
3
7
0
.
4
5
0
1
.
6
5
0
1
.
7
1
2
1
.
8
3
7
0
.
0
1
5
2
0
.
0
2
4
8
0
.
6
2
7
0
.
8
9
3
1
.
8
6
0
0
.
9
7
7
0
.
0
6
0
0
.
8
0
6
s
t
a
t
o
r
0
.
7
4
0
0
.
4
6
1
1
.
6
6
5
1
.
7
3
3
1
.
8
3
9
0
.
0
0
9
5
0
.
0
2
4
5
0
.
5
7
2
0
.
8
9
2
2
.
4
3
0
0
.
9
2
3
0
.
0
6
0
0
.
8
1
7
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
5
7
.
0
0
0
5
7
.
8
6
4
2
1
.
7
4
8
-
6
.
6
7
6
1
0
.
8
6
4
3
6
.
1
1
6
3
3
.
1
3
0
1
8
.
5
7
6
s
t
a
t
o
r
8
3
.
0
0
0
5
4
.
9
3
2
1
5
.
5
8
3
-
6
.
8
6
1
1
1
.
0
6
4
3
9
.
3
4
9
2
8
.
3
9
6
2
1
.
4
2
3
=
=
=
=
=
S
T
A
G
E
8
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
2
0
2
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
6
2
2
8
.
7
2
7
4
.
7
4
0
0
.
9
1
8
0
.
9
1
6
0
.
9
2
3
0
.
4
2
5
0
.
4
3
8
0
.
9
7
1
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
6
0
0
.
4
2
1
0
.
3
7
8
2
9
0
.
7
0
1
6
4
.
1
5
1
8
3
.
6
6
2
6
5
.
2
4
8
2
.
3
5
8
2
6
.
6
4
4
5
1
.
7
6
5
2
0
.
4
5
7
0
.
4
2
1
0
.
3
8
0
2
9
0
.
7
0
1
6
2
.
5
1
2
4
5
.
8
6
1
9
4
.
1
4
1
8
4
.
4
9
2
4
8
.
6
2
4
3
3
.
1
6
6
3
0
.
4
5
5
0
.
4
2
1
0
.
3
8
3
N
/
A
1
6
0
.
8
9
1
8
0
.
6
9
N
/
A
8
2
.
2
4
4
2
7
.
0
8
3
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
6
.
1
5
8
5
.
4
6
6
2
2
7
.
9
0
2
1
1
.
5
2
2
3
1
.
2
0
6
9
6
.
3
8
0
2
1
4
.
3
4
1
1
0
2
7
.
5
6
4
1
.
3
8
8
3
.
9
2
6
7
.
3
1
5
e
-
0
0
6
4
3
9
.
5
8
2
7
.
4
5
0
6
.
0
7
3
2
5
6
.
6
3
2
2
7
.
3
9
2
6
0
.
8
9
6
9
9
.
2
7
4
2
3
0
.
6
7
2
1
0
3
0
.
5
7
6
1
.
3
8
6
4
.
2
2
4
6
.
9
5
5
e
-
0
0
6
4
4
6
.
4
7
3
7
.
4
0
2
6
.
6
3
8
2
5
6
.
6
3
2
4
0
.
8
6
2
6
0
.
8
9
6
1
0
1
.
1
2
0
2
4
4
.
5
7
2
1
0
3
3
.
2
4
2
1
.
3
8
5
4
.
4
9
6
6
.
6
5
7
e
-
0
0
6
4
5
2
.
2
1
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
3
2
0
.
4
5
0
1
.
6
5
3
1
.
7
1
6
1
.
8
4
0
0
.
0
1
5
9
0
.
0
2
4
9
0
.
6
0
3
0
.
8
9
3
1
.
7
5
0
0
.
9
4
5
0
.
0
6
0
0
.
8
2
7
s
t
a
t
o
r
0
.
7
3
5
0
.
4
6
2
1
.
6
6
9
1
.
7
3
8
1
.
8
4
4
0
.
0
1
0
2
0
.
0
2
4
5
0
.
5
5
1
0
.
8
9
3
2
.
2
5
0
0
.
8
8
9
0
.
0
6
0
0
.
8
3
6
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
6
2
.
0
0
0
5
8
.
4
8
4
2
2
.
5
5
3
-
6
.
7
1
9
1
0
.
6
1
3
3
5
.
9
3
1
3
3
.
8
0
0
1
8
.
5
9
9
s
t
a
t
o
r
9
0
.
0
0
0
5
5
.
4
5
5
1
6
.
3
2
3
-
6
.
8
3
0
1
0
.
7
5
9
3
9
.
1
3
1
2
9
.
0
5
9
2
1
.
5
4
2
=
=
=
=
=
S
T
A
G
E
9
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
9
0
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
5
1
2
8
.
5
6
1
4
.
5
3
0
0
.
9
1
7
0
.
9
1
5
0
.
9
2
2
0
.
4
3
1
0
.
4
4
7
0
.
9
6
4
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
5
5
0
.
4
2
1
0
.
3
8
3
2
9
0
.
7
0
1
6
0
.
8
9
1
8
0
.
6
9
2
6
3
.
3
2
8
2
.
2
4
4
2
7
.
0
7
6
5
2
.
3
3
9
2
0
.
4
5
3
0
.
4
2
1
0
.
3
8
5
2
9
0
.
7
0
1
5
9
.
2
8
2
4
3
.
6
5
1
9
1
.
5
0
1
8
4
.
3
7
8
4
9
.
1
7
7
3
3
.
7
2
4
3
0
.
4
5
2
0
.
4
2
1
0
.
3
8
7
N
/
A
1
5
7
.
6
9
1
7
7
.
7
9
N
/
A
8
2
.
1
3
0
2
7
.
5
2
3
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
7
.
4
0
2
6
.
6
3
8
2
5
6
.
6
3
2
4
0
.
8
6
2
6
0
.
8
9
6
1
0
1
.
1
2
0
2
4
4
.
5
7
2
1
0
3
3
.
2
4
2
1
.
3
8
5
4
.
4
9
6
6
.
6
5
7
e
-
0
0
6
4
5
2
.
2
1
2
8
.
8
6
6
7
.
3
3
2
2
8
5
.
1
9
2
5
6
.
6
4
2
9
0
.
5
8
7
1
0
3
.
8
8
3
2
6
0
.
9
0
4
1
0
3
6
.
4
8
3
1
.
3
8
3
4
.
8
1
8
6
.
3
4
5
e
-
0
0
6
4
5
8
.
8
2
3
8
.
8
1
1
7
.
9
7
3
2
8
5
.
1
9
2
7
0
.
0
1
2
9
0
.
5
8
7
1
0
5
.
6
5
0
2
7
4
.
7
8
2
1
0
3
9
.
3
1
8
1
.
3
8
2
5
.
1
1
1
6
.
0
8
6
e
-
0
0
6
4
6
4
.
3
4
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
2
7
0
.
4
5
0
1
.
6
5
6
1
.
7
2
0
1
.
8
4
4
0
.
0
1
6
8
0
.
0
2
5
0
0
.
5
8
2
0
.
8
9
3
1
.
6
4
0
0
.
9
1
4
0
.
0
6
0
0
.
8
4
4
s
t
a
t
o
r
0
.
7
3
0
0
.
4
6
2
1
.
6
7
4
1
.
7
4
3
1
.
8
4
9
0
.
0
1
0
9
0
.
0
2
4
5
0
.
5
3
1
0
.
8
9
3
2
.
0
7
0
0
.
8
5
6
0
.
0
6
0
0
.
8
5
2
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
6
8
.
0
0
0
5
9
.
0
5
3
2
3
.
3
6
9
-
6
.
7
1
4
1
0
.
3
5
5
3
5
.
6
8
4
3
4
.
4
9
7
1
8
.
6
1
5
s
t
a
t
o
r
9
6
.
0
0
0
5
5
.
9
2
5
1
7
.
0
7
7
-
6
.
7
4
7
1
0
.
4
4
6
3
8
.
8
4
7
2
9
.
7
5
4
2
1
.
6
5
4
=
=
=
=
=
S
T
A
G
E
1
0
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
8
0
0
.
5
5
0
1
2
2
0
.
3
5
1
0
.
5
4
0
2
8
.
3
9
0
4
.
3
3
8
0
.
9
1
6
0
.
9
1
4
0
.
9
2
2
0
.
4
3
5
0
.
4
5
5
0
.
9
5
6
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
5
2
0
.
4
2
1
0
.
3
8
7
2
9
0
.
7
0
1
5
7
.
6
9
1
7
7
.
7
9
2
6
1
.
4
7
8
2
.
1
3
0
2
7
.
5
1
3
5
2
.
9
1
0
2
0
.
4
5
0
0
.
4
2
1
0
.
3
8
9
2
9
0
.
7
0
1
5
6
.
1
1
2
4
1
.
5
0
1
8
8
.
9
4
1
8
4
.
2
6
4
4
9
.
7
2
9
3
4
.
2
8
6
3
0
.
4
4
9
0
.
4
2
1
0
.
3
9
0
N
/
A
1
5
4
.
5
5
1
7
5
.
7
6
N
/
A
8
3
.
7
1
5
2
8
.
4
5
6
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
8
.
8
1
1
7
.
9
7
3
2
8
5
.
1
9
2
7
0
.
0
1
2
9
0
.
5
8
7
1
0
5
.
6
5
0
2
7
4
.
7
8
2
1
0
3
9
.
3
1
8
1
.
3
8
2
5
.
1
1
1
6
.
0
8
6
e
-
0
0
6
4
6
4
.
3
4
2
1
0
.
4
5
8
8
.
7
5
9
3
1
3
.
5
8
2
8
5
.
7
0
3
2
0
.
2
7
7
1
0
8
.
2
9
6
2
9
1
.
1
1
5
1
0
4
2
.
7
3
7
1
.
3
8
0
5
.
4
5
7
5
.
8
1
3
e
-
0
0
6
4
7
0
.
7
0
3
1
0
.
3
9
7
9
.
4
7
5
3
1
3
.
5
8
2
9
8
.
8
3
3
2
0
.
2
7
7
1
0
9
.
9
8
9
3
0
4
.
8
3
0
1
0
4
5
.
6
6
8
1
.
3
7
9
5
.
7
6
7
5
.
5
8
8
e
-
0
0
6
4
7
5
.
9
5
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
2
3
0
.
4
5
0
1
.
6
5
9
1
.
7
2
4
1
.
8
4
7
0
.
0
1
7
7
0
.
0
2
5
1
0
.
5
6
3
0
.
8
9
4
1
.
5
4
0
0
.
8
8
4
0
.
0
6
0
0
.
8
5
9
s
t
a
t
o
r
0
.
7
2
8
0
.
4
5
6
1
.
6
6
6
1
.
7
3
7
1
.
8
4
2
0
.
0
1
1
7
0
.
0
2
4
4
0
.
5
1
3
0
.
8
9
3
1
.
8
9
0
0
.
8
5
4
0
.
0
6
0
0
.
8
6
6
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
7
3
.
0
0
0
5
9
.
5
7
5
2
4
.
1
9
5
-
6
.
6
6
5
1
0
.
0
9
1
3
5
.
3
8
0
3
5
.
2
2
0
1
8
.
6
2
3
s
t
a
t
o
r
9
7
.
0
0
0
5
6
.
6
8
6
1
8
.
0
3
1
-
6
.
9
5
8
1
0
.
4
2
5
3
8
.
6
5
5
3
0
.
4
0
1
2
1
.
2
7
2
=
=
=
=
=
S
T
A
G
E
1
1
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
6
6
0
.
5
5
0
1
2
2
0
.
3
4
3
0
.
5
2
8
2
7
.
5
7
4
4
.
2
0
7
0
.
9
1
3
0
.
9
1
1
0
.
9
2
1
0
.
4
3
5
0
.
4
5
9
0
.
9
4
8
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
4
9
0
.
4
2
1
0
.
3
9
0
2
9
0
.
7
0
1
5
4
.
5
5
1
7
5
.
7
6
2
5
8
.
3
2
8
3
.
7
1
5
2
8
.
4
4
3
5
3
.
2
5
3
2
0
.
4
4
8
0
.
4
2
1
0
.
3
9
2
2
9
0
.
7
0
1
5
2
.
6
9
2
3
8
.
7
4
1
8
6
.
5
5
1
8
3
.
5
2
4
5
0
.
2
3
9
3
5
.
0
6
5
3
0
.
4
4
7
0
.
4
2
1
0
.
3
9
3
N
/
A
1
5
0
.
8
6
1
7
3
.
2
9
N
/
A
8
5
.
2
5
8
2
9
.
4
8
8
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
0
.
3
9
7
9
.
4
7
5
3
1
3
.
5
8
2
9
8
.
8
3
3
2
0
.
2
7
7
1
0
9
.
9
8
9
3
0
4
.
8
3
0
1
0
4
5
.
6
6
8
1
.
3
7
9
5
.
7
6
7
5
.
5
8
8
e
-
0
0
6
4
7
5
.
9
5
2
1
2
.
1
9
3
1
0
.
3
3
6
3
4
1
.
1
6
3
1
4
.
0
7
3
4
9
.
2
9
1
1
1
2
.
5
4
1
3
2
0
.
7
9
3
1
0
4
9
.
1
3
4
1
.
3
7
7
6
.
1
2
8
5
.
3
5
4
e
-
0
0
6
4
8
1
.
9
4
3
1
2
.
1
2
3
1
1
.
1
2
3
3
4
1
.
1
6
3
2
6
.
9
1
3
4
9
.
2
9
1
1
1
4
.
1
9
6
3
3
4
.
2
7
7
1
0
5
2
.
1
0
1
1
.
3
7
6
6
.
4
5
3
5
.
1
5
9
e
-
0
0
6
4
8
6
.
9
2
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
2
2
0
.
4
5
0
1
.
6
6
0
1
.
7
2
3
1
.
8
4
7
0
.
0
1
9
0
0
.
0
2
5
4
0
.
5
4
3
0
.
8
9
4
1
.
4
3
0
0
.
8
9
1
0
.
0
6
0
0
.
8
7
2
s
t
a
t
o
r
0
.
7
2
6
0
.
4
5
8
1
.
6
6
9
1
.
7
3
8
1
.
8
4
6
0
.
0
1
2
9
0
.
0
2
4
8
0
.
4
9
5
0
.
8
9
4
1
.
7
1
0
0
.
8
5
4
0
.
0
6
0
0
.
8
7
7
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
7
4
.
0
0
0
6
0
.
2
3
8
2
4
.
8
9
5
-
6
.
9
8
6
1
0
.
1
7
0
3
5
.
3
4
3
3
5
.
5
8
1
1
8
.
1
8
7
s
t
a
t
o
r
9
7
.
0
0
0
5
7
.
3
9
6
1
9
.
1
0
9
-
7
.
1
5
7
1
0
.
3
7
9
3
8
.
2
8
7
3
1
.
0
9
6
2
0
.
7
5
1
=
=
=
=
=
S
T
A
G
E
1
2
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
5
4
0
.
5
5
0
1
2
2
0
.
3
3
5
0
.
5
1
5
2
6
.
7
6
9
4
.
0
9
5
0
.
9
0
9
0
.
9
0
8
0
.
9
2
1
0
.
4
3
6
0
.
4
6
4
0
.
9
3
9
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
4
7
0
.
4
2
1
0
.
3
9
3
2
9
0
.
7
0
1
5
0
.
8
6
1
7
3
.
2
9
2
5
4
.
8
8
8
5
.
2
5
8
2
9
.
4
7
3
5
3
.
7
0
9
2
0
.
4
4
6
0
.
4
2
1
0
.
3
9
4
2
9
0
.
7
0
1
4
8
.
7
5
2
3
5
.
6
3
1
8
3
.
8
0
1
8
2
.
7
4
1
5
0
.
8
5
5
3
5
.
9
7
2
3
0
.
4
4
5
0
.
4
2
1
0
.
3
9
5
N
/
A
1
4
6
.
6
7
1
7
0
.
4
0
N
/
A
8
6
.
7
5
1
3
0
.
6
2
2
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
2
.
1
2
3
1
1
.
1
2
3
3
4
1
.
1
6
3
2
6
.
9
1
3
4
9
.
2
9
1
1
1
4
.
1
9
6
3
3
4
.
2
7
7
1
0
5
2
.
1
0
1
1
.
3
7
6
6
.
4
5
3
5
.
1
5
9
e
-
0
0
6
4
8
6
.
9
2
2
1
4
.
0
6
4
1
2
.
0
5
8
3
6
7
.
9
3
3
4
1
.
7
0
3
7
7
.
6
2
9
1
1
6
.
6
6
9
3
4
9
.
8
6
9
1
0
5
5
.
5
6
7
1
.
3
7
4
6
.
8
2
7
4
.
9
5
7
e
-
0
0
6
4
9
2
.
5
8
3
1
3
.
9
8
5
1
2
.
9
1
4
3
6
7
.
9
3
3
5
4
.
2
3
3
7
7
.
6
2
9
1
1
8
.
2
9
1
3
6
3
.
1
1
1
1
0
5
8
.
5
3
2
1
.
3
7
2
7
.
1
6
6
4
.
7
8
7
e
-
0
0
6
4
9
7
.
3
2
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
2
1
0
.
4
5
0
1
.
6
6
0
1
.
7
2
2
1
.
8
4
8
0
.
0
2
0
5
0
.
0
2
5
8
0
.
5
2
3
0
.
8
9
4
1
.
3
2
0
0
.
8
9
5
0
.
0
6
0
0
.
8
8
1
s
t
a
t
o
r
0
.
7
2
3
0
.
4
5
9
1
.
6
7
4
1
.
7
4
0
1
.
8
5
2
0
.
0
1
4
3
0
.
0
2
5
2
0
.
4
7
8
0
.
8
9
4
1
.
5
4
0
0
.
8
5
0
0
.
0
6
0
0
.
8
8
6
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
7
4
.
0
0
0
6
0
.
9
6
2
2
5
.
7
7
6
-
7
.
2
5
3
1
0
.
1
9
6
3
5
.
1
8
7
3
6
.
1
1
6
1
7
.
7
3
8
s
t
a
t
o
r
9
5
.
0
0
0
5
8
.
1
5
5
2
0
.
3
4
4
-
7
.
3
0
0
1
0
.
2
7
7
3
7
.
8
1
0
3
1
.
9
5
0
2
0
.
2
3
3
=
=
=
=
=
S
T
A
G
E
1
3
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
4
3
0
.
5
5
0
1
2
2
0
.
3
2
7
0
.
5
0
0
2
5
.
9
7
6
4
.
0
1
3
0
.
9
0
5
0
.
9
0
3
0
.
9
2
0
0
.
4
3
7
0
.
4
7
2
0
.
9
2
7
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
4
5
0
.
4
2
1
0
.
3
9
5
2
9
0
.
7
0
1
4
6
.
6
7
1
7
0
.
4
0
2
5
1
.
2
1
8
6
.
7
5
1
3
0
.
6
0
4
5
4
.
2
7
9
2
0
.
4
4
4
0
.
4
2
1
0
.
3
9
6
2
9
0
.
7
0
1
4
4
.
3
2
2
3
2
.
2
0
1
8
0
.
7
3
1
8
1
.
9
0
8
5
1
.
5
7
3
3
7
.
0
1
0
3
0
.
4
4
3
0
.
4
2
1
0
.
3
9
7
N
/
A
1
4
2
.
0
1
1
6
7
.
1
6
N
/
A
8
8
.
1
8
8
3
1
.
8
6
1
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
3
.
9
8
5
1
2
.
9
1
4
3
6
7
.
9
3
3
5
4
.
2
3
3
7
7
.
6
2
9
1
1
8
.
2
9
1
3
6
3
.
1
1
1
1
0
5
8
.
5
3
2
1
.
3
7
2
7
.
1
6
6
4
.
7
8
7
e
-
0
0
6
4
9
7
.
3
2
2
1
6
.
0
6
9
1
3
.
9
2
1
3
9
3
.
9
0
3
6
8
.
5
9
4
0
5
.
2
9
2
1
2
0
.
7
0
0
3
7
8
.
3
3
2
1
0
6
1
.
9
5
8
1
.
3
7
1
7
.
5
5
2
4
.
6
1
1
e
-
0
0
6
5
0
2
.
6
7
3
1
5
.
9
7
9
1
4
.
8
4
5
3
9
3
.
9
0
3
8
0
.
8
0
4
0
5
.
2
9
2
1
2
2
.
3
0
4
3
9
1
.
3
2
0
1
0
6
4
.
8
9
0
1
.
3
6
9
7
.
9
0
3
4
.
4
6
2
e
-
0
0
6
5
0
7
.
1
8
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
1
9
0
.
4
5
0
1
.
6
6
2
1
.
7
2
1
1
.
8
5
0
0
.
0
2
2
3
0
.
0
2
6
2
0
.
5
0
5
0
.
8
9
4
1
.
2
1
0
0
.
8
9
5
0
.
0
6
0
0
.
8
9
0
s
t
a
t
o
r
0
.
7
2
0
0
.
4
6
1
1
.
6
7
8
1
.
7
4
3
1
.
8
5
8
0
.
0
1
6
1
0
.
0
2
5
6
0
.
4
6
2
0
.
8
9
4
1
.
3
6
0
0
.
8
4
2
0
.
0
6
0
0
.
8
9
3
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
7
3
.
0
0
0
6
1
.
7
5
2
2
6
.
8
3
6
-
7
.
4
7
4
1
0
.
1
7
4
3
4
.
9
1
7
3
6
.
8
2
0
1
7
.
2
6
9
s
t
a
t
o
r
9
0
.
0
0
0
5
8
.
9
6
2
2
1
.
7
3
7
-
7
.
3
8
9
1
0
.
1
2
4
3
7
.
2
2
5
3
2
.
9
6
0
1
9
.
7
1
2
=
=
=
=
=
S
T
A
G
E
1
4
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
3
3
0
.
5
5
0
1
2
2
0
.
3
1
9
0
.
4
8
4
2
5
.
1
9
5
3
.
9
5
2
0
.
9
0
0
0
.
8
9
9
0
.
9
1
9
0
.
4
3
9
0
.
4
8
1
0
.
9
1
2
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
4
3
0
.
4
2
1
0
.
3
9
7
2
9
0
.
7
0
1
4
2
.
0
1
1
6
7
.
1
6
2
4
7
.
3
4
8
8
.
1
8
8
3
1
.
8
4
0
5
4
.
9
6
0
2
0
.
4
4
3
0
.
4
2
1
0
.
3
9
7
2
9
0
.
7
0
1
3
9
.
4
5
2
2
8
.
5
1
1
7
7
.
4
2
1
8
1
.
0
1
9
5
2
.
3
9
0
3
8
.
1
8
5
3
0
.
4
4
2
0
.
4
2
1
0
.
3
9
8
N
/
A
1
3
6
.
9
4
1
6
3
.
6
4
N
/
A
8
9
.
5
7
7
3
3
.
2
1
0
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
5
.
9
7
9
1
4
.
8
4
5
3
9
3
.
9
0
3
8
0
.
8
0
4
0
5
.
2
9
2
1
2
2
.
3
0
4
3
9
1
.
3
2
0
1
0
6
4
.
8
9
0
1
.
3
6
9
7
.
9
0
3
4
.
4
6
2
e
-
0
0
6
5
0
7
.
1
8
2
1
8
.
1
9
9
1
5
.
9
2
2
4
1
9
.
1
0
3
9
4
.
7
2
4
3
2
.
2
7
8
1
2
4
.
6
5
5
4
0
6
.
1
7
0
1
0
6
8
.
2
4
6
1
.
3
6
8
8
.
2
9
9
4
.
3
0
8
e
-
0
0
6
5
1
2
.
2
5
3
1
8
.
0
9
7
1
6
.
9
0
9
4
1
9
.
1
0
4
0
6
.
6
1
4
3
2
.
2
7
8
1
2
6
.
2
5
6
4
1
8
.
8
8
9
1
0
7
1
.
1
1
9
1
.
3
6
6
8
.
6
6
0
4
.
1
7
7
e
-
0
0
6
5
1
6
.
5
3
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
1
7
0
.
4
5
0
1
.
6
6
3
1
.
7
2
1
1
.
8
5
2
0
.
0
2
4
2
0
.
0
2
6
6
0
.
4
8
8
0
.
8
9
4
1
.
1
1
0
0
.
8
9
2
0
.
0
6
0
0
.
8
9
6
s
t
a
t
o
r
0
.
7
1
6
0
.
4
6
2
1
.
6
8
4
1
.
7
4
6
1
.
8
6
5
0
.
0
1
8
5
0
.
0
2
6
0
0
.
4
4
6
0
.
8
9
5
1
.
1
8
0
0
.
8
3
0
0
.
0
6
0
0
.
8
9
9
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
7
2
.
0
0
0
6
2
.
6
1
3
2
8
.
0
7
3
-
7
.
6
5
3
1
0
.
1
1
2
3
4
.
5
4
0
3
7
.
6
9
0
1
6
.
7
7
5
s
t
a
t
o
r
8
4
.
0
0
0
5
9
.
8
2
1
2
3
.
2
7
9
-
7
.
4
3
1
9
.
9
3
1
3
6
.
5
4
2
3
4
.
1
1
9
1
9
.
1
8
0
=
=
=
=
=
S
T
A
G
E
1
5
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
P
R
R
E
A
C
T
F
l
o
w
P
S
I
P
H
I
d
T
0
d
S
-
-
-
-
-
-
E
f
f
i
c
i
e
n
c
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
S
u
r
g
e
(
K
o
c
h
)
-
-
-
-
-
-
P
o
l
y
I
s
e
n
a
c
c
.
P
o
l
y
C
h
C
h
_
m
a
x
C
h
/
C
h
_
m
a
x
1
.
1
2
3
0
.
5
5
0
1
2
2
0
.
3
1
1
0
.
4
6
6
2
4
.
4
2
7
3
.
9
8
3
0
.
8
9
3
0
.
8
9
2
0
.
9
1
8
0
.
4
4
8
0
.
5
0
2
0
.
8
9
2
p
o
i
n
t
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
A
n
g
l
e
s
-
-
-
-
t
i
p
r
m
s
h
u
b
U
C
m
C
W
C
_
t
h
e
t
a
A
l
p
h
a
B
e
t
a
1
0
.
4
4
2
0
.
4
2
1
0
.
3
9
8
2
9
0
.
7
0
1
3
6
.
9
4
1
6
3
.
6
4
2
4
3
.
3
2
8
9
.
5
7
7
3
3
.
1
8
9
5
5
.
7
4
9
2
0
.
4
4
2
0
.
4
2
1
0
.
3
9
8
2
9
0
.
7
0
1
3
4
.
2
1
2
2
4
.
5
9
1
7
3
.
9
2
1
8
0
.
0
8
3
5
3
.
3
0
5
3
9
.
4
9
6
3
0
.
4
4
1
0
.
4
2
1
0
.
3
9
9
N
/
A
1
3
1
.
5
2
1
5
7
.
1
6
N
/
A
8
6
.
0
3
0
3
3
.
1
8
9
N
/
A
p
o
i
n
t
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
1
1
8
.
0
9
7
1
6
.
9
0
9
4
1
9
.
1
0
4
0
6
.
6
1
4
3
2
.
2
7
8
1
2
6
.
2
5
6
4
1
8
.
8
8
9
1
0
7
1
.
1
1
9
1
.
3
6
6
8
.
6
6
0
4
.
1
7
7
e
-
0
0
6
5
1
6
.
5
3
2
2
0
.
4
4
5
1
8
.
0
5
0
4
4
3
.
5
2
4
2
0
.
1
1
4
5
8
.
5
8
8
1
2
8
.
5
7
6
4
3
3
.
3
6
7
1
0
7
4
.
3
8
3
1
.
3
6
5
9
.
0
6
4
4
.
0
4
3
e
-
0
0
6
5
2
1
.
3
5
3
2
0
.
3
2
7
1
9
.
1
3
4
4
4
3
.
5
2
4
3
2
.
0
8
4
5
8
.
5
8
8
1
3
0
.
2
3
9
4
4
6
.
2
3
8
1
0
7
7
.
2
7
6
1
.
3
6
4
9
.
4
4
6
3
.
9
2
3
e
-
0
0
6
5
2
5
.
5
7
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
r
o
t
o
r
0
.
7
1
5
0
.
4
5
0
1
.
6
6
5
1
.
7
2
1
1
.
8
5
5
0
.
0
2
6
6
0
.
0
2
7
1
0
.
4
7
1
0
.
8
9
5
1
.
0
0
0
0
.
8
8
6
0
.
0
6
0
0
.
9
0
1
s
t
a
t
o
r
0
.
7
0
0
0
.
4
8
6
1
.
7
3
5
1
.
7
9
0
1
.
9
1
6
0
.
0
2
2
4
0
.
0
2
6
9
0
.
4
3
1
0
.
8
9
6
1
.
0
0
0
0
.
7
1
5
0
.
0
6
0
0
.
9
0
3
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
t
u
r
n
i
n
g
r
o
t
o
r
6
9
.
0
0
0
6
3
.
5
4
6
2
9
.
4
7
9
-
7
.
7
9
7
1
0
.
0
1
8
3
4
.
0
6
8
3
8
.
7
1
5
1
6
.
2
5
3
s
t
a
t
o
r
8
7
.
0
0
0
5
9
.
3
1
4
2
4
.
4
8
6
-
6
.
0
0
9
8
.
7
0
4
3
4
.
8
2
8
3
5
.
8
9
1
2
0
.
1
1
6
=
=
=
=
=
O
U
T
L
E
T
G
U
I
D
E
V
A
N
E
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
=
-
-
-
-
-
-
r
a
d
i
u
s
-
-
-
-
-
-
-
V
e
l
o
c
i
t
i
e
s
t
i
p
r
m
s
h
u
b
C
m
0
.
4
4
1
0
.
4
2
1
0
.
3
9
9
1
3
1
.
5
2
-
-
-
P
r
e
s
s
u
r
e
-
-
-
-
-
T
e
m
p
e
r
a
t
u
r
e
s
-
-
-
-
-
-
E
n
t
h
a
l
p
y
-
-
-
-
E
n
t
r
o
p
y
C
p
K
a
p
p
a
r
h
o
V
i
s
c
a
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
T
o
t
a
l
S
t
a
t
i
c
2
0
.
2
6
0
1
9
.
4
2
2
4
4
3
.
5
2
4
3
5
.
5
1
4
5
8
.
5
8
8
1
3
1
.
1
8
3
4
4
9
.
9
3
9
1
0
7
8
.
1
0
5
1
.
3
6
3
9
.
5
4
1
3
.
8
9
6
e
-
0
0
6
5
2
6
.
7
7
d
e
H
a
l
l
e
r
D
F
D
e
q
-
-
-
-
-
-
-
-
D
e
q
*
-
-
-
-
-
-
-
-
L
o
s
s
C
o
e
f
f
i
c
i
e
n
t
s
-
-
-
-
-
-
-
-
M
a
c
h
-
-
-
-
-
-
H
/
C
S
/
C
T
/
C
H
/
T
L
i
e
b
l
e
i
n
K
o
c
h
/
S
m
i
t
h
E
n
d
w
a
l
l
P
r
o
f
i
l
e
r
e
l
a
t
i
v
e
c
r
i
t
i
c
a
l
0
.
8
3
7
0
.
4
5
0
1
.
5
9
0
1
.
6
8
8
1
.
6
8
9
0
.
0
2
8
9
0
.
0
2
7
0
0
.
2
9
9
0
.
8
8
8
1
.
0
0
0
1
.
0
4
8
0
.
0
6
0
0
.
9
0
3
N
r
.
b
l
a
d
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
B
l
a
d
e
a
n
g
l
e
s
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
i
n
l
e
t
o
u
t
l
e
t
i
n
c
i
d
e
n
c
e
d
e
v
i
a
t
i
o
n
c
a
m
b
e
r
s
t
a
g
g
e
r
6
0
.
0
0
0
4
4
.
2
1
1
-
1
7
.
6
2
4
-
1
1
.
0
2
2
1
7
.
6
2
4
6
1
.
8
3
5
2
.
2
7
2