This Chapter describes how to analyse arbitrary in-flight manoeuvres, or sequences of manoeuvres. You are free to define the configuration of the aircraft and the manner in which it is flown. It is possible to examine anything from single points or brief segments of flight to long combinations of segments, right up to complete flight profiles.
These arbitrary manoeuvres are totally independent of the performance methods described in Chapter 9 (which assume standard mission models in terms of integrated climb, cruise, and descent operations).
You define and run all in-flight manoeuvres through a single dialog. This is accessed via the 'Flight Manoeuvre...' item (keyboard equivalent Command-O, see 'Flight' menu). There are also other menu items that invoke exactly the same dialog, but with different initial settings. Use these to quickly set up some common manoeuvres such as:
- Climbout, All Engs
- Climbout, 1 Eng Out
- En Route Driftdown
- Low Level Hold
- Final Approach
The manoeuvre dialog lets you specify the following:
- Initial mass.
- Initial altitude.
- Delta-ISA temperature.
- Airspeed or Mach number (from a variety of options).
- Flap deflection / aerodynamic configuration.
- Engine status (operative/inoperative).
- Undercarriage position (up/down).
- Thrust setting (from a variety of options).
- Stop condition (duration of the manoeuvre).
- Options for output (history), acceleration adjustments, and loitering.
Mass is input directly, or taken from the current MTOW or MLW, or assigned a representative value for a 'normal landing'. This is calculated near the end of the design mission and equals the OEW + standard payload + reserves and approach fuel.
Airspeed is either input or set to match an operating requirement from one of the following. These are always calculated at 'instantaneous' values of mass and altitude:
- V2 safety speed, calculated according to the value of v2-speed-ratio .
- V3 all-engines takeoff speed, calculated according to v3-v2-speed-increment .
- Direct user input as a percentage of the stall speed.
- Vapp, the final approach speed, calculated according to approach-speed-ratio .
- Direct user input as a CAS (kts or m/sec).
- CAS for best climb gradient.
- CAS for max. rate of climb.
- CAS for max. rate of climb but subject to the ATC speed limit, normally 250 kts
or according to air-traffic-speed-limit . The restriction applies at any altitude.
- CAS for minimum drag.
- Direct user input as a Mach number.
- Mach for max. SAR.
- Mach for 99% of max. SAR.
- Max. Mach in level flight, according to the current thrust setting (described below).
Additional settings also allow you to retain the CAS or Mach number derived from the preceding manoeuvre segment (assuming one exists).
Configuration options tell Piano what kind of lift/drag polar to use and let you pick the flap setting. If you choose the 'takeoff flap', the values of user-factor-on-takeoff-clmax and user-factor-on-takeoff-l/d will be applied to the CLmax and L/D. Similarly, choosing 'landing flap' means applying the user-factor-on-landing-clmax and user-factor-on-landing-l/d . To omit all these factors, select 'arbitrary flap'. The factors will also be ignored if you load fixed aerodynamic characteristics (via 'Lowspeed Aero', 'Misc' menu, see Chapter#06section08 ).
For 'clean' (flaps-up) configurations you should normally select the 'hi-speed aero' option rather than just setting the flap deflection to zero. Differences arise from the way aerodynamics are calculated (see Chapter#05section01 and Chapter#05section16 ). The nominal point at which you switch from the low-speed to the high-speed polar or vice-versa is a matter of discretion. Piano will in any case stop you from using the low-speed polar at Mach numbers where compressibility may start (M>.6).
Thrust can be specified directly as a percentage of ratings (% of MTO, MCO, MCL or MCR). Values higher than 100% are allowed. The option labelled 'emergency-2nd. seg' corresponds to 100%MTO times the thrust-factor-at-2nd-segment .
The idle thrust setting can be used on its own ('set to idle') or in combination with the spoilers to increase the descent rate ('idle, deploy % spoilers'). Spoiler or airbrake drag is estimated from the dimensions ( spoiler-exp-span-fraction , spoiler-chord-fraction ) and factored by the given percentage. The actual Cd is shown in the output.
Thrust can also be calculated to match a flightpath angle ('match ± flightpath', in degrees, positive or negative). Similarly you can set a specific rate of climb (or descent) through 'match ± climb rate'. To keep a constant rate of re-pressurisation during the descent, use 'match cabin dp/dt'. The dp/dt is shown as an equivalent descent rate at sea level, normally -300 feet/min to allow for passenger comfort.
Finally, you can use just enough thrust to 'maintain level flight'. Any throttle setting will be allowed up to the maximum available. Selecting 'maintain level cruise' is similar but will block anything greater than MCR thrust.
The 'Stop' options decide the duration of the manoeuvre. If you are only interested in one 'spot' condition, you can stop immediately 'after 1 point calculation'. Otherwise, the manoeuvre continues using the same settings and configuration and will conclude according to one of these criteria:
- 'when altitude changes by' (as an absolute value, no sign)
- 'when altitude is equal to'
- 'when time elapsed is' (measured from the start of each segment)
- 'when mass reduces to'
- 'when distance covered is' (measured from the start of each segment)
- 'when Mach is equal to' (this can be used during climbs at constant CAS, to terminate the manoeuvre when a particular Mach number is reached)
- 'when CAS is equal to' (this can be used during descents at constant Mach, to terminate the manoeuvre when a particular CAS is reached)
- 'when ready to stepup by' (this can be used during level flight. It terminates the manoeuvre when the mass reduces to a value where it is both beneficial and possible to step up to another Flight Level, usually going up by +4000 ft. The calculation is done according to the setting of stepup-cruise-method ).
Performance calculations are integrated over the specified amount of time/altitude/ or mass, which is broken into a number of smaller steps. The detailed output includes fuel burn and emissions information. You can get a tabulation of the individual steps by ticking the 'history' option. The 'flightpath' option can be used to look at the actual profile (altitude vs. distance). A large monitor is particularly useful when you use both these options together.
If you tick the 'Loiter' option, the distance covered during the manoeuvre will be zero (i.e. it is not credited).
By ticking the 'Keep dialog open' option, you can use a manoeuvre dialog repeatedly without needing to call it up each time. This lets you match any unusual requirement quickly by trial-and-error or successive guesses: Type in a value, hit the <Return> key, look at the output, and repeat.
Sample Manoeuvre Report
Manoeuvre point-performance report: Initial Mass 90500. lb. Initial Altitude 35. feet Delta-ISA +0. deg C Airspeed (CAS) 159. kts (V3) Flaps 15 deg. Undercarriage up All eng.operative Thrust per engine 11873. lbf. (100% MTO) Climb/Descent rate 2960. feet/min Flightpath angle 10.4 deg. (grad.18.4%) True airspeed 159. kts Fuel Flow rate 12404. lb/hr L/D ratio 13.84 Total aircraft drag 6538. lbf. Manoeuvre segment ends at: Altitude Time Distance Fuel Burn NOx HC CO feet sec n.miles lb. lb. lb. lb. 1500. 30.0 1.34 101.9 - - - ----------------------------------------------------------------------------- History: FN/eng CAS Mach RoC 35. 0.0 0.000 0.0 11873. 159. 0.240 2960. 198. 3.3 0.146 11.4 11833. 159. 0.241 2953. 361. 6.6 0.292 22.7 11792. 159. 0.241 2946. 523. 9.9 0.439 34.1 11751. 159. 0.242 2938. 686. 13.3 0.587 45.4 11711. 159. 0.243 2931. 849. 16.6 0.736 56.7 11670. 159. 0.243 2924. 1012. 19.9 0.885 68.0 11629. 159. 0.244 2916. 1174. 23.3 1.035 79.3 11589. 159. 0.245 2909. 1337. 26.7 1.186 90.6 11548. 159. 0.245 2901. 1500. 30.0 1.337 101.9 11508. 158. 0.246 2894. -----------------------------------------------------------------------------
Manoeuvres can be put together to form a 'sequence'. Each new segment (i.e. individual manoeuvre) within a sequence follows from the endpoint of the last segment, generating a continuous flightpath. There is no restriction on the possible number of segments in a sequence.
You generate a sequence by clicking the 'Start Sequence...' button (instead of 'OK') in the standard manoeuvre dialog (Command-O). After the first manoeuvre has been analysed, the dialog will re-appear to let you define the next segment. This process continues until you hit the 'Finish' button. Clearly, the mass and altitude can only be input at the start, after which they become calculated quantities. Their corresponding text boxes are disabled in subsequent segments (as is delta-ISA, which remains constant).
Individual segments may use different airspeeds. Therefore, periods of acceleration or deceleration are inserted between segments, if necessary. These 'accel/decel' adjustments are calculated automatically. They assume level flight and use a stepwise integration procedure to derive time, distance, fuel burn and emission increments. Accelerations are based on the max. available thrust (depending on engine data coverage), while decelerations assume idle thrust. Although you have the option of disabling the accel/decel feature, this is not advisable for consistency. The time and distance for accel/decel periods are additional to any values under the 'Stop' options.
Once a sequence has been generated, you can save it on file ('Save Sequence As...') and load it ('Load Sequence..') or delete it ('Delete Sequence..') at any time.
You can re-examine the current sequence by choosing the 'Re-Run Sequence' item. All you need to do is hit the <Return> key as each dialog appears (or click on 'Next Segment'). You have the opportunity to make changes at any point. At the conclusion of the re-run you will be asked whether you want to keep these changes or not. (This affects the 'current' sequence, as defined at any given time. To make a permanent record of your changes, you also need to use 'Save Sequence As...'). To re-run a sequence without interruptions (no stepping through each manoeuvre), hold down the Shift key before selecting 'Re-Run Sequence'.
Instead of going through an entire sequence, you can identify a segment by its number and edit it directly via 'Edit A Segment...'. The sequence is then re-run. This provides a simple mechanism for 'homing into' performance requirements within a few iterated estimates. For example, if you are modelling a complete flight you can vary the 'Stop' mass of the last cruise segment to match a total distance or fuel burn.
After you Load or Edit a sequence, you will be asked if you want to run it again.
Finally, the 'Rewind' button lets you step back by one or more segments and change any of your settings. This can be extremely useful, for example, if you accidentally overshoot an altitude, exceed an speed, run out of climb performance, etc. You can use 'Rewind' either when you are defining a new sequence or when you re-run an existing one.
The large number of options and abstract approach to the subject make the 'Flight' feature a very flexible tool. Even so, there are combinations that are not allowed and that will generate blocking messages. This may be because a combination does not make sense, or because of insufficient performance, or because of limitations in the methodologies. As an obvious example, if you set the thrust mode to 'maintain level flight' you cannot use a 'Stop' criterion that relies on altitude changes. Other examples are: If you set speed to 'max in level flight', you can only use thrust settings that specify a percentage thrust; Engine-out or undercarriage-down options cannot be combined with speeds such as 'max in level flight'; Flaps-down configurations cannot be evaluated at high Mach numbers.
If the thrust is set to 'maintain level flight', the result of the calculation is not restricted to any nominal rating such as the MCR: Any value up to the maximum available thrust under the particular conditions will be accepted (which normally means that the limit is either the MTO or MCO, depending on engine datapoint coverage).
Airspeed modes such as 'Mach for max SAR' and '99% max SAR' can only be used when the thrust is set to 'maintain level flight'. Level flight is also required if you use 'when mass reduces to..' as your 'Stop' criterion.
Airspeed calculations are based on instantaneous conditions. The basic performance equations use the appropriate acceleration correction depending on whether you provide a CAS-type input or a Mach-type input. (This correction refers to a standard acceleration factor applied to climbs/descents at constant CAS or Mach, and not to the accels/decels between segments). Strictly speaking, if you select a speed such as 'max rate of climb' and then run a manoeuvre over a broad band of altitude, neither the CAS nor the Mach will necessarily remain constant. However the effect on performance is small and the constant-CAS factor is still adequate: A more relevant issue may be that neither the pilot nor a simple autopilot could be expected to follow such a complex speed/altitude schedule. It would be more realistic in this case to set a fixed CAS. During climbs, a convenient option is to find the initial optimum CAS by running a brief climb manoeuvre (say from 10,000 to 11,000 feet) and then elect to 'keep the same CAS' for the subsequent climb to altitude.
As a general rule, it is best to avoid excessively long manoeuvres by splitting them into two or more segments. For example, if you examine a long driftdown from altitude after an engine failure, it is preferable to run a sequence of manoeuvres in 5-minute intervals rather than input a number such as 30 mins in one go. In this case there may be some noticeable differences in the results because of the very shallow angles involved (asymptotic approach to some altitude). In other cases however, such as a normal cruise, it would be fine to run individual manoeuvre segments that cover many hundreds of nautical miles. Although checks are carried out to ensure that the various step sizes do not become excessive, you should also use some judgment. One can always split any manoeuvre into two to improve the resolution of the procedure. Piano normally takes 20 steps within each manoeuvre segment, or 10 steps when the flaps are down and segments tend to be short.
The analytical techniques applied to manoeuvres are 'quasi-static'. This means that although stepwise integration is used together with acceleration corrections, the full dynamic behaviour and inertia effects are not modelled (it's not a flight simulator!). This is not an issue under normal operations, but there are extreme cases that demonstrate the limitations. As an example, consider an engine-out approach and overshoot with a significant amount of flap: The aircraft may be unable to accelerate (or fly level) and flap must be reduced gradually to avoid excessive sink. The pilot will initially lower the nose to gain some speed, before gently easing it back up. If you try to model such a manoeuvre in two segments, one with flaps down and the next one with flaps up, no acceleration correction can be made in level flight. In the first case the excess thrust is negative and in the second the aircraft would probably be stalled at the start. A suitable warning will then be shown in the output. Another example where simple acceleration corrections between segments can fail is if you level out after a climb and then cruise at the max. level speed for the highest rating; clearly this speed could only be reached asymptotically, and no direct correction can be calculated. (In practice of course it would be reached by climbing a little higher and then easing the aircraft down to the target altitude).
When calculating accels/decels between two segments having different configurations, Piano uses the configuration having the lesser drag for an accel and the one with the higher drag for a decel. The exact behaviour would of course be highly complex and dependent on the speed and manner in which the flaps and/or undercarriage are retracted.
Source codes: Some basic functions are find-lsm-performance-basic , find-lsm-performance-iter , run-lsman-to-altitude , run-lsman-to-mass , run-lsman-to-time , run-lsman-to-dist , run-lsman-accel-between-configs . (lsm stood for low speed manoeuvre, although it now applies to all manoeuvres).
The 'Iterate Sequence...' item (under the 'Flight' menu) lets you modify the current sequence of manoeuvres in order to match some required end-point condition. Such a sequence will often represent a complete flight profile, although this is not in any way a requirement. This is best explained by example: Let us assume that our sequence consists of 12 manoeuvre segments, representing a complete flight, that segment 9 represents the last cruise segment prior to initiating a descent, and that this cruise segment is currently set to stop at some estimated value of mass (or time, or distance). In the 'Sequence Iteration' dialog, we can do the following:
1. Choose to base the iteration on Segment 9, and:
2. Vary the 'Stop Setting' for segment 9 between some upper and lower estimates, until, at the end of segment 12, the 'total sequence distance' (or 'total sequence fuelburn' or 'total sequence time' or 'mass at end of sequence') matches a required value.
When the iteration converges, Piano shows the corresponding 'Stop' setting and runs the entire modified sequence.
You can base an iteration on the 'Stop' setting of any intermediate segment, provided this is specified as a mass, time or distance. Segments whose 'Stop' settings are defined by Mach, CAS, or stepup criteria won't be available - they are shown disabled.
In the special case where you are looking to match a 'total sequence distance', you have the extra option to carry out a 'double iteration'. This option is only intended to help with 'off-design' missions over a fixed stage length. In this case you may not know the exact initial aircraft mass, but you do know the final aircraft mass at the point of landing with a given payload and fuel reserves. You will be asked to enter upper and lower estimates for the initial mass, as well as the target value for the final mass. For this type of exercise, you should first run the standard 'Mission @Range...' feature (see Chapter#09section06 ) to obtain estimates of the initial mass. The 'range' reports also show the landing mass including reserves.
Note!: Double-iterations need fairly accurate estimates of the initial aircraft mass (not too wide a spread, but bracketing a solution). If convergence is problematic, try a few single-iterations first, just to find suitable starting values.
Clearly, a vast number of calculations must be made by Piano when iterating (and particularly double-iterating) sequences, and this is reflected in processing time.
In principle, a manoeuvre sequence that has been generated with one aircraft can also be re-run after you load a different aircraft. However, it is then up to you to ensure that items such as mass and flap settings are adjusted as necessary during the re-run procedure. It is a good idea to include a brief reference to the original aircraft in the filename when saving a manoeuvre sequence to a file. Whenever you load a sequence, you will in any case be shown the date and name of the plane that created it.
You will find a number of predefined sequences in the 'manoeuvres' folder. These have been created as 'templates' for running typical missions. There is nothing inherently special about these templates, and you can replace them with your own sequences if you prefer. Different templates are provided for missions that use 1, 2 3, or 4 Flight Levels during the cruise phase. The idea is that you can use these for any aircraft, with the minimum of adjustments: You will, at the very least, need to adjust the 'Stop' mass of the last cruise segment, and possibly iterate it to match your end-point requirements.
There are many conceivable ways in which you can construct templates, and experimentation is encouraged. It may be convenient to include brief 'setup' manoeuvres within a sequence, just to prepare conditions for the next segment: For example, after climbing to 10,000 ft at 250 kts, you can then execute a very brief climb (say over a 100 ft) to find the optimum climb speed, and then keep the same fixed CAS in the subsequent segment. (If you do not do that, the CAS would vary with altitude, which may in some sense be an optimum but does not represent a realistic operational procedure). Similarly, at the start of the first cruise segment, you can introduce a brief 'setup' manoeuvre by flying for a minute or so at the optimum Mach for 99% of max SAR. Then you keep the Mach fixed for the remaining cruise segments. Otherwise the 99% condition will continuously change during the cruise to match the reducing mass, which again does not represent typical operational procedures. Indeed, a major strength of the manoeuvre feature lies in its ability to very quickly evaluate the effect of such choices.
Piano can generate automatically complete sequences of Flight Manoeuvres based on the standard design-mission 'range' calculations, or on the off-design 'mission @range' and 'mission @mass' calculations. To do this, you simply use the 'Build a Sequence...' menu-item. There you can choose from various design or off-design mission options.The following choices are also available:
- The new sequence can start at the same takeoff mass as that used by the mission, or at a marginally lower mass which corresponds to the takeoff screen height (35 ft). Piano estimates this latter mass by first running a complete takeoff analysis (not shown).
- Since the sequence-style analysis is much more detailed, the results will normally not agree exactly. However, you can tick a box to iterate the sequence until the final landing mass matches the original mission's value exactly. If this is done, the range results from the sequence and original missions will typically agree to within ~ 0.3%, unless the original mission uses unrealistically low/high values for takeoff and landing time allowances.
- When running a 'mission @range...', you can also iterate the initial takeoff mass to match the distance exactly. If you are using extremely short ranges (say < 300 nm), you may first need to specify suitably low Flight Levels under 'Range Modes'.