--- /dev/null
+************************************************
+* *
+* FGFS Reconfigurable Aircraft Flight Model *
+* Input File Documentation *
+* Version 0.63, March 17, 2000 *
+* *
+* Authors: *
+* Jeff Scott (jscott@uiuc.edu) *
+* Bipin Sehgal (bsehgal@uiuc.edu) *
+* Michael Selig (m-selig@uiuc.edu) *
+* Dept of Aero and Astro Engineering *
+* University of Illinois at Urbana-Champaign *
+* Urbana, IL *
+* http://amber.aae.uiuc.edu/~m-selig *
+* *
+************************************************
+
+
+**********************************************************************
+This documentation includes:
+ - Required and optional input lines.
+ - Input line formats and conventions.
+
+Viewing this file in emacs makefile-mode with color makes this file
+easier to read.
+**********************************************************************
+
+**********************************************************************
+I. Conventions and Notations and Reading this Document:
+
+ # ... Comments
+ | Input line not yet implemented
+ | Optional data
+ | Sometimes indicates a feature not yet used,
+ but proposed convention is indicated nevertheless.
+ || Input line disabled
+ || Option disabled
+ ... Repeat similar data
+ -> Continue onto next line
+**********************************************************************
+
+**********************************************************************
+II. General Input Line Format:
+
+Examples input lines include
+
+Cm Cmo 0.194 # [] Bray pg 33
+Cm Cm_a -2.12 # [/rad] Bray pg 33
+CL CLfa CLfa.dat # [] Bray pg 50, Table 4.7
+
+These follow the more general input line form
+
+keyword variableName <value -or- file> | ->
+ <value -or- file> # [units] <data source>
+
+Each term of the input line will be discussed in turn.
+
+(1) KEYWORDS
+============
+
+There currently exist 15 types of variable keywords:
+
+init Initial values for equation of motion
+geometry Aircraft-specific geometric quantities
+controlSurface Control surface deflections and properties
+|controlsMixer Control surface mixer options
+mass Aircraft-specific mass properties
+engine Propulsion data
+CD Aerodynamic x-force quantities (longitudinal)
+CL Aerodynamic z-force quantities (longitudinal)
+Cm Aerodynamic m-moment quantities (longitudinal)
+CY Aerodynamic y-force quantities (lateral)
+Cl Aerodynamic l-moment quantities (lateral)
+Cn Aerodynamic n-moment quantities (lateral)
+|gear Landing gear model quantities
+ice Aircraft icing model parameters
+record Record desired quantities to the file: uiuc_record.dat
+
+As each line of the input file is read, the code recognizes the
+keyword, enters the appropriate switch statement in the code, and
+proceeds to read the next term in the input line.
+
+(2) VARIABLE NAMES
+==================
+
+The variable name indicates the form of the variable itself. This
+form may be a constant, a stability derivative (a specific form of a
+constant), or a variable-dimensional lookup table. More variable
+types can be easily prescribed by defining a new convention. The
+variable name may also indicate that the quantity is to be calculated
+from a hard-coded equation or set of equations provided at an
+appropriate location within the code.
+
+If the parameter name denotes a constant, a numerical value will
+follow the variable name. If a lookup table, the name of the table
+containing the data will follow.
+
+More than one value or file name can be specified if the code is
+intended to read in multiple pieces of data when implementing the
+particular switch in question (see also OPTIONAL data, section (3)).
+
+The conventions used for naming the variables are provided below.
+Several of these variable names are not currently used.
+
+1) variable class
+_ denotes stability derivative to be multiple by something
+f "function of" (indicates an m*n matrix data table is given)
+
+2) timing data (global simulator variables)
+Simtime current simulator time [s]
+dt current simulator time step [s]
+
+3) aircraft state variables
+Dx_pilot x-location [ft]
+Dy_pilot y-location [ft]
+Dz_pilot z-location [ft]
+Dx_cg center of gravity x-location [ft]
+Dy_cg center of gravity y-location [ft]
+Dz_cg center of gravity z-location [ft]
+V_north x-velocity [ft/s]
+V_east y-velocity [ft/s]
+V_down z-velocity [ft/s]
+V_rel_wind total velocity [ft/s]
+Dynamic_pressure dynamic pressure [lb/ft^2]
+Alpha angle of attack [rad]
+Alpha_dot rate of change of alpha [rad/s]
+Beta sideslip angle [rad]
+Beta_dot rate of change of beta [rad]
+Gamma flight path angle [rad]
+P_body roll rate [rad/s]
+Q_body pitch rate [rad/s]
+R_body yaw rate [rad/s]
+Phi bank angle [rad]
+Theta pitch attitude angle [rad]
+Theta_dot rate change of theta [rad/s]
+Psi heading angle [rad]
+|long_trim
+|trim_inc
+M Mach number []
+Re Reynolds number []
+
+4) atmosphere properties
+Density air density [slug/ft^3]
+
+5) geometric variables
+bw wingspan [ft]
+cbar mean aerodynamic chord [ft]
+Sw wing planform area [ft^2]
+iw wing incidence angle [deg]
+bc canard span [ft]
+cc canard (mean) chord [ft]
+Sc canard area [ft^2]
+ic canard incidence angle [deg]
+bh horizontal tail span [ft]
+ch horizontal tail (mean) chord [ft]
+Sh horizontal tail area [ft^2]
+ih horizontal tail incidence angle [deg]
+bv vertical tail span (height) [ft]
+cv vertical tail (mean) chord [ft]
+iv vertical tail incidence angle [deg]
+Sv vertical tail area [ft^2]
+
+6) control surface properties
+Sa aileron area [ft^2]
+Se elevator area [ft^2]
+Sf flap area [ft^2]
+Sr rudder area [ft^2]
+Lat_control roll control input [?]
+Long_control pitch control input [?]
+Rudder_pedal yaw control input [?]
+aileron aileron deflection [rad]
+elevator elevator deflection [rad]
+rudder rudder deflection [rad]
+|flap flap deflection [rad]
+
+7) mass variables
+|Weight gross takeoff weight [lb]
+Mass aircraft mass (used by LaRC) [slug]
+I_xx roll inertia [slug-ft^2]
+I_yy pitch inertia [slug-ft^2]
+I_zz yaw inertia [slug-ft^2]
+I_xz lateral cross inertia [slug-ft^2]
+
+8) engine/propulsion variables
+|thrust thrust [lb]
+simpleSingle simple single engine max thrust [lb]
+|Throttle_pct throttle input [] # ie, this is the stick
+|Throttle[3] throttle deflection [%] # this is what gets used to determine thrust
+
+9) force/moment coefficients
+CD coefficient of drag []
+CY coefficient of side-force []
+CL coefficient of lift []
+Cl coefficient of roll moment []
+Cm coefficient of pitching moment []
+Cn coefficient of yaw moment []
+|CT coefficient of thrust []
+
+10) total forces/moments
+F_X_wind aerodynamic x-force in wind-axes [lb]
+F_Y_wind aerodynamic y-force in wind-axes [lb]
+F_Z_wind aerodynamic z-force in wind-axes [lb]
+F_X_aero aerodynamic x-force in body-axes [lb]
+F_Y_aero aerodynamic y-force in body-axes [lb]
+F_Z_aero aerodynamic z-force in body-axes [lb]
+F_X_engine propulsion x-force in body axes [lb]
+F_Y_engine propulsion y-force in body axes [lb]
+F_Z_engine propulsion z-force in body axes [lb]
+F_X_gear gear x-force in body axes [lb]
+F_Y_gear gear y-force in body axes [lb]
+F_Z_gear gear z-force in body axes [lb]
+F_X total x-force [lb]
+F_Y total y-force [lb]
+F_Z total z-force [lb]
+M_l_aero aero roll-moment in body-axes [ft-lb]
+M_m_aero aero pitch-moment in body-axes [ft-lb]
+M_n_aero aero yaw-moment in body-axes [ft-lb]
+M_l_engine prop roll-moment in body axes [ft-lb]
+M_m_engine prop pitch-moment in body axes [ft-lb]
+M_n_engine prop yaw-moment in body axes [ft-lb]
+M_l_gear gear roll-moment in body axes [ft-lb]
+M_m_gear gear pitch-moment in body axes [ft-lb]
+M_n_gear gear yaw-moment in body axes [ft-lb]
+M_l_rp total roll-moment [ft-lb]
+M_m_rp total pitch-moment [ft-lb]
+M_n_rp total yaw-moment [ft-lb]
+
+11) landing gear properties
+|cgear gear damping constant [?]
+|kgear gear spring constant [?]
+|muGear gear rolling friction coef [?]
+|strutLength gear strut length [ft]
+
+12) icing model paramters
+iceTime time when icing begins [s]
+transientTime time period over which eta increases to final [s]
+eta_final icing severity factor at end of transient time [-]
+kCA icing constants for associated aero coef. [-] (see IV)
+
+13) subscripts
+o value for all angles = 0 (alfa, beta, etc)
+a angle of attack
+adot rate change in angle alpha
+beta sideslip angle
+|betadot rate change in beta
+p roll rate
+q pitch rate
+r yaw rate
+|pdot rate change in p
+|qdot rate change in q
+|rdot rate change in r
+|udot rate change in x-velocity
+da aileron deflection
+de elevator deflection
+dr rudder deflection
+df flap deflection
+|df2 flap deflection for second set
+|df3 flap deflection for third set
+max maximum
+min minimum
+
+(3) | (OPTIONAL DATA)
+=====================
+
+An input line may also be used to provide optional data that
+will be used if provided but is not necessary for the code to
+operate. As with the variable data described in section (2), multiple
+values or data files may be provided if the code is written to use
+them.
+
+(4) # (COMMENTS)
+================
+
+Appended comments should be provided with each input line to indicate
+units on the variable in question and to indicate the source the data
+was drawn from.
+**********************************************************************
+
+**********************************************************************
+III. Sample Input Lines:
+
+CONSTANTS
+=========
+
+geometry bw <value> # geometric parameter, wingspan
+Cm Cm_a <value> # stability derivative, d(Cm)/d(alpha)
+controlSurface de <value> <value> # max and min elevator deflections
+
+LOOKUP TABLES
+=============
+
+CD CDfCL <file.dat> # CD(CL), drag polar data file
+Cm Cmfade <file.dat> # Cm(alpha,delta_e), moment data file
+
+HARD-CODED EQUATION
+===================
+
+CD CDfCL # CD(CL), drag calculated in code based on CL
+
+**********************************************************************
+
+**********************************************************************
+IV. Definitions of Input Lines Currently Available:
+
+Of all the possible permutation of variable names described above in
+section II, only some are currently implemented in the code. These
+are described below. Comments, denoted by '#,' are used to define the
+lines and to indicate examples of the data if additional clarity is
+needed for unique situations. Again, those lines beginning with '|'
+are not currently implemented in the code, but indicate planned
+conventions in later versions.
+
+# Key Variable Data Units Description Where Defined
+#------------------------------------------------------------------------------------
+
+init Dx_pilot <Dx_pilot> # [ft] initial x-position ls_generic.h
+init Dy_pilot <Dy_pilot> # [ft] initial y-position ls_generic.h
+init Dz_pilot <Dz_pilot> # [ft] initial z-position ls_generic.h
+init Dx_cg <Dx_cg> # [ft] initial cg x_location ls_generic.h
+init Dy_cg <Dy_cg> # [ft] initial cg y_location ls_generic.h
+init Dz_cg <Dz_cg> # [ft] initial cg z_location ls_generic.h
+|init V_north <V_north> # [ft/s] initial x-velocity ls_generic.h
+|init V_east <V_east> # [ft/s] initial y-velocity ls_generic.h
+|init V_down <V_down> # [ft/s] initial z-velocity ls_generic.h
+init P_body <P_body> # [rad/s] initial roll rate ls_generic.h
+init Q_body <Q_body> # [rad/s] initial pitch rate ls_generic.h
+init R_body <R_body> # [rad/s] initial yaw rate ls_generic.h
+init Phi <Phi> # [rad] initial bank angle ls_generic.h
+init Theta <Theta> # [rad] initial pitch attitude angle ls_generic.h
+init Psi <Psi> # [rad] initial heading angle ls_generic.h
+
+geometry bw <bw> # [ft] wingspan uiuc_aircraft.h
+geometry cbar <cbar> # [ft] wing mean aero chord uiuc_aircraft.h
+geometry Sw <Sw> # [ft^2] wing reference area uiuc_aircraft.h
+|geometry iw <iw> # [deg] wing incidence angle uiuc_aircraft.h
+|geometry bc <bc> # [ft] canard span uiuc_aircraft.h
+|geometry cc <cc> # [ft] canard chord uiuc_aircraft.h
+|geometry Sc <Sc> # [sq-ft] canard area uiuc_aircraft.h
+|geometry ic <ic> # [deg] canard incidence angle uiuc_aircraft.h
+|geometry bh <bh> # [ft] horizontal tail span uiuc_aircraft.h
+|geometry ch <ch> # [ft] horizontal tail chord uiuc_aircraft.h
+|geometry Sh <Sh> # [sq-ft] horizontal tail area uiuc_aircraft.h
+|geometry ih <ih> # [deg] horiz tail incidence angle uiuc_aircraft.h
+|geometry bv <bv> # [ft] vertical tail span uiuc_aircraft.h
+|geometry cv <cv> # [ft] vertical tail chord uiuc_aircraft.h
+|geometry Sv <Sv> # [sq-ft] vertical tail area uiuc_aircraft.h
+|geometry iv <iv> # [deg] vert tail incidence angle uiuc_aircraft.h
+
+|controlSurface Se <Se> # [ft^2] elevator area uiuc_aircraft.h
+|controlSurface Sa <Sa> # [ft^2] aileron area uiuc_aircraft.h
+|controlSurface Sr <Sr> # [ft^2] rudder area uiuc_aircraft.h
+|controlSurface Sf <Sf> # [ft^2] flap area uiuc_aircraft.h
+controlSurface de <demax> <demin> # [deg] max/min elev deflections uiuc_aircraft.h
+controlSurface da <damax> <damin> # [deg] max/min ail deflections uiuc_aircraft.h
+controlSurface dr <drmax> <drmin> # [deg] max/min rud deflections uiuc_aircraft.h
+|controlSurface df <dfmax> <dfmin> # [deg] max/min flap deflections uiuc_aircraft.h
+# Note: Currently demin is not used in the code, and the max/min is +-demax.
+
+
+|controlsMixer nomix <?> # [] no controls mixing uiuc_aircraft.h
+
+|mass Weight <Weight> # [lb] gross takeoff weight (not used)
+mass Mass <Mass> # [slug] gross takeoff mass ls_generic.h
+mass I_xx <I_xx> # [slug-ft^2] roll inertia ls_generic.h
+mass I_yy <I_yy> # [slug-ft^2] pitch inertia ls_generic.h
+mass I_zz <I_zz> # [slug-ft^2] yaw inertia ls_generic.h
+mass I_xz <I_xz> # [slug-ft^2] lateral cross inertia ls_generic.h
+
+|engine thrust <thrustMax> <thrustMin> # [lb] max/min engine thrust uiuc_aircraft.h
+engine simpleSingle <sSMaxThrust> # [lb] simple single engine uiuc_aircraft.h
+engine c172 # use Cessna 172 engine model of Tony Peden
+
+CL CLo <CLo> # [] lift coef for all angles = 0 uiuc_aircraft.h
+CL CL_a <CL_a> # [/rad] lift curve slope, d(CL)/d(alpha) uiuc_aircraft.h
+CL CL_adot <CL_adot> # [/rad] d(CL)/d(alpha)/da(time) uiuc_aircraft.h
+CL CL_q <CL_q> # [/rad] d(CL)/delta(q) uiuc_aircraft.h
+CL CL_de <CL_de> # [/rad] d(CL)/d(de) uiuc_aircraft.h
+
+# CL(alpha), conversion for CL, for alpha [] uiuc_aircraft.h
+CL CLfa <CLfa.dat> <conversion1> <conversion2>
+
+# CL(alpha,delta_e), conversion for CL, for alpha, for delta_e [] uiuc_aircraft.h
+CL CLfade <CLfade.dat> <conversion1> <conversion2> <conversion3>
+
+|CL CLfCT <CLfCT.dat> # CL(thrust coef) uiuc_aircraft.h
+|CL CLfRe # CL(Reynolds #), equation uiuc_aircraft.h
+|CL CL_afaM <CL_afaM.dat> # CL_alpha(alpha,Mach #) uiuc_aircraft.h
+# there are examples that might later be included in the code
+
+# note that CD terms must come after CL for induced drag to be computed
+CD CDo <CDo> # [] drag coef for all angles = 0 uiuc_aircraft.h
+CD CDK <CDK> # [] constant, as in CD=CDo+K*CL^2 uiuc_aircraft.h
+CD CD_a <CD_a> # [/rad] d(CD)/d(alpha) uiuc_aircraft.h
+CD CD_de <CD_de> # [/rad] d(CD)/d(delta_e) uiuc_aircraft.h
+
+# CD(alpha), conversion for CD, for alpha [] uiuc_aircraft.h
+CD CDfa <CDfa.dat> <conversion1> <conversion2>
+
+# CD(alpha,delta_e), conversion for CD, for alpha, for delta_e [] uiuc_aircraft.h
+CD CDfade <CDfade.dat> <conversion1> <conversion2> <conversion3>
+
+
+Cm Cmo <Cmo> # [] pitch mom coef for all angles=0 uiuc_aircraft.h
+Cm Cm_a <Cm_a> # [/rad] d(Cm)/d(alpha) uiuc_aircraft.h
+Cm Cm_adot <Cm_adot> # [/rad] d(Cm)/d(alpha)/d(time) uiuc_aircraft.h
+Cm Cm_q <Cm_q> # [/rad] d(Cm)/d(q) uiuc_aircraft.h
+Cm Cm_de <Cm_de> # [/rad] d(Cm)/d(de) uiuc_aircraft.h
+|Cm Cmfa <Cmfa.dat> # [] Cm(alpha) uiuc_aircraft.h
+Cm Cmfade <Cmfade.dat> # [] Cm(alpha,delta_e) uiuc_aircraft.h
+# Cm(alpha,delta_e), conversion for Cm, for alpha, for delta_e [] uiuc_aircraft.h
+Cm Cmfade <Cmfade.dat> <conversion1> <conversion2> <conversion3>
+
+CY CYo <CYo> # [] side-force coef for all angles=0 uiuc_aircraft.h
+CY CY_beta <CY_beta> # [/rad] d(CY)/d(beta) uiuc_aircraft.h
+CY CY_p <CY_p> # [/rad] d(CY)/d(p) uiuc_aircraft.h
+CY CY_r <CY_r> # [/rad] d(CY)/d(r) uiuc_aircraft.h
+CY CY_da <CY_da> # [/rad] d(CY)/d(delta_a) uiuc_aircraft.h
+CY CY_dr <CY_dr> # [/rad] d(CY)/d(delta_r) uiuc_aircraft.h
+
+# CY(alpha,delta_a), conversion for CY, for alpha, for delta_a [] uiuc_aircraft.h
+CY CYfada <CYfada.dat> <conversion1> <conversion2> <conversion3>
+
+# CY(beta,delta_r), conversion for CY, for beta, for delta_r [] uiuc_aircraft.h
+CY CYfbetadr <CYfbetadr.dat> <conversion1> <conversion2> <conversion3>
+
+
+Cl Clo <Clo> # [] roll mom coef for all angles=0 uiuc_aircraft.h
+Cl Cl_beta <Cl_beta> # [/rad] d(Cl)/d(beta) uiuc_aircraft.h
+Cl Cl_betafCL # [/rad] Cl_beta(CL) equation uiuc_aircraft.h
+Cl Cl_p <Cl_p> # [/rad] d(Cl)/d(p) uiuc_aircraft.h
+Cl Cl_r <Cl_r> # [/rad] d(Cl)/d(r) uiuc_aircraft.h
+Cl Cl_rfCL # [/rad] Cl_r(CL) equation uiuc_aircraft.h
+Cl Cl_da <Cl_da> # [/rad] d(Cl)/d(delta_a) uiuc_aircraft.h
+Cl Cl_dr <Cl_dr> # [/rad] d(Cl)/d(delta_r) uiuc_aircraft.h
+Cl Clfada # [] Cl(alpha,delta_a), equation uiuc_aircraft.h
+
+# Cl(alpha,delta_a), conversion for Cl, for alpha, for delta_a [] uiuc_aircraft.h
+Cl Clfada <CYfada.dat> <conversion1> <conversion2> <conversion3>
+
+# Cl(beta,delta_r), conversion for Cl, for beta, for delta_r [] uiuc_aircraft.h
+Cl Clfbetadr <CYfbetadr.dat> <conversion1> <conversion2> <conversion3>
+
+
+Cn Cno <Cno> # [] yaw mom coef for all angles=0 uiuc_aircraft.h
+Cn Cn_beta <Cn_beta> # [/rad] d(Cn)/d(beta) uiuc_aircraft.h
+Cn Cn_betafCL # [/rad] Cn_beta(CL) equation uiuc_aircraft.h
+Cn Cn_p <Cn_p> # [/rad] d(Cn)/d(p) uiuc_aircraft.h
+Cn Cn_pfCL # [/rad] Cn_p(CL) equation uiuc_aircraft.h
+Cn Cn_r <Cn_r> # [/rad] d(Cn)/d(r) uiuc_aircraft.h
+Cn Cn_rfCL # [/rad] Cn_r(CL) equation uiuc_aircraft.h
+Cn Cn_da <Cn_da> # [/rad] d(Cn)/d(da) uiuc_aircraft.h
+Cn Cn_dr <Cn_dr> # [/rad] d(Cn)/d(dr) uiuc_aircraft.h
+Cn Cn_drfCL # [/rad] Cn_dr(CL) equation uiuc_aircraft.h
+
+# Cn(alpha,delta_a), conversion for Cn, for alpha, for delta_a [] uiuc_aircraft.h
+Cn Cnfada <Cnfada.dat> <conversion1> <conversion2> <conversion3>
+
+# Cn(beta,delta_r), conversion for Cn, for beta, for delta_r [] uiuc_aircraft.h
+Cn Cnfbetadr <Cnfbetadr.dat> <conversion1> <conversion2> <conversion3>
+
+=============================CONVERSION CODES================================
+
+To calculate the aero forces, angles (eg, alfa, beta, elevator deflection, etc)
+must be in radians. To convert input data in degree to radian, use a
+conversion code of 1. To use no conversion, use a conversion code of 0.
+
+------------------------------------------------
+conversion1
+conversion2
+conversion3 Action
+------------------------------------------------
+ 0 no conversion (multiply by 1)
+ 1 convert degrees to radians
+=============================================================================
+
+|gear kgear <kgear> # [] gear spring constant(s) uiuc_aircraft.h
+|gear muRoll <muRoll> # [] gear rolling friction coef(s) uiuc_aircraft.h
+|gear cgear <cgear> # [] gear damping constant(s) uiuc_aircraft.h
+|gear strutLength <sL> # [ft] gear strut length uiuc_aircraft.h
+
+ice iceTime <iceTime> # [s] time when icing begins uiuc_aircraft.h
+ice transientTime <tT> # [s] period for eta to reach eta_final uiuc_aircraft.h
+ice eta_final <eta_f> # [] icing severity factor uiuc_aircraft.h
+ice kCDo <kCDo> # [] icing constant for CDo uiuc_aircraft.h
+ice kCDK <kCDo> # [] icing constant for CDK uiuc_aircraft.h
+ice kCD_a <kCD_a> # [] icing constant for CD_a uiuc_aircraft.h
+|ice kCD_q <kCD_q> # [] icing constant for CD_q uiuc_aircraft.h
+ice kCD_de <kCD_de> # [] icing constant for CD_de uiuc_aircraft.h
+|ice kCD_dr <kCD_dr> # [] icing constant for CD_dr uiuc_aircraft.h
+|ice kCD_df <kCD_df> # [] icing constant for CD_df uiuc_aircraft.h
+|ice kCD_adf <kCD_adf> # [] icing constant for CD_adf uiuc_aircraft.h
+ice kCLo <kCLo> # [] icing constant for CLo uiuc_aircraft.h
+ice kCL_a <kCL_a> # [] icing constant for CL_a uiuc_aircraft.h
+ice kCL_adot <kCL_adot> # [] icing constant for CL_adot uiuc_aircraft.h
+ice kCL_q <kCL_q> # [] icing constant for CL_q uiuc_aircraft.h
+ice kCL_de <kCL_de> # [] icing constant for CL_de uiuc_aircraft.h
+|ice kCL_df <kCL_df> # [] icing constant for CL_df uiuc_aircraft.h
+|ice kCL_adf <kCL_adf> # [] icing constant for CL_adf uiuc_aircraft.h
+ice kCmo <kCmo> # [] icing constant for Cmo uiuc_aircraft.h
+ice kCm_a <kCm_a> # [] icing constant for Cm_a uiuc_aircraft.h
+ice kCm_adot <kCm_adot> # [] icing constant for Cm_adot uiuc_aircraft.h
+ice kCm_q <kCm_q> # [] icing constant for Cm_q uiuc_aircraft.h
+|ice kCm_r <kCm_r> # [] icing constant for Cm_r uiuc_aircraft.h
+ice kCm_de <kCm_de> # [] icing constant for Cm_de uiuc_aircraft.h
+|ice kCm_df <kCm_df> # [] icing constant for Cm_df uiuc_aircraft.h
+ice kCYo <kCYo> # [] icing constant for CYo uiuc_aircraft.h
+ice kCY_beta <kCy_beta> # [] icing constant for CY_beta uiuc_aircraft.h
+ice kCY_p <kCY_p> # [] icing constant for CY_p uiuc_aircraft.h
+ice kCY_r <kCY_r> # [] icing constant for CY_r uiuc_aircraft.h
+ice kCY_da <kCY_da> # [] icing constant for CY_da uiuc_aircraft.h
+ice kCY_dr <kCY_dr> # [] icing constant for CY_dr uiuc_aircraft.h
+ice kClo <kClo> # [] icing constant for Clo uiuc_aircraft.h
+ice kCl_beta <kCl_beta> # [] icing constant for Cl_beta uiuc_aircraft.h
+ice kCl_p <kCl_p> # [] icing constant for Cl_p uiuc_aircraft.h
+ice kCl_r <kCl_r> # [] icing constant for Cl_r uiuc_aircraft.h
+ice kCl_da <kCl_da> # [] icing constant for Cl_da uiuc_aircraft.h
+ice kCl_dr <kCl_dr> # [] icing constant for Cl_dr uiuc_aircraft.h
+ice kCno <kCno> # [] icing constant for Cno uiuc_aircraft.h
+ice kCn_beta <kCn_beta> # [] icing constant for Cn_beta uiuc_aircraft.h
+ice kCn_p <kCn_p> # [] icing constant for Cn_p uiuc_aircraft.h
+ice kCn_r <kCn_r> # [] icing constant for Cn_r uiuc_aircraft.h
+ice kCn_da <kCn_da> # [] icing constant for Cn_da uiuc_aircraft.h
+ice kCn_dr <kCn_dr> # [] icing constant for Cn_dr uiuc_aircraft.h
+
+record Dx_pilot # [ft] x-location ls_generic.h
+record Dy_pilot # [ft] y-loaction ls_generic.h
+record Dz_pilot # [ft] z-location ls_generic.h
+record Dx_cg # [ft] cg x_location ls_generic.h
+record Dy_cg # [ft] cg y_location ls_generic.h
+record Dz_cg # [ft] cg z_location ls_generic.h
+record V_north # [ft/s] x-velocity ls_generic.h
+record V_east # [ft/s] y-velocity ls_generic.h
+record V_down # [ft/s] z-velocity ls_generic.h
+record V_rel_wind # [ft/s] total velocity ls_generic.h
+record Dynamic_pressure # [lb/ft^2] dynamic pressure ls_generic.h
+record Alpha # [rad] angle of attack ls_generic.h
+record Alpha_dot # [rad/s] rate of change of alpha ls_generic.h
+record Beta # [rad] sideslip angle ls_generic.h
+record Beta_dot # [rad/s] rate of change of beta ls_generic.h
+record Gamma # [rad] flight path angle ls_generic.h
+record P_body # [rad] roll rate ls_generic.h
+record Q_body # [rad] pitch rate ls_generic.h
+record R_body # [rad] yaw rate ls_generic.h
+record Phi # [rad] bank angle ls_generic.h
+record Theta # [rad] pitch attitude angle ls_generic.h
+record Theta_dot # [rad] rate change of theta ls_generic.h
+record Psi # [rad] heading angle ls_generic.h
+|record long_trim
+|record trim_inc
+record Density # [slug/ft^3] air density ls_generic.h
+record Mass # [slug] aircraft mass ls_generic.h
+record Simtime # [s] current sim time global
+record dt # [s] current time step global
+record Long_control # [] pitch input ls_cockpit.h
+record Lat_control # [] roll input ls_cockpit.h
+record Rudder_pedal # [] yaw input ls_cockpit.h
+|record Throttle_pct # [%] throttle input ls_cockpit.h
+record elevator # [rad] elevator deflection uiuc_aircraft.h
+record aileron # [rad] aileron deflection uiuc_aircraft.h
+record rudder # [rad] rudder deflection uiuc_aircraft.h
+|record Throttle[3] # [%] throttle deflection ls_cockpit.h
+record CDfaI # [] CD(alpha) uiuc_aircraft.h
+record CDfadeI # [] CD(alpha,delta_e) uiuc_aircraft.h
+record CD # [] drag coefficient uiuc_aircraft.h
+record CLfaI # [] CL(alpha) uiuc_aircraft.h
+record CLfadeI # [] CL(alpha,delta_e) uiuc_aircraft.h
+record CL # [] lift coefficient uiuc_aircraft.h
+record CmfadeI # [] Cm(alpha,delta_e) uiuc_aircraft.h
+record Cm # [] pitch moment coefficient uiuc_aircraft.h
+record CYfadaI # [] CY(alpha,delta_a) uiuc_aircraft.h
+record CYfbetadrI # [] CY(beta,delta_r) uiuc_aircraft.h
+record CY # [] side-force coefficient uiuc_aircraft.h
+record ClfadaI # [] Cl(alpha,delta_a) uiuc_aircraft.h
+record ClfbetadrI # [] Cl(beta,delta_r) uiuc_aircraft.h
+record Cl # [] roll moment coefficient uiuc_aircraft.h
+record CnfadaI # [] Cn(alpha,delta_a) uiuc_aircraft.h
+record CnfbetadrI # [] Cn(beta,delta_r) uiuc_aircraft.h
+record Cn # [] yaw moment coefficient uiuc_aircraft.h
+record F_X_wind # [lb] aero x-force in wind-axes ls_generic.h
+record F_Y_wind # [lb] aero y-force in wind-axes ls_generic.h
+record F_Z_wind # [lb] aero z-force in wind-axes ls_generic.h
+record F_X_aero # [lb] aero x-force in body-axes ls_generic.h
+record F_Y_aero # [lb] aero y-force in body-axes ls_generic.h
+record F_Z_aero # [lb] aero z-force in body-axes ls_generic.h
+record F_X_engine # [lb] prop x-force in body-axes ls_generic.h
+record F_Y_engine # [lb] prop y-force in body-axes ls_generic.h
+record F_Z_engine # [lb] prop z-force in body-axes ls_generic.h
+record F_X_gear # [lb] gear x-force in body-axes ls_generic.h
+record F_Y_gear # [lb] gear y-force in body-axes ls_generic.h
+record F_Z_gear # [lb] gear z-force in body-axes ls_generic.h
+record F_X # [lb] total x-force in body-axes ls_generic.h
+record F_Y # [lb] total y-force in body-axes ls_generic.h
+record F_Z # [lb] total z-force in body-axes ls_generic.h
+record M_l_aero # [ft-lb] aero roll mom in body axes ls_generic.h
+record M_m_aero # [ft-lb] aero pitch mom in body axes ls_generic.h
+record M_n_aero # [ft-lb] aero yaw mom in body axes ls_generic.h
+record M_l_engine # [ft-lb] prop roll mom in body axes ls_generic.h
+record M_m_engine # [ft-lb] prop pitch mom in body axes ls_generic.h
+record M_n_engine # [ft-lb] prop yaw mom in body axes ls_generic.h
+record M_l_gear # [ft-lb] gear roll mom in body axes ls_generic.h
+record M_m_gear # [ft-lb] gear pitch mom in body axes ls_generic.h
+record M_n_gear # [ft-lb] gear yaw mom in body axes ls_generic.h
+record M_l_rp # [ft-lb] total roll mom in body axes ls_generic.h
+record M_m_rp # [ft-lb] total pitch mom in body axes ls_generic.h
+record M_n_rp # [ft-lb] total yaw mom in body axes ls_generic.h
+
+**********************************************************************
+
+**********************************************************************
+V. Mandatory Input:
+
+The following data is required for the simulator to function;
+otherwise either the UIUC Aero Model or LaRCsim parts of the code will
+probably crash.
+
+1) initial aircraft state (LaRCsim)
+Dx_pilot x-location [ft]
+Dy_pilot y-location [ft]
+Dz_pilot z-location [ft]
+
+(items below causing conflict with Flight Gear)
+|V_north x-velocity [ft/s]
+|V_east y-velocity [ft/s]
+|V_down z-velocity [ft/s]
+
+P_body roll rate [rad/s]
+Q_body pitch rate [rad/s]
+R_body yaw rate [rad/s]
+Phi bank angle [rad]
+Theta pitch attitude angle [rad]
+Psi heading angle [rad]
+
+2) aircraft geometry (UIUC Aero Model)
+bw wingspan [ft]
+cbar mean aerodynamic chord [ft]
+Sw wing planform area [ft^2]
+
+3) engine properties (UIUC Engine Model)
+(some engine model must be specified, such as...)
+engine simpleSingle
+ <or>
+engine c172
+
+4) mass variables (LaRCsim)
+Mass aircraft mass [slug]
+I_xx roll inertia [slug-ft^2]
+I_yy pitch inertia [slug-ft^2]
+I_zz yaw inertia [slug-ft^2]
+I_xz lateral cross inertia [slug-ft^2]
+
+5) aerodynamic force/moment components (Aero Model)
+CLo lift coef for all angles = 0 []
+CL_a lift curve slope, d(CL)/d(alpha) [/rad]
+CDo drag coef for all angles = 0 []
+CDK constant, as in CD=CDo+K*CL^2 []
+ <or>
+CD_a d(CD)/d(alpha) [/rad]
+Cmo pitch mom coef for all angles=0 []
+Cm_a d(Cm)/d(alpha) [/rad]
+CY_beta d(CY)/d(beta) [/rad]
+Cl_beta d(Cl)/d(beta) [/rad]
+Cn_beta d(Cn)/d(beta) [/rad]
+
+7) gear properties (none yet)
+
+With the current version, the C172 model gear model is used for *ALL*
+aircraft. This can produce some interesting effects with heavy
+aircraft (eg, Convair model), and light aircraft (eg, Pioneer UAV)
+
+**********************************************************************