FightSream Analysis Interface Module (AIM)
FightSream Analysis Interface Module (AIM)
Loading...
Searching...
No Matches
Introduction

FlightStream AIM Overview

A module in the Computational Aircraft Prototype Syntheses (CAPS) has been developed to interact (primarily through input files) with Research in Flight's FlightStream [1]. FlightStream predicts the aerodynamic performance of a vehicle via a panel method, which makes it very fast.

An outline of the AIM's inputs and outputs are provided in AIM Inputs and AIM Outputs, respectively.

Geometric attributes recognized by the AIM are provided in Attribution.

Geometry Requirements and Assumptions

The FlightStream coordinate system assumption (X – downstream) needs to be followed.

The FligthStream AIM supports two types of geometry representations:

  1. Solid body (SOLIDBODY) or manifold sheet body (SHEETBODY)
    This geometry format requires the use of a surface meshing AIM that is linked to the Surface_Mesh input (see AIM Inputs).
  2. Sectional geometry
    Sectional geometry information used to generate FligthStream CCS geometry file (see CCS inputs in AIM Inputs). Currently supported CCS bodies are:
    • General Components (Fuselage, Fairings, Pods, etc.)
    • Lifting Surface Components (Wing, Fin, etc.) with Standard Deflection Control Surfaces
    • Annular Components
    • Revolution Components

Sectional Geometry Requirements

Within OpenCSM there are a number of airfoil generation UDPs (User Defined Primitives). These include NACA 4 series, a more general NACA 4/5/6 series generator, Sobieczky's PARSEC parameterization and Kulfan's CST parameterization. All of these UDPs generate EGADS FaceBodies where the Face's underlying Surface is planar and the bounds of the Face is a closed set of Edges whose underlying Curves contain the airfoil shape.

Important Airfoil Geometry Assumptions

  • There must be a Node that represents the Leading Edge point
  • For a sharp trailing edge, there must be a Nodes at the Trailing Edge
  • For a blunt trailing edge, the airfoil curve may be open, or closed by a single Edge connecting the upper/lower Nodes
  • For a FaceBody, the airfoil coordinates traverse counter-clockwise around the Face normal. The OpenCSM REORDER operation may be used to flip the Face normal.
  • For a WireBody, the airfoil coordinates traverse in the order of the loop

Note: Additional spurious Nodes on the upper and lower Edges of the airfoil are acceptable.

The FlightStream CCS surfaces are generated from a set of FaceBodys with the same capsGroup attributes, and the geometric details extracted from the geometry. Attempts are made to orient and sort FaceBody, but users are encouraged to check the airfoil orientation in the CCS input file when setting up a new problem.

It should be noted that general construction in either OpenCSM or even EGADS will be supported as long as the topology described above is used. But care should be taken when constructing the airfoil shape so that a discontinuity (i.e., simply C0) is not generated at the Node representing the Leading Edge. This can be done by fitting a spline through the entire shape as one and then intersecting the single Edge to place the LE Node.

CCS General Components
The FaceBody sections for general components and can be oriented in any direction with any shape. However, sections may not have perpendicular normal vectors.

CCS Lifting Surface Components
The FaceBody must contain at least two edges and two nodes, but may contain any number of Edges otherwise. If the FaceBody contains more nodes, the node with the smallest x value is used to define the leading edge, the node with the largest x defines the trailing edge. The airfoil may have a single Edge that defines a straight blunt trailing edge. The airfoil shapes in the CCS file are generated by sampling the Curves of each section.

Trailing edge control surfaces can be added to the above example by making use of the vlmControlName attribute (see Attribution regarding the attribution specifics). To add a RightFlap and LeftFlap to the the naca UDP entries are augmented with the following attributes.

# left tip
udprim naca Thickness thick Camber camber
attribute vlmControl_LeftFlap 80 # Hinge line is at 80% of the chord (control surface between hinge and trailing edge)
...
# root
udprim naca Thickness thick Camber camber
attribute vlmControl_LeftFlap 80 # Hinge line is at 80% of the chord (control surface between hinge and trailing edge)
attribute vlmControl_RightFlap 80 # Hinge line is at 80% of the chord (control surface between hinge and trailing edge)
...
# right tip
udprim naca Thickness thick Camber camber
attribute vlmControl_RightFlap 80 # Hinge line is at 80% of the chord (control surface between hinge and trailing edge)
...

Note how the root airfoil contains two attributes for both the left and right flaps. Only trailing edge control surfaces are currently supported by FlightStream.

In the pyCAPS script the AIM Inputs, CCS_Control, must be defined.

flap = {"deflectionAngle" : 10.0}
flightstream.input.CCS_Control = {"LeftFlap": flap, "RightFlap": flap}

Notice how the information defined in the flap variable is assigned to the vlmControlName portion of the attributes added to the *.csm file.

CCS Annular Components
Annular components are made up of multiple annular airfoil sections. The same section rules for Lifting Surface components apply. However, blunt trailing edges are currently not supported by FlightStream.

CCS Revolution Components
Revolution components are made up of a single airfoil sections along with an axis of rotation. The same section rules for Lifting Surface components apply. However, blunt trailing edges are currently not supported by FlightStream. The axis of rotation body must be a LINE and have the same capsGroup attribute as the other sections, as well as a capsType=Axis string attribute.