Data structures

We're incorporating structs as part of modernizing TASOPT from Fortran. Here are the main ones.

aircraftType
aircraft

A type representing a TASOPT aircraft model including, geometric, aerodynamic, propulsion system parameters. It is designed to hold information related to the aircraft's name, description, as well as different sets of parameters used for analysis and optimization.

Overloads Base.summary to print a summary of the aircraft model.

Fields:

  • name::String : Aircraft name (eg: "Boeing 777")
  • description::String : A brief description of the aircraft
  • pari::AbstractVector{Int64} : integer flag parameters
  • parg::AbstractArray{Float64} : Geometry parameters
  • parm::AbstractArray{Float64} : Mission parameters
  • para::AbstractArray{Float64} : Aero parameters
  • pare::AbstractArray{Float64} : Engine parameters
  • sized::AbstractVector{1,Bool}: flag if aircraft is sized (default is [false])

For devs: the indices for accessing specific data are defined in /src/misc/index.inc. Refer to the sample input file (/src/IO/default_input.toml and read_input.jl) for usage.

source
TASOPT.aerodynamics.airfoilType
airfoil

A type representing a database of pre-computed airfoil data for a single Reyolds number and a range of Mach numbers, sectional lift coefficients, and thickness-to-chord ratios. By default, this is the original TASOPT transonic airfoil, as modelled by M. Drela in MSES and stored in src/air/.

Overloads Base.show to print a summary of the airfoil model.

Fields:

  • Ma::AbstractVector{Float64} : Mach nos.

  • cl::AbstractVector{Float64} : Sectional lift coefficients.

  • τ::AbstractVector{Float64} : Thickness-to-chord ratios.

  • Re::Float64 : Reynolds number.

  • A::AbstractArray{Float64}: Multi-dimensional array of aero performance data.

Various views of the data:

  • A_M::AbstractArray{Float64}:
  • A_τ::AbstractArray{Float64}:
  • A_cl::AbstractArray{Float64}:
  • A_M_τ::AbstractArray{Float64}:
  • A_M_cl::AbstractArray{Float64}:
  • A_cl_τ::AbstractArray{Float64}:
  • A_M_cl_τ::AbstractArray{Float64}:

See also airfun and airtable.

source