+ All Categories
Home > Documents > UserManual_ITB

UserManual_ITB

Date post: 03-Apr-2018
Category:
Upload: pride3351
View: 214 times
Download: 0 times
Share this document with a friend

of 87

Transcript
  • 7/29/2019 UserManual_ITB

    1/87

    A Complete Parametric Cycle Analysis for Ideal

    TurboFan Engine with Interstage Turbine Burner

    S.L. Yang, Y.K. Siow, K.H. Liew, and E. UripMechanical Engineering Engineering Mechanics Department

    Michigan Technological University

    1400 Townsend Drive

    Houghton, MI 49931-1295

    906/487-2624

    906/487-2822 (Fax)

    [email protected]

    C. J. Marek

    Combustion Technology Branch, MS 5-10

    NASA Glenn Research Center

    21000 Brookpark RoadCleveland, OH 44135

    216/433-3584

    216/433-3000 (Fax)

    [email protected]

  • 7/29/2019 UserManual_ITB

    2/87

    October 23, 2002

    ABSTRACT

    Today modern aircraft is based on air-breathing jet propulsion systems, which uses

    moving fluids as substances to transform energy carried by the fluids into output power.

    Throughout aero-vehicle evolution, improvements have been made on the engine

    efficiency and pollutants reduction. This parametric study focuses on a complete

    parametric cycle analysis of a turbofan engine with an Interstage Turbine Burner (ITB).

    The major advantages associated with the addition of an ITB are the improvement of

    thermal efficiency and reduction in NOx emission. Lower temperature peaks in the main

    combustor results in lower thermal NOx emission and a lower amount of cooling air

    required.

    The objective of this study is to make use of the engine component parameters, namely

    compressor or turbine polytropic efficiency, burner efficiency, pressure drop across the

    engine components, design limitation (burner exit temperature), and flight environment

    as inputs to calculate engine performance, specific thrust and thrust specific fuel

    consumption. This relation can provide guidance in identifying the characteristics of the

    engines components. The knowledge can subsequently be used to develop and optimize

    the performance and integration of each component.

    In this study, each component in the engine is treated individually. The first-law energy

    equation, second-law, and conservation of momentum are then applied.

    ii

  • 7/29/2019 UserManual_ITB

    3/87

    Visual Basic program, Excel macrocode, and Excel neuron code are used to facilitate

    Excel software to plot engine performance versus engine design parameters. This

    program computes and plots the data sequentially without forcing users to open other

    types of plotting programs. A users manual on how to use the program is also included

    in this report.

    ACKNOWLEDGEMENTS

    This project on evaluating the improvement in performance of an aircraft gas turbine by

    adding an Interstage turbine burner (ITB) is really challenging and would have not been

    accomplished without the technical assistance and suggestion given from our graduate

    advisor, Dr. S.L. (Jason) Yang.

    Our sincere gratitude next goes to Dr. Cecil John Marek, for giving us this opportunity to

    employ our limited knowledge in engineering mechanics in solving such an interesting

    and practical problem related to gas turbine propulsion like this.

    The authors would like to thank Dr. Paul Penko for being the grant monitor on this

    project. Appreciation also goes to Dr. Scott John at NASA Glenn Research Center for

    providing us the listing data for a two-spool high bypass turbofan engine with and

    without ITB, and suggesting some valuable improvement that can be done to the code.

    Special thank is due to Mr. Jeffrey R. Herbon from Williams International for carefully

    reviewing and test-driving the code. Based on his experience and expertise in cycle

    iii

  • 7/29/2019 UserManual_ITB

    4/87

    analysis, he has given us many valuable suggestions on how the program could be

    enhanced for increased usefulness in the future.

    iv

  • 7/29/2019 UserManual_ITB

    5/87

    TABLE OF CONTENTS

    ABSTRACT .... ii

    ACKNOWLEDGEMENT ... iii

    LIST OF FIGURES ... v

    LIST OF TABLES . vi

    NOMENCLATURE ... vii

    1. INTRODUCTION ............. 1

    2. ENGINE PERFORMANCE PARAMETERS. 3

    3. TURBOFAN with ITB CYCLE ANALYSIS.. 11

    4. SUMMARY of EQUATIONS... 20

    5. USER MANUAL ... 24

    6. DATA VALIDATION... 32

    7. RESULTS AND DISCUSSIONS.. 35

    APPENDIX

    A1 EXCEL MACRO VISUAL BASIC CODE .. 44

    A2 FORTRAN 77 CODE ..... 52

    REFERENCES.. 78

    v

  • 7/29/2019 UserManual_ITB

    6/87

    LIST OF FIGURES

    Figure 1.1 A Gas Generator propulsion system.. 1

    Figure 1.2 A TurboJet Engine. 1

    Figure 1.3 A TurboFan Engine... 2

    Figure 3.1 Turbofan with Interstage Turbine Burner 11

    Figure 5.1 Excel Input sheet screenshot.... 25

    Figure 6.1 Turbofan Engine with ITB:specific thrustvs flight Mach number

    (both Fortran77 and Excel) .. 32

    Figure 6.2 Turbofan Engine with ITB:specific thrustvs flight Mach number(both Fortran77 and Excel) .. 33

    Figure 6.3 Turbofan Engine with ITB:specific thrustvs flight Mach number

    (both Fortran77 and Excel) ...... 33

    Figure 6.4 Turbofan Engine ITB:specific thrustvs flight Mach number

    (both Fortran77 and Excel) ...... 34

    Figure 7.1 Turbofan Engine:specific thrustvs flight Mach number. 36

    Figure 7.2 Turbofan Engine: thrust specific fuel consumption vs flight Mach

    number . 37

    Figure 7.3 Turbofan Engine:specific thrustvs compressor pressure ratio .. 38

    Figure 7.4 Turbofan Engine: thrust specific fuel consumption vs compressor pressure

    ratio ..... 38

    Figure 7.5 Turbofan Engine:fuel/air ratio vs flight Mach number ..... 39

    Figure 7.6 Turbofan Engine:specific thrustvs fan pressure ratio ... 40

    Figure 7.7 Turbofan Engine: thrust specific fuel consumption vs fan pressure

    ratio .... 40

    Figure 7.8 Turbofan Engine:specific thrustvs bypass ratio .... 41

    Figure 7.9 Turbofan Engine: thrust specific fuel consumption vs bypass pressure

    ratio .... 42

    vi

  • 7/29/2019 UserManual_ITB

    7/87

    LIST OF TABLES

    Table 7.1 Input Data for Engine Parameters (SI unit) ... 35

    Table 7.2 Input Data for Option 1 (SI unit) ... 36

    Table 7.3 Input Data for Option 2 (SI unit) ... 37

    Table 7.4 Input Data for Option 3 (SI unit) ... 39

    Table 7.5 Input Data for Option 4 (SI unit) ... 41

    Table A.1 Description of variables in MS Excel Macro Visual Basic code ..44

    Table B.1 Description of Input Variables in input file (English and SI unit).. 55

    vii

  • 7/29/2019 UserManual_ITB

    8/87

    NOMENCLATURE

    A cross-sectional areaa sound speed

    CP specific heat at constant pressure

    D drag force

    e polytropic efficiency

    F force uninstalled thrust

    f fuel/air ratio

    gc Newtons constant

    h enthalpy

    hPR low heating value of fuel

    M mach number

    m

    mass flow rate

    P pressure

    Pt total pressure

    Q

    rate of thermal energy released or absorbed

    R universal gas constant

    S uninstalled thrust specific fuel consumption

    T temperature or installed thrust

    TSFC installed specific fuel consumption

    Tt total temperature

    V absolute velocity

    W

    power

    viii

  • 7/29/2019 UserManual_ITB

    9/87

    bypass ratio

    ratio of specific heats,v

    p

    c

    c

    m mechanical Efficiency

    O overall Efficiency

    P propulsive Efficiency

    T thermal Efficiency

    ratio of totalpressure

    r (exception) ratio between total pressure and static pressure due to the

    ram effect,P

    Pt

    ratio of total temperature

    r (exception) ratio between total temperature and static temperature due

    to the ram effect, T

    Tt

    ratio between total enthalpy and enthalpy at ambient condition

    ix

  • 7/29/2019 UserManual_ITB

    10/87

    SUBSCRIPTS

    b main burner or properties between main burner exit and ITB

    c properties between upstream and main burner or engine core

    d diffuser

    e exit

    f fan

    fn fan-nozzle

    HPC high pressure compressor

    HPT high pressure turbine

    ITB interstage turbine combustors

    LPC low pressure compressor

    LPT low pressure turbine

    O inlet

    n nozzle

    r ram

    t properties between ITB exit and downstream or total/stagnation

    values of properties (i.e. temperature, pressure or enthalpy)

    x

  • 7/29/2019 UserManual_ITB

    11/87

    1. Introduction

    This program is designed to give a complete parametric cycle analysis of an ideal Turbo

    Fan air-breathing propulsion system. In most common air-breathing propulsion engines,

    the heart of a gas turbine is the gas generator. It consists of three major components

    namely, compressor, combustor, and turbine as shown schematically in Figure 1.1.

    Figure 1.1 A Gas Generator Propulsion System

    The idea behind a gas generator is to convert intake air mixed with fuel into high

    temperature and high pressure gas. Depending on the applications of the gas turbine, the

    energy provided is extracted and used for different applications (turbojet, turbofan, turbo-

    shaft, turboprop, and ramjet) through different mechanisms. A turbojet engine can be

    constructed by adding an inlet and a nozzle as shown in Figure 1.2.

    Figure 1.2 A Turbo Jet Engine

    The nozzle converts the internal energy of the hot gas into kinetic energy or thrust. The

    work extracted by the turbine is used to drive the compressor. In the case of a turbofan,

    turboprop, and turbo-shaft engine, the work from the turbine is required to drive a shaft

    for the turbo-shaft, a fan for the turbofan, and a propeller for the turboprop in addition todriving the compressor. The ramjet engine consists of an inlet, a combustor, with a nozzle

    at the exit. It does not require the compressor because the inlet already uses a ram air-

    compressing mechanism such that intake air has sufficient kinetic energy to increase its

    pressure.

    xi

  • 7/29/2019 UserManual_ITB

    12/87

    The main objective of this analysis is to determine the relationships between engine

    performance (primarily specific thrust m

    F, thrust specific fuel consumption) to design

    parameters (compressor pressure ratio, fan pressure ratio, bypass ratio, etc), to design

    constraints (burner exit temperature, compressor exit pressure, etc), and to flight

    environment (Mach number, ambient temperature, ambient pressure, etc).

    Figure 1.3 A Turbo Fan Engine

    2. Aircraft Engine Performance Parameters

    Thrust

    Thrust is the force used to sustain the flight (thrust = drag), accelerated flight (thrust >

    drag), deceleration (thrust < drag). Using Figure 1.3 for the control volume, we can apply

    a momentum balance to the control volume. Uninstalled thrustFof a jet engine (single

    inlet and single exhaust) is given by

    xii

  • 7/29/2019 UserManual_ITB

    13/87

    )( ) APP

    g

    VmVmmeoe

    c

    oe ofueloF +

    +

    =

    (2.1)

    where mm

    fuelo

    ..

    , are mass flow rates of air and fuel respectively

    VV eo , are velocities at inlet and exit respectively

    PP eo , are pressure at inlet and exit respectively

    For the ideal case, the hot gas is expanded to the ambient pressure which gives P e = Po.

    Equation (2.1) then becomes

    )g

    VmVmm

    c

    oe ofueloF

    +

    = (2.2)

    The installed thrustTis given by

    DDFT nozzleinlet = (2.3)

    whereDinletandDnozzle are the drag force from the inlet and the nozzle.

    Specific Fuel Consumptions

    The specific fuel consumption is the rate of fuel use by the propulsion system per unit of

    thrust produced. The installed specific fuel consumptions, TSFC, and the uninstalled

    specific fuel consumptions, S, are given by

    T

    mTSFC fuel

    = (2.4)

    xiii

  • 7/29/2019 UserManual_ITB

    14/87

    F

    mS fuel

    = (2.5)

    Efficiency of an Engine

    Some of the following parameters will be used widely in this program namely, thermal

    efficiency, propulsive efficiency, and overall efficiency

    The thermal efficiency characterizes the net energy output extracted (shaft work) from

    the engine divided by the available thermal energy (fuel).

    Q

    W

    in

    out

    T

    = (2.6)

    where,

    =

    =

    =

    hmreleasedenergythermalofrateQ

    engineofoutpowernetW

    efficiencythermal

    PR

    out

    T

    fin

    The propulsive efficiency defines the ratio between the engine power output and the

    power being used to run the aircraft.

    W

    VT

    out

    P =0 (2.7)

    xiv

  • 7/29/2019 UserManual_ITB

    15/87

    where,

    engineofoutpowernetW

    aircraftofvelocityV

    systempropulsionofthrustT

    engineofefficiencypropulsive

    out

    P

    ==

    =

    =

    0

    An overall performance of a propulsion system is given by the combination between

    thermal and propulsive efficiencies.

    TPO

    = (2.8)

    where,

    efficiencyoverallO

    =

    Notations

    Some useful quantity notations for compressible flow will be used in this report namely,

    stagnation temperature, stagnation pressure, and Mach number.

    Stagnation temperature or total temperature Tt is defined as the temperature obtained

    when steadily flowing fluid is brought to rest adiabatically without extraction of work.

    Applying the first law of thermodynamic to a calorically perfect gas gives:

    xv

  • 7/29/2019 UserManual_ITB

    16/87

    2

    V+h=h

    2

    t

    (2.9)

    where,

    h = static enthalpy

    ht = enthalpy at stagnation condition

    V = velocity

    With the assumptions of constant specific heat coefficient, the above equation can be

    written as:

    C2V

    TP

    2

    t+T=

    2

    1+1T= MT

    2

    t(2.10)

    where,

    heatsspecificofratio

    numberMachMetemperaturstaticT

    etemperaturstagnationTt

    ==

    =

    =

    xvi

  • 7/29/2019 UserManual_ITB

    17/87

    Stagnation pressure ortotal pressurePt is defined as the pressure reached when a steady

    flowing fluid is brought to rest adiabatically and reversibly. Using the isentropic relation,

    the total pressure is given by

    M2

    1+1P 2P=

    1

    t

    (2.11)

    The ratio of total temperatures and the ratio of total pressure across a component is

    denoted by the subscript: dfor diffuser,LPCfor low pressure compressor,HPCfor high

    pressure compressor, b for main burner, ITB for inter-stage turbine burner, LPTfor low

    pressure turbine,HPTfor high pressure turbine, n for nozzle, andffor fan.

    For example:

    diffuserenteringpressuretotal

    diffuserleavingpressuretotald =

    diffuserenteringetemperaturtotal

    diffuserleavingetemperaturtotald =

  • 7/29/2019 UserManual_ITB

    18/87

    Exceptions

    For the free stream, ram, we define ras aratio of total temperature/static temperature

    and ras a ratio of total pressure/static pressure.

    MTT

    021

    +1==2

    0

    0t

    r

    (2.12)

    ( )

    M2

    1+1

    PP

    02

    ==

    1

    0

    0t

    r

    (2.13)

    A ratio between total enthalpy of the burner exit and ambient enthalpy, denoted by ,

    is defined such that it will be one of the input parameters.

    ( )TCTC

    p

    tp

    =ambientfor,0

    exitburner

    b

    (2.14)

    ( )TCTC

    p

    tp

    ambientfor

    exitburnerstageInter

    ITB

    ,0

    = (2.15)

  • 7/29/2019 UserManual_ITB

    19/87

    Component Performance

    In this analysis it is acceptable to assume that the working fluid in the engine can be

    idealized as a perfect gas. Properties of an ideal gas strongly depend on the temperature.

    This cycle allows fluid properties variation across the engine which assumes constant

    fluid properties from the main burner entrance upstream (Cpc, c), from ITB entrance to

    the main burner exit (Cpb, b), and from ITB exit downstream (Cpt, t).

    Inlet and Diffuser

    Pressure losses occur due to the friction with the inlet wall. The total pressure ratio, d, is

    always less than 1.

    In supersonic flight, the pressure losses cause shock waves which produce greater

    pressure losses. The inlet total pressure is defined as the product of the ram pressure ratio

    and the diffuser pressure ratio. Therefore the portion of the pressure loss due to the shock

    waves and wall friction is defined by:

    rdd max= (2.16)

    From the Military Specification 5008B (Ref. 2), the following relation is obtained:

    ( )

    +

  • 7/29/2019 UserManual_ITB

    31/87

    T

    T

    C

    C t

    pc

    pt

    ITB

    0

    6= (4.11)

    HPCeHPCcc

    HPC

    1= (4.12)

    LPCeLPCcc

    LPC

    1= (4.13)

    ( ) ( )

    f

    efccf

    1= (4.14)

    LPCHPCc = (4.15)

    cr

    tb

    T

    T

    0

    4= (4.16)

    1

    1

    =

    HPCHPC

    HPCeHPC

    (4.17)

    1

    1

    =

    LPC

    LPC

    LPCeLPC

    (4.18)

    1

    1

    =

    f

    ffe

    f (4.19)

    TCh

    f

    pc

    bPRbB

    brc

    b

    0

    =

    (4.20)

    ( )

    HPTmbHPC

    pc

    pb

    b

    HPCHPT

    C

    Cf +

    +=1

    11

    (4.21)

    [ ]f

    TCh

    CC

    C

    C

    fb

    pb

    ITBPRITBITB

    pb

    pc

    ITB

    pb

    pc

    HPTbcr

    ITB+

    =

    1

    0

    (4.22)

    fffITBb

    += (4.23)

    HPTbcr

    tITB

    T

    T

    0

    6= (4.24)

  • 7/29/2019 UserManual_ITB

    32/87

    ITBHPTbHPCLPCt

    t

    T

    T =2

    6(4.25)

    )

    ( )

    LPTm

    t

    t

    pc

    pt

    fLPC

    LPT

    TT

    CCf +

    ++=

    2

    61

    111

    (4.26)

    HPTeHPTtt

    HPT

    1= (4.27)

    LPTeLPTtt

    LPT

    1= (4.28)

    HPTeHPT

    HPT

    HPT 11

    1

    = (4.29)

    LPTeLPT

    LPT

    LPT 11

    1

    = (4.30)

    nLPTITBHPTbHPCLPCdrt

    P

    P

    P

    P

    10

    0

    10

    10 = (4.31)

    LPTITBHPTbcr

    t

    T

    T=

    0

    10(4.32)

    ( )

    ==

    PP

    TT

    TT

    TT

    T

    T

    ttt

    t

    t

    t

    10

    101

    010

    10

    10

    0

    10

    0

    10

    (4.33)

    ( )

    =

    11

    21

    10

    10

    10

    tt

    P

    PM

    t

    t

    (4.34)

    TR

    TRM

    a

    V

    cc

    tt

    0

    10

    10

    0

    10

    = (4.35)

    fnfdrt

    P

    P

    P

    P

    19

    0

    19

    19 = (4.36)

    ( )

    =

    11

    21

    19

    19

    19

    cc

    P

    PM

    t

    c

    (4.37)

  • 7/29/2019 UserManual_ITB

    33/87

    frt

    T

    T =0

    19(4.38)

    ( ) cc

    PP

    TT

    TT

    TT

    T

    T

    t

    t

    t

    t

    1

    19

    19

    019

    19

    19

    0

    19

    0

    19

    == (4.39)

    MT

    T

    a

    Ma

    a

    V19

    0

    19

    0

    1919

    0

    19 == (4.40)

    ( ) ( )

    +++=

    cc

    t

    c

    c

    P

    P

    aV

    TT

    R

    RfM

    a

    Vf

    g

    a

    m

    F

    c

    1111

    10

    0

    0

    10

    0

    10

    0

    0

    100(4.41)

    +=

    cc

    f

    f PP

    aVT

    T

    MaV

    ga

    m

    F 190

    0

    19

    0

    19

    0

    0

    190

    1

    (4.42)

    )1(

    +

    +

    =

    f

    f

    c

    c

    m

    F

    m

    F

    m

    F (4.43)

    ( )

    +

    +

    =

    0

    1

    m

    FS

    ffITBb

    (4.44)

  • 7/29/2019 UserManual_ITB

    34/87

    5. Users Manual

    The excel program is written in combination between spreadsheet neuron cells, Visual

    Basic, and macro code. These three combinations provide user-friendly software such

    that compilation and preprocessing are no longer necessary. The user obtains result plots

    right a way just by clicking some simple buttons.

    The program is mainly comprised of six sheets namely CoverPage, Instruction, Input,

    plot sheet, data sheet, and Otape&Test.

    CoverPage sheet

    The CoverPage sheet contains the authors of this program. Any questions regarding the

    program can be addressed to us through email or phone.

    Instruction sheet

    First time users are strongly recommended to read this sheet before running the program.

    Since there are always possibilities of getting error computations such as division by

    zero, square root of a negative quantity, or over floating under floating number, the

    program is written such that it will not crash if those errors are encountered during the

    computation. It will instead tell the user where the computation encounters those errors.

    In this sheet, you will find details of how to run the program and how to fix a problem if

    something goes wrong.

    This sheet also explains several assumptions made in the equations so that the users are

    aware of some cases in the equations that have been idealized to simplify the problems.

  • 7/29/2019 UserManual_ITB

    35/87

    Figure 5.1 Excel Input Sheet Screenshot

    Inputsheet

    This sheet is where most of the inputs are specified. The program will check input value

    in this sheet to make sure that all of the inputs are specified. It will tell the user if there

    are inputs that are not specified. There are three Combo Box in the Inputsheet (Combo

    Box is a list box that displays a list of values and lets the users select one of the values in

    the list) namelyITB, Units, and Choose a Plotas shown in Figure 5.1. You need first to

    specify the value in combo box ITB and combo box Units before moving on to combo

    box Choose a Plot. Combo Box Units lets you specify the input and output unit system.

    Currently, the program can handle only two units systems, which are English or SI.

    Combo Box ITB lets you turn ON or OFF the Interstage Burner (ITB) feature. This

    feature provides a flexibility to choose two types of engine and they are engine with ITB

    - ON and engine with ITB - OFF. With this feature, you will be able to see how much

    additional engine performance you can get with ITB-ON or with ITB-OFF. Note that the

    equations used for ITB-OFF are not the same as the equations from the reference book,

    Elements of Gas Turbine Propulsion. This is because the cycle analysis in this program is

  • 7/29/2019 UserManual_ITB

    36/87

    based on two shafts engine, and the one in the reference book is based on one shaft

    engine.

    When ITB-OFF is chosen, the program will execute as if there is no ITB added to the

    Turbofan engine. Accordingly, the following variables will be changed internally and

    automatically:

    1. Cpt = Cpc

    2. t = c

    3. fitb = 0

    4. itb = 1.0

    5. itb = 1.0

    Once all the inputs values are specified and combo box values on both ITB and Units are

    specified, you can specify a value in combo box Choose a Plot. This combo box provides

    several option lists to choose from, and they are:

    1. Specific Thrust and TSFC Vs Compressor Pressure Ratio

    2. Specific Thrust Vs Flight Condition Mach Number

    3. TSFC Vs Flight Condition Mach Number

    4. Specific Thrust Vs Fan Pressure Ratio

    5. TSFC Vs Fan Pressure Ratio

    6. Specific Thrust Vs ByPass Ratio

    7. TSFC Vs ByPass Ratio

    Once you select one of them, you will be directed to a new sheet. Basically once the

    value of the combo box changed, it will execute a certain macro code. The macro code

    associated with this combo box will open hidden plot sheets and hidden data sheets

    depending on the selection you made.

  • 7/29/2019 UserManual_ITB

    37/87

    The following discussion describes the instruction of how to run the program for each

    different option.

    Specific Thrust and TSFC Vs Compressor Pressure Ratio

    When this option is chosen, the program opens four sheets namely ST_VS_PIc,

    SF_VS_PIc, DataSTPIc, and DataSFPIc. You will be directed from Input sheet to

    ST_VS_PIc sheet. ST_VS_PIc plots specific thrust and fuel-air mass fraction versus

    compressor pressure ratio, and SF_VS_PIc plots thrust fuel specific consumptionversus

    compressor pressure ratio.

    ST_VS_PIc

    You expect to see result profiles similar to Figure 7-13a1 and Figure 7-13b1. You need to

    complete all the inputs parameters indicated in green cells of the Input sheet and

    ST_VS_PIc sheet. Click the combo box to select number of plots for different s,

    bypass ratio. New input parameters for different bypass ratio will be created indicated in

    green cells. Once all the green cells are filled, you will need to specify the relation

    between high total pressure compressor and low total pressure compressor ratios. To do

    this you need to click on the Enter Relation. Once the relation between the two

    compressors has been established, you need to click Generate to generate a table forcompressor pressure ratio. At this point you are ready to run the program and generate the

    plots, simply by clicking Calculate button. Data computed will be stored in the

    DataSTPIc sheet.

    SF_VS_PIc

    You expect to see results profiles similar to Figure 7-13c1. Most of the inputs are taken

    from the Input sheet and ST_VS_PIc sheet except for the bypass ratio. You need to

    specify number of bypass ratio you want to plot, then you can click Calculate to perform

    computation and to plot the results. Data computed will be stored in the DataSFPIc sheet.

  • 7/29/2019 UserManual_ITB

    38/87

    Specific Thrust Vs Flight Condition Mach Number or TSFC Vs Flight Condition Mach

    Number

    When you choose this option, the program closes theplot sheets and data sheets from the

    previous use and opens one plot sheet and one data sheet, ST_VS_Mo andDataSTMo or

    SF_VS_Mo andDataSFMo. You will then be directed from Inputsheet to ST_VS_Mo or

    SF_VS_Mo. This sheet is used to plot specific thrustorthrust specific fuel consumption

    versus flight condition Mach numberwith different bypass ratio.

    ST_VS_Mo or SF_VS_Mo

    You expect to see result profiles similar to Figure 7-14a1 or Figure 7-14b1. You need to

    complete all the input parameters indicate in the green cells of this sheet. Then you can

    clickCalculate to run the program and plot the results. Data computed associated with

    this sheet will be stored in theDataSTMo sheet.

    Specific Thrust Vs Fan Pressure Ratio or TSFC Vs Fan Pressure Ratio

    Similar to Flight Condition Mach Number, this option opens ST_VS_PIfand DataSTPIf

    orSF_VS_PIfand DataSTPIf. It plots specific thrustorthrust specific fuel consumption

    vs fan pressure ratio with different bypass ratio. The steps to run the program in this

    sheet are the same from option two or three of the Choose a Plotcombo box.

    Specific Thrust Vs ByPass Ratio or TSFC Vs ByPass Ratio

    This option opens ST_VS_Alp and DataSTAlp or SF_VS_Alp and DataSFAlp. It plots

    specific thrustorthrust specific fuel consumption vs bypass ratio with different fan total

    pressure ratio, f. The steps to run the program in this sheet are the same from option two

    or three of the Choose a Plotcombo box.

  • 7/29/2019 UserManual_ITB

    39/87

    In summary you need to do the followings to run the program:

    1. Go to theInputsheet

    2. Specify the Unitsystem (SI or English)

    3. Specify the ITB switch. Is the computation for engine with ITB-ON or for

    engine with ITB-OFF?

    4. Enter all the input parameters indicated in green cells (do not modify or

    change the value indicated in cyan).

    5. Specify Choose a Plot. You will be directed to a new sheet depending on the

    selection.

    If you select to engine performance (Specific Thrust and TSFC) Vs Compressor Pressure

    Ratio, do the followings:

    ST_VS_PIc:

    a. Specify number of bypass ratio (new green cells will be created).

    b. ClickEnter Relation (Enter relation).

    c. Specify all input parameters indicated in green.

    d. Click Generate to generate compressor total pressure ratio.

    e. Click Calculate to compute and plot the results.

    f. Repeat the above steps for different input parameters. If you want to

    change the input parameters in the Inputsheet, you need to go to the

    Inputsheet.

    SF_VS_PIc:

    a. Specify number of bypass ratio (new green cells will be created).

    b. Specify all input parameters indicated in green.c. Click Calculate.

    d. Repeat the above steps for different bypass ratio. If you want to

    change the input parameters in theInputsheet or in the ST_VS_PIc

    sheet, you need to go back to one of those sheets and change the input

    parameters.

  • 7/29/2019 UserManual_ITB

    40/87

    ST_VS_Mo, SF_VS_Mo, ST_VS_PIf, and SF_VS_PIf:

    a. Specify number of bypass ratio (new green cells will be created).

    b. Specify all input parameters indicated in green.

    c. Click Calculate.

    d. Repeat the above steps for different input parameters. If you want to

    change the input parameters in theInputsheet, you need to go to the

    Inputsheet.

    ST_VS_Alp and SF_VS_Alp:

    a. Specify number of fan total pressure ratio (new green cells will be

    created).

    b. Specify all input parameters indicated in green.

    c. Click Calculate.

    d. Repeat the above steps for different input parameters. If you want to

    change the input parameters in theInputsheet, you need to go to the

    Inputsheet.

    Discussions

    The last sheet in the program is the Otape&Test; this is where the user can check a single

    quantity namely Specific ThrustorThrust Specific Fuel Consumption. Most of the input

    parameters are from theInputsheet; additional inputs are inputs parameters that you see

    in the plot sheets. By clicking the Test, you will obtain Specific Thrust and Thrust

    Specific Fuel Consumption stored in cyan cells.

    This program has been debugged several times. Therefore whenever you encounter

    computation errors due to either zero division or square root of a negative quantity, you

    will be notified by a pop up window indicating where the computation problem is. It will

    indicate which equation that the computational error is encountered. If you have any

  • 7/29/2019 UserManual_ITB

    41/87

    comments or bug problems you encounter in the program, you can report them to us for

    further improvement. Detail about the contact number can be found in the CoverPage

    sheet of the program.

    It is also predicted that the plotting macro can encounter some problems in the future if

    the users are not fully understand the program. Therefore I have set up a way how to fix

    the problem. In case the plot starts giving problem, you need to do the followings (apply

    to all plot sheets: ST_VS_PIc, SF_VS_PIc, ST_VS_PIf, SF_VS_PIf, ST_VS_Mo,

    SF_VS_Mo, ST_VS_Alp, and SF_VS_Alpp):

    a. Go to theplotsheet (e. ST_VS_Mo)

    b. Go to cell D5

    c. Note that you will not be able to click on that cell because it is lying on the

    back of the plot chart. You may want to use cursor button from your

    keyboard.

    d. In that cell it reads SUCCESS. Change the value to any other type of

    character, FAIL for example.

    e. Clear the series in the chart plot by clicking right mouse button on the chart

    plot.

    f. Choose Source Data

    g. Select Series and remove all the series. For the case ST_VS_PIc, you need to

    clear the series on both charts.

    Users are not expected to understand macro code in the program. However the part that

    takes care the computation can be found in Module1 Sub Itb( ). In order to open it, you

    need to open Excel Visual Basic by pressing Alt + F11. Any modification can be made in

    subroutine Itb ( ). Do not add new variables into the program!

  • 7/29/2019 UserManual_ITB

    42/87

    6. Data Validation

    Since there is no experimental data for this application, a Fortran 77 code is written for

    the comparison between results computed by Excel and Fortran 77. All the equations

    used are the same in both codes and can be found in section 4 of Summary of equations.

    Under the same turbofan engine operating conditions with ITB-ON, specific thrust (i.e.

    m

    F, SI unit:

    skg

    N

    /) is computed using both codes and plotted versus various design

    parameters, namely flight Mach number (M0), compressor pressure ratio (c), fan

    pressure ratio (f), and bypass ratio (). All the plots are in Tecplot 9.0 format as shownbelow.

    Figure 6.1 Turbofan engine with ITB: Specific thrustvs flight Mach number

  • 7/29/2019 UserManual_ITB

    43/87

    Figure 6.2 Turbofan engine with ITB: Specific thrustvs compressor pressure

    ratio

    Figure 6.3 Turbofan engine with ITB: Specific thrustvs fan pressure ratio

  • 7/29/2019 UserManual_ITB

    44/87

    Figure 6.4 Turbofan engine with ITB: Specific thrustvs bypass ratio

  • 7/29/2019 UserManual_ITB

    45/87

    7. RESULTS AND DISCUSSIONS

    Using data provided in eng_itb.dat(a sample listing data file for a two-spool high bypass

    turbofan provided by Scott Jones, currently at Propulsion Systems Analysis Office,

    NASA Glenn Research Center), results at different operating conditions are plotted using

    Tecplot 9.0 and shown as below.

    Table 7.2 - The input data for Option 1:

    Table 7.1 Input data for Engine parameters (SI unit)

    Pressure drop ratioengine-core P0/P10 = 0.9 T0 = 216.6667K

    engine - fan P0/P19 = 0.9

    Total pressure ratio

    Maximum diffuser total pressure ratio d max = 0.99 Properties of air and fuel

    main burner total pressure ratio b = 0.96 Specific heat at constant pressure

    ITB - burner total pressure ratio ITB = 0.96 region 0 --> 3 Cpc = 1.000645KJ/Kg-K

    engine nozzle total pressure ratio n = 1.333 region 4 --> 5 Cpb = 1.159743KJ/Kg-K

    fan nozzle total pressure ratio fn = 1.274 region 6 -->10 Cpt= 1.147183KJ/Kg-K

    Polytropic efficiency Ratio of specific heat

    eHPC = 0.9066 region 0 --> 3 c = 1.39999

    eLPC = 0.9036 region 4 --> 5 b = 1.27284

    eHPT = 0.9029 region 6 -->10 t= 1.27882

    eLPT = 0.9174 Low heating value of fuelef = 0.8961 Burner hPR-b = 7917.12KJ/Kg

    Burner efficiency ITB hPR-ITB = 7917.12KJ/Kgb = 0.999

    ITB = 0.999

    Turbine mechanical efficiencym-HPT = 0.92

    m-LPT = 0.93

    Burner exit temperature

    main-burner Tt4 = 1785.594KITB - burner Tt6 = 1563.844K

  • 7/29/2019 UserManual_ITB

    46/87

    Figure 7.1 - Specific thrust vs flight M0

    Figure 7.2 - TSFC vs flight M0

    Mo = 0 To 3 1 = 0.5 Mo = 0.1 2 = 2

    HPC = 25LPC = 1.3

    f = 1.3

    Figure 7.1 Turbofan engine: Specific thrustvsflight Mach number

  • 7/29/2019 UserManual_ITB

    47/87

    Figure 7.2 Turbofan engine: thrust specific fuel consumptionvsflight Machnumber

    Table 7.3 - The input data for Option 2:Figure 7.3 - Specific thrust vs compressor pressure ratio

    Figure 7.4 - TSFC vs compressor pressure ratio

    Figure 7.5 - Fuel/air ratio vs compressor pressure ratioScalec = 19.23

    LPC = 1.01 c = 19.62 to 50HPC = 19.42 c = 1

    f= 1.3 1 = 0.5 = 0.9 2 = 2

  • 7/29/2019 UserManual_ITB

    48/87

    Figure 7.3 Turbofan engine: Specific thrustvs compressor pressure ratio

    Figure 7.4 Turbofan engine: thrust specific fuel consumption

    vs compressor pressure ratio

  • 7/29/2019 UserManual_ITB

    49/87

    Figure 7.5 Turbofan engine:fuel/air ratio vs compressor pressure ratio:

    Table 7.4 - The input data for Option 3:

    Figure 7.6 - Specific thrust vs fan pressure ratio

    Figure 7.7 - TSFC vs fan pressure ratio

    f = 1.01 To 10

    f = 0.251 = 3

    HPC = 25 2 = 5

    LPC = 1.3 3 = 10 = 0.9

  • 7/29/2019 UserManual_ITB

    50/87

    Figure 7.6 Turbofan engine: Specific thrustvsfan pressure ratio

    Figure 7.7 Turbofan engine: thrust specific fuel consumption

    vsfan pressure ratio

  • 7/29/2019 UserManual_ITB

    51/87

    Table 7.5 - The input data for Option 4:

    Figure 7.8 - Specific thrust vs bypass ratio

    Figure 7.9 - TSFC vs bypass ratio

    = 0 To 10 = 0.1

    HPC = 25 f1 = 1.5LPC = 1.3 f2 = 3.5 = 0.9

    Figure 7.8 Turbofan engine: Specific thrustvs bypass ratio

  • 7/29/2019 UserManual_ITB

    52/87

    Figure 7.9 Turbofan engine: thrust specific fuel consumption

    vs bypass ratio

    Discussions

    The computations are successful in providing an estimation of how the turbofan

    performance is improved by adding an Inter-Stage Turbine Burner. As expected, the

    specific thrust is increased at four different engine design parameters, namely Mach

    number, compressor pressure ratio, fan pressure ratio and bypass ratio with the addition

    of ITB. Nevertheless, the specific fuel consumption is relatively increased.

    Typical ranges for each engine design parameter is based on Chapter 7 of Elements of

    Gas Turbine Propulsionby Dr. Jack Mattingly1.

    In addition, more plots will be added in the future if necessary. For convenience purpose,

    a Visual-Basic code may be developed to act as an interface between fortran77 data file

  • 7/29/2019 UserManual_ITB

    53/87

    and MS Excel plot function. Then, user can plot the result data computed using Fortran77

    on MS Excel without knowing how to use Tecplot 9.0 or any other equivalent post-

    processing software.

  • 7/29/2019 UserManual_ITB

    54/87

    Appendix

    A - MACRO VISUAL BASIC CODE in MS EXCEL

    VB code variable VB code variable VB code variable

    a0 a0 gamab b T10_T0 T10/T0

    alpha gamac c T19_T0 T19/T0

    Cpb Cpb gamat t tau_alp_itb -b

    Cpc Cpc hPRb hPR-b tau_alp_itb -ITB

    Cpt Cpt hPRitb hPR-ITB tau_b b

    ef ef M10 M10 tau_c c

    eff_hpc HPC M19 M19 tau_f f

    eff_hpt

    HPT pi_d

    d tau_hpc

    HPC

    eff_lpc LPC pi_f f tau_hpt HPT

    eff_lpt LPT pi_hpc HPC tau_itb ITB

    eff_r r pi_hpt HPT tau_lpc LPC

    effm_hpt m-HPT pi_lpc LPC tau_lpt LPT

    effm_lpt m-LPT pi_lpt LPT tau_r r

    ehpc eHPC pi_r r Tt10_T0 Tt10/T0

    elpc eLPC Pt10_P10 Pt10/P10 Tt19_T0 Tt19/T0

    fb fb Pt19_P19 Pt19/P19 Tt6_Tt2 Tt6/Tt2

    fc_mc rb Rb v0 v0

    ff_mf rc Rc v10_a0 v10/a0

    fitb fITB rt Rt v19_a0 v19/a0

    f_mo s S

    Table A.1 Description of variables in MS Excel Macro Visual Basic code

    c

    c

    m

    F

    f

    f

    m

    F

    0

    m

    F

  • 7/29/2019 UserManual_ITB

    55/87

    Sub itb()

    Dim rc, rb, rt, a0, v0, tau_r, pi_r, eff_r, pi_d, tau_alp_b, tau_alp_itb, tau_hpc, tau_lpc,

    tau_f

    Dim tau_c, tau_b, eff_hpc, eff_lpc, eff_f, fb, tau_hpt, fitb, tau_itb, Tt6_Tt2, tau_lpt

    Dim pi_hpt, pi_lpt, eff_hpt, eff_lpt, Pt10_P10, Tt10_T0, M10, v10_a0, Pt19_P19, M19,

    Tt19_T0

    Dim T19_T0, v19_a0, fc_mc, ff_mf, T10_T0

    'zero-ing internal variables

    rc = 0#: rb = 0#: rt = 0#: a0 = 0#: v0 = 0#: tau_r = 0#: pi_r = 0#: eff_r = 0#: pi_d = 0#

    tau_alp_b = 0#: tau_alp_itb = 0#: tau_hpc = 0#: tau_lpc = 0#: tau_f = 0#tau_c = 0#: tau_b = 0#: eff_hpc = 0#: eff_lpc = 0#: eff_f = 0#: fb = 0#

    tau_hpt = 0#: fitb = 0#: tau_itb = 0#: Tt6_Tt2 = 0#: tau_lpt = 0#

    pi_hpt = 0#: pi_lpt = 0#: eff_hpt = 0#: eff_lpt = 0#: Pt10_P10 = 0#: Tt10_T0 = 0#

    M10 = 0#: v10_a0 = 0#: Pt19_P19 = 0#: M19 = 0#: Tt19_T0 = 0#

    T19_T0 = 0#: v19_a0 = 0#: fc_mc = 0#: ff_mf = 0#

    'empty-ing output variables

    F_mo = Empty: s = Empty: f = Empty

    Style = vbYes

    Title = "ITB Cycle Analysis"

    Style1 = vbYesNo

    Msg = "Do you want to jump to the next alpha?"

    Msg1 = "Division by zero ==> Refer to equations 1, 2, 3"

    Msg2 = "Square root of a negative quantity ==> Refer to equation 4"

    Msg3 = "Division by zero ==> Refer to equation 7"

    Msg4 = "Division by zero ==> Refer to equations 10, 11, 12, 13, 14"

  • 7/29/2019 UserManual_ITB

    56/87

    Msg5 = "Division by zero ==> Refer to equation 16"

    Msg6 = "Division by zero ==> Refer to equations 17, 18, 19"

    Msg7 = "Division by zero ==> Refer to equation 20"

    Msg8 = "Square root of a negative quantity ==> Refer to equation 34"

    Msg9 = "Square root of a negative quantity ==> Refer to equation 37"

    If gamac = 0# Or gamab = 0# Or gamat = 0# Then

    response = MsgBox(Msg1, Sytle, Title)

    Msg1 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg1, Style, Title)

    jump = MsgBox(Msg1, Style1, Title)

    GoTo 10

    End If

    rc = (gamac - 1#) * Cpc / gamac '(1)

    rb = (gamab - 1#) * Cpb / gamab '(2)

    rt = (gamat - 1#) * Cpt / gamat '(3)

    If gamac < 0# Or rc < 0# Or T_o < 0# Or gc < 0# Then

    response = MsgBox(Msg2, Style, Title)

    Msg2 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg2, Sytle, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    a0 = (gamac * rc * T_o * gc) ^ 0.5 '(4)

    v0 = a0 * M0 '(5)

    If gamac = 1# Then

  • 7/29/2019 UserManual_ITB

    57/87

    response = MsgBox(Msg3, Sytle, Title)

    Msg3 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg3, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    tau_r = (gamac - 1#) * (0.5 * M0 ^ 2) + 1# '(6)

    pi_r = tau_r ^ (gamac / (gamac - 1)) '(7)

    If M0

  • 7/29/2019 UserManual_ITB

    58/87

    tau_c = tau_hpc * tau_lpc '(15)

    If T_o = 0# Or tau_r = 0# Or tau_c = 0# Then

    response = MsgBox(Msg5, Style, Title)

    Msg5 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg5, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    tau_b = Tt4 / (T_o * tau_r * tau_c) '(16)

    If tau_hpc = 1# Or tau_lpc = 1# Or tau_f = 1# Then

    response = MsgBox(Msg6, Style, Title)

    Msg6 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg6, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    eff_hpc = ((tau_hpc ^ ehpc) - 1#) / (tau_hpc - 1#) '(17)

    eff_lpc = ((tau_lpc ^ elpc) - 1#) / (tau_lpc - 1#) '(18)

    eff_f = ((tau_f ^ ef) - 1#) / (tau_f - 1#) '(19)

    If tau_alp_b = eff_b * hPRb / (Cpc * T_o) Then

    response = MsgBox(Msg7, Style, Title)

    Msg7 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg7, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

  • 7/29/2019 UserManual_ITB

    59/87

    GoTo 10

    End If

    fb = (tau_c * tau_r - tau_alp_b) / (tau_alp_b - (eff_b * hPRb / (Cpc * T_o)))

    '(20)

    tau_hpt = 1# + (1# - tau_hpc) / ((1# + fb) * (Cpb / Cpc) * tau_hpc * tau_b * effm_hpt)

    '(21)

    If Sheets("Input").ComboBox2.Value = "ON" Then '(22)

    fitb = (1# + fb) * (tau_r * tau_c * tau_b * tau_hpt - (Cpc / Cpb) * tau_alp_itb) / ((Cpc /

    Cpb) * tau_alp_itb - eff_itb * hPRitb / (Cpb * T_o))

    Else

    fitb = 0#

    End If

    f = fb + fitb '(23)

    If Sheets("Input").ComboBox2.Value = "ON" Then

    '(24)

    tau_itb = Tt6 / (T_o * tau_r * tau_c * tau_b * tau_hpt)

    Else

    tau_itb = 1#

    End If

    Tt6_Tt2 = tau_c * tau_b * tau_hpt * tau_itb '(25)

    tau_lpt = 1# + (1# - tau_lpc + alpha * (1# - tau_f)) / ((1# + f) * (Cpt / Cpc) * Tt6_Tt2 *

    effm_lpt) '(26)

    pi_hpt = tau_hpt ^ (gamat / ((gamat - 1#) * ehpt)) '(27)

    pi_lpt = tau_lpt ^ (gamat / ((gamat - 1#) * elpt)) '(28)

  • 7/29/2019 UserManual_ITB

    60/87

    eff_hpt = (1# - tau_hpt) / (1# - tau_hpt ^ (1# / ehpt)) '(29)

    eff_lpt = (1# - tau_lpt) / (1# - tau_lpt ^ (1# / elpt)) '(30)

    Pt10_P10 = P0_P10 * pi_r * pi_d * pi_lpc * pi_hpc * pi_b * pi_hpt * pi_itb * pi_lpt *

    pi_n '(31)

    Tt10_T0 = tau_r * tau_c * tau_b * tau_hpt * tau_itb * tau_lpt

    '(32)

    T10_T0 = Tt10_T0 / Pt10_P10 ^ ((gamat - 1#) / gamat)

    '(33)

    If gamat < 1# Or Pt10_P10 ^ ((gamat - 1#) / gamat) < 1# Then

    response = MsgBox(Msg8, Style, Title)

    Msg8 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg8, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    M10 = (((Pt10_P10 ^ ((gamat - 1#) / gamat)) - 1#) * 2# / (gamat - 1#)) ^ 0.5

    '(34)

    v10_a0 = M10 * (gamat * rt * T10_T0 / (gamac * rc)) ^ 0.5

    '(35)

    Pt19_P19 = P0_P19 * pi_r * pi_d * pi_f * pi_fn '(36)

    If gamac < 1# Or Pt19_P19 ^ ((gamac - 1#) / gamac) < 1# Then

    response = MsgBox(Msg9, Style, Title)

  • 7/29/2019 UserManual_ITB

    61/87

    Msg9 = "Occurs at " & "PIc,PIf,Mo,ByPass = " & pi_hpc * pi_lpc & "," & pi_f & ","

    & M0 & "," & alpha

    response = MsgBox(Msg9, Style, Title)

    jump = MsgBox(Msg, Style1, Title)

    GoTo 10

    End If

    M19 = (((Pt19_P19 ^ ((gamac - 1#) / gamac)) - 1#) * 2# / (gamac - 1#)) ^ 0.5

    '(37)

    Tt19_T0 = tau_r * tau_f '(38)

    T19_T0 = Tt19_T0 / Pt19_P19 ^ ((gamac - 1#) / gamac)

    '(39)

    v19_a0 = M19 * T19_T0 ^ 0.5 '(40)

    fc_mc = (a0 / gc) * ((1# + f) * v10_a0 - M0 + (1# + f) * (rt / rc) * (T10_T0 / v10_a0) *

    (1# - P0_P10) * (1# / gamac)) '(41)

    ff_mf = (a0 / gc) * (v19_a0 - M0 + (T19_T0 / v19_a0) * (1# - P0_P19) / gamac)

    '(42)

    F_mo = (fc_mc + alpha * ff_mf) / (1# + alpha)

    '(43)

    s = f / ((1# + alpha) * F_mo)

    '(44)

    10

    End Sub

  • 7/29/2019 UserManual_ITB

    62/87

    B - FORTRAN 77 code

    Three separate files are needed to execute this code, namely itb.f, comitb.i, and

    input. All the equations used in this code are summarized in the section 4 - Summary of

    equations.

    (A) Main program: itb.f

    itb.fis the main program for this application. It comprises of a main driver and

    nine subroutines. Each subroutine has its own specific function and is described in detail

    below.

    1) Subroutine START

    STARTis the first subroutine called by main driveritb. It ensures that the input

    file exists, and then the program will carry on. Or else, the program will terminate.

    2) Subroutine RINPUT

    Once the file inputis provided at the same directory as itb.f is located,RINPUTwill

    then be called and read in the data file.

    3) Subroutine CONSTANT

    All the constants will be initialized in this subroutine.This subroutine is called only

    once before performing necessary computation.

  • 7/29/2019 UserManual_ITB

    63/87

    4) Subroutine SELECT

    SELECT allows user to specify which plot they desire to get. Up to this point, there

    are only four options to choose, which include:

    Option 1:

    (a). Specific Thrust vs Mach Number (ST_M0.dat)

    (b). TSFC vs Mach Number (TSFC_M0.dat)

    Option 2:

    (a). Specific Thrust vs Compressor Pressure Ratio (ST_PIc.dat)

    (b). TSFC vs Compressor Pressure Ratio (TSFC_PIc.dat)

    (c). Fuel-air Ratio vs Compressor Pressure Ratio (f_PIc.dat)

    Option 3:

    (a). Specific Thrust vs Fan Pressure Ratio (ST_PIf.dat)

    (b). TSFC vs Fan Pressure Ratio (TSFC_PIf.dat)

    Option 4:

    (a). Specific Thrust vs Bypass Ratio (ST_Alpha.dat)

    (b). TSFC vs Bypass Ratio (TSFC_Alpha.dat)

    The selected plots will be plotted and stored in the same directory where the program

    is executed.

    5) Subroutine MACH

    MACH is called to plot engine performance parameters (for instance,specific thrust

    orthrust specific fuel consumption) vsflight mach number.

  • 7/29/2019 UserManual_ITB

    64/87

    6) Subroutine COMPR

    COMPR is called to plot engine performance parameters vs compressor pressure

    ratio.

    7) Subroutine FANPR

    FANPR is called to plot engine performance parameters vsfan pressure ratio.

    8) Subroutine BYPASS

    BYPASS is called to plot engine performance parameters vs bypass ratio.

    9) Subroutine EQUATION

    EQUATION is called to perform all necessary computations. It includes all

    equations here.

    (B) Variable initialization: comitb.i

    All variables will be declared and initialized before running main program and all

    subroutines. Variables are grouped into five common blocks, i.e. inputs, outputs,

    equations, constants, and chardat.

  • 7/29/2019 UserManual_ITB

    65/87

    (C) Data file: input

    Since two types of unit system will be used for computation, namely SI and

    English unit, user needs to specify the input parameter unitsys to be either 0.

    (English unit) or 1.0 (SI unit).

    Another important input parameter is itbsw. When itbsw is set to be 1.,

    ITB will be turned on and vice versa (i.e. itbsw is set to be 0.0).

    Table shown below is the brief descriptions of input variables in input file:

    Input Variables Unit

    program literature English SI

    unitsys - - -

    itbsw - - -

    T0 T0 R Kgamac c - -

    cpc cpc

    Rlbm

    Btu

    KkgkJ

    gamab b - -

    cpb cpb

    Rlbm

    Btu

    KkgkJ

    gamat t - -

    cpt cpt

    Rlbm

    Btu

    KkgkJ

    hprb hPR-b

    lbm

    Btu

    kg

    kJ

    hpritb hPR-itb

    lbm

    Btu

    kg

    kJ

    pidmax d max - -

    pib b - -

    piitb itb - -

    pin n - -

    pifn fn - -

    ehpc eHPC - -

    elpc eLPC - -

  • 7/29/2019 UserManual_ITB

    66/87

    ef ef - -

    ehpt eHPT - -

    elpt eLPT - -

    effb b - -

    effitb itb -

    effmhpt hpt -effmlpt lpt -

    p0op10

    10

    0

    P

    P -

    p0op19

    19

    0

    P

    P -

    Tt4 Tt4 R KTt6 Tt6 R K

    Table B.1 Description of input variables in input file in Fortran77 code (both SI

    and English units)

    Main program: itb.f

    *deck itbprogram itb

    cc +++cc===========================================================cc ITB is the main driver.cc===========================================================c

    include 'comitb.i'cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

  • 7/29/2019 UserManual_ITB

    67/87

    c +++call start

    c +++call rinput

    c +++call constant

    ccall select

    c +++if (plot.eq.1) call mach

    cif (plot.eq.2) call compr

    cif (plot.eq.3) call fanpr

    cif (plot.eq.4) call bypass

    c +++end

    c*deck bypass

    subroutine bypasscc===========================================================cc BYPASS determines the range for bypass ratio forc plotting.cc BYPASS is called by: itbcc===========================================================c

    include 'comitb.i'cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    write(3,*) 'Subroutine BYPASS'c

    open(unit=18,file='ST_Alpha.dat')open(unit=19,file='TSFC_Alpha.dat')

    cWRITE(18,*) 'Title="','Specific Thrust VS Alpha"'if (unitsys.eq.0.0) thenWRITE(18,*) 'Variables = "`a","Sp. thrust [lbf/(lbm/sec)]"'elseWRITE(18,*) 'Variables = "`a","Specific thrust [N/(kg/s)]"'endif

    c

    WRITE(19,*) 'Title="','TSFC VS Alpha"'if (unitsys.eq.0.0) thenWRITE(19,*) 'Variables = "`a","TSFC [(lbm/hr)/lbf]"'elseWRITE(19,*) 'Variables = "`a","TSFC [mg/(N-sec)]"'endif

    cif (npif.gt.0) thendo 90 i=1,npif

    pif=pi_f(i)

  • 7/29/2019 UserManual_ITB

    68/87

    write(*,*) 'pif(',i,')=',pifc

    if (itbsw.eq.0.) thenwrite(18,314)'Zone T="`p_f = ',pif,'(no itb)"'write(19,314)'Zone T="`p_f = ',pif,'(no itb)"'

    elsewrite(18,314)'Zone T="`p_f = ',pif,'(itb)"'write(19,314)'Zone T="`p_f = ',pif,'(itb)"'

    endifc

    do 100 alpha = ialp,falp,dalpc

    alpp1 = alpha+1.0ralpp1 = 1.0/alpp1

    ccall equationif (error.eq.1.0) then

    write(*,*) 'error'go to 90

    endif

    write(18,313) alpha,stwrite(19,313) alpha,tsfc

    100 continue90 continue

    endifc

    close(18)close(19)return

    313 format(f10.5,2x,f13.8)314 format(a15,f5.2,a9)

    endc*deck compr

    subroutine comprcc===========================================================cc COMPR determines the range for compressor pressurec ratio for plotting.cc COMPR is called by: itbcc===========================================================c

    include 'comitb.i'c

    c//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    write(3,*) 'Subroutine COMPR'c

    open(unit=15,file='ST_PIc.dat')open(unit=16,file='TSFC_PIc.dat')open(unit=17,file='f_PIc.dat')

    cWRITE(15,*) 'Title="','Specific Thrust VS Pi Comp"'if (unitsys.eq.0.0) then

  • 7/29/2019 UserManual_ITB

    69/87

    WRITE(15,*)'Variables ="`p_c","Sp.thrust [lbf/(lbm/sec)]"'elseWRITE(15,*)'Variables ="`p_c","Sp.thrust [N/(kg/s)]"'endif

    cWRITE(16,*) 'Title="','TSFC VS Pi Comp"'if (unitsys.eq.0.0) thenWRITE(16,*)'Variables = "`p_c","TSFC [(lbm/hr)/lbf]"'elseWRITE(16,*)'Variables = "`p_c","TSFC [mg/(N-sec)]"'endif

    cWRITE(17,*) 'Title="','f VS Pi Comp"'WRITE(17,*) 'Variables = "`p_c","f"'

    cipic = scalec*pilpc*pilpck=1do 60 pic = ipic,fpic,dpic

    term = pic/scalectpilpc(k) = sqrt(term)

    tpihpc(k) = pic/tpilpc(k)k=k+1

    60 continuewrite(3,*) pilpc,pihpc,picwrite(3,*) ipic,fpic,dpic

    cif (nalpha.gt.0) thendo 70 i=1,nalpha

    alpha=alp(i)write(*,*) 'alpha(',i,')=',alphaif (itbsw.eq.0.) then

    write(15,12)'Zone T="`a =',alpha,'(no itb)"'write(16,12)'Zone T="`a =',alpha,'(no itb)"'write(17,12)'Zone T="`a =',alpha,'(no itb)"'

    elsewrite(15,12)'Zone T="`a =',alpha,'(itb)"'write(16,12)'Zone T="`a =',alpha,'(itb)"'write(17,12)'Zone T="`a =',alpha,'(itb)"'

    endifc

    alpp1 = alpha+1.0ralpp1 = 1.0/alpp1

    c write(3,*) 'alpp1=',alpp1c write(3,*) 'ralpp1=',ralpp1c

    j=1write(3,*) pilpc,pihpc,pic

    write(3,*) ipic,fpic,dpicdo 80 pic = ipic,fpic,dpic

    pilpc = tpilpc(j)pihpc = tpihpc(j)write(3,*) pilpc,pihpc,pic

    ccall equationif (error.eq.1.0) then

    write(*,*) 'error'go to 70

  • 7/29/2019 UserManual_ITB

    70/87

    endifwrite(15,11) pic,stwrite(16,11) pic,tsfcwrite(17,11) pic,f

    c count=count+1j=j+1

    80 continue70 continue

    endifc

    close (15)close (16)close (17)return

    11 format(f10.5,2x,f13.9)12 format(a13,f5.2,a9)

    endc*deck constant

    subroutine constant

    cc===========================================================cc EQUATION performs all necessary computations.cc EQUATION is called by: mach,compr,fanpr,bypasscc===========================================================c

    include 'comitb.i'cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    write(3,*)write(3,*) '*******Check constant begins!!******'

    cgc=32.174if (unitsys.eq.1.0) gc = 1.0

    cecvrn = 778.14if (unitsys.eq.1.0) ecvrn = 1000.0

    crgc = 1.0/gcwrite(3,*) 'gc=',gcwrite(3,*) 'rgc=',rgc

    crgamac = 1.0/gamac

    rgamat = 1.0/gamatrgamab = 1.0/gamabwrite(3,*) 'rgamac=',rgamacwrite(3,*) 'rgamat=',rgamatwrite(3,*) 'rgamab=',rgamab

    cgcm1ogc = (gamac-1.0)*rgamacgtm1ogt = (gamat-1.0)*rgamatgbm1ogb = (gamab-1.0)*rgamabwrite(3,*) 'gcm1ogc=',gcm1ogc

  • 7/29/2019 UserManual_ITB

    71/87

    write(3,*) 'gtm1ogt=',gtm1ogtwrite(3,*) 'gbm1ogb=',gbm1ogb

    crgcm1ogc = 1.0/gcm1ogcrgtm1ogt = 1.0/gtm1ogtrgtm1 = 1.0/(gamat-1.0)rgcm1 = 1.0/(gamac-1.0)write(3,*) 'rgcm1ogc=',rgcm1ogcwrite(3,*) 'rgtm1ogt=',rgtm1ogtwrite(3,*) 'rgcm1=',rgcm1write(3,*) 'rgtm1=',rgtm1

    cTt4oT0 = Tt4/T0Tt6oT0 = Tt6/T0write(3,*) 'Tt4oT0=',Tt4oT0write(3,*) 'Tt6oT0=',Tt6oT0

    ccpbocpc = cpb/cpccptocpc = cpt/cpccpcocpb = 1.0/cpbocpc

    write(3,*) 'cpbocpc=',cpbocpcwrite(3,*) 'cptocpc=',cptocpcwrite(3,*) 'cpcocpb=',cpcocpb

    crehpc = 1.0/ehpcrelpc = 1.0/elpcwrite(3,*) 'rehpc=',rehpcwrite(3,*) 'relpc=',relpc

    crehpt = 1.0/ehptrelpt = 1.0/elptwrite(3,*) 'rehpt=',rehptwrite(3,*) 'relpt=',relpt

    ctaud = 1.0

    cwrite(3,*) '******constant check ENDs!!******'write(3,*)

    creturnend

    c*deck equation

    subroutine equationcc===========================================================c

    c EQUATION performs all necessary computations.cc EQUATION is called by: itbcc===========================================================c

    include 'comitb.i'INTEGER eqn

    cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

  • 7/29/2019 UserManual_ITB

    72/87

    cerror=0.eqn = 0write(3,*) '-----------------------------'write(3,*) 'Subroutine EQUATION'write(3,*) '-----------------------------'

    cc --- equation 1,2,3c

    rc = gcm1ogc*cpc*ecvrnrb = gbm1ogb*cpb*ecvrnrt = gtm1ogt*cpt*ecvrnwrite(3,*) 'Rc=',rcwrite(3,*) 'Rt=',rtwrite(3,*) 'Rb=',rb

    crtorc = rt/rcwrite(3,*) 'rtorc=',rtorc

    cc --- equation 4 & 5

    cterm = gamac*rc*gc*T0if (term.lt.0) then

    eqn = 4write(3,201) eqn

    endifc

    a0 = sqrt(term)v0 = a0*M0write(3,*) 'a0=',a0write(3,*) 'v0=',v0

    cc --- equation 6,7,8c

    taur = 1.0+(gamac-1.0)/2*M0*M0pir = taur**rgcm1ogceffr = 1.if (M0.gt.5.0) then

    effr = 800/(M0**4+935.0)else if (M0.gt.1.0) then

    effr = 1.0-0.075*(M0-1)**1.35endif

    cwrite(3,*) 'taur=',taurwrite(3,*) 'pir=',pirwrite(3,*) 'effr=',effr

    c

    c --- equation 9,10,11c

    pid = pidmax*effrtaulb = cpbocpc*Tt4oT0taulitb = cptocpc*Tt6oT0write(3,*) 'pid=',pidwrite(3,*) 'taulb=',taulbwrite(3,*) 'taulitb=',taulitb

    cc

  • 7/29/2019 UserManual_ITB

    73/87

    c --- equation 12 & 13c

    tauhpc = pihpc**(gcm1ogc*rehpc)taulpc = pilpc**(gcm1ogc*relpc)write(3,*) 'tauhpc=',tauhpcwrite(3,*) 'taulpc=',taulpc

    cc --- equation 14,15,16c

    if (ef.lt.0) theneqn = 14write(3,201) eqn

    endifc

    tauf = pif**(gcm1ogc/ef)tauc = tauhpc*taulpc

    cterm = taur*tauc*taudif (term.lt.0) then

    eqn = 16

    write(3,201) eqnendif

    ctaub = Tt4oT0/(term)

    cwrite(3,*) 'tauf=',taufwrite(3,*) 'tauc=',taucwrite(3,*) 'taub=',taub

    cc --- equation 17,18,19c

    if (tauhpc.eq.1.0) theneqn = 17write(3,201) eqn

    go to 299endif

    ceffhpc = (tauhpc**ehpc-1.0)/(tauhpc-1.0)write(3,*) 'effhpc=',effhpc

    cif (taulpc.eq.1.0) then

    eqn = 18write(3,201) eqn

    go to 299endif

    cefflpc = (taulpc**elpc-1.0)/(taulpc-1.0)

    write(3,*) 'efflpc=',efflpcc

    if (tauf.eq.1.0) theneqn = 19write(3,201) eqn

    go to 299endif

    cefff = (tauf**ef-1.0)/(tauf-1.0)write(3,*) 'efff=',efff

  • 7/29/2019 UserManual_ITB

    74/87

    cc --- equation 20c

    num = tauc*taur-taulbdenom = taulb-(effb*hprb)/(cpc*T0)write(3,*) 'num=',numwrite(3,*) 'denom=',denom

    cif (denom.eq.0) then

    eqn = 20write(3,201) eqn

    go to 299endif

    cfb = num/denomwrite(3,*) 'fb=',fb

    cc --- equation 21c

    denom = (1.0+fb)*cpbocpc*tauhpc*taub*effmhpt

    write(3,*) 'denom=',denomc

    if (denom.eq.0) theneqn = 21write(3,201) eqn

    go to 299endif

    ctauhpt = 1.0+(1.0-tauhpc)/denomwrite(3,*) 'tauhpt=',tauhpt

    cc --- equation 22 & 23c

    if (itbsw.eq.1.0) thendenom1 = cpcocpb*taulitbdenom2 = (effitb*hpritb)/(cpb*T0)denom = denom1-denom2num = taur*taud*tauc*taub*tauhpt-cpcocpb*taulitbwrite(3,*) 'denom1=',denom1write(3,*) 'denom2=',denom2write(3,*) 'denom=',denomwrite(3,*) 'num=',num

    cif (denom.eq.0) then

    eqn = 22write(3,201) eqn

    go to 299

    endiffitb = num/denom*(1.0+fb)

    elsefitb = 0.0

    endifc

    f = fb+fitbwrite(3,*) 'fitb=',fitbwrite(3,*) 'f=',f

    c

  • 7/29/2019 UserManual_ITB

    75/87

    c --- equation 24 & 25c

    if (itbsw.eq.1.0) thennum=taur*tauc*taub*tauhptwrite(3,*) 'num=',numif (num.eq.0) then

    eqn = 24write(3,201) eqngo to 299

    endiftauitb = Tt6oT0/num

    elsetauitb = 1.0

    endifc

    Tt6oTt2 = tauitb*taulpc*tauhpc*taub*tauhptwrite(3,*) 'tauitb=',tauitbwrite(3,*) 'Tt6oTt2=',Tt6oTt2

    cc --- equation 26,27,28,29,30

    cfp1 = f+1.0num = 1.0-taulpc+alpha*(1.0-tauf)denom = fp1*cptocpc*Tt6oTt2*effmlptwrite(3,*) 'num=',numwrite(3,*) 'denom=',denom

    cc

    if (denom.eq.0) theneqn = 26write(3,201) eqn

    go to 299endif

    ctaulpt = 1.0+num/denomwrite(3,*) 'taulpt=',taulpt

    cpihpt = tauhpt**(rgtm1ogt*rehpt)pilpt = taulpt**(rgtm1ogt*relpt)write(3,*) 'pihpt=',pihptwrite(3,*) 'pilpt=',pilpt

    cdenom = 1.0-tauhpt**rehptwrite(3,*) 'denom=',denomif (denom.eq.0) then

    eqn = 29write(3,201) eqn

    go to 299endif

    ceffhpt = (1.0-tauhpt)/denomwrite(3,*) 'effhpt=',effhpt

    cdenom = 1.0-taulpt**relptwrite(3,*) 'denom=',denomif (denom.eq.0) then

    eqn = 30

  • 7/29/2019 UserManual_ITB

    76/87

    write(3,201) eqngo to 299endif

    cefflpt = (1.0-taulpt)/denomwrite(3,*) 'efflpt=',efflpt

    cc --- eqaution 31,32,33,34,35c

    pt10op10 = p0op10*pir*pid*pilpc*pihpc*pibpt10op10 = pt10op10*pihpt*piitb*pilpt*pinwrite(3,*) 'pt10op10=',pt10op10

    cTt10oT0 = taur*tauc*taub*tauhpt*taulpt*tauitbdenom = pt10op10**gtm1ogtwrite(3,*) 'Tt10oT0=',Tt10oT0write(3,*) 'denom=',denomif (denom.eq.0) then

    eqn = 33write(3,201) eqn

    go to 299endif

    cT10oT0 = Tt10oT0/denomwrite(3,*) 'T10oT0=',T10oT0

    cterm = denomif (term.lt.1.0) then

    eqn = 34write(3,200) eqn

    go to 299endif

    cM10 = sqrt(2.0*(term-1.0)/(gamat-1.0))

    cterm = rtorc*T10oT0*gamat/gamacwrite(3,*) 'term=',term

    cif (term.lt.0.0) then

    eqn = 35write(3,200) eqn

    go to 299endif

    cv10oa0 = M10*sqrt(term)write(3,*) 'M10=',M10write(3,*) 'v10oa0=',v10oa0

    cc --- equation 36,37,38,39,40c

    pt19op19 = p0op19*pir*pid*pif*pifnc

    term = pt19op19**gcm1ogcwrite(3,*) 'pt19op19=',pt19op19write(3,*) 'term=',termif (term.lt.1.0) then

    eqn = 37

  • 7/29/2019 UserManual_ITB

    77/87

    write(3,200) eqngo to 299endif

    cM19 = sqrt(2.0*(term-1.0)/(gamac-1.0))write(3,*) 'M19=',M19

    cTt19oT0 = taur*tauf

    cdenom = termT19oT0 = Tt19oT0/denomwrite(3,*) 'Tt19oT0=',Tt19oT0write(3,*) 'T19oT0=',T19oT0

    cif (T19oT0.lt.0) then

    eqn = 40write(3,200) eqn

    go to 299endif

    c

    v19oa0 = sqrt(T19oT0)*M19write(3,*) 'v19oa0=',v19oa0

    cc --- equation 41 & 42c

    term = fp1*rtorc*T10oT0*(1.0-p0op10)*rgamac/v10oa0write(3,*) 'term=',termwrite(3,*) 'a0=',a0write(3,*) 'rgc=',rgcwrite(3,*) 'fp1=',fp1write(3,*) 'v10oa0=',v10oa0write(3,*) 'M0=',M0fcomc = a0*rgc*(fp1*v10oa0-M0+term)if (fcomc.lt.0) then

    eqn = 41write(3,202) eqn

    go to 299endif

    cwrite(3,*) 'term=',termwrite(3,*) 'fcomc=',fcomc

    cterm = T19oT0*(1.0-p0op19)*rgamac/v19oa0ffomf = a0*rgc*(v19oa0-M0+term)write(3,*) 'term=',termwrite(3,*) 'ffomf=',ffomf

    c

    c --- equation 43 & 44c

    st = (fcomc+ffomf*alpha)*ralpp1c

    tsfc = ((1.0-unitsys)*3600+unitsys*1e6)*(f*ralpp1/st)write(3,*) 'st=',stwrite(3,*) 'tsfc=',tsfcwrite(3,*) '------------------------------'

    c ---299 if (eqn.gt.0) error=1.0

  • 7/29/2019 UserManual_ITB

    78/87

    returnc200 format(' Error: Square root of a negative number! Check

    & equation',i3)201 format(' Error: Division by zero !! Check equation', i3)202 format(' Error: Negative Fc/mcdot !! Check equation',i3)

    endc*deck fanpr

    subroutine fanprcc===========================================================cc FANPR determine the range of Fan pressure ratio forc plotting.cc FANPR is called by: itbcc===========================================================c

    include 'comitb.i'cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    write(3,*) 'Subroutine FANPR'c

    open(unit=13,file='ST_PIf.dat')open(unit=14,file='TSFC_PIf.dat')

    cWRITE(13,*) 'Title="','Specific Thrust VS Pi Fan"'if (unitsys.eq.0.0) thenWRITE(13,*)'Variables = "`p_f","Sp. thrust [lbf/(lbm/sec)]"'elseWRITE(13,*)'Variables = "`p_f","Sp. thrust [N/(kg/s)]"'endif

    cWRITE(14,*) 'Title="','TSFC VS Pi Fan"'if (unitsys.eq.0.0) thenWRITE(14,*)'Variables = "`p_f","TSFC [(lbm/hr)/lbf]"'elseWRITE(14,*)'Variables = "`p_f","TSFC [(mg/(N-sec)]"'endif

    cif (nalpha.gt.0) thendo 40 i=1,nalpha

    alpha=alp(i)write(*,*) 'alpha(',i,')=',alpha

    cif (itbsw.eq.0.) then

    write(13,12)'Zone T="`a = ',alpha,'(no itb)"'write(14,12)'Zone T="`a = ',alpha,'(no itb)"'

    elsewrite(13,12)'Zone T="`a = ',alpha,'(itb)"'write(14,12)'Zone T="`a = ',alpha,'(itb)"'

    endifc

    alpp1 = alpha+1.0

  • 7/29/2019 UserManual_ITB

    79/87

    ralpp1 = 1.0/alpp1write(3,*) 'alpp1=',alpp1write(3,*) 'ralpp1=',ralpp1

    cdo 50 pif = ipif,fpif,dpif

    call equationif (error.eq.1.0) then

    c write(*,*) 'error'go to 40

    endifwrite(13,11) pif,stwrite(14,11) pif,tsfc

    c count=count+150 continue40 continue

    endifc

    close (13)close (14)return

    11 format(f10.5,2x,f13.9)12 format(a13,f5.2,a9)

    endc*deck mach

    subroutine machcc===========================================================cc MACH determine the range of Mach number for plotting.cc MACH is called by: itbcc===========================================================c

    include 'comitb.i'cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    write(3,*) 'Subroutine MACH'c

    open(unit=11,file='ST_M0.dat')open(unit=12,file='TSFC_M0.dat')

    cWRITE(11,*) 'Title="','Specific Thrust VS Mach #"'if (unitsys.eq.0.0) thenWRITE(11,*)'Variables = "M_0","Sp. thrust [lbf/(lbm/sec)]"'

    elseWRITE(11,*)'Variables = "M_0","Sp. thrust [N/(kg/s)]"'endif

    cWRITE(12,*) 'Title="','TSFC VS Mach #"'if (unitsys.eq.0.0) thenWRITE(12,*)'Variables = "M_0","TSFC [(lbm/hr)/lbf]"'elseWRITE(12,*)'Variables = "M_0","TSFC [mg/(N-sec)]"'endif

  • 7/29/2019 UserManual_ITB

    80/87

    cif (nalpha.gt.0) thendo 20 i=1,nalpha

    alpha=alp(i)write(*,*) 'alpha(',i,')=',alpha

    c count=0if (itbsw.eq.0.) then

    write(11,12)'Zone T="`a = ',alpha,'(no itb)"'write(12,12)'Zone T="`a = ',alpha,'(no itb)"'

    elsewrite(11,12)'Zone T="`a = ',alpha,'(itb)"'write(12,12)'Zone T="`a = ',alpha,'(itb)"'

    endifc

    alpp1 = alpha+1.0ralpp1 = 1.0/alpp1write(3,*) 'alpp1=',alpp1write(3,*) 'ralpp1=',ralpp1

    cdo 10 M0 = iM0,fM0,dM0

    call equationif (error.eq.1.0) then

    write(*,*) '!!error!!'go to 20

    endifwrite(11,11) M0,stwrite(12,11) M0,tsfc

    10 continue20 continue

    endifc

    close(11)close(12)return

    11 format(f10.5,2x,f13.7)12 format(a13,f5.2,a9)

    endc*deck rinput

    subroutine rinputcc===========================================================cc RINPUT reads the 'input' data file.cc RINPUT is called by: itbc

    c===========================================================c

    include 'comitb.i'character *10 id(4)

    cc//////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    read (1,310) id(1),unitsyswrite(3,310) ' unitsys',unitsys

    c

  • 7/29/2019 UserManual_ITB

    81/87

    read (1,310) id(1),itbswwrite(3,310) ' itbsw ',itbsw

    cread (1,310) id(1),T0write(3,310) ' T0 ',T0

    cread (1,310) id(1),gamac,id(2),cpcwrite(3,310) ' gamac ',gamac,' cpc ',cpc

    cread (1,310) id(1),gamab,id(2),cpbwrite(3,310) ' gamab ',gamab,' cpb ',cpb

    cread (1,310) id(1),gamat,id(2),cptif (itbsw.eq.0.0) then

    cpt = cpbgamat = gamab

    endifwrite(3,310) ' gamat ',gamat,' cpt ',cpt

    cread (1,310) id(1),hprb,id(2),hpritb

    write(3,310) ' hprb ',hprb, ' hpritb ',hpritbc

    read (1,310) id(1),pidmax,id(2),pib,id(3),piitbif (itbsw.eq.0.0) piitb = 1.0write(3,310) ' pidmax ',pidmax,' pib ',pib,& ' piitb ',piitb

    cread (1,310) id(1),pin,id(2),pifnwrite(3,310) ' pin ',pin,' pifn ',pifn

    cread (1,310) id(1),ehpc,id(2),elpc,id(3),efwrite(3,310) ' ehpc ',ehpc,' elpc ',elpc,& ' ef ',ef

    cread (1,310) id(1),ehpt,id(2),elptwrite(3,310) ' ehpt ',ehpt,' elpt ',elpt

    cread (1,310) id(1),effb,id(2),effitbwrite(3,310) ' effb ',effb,' effitb ',effitb

    cread (1,310) id(1),effmhpt,id(2),effmlptwrite(3,310) ' effmhpt',effmhpt,' effmlpt',effmlpt

    cread (1,310) id(1),p0op10,id(2),p0op19write(3,310) ' p0op10 ',p0op10,' p0op19 ',p0op19

    cread (1,310) id(1),Tt4,id(2),Tt6

    write(3,310) ' Tt4 ',Tt4,' Tt6 ',Tt6c

    return310 format(a8,f14.8)311 format(a8,i5)

    endc*deck select

    subroutine selectc===========================================================

  • 7/29/2019 UserManual_ITB

    82/87

    cc SELECT allows user to specify the desired plots.cc SELECT is called by: itbcc===========================================================c

    include 'comitb.i'CHARACTER *2 try

    cc///////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\c1 write(*,*)

    write(*,*) 'Please choose a plot:'write(*,*) '--------------------'write(*,*) '(1)'write(*,*) ' a. Specific Thrust vs Mach Number'write(*,*) ' b. TSFC vs Mach Number'write(*,*) '(2)'write(*,*) ' a. Specific Thrust vs Compressor Pres.Ratio'

    write(*,*) ' b. TSFC vs Compressor Pres.Ratio'write(*,*) ' c. Fuel-air Ratio vs Compressor Pres.Ratio'write(*,*) '(3)'write(*,*) ' a. Specific Thrust vs Fan Pres.Ratio'write(*,*) ' b. TSFC vs Fan Pres.Ratio'write(*,*) '(4)'write(*,*) ' a. Specific Thrust vs Bypass Ratio'write(*,*) ' b. TSFC vs Bypass Ratio'write(*,*) '--------------------'write(*,*) '(1~4)?'read (*,*) plot

    cif (plot.lt.1.or.plot.gt.4) then

    write(*,*) '!!Invalid selction number!!'write(*,*) ' Try again (y/n)?'read (*,*) try

    if (try.eq.'y'.or.try.eq.'Y') go to 1endif

    cc +++ Plot 1c

    if (plot.eq.1) thenwrite(*,*) 'Initial M0 (iM0):'read (*,*) iM0

    2 write(*,*) 'Final M0 (fM0):'read (*,*) fM0

    c

    if (fM0.le.iM0) thenwrite(*,*) ' >>Error: iM0 >= fM0 !!'go to 2

    endifc

    write(*,*) 'Delta M0 (dM0):'read (*,*) dM0write(*,*) 'HPC Pressure Ratio (pihpc):'read (*,*) pihpcwrite(*,*) 'LPC Pressure Ratio (pilpc):'

  • 7/29/2019 UserManual_ITB

    83/87

    read (*,*) pilpcwrite(*,*) 'Fan Pressure Ratio (pif):'read (*,*) pif

    endifcc +++ Plot 2c

    if (plot.eq.2) thenwrite(*,*) 'LPC Pressure Ratio (pilpc):'read (*,*) pilpcwrite(*,*) 'Constant between LPC & HPC (scalec):'write(*,*) ' i.e. HPC = scalec*LPC'read (*,*) scalec

    cpihpc = scalec*pilpcipic = scalec*pilpc*pilpcwrite(*,'(a6,f6.2)') ' HPC =',pihpcwrite(*,'(a21,f6.2)') ' Initial pic (ipic) =',ipic

    3 write(*,*) 'Final pic (fpic):'read (*,*) fpic

    cif (fpic.le.ipic) then

    write(*,*) ' >>Error: ipic >= fpic'go to 3

    endifc

    write(*,*) 'Delta pic (dpic):'read (*,*) dpicwrite(*,*) 'Fan Pressure Ratio (pif):'read (*,*) pifwrite(*,*) 'Mach Number (M0):'read (*,*) M0

    endifcc +++ Plot 3c

    if (plot.eq.3) then4 write(*,*) 'Initial pif (ipif):'

    read (*,*) ipifc

    if (ipif.le.1.0) thenwrite(*,*)'>>Error: "ipif" has to be greater than 1.0'go to 4

    endifc

    5 write(*,*) 'Final pif (fpif):'read (*,*) fpif

    cif (fpif.le.ipif) then

    write(*,*) ' >>Error: ipif >= fpif'go to 5

    endifc

    write(*,*) 'Delta pif (dpif):'read (*,*) dpifwrite(*,*) 'HPC Pressure Ratio (pihpc):'read (*,*) pihpc

  • 7/29/2019 UserManual_ITB

    84/87

    write(*,*) 'LPC Pressure Ratio (pilpc):'read (*,*) pilpcwrite(*,*) 'Mach number (M0):'read (*,*) M0

    endifcc +++ Plot 4c

    if (plot.eq.4) thenwrite(*,*) 'Initial alpha (ialp):'read (*,*) ialp

    6 write(*,*) 'Final alpha (falp):'read (*,*) falp

    cif (falp.le.ialp) then

    write(*,*) ' >>Error: ialp >= falp'go to 6

    endifc

    write(*,*) 'Delta alpha (dalp):'

    read (*,*) dalpwrite(*,*) 'HPC Pressure Ratio (pihpc):'read (*,*) pihpcwrite(*,*) 'LPC Pressure Ratio (pilpc):'read (*,*) pilpcwrite(*,*) 'Mach number (M0):'read (*,*) M0write(*,*)write(*,*) 'Plot at different fan pres. ratio (pif)'write(*,*) '---------------------------------------'write(*,*) 'Number of pif (npif):'read (*,*) npifwrite(*,*) 'Please input',npif,' pif(s):'do 7 i=1,npif

    write(*,*) 'pif',i,' ->'read (*,*) pi_f(i)

    7 continueendif

    cif (plot.le.3) then

    write(*,*)write(*,*) 'Plot at different bypass ratio (alpha)'write(*,*) '--------------------------------------'write(*,*) 'Number of alpha (nalpha):'read (*,*) nalphawrite(*,*) 'Please input',nalpha,' alpha(s):'do 8 i=1,nalpha

    write(*,*) 'alpha',i,' ->'read (*,*) alp(i)

    8 continueendif

    creturnend

    c*deck start

    subroutine start

  • 7/29/2019 UserManual_ITB

    85/87

    c===========================================================cc START performs initialization for 'itb' run.cc START is the first subroutine called by the driver.cc START is called by: itbcc===========================================================c

    include 'comitb.i'logical present

    cc///////////////////////////////\\\\\\\\\\\\\\\\\\\\\\\\\\\\c

    open(unit=3,file='check')c +++c +++ ensure that 'input' file existsc +++

    inquire(file='input',exist=present)

    if(.not.present) thenwrite(*,300)write(3,300)call exit(0)

    endifc

    open(unit=1,file='input')read (1,301) namewrite(3,301) name

    300 format(' data file input is missing: run aborted')301 format(a80)

    returnend

    Variable initialization: comitb.i

    *deck comitbcc implicit double precision (a-h,o-z)

    parameter (na=10,ncomp=1000)c na = maximum number of different alpha valuesc

    REAL M0,iM0,M10,M19,num,ipic,ialp,ipif,itbswCHARACTER *80 name

    ccommon /inputs/ unitsys,itbsw,T0,gamac,cpc,gamab,cpb,1 gamat,cpt,hprb,hpritb,pidmax,pib,piitb,pin,pifn,ehpc,2 elpc,ef,ehpt,elpt,effb,effitb,effmhpt,effmlpt,p0op10,3 p0op19,Tt4,Tt6,M0,iM0,dM0,fM0,pihpc,pilpc,pic,ipic,4 dpic,fpic,tpilpc(ncomp),tpihpc(ncomp),scalec,pif,ipif,5 dpif,fpif,npif,pi_f(na),ialp,dalp,falp,nalpha,alpha,6 alp(na),taud,plot

  • 7/29/2019 UserManual_ITB

    86/87

    ccommon /outputs/ f,st,tsfc

    ccommon /equations/ rc,rb,rt,a0,v0,taur,pir,effr,pid,taulb,1 taulitb,tauhpc,taulpc,tauf,tauc,taub,effhpc,efflpc,efff,2 fb,tauhpt,fitb,tauitb,Tt6oTt2,taulpt,pihpt,pilpt,effhpt,3 efflpt,pt10op10,Tt10oT0,t10oT0,M10,v10oa0,pt19op19,M19,4 Tt19oT0,T19oT10,v19oa0,fcomc,ffomf

    ccommon /constants/ gc,rgc,ecvrn,gcm1ogc,gbm1ogb,gtm1ogt,1 rgcm1ogc,denom,fp1,rgtm1ogt,rehpt,relpt,num,pt10rgt,2 rgtm1,term,rgcm1,pt19rgc,rgamac,alpp1,ralpp1,rgamat,3 rgamab,Tt4oT0,Tt6oT0,cpbocpc,cptocpc,cpcocpb,rehpc,4 relpc,denom1,denom2,rtorc,error

    ccommon /chardat/ name

    c

    Input data file: input

    /062302/ ITBunitsys 0.0itbsw 1.0

    T0 390.0gamac 1.39999cpc 0.239

    gamab 1.27284cpb 0.277gamat 1.27882cpt 0.274hprb 18400.0hpritb 18400.0pidmax 0.99pib 0.96piitb 0.96

  • 7/29/2019 UserManual_ITB

    87/87

    pin 0.99pifn 1.3ehpc 0.9066elpc 0.9036ef 0.8961ehpt 0.9029

    elpt 0.9174effb 0.999effitb 0.999effmhpt 0.92effmlpt 0.93p0op10 0.9p0op19 0.9Tt4 3214.07Tt6 2814.92

    References

    1. Mattingly, J. D., Elements of Gas Turbine Propulsion, McGraw-Hill series in

    mechanical engineering, McGraw Hill, Inc. Singapore 1996.

    2. Model Specification for Engines, Aircraft, Turbojet, Military Specification MIL-E-

    5008B, Department of Defense. January 1959

    3. F. Liu, W.A. Sirignano, Turbojet and Turbofan Engine Performance Increases

    Through Turbine Burners,Journal of Propulsion and Power, Vol. 17, No. 3, May-June

    2001, pp 695-705.