C81_class Derived Type

type, public :: C81_class

Base class for C81 performance data


Contents

Source Code


Components

TypeVisibility AttributesNameInitial
character(len=30), public :: airfoilName
integer, public :: ML

No. of lift coefficient machs

integer, public :: NL

No. of lift coefficient alphas

integer, public :: MD

No. of drag coefficient machs

integer, public :: ND

No. of drag coefficient alphas

integer, public :: MM

No. of moment coefficient machs

integer, public :: NM

No. of moment coefficient alphas

real, public, allocatable, dimension(:):: MaL

Machs for lift

real, public, allocatable, dimension(:):: MaD

Machs for drag

real, public, allocatable, dimension(:):: MaM

Machs for moment

real, public, allocatable, dimension(:):: AL

Alphas for lift

real, public, allocatable, dimension(:):: AD

Alphas for drag

real, public, allocatable, dimension(:):: AM

Alphas for moment

real, public, allocatable, dimension(:,:):: CL

Lift coefficient

real, public, allocatable, dimension(:,:):: CD

Drag coefficient

real, public, allocatable, dimension(:,:):: CM

Moment coefficient


Type-Bound Procedures

procedure, public :: writefile

  • public subroutine writefile(this, C81filename)

    Writes C81 class data to C81 file

    Arguments

    Type IntentOptional AttributesName
    class(C81_class) :: this
    character(len=*), intent(in) :: C81filename

procedure, public :: readfile

  • public subroutine readfile(this, C81filename)

    Reads from C81 file to C81 class

    Arguments

    Type IntentOptional AttributesName
    class(C81_class) :: this
    character(len=*), intent(in) :: C81filename

procedure, public :: getCL

  • public function getCL(this, alphaQuery, machQuery)

    Returns value of 2-d linear interpolated CL for a given alphaQuery and machQuery values

    Arguments

    Type IntentOptional AttributesName
    class(C81_class) :: this
    real, intent(in) :: alphaQuery
    real, intent(in) :: machQuery

    Return Value real

procedure, public :: getCD

  • public function getCD(this, alphaQuery, machQuery)

    Returns value of 2-d linearly interpolated CD for given alphaQuery and machQuery values

    Arguments

    Type IntentOptional AttributesName
    class(C81_class) :: this
    real, intent(in) :: alphaQuery
    real, intent(in) :: machQuery

    Return Value real

procedure, public :: getCM

  • public function getCM(this, alphaQuery, machQuery)

    Returns value of 2-d linearly interpolated CM for given alphaQuery and machQuery values

    Arguments

    Type IntentOptional AttributesName
    class(C81_class) :: this
    real, intent(in) :: alphaQuery
    real, intent(in) :: machQuery

    Return Value real

Source Code

  type C81_class
    !! Base class for C81 performance data
    character(len=30) :: airfoilName
    integer :: ML  !! No. of lift coefficient machs
    integer :: NL  !! No. of lift coefficient alphas
    integer :: MD  !! No. of drag coefficient machs
    integer :: ND  !! No. of drag coefficient alphas
    integer :: MM  !! No. of moment coefficient machs
    integer :: NM  !! No. of moment coefficient alphas  
    real, allocatable, dimension(:) :: MaL  !! Machs for lift
    real, allocatable, dimension(:) :: MaD  !! Machs for drag
    real, allocatable, dimension(:) :: MaM  !! Machs for moment
    real, allocatable, dimension(:) :: AL  !! Alphas for lift  
    real, allocatable, dimension(:) :: AD  !! Alphas for drag
    real, allocatable, dimension(:) :: AM  !! Alphas for moment
    real, allocatable, dimension(:,:) :: CL  !! Lift coefficient  
    real, allocatable, dimension(:,:) :: CD  !! Drag coefficient
    real, allocatable, dimension(:,:) :: CM  !! Moment coefficient
  contains
    procedure :: writefile
    procedure :: readfile
    procedure :: getCL
    procedure :: getCD
    procedure :: getCM
  end type C81_class