C81_class Derived Type

type, public :: C81_class

Base class for C81 performance data


Components

Type Visibility Attributes Name Initial
character(len=30), public :: airfoilName

Airfoil name in C81 file

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(kind=dp), public, allocatable, dimension(:) :: MaL

Machs for lift

real(kind=dp), public, allocatable, dimension(:) :: MaD

Machs for drag

real(kind=dp), public, allocatable, dimension(:) :: MaM

Machs for moment

real(kind=dp), public, allocatable, dimension(:) :: AL

Alphas for lift

real(kind=dp), public, allocatable, dimension(:) :: AD

Alphas for drag

real(kind=dp), public, allocatable, dimension(:) :: AM

Alphas for moment

real(kind=dp), public, allocatable, dimension(:,:) :: CL

Lift coefficient

real(kind=dp), public, allocatable, dimension(:,:) :: CD

Drag coefficient

real(kind=dp), 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 Attributes Name
    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 Attributes Name
    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 Attributes Name
    class(C81_class) :: this
    real(kind=dp), intent(in) :: alphaQuery
    real(kind=dp), intent(in) :: machQuery

    Return Value real(kind=dp)

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 Attributes Name
    class(C81_class) :: this
    real(kind=dp), intent(in) :: alphaQuery
    real(kind=dp), intent(in) :: machQuery

    Return Value real(kind=dp)

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 Attributes Name
    class(C81_class) :: this
    real(kind=dp), intent(in) :: alphaQuery
    real(kind=dp), intent(in) :: machQuery

    Return Value real(kind=dp)