Skip to content

Object-oriented programming in aviation; graphs and network optimisation for routes and aircraft utilisation / maintenance forecasting

Notifications You must be signed in to change notification settings

michaelmml/OOP-Aviation-Aircraft

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

OOP Aviation & Aircraft

Object-oriented programming in aviation; graphs and network optimisation for routes and aircraft utilisation / maintenance forecasting

Table of Contents

Maintenance Cycle Modelling

The value of an aircraft over time is heavily dependent on its maintenance condition and therefore the cost of the maintenance events. This is aggregated based on the main components and % life with respect to each flight cycle (FC) / flight hour (FH) / age limits. Input at an asset class level for general costs and component limits and also at an asset-specific level for current status. They drive flyforward on - Airframe, APU, Landing Gear, Engine Performance Restoration x 2 and LLPs x 2. LLPs can be further broken down into several groupings with slightly different cycle limits.

    def utilise(self):
        self.age += 1
        self.fh_cum = self.UtilisationGeneric.fh_m + self.fh_cum
        self.fc_cum = self.UtilisationGeneric.fc_m + self.fc_cum

        if self.age > 25*12:
            return

        if self.age - self.r1_cumevent > threshold[self.r1][1]:
            self.ratio_1 = 0
            self.r1_cumevent += threshold[self.r1][1]
            self.r1_eventdate = self.age
            self.r1 += 1
        else:
            self.ratio_1 = (self.age - self.r1_cumevent) / threshold[self.r1][1]

        if self.fh_cum - self.r2_cumevent > threshold[self.r2][2]:
            self.ratio_2 = 0
            self.r2_cumevent += threshold[self.r2][2]
            self.r2_eventdate = self.age
            self.r2 += 1
        else:
            self.ratio_2 = (self.fh_cum - self.r2_cumevent) / threshold[self.r2][2]

On a component basis, to generate the maintenance adjustment an accurate assessment of 1) where each major maintenance event is relative to their last and next shop visit, and 2) what percentage of its next shop visit cost is remaining. For 1), this is determined by the aircraft operation which is a projection of future monthly FH and FC and 2) event cost is based on aircraft technical specifications corresponding to the component and data published by OEMs regarding costs.

An aircraft’s half-life adjustment value can be quantified using the following equation. This utility cycle follows a saw-tooth pattern.

Adjustment from Half-Life = (Mtx Event % Life Remaining – 50%) * (Mtx Event Cost)

The half-life basis assumes that the airframe, engines, landing gear and all major components are half-way between major overhauls and that any life-limited part (for example an engine disk) has used up half of its life.

flyforwards

With additional expansion of the model to break down LLPs by three cycle limit groups.

flyforwards

About

Object-oriented programming in aviation; graphs and network optimisation for routes and aircraft utilisation / maintenance forecasting

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages