Calculus But Not Like In School
Dave Jesse on November 6, 2013

Do you remember doing calculus at school? All that complicated stuff with differentials like

And integrals like

OK, some of you out there will have no idea what this is about, some will understand fully and be wondering why I used different symbology for the differential and the integral.

Probably most will be groaning and recalling that they knew this stuff once and hoped it had gone away for good.

Calculus and Flight Data Analysis

Within Flight Data Analysis we are always working with sampled data at relatively low sample rates. We make an assumption that the measured parameter changes linearly between samples, because to do much more than that would start to look like guesswork.

For example if we take a few points of data around a peak, the blue lines show what simple linear interpolation gives, and the red line is a fitted polynomial curve.

(This is a silly graph drawn with big changes over a few samples to make the plots easy to understand. Don’t imagine this is real data for a moment!)

You can see that the curve may look nice, but did the parameter really exceed 320? If this was an airspeed trace, could you state that 320 kts was exceeded, and possibly require maintenance action to be taken? No, it is only sensible to stick with the blue line and join the points we know were measured by the simplest assumption about the change between two points.


Differentiation is working out how quickly something is changing. The rate of change in airspeed is how fast the aircraft is accelerating, or the rate of change of fuel contents is how fast fuel is being burned.

We can measure the slope of the blue line but that gives us a value between two points. Does the slope of the first line from 280 to 313 relate to time T=0 or T=1? The answer is neither and so we do a trick and measure the slope between point either side of the point we are interested in.

We “draw” the lower red line from the T=0 point to the T=2 point and this gives a good measurement of the slope at the T=1 point. You can see that the red line indicates the slope of the blue line as it passes through T=1.

The same process can be extended, so the slope at T=2 could be computed between points a tT=0 (two ahead) and T=4 (two after) the point of interest. The rate_of_change  algorithm provided in the POLARIS library allows for the length of the red line to be selected. The longer the period used for computing the slope, the more noise suppression you achieve and there is also a regression option which works even better for noise suppression, but that’s a topic for another day.


Now let’s assume this was a true airspeed trace, and that for fuel consumption analysis we want to know the distance flown through the air. The distance is given by the simple formula

And we can compute this for each second of the flight. If we just take the speed at each second and add it up we are computing blocks like this:

A better solution is to compute the values for each second, using the straight line graph as before:

This represents the straight line graph we had before and the difference to the previous example is usually small but worth the tiny increase in computing effort required.

Integration Scaling

When we do an integration it is common to need to provide a scaling factor. This means that we can integrate accelerations in “g” units and provide a result in knots, or integrate fuel flow in kg/hr to give a result in tonnes. Numbers like 3600* pop up in the calculations here and there.

(This is less of an issue with differentiation where the units of the rate of change are the units of the original parameter per second.)

Integration Initial Value

There is one last snag to address. When we add up the areas under the curve, we need to know what value we are starting from. The common answer to this question is zero. For example, the distance travelled during the takeoff run can start from zero and add up as the aircraft gathers speed. Conversely, we might want to know where the aircraft is on the runway, in which case we would start our integration with the distance from the start of the runway to the aircraft at the beginning of the takeoff run.

A further complication arises when the parameter used for the initial value is, itself, changing. To make a smooth transition without a jump, we need to make sure that the starting value is not the first integration value, but applies before the first integration interval. Again, there is a control to allow this facility in the library routine.

Integrating Backwards

In Flight Data Analysis we often find that we would like to work backwards through the data, and this brings special problems. Take, for example, the height coming in to land. The aircraft is going downwards (negative rate of climb), so if we integrate the rate of climb backwards in time we would have a negative value. Therefore we need to reverse the sign of the result.

Then sometimes this is not what we intended, so the POLARIS function allows for Reverse and Backwards integration to include the sign reversal or not.

Well, dull stuff but for those of you looking into the POLARIS library and wondering what the function arguments are all about, this may have helped.

*in case you are wondering, there are 3,600 seconds in an hour.