1 /***************************************************************************
5 ----------------------------------------------------------------------------
7 FUNCTION: Linear aerodynamics model
9 ----------------------------------------------------------------------------
11 MODULE STATUS: developmental
13 ----------------------------------------------------------------------------
17 ----------------------------------------------------------------------------
22 ----------------------------------------------------------------------------
28 "Aerodynamics, Aeronautics and Flight Mechanics",
29 John Wiley & Sons,1995, ISBN 0-471-11087-6
31 any suggestions, corrections, aditional data, flames, everything to
35 This source is not checked in this configuration in any way.
38 ----------------------------------------------------------------------------
42 ----------------------------------------------------------------------------
46 ----------------------------------------------------------------------------
50 ----------------------------------------------------------------------------
54 --------------------------------------------------------------------------*/
62 #include "ls_generic.h"
63 #include "ls_cockpit.h"
70 /*float ** Cherokee (float t, VectorStanja &X, float *U)*/
73 Cza = -19149.0/(146.69*146.69*157.5/2.0*0.00238),
74 Czat = -73.4*4*146.69/0.00238/157.5/5.25,
75 Czq = -2.655*4*2400.0/32.2/0.00238/157.5/146.69/5.25,
76 Cma = -21662.0 *2/146.69/0.00238/157.5/146.69/5.25,
77 Cmat = -892.4 *4/146.69/0.00238/157.5/146.69/5.25,
78 Cmq = -2405.1 *4/0.00238/157.5/146.69/5.25/5.25,
79 Czde = -1050.49 *2/0.00238/157.5/146.69/146.69,
80 Cmde = -12771.9 *2/0.00238/157.5/146.69/146.69/5.25,
81 Clb = -12891.0/(146.69*146.69*157.5/2.0*0.00238)/30.0,
84 Cyb = -1169.8/(146.69*146.69*157.5/2.0*0.00238),
86 Cnb = 11127.2/(146.69*146.69*157.5/2.0*0.00238)/30.0,
89 Cyf = -14.072/(146.69*146.69*157.5/2.0*0.00238),
90 Cyps = 89.229/(146.69*146.69*157.5/2.0*0.00238),
91 Clf = -5812.4/(146.69*146.69*157.5/2.0*0.00238)/30.0, //%Clda ?
92 Cnf = -853.93/(146.69*146.69*157.5/2.0*0.00238)/30.0, //%Cnda ?
93 Cnps = -1149.0/(146.69*146.69*157.5/2.0*0.00238)/30.0, //%Cndr ?
94 Cyr = 1.923/(146.69*146.69*157.5/2.0*0.00238),
96 Cx0 = -0.4645/(157.5*0.3048*0.3048),
101 Clda = -5812.4/(146.69*146.69*157.5/2.0*0.00238)/30.0, // Clf
102 Cnda = -853.93/(146.69*146.69*157.5/2.0*0.00238)/30.0, // Cnf
103 Cndr = -1149.0/(146.69*146.69*157.5/2.0*0.00238)/30.0, // Cnps
106 Possible problems: convention about positive control surfaces offset
108 elevator = 0.0, // 20.0 * 180.0/57.3 * Long_control
109 aileron = 0.0, // 30.0 * 180.0/57.3 * Lat_control
110 rudder = 0.0, // 30.0 * 180.0/57.3 * Rudder_pedal,
113 // m = 2400/32.2, // mass
114 S = 157.5, // wing area
115 b = 30.0, // wing span
116 c = 5.25, // main aerodynamic chrod
118 // Ixyz[3] = {1070.0*14.59*0.3048*0.3048, 1249.0*14.59*0.3048*0.3048, 2312.0*14.59*0.3048*0.3048},
121 // *RetVal[4] = {&m, Ixyz, Fa, Ma};
125 V = 0.0, // V_rel_wind
126 qd = 0.0, // Density*V*V/2.0, //dinamicki tlak
133 /* derivatives are defined in "wind" axes so... */
134 p = P_body*Cos_alpha + R_body*Sin_alpha;
136 r = -P_body*Sin_alpha + R_body*Cos_alpha;
140 Cz = Cz0 + Cza*Alpha + Czat*(Alpha_dot*c/2.0/V) + Czq*(q*c/2.0/V) + Czde * elevator;
141 Cm = Cm0 + Cma*Alpha + Cmat*(Alpha_dot*c/2.0/V) + Cmq*(q*c/2.0/V) + Cmde * elevator;
143 Cx = Cx0 - (Cza*Alpha)*(Cza*Alpha)/(M_PI*5.71*0.6);
144 Cl = Clb*Beta + Clp*(p*b/2.0/V) + Clr*(r*b/2.0/V) + Clda * aileron;
146 Cy = Cyb*Beta + Cyr*(r*b/2.0/V);
147 Cn = Cnb*Beta + Cnp*(p*b/2.0/V) + Cnr*(r*b/2.0/V) + Cndr * rudder;
149 /* back to body axes */
155 Cx = CD - CL*Sin_alpha;
159 /* AD forces and moments */
164 M_l_aero = (Cl*Cos_alpha - Cn*Sin_alpha)*b*qd*S;
165 M_m_aero = Cm*c*qd*S;
166 M_n_aero = (Cl*Sin_alpha + Cn*Cos_alpha)*b*qd*S;