Skip to main content
The LCC model breaks total operating cost into two buckets — fixed (independent of how much you fly) and variable (scale with flight hours) — then integrates them over the service life to produce life cycle totals and revenue metrics.

Cost taxonomy


Fixed cost calculations

Financing

The model uses a standard amortizing loan formula:

Depreciation

Straight-line over the service life:

Autonomous aircraft adjustments

When Number_of_Pilots = 0:
  • Automation_Cost_Base is added to the purchase price
  • Liability insurance is multiplied by 1.10 (10% surcharge)
  • Pilot salaries and pilot training are zero

Personnel


Variable cost calculations

All variable costs are expressed per flight hour and then multiplied by Flight_Hours_per_Year to get annual totals.

Amortised reserve costs

Replacement/overhaul costs are spread across the interval between events:

Landing fees


Life cycle simulation

Annual costs are constant (no inflation model by default), so the ODE right-hand side is a constant vector. The state vector tracks ten cumulative quantities: Initial conditions include the down payment (purchase price × (1 − Finance_Percent)) and the first-year training cost as upfront charges at t = 0. Integration runs from year 0 to Life_Cycle_Time using SciPy’s solve_ivp with RK45 (relative tolerance 1e-6, absolute tolerance 1e-8).

Revenue metrics

After simulation, calculate_metrics() derives two revenue-facing metrics:

Revenue CASM

Cost per available seat-nautical mile — the standard airline profitability metric:

Fare per passenger-nautical mile

The /5 factor normalises CASM to a per-passenger basis assuming an average load factor. This is a planning-level estimate — adjust Aircraft_PAX_Seats and your profit margin to model different load scenarios.

Comparison outputs

run_comparison() returns a DataFrame with one row per aircraft, sorted by Revenue CASM: