Turbojet Deck
Turbojet Deck
Joachim Kurzke
Turbojet Deck
Steady State Performance
by Joachim Kurzke
Turbojet Deck
All rights reserved. No parts of this work may be reproduced in any form or by any means - graphic, electronic, or
mechanical, including photocopying, recording, taping, or information storage and retrieval systems - without the
written permission of the publisher.
Products that are referred to in this document may be either trademarks and/or registered trademarks of the
respective owners. The publisher and the author make no claim to these trademarks.
While every precaution has been taken in the preparation of this document, the publisher and the author assume no
responsibility for errors or omissions, or for damages resulting from the use of information contained in this
document or from the use of programs and source code that may accompany it. In no event shall the publisher and
the author be liable for any loss of profit or any other commercial damage caused or alleged to have been caused
directly or indirectly by this document.
Printed in Germany
Contents 5
Table of Contents
1 Cycle
...................................................................................................................................
Reference Point 26
2 Steady
...................................................................................................................................
State Off-Design 26
3 Transient
................................................................................................................................... 27
Part XI References 27
Index 29
The data describing the engine are created with GasTurb 12 as an Engine Model File which is
loaded during the Turbojet Deck initialization process. The Engine Model File contains all data
necessary for doing off-design simulations, both for steady state and transient operation. Maximum
and minimum limiters as well as bleed schedules must be defined in the engine model. It is strongly
recommended to check this model thoroughly with GasTurb 12 before using it with the Turbojet Deck
DLL.
Transient simulations can employ the control system as defined in the GasTurb 12 model or run to a
specified fuel flow or spool speed.
2 Engine Description
With this generic computer deck the performance of single spool turbojet engines without afterburner
can be calculated. Which engine is modeled in particular depends on the Engine Model File created
with GasTurb 12.
3 Program Description
The Turbojet Deck has been developed with Delphi XE4 running under Windows 8. The test main
program has a standard windows user interface and calls functions from the Turbojet Deck DLL
which contains the actual engine simulation model. An alternative use of the Turbojet Deck is shown
as an Excel application in the file TurbojetDeckDemo.xls
4 Program Setup
4.1 General
The Turbojet Deck calls functions from a DLL which can be used with any Windows program. In the
test main program this DLL is employed by a Delphi program, in the file TurbojetDeckDemo.xls the
functions of the DLL are called from an Excel macro. Before commencing with the engine simulation
the functions in the DLL must be initialized. During initialization an Engine Model File created with
GasTurb 12 is read from file and evaluated. The required organization of the files is as summarized in
the table below. Note that the Data Directory can be the same as the DLL Directory.
LoadOptions.NMS Component map data files referenced in the Engine Model File
During initialization of the DLL the files in the DLL directory and in the Engine Model File directory
are read. Furthermore, the cycle reference point is calculated which yields all the output quantities
for this operating condition. After the call of InitializeEngine all the elements of FIXIN, VARIN,
FIXOUT and VAROUT can be read by the DLL calling program:
InitializeEngine
ReadFIXIN
ReadVARIN
ReadFIXOUT
ReadVAROUT
If after the initialization the VARIN property SEST is set to 1, then the following single point
calculation will employ as starting values of the iteration the properties ZBTAC, ZRXNH, ZT4, ZBTAT
and ZDTRC. It is a good idea to write the results (i.e. the VAROUT properties BTAC, RXNH, BTAT
and DTRC) to the corresponding input properties immediately after calling InitializeEngine. Thus
there are reasonable estimates for the iteration variables readily available for the use with SEST=1 if
convergence problems are encountered.
The procedure (subroutine) SinglePoint calculates a single cycle point either in steady state
(ZTIME=0) or transient mode (ZTIME>0). Before calling the actual simulation function SinglePoint
the input data stored in the FIXIN and VARIN properties must be transferred to the DLL by calling the
procedures WriteFIXIN and WriteVARIN. After the cycle calculation is finished, the results can be
read from the DLL by calling the procedures ReadFIXOUT and ReadVAROUT:
WriteFIXIN
WriteVARIN
SinglePoint
ReadFIXOUT
ReadVAROUT humid, T2, T3, T4, T41, T5, P3, Ps3, P5, NHDOT, FAR4, LIMCD, BTAC,
RXNH, BTAT, DTRC
The procedure (subroutine) SinglePoint calculates a single point in transient mode for the time =
ZTIME (defined in FIXIN) which must be greater than the value TIME (defined in VAROUT) of the
previously calculated point. The begin of the transient maneuver is the operating condition that was
calculated with ZTIME=0 immediately before ZTIME is set to a value greater than zero.
ZTIME=0
repeat
WriteFIXIN
WriteVARIN
SinglePoint
ReadFIXOUT
ReadVAROUT
ZTIME=TIME+delta time
Before commencing with simulations, the DLL must be initialized by loading an Engine Model File
which was created with GasTurb 12. Note that the component maps employed in the Engine Model
File must be stored in the same directory as the Engine Model File as described on the general
introduction to the program setup.
On the steady state input page the input properties for a single point are offered. The input properties
are grouped as FIXIN and VARIN, the output properties are shown in the groups FIXOUT and
VAROUT.
The transient page of the test main program offers the following three simulation examples:
A PLA maneuver with activated control system as described with the Engine Model File
Each transient maneuver commences with the steady state condition calculated before switching to
transient simulations.
Before running the file TurbojetDeckDemo.xls make sure that the correct path to the DLL is
introduced in the declaration section of the VBA program. After starting Excel (macros activated)
use Alt+F11 for opening the VBA editor and replace the DLL path information - which is valid only on
the computer of the DLL author - with the path to the place where you have stored the DLL on your
computer.
The calculation options in the Excel file are essentially the same as those in the Test Main program.
4 burner exit
41 first turbine stator exit = rotor inlet
8 nozzle throat
9 nozzle exit (convergent-divergent nozzle only)
5.2 Units
The functions and procedures in the DLL employ SI units.
Altitude m
Temperature K
Pressure kPa
Shaft Power kW
Thrust kN
SFC g/(kN s)
Area m²
Both rel N for PLA = 0% and rel N for PLA = 100% must be set to reasonable values. The input
for these two quantities is found on the Transient Input Page in the Off-Design Input window of
GasTurb 12.
Steady state limiters must be switched on, both min and max limiters must be defined.
If transient limiters are not constant, then the respective iteration must be defined. The input of this
iteration and the required composed values is selectable from the transient input window.
An intake map must be read from file before writing the Engine Model File from within GasTurb 12.
This intake map, however, needs not necessarily be employed in the calculation.
Limiters can be single valued or follow a schedule. How to employ control schedules is described in
the GasTurb 12 help system and the manual.
Besides the pre-defined limiters up to three composed values can be employed as additional
limiters. Note that drop-down lists with composed values (on the bottom left side of the limiter input
page in GasTurb 12) will appear only if at least one composed value is defined.
In the Engine Model File delivered as an example for the Turbojet Deck application the idle spool
speed is a function of altitude:
NIdle=60+0.002*Altitude
The first composed value for steady state off-design operation is defined as
cp_val1 = XN_HPC*100/(60+0,002*alt)
This composed value is employed as a Min Limiter with the min value of 1.0
During transient operation with the GasTurb 12 control system active all the steady state limiters are
activated as set in the Engine Model File. Additionally the transient limiters like dN/dtmin and dN/
dtmax , for example, are active.
If you want dN/dtmax make a function of spool speed, for example, then you must employ an
additional iteration combined with a composed value. The definitions of the composed value for
transient operation and the iteration can be accessed from the menu in the transient window of
GasTurb 12.
In the Engine Model File delivered as an example for the Turbojet Deck application dN/dtmax is a
function of spool speed. The first composed value for transient operation is defined as
The input value for dN/dtmax is iterated in such a way that it equals cp_val1.
For running the simulation with modified limiter settings a new Engine Model File must be created.
In the Turbojet Deck the power lever angle is linearly connected with the spool speed. Nmax Pow er is
equal to rel N for PLA = 100% as defined on the Transient Input Page of GasTurb 12 and NIdle
corresponds to rel N for PLA = 0%.
PC = 50 Maximum
PC = 20 Idle
PC = 0 Power Lever Angle input is active, however, any valid Rating Code input ZRC
overrules the Power Lever Angle input
PC = -2 run to fuel flow ZWF (control system active, except fuel flow schedule)
7 Input/Output
The input and output data are arranged in four groups that correspond with the COMMON blocks
FIXIN, VARIN, FIXOUT and VAROUT as defined in AS681.
7.1 FIXIN
FIXIN properties are as defined in AS681. Some of them are not applicable, some of them are not
used in the Turbojet Deck. Note that all data that are transferred to the functions and procedures in
the DLL are of the type double.
There are two inlet modes selectable with the switch SIM:
There are three options offered for the ram pressure recovery selection switch SERAM:
supersonic: ZERAM*{1-0.075*(XM-1)1.35}
2 ZERAM
The SAE Aerospace Standard AS681G provides a method for the presentation of results from
computer programs using FORTRAN 77.
The fixed sequence list of the parameters in the fixed input labeled common (FIXlN),and the identity
of these parameters (with typical nomenclature consistent with ARP755) are as follows:
Average Options
SERAM = 1, Selects specified ram pressure recovery
SERAM = 2, Selects input value of ram pressure recovery
SERAM = 3, Selects ram pressure recovery from user supplied subroutine
(ERAMX)
Differentiated Options
SERAM = 4, Selects input values of primary and secondary ram pressure
recovery
SERAM = 5, Selects input value of primary stream ram pressure recovery
and calls user supplied subroutine (ERAMX) for secondary stream ram
pressure recovery
SERAM = 6, Selects primary and secondary stream ram pressure
recoveries from user supplied subroutine (ERAMX)
21 ZWB3Q High pressure compressor bleed flow ratio (discharge over component inlet)
7.2 VARIN
SEST 0 begin the iteration with the values from previous point
STRANS 1 Transient with ZPLA = f(ZTIME) input, the GasTurb control system is active
2 Transient with ZWF = f(ZTIME) input, the GasTurb control system is inactive
7.3 FIXOUT
FIXOUT properties are as defined in AS681. Some of them are not applicable, some of them are not
used in the Turbojet Deck. Note that all data that are transferred from the functions and procedures
in the DLL are of the type double.
The SAE Aerospace Standard AS681G provides a method for the presentation of results from
computer programs using FORTRAN 77.
The fixed sequence list of the parameters in the fixed output labeled common (FIXOUT),and the
identity of these parameters (with typical nomenclature consistent with ARP755) are as follows:
8 FG Gross thrust
13 FN Net thrust
28 W2_ High pressure compressor inlet flow rate (The full number representing the
relevant station designation, e.g., W21, W215, W2A, will be defined by the
program supplier.)
57 PC Power code
58 RC Rating code
60 WB3Q High pressure compressor total bleed flow ratio (discharge over component
inlet)
7.4 VAROUT
8 Program Messages
8.1 Numerical Status Indicator NSI
The following Numerical Status Indicator values are defined:
0 Valid result
Sometimes the iteration fails to converge which is indicated by NSI=9100. Non-convergence can
have many reasons: sometimes one or the other of the normal input properties are unreasonable,
sometimes the start values of the iteration variables are far away from those of the solution,
sometimes the solution requires one or more components operating far outside of their respective
component maps.
In this computer deck the output values of the iteration variables are BTAC, RXNH, BTAT and DTRC
in the VAROUT group. While SEST is zero, these values are employed as estimates for the next
point to be calculated. If a point has not converged, then most probably the values of BTAC, RXNH,
BTAT and DTRC are unreasonable and not suited as estimate for the next case to be calculated. For
recovering from this situation, SEST can be set to 1 which makes the iteration begin with the values
ZBTAC, ZXNH, ZBTAT, ZDTRC from the VARIN group.
If the iteration fails to converge because the operating conditions between two steady state points
are very different - an idle case followed by a max rating case, for example - then the problem can be
avoided eventually by introducing a few intermediate rating steps.
Convergence problems that are not understood can be examined with GasTurb 12. In this program
there are many more diagnostic options available than in this computer deck.
If non of the advice given above helps then it might be that no solution exists. This can be the case
for excessive power or bleed off-take, for example.
If in transient simulations a convergence problem shows up while one of the input properties changes
significantly in a very short time, then the time step might be too big. This is similar to the case
when the spool speed input (while STRANS=3) implies excessive Ndot (dN/dt) values.
If during a transient simulation the iteration converges after having failed at one or a few prior time
steps, then the convergence problem can mostly be ignored.
9 Test Cases
9.1 Cycle Reference Point
During initialization of the DLL the GasTurb cycle reference point is written to the input (i.e. FIXIN
and VARIN) and the output (FIXOUT and VAROUT) groups.
9.3 Transient
A transient simulation is performed if the FIXIN property ZTIME has a positive value greater than the
FIXOUT property TIME from the previously calculated point.
Three examples are selectable in the test main program respectively in the Excel sheet:
a 10% step increase in fuel flow which demonstrates the fuel flow input option (STRANS=2)
The responsibility for the data is with the provider of the Engine Model File.
11 References
[1] SAE
AEROSPACE STANDARD AS681 Rev. G
1996
[2] J. Kurzke
GasTurb 12 User Manual
2012
Index -M -
Maximum Power 15, 16
Messages 23
-C- -N-
Call Parameters 8 Nomenclature, Stations 11
Call Sequence 9 NSI 23
Convergence Problems 26 Numerical Status Indicator 23
Cycle Reference Point 26
-P-
-D- Path to the DLL 8
Data Directory 7 PLA 14
Data Input and Output 16 PLA Definition 13
Delphi 7, 8 Power Code 15
Delphi Test Main 11 Power Lever Angle 14
DLL Directory 7 Procedure 8
DLL Initialization 9
-R-
DLL Interface 8
Rating Code 15, 16
-E- References 27
Engine Model File 7, 13
-S-
Excel 7, 8
SERAM 16
Excel Application 11
SEST 9, 19, 26
-F- SIM 16
File Organization 7 SinglePoint 8, 9
FIXIN 8, 16 SMode 13
FIXIN Parameter Definition 17 Spool Speed Given 15
FIXOUT 8, 19 Stations 11
FIXOUT Parameter Definition 20 Steady State Performance 26
Fuel Flow Given 15 STRANS 19, 26
Function 8 Subroutine 8
-G- -T -
GetDLLVersion 8, 27 Test Main, Delphi 11
Test Main, Excel 11
-I- Thrust Given 15
Idle 15, 16 Transient Simulations 27
Initialization 9
InitializeEngine 8, 9 -V -
Intake Map 13 VARIN 8, 19
Interface 8 VAROUT 8, 23
Iteration Variable 26 VBA 8, 11
Vista 7
-L- Visual Basic for Applications 8
Limiter codes, steady state 24
Limiter codes, transient 25
Limiters 13