SUAVE  2.5.2
An Aerospace Vehicle Environment for Designing Future Aircraft
Airfoil_Panel_Method

Functions

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.aero_coeff.aero_coeff (x, y, cp, al, npanel)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.airfoil_analysis.airfoil_analysis (airfoil_geometry, alpha, Re_L, npanel=100, batch_analysis=True, airfoil_stations=[0], initial_momentum_thickness=1E-5, tolerance=1E0)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.heads_method.heads_method (npanel, nalpha, nRe, DEL_0, THETA_0, DELTA_STAR_0, TURBULENT_SURF, RE_L, TURBULENT_COORD, VE_I, DVE_I, batch_analysis, tol)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.hess_smith.hess_smith (x_coord, y_coord, alpha, Re, npanel, batch_analyis)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.infl_coeff.infl_coeff (x, y, xbar, ybar, st, ct, npanel, nalpha, nRe, batch_analyis)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.panel_geometry.panel_geometry (x, y, npanel, nalpha, nRe)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.thwaites_method.thwaites_method (npanel, nalpha, nRe, L, RE_L, X_I, VE_I, DVE_I, batch_analysis, tol, THETA_0)
 
def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.velocity_distribution.velocity_distribution (qg, x, y, xbar, ybar, st, ct, alpha, Re, npanel)
 

Detailed Description

Function Documentation

◆ aero_coeff()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.aero_coeff.aero_coeff (   x,
  y,
  cp,
  al,
  npanel 
)
Compute airfoil force and moment coefficients about 
                the quarter chord point          

Assumptions:
None

Source:
None                                                                    
                                                               
Inputs:                                                     
x       -  Vector of x coordinates of the surface nodes      
y       -  Vector of y coordinates of the surface nodes       
cp      -  Vector of coefficients of pressure at the nodes  
al      -  Angle of attack in radians                             
npanel  -  Number of panels on the airfoil               
                                                             
Outputs:                                           
cl      -  Airfoil lift coefficient                
cd      -  Airfoil drag coefficient                                 
cm      -  Airfoil moment coefficient about the c/4     
 
   Properties Used:
N/A

◆ airfoil_analysis()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.airfoil_analysis.airfoil_analysis (   airfoil_geometry,
  alpha,
  Re_L,
  npanel = 100,
  batch_analysis = True,
  airfoil_stations = [0],
  initial_momentum_thickness = 1E-5,
  tolerance = 1E0 
)
This computes the aerodynamic polars as well as the boundary layer properties of 
an airfoil at a defined set of reynolds numbers and angle of attacks

Assumptions:
Michel Criteria used for transition

Source:
N/A

Inputs: 
airfoil_geometry   - airfoil geometry points                                                             [unitless]
alpha              - angle of attacks                                                                    [radians]
Re_L               - Reynolds numbers                                                                    [unitless]
npanel             - number of airfoil panels                                                            [unitless]
batch_analysis     - boolean : If True: the specified number of angle of attacks and Reynolds            [boolean]
                              numbers are used to create a table of 2-D results for each combination
                              Note: Can only accomodate one airfoil
                              
                              If False:The airfoils specified are run and corresponding angle of attacks 
                              and Reynolds numbers
                              Note: The number of airfoils, angle of attacks and reynolds numbers must 
                              all the same dimension                     

Outputs: 
airfoil_properties.
    AoA            - angle of attack                                                   [radians
    Re             - Reynolds number                                                   [unitless]
    Cl             - lift coefficients                                                 [unitless]
    Cd             - drag coefficients                                                 [unitless]
    Cm             - moment coefficients                                               [unitless]
    normals        - surface normals of airfoil                                        [unitless]
    x              - x coordinate points on airfoil                                    [unitless]
    y              - y coordinate points on airfoil                                    [unitless]
    x_bl           - x coordinate points on airfoil adjusted to include boundary layer [unitless]
    y_bl           - y coordinate points on airfoil adjusted to include boundary layer [unitless]
    Cp             - pressure coefficient distribution                                 [unitless]
    Ue_Vinf        - ratio of boundary layer edge velocity to freestream               [unitless]
    dVe            - derivative of boundary layer velocity                             [m/s-m]
    theta          - momentum thickness                                                [m]
    delta_star     - displacement thickness                                            [m]
    delta          - boundary layer thickness                                          [m]
    H              - shape factor                                                      [unitless]
    Cf             - local skin friction coefficient                                   [unitless]
    Re_theta_t     - Reynolds Number as a function of theta transition location        [unitless]
    tr_crit        - critical transition criteria                                      [unitless]
                    
Properties Used:
N/A

◆ heads_method()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.heads_method.heads_method (   npanel,
  nalpha,
  nRe,
  DEL_0,
  THETA_0,
  DELTA_STAR_0,
  TURBULENT_SURF,
  RE_L,
  TURBULENT_COORD,
  VE_I,
  DVE_I,
  batch_analysis,
  tol 
)
Computes the boundary layer characteristics in turbulent
flow pressure gradients

Source:
Head, M. R., and P. Bandyopadhyay. "New aspects of turbulent boundary-layer structure."
Journal of fluid mechanics 107 (1981): 297-338.

Assumptions:
None  

Inputs: 
nalpha         - number of angle of attacks                                                    [unitless]
nRe            - number of reynolds numbers                                                    [unitless]
batch_analysis - flag for batch analysis                                                       [boolean]
DEL_0          - intital bounday layer thickness                                               [m]
DELTA_STAR_0   - initial displacement thickness                                                [m]
THETA_0        - initial momentum thickness                                                    [m]
TURBULENT_SURF - normalized length of surface                                                  [unitless]
RE_L           - Reynolds number                                                               [unitless]
TURBULENT_COORD- x coordinate on surface of airfoil                                            [unitless] 
VE_I           - boundary layer velocity at transition location                                [m/s-m] 
DVE_I          - intial derivative value of boundary layer velocity at transition location     [unitless] 
npanel         - number of points on surface                                                   [unitless]
tol            - boundary layer error correction tolerance                                     [unitless]

Outputs: 
RESULTS.
  X_H          - reshaped distance along airfoil surface                    [unitless]
  THETA_H      - momentum thickness                                         [m]
  DELTA_STAR_H - displacement thickness                                     [m] 
  H_H          - shape factor                                               [unitless]
  CF_H         - friction coefficient                                       [unitless]
  RE_THETA_H   - Reynolds number as a function of momentum thickness        [unitless]
  RE_X_H       - Reynolds number as a function of distance                  [unitless]
  DELTA_H      - boundary layer thickness                                   [m]
   
Properties Used:
N/A

◆ hess_smith()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.hess_smith.hess_smith (   x_coord,
  y_coord,
  alpha,
  Re,
  npanel,
  batch_analyis 
)
Computes the incompressible, inviscid flow over an airfoil of  arbitrary shape using the Hess-Smith panel method.  

Assumptions:
None

Source:  "An introduction to theoretical and computational        
                aerodynamics", J. Moran, Wiley, 1984  
 
                                                 
Inputs          
x             -  Vector of x coordinates of the surface                  [unitess]     
y             -  Vector of y coordinates of the surface                  [unitess] 
batch_analyis - flag for batch analysis                                  [boolean]
alpha         -  Airfoil angle of attack                                 [radians] 
npanel        -  Number of panels on the airfoil.  The number of nodes   [unitess] 
                  is equal to npanel+1, and the ith panel goes from node   
                  i to node i+1                                
                                                                       
Outputs                                                      
cl            -  Airfoil lift coefficient                         [unitless]           
cd            -  Airfoil drag coefficient                         [unitless]      
cm            -  Airfoil moment coefficient about the c/4         [unitless]            
x_bar         -  Vector of x coordinates of the surface nodes     [unitless]           
y_bar         -  Vector of y coordinates of the surface nodes     [unitless]          
cp            -  Vector of coefficients of pressure at the nodes  [unitless]         

Properties Used:
N/A

◆ infl_coeff()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.infl_coeff.infl_coeff (   x,
  y,
  xbar,
  ybar,
  st,
  ct,
  npanel,
  nalpha,
  nRe,
  batch_analyis 
)
Compute the matrix of aerodynamic influence  coefficients for later use

Assumptions:
None

Source:
None 
 
Inputs
x       -  Vector of x coordinates of the surface nodes  [unitless]   
y       -  Vector of y coordinates of the surface nodes  [unitless]   
xbar    -  x-coordinate of the midpoint of each panel    [unitless]      
ybar    -  y-coordinate of the midpoint of each panel    [unitless]     
st      -  np.sin(theta) for each panel                  [radians]               
ct      -  np.cos(theta) for each panel                  [radians]                 
npanel  -  Number of panels on the airfoil               [unitless]       
                                                                                        
Outputs                                        
ainfl   -  Aero influence coefficient matrix             [unitless]

Properties Used:
N/A

◆ panel_geometry()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.panel_geometry.panel_geometry (   x,
  y,
  npanel,
  nalpha,
  nRe 
)
Computes airfoil surface panelization parameters for later use in 
the computation of the matrix of influence coefficients.        

Assumptions:
None

Source:
None 
                                                                   
Inputs:                                                         
x       -  Vector of x coordinates of the surface nodes  [unitless]         
y       -  Vector of y coordinates of the surface nodes  [unitless]      
npanel  -  Number of panels on the airfoil               [unitless]         
                                                                 
Outputs:                                             
l       -  Panel lengths                              [unitless]
st      -  np.sin(theta) for each panel               [radians]
ct      -  np.cos(theta) for each panel               [radians]
xbar    -  x-coordinate of the midpoint of each panel [unitless]              
ybar    -  y-coordinate of the midpoint of each panel [unitless]               


Properties Used:
N/A

◆ thwaites_method()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.thwaites_method.thwaites_method (   npanel,
  nalpha,
  nRe,
  L,
  RE_L,
  X_I,
  VE_I,
  DVE_I,
  batch_analysis,
  tol,
  THETA_0 
)
Computes the boundary layer characteristics in laminar 
flow pressure gradients

Source:
Thwaites, Bryan. "Approximate calculation of the laminar boundary layer." 
Aeronautical Quarterly 1.3 (1949): 245-280.

Assumptions:
None  

Inputs:  
npanel         - number of points on surface                                                 [unitless]
nalpha         - number of angle of attacks                                                  [unitless]
nRe            - number of reynolds numbers                                                  [unitless]
batch_analysis - flag for batch analysis                                                     [boolean]
THETA_0        - initial momentum thickness                                                  [m]
L              - normalized length of surface                                                [unitless]
RE_L           - Reynolds number                                                             [unitless]
X_I            - x coordinate on surface of airfoil                                          [unitless]
VE_I           - boundary layer velocity at transition location                              [m/s] 
DVE_I          - initial derivative value of boundary layer velocity at transition location  [m/s-m] 
tol            - boundary layer error correction tolerance                                   [unitless]

Outputs: 
RESULTS.
  X_T          - reshaped distance along airfoil surface             [unitless]
  THETA_T      - momentum thickness                                  [m]
  DELTA_STAR_T - displacement thickness                              [m] 
  H_T          - shape factor                                        [unitless]
  CF_T         - friction coefficient                                [unitless]
  RE_THETA_T   - Reynolds number as a function of momentum thickness [unitless]
  RE_X_T       - Reynolds number as a function of distance           [unitless]
  DELTA_T      - boundary layer thickness                            [m]

Properties Used:
N/A

◆ velocity_distribution()

def SUAVE.Methods.Aerodynamics.Airfoil_Panel_Method.velocity_distribution.velocity_distribution (   qg,
  x,
  y,
  xbar,
  ybar,
  st,
  ct,
  alpha,
  Re,
  npanel 
)
Compute the tangential velocity distribution at the       
             midpoint of each panel   

Source:
None

Assumptions:
None  

Inputs:                                                    

 qg          -  Vector of source/sink and vortex strengths    [unitless]          
 x           -  Vector of x coordinates of the surface nodes  [unitless]         
 y           -  Vector of y coordinates of the surface nodes  [unitless]            
 xbar        -  x-coordinate of the midpoint of each panel    [unitless]           
 ybar        -  y-coordinate of the midpoint of each panel    [unitless]           
 st          -  np.sin(theta) for each panel                  [radians]                
 ct          -  np.cos(theta) for each panel                  [radians]             
 al          -  Angle of attack in radians                    [radians]             
 npanel      -  Number of panels on the airfoil               [unitless]  

 Outputs:                                                        

 vt_2d        -  Vector of tangential velocities      

Properties Used:
N/A