]> git.mxchange.org Git - flightgear.git/blob - docs-mini/README.uiuc
da0c3ec483c2a0ca95c380358de9e8a35e7a84d6
[flightgear.git] / docs-mini / README.uiuc
1 ************************************************
2 *                                              * 
3 *  FGFS Reconfigurable Aircraft Flight Model   *
4 *  Input File Documentation                    * 
5 *  Version 0.63, March 17, 2000                *
6 *                                              *
7 *  Authors:                                    *
8 *  Jeff Scott (jscott@uiuc.edu)                *
9 *  Bipin Sehgal (bsehgal@uiuc.edu)             *
10 *  Michael Selig (m-selig@uiuc.edu)            *
11 *  Dept of Aero and Astro Engineering          *
12 *  University of Illinois at Urbana-Champaign  *
13 *  Urbana, IL                                  *
14 *  http://amber.aae.uiuc.edu/~m-selig          *
15 *                                              *
16 ************************************************ 
17
18  
19 **********************************************************************
20 This documentation includes:
21  - Required and optional input lines.
22  - Input line formats and conventions.
23
24 Viewing this file in emacs makefile-mode with color makes this file
25 easier to read.
26 **********************************************************************
27
28 **********************************************************************
29 I. Conventions and Notations and Reading this Document:
30
31  # ...     Comments
32  |         Input line not yet implemented
33  |         Optional data
34  |         Sometimes indicates a feature not yet used,
35            but proposed convention is indicated nevertheless.
36  ||        Input line disabled
37  ||        Option disabled
38  ...       Repeat similar data
39  ->        Continue onto next line
40 **********************************************************************
41
42 **********************************************************************
43 II. General Input Line Format:
44
45 Examples input lines include
46
47 Cm Cmo 0.194            # []          Bray pg 33
48 Cm Cm_a -2.12           # [/rad]      Bray pg 33
49 CL CLfa CLfa.dat        # []          Bray pg 50, Table 4.7
50
51 These follow the more general input line form
52
53 keyword  variableName  <value -or- file> | ->
54     <value -or- file>  # [units]  <data source>
55
56 Each term of the input line will be discussed in turn.
57
58 (1) KEYWORDS
59 ============
60
61 There currently exist 15 types of variable keywords:
62
63 init            Initial values for equation of motion
64 geometry        Aircraft-specific geometric quantities
65 controlSurface  Control surface deflections and properties
66 |controlsMixer  Control surface mixer options
67 mass            Aircraft-specific mass properties
68 engine          Propulsion data
69 CD              Aerodynamic x-force quantities (longitudinal)
70 CL              Aerodynamic z-force quantities (longitudinal)
71 Cm              Aerodynamic m-moment quantities (longitudinal)
72 CY              Aerodynamic y-force quantities (lateral)
73 Cl              Aerodynamic l-moment quantities (lateral)
74 Cn              Aerodynamic n-moment quantities (lateral)
75 |gear           Landing gear model quantities
76 ice             Aircraft icing model parameters
77 record          Record desired quantities to the file: uiuc_record.dat
78
79 As each line of the input file is read, the code recognizes the
80 keyword, enters the appropriate switch statement in the code, and
81 proceeds to read the next term in the input line.
82
83 (2) VARIABLE NAMES
84 ==================
85
86 The variable name indicates the form of the variable itself.  This
87 form may be a constant, a stability derivative (a specific form of a
88 constant), or a variable-dimensional lookup table.  More variable
89 types can be easily prescribed by defining a new convention.  The
90 variable name may also indicate that the quantity is to be calculated
91 from a hard-coded equation or set of equations provided at an
92 appropriate location within the code.
93
94 If the parameter name denotes a constant, a numerical value will 
95 follow the variable name.  If a lookup table, the name of the table 
96 containing the data will follow.
97
98 More than one value or file name can be specified if the code is 
99 intended to read in multiple pieces of data when implementing the 
100 particular switch in question (see also OPTIONAL data, section (3)).
101
102 The conventions used for naming the variables are provided below.
103 Several of these variable names are not currently used.
104
105 1) variable class
106 _       denotes stability derivative to be multiple by something
107 f       "function of" (indicates an m*n matrix data table is given)
108
109 2) timing data (global simulator variables)
110 Simtime   current simulator time         [s]
111 dt        current simulator time step    [s]
112
113 3) aircraft state variables
114 Dx_pilot   x-location                    [ft]
115 Dy_pilot   y-location                    [ft]
116 Dz_pilot   z-location                    [ft]
117 Dx_cg      center of gravity x-location  [ft]
118 Dy_cg      center of gravity y-location  [ft]
119 Dz_cg      center of gravity z-location  [ft]
120 V_north    x-velocity                    [ft/s]
121 V_east     y-velocity                    [ft/s]
122 V_down     z-velocity                    [ft/s]
123 V_rel_wind total velocity                [ft/s]
124 Dynamic_pressure  dynamic pressure       [lb/ft^2]
125 Alpha      angle of attack               [rad]
126 Alpha_dot  rate of change of alpha       [rad/s]
127 Beta       sideslip angle                [rad]
128 Beta_dot   rate of change of beta        [rad]
129 Gamma      flight path angle             [rad]
130 P_body     roll rate                     [rad/s]
131 Q_body     pitch rate                    [rad/s]
132 R_body     yaw rate                      [rad/s]
133 Phi        bank angle                    [rad]
134 Theta      pitch attitude angle          [rad]
135 Theta_dot  rate change of theta          [rad/s]
136 Psi        heading angle                 [rad]
137 |long_trim
138 |trim_inc
139 M          Mach number                   []
140 Re         Reynolds number               []
141
142 4) atmosphere properties
143 Density          air density             [slug/ft^3]
144
145 5) geometric variables
146 bw        wingspan                       [ft]
147 cbar      mean aerodynamic chord         [ft]
148 Sw        wing planform area             [ft^2]
149 iw        wing incidence angle           [deg]
150 bc        canard span                    [ft]
151 cc        canard (mean) chord            [ft]
152 Sc        canard area                    [ft^2]
153 ic        canard incidence angle         [deg]
154 bh        horizontal tail span           [ft]
155 ch        horizontal tail (mean) chord   [ft]
156 Sh        horizontal tail area           [ft^2]
157 ih        horizontal tail incidence angle [deg]
158 bv        vertical tail span (height)    [ft]
159 cv        vertical tail (mean) chord     [ft]
160 iv        vertical tail incidence angle  [deg]
161 Sv        vertical tail area             [ft^2]
162
163 6) control surface properties
164 Sa            aileron area               [ft^2]
165 Se            elevator area              [ft^2]
166 Sf            flap area                  [ft^2]
167 Sr            rudder area                [ft^2]
168 Lat_control   roll control input         [?]
169 Long_control  pitch control input        [?]
170 Rudder_pedal  yaw control input          [?]
171 aileron       aileron deflection         [rad]
172 elevator      elevator deflection        [rad]
173 rudder        rudder deflection          [rad]
174 |flap         flap deflection            [rad]
175
176 7) mass variables
177 |Weight   gross takeoff weight           [lb]
178 Mass      aircraft mass (used by LaRC)   [slug]
179 I_xx      roll inertia                   [slug-ft^2]
180 I_yy      pitch inertia                  [slug-ft^2]
181 I_zz      yaw inertia                    [slug-ft^2]
182 I_xz      lateral cross inertia          [slug-ft^2]
183
184 8) engine/propulsion variables
185 |thrust       thrust                          [lb]
186 simpleSingle  simple single engine max thrust [lb]
187 |Throttle_pct throttle input                  []  # ie, this is the stick
188 |Throttle[3]  throttle deflection             [%] # this is what gets used to determine thrust
189
190 9) force/moment coefficients
191 CD        coefficient of drag            []
192 CY        coefficient of side-force      []
193 CL        coefficient of lift            []
194 Cl        coefficient of roll moment     []
195 Cm        coefficient of pitching moment []
196 Cn        coefficient of yaw moment      []
197 |CT       coefficient of thrust          []
198
199 10) total forces/moments
200 F_X_wind    aerodynamic x-force in wind-axes    [lb]
201 F_Y_wind    aerodynamic y-force in wind-axes    [lb]
202 F_Z_wind    aerodynamic z-force in wind-axes    [lb]
203 F_X_aero    aerodynamic x-force in body-axes    [lb]
204 F_Y_aero    aerodynamic y-force in body-axes    [lb]
205 F_Z_aero    aerodynamic z-force in body-axes    [lb]
206 F_X_engine  propulsion x-force in body axes     [lb]
207 F_Y_engine  propulsion y-force in body axes     [lb]
208 F_Z_engine  propulsion z-force in body axes     [lb]
209 F_X_gear    gear x-force in body axes           [lb]
210 F_Y_gear    gear y-force in body axes           [lb]
211 F_Z_gear    gear z-force in body axes           [lb]
212 F_X         total x-force                       [lb]
213 F_Y         total y-force                       [lb]
214 F_Z         total z-force                       [lb]
215 M_l_aero    aero roll-moment in body-axes       [ft-lb]
216 M_m_aero    aero pitch-moment in body-axes      [ft-lb]
217 M_n_aero    aero yaw-moment in body-axes        [ft-lb]
218 M_l_engine  prop roll-moment in body axes       [ft-lb]
219 M_m_engine  prop pitch-moment in body axes      [ft-lb]
220 M_n_engine  prop yaw-moment in body axes        [ft-lb]
221 M_l_gear    gear roll-moment in body axes       [ft-lb]
222 M_m_gear    gear pitch-moment in body axes      [ft-lb]
223 M_n_gear    gear yaw-moment in body axes        [ft-lb]
224 M_l_rp      total roll-moment                   [ft-lb]
225 M_m_rp      total pitch-moment                  [ft-lb]
226 M_n_rp      total yaw-moment                    [ft-lb]
227
228 11) landing gear properties
229 |cgear  gear damping constant            [?]
230 |kgear  gear spring constant             [?]
231 |muGear gear rolling friction coef       [?]
232 |strutLength  gear strut length          [ft]
233
234 12) icing model paramters
235 iceTime       time when icing begins                         [s]
236 transientTime time period over which eta increases to final  [s]
237 eta_final     icing severity factor at end of transient time [-]
238 kCA           icing constants for associated aero coef.      [-] (see IV)
239
240 13) subscripts
241 o       value for all angles = 0 (alfa, beta, etc)
242 a       angle of attack
243 adot    rate change in angle alpha
244 beta    sideslip angle
245 |betadot  rate change in beta
246 p       roll rate
247 q       pitch rate
248 r       yaw rate
249 |pdot   rate change in p
250 |qdot   rate change in q
251 |rdot   rate change in r
252 |udot   rate change in x-velocity
253 da      aileron deflection
254 de      elevator deflection
255 dr      rudder deflection
256 df      flap deflection
257 |df2    flap deflection for second set
258 |df3    flap deflection for third set
259 max     maximum
260 min     minimum
261
262 (3) | (OPTIONAL DATA)
263 =====================
264
265 An input line may also be used to provide optional data that
266 will be used if provided but is not necessary for the code to 
267 operate.  As with the variable data described in section (2), multiple 
268 values or data files may be provided if the code is written to use 
269 them.
270
271 (4) # (COMMENTS)
272 ================
273
274 Appended comments should be provided with each input line to indicate 
275 units on the variable in question and to indicate the source the data 
276 was drawn from.
277 **********************************************************************
278
279 **********************************************************************
280 III. Sample Input Lines:
281
282 CONSTANTS
283 =========
284
285 geometry bw <value>     # geometric parameter, wingspan
286 Cm Cm_a <value>         # stability derivative, d(Cm)/d(alpha)
287 controlSurface de <value> <value>  # max and min elevator deflections
288
289 LOOKUP TABLES
290 =============
291
292 CD CDfCL <file.dat>     # CD(CL), drag polar data file
293 Cm Cmfade <file.dat>    # Cm(alpha,delta_e), moment data file
294
295 HARD-CODED EQUATION
296 ===================
297
298 CD CDfCL                # CD(CL), drag calculated in code based on CL
299
300 **********************************************************************
301
302 **********************************************************************
303 IV. Definitions of Input Lines Currently Available:
304
305 Of all the possible permutation of variable names described above in
306 section II, only some are currently implemented in the code.  These
307 are described below.  Comments, denoted by '#,' are used to define the
308 lines and to indicate examples of the data if additional clarity is
309 needed for unique situations.  Again, those lines beginning with '|'
310 are not currently implemented in the code, but indicate planned
311 conventions in later versions.
312
313 # Key  Variable  Data      Units      Description                       Where Defined
314 #------------------------------------------------------------------------------------
315
316 init Dx_pilot <Dx_pilot> # [ft]       initial x-position                ls_generic.h
317 init Dy_pilot <Dy_pilot> # [ft]       initial y-position                ls_generic.h
318 init Dz_pilot <Dz_pilot> # [ft]       initial z-position                ls_generic.h
319 init Dx_cg <Dx_cg>       # [ft]       initial cg x_location             ls_generic.h
320 init Dy_cg <Dy_cg>       # [ft]       initial cg y_location             ls_generic.h
321 init Dz_cg <Dz_cg>       # [ft]       initial cg z_location             ls_generic.h
322 |init V_north <V_north>  # [ft/s]     initial x-velocity                ls_generic.h
323 |init V_east <V_east>    # [ft/s]     initial y-velocity                ls_generic.h
324 |init V_down <V_down>    # [ft/s]     initial z-velocity                ls_generic.h
325 init P_body <P_body>     # [rad/s]    initial roll rate                 ls_generic.h
326 init Q_body <Q_body>     # [rad/s]    initial pitch rate                ls_generic.h
327 init R_body <R_body>     # [rad/s]    initial yaw rate                  ls_generic.h
328 init Phi <Phi>           # [rad]      initial bank angle                ls_generic.h
329 init Theta <Theta>       # [rad]      initial pitch attitude angle      ls_generic.h
330 init Psi <Psi>           # [rad]      initial heading angle             ls_generic.h
331
332 geometry bw <bw>        # [ft]        wingspan                          uiuc_aircraft.h
333 geometry cbar <cbar>    # [ft]        wing mean aero chord              uiuc_aircraft.h
334 geometry Sw <Sw>        # [ft^2]      wing reference area               uiuc_aircraft.h
335 |geometry iw <iw>       # [deg]       wing incidence angle              uiuc_aircraft.h
336 |geometry bc <bc>       # [ft]        canard span                       uiuc_aircraft.h
337 |geometry cc <cc>       # [ft]        canard chord                      uiuc_aircraft.h
338 |geometry Sc <Sc>       # [sq-ft]     canard area                       uiuc_aircraft.h
339 |geometry ic <ic>       # [deg]       canard incidence angle            uiuc_aircraft.h
340 |geometry bh <bh>       # [ft]        horizontal tail span              uiuc_aircraft.h
341 |geometry ch <ch>       # [ft]        horizontal tail chord             uiuc_aircraft.h
342 |geometry Sh <Sh>       # [sq-ft]     horizontal tail area              uiuc_aircraft.h
343 |geometry ih <ih>       # [deg]       horiz tail incidence angle        uiuc_aircraft.h
344 |geometry bv <bv>       # [ft]        vertical tail span                uiuc_aircraft.h
345 |geometry cv <cv>       # [ft]        vertical tail chord               uiuc_aircraft.h
346 |geometry Sv <Sv>       # [sq-ft]     vertical tail area                uiuc_aircraft.h
347 |geometry iv <iv>       # [deg]       vert tail incidence angle         uiuc_aircraft.h
348
349 |controlSurface Se <Se>  # [ft^2]     elevator area                     uiuc_aircraft.h
350 |controlSurface Sa <Sa>  # [ft^2]     aileron area                      uiuc_aircraft.h
351 |controlSurface Sr <Sr>  # [ft^2]     rudder area                       uiuc_aircraft.h
352 |controlSurface Sf <Sf>  # [ft^2]     flap area                         uiuc_aircraft.h
353 controlSurface de <demax> <demin>   # [deg]  max/min elev deflections   uiuc_aircraft.h
354 controlSurface da <damax> <damin>   # [deg]  max/min ail deflections    uiuc_aircraft.h
355 controlSurface dr <drmax> <drmin>   # [deg]  max/min rud deflections    uiuc_aircraft.h
356 |controlSurface df <dfmax> <dfmin>  # [deg]  max/min flap deflections   uiuc_aircraft.h
357 # Note: Currently demin is not used in the code, and the max/min is +-demax.
358
359
360 |controlsMixer nomix <?> # []         no controls mixing                uiuc_aircraft.h
361
362 |mass Weight <Weight>   # [lb]        gross takeoff weight (not used)
363 mass Mass <Mass>        # [slug]      gross takeoff mass                ls_generic.h
364 mass I_xx <I_xx>        # [slug-ft^2] roll inertia                      ls_generic.h
365 mass I_yy <I_yy>        # [slug-ft^2] pitch inertia                     ls_generic.h
366 mass I_zz <I_zz>        # [slug-ft^2] yaw inertia                       ls_generic.h
367 mass I_xz <I_xz>        # [slug-ft^2] lateral cross inertia             ls_generic.h
368
369 |engine thrust <thrustMax> <thrustMin> # [lb]  max/min engine thrust    uiuc_aircraft.h
370 engine simpleSingle <sSMaxThrust> # [lb] simple single engine           uiuc_aircraft.h
371 engine c172             # use Cessna 172 engine model of Tony Peden      
372
373 CL CLo <CLo>            # []          lift coef for all angles = 0      uiuc_aircraft.h
374 CL CL_a <CL_a>          # [/rad]      lift curve slope, d(CL)/d(alpha)  uiuc_aircraft.h
375 CL CL_adot <CL_adot>    # [/rad]      d(CL)/d(alpha)/da(time)           uiuc_aircraft.h
376 CL CL_q <CL_q>          # [/rad]      d(CL)/delta(q)                    uiuc_aircraft.h
377 CL CL_de <CL_de>        # [/rad]      d(CL)/d(de)                       uiuc_aircraft.h
378
379 # CL(alpha), conversion for CL, for alpha                           []  uiuc_aircraft.h
380 CL CLfa <CLfa.dat> <conversion1> <conversion2>
381
382 # CL(alpha,delta_e), conversion for CL, for alpha, for delta_e      []  uiuc_aircraft.h
383 CL CLfade <CLfade.dat> <conversion1> <conversion2> <conversion3>
384
385 |CL CLfCT <CLfCT.dat>   #             CL(thrust coef)                   uiuc_aircraft.h
386 |CL CLfRe               #             CL(Reynolds #), equation          uiuc_aircraft.h
387 |CL CL_afaM <CL_afaM.dat> #           CL_alpha(alpha,Mach #)            uiuc_aircraft.h
388 # there are examples that might later be included in the code
389
390 # note that CD terms must come after CL for induced drag to be computed
391 CD CDo <CDo>            # []          drag coef for all angles = 0      uiuc_aircraft.h
392 CD CDK <CDK>            # []          constant, as in CD=CDo+K*CL^2     uiuc_aircraft.h
393 CD CD_a <CD_a>          # [/rad]      d(CD)/d(alpha)                    uiuc_aircraft.h
394 CD CD_de <CD_de>        # [/rad]      d(CD)/d(delta_e)                  uiuc_aircraft.h
395
396 # CD(alpha), conversion for CD, for alpha                           []  uiuc_aircraft.h
397 CD CDfa <CDfa.dat> <conversion1> <conversion2>
398
399 # CD(alpha,delta_e), conversion for CD, for alpha, for delta_e      []  uiuc_aircraft.h
400 CD CDfade <CDfade.dat> <conversion1> <conversion2> <conversion3>
401
402
403 Cm Cmo <Cmo>            # []          pitch mom coef for all angles=0   uiuc_aircraft.h
404 Cm Cm_a <Cm_a>          # [/rad]      d(Cm)/d(alpha)                    uiuc_aircraft.h
405 Cm Cm_adot <Cm_adot>    # [/rad]      d(Cm)/d(alpha)/d(time)            uiuc_aircraft.h
406 Cm Cm_q <Cm_q>          # [/rad]      d(Cm)/d(q)                        uiuc_aircraft.h
407 Cm Cm_de <Cm_de>        # [/rad]      d(Cm)/d(de)                       uiuc_aircraft.h
408 |Cm Cmfa <Cmfa.dat>     # []          Cm(alpha)                         uiuc_aircraft.h
409 Cm Cmfade <Cmfade.dat>  # []          Cm(alpha,delta_e)                 uiuc_aircraft.h
410 # Cm(alpha,delta_e), conversion for Cm, for alpha, for delta_e      []  uiuc_aircraft.h
411 Cm Cmfade <Cmfade.dat> <conversion1> <conversion2> <conversion3>
412
413 CY CYo <CYo>            # []          side-force coef for all angles=0  uiuc_aircraft.h
414 CY CY_beta <CY_beta>    # [/rad]      d(CY)/d(beta)                     uiuc_aircraft.h
415 CY CY_p <CY_p>          # [/rad]      d(CY)/d(p)                        uiuc_aircraft.h
416 CY CY_r <CY_r>          # [/rad]      d(CY)/d(r)                        uiuc_aircraft.h
417 CY CY_da <CY_da>        # [/rad]      d(CY)/d(delta_a)                  uiuc_aircraft.h
418 CY CY_dr <CY_dr>        # [/rad]      d(CY)/d(delta_r)                  uiuc_aircraft.h
419
420 # CY(alpha,delta_a), conversion for CY, for alpha, for delta_a      []  uiuc_aircraft.h
421 CY CYfada <CYfada.dat> <conversion1> <conversion2> <conversion3>
422
423 # CY(beta,delta_r), conversion for CY, for beta, for delta_r        []  uiuc_aircraft.h
424 CY CYfbetadr <CYfbetadr.dat> <conversion1> <conversion2> <conversion3>
425
426
427 Cl Clo <Clo>            # []          roll mom coef for all angles=0    uiuc_aircraft.h
428 Cl Cl_beta <Cl_beta>    # [/rad]      d(Cl)/d(beta)                     uiuc_aircraft.h
429 Cl Cl_betafCL           # [/rad]      Cl_beta(CL) equation              uiuc_aircraft.h
430 Cl Cl_p <Cl_p>          # [/rad]      d(Cl)/d(p)                        uiuc_aircraft.h
431 Cl Cl_r <Cl_r>          # [/rad]      d(Cl)/d(r)                        uiuc_aircraft.h
432 Cl Cl_rfCL              # [/rad]      Cl_r(CL) equation                 uiuc_aircraft.h
433 Cl Cl_da <Cl_da>        # [/rad]      d(Cl)/d(delta_a)                  uiuc_aircraft.h
434 Cl Cl_dr <Cl_dr>        # [/rad]      d(Cl)/d(delta_r)                  uiuc_aircraft.h
435 Cl Clfada               # []          Cl(alpha,delta_a), equation       uiuc_aircraft.h
436
437 # Cl(alpha,delta_a), conversion for Cl, for alpha, for delta_a      []  uiuc_aircraft.h
438 Cl Clfada <CYfada.dat> <conversion1> <conversion2> <conversion3>
439
440 # Cl(beta,delta_r), conversion for Cl, for beta, for delta_r        []  uiuc_aircraft.h
441 Cl Clfbetadr <CYfbetadr.dat> <conversion1> <conversion2> <conversion3>
442
443
444 Cn Cno <Cno>            # []          yaw mom coef for all angles=0     uiuc_aircraft.h
445 Cn Cn_beta <Cn_beta>    # [/rad]      d(Cn)/d(beta)                     uiuc_aircraft.h
446 Cn Cn_betafCL           # [/rad]      Cn_beta(CL) equation              uiuc_aircraft.h
447 Cn Cn_p <Cn_p>          # [/rad]      d(Cn)/d(p)                        uiuc_aircraft.h
448 Cn Cn_pfCL              # [/rad]      Cn_p(CL) equation                 uiuc_aircraft.h
449 Cn Cn_r <Cn_r>          # [/rad]      d(Cn)/d(r)                        uiuc_aircraft.h
450 Cn Cn_rfCL              # [/rad]      Cn_r(CL) equation                 uiuc_aircraft.h
451 Cn Cn_da <Cn_da>        # [/rad]      d(Cn)/d(da)                       uiuc_aircraft.h
452 Cn Cn_dr <Cn_dr>        # [/rad]      d(Cn)/d(dr)                       uiuc_aircraft.h
453 Cn Cn_drfCL             # [/rad]      Cn_dr(CL) equation                uiuc_aircraft.h
454
455 # Cn(alpha,delta_a), conversion for Cn, for alpha, for delta_a      []  uiuc_aircraft.h
456 Cn Cnfada <Cnfada.dat> <conversion1> <conversion2> <conversion3>
457
458 # Cn(beta,delta_r), conversion for Cn, for beta, for delta_r        []  uiuc_aircraft.h
459 Cn Cnfbetadr <Cnfbetadr.dat> <conversion1> <conversion2> <conversion3>
460
461 =============================CONVERSION CODES================================
462
463 To calculate the aero forces, angles (eg, alfa, beta, elevator deflection, etc)
464 must be in radians.  To convert input data in degree to radian, use a
465 conversion code of 1.  To use no conversion, use a conversion code of 0.
466
467 ------------------------------------------------
468 conversion1
469 conversion2
470 conversion3   Action
471 ------------------------------------------------
472   0           no conversion (multiply by 1)
473   1           convert degrees to radians
474 =============================================================================
475
476 |gear kgear <kgear>     # []          gear spring constant(s)           uiuc_aircraft.h
477 |gear muRoll <muRoll>   # []          gear rolling friction coef(s)     uiuc_aircraft.h
478 |gear cgear <cgear>     # []          gear damping constant(s)          uiuc_aircraft.h
479 |gear strutLength <sL>  # [ft]        gear strut length                 uiuc_aircraft.h
480
481 ice iceTime <iceTime>   # [s]         time when icing begins            uiuc_aircraft.h
482 ice transientTime <tT>  # [s]         period for eta to reach eta_final uiuc_aircraft.h
483 ice eta_final <eta_f>   # []          icing severity factor             uiuc_aircraft.h
484 ice kCDo <kCDo>         # []          icing constant for CDo            uiuc_aircraft.h
485 ice kCDK <kCDo>         # []          icing constant for CDK            uiuc_aircraft.h
486 ice kCD_a <kCD_a>       # []          icing constant for CD_a           uiuc_aircraft.h
487 |ice kCD_q <kCD_q>      # []          icing constant for CD_q           uiuc_aircraft.h
488 ice kCD_de <kCD_de>     # []          icing constant for CD_de          uiuc_aircraft.h
489 |ice kCD_dr <kCD_dr>    # []          icing constant for CD_dr          uiuc_aircraft.h
490 |ice kCD_df <kCD_df>    # []          icing constant for CD_df          uiuc_aircraft.h
491 |ice kCD_adf <kCD_adf>  # []          icing constant for CD_adf         uiuc_aircraft.h
492 ice kCLo <kCLo>         # []          icing constant for CLo            uiuc_aircraft.h
493 ice kCL_a <kCL_a>       # []          icing constant for CL_a           uiuc_aircraft.h
494 ice kCL_adot <kCL_adot> # []          icing constant for CL_adot        uiuc_aircraft.h
495 ice kCL_q <kCL_q>       # []          icing constant for CL_q           uiuc_aircraft.h
496 ice kCL_de <kCL_de>     # []          icing constant for CL_de          uiuc_aircraft.h
497 |ice kCL_df <kCL_df>    # []          icing constant for CL_df          uiuc_aircraft.h
498 |ice kCL_adf <kCL_adf>  # []          icing constant for CL_adf         uiuc_aircraft.h
499 ice kCmo <kCmo>         # []          icing constant for Cmo            uiuc_aircraft.h
500 ice kCm_a <kCm_a>       # []          icing constant for Cm_a           uiuc_aircraft.h
501 ice kCm_adot <kCm_adot> # []          icing constant for Cm_adot        uiuc_aircraft.h
502 ice kCm_q <kCm_q>       # []          icing constant for Cm_q           uiuc_aircraft.h
503 |ice kCm_r <kCm_r>      # []          icing constant for Cm_r           uiuc_aircraft.h
504 ice kCm_de <kCm_de>     # []          icing constant for Cm_de          uiuc_aircraft.h
505 |ice kCm_df <kCm_df>    # []          icing constant for Cm_df          uiuc_aircraft.h
506 ice kCYo <kCYo>         # []          icing constant for CYo            uiuc_aircraft.h
507 ice kCY_beta <kCy_beta> # []          icing constant for CY_beta        uiuc_aircraft.h
508 ice kCY_p <kCY_p>       # []          icing constant for CY_p           uiuc_aircraft.h
509 ice kCY_r <kCY_r>       # []          icing constant for CY_r           uiuc_aircraft.h
510 ice kCY_da <kCY_da>     # []          icing constant for CY_da          uiuc_aircraft.h
511 ice kCY_dr <kCY_dr>     # []          icing constant for CY_dr          uiuc_aircraft.h
512 ice kClo <kClo>         # []          icing constant for Clo            uiuc_aircraft.h
513 ice kCl_beta <kCl_beta> # []          icing constant for Cl_beta        uiuc_aircraft.h
514 ice kCl_p <kCl_p>       # []          icing constant for Cl_p           uiuc_aircraft.h
515 ice kCl_r <kCl_r>       # []          icing constant for Cl_r           uiuc_aircraft.h
516 ice kCl_da <kCl_da>     # []          icing constant for Cl_da          uiuc_aircraft.h
517 ice kCl_dr <kCl_dr>     # []          icing constant for Cl_dr          uiuc_aircraft.h
518 ice kCno <kCno>         # []          icing constant for Cno            uiuc_aircraft.h
519 ice kCn_beta <kCn_beta> # []          icing constant for Cn_beta        uiuc_aircraft.h
520 ice kCn_p <kCn_p>       # []          icing constant for Cn_p           uiuc_aircraft.h
521 ice kCn_r <kCn_r>       # []          icing constant for Cn_r           uiuc_aircraft.h
522 ice kCn_da <kCn_da>     # []          icing constant for Cn_da          uiuc_aircraft.h
523 ice kCn_dr <kCn_dr>     # []          icing constant for Cn_dr          uiuc_aircraft.h
524
525 record Dx_pilot               # [ft]      x-location                    ls_generic.h
526 record Dy_pilot               # [ft]      y-loaction                    ls_generic.h
527 record Dz_pilot               # [ft]      z-location                    ls_generic.h
528 record Dx_cg                  # [ft]      cg x_location                 ls_generic.h
529 record Dy_cg                  # [ft]      cg y_location                 ls_generic.h
530 record Dz_cg                  # [ft]      cg z_location                 ls_generic.h
531 record V_north                # [ft/s]    x-velocity                    ls_generic.h
532 record V_east                 # [ft/s]    y-velocity                    ls_generic.h
533 record V_down                 # [ft/s]    z-velocity                    ls_generic.h
534 record V_rel_wind             # [ft/s]    total velocity                ls_generic.h
535 record Dynamic_pressure       # [lb/ft^2] dynamic pressure              ls_generic.h
536 record Alpha                  # [rad]     angle of attack               ls_generic.h
537 record Alpha_dot              # [rad/s]   rate of change of alpha       ls_generic.h
538 record Beta                   # [rad]     sideslip angle                ls_generic.h
539 record Beta_dot               # [rad/s]   rate of change of beta        ls_generic.h
540 record Gamma                  # [rad]     flight path angle             ls_generic.h
541 record P_body                 # [rad]     roll rate                     ls_generic.h
542 record Q_body                 # [rad]     pitch rate                    ls_generic.h
543 record R_body                 # [rad]     yaw rate                      ls_generic.h
544 record Phi                    # [rad]     bank angle                    ls_generic.h
545 record Theta                  # [rad]     pitch attitude angle          ls_generic.h
546 record Theta_dot              # [rad]     rate change of theta          ls_generic.h
547 record Psi                    # [rad]     heading angle                 ls_generic.h
548 |record long_trim                                                       
549 |record trim_inc                                                        
550 record Density                # [slug/ft^3] air density                 ls_generic.h
551 record Mass                   # [slug]    aircraft mass                 ls_generic.h
552 record Simtime                # [s]       current sim time              global
553 record dt                     # [s]       current time step             global
554 record Long_control           # []        pitch input                   ls_cockpit.h
555 record Lat_control            # []        roll input                    ls_cockpit.h
556 record Rudder_pedal           # []        yaw input                     ls_cockpit.h
557 |record Throttle_pct          # [%]       throttle input                ls_cockpit.h
558 record elevator               # [rad]     elevator deflection           uiuc_aircraft.h
559 record aileron                # [rad]     aileron deflection            uiuc_aircraft.h
560 record rudder                 # [rad]     rudder deflection             uiuc_aircraft.h
561 |record Throttle[3]           # [%]       throttle deflection           ls_cockpit.h
562 record CDfaI                  # []        CD(alpha)                     uiuc_aircraft.h
563 record CDfadeI                # []        CD(alpha,delta_e)             uiuc_aircraft.h
564 record CD                     # []        drag coefficient              uiuc_aircraft.h
565 record CLfaI                  # []        CL(alpha)                     uiuc_aircraft.h
566 record CLfadeI                # []        CL(alpha,delta_e)             uiuc_aircraft.h
567 record CL                     # []        lift coefficient              uiuc_aircraft.h
568 record CmfadeI                # []        Cm(alpha,delta_e)             uiuc_aircraft.h
569 record Cm                     # []        pitch moment coefficient      uiuc_aircraft.h
570 record CYfadaI                # []        CY(alpha,delta_a)             uiuc_aircraft.h
571 record CYfbetadrI             # []        CY(beta,delta_r)              uiuc_aircraft.h
572 record CY                     # []        side-force coefficient        uiuc_aircraft.h
573 record ClfadaI                # []        Cl(alpha,delta_a)             uiuc_aircraft.h
574 record ClfbetadrI             # []        Cl(beta,delta_r)              uiuc_aircraft.h
575 record Cl                     # []        roll moment coefficient       uiuc_aircraft.h
576 record CnfadaI                # []        Cn(alpha,delta_a)             uiuc_aircraft.h
577 record CnfbetadrI             # []        Cn(beta,delta_r)              uiuc_aircraft.h
578 record Cn                     # []        yaw moment coefficient        uiuc_aircraft.h
579 record F_X_wind               # [lb]      aero x-force in wind-axes     ls_generic.h
580 record F_Y_wind               # [lb]      aero y-force in wind-axes     ls_generic.h
581 record F_Z_wind               # [lb]      aero z-force in wind-axes     ls_generic.h
582 record F_X_aero               # [lb]      aero x-force in body-axes     ls_generic.h
583 record F_Y_aero               # [lb]      aero y-force in body-axes     ls_generic.h
584 record F_Z_aero               # [lb]      aero z-force in body-axes     ls_generic.h
585 record F_X_engine             # [lb]      prop x-force in body-axes     ls_generic.h
586 record F_Y_engine             # [lb]      prop y-force in body-axes     ls_generic.h
587 record F_Z_engine             # [lb]      prop z-force in body-axes     ls_generic.h
588 record F_X_gear               # [lb]      gear x-force in body-axes     ls_generic.h
589 record F_Y_gear               # [lb]      gear y-force in body-axes     ls_generic.h
590 record F_Z_gear               # [lb]      gear z-force in body-axes     ls_generic.h
591 record F_X                    # [lb]      total x-force in body-axes    ls_generic.h
592 record F_Y                    # [lb]      total y-force in body-axes    ls_generic.h
593 record F_Z                    # [lb]      total z-force in body-axes    ls_generic.h
594 record M_l_aero               # [ft-lb]   aero roll mom in body axes    ls_generic.h
595 record M_m_aero               # [ft-lb]   aero pitch mom in body axes   ls_generic.h
596 record M_n_aero               # [ft-lb]   aero yaw mom in body axes     ls_generic.h
597 record M_l_engine             # [ft-lb]   prop roll mom in body axes    ls_generic.h
598 record M_m_engine             # [ft-lb]   prop pitch mom in body axes   ls_generic.h
599 record M_n_engine             # [ft-lb]   prop yaw mom in body axes     ls_generic.h
600 record M_l_gear               # [ft-lb]   gear roll mom in body axes    ls_generic.h
601 record M_m_gear               # [ft-lb]   gear pitch mom in body axes   ls_generic.h
602 record M_n_gear               # [ft-lb]   gear yaw mom in body axes     ls_generic.h
603 record M_l_rp                 # [ft-lb]   total roll mom in body axes   ls_generic.h
604 record M_m_rp                 # [ft-lb]   total pitch mom in body axes  ls_generic.h
605 record M_n_rp                 # [ft-lb]   total yaw mom in body axes    ls_generic.h
606
607 **********************************************************************
608
609 **********************************************************************
610 V. Mandatory Input:
611
612 The following data is required for the simulator to function;
613 otherwise either the UIUC Aero Model or LaRCsim parts of the code will
614 probably crash.
615
616 1) initial aircraft state  (LaRCsim)
617 Dx_pilot   x-location                    [ft]
618 Dy_pilot   y-location                    [ft]
619 Dz_pilot   z-location                    [ft]
620
621 (items below causing conflict with Flight Gear)
622 |V_north   x-velocity                    [ft/s]
623 |V_east    y-velocity                    [ft/s]
624 |V_down    z-velocity                    [ft/s]
625
626 P_body     roll rate                     [rad/s]
627 Q_body     pitch rate                    [rad/s]
628 R_body     yaw rate                      [rad/s]
629 Phi        bank angle                    [rad]
630 Theta      pitch attitude angle          [rad]
631 Psi        heading angle                 [rad]
632
633 2) aircraft geometry   (UIUC Aero Model)
634 bw        wingspan                       [ft]
635 cbar      mean aerodynamic chord         [ft]
636 Sw        wing planform area             [ft^2]
637
638 3) engine properties   (UIUC Engine Model)
639 (some engine model must be specified, such as...)
640 engine simpleSingle
641           <or>
642 engine c172
643
644 4) mass variables   (LaRCsim)
645 Mass      aircraft mass                  [slug]
646 I_xx      roll inertia                   [slug-ft^2]
647 I_yy      pitch inertia                  [slug-ft^2]
648 I_zz      yaw inertia                    [slug-ft^2]
649 I_xz      lateral cross inertia          [slug-ft^2]
650
651 5) aerodynamic force/moment components   (Aero Model)
652 CLo       lift coef for all angles = 0   []
653 CL_a      lift curve slope, d(CL)/d(alpha) [/rad]
654 CDo       drag coef for all angles = 0   []
655 CDK       constant, as in CD=CDo+K*CL^2  []
656           <or>
657 CD_a      d(CD)/d(alpha)                 [/rad]
658 Cmo       pitch mom coef for all angles=0 []
659 Cm_a      d(Cm)/d(alpha)                 [/rad]
660 CY_beta   d(CY)/d(beta)                  [/rad]
661 Cl_beta   d(Cl)/d(beta)                  [/rad]
662 Cn_beta   d(Cn)/d(beta)                  [/rad]
663
664 7) gear properties   (none yet)
665
666 With the current version, the C172 model gear model is used for *ALL*
667 aircraft.  This can produce some interesting effects with heavy
668 aircraft (eg, Convair model), and light aircraft (eg, Pioneer UAV)
669
670 **********************************************************************