4.0 AMAFALA Software

AMAFALA is a text-based program that stands for “Airplane Modal Aerodynamic Flutter And Loads Analysis” (Gross et. al., 14). It was created by Mr. Bill Brock, a software programmer, to perform model, flutter, and load analysis on airplanes (Fuentealba, 7). AMAFALA results “have been compared successfully against wind tunnel results” (Fuentealba, 7). The program uses several input files representing various parts of the aircraft to generate equations of motion and to output mode shapes, frequencies, and V-g plots.

The learning curve for AMAFALA is extremely high. It is not a user-friendly program and it has been difficult for previous ASE 463Q groups to use. It took some previous Polen groups an entire semester to learn how to use AMAFALA. A high level of program knowledge is needed to create the input files for the aircraft (Gross et. al., 14). Mr. Brock has recently donated the AMAFALA software to the University of Texas Aerospace Engineering Department, and the files can be accessed via the Learning Resource Center on UNIX. Recent Telnet applications, most notably PuTTY, have enabled us to use AMAFALA at home.

We will not be creating the input files for this aircraft, but rather modifying input files initially created by Mr. Javier Fuentealba. Mr. Fuentealba, a recent graduate student of aerospace engineering here at UT, created what is arguably the most complete and accurate model of the Polen Special II aircraft. We will simply manipulate Mr. Fuentealba’s input files, as the previous semester’s ASE463Q group has done.

4.1 AMAFALA Theory

AMAFALA uses Lagrange’s Equations to calculate the aircraft’s mode shapes and frequencies (Brock theory 1). These Lagrangian equations are derived from the Principle of Virtual Displacements (Fuentealba, 10). The kinetic and potential energies for a single degree-of-freedom (SDOF) system are given by

T = (1)

and

U = (2)

where m is the system’s generalized mass, k is the system’s generalized stiffness, and q is the generalized coordinate (Fuentealba, 10). The Lagrangian variable L is the difference between the system’s kinetic and potential energy (Fuentealba, 10). This is written by

L = T – U (3)

which then derives to

L = - (4)

Lagrange’s equation is defined as

(5)

Differentiating L and putting it into Lagrange’s Equation would result in the following SDOF equation of motion

(6)

The equations of motion for a multi degree-of-freedom (MDOF) system are in the following form as

(7)

where [m] is the mass matrix, [k] is the stiffness matrix, {x} is the displacement vector, and {f(t)} is the force vector. This equation of motion is a system of coupled equations of motion (Fuentealba, 11). It is essential to transform them into generalized coordinates to uncouple them (Fuentealba, 11). This requires one to define the generalized coordinates q by the transformation

(8)

where is the model matrix that contains the normal modes. Putting this equation into

the MDOF equations of motion would derive to

(9)

The orthogonality equations are listed as

(10)

and

(11)

Applying these two equations into the derived MDOF equations of motion would further derive into

(12)

which serves as the basic calculation equation for AMAFALA (Fuentealba 12).

4.2 AMAFALA Procedure

The AMAFALA software consists of a series of programs that must be executed in sequence to perform the flutter analysis (Fuentealba, 7). Modal and flutter analysis require some but not all of the AMAFALA programs. What are required for this semester are the surface equation (“surf_eqn”), airplane equation (“airp_eqn”), airplane mode shapes (“airp_mod”), and airplane flutter (“airp_flt”) AMAFALA programs. The flowchart of the sequence is shown here in Figure 4.1. The red denotes the input files while the green shows output files. The files created by the program as “stepping stones” for the next sequence are pink. The AMAFALA programs are in blue.

Figure 4.1: AMAFALA flowchart (Fuentealba, 9)

The “surf_eqn” program must be run each time to analyze each of the lifting surfaces. This includes the wing, horizontal tail, and vertical tail. The data needed to calculate the equations of motion and aerodynamics is stated in an input file (Fuentealba, 7). This file is the only one needed to run “surf_eqn.” The input file is of extension “.inp” and the file’s name must consist of 8 characters. Running the program will generate four different outputs. The first file is an “.out” file extension that is the same name as the input file. This is “the basic output file with data that provides overall information about the surface" (Fuentealba, 9). The second is a “.gra” extension file with also the same name. This is a “columnar format file representation of the effective weight per unit span and chord-wise running location. This should be plotted on a linear x-y plot and inspected for smoothness and conformity of the physical system (Brock, 28).”

A set of numerical plots with the extension “.plt” comprise the third output. These contain the plotted uncoupled mode shapes and the aerodynamic panels (Fuentealba, 13). The last output file is a “.dat” file called “xxxxyyyy.dat”. “xxxx” denotes either “wing”, “hori”, “vert”, and the latter denotes whether it will analyze symmetrical or anti-symmetrical flutter (Fuentealba, 13).

The “airp_eqn” program creates the basic equations of motion by setting up “the fuselage model and connecting it to the wing, horizontal tail, and vertical tail” (Fuentealba, 14). Four input files are required: the fuselage input file and three .dat extension files called “wingyyy.dat,” “horiyyyy.dat,” and “vertasym.dat.” As before, “yyyy” denotes symmetric or anti-symmetric flutter. The fuselage input file is the only file supplied by the user while the “surf_eqn” program already generated the other three. There are three output files, the first of which is an .out file of the same name as the fuselage input file. The second output is a series of numerical plot files. The last is a “.dat” file that contains data needed for the next step of AMAFALA.

The next step uses the airp_mod program to form the final homogeneous equations of motion and “calculates the airplane resultant coupled frequencies and mode shapes” (Brock, 37). The input file consists of the user supplied flutter input file and the .dat file created by the airp_eqn program. Output consists of an .out file of the same name as the flutter input file. This file has information that can be used to confirm the airplane’s weight and center of gravity (Fuentealba, 15). The second output consists of .plt files that contain the airplane’s coupled mode shapes.

The last step in the AMAFALA ladder forms the final equations of motion, calculates the final aerodynamic forces, and calculates the flutter speeds and modes (Fuentealba, 16). This step uses the airp_flt program. Two inputs are required. One is the previously mentioned flutter input file, and the .dat file created by the airp_mod program. Because this is the last program in the flowchart, there will be no output .dat files. The user can choose to output V-g plots or aerodynamic panels for the airplane (Fuentealba, 19).

4.3 AMAFALA Flutter Input File Overview

The Polen Special II’s flutter model is comprised of different parts: the wing, horizontal tail, and vertical tail. These three are represented in their own respective input file. Editing one input file will not affect the output of the other files. For example, adding internal fuel tanks to the Polen II requires editing the wing input file. A fourth file is the flutter input file; this contains the input data needed to formulate the final flutter model. This file allows the user to declare the Mach number, altitude, and flutter symmetry for the analysis. It’s also a simple and convenient way to change the fuel load configurations.

We learned that adding external tanks to the flutter model will only require a one extra line of code, to represent a “point mass”. This one line of code will be added and changed to represent our different tank configurations. Our advisor and members from previous Polen groups gave us the option to change either the wing input file or the flutter input file. We decided to change the flutter input file because it is simpler and more tolerant of errors. We left the wing input file untouched. Because we edited only the flutter input file, we did not edit the input files of either the horizontal or vertical tail.

Editing an input file is rather long and tedious; a steep learning curve is required to be familiar with the aspects of editing the file. Each input file contains geometric, mass, aerodynamic, and stiffness data (Brock, 8). An AMAFALA input file consists of multiple lines of codes; for this case, each line will be referred to as a “card” (Brock, 7). For example, Card 1 will denote the first line of the code. A line-by-line summary of the changes made to the flutter input file is included. This should prove useful for future Polen groups.

Table 4.1: Flutter Input Data for Wing Tanks

1
2
3
4
5
6
7
8
9
10
11
12
13
14 /

Polen S03

Airplane Symmetric Flutter Analysis, Gap = 0.5 in.
Current Config., 1/3, Full fuel, Gross Wt = 1,787 lbs, M=0.700, 25000 ft.
Symmetric
0.700 0 12.0 25000.0 12.0 5 *Loads parameters (Mach, KEAS, alt.(ft), Hz.)
15 4 9 *No. of modes to be calculated and plotted
7.6 -20.0 20.0 *rotation angles for mode shape plots
0 0 *No. of stores/engines, no. of store modes plotted
4 *No. of supplementary mass slices for the Wing
POUNDS X Y Z Wt Ixx Iyy Pxy theta
9.880 20.000 0.000 40 2.9894E+03 9.7656E-04 4.8828E-04 0.0
29.716 32.643 2.000 108 8.0820E+03 4.8640E+03 -5.0790E+02 0.0
21.500 71.000 2.000 50 5.6900E+03 1.8860E+03 -5.0790E+02 0.0
37.207 101.522 0.000 16.2 2.2082E+03 1.1205E+02 -3.8789E+02 0.0

Table 3 shows a portion of the flutter input file that we changed. The bold type denotes code we added or changed. Card 1 to 4 defines the file statement. Card 1 inputs the user name. Cards 2 and 3 represent the problem title (Fuentealba, 9). Card 4 enables the user to analyze either symmetric or anti-symmetric flutter. It will be a given that for each situation, there will be an analysis concerning symmetric and anti-symmetric flutter. Card 5 has been edited to give the appropriate Mach number and altitude. According to Table 3, the Mach number is .700 and the altitude is 25,000 ft. A complete description of cards 5-52 can be found on page 63 of Javier Fuentealba’s Polen Special II thesis.

For our wing tank configurations, the next line we changed was Card 9. We added an extra point mass to the wing, so we changed the number from three to four. Card 14 is our next entry. The first three terms are the u, v, and w coordinates for the object’s center of gravity. The fourth term is the weight of the object in lbs. The fifth term is the moment of inertia around the chordwise axis through the center of gravity. This will be parallel to the u axis. The sixth term is the moment of inertia about a spanwise axis and is parallel to the v axis. The seventh term is the product of inertia about the center of gravity. The last term is the angle of the point mass axes relative to the local coordinates. It is assumed to be zero.

Table 4.2: Flutter Input Data for Belly Tank

30 / 6 *No. of supplementary mass slices for fuselage
POUNDS X Y Z Wt Ixx Izz Pxz theta
60.600 0.000 0.000 574.800 0.0000E+00 0.0000E+00 0.0000E+00 0.0
160.000 0.000 -8.000 20.000 0.0000E+00 1.5032E+03 -1.9531E-03 0.0
100.000 0.000 5.000 190.000 20400.00 10600.00 0.0 0.0
26.000 0.000 0.000 336.000 3.99E+04 5.55E+04 2.011E-01 0.0
-2 0.000 0.000 67.000 3.57E+04 3.57E+04 0.00E+00 0.0
100.00 0.000 -8.000 100.000 0.0000E+00 1.5032E+03 0.00E+00 0.0

Our belly tank configuration is of the same nature. Instead of adding an extra point mass to the wing, we added it to the fuselage. We left the wing configuration untouched. Just like before, we declared an extra point mass and added the line of code that was similar in configuration to the wing tanks. We counterbalanced the additional mass by adding extra weight, 20 lbs, to the fuel engine.

For the most part, we did not adhere to last semester’s changes to the AMAFALA input file. We also did not research for any additional information concerning the internal structure of the wing. The reason is because our objectives were totally different from theirs. The Fall 2002 Group had to separate the wing into internal slices; they edited the flutter and wing input file to represent this. This is essential for adding internal fuel. Our objectives were to add external fuel tanks, which did not require dividing the wing into multiple slices. All we had to do was to add a single line of code to simulate the point mass of the external fuel tank. To be upfront, our objectives were not dependant on last semesters; therefore, we compared our findings to Javier Fuentealba’s recent AMAFALA codes. To cover up the embarrassment that our entire project this semester involved adding a single line of code to the existing input file, we ran 72 different configurations for that one line.

4.4 AMAFALA Output Theory

Finding the flutter speed is rather easy if one knows what to look for. The flutter speed can be found from a V-g plot. This plot has the velocity on the x-axis and the structural damping g on the y-axis. AMAFALA assumes that the motions are sinusoidal in nature (Gross et al., 10). Derived from the equation for a MDOF system, the equation for flutter is

(13)

where V is the freestream velocity, M¥ is the freestream Mach number, [M] is the diagonal mass matrix, [K] is the diagonal stiffness matrix, and [A] is the aerodynamic matrix (Gross et al.,17).

One thing to note in the above equation is that the “g” represents an artificial or unknown structural damping coefficient that is normally of a small value of 0.03 or less (Weatherill, 7). Dividing equation (13) by -w2 and introducing b, a constant for reduced frequency, would give (Weatherill, 10)