1 /**********************************************************************
3 FILENAME: uiuc_aircraft.h
5 ----------------------------------------------------------------------
7 DESCRIPTION: creates maps for all keywords and variables expected in
8 aircraft input file, includes all parameters that
9 define the aircraft for use in the uiuc aircraft models.
11 ----------------------------------------------------------------------
15 ----------------------------------------------------------------------
19 ----------------------------------------------------------------------
21 HISTORY: 01/26/2000 initial release
22 02/10/2000 (JS) changed aeroData to aeroParts (etc.)
23 added Twin Otter 2.5 equation variables
24 added Dx_cg (etc.) to init & record maps
25 added controlsMixer to top level map
26 02/18/2000 (JS) added variables needed for 1D file
27 reading of CL and CD as functions of alpha
28 02/29/2000 (JS) added variables needed for 2D file
29 reading of CL, CD, and Cm as functions of
30 alpha and delta_e; of CY and Cn as function
31 of alpha and delta_r; and of Cl and Cn as
32 functions of alpha and delta_a
33 03/02/2000 (JS) added record features for 1D and 2D
35 03/29/2000 (JS) added Cmfa interpolation functions
36 and Weight; added misc map
37 04/01/2000 (JS) added throttle, longitudinal, lateral,
38 and rudder inputs to record map
39 03/09/2001 (DPM) added support for gear
41 ----------------------------------------------------------------------
43 AUTHOR(S): Bipin Sehgal <bsehgal@uiuc.edu>
44 Jeff Scott <jscott@mail.com>
45 David Megginson <david@megginson.com>
47 ----------------------------------------------------------------------
51 ----------------------------------------------------------------------
55 ----------------------------------------------------------------------
59 ----------------------------------------------------------------------
61 CALLED BY: uiuc_1DdataFileReader.cpp
62 uiuc_2DdataFileReader.cpp
63 uiuc_aerodeflections.cpp
66 uiuc_initializemaps.cpp
70 ----------------------------------------------------------------------
74 ----------------------------------------------------------------------
76 COPYRIGHT: (C) 2000 by Michael Selig
78 This program is free software; you can redistribute it and/or
79 modify it under the terms of the GNU General Public License
80 as published by the Free Software Foundation.
82 This program is distributed in the hope that it will be useful,
83 but WITHOUT ANY WARRANTY; without even the implied warranty of
84 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
85 GNU General Public License for more details.
87 You should have received a copy of the GNU General Public License
88 along with this program; if not, write to the Free Software
89 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
90 USA or view http://www.gnu.org/copyleft/gpl.html.
92 **********************************************************************/
98 #include <simgear/compiler.h>
100 #include <FDM/LaRCsim/ls_types.h>
103 #include STL_IOSTREAM
106 #include "uiuc_parsefile.h"
109 #if !defined (SG_HAVE_NATIVE_SGI_COMPILERS)
110 SG_USING_STD(iostream);
112 #if defined ( macintosh ) || defined ( _MSC_VER )
113 SG_USING_STD(ofstream);
117 typedef stack :: iterator LIST;
119 /* Add more keywords here if required*/
120 enum {init_flag = 1000, geometry_flag, controlSurface_flag, controlsMixer_flag,
121 mass_flag, engine_flag, CD_flag, CL_flag, Cm_flag, CY_flag, Cl_flag,
122 Cn_flag, gear_flag, ice_flag, record_flag, misc_flag};
124 // init ======= Initial values for equation of motion
125 enum {Dx_pilot_flag = 2000, Dy_pilot_flag, Dz_pilot_flag,
126 Dx_cg_flag, Dy_cg_flag, Dz_cg_flag, Altitude_flag,
127 V_north_flag, V_east_flag, V_down_flag,
128 P_body_flag, Q_body_flag, R_body_flag,
129 Phi_flag, Theta_flag, Psi_flag,
130 Long_trim_flag, recordRate_flag, recordStartTime_flag,
131 nondim_rate_V_rel_wind_flag, dyn_on_speed_flag};
133 // geometry === Aircraft-specific geometric quantities
134 enum {bw_flag = 3000, cbar_flag, Sw_flag, ih_flag, bh_flag, ch_flag, Sh_flag};
136 // controlSurface = Control surface deflections and properties
137 enum {de_flag = 4000, da_flag, dr_flag,
138 set_Long_trim_flag, set_Long_trim_deg_flag, zero_Long_trim_flag,
139 elevator_step_flag, elevator_singlet_flag, elevator_doublet_flag, elevator_input_flag};
141 // controlsMixer == Controls mixer
142 enum {nomix_flag = 5000};
144 //mass ======== Aircraft-specific mass properties
145 enum {Weight_flag = 6000, Mass_flag, I_xx_flag, I_yy_flag, I_zz_flag, I_xz_flag};
147 // engine ===== Propulsion data
148 enum {simpleSingle_flag = 7000, c172_flag, cherokee_flag};
150 // CD ========= Aerodynamic x-force quantities (longitudinal)
151 enum {CDo_flag = 8000, CDK_flag, CD_a_flag, CD_adot_flag, CD_q_flag, CD_ih_flag, CD_de_flag,
152 CDfa_flag, CDfCL_flag, CDfade_flag, CDfdf_flag, CDfadf_flag,
153 CXo_flag, CXK_flag, CX_a_flag, CX_a2_flag, CX_a3_flag, CX_adot_flag,
154 CX_q_flag, CX_de_flag, CX_dr_flag, CX_df_flag, CX_adf_flag};
156 // CL ========= Aerodynamic z-force quantities (longitudinal)
157 enum {CLo_flag = 9000, CL_a_flag, CL_adot_flag, CL_q_flag, CL_ih_flag, CL_de_flag,
158 CLfa_flag, CLfade_flag, CLfdf_flag, CLfadf_flag,
159 CZo_flag, CZ_a_flag, CZ_a2_flag, CZ_a3_flag, CZ_adot_flag,
160 CZ_q_flag, CZ_de_flag, CZ_deb2_flag, CZ_df_flag, CZ_adf_flag};
162 // Cm ========= Aerodynamic m-moment quantities (longitudinal)
163 enum {Cmo_flag = 10000, Cm_a_flag, Cm_a2_flag, Cm_adot_flag, Cm_q_flag,
164 Cm_ih_flag, Cm_de_flag, Cm_b2_flag, Cm_r_flag, Cm_df_flag,
165 Cmfa_flag, Cmfade_flag, Cmfdf_flag, Cmfadf_flag};
167 // CY ========= Aerodynamic y-force quantities (lateral)
168 enum {CYo_flag = 11000, CY_beta_flag, CY_p_flag, CY_r_flag, CY_da_flag,
169 CY_dr_flag, CY_dra_flag, CY_bdot_flag, CYfada_flag, CYfbetadr_flag};
171 // Cl ========= Aerodynamic l-moment quantities (lateral)
172 enum {Clo_flag = 12000, Cl_beta_flag, Cl_p_flag, Cl_r_flag, Cl_da_flag,
173 Cl_dr_flag, Cl_daa_flag, Clfada_flag, Clfbetadr_flag};
175 // Cn ========= Aerodynamic n-moment quantities (lateral)
176 enum {Cno_flag = 13000, Cn_beta_flag, Cn_p_flag, Cn_r_flag, Cn_da_flag,
177 Cn_dr_flag, Cn_q_flag, Cn_b3_flag, Cnfada_flag, Cnfbetadr_flag};
179 // gear ======= Landing gear model quantities
180 enum {Dx_gear_flag = 14000, Dy_gear_flag, Dz_gear_flag, cgear_flag,
181 kgear_flag, muGear_flag, strutLength_flag};
183 // ice ======== Ice model quantities
184 enum {iceTime_flag = 15000, transientTime_flag, eta_ice_final_flag,
185 beta_probe_wing_flag, beta_probe_tail_flag,
186 kCDo_flag, kCDK_flag, kCD_a_flag, kCD_adot_flag, kCD_q_flag, kCD_de_flag,
187 kCXo_flag, kCXK_flag, kCX_a_flag, kCX_a2_flag, kCX_a3_flag, kCX_adot_flag,
188 kCX_q_flag, kCX_de_flag, kCX_dr_flag, kCX_df_flag, kCX_adf_flag,
189 kCLo_flag, kCL_a_flag, kCL_adot_flag, kCL_q_flag, kCL_de_flag,
190 kCZo_flag, kCZ_a_flag, kCZ_a2_flag, kCZ_a3_flag, kCZ_adot_flag,
191 kCZ_q_flag, kCZ_de_flag, kCZ_deb2_flag, kCZ_df_flag, kCZ_adf_flag,
192 kCmo_flag, kCm_a_flag, kCm_a2_flag, kCm_adot_flag, kCm_q_flag,
193 kCm_de_flag, kCm_b2_flag, kCm_r_flag, kCm_df_flag,
194 kCYo_flag, kCY_beta_flag, kCY_p_flag, kCY_r_flag, kCY_da_flag,
195 kCY_dr_flag, kCY_dra_flag, kCY_bdot_flag,
196 kClo_flag, kCl_beta_flag, kCl_p_flag, kCl_r_flag, kCl_da_flag,
197 kCl_dr_flag, kCl_daa_flag,
198 kCno_flag, kCn_beta_flag, kCn_p_flag, kCn_r_flag, kCn_da_flag,
199 kCn_dr_flag, kCn_q_flag, kCn_b3_flag};
201 // record ===== Record desired quantites to file
202 enum {Simtime_record = 16000, dt_record,
204 Weight_record, Mass_record, I_xx_record, I_yy_record, I_zz_record, I_xz_record,
206 Dx_pilot_record, Dy_pilot_record, Dz_pilot_record,
207 Dx_cg_record, Dy_cg_record, Dz_cg_record,
208 Lat_geocentric_record, Lon_geocentric_record, Radius_to_vehicle_record,
209 Latitude_record, Longitude_record, Altitude_record,
210 Phi_record, Theta_record, Psi_record,
212 V_dot_north_record, V_dot_east_record, V_dot_down_record,
213 U_dot_body_record, V_dot_body_record, W_dot_body_record,
214 A_X_pilot_record, A_Y_pilot_record, A_Z_pilot_record,
215 A_X_cg_record, A_Y_cg_record, A_Z_cg_record,
216 N_X_pilot_record, N_Y_pilot_record, N_Z_pilot_record,
217 N_X_cg_record, N_Y_cg_record, N_Z_cg_record,
218 P_dot_body_record, Q_dot_body_record, R_dot_body_record,
220 V_north_record, V_east_record, V_down_record,
221 V_north_rel_ground_record, V_east_rel_ground_record, V_down_rel_ground_record,
222 V_north_airmass_record, V_east_airmass_record, V_down_airmass_record,
223 V_north_rel_airmass_record, V_east_rel_airmass_record, V_down_rel_airmass_record,
224 U_gust_record, V_gust_record, W_gust_record,
225 U_body_record, V_body_record, W_body_record,
226 V_rel_wind_record, V_true_kts_record, V_rel_ground_record,
227 V_inertial_record, V_ground_speed_record, V_equiv_record,
228 V_equiv_kts_record, V_calibrated_record, V_calibrated_kts_record,
229 P_local_record, Q_local_record, R_local_record,
230 P_body_record, Q_body_record, R_body_record,
231 P_total_record, Q_total_record, R_total_record,
232 Phi_dot_record, Theta_dot_record, Psi_dot_record,
233 Latitude_dot_record, Longitude_dot_record, Radius_dot_record,
235 Alpha_record, Alpha_deg_record, Alpha_dot_record, Alpha_dot_deg_record,
236 Beta_record, Beta_deg_record, Beta_dot_record, Beta_dot_deg_record,
237 Gamma_vert_record, Gamma_vert_deg_record, Gamma_horiz_record, Gamma_horiz_deg_record,
239 Density_record, V_sound_record, Mach_number_record,
240 Static_pressure_record, Total_pressure_record, Impact_pressure_record,
241 Dynamic_pressure_record,
242 Static_temperature_record, Total_temperature_record,
244 Gravity_record, Sea_level_radius_record, Earth_position_angle_record,
245 Runway_altitude_record, Runway_latitude_record, Runway_longitude_record,
246 Runway_heading_record, Radius_to_rwy_record,
247 D_pilot_north_of_rwy_record, D_pilot_east_of_rwy_record, D_pilot_above_rwy_record,
248 X_pilot_rwy_record, Y_pilot_rwy_record, H_pilot_rwy_record,
249 D_cg_north_of_rwy_record, D_cg_east_of_rwy_record, D_cg_above_rwy_record,
250 X_cg_rwy_record, Y_cg_rwy_record, H_cg_rwy_record,
252 Throttle_3_record, Throttle_pct_record,
254 Long_control_record, Long_trim_record, Long_trim_deg_record,
255 elevator_record, elevator_deg_record,
256 Lat_control_record, aileron_record, aileron_deg_record,
257 Rudder_pedal_record, rudder_record, rudder_deg_record,
258 Flap_handle_record, flap_record, flap_deg_record,
260 CD_record, CDfaI_record, CDfCLI_record, CDfadeI_record, CDfdfI_record, CDfadfI_record, CX_record,
261 CL_record, CLfaI_record, CLfadeI_record, CLfdfI_record, CLfadfI_record, CZ_record,
262 Cm_record, CmfaI_record, CmfadeI_record, CmfdfI_record, CmfadfI_record,
263 CY_record, CYfadaI_record, CYfbetadrI_record,
264 Cl_record, ClfadaI_record, ClfbetadrI_record,
265 Cn_record, CnfadaI_record, CnfbetadrI_record,
267 F_X_wind_record, F_Y_wind_record, F_Z_wind_record,
268 F_X_aero_record, F_Y_aero_record, F_Z_aero_record,
269 F_X_engine_record, F_Y_engine_record, F_Z_engine_record,
270 F_X_gear_record, F_Y_gear_record, F_Z_gear_record,
271 F_X_record, F_Y_record, F_Z_record,
272 F_north_record, F_east_record, F_down_record,
274 M_l_aero_record, M_m_aero_record, M_n_aero_record,
275 M_l_engine_record, M_m_engine_record, M_n_engine_record,
276 M_l_gear_record, M_m_gear_record, M_n_gear_record,
277 M_l_rp_record, M_m_rp_record, M_n_rp_record,
279 CLclean_wing_record, CLiced_wing_record,
280 CLclean_tail_record, CLiced_tail_record,
281 Lift_clean_wing_record, Lift_iced_wing_record,
282 Lift_clean_tail_record, Lift_iced_tail_record,
283 Gamma_clean_wing_record, Gamma_iced_wing_record,
284 Gamma_clean_tail_record, Gamma_iced_tail_record,
285 w_clean_wing_record, w_iced_wing_record,
286 w_clean_tail_record, w_iced_tail_record,
287 V_total_clean_wing_record, V_total_iced_wing_record,
288 V_total_clean_tail_record, V_total_iced_tail_record,
289 beta_flow_clean_wing_record, beta_flow_clean_wing_deg_record,
290 beta_flow_iced_wing_record, beta_flow_iced_wing_deg_record,
291 beta_flow_clean_tail_record, beta_flow_clean_tail_deg_record,
292 beta_flow_iced_tail_record, beta_flow_iced_tail_deg_record,
293 Dbeta_flow_wing_record, Dbeta_flow_wing_deg_record,
294 Dbeta_flow_tail_record, Dbeta_flow_tail_deg_record,
295 pct_beta_flow_wing_record, pct_beta_flow_tail_record};
297 // misc ======= Miscellaneous inputs
298 enum {simpleHingeMomentCoef_flag = 17000, dfTimefdf_flag};
303 // ParseFile stuff [] Bipin to add more comments
305 #define airplane aircraft_->airplane
306 ParseFile *initParts;
307 #define initParts aircraft_->initParts
308 ParseFile *geometryParts;
309 #define geometryParts aircraft_->geometryParts
310 ParseFile *massParts;
311 #define massParts aircraft_->massParts
312 ParseFile *aeroDragParts;
313 #define aeroDragParts aircraft_->aeroDragParts
314 ParseFile *aeroLiftParts;
315 #define aeroLiftParts aircraft_->aeroLiftParts
316 ParseFile *aeroPitchParts;
317 #define aeroPitchParts aircraft_->aeroPitchParts
318 ParseFile *aeroSideforceParts;
319 #define aeroSideforceParts aircraft_->aeroSideforceParts
320 ParseFile *aeroRollParts;
321 #define aeroRollParts aircraft_->aeroRollParts
322 ParseFile *aeroYawParts;
323 #define aeroYawParts aircraft_->aeroYawParts
324 ParseFile *engineParts;
325 #define engineParts aircraft_->engineParts
326 ParseFile *gearParts;
327 #define gearParts aircraft_->gearParts
328 ParseFile *recordParts;
329 #define recordParts aircraft_->recordParts
331 /*= Keywords (token1) ===========================================*/
332 map <string,int> Keyword_map;
333 #define Keyword_map aircraft_->Keyword_map
335 double CD, CX, CL, CZ, Cm, CY, Cl, Cn;
336 #define CD aircraft_->CD
337 #define CX aircraft_->CX
338 #define CL aircraft_->CL
339 #define CZ aircraft_->CZ
340 #define Cm aircraft_->Cm
341 #define CY aircraft_->CY
342 #define Cl aircraft_->Cl
343 #define Cn aircraft_->Cn
344 double CXclean_wing, CXclean_tail, CXiced_wing, CXiced_tail;
345 double CLclean_wing, CLclean_tail, CLiced_wing, CLiced_tail;
346 double CZclean_wing, CZclean_tail, CZiced_wing, CZiced_tail;
347 #define CXclean_wing aircraft_->CXclean_wing
348 #define CXclean_tail aircraft_->CXclean_tail
349 #define CXiced_wing aircraft_->CXiced_wing
350 #define CXiced_tail aircraft_->CXiced_tail
351 #define CLclean_wing aircraft_->CLclean_wing
352 #define CLclean_tail aircraft_->CLclean_tail
353 #define CLiced_wing aircraft_->CLiced_wing
354 #define CLiced_tail aircraft_->CLiced_tail
355 #define CZclean_wing aircraft_->CZclean_wing
356 #define CZclean_tail aircraft_->CZclean_tail
357 #define CZiced_wing aircraft_->CZiced_wing
358 #define CZiced_tail aircraft_->CZiced_tail
360 /*========================================*/
361 /* Variables (token2) - 17 groups (000329)*/
362 /*========================================*/
364 /* Variables (token2) ===========================================*/
365 /* init ========== Initial values for equations of motion =======*/
367 map <string,int> init_map;
368 #define init_map aircraft_->init_map
371 #define recordRate aircraft_->recordRate
372 double recordStartTime;
373 #define recordStartTime aircraft_->recordStartTime
374 bool nondim_rate_V_rel_wind;
375 #define nondim_rate_V_rel_wind aircraft_->nondim_rate_V_rel_wind
377 #define dyn_on_speed aircraft_->dyn_on_speed
380 /* Variables (token2) ===========================================*/
381 /* geometry ====== Aircraft-specific geometric quantities =======*/
383 map <string,int> geometry_map;
384 #define geometry_map aircraft_->geometry_map
386 double bw, cbar, Sw, ih, bh, ch, Sh;
387 #define bw aircraft_->bw
388 #define cbar aircraft_->cbar
389 #define Sw aircraft_->Sw
390 #define ih aircraft_->ih
391 #define bh aircraft_->bh
392 #define ch aircraft_->ch
393 #define Sh aircraft_->Sh
396 /* Variables (token2) ===========================================*/
397 /* controlSurface Control surface deflections and properties ===*/
399 map <string,int> controlSurface_map;
400 #define controlSurface_map aircraft_->controlSurface_map
405 #define demax aircraft_->demax
406 #define demin aircraft_->demin
407 #define damax aircraft_->damax
408 #define damin aircraft_->damin
409 #define drmax aircraft_->drmax
410 #define drmin aircraft_->drmin
412 double aileron, elevator, rudder;
413 #define aileron aircraft_->aileron
414 #define elevator aircraft_->elevator
415 #define rudder aircraft_->rudder
417 #define flap aircraft_->flap
419 bool set_Long_trim, zero_Long_trim;
420 double Long_trim_constant;
421 #define set_Long_trim aircraft_->set_Long_trim
422 #define Long_trim_constant aircraft_->Long_trim_constant
423 #define zero_Long_trim aircraft_->zero_Long_trim
426 double elevator_step_angle, elevator_step_startTime;
427 #define elevator_step aircraft_->elevator_step
428 #define elevator_step_angle aircraft_->elevator_step_angle
429 #define elevator_step_startTime aircraft_->elevator_step_startTime
431 bool elevator_singlet;
432 double elevator_singlet_angle, elevator_singlet_startTime;
433 double elevator_singlet_duration;
434 #define elevator_singlet aircraft_->elevator_singlet
435 #define elevator_singlet_angle aircraft_->elevator_singlet_angle
436 #define elevator_singlet_startTime aircraft_->elevator_singlet_startTime
437 #define elevator_singlet_duration aircraft_->elevator_singlet_duration
439 bool elevator_doublet;
440 double elevator_doublet_angle, elevator_doublet_startTime;
441 double elevator_doublet_duration;
442 #define elevator_doublet aircraft_->elevator_doublet
443 #define elevator_doublet_angle aircraft_->elevator_doublet_angle
444 #define elevator_doublet_startTime aircraft_->elevator_doublet_startTime
445 #define elevator_doublet_duration aircraft_->elevator_doublet_duration
448 string elevator_input_file;
449 double elevator_input_timeArray[1000];
450 double elevator_input_deArray[1000];
451 int elevator_input_ntime;
452 double elevator_input_startTime;
453 #define elevator_input aircraft_->elevator_input
454 #define elevator_input_file aircraft_->elevator_input_file
455 #define elevator_input_timeArray aircraft_->elevator_input_timeArray
456 #define elevator_input_deArray aircraft_->elevator_input_deArray
457 #define elevator_input_ntime aircraft_->elevator_input_ntime
458 #define elevator_input_startTime aircraft_->elevator_input_startTime
461 /* Variables (token2) ===========================================*/
462 /* controlsMixer = Control mixer ================================*/
464 map <string,int> controlsMixer_map;
465 #define controlsMixer_map aircraft_->controlsMixer_map
468 #define nomix aircraft_->nomix
471 /* Variables (token2) ===========================================*/
472 /* mass =========== Aircraft-specific mass properties ===========*/
474 map <string,int> mass_map;
475 #define mass_map aircraft_->mass_map
478 #define Weight aircraft_->Weight
481 /* Variables (token2) ===========================================*/
482 /* engine ======== Propulsion data ==============================*/
484 map <string,int> engine_map;
485 #define engine_map aircraft_->engine_map
487 double simpleSingleMaxThrust;
488 #define simpleSingleMaxThrust aircraft_->simpleSingleMaxThrust
491 /* Variables (token2) ===========================================*/
492 /* CD ============ Aerodynamic x-force quantities (longitudinal) */
494 map <string,int> CD_map;
495 #define CD_map aircraft_->CD_map
497 double CDo, CDK, CD_a, CD_adot, CD_q, CD_ih, CD_de;
498 #define CDo aircraft_->CDo
499 #define CDK aircraft_->CDK
500 #define CD_a aircraft_->CD_a
501 #define CD_adot aircraft_->CD_adot
502 #define CD_q aircraft_->CD_q
503 #define CD_ih aircraft_->CD_ih
504 #define CD_de aircraft_->CD_de
506 double CDfa_aArray[100];
507 double CDfa_CDArray[100];
510 #define CDfa aircraft_->CDfa
511 #define CDfa_aArray aircraft_->CDfa_aArray
512 #define CDfa_CDArray aircraft_->CDfa_CDArray
513 #define CDfa_nAlpha aircraft_->CDfa_nAlpha
514 #define CDfaI aircraft_->CDfaI
516 double CDfCL_CLArray[100];
517 double CDfCL_CDArray[100];
520 #define CDfCL aircraft_->CDfCL
521 #define CDfCL_CLArray aircraft_->CDfCL_CLArray
522 #define CDfCL_CDArray aircraft_->CDfCL_CDArray
523 #define CDfCL_nCL aircraft_->CDfCL_nCL
524 #define CDfCLI aircraft_->CDfCLI
526 double CDfade_aArray[100][100];
527 double CDfade_deArray[100];
528 double CDfade_CDArray[100][100];
529 int CDfade_nAlphaArray[100];
532 #define CDfade aircraft_->CDfade
533 #define CDfade_aArray aircraft_->CDfade_aArray
534 #define CDfade_deArray aircraft_->CDfade_deArray
535 #define CDfade_CDArray aircraft_->CDfade_CDArray
536 #define CDfade_nAlphaArray aircraft_->CDfade_nAlphaArray
537 #define CDfade_nde aircraft_->CDfade_nde
538 #define CDfadeI aircraft_->CDfadeI
540 double CDfdf_dfArray[100];
541 double CDfdf_CDArray[100];
544 #define CDfdf aircraft_->CDfdf
545 #define CDfdf_dfArray aircraft_->CDfdf_dfArray
546 #define CDfdf_CDArray aircraft_->CDfdf_CDArray
547 #define CDfdf_ndf aircraft_->CDfdf_ndf
548 #define CDfdfI aircraft_->CDfdfI
550 double CDfadf_aArray[100][100];
551 double CDfadf_dfArray[100];
552 double CDfadf_CDArray[100][100];
553 int CDfadf_nAlphaArray[100];
556 #define CDfadf aircraft_->CDfadf
557 #define CDfadf_aArray aircraft_->CDfadf_aArray
558 #define CDfadf_dfArray aircraft_->CDfadf_dfArray
559 #define CDfadf_CDArray aircraft_->CDfadf_CDArray
560 #define CDfadf_nAlphaArray aircraft_->CDfadf_nAlphaArray
561 #define CDfadf_ndf aircraft_->CDfadf_ndf
562 #define CDfadfI aircraft_->CDfadfI
563 double CXo, CXK, CX_a, CX_a2, CX_a3, CX_adot;
564 double CX_q, CX_de, CX_dr, CX_df, CX_adf;
565 #define CXo aircraft_->CXo
566 #define CXK aircraft_->CXK
567 #define CX_a aircraft_->CX_a
568 #define CX_a2 aircraft_->CX_a2
569 #define CX_a3 aircraft_->CX_a3
570 #define CX_adot aircraft_->CX_adot
571 #define CX_q aircraft_->CX_q
572 #define CX_de aircraft_->CX_de
573 #define CX_dr aircraft_->CX_dr
574 #define CX_df aircraft_->CX_df
575 #define CX_adf aircraft_->CX_adf
578 /* Variables (token2) ===========================================*/
579 /* CL ============ Aerodynamic z-force quantities (longitudinal) */
581 map <string,int> CL_map;
582 #define CL_map aircraft_->CL_map
584 double CLo, CL_a, CL_adot, CL_q, CL_ih, CL_de;
585 #define CLo aircraft_->CLo
586 #define CL_a aircraft_->CL_a
587 #define CL_adot aircraft_->CL_adot
588 #define CL_q aircraft_->CL_q
589 #define CL_ih aircraft_->CL_ih
590 #define CL_de aircraft_->CL_de
592 double CLfa_aArray[100];
593 double CLfa_CLArray[100];
596 #define CLfa aircraft_->CLfa
597 #define CLfa_aArray aircraft_->CLfa_aArray
598 #define CLfa_CLArray aircraft_->CLfa_CLArray
599 #define CLfa_nAlpha aircraft_->CLfa_nAlpha
600 #define CLfaI aircraft_->CLfaI
602 double CLfade_aArray[100][100];
603 double CLfade_deArray[100];
604 double CLfade_CLArray[100][100];
605 int CLfade_nAlphaArray[100];
608 #define CLfade aircraft_->CLfade
609 #define CLfade_aArray aircraft_->CLfade_aArray
610 #define CLfade_deArray aircraft_->CLfade_deArray
611 #define CLfade_CLArray aircraft_->CLfade_CLArray
612 #define CLfade_nAlphaArray aircraft_->CLfade_nAlphaArray
613 #define CLfade_nde aircraft_->CLfade_nde
614 #define CLfadeI aircraft_->CLfadeI
616 double CLfdf_dfArray[100];
617 double CLfdf_CLArray[100];
620 #define CLfdf aircraft_->CLfdf
621 #define CLfdf_dfArray aircraft_->CLfdf_dfArray
622 #define CLfdf_CLArray aircraft_->CLfdf_CLArray
623 #define CLfdf_ndf aircraft_->CLfdf_ndf
624 #define CLfdfI aircraft_->CLfdfI
626 double CLfadf_aArray[100][100];
627 double CLfadf_dfArray[100];
628 double CLfadf_CLArray[100][100];
629 int CLfadf_nAlphaArray[100];
632 #define CLfadf aircraft_->CLfadf
633 #define CLfadf_aArray aircraft_->CLfadf_aArray
634 #define CLfadf_dfArray aircraft_->CLfadf_dfArray
635 #define CLfadf_CLArray aircraft_->CLfadf_CLArray
636 #define CLfadf_nAlphaArray aircraft_->CLfadf_nAlphaArray
637 #define CLfadf_ndf aircraft_->CLfadf_ndf
638 #define CLfadfI aircraft_->CLfadfI
639 double CZo, CZ_a, CZ_a2, CZ_a3, CZ_adot;
640 double CZ_q, CZ_de, CZ_deb2, CZ_df, CZ_adf;
641 #define CZo aircraft_->CZo
642 #define CZ_a aircraft_->CZ_a
643 #define CZ_a2 aircraft_->CZ_a2
644 #define CZ_a3 aircraft_->CZ_a3
645 #define CZ_adot aircraft_->CZ_adot
646 #define CZ_q aircraft_->CZ_q
647 #define CZ_de aircraft_->CZ_de
648 #define CZ_deb2 aircraft_->CZ_deb2
649 #define CZ_df aircraft_->CZ_df
650 #define CZ_adf aircraft_->CZ_adf
653 /* Variables (token2) ===========================================*/
654 /* Cm ============ Aerodynamic m-moment quantities (longitudinal) */
656 map <string,int> Cm_map;
657 #define Cm_map aircraft_->Cm_map
659 double Cmo, Cm_a, Cm_a2, Cm_adot, Cm_q;
660 double Cm_ih, Cm_de, Cm_b2, Cm_r, Cm_df;
661 #define Cmo aircraft_->Cmo
662 #define Cm_a aircraft_->Cm_a
663 #define Cm_a2 aircraft_->Cm_a2
664 #define Cm_adot aircraft_->Cm_adot
665 #define Cm_q aircraft_->Cm_q
666 #define Cm_ih aircraft_->Cm_ih
667 #define Cm_de aircraft_->Cm_de
668 #define Cm_b2 aircraft_->Cm_b2
669 #define Cm_r aircraft_->Cm_r
670 #define Cm_df aircraft_->Cm_df
672 double Cmfa_aArray[100];
673 double Cmfa_CmArray[100];
676 #define Cmfa aircraft_->Cmfa
677 #define Cmfa_aArray aircraft_->Cmfa_aArray
678 #define Cmfa_CmArray aircraft_->Cmfa_CmArray
679 #define Cmfa_nAlpha aircraft_->Cmfa_nAlpha
680 #define CmfaI aircraft_->CmfaI
682 double Cmfade_aArray[100][100];
683 double Cmfade_deArray[100];
684 double Cmfade_CmArray[100][100];
685 int Cmfade_nAlphaArray[100];
688 #define Cmfade aircraft_->Cmfade
689 #define Cmfade_aArray aircraft_->Cmfade_aArray
690 #define Cmfade_deArray aircraft_->Cmfade_deArray
691 #define Cmfade_CmArray aircraft_->Cmfade_CmArray
692 #define Cmfade_nAlphaArray aircraft_->Cmfade_nAlphaArray
693 #define Cmfade_nde aircraft_->Cmfade_nde
694 #define CmfadeI aircraft_->CmfadeI
696 double Cmfdf_dfArray[100];
697 double Cmfdf_CmArray[100];
700 #define Cmfdf aircraft_->Cmfdf
701 #define Cmfdf_dfArray aircraft_->Cmfdf_dfArray
702 #define Cmfdf_CmArray aircraft_->Cmfdf_CmArray
703 #define Cmfdf_ndf aircraft_->Cmfdf_ndf
704 #define CmfdfI aircraft_->CmfdfI
706 double Cmfadf_aArray[100][100];
707 double Cmfadf_dfArray[100];
708 double Cmfadf_CmArray[100][100];
709 int Cmfadf_nAlphaArray[100];
712 #define Cmfadf aircraft_->Cmfadf
713 #define Cmfadf_aArray aircraft_->Cmfadf_aArray
714 #define Cmfadf_dfArray aircraft_->Cmfadf_dfArray
715 #define Cmfadf_CmArray aircraft_->Cmfadf_CmArray
716 #define Cmfadf_nAlphaArray aircraft_->Cmfadf_nAlphaArray
717 #define Cmfadf_ndf aircraft_->Cmfadf_ndf
718 #define CmfadfI aircraft_->CmfadfI
721 /* Variables (token2) ===========================================*/
722 /* CY ============ Aerodynamic y-force quantities (lateral) =====*/
724 map <string,int> CY_map;
725 #define CY_map aircraft_->CY_map
727 double CYo, CY_beta, CY_p, CY_r, CY_da, CY_dr, CY_dra, CY_bdot;
728 #define CYo aircraft_->CYo
729 #define CY_beta aircraft_->CY_beta
730 #define CY_p aircraft_->CY_p
731 #define CY_r aircraft_->CY_r
732 #define CY_da aircraft_->CY_da
733 #define CY_dr aircraft_->CY_dr
734 #define CY_dra aircraft_->CY_dra
735 #define CY_bdot aircraft_->CY_bdot
737 double CYfada_aArray[100][100];
738 double CYfada_daArray[100];
739 double CYfada_CYArray[100][100];
740 int CYfada_nAlphaArray[100];
743 #define CYfada aircraft_->CYfada
744 #define CYfada_aArray aircraft_->CYfada_aArray
745 #define CYfada_daArray aircraft_->CYfada_daArray
746 #define CYfada_CYArray aircraft_->CYfada_CYArray
747 #define CYfada_nAlphaArray aircraft_->CYfada_nAlphaArray
748 #define CYfada_nda aircraft_->CYfada_nda
749 #define CYfadaI aircraft_->CYfadaI
751 double CYfbetadr_betaArray[100][100];
752 double CYfbetadr_drArray[100];
753 double CYfbetadr_CYArray[100][100];
754 int CYfbetadr_nBetaArray[100];
757 #define CYfbetadr aircraft_->CYfbetadr
758 #define CYfbetadr_betaArray aircraft_->CYfbetadr_betaArray
759 #define CYfbetadr_drArray aircraft_->CYfbetadr_drArray
760 #define CYfbetadr_CYArray aircraft_->CYfbetadr_CYArray
761 #define CYfbetadr_nBetaArray aircraft_->CYfbetadr_nBetaArray
762 #define CYfbetadr_ndr aircraft_->CYfbetadr_ndr
763 #define CYfbetadrI aircraft_->CYfbetadrI
766 /* Variables (token2) ===========================================*/
767 /* Cl ============ Aerodynamic l-moment quantities (lateral) ====*/
769 map <string,int> Cl_map;
770 #define Cl_map aircraft_->Cl_map
772 double Clo, Cl_beta, Cl_p, Cl_r, Cl_da, Cl_dr, Cl_daa;
773 #define Clo aircraft_->Clo
774 #define Cl_beta aircraft_->Cl_beta
775 #define Cl_p aircraft_->Cl_p
776 #define Cl_r aircraft_->Cl_r
777 #define Cl_da aircraft_->Cl_da
778 #define Cl_dr aircraft_->Cl_dr
779 #define Cl_daa aircraft_->Cl_daa
781 double Clfada_aArray[100][100];
782 double Clfada_daArray[100];
783 double Clfada_ClArray[100][100];
784 int Clfada_nAlphaArray[100];
787 #define Clfada aircraft_->Clfada
788 #define Clfada_aArray aircraft_->Clfada_aArray
789 #define Clfada_daArray aircraft_->Clfada_daArray
790 #define Clfada_ClArray aircraft_->Clfada_ClArray
791 #define Clfada_nAlphaArray aircraft_->Clfada_nAlphaArray
792 #define Clfada_nda aircraft_->Clfada_nda
793 #define ClfadaI aircraft_->ClfadaI
795 double Clfbetadr_betaArray[100][100];
796 double Clfbetadr_drArray[100];
797 double Clfbetadr_ClArray[100][100];
798 int Clfbetadr_nBetaArray[100];
801 #define Clfbetadr aircraft_->Clfbetadr
802 #define Clfbetadr_betaArray aircraft_->Clfbetadr_betaArray
803 #define Clfbetadr_drArray aircraft_->Clfbetadr_drArray
804 #define Clfbetadr_ClArray aircraft_->Clfbetadr_ClArray
805 #define Clfbetadr_nBetaArray aircraft_->Clfbetadr_nBetaArray
806 #define Clfbetadr_ndr aircraft_->Clfbetadr_ndr
807 #define ClfbetadrI aircraft_->ClfbetadrI
810 /* Variables (token2) ===========================================*/
811 /* Cn ============ Aerodynamic n-moment quantities (lateral) ====*/
813 map <string,int> Cn_map;
814 #define Cn_map aircraft_->Cn_map
816 double Cno, Cn_beta, Cn_p, Cn_r, Cn_da, Cn_dr, Cn_q, Cn_b3;
817 #define Cno aircraft_->Cno
818 #define Cn_beta aircraft_->Cn_beta
819 #define Cn_p aircraft_->Cn_p
820 #define Cn_r aircraft_->Cn_r
821 #define Cn_da aircraft_->Cn_da
822 #define Cn_dr aircraft_->Cn_dr
823 #define Cn_q aircraft_->Cn_q
824 #define Cn_b3 aircraft_->Cn_b3
826 double Cnfada_aArray[100][100];
827 double Cnfada_daArray[100];
828 double Cnfada_CnArray[100][100];
829 int Cnfada_nAlphaArray[100];
832 #define Cnfada aircraft_->Cnfada
833 #define Cnfada_aArray aircraft_->Cnfada_aArray
834 #define Cnfada_daArray aircraft_->Cnfada_daArray
835 #define Cnfada_CnArray aircraft_->Cnfada_CnArray
836 #define Cnfada_nAlphaArray aircraft_->Cnfada_nAlphaArray
837 #define Cnfada_nda aircraft_->Cnfada_nda
838 #define CnfadaI aircraft_->CnfadaI
840 double Cnfbetadr_betaArray[100][100];
841 double Cnfbetadr_drArray[100];
842 double Cnfbetadr_CnArray[100][100];
843 int Cnfbetadr_nBetaArray[100];
846 #define Cnfbetadr aircraft_->Cnfbetadr
847 #define Cnfbetadr_betaArray aircraft_->Cnfbetadr_betaArray
848 #define Cnfbetadr_drArray aircraft_->Cnfbetadr_drArray
849 #define Cnfbetadr_CnArray aircraft_->Cnfbetadr_CnArray
850 #define Cnfbetadr_nBetaArray aircraft_->Cnfbetadr_nBetaArray
851 #define Cnfbetadr_ndr aircraft_->Cnfbetadr_ndr
852 #define CnfbetadrI aircraft_->CnfbetadrI
855 /* Variables (token2) ===========================================*/
856 /* gear ========== Landing gear model quantities ================*/
858 map <string,int> gear_map;
860 #define gear_map aircraft_->gear_map
862 bool gear_model[MAX_GEAR];
863 SCALAR D_gear_v[MAX_GEAR][3];
864 SCALAR cgear[MAX_GEAR];
865 SCALAR kgear[MAX_GEAR];
866 SCALAR muGear[MAX_GEAR];
867 SCALAR strutLength[MAX_GEAR];
868 #define D_gear_v aircraft_->D_gear_v
869 #define gear_model aircraft_->gear_model
870 #define cgear aircraft_->cgear
871 #define kgear aircraft_->kgear
872 #define muGear aircraft_->muGear
873 #define strutLength aircraft_->strutLength
876 /* Variables (token2) ===========================================*/
877 /* ice =========== Ice model quantities ======================== */
879 map <string,int> ice_map;
880 #define ice_map aircraft_->ice_map
882 bool ice_model, ice_on, beta_model;
884 double transientTime;
885 double eta_ice_final;
889 #define ice_model aircraft_->ice_model
890 #define ice_on aircraft_->ice_on
891 #define beta_model aircraft_->beta_model
892 #define iceTime aircraft_->iceTime
893 #define transientTime aircraft_->transientTime
894 #define eta_ice_final aircraft_->eta_ice_final
895 #define eta_ice aircraft_->eta_ice
896 #define x_probe_wing aircraft_->x_probe_wing
897 #define x_probe_tail aircraft_->x_probe_tail
898 double kCDo, kCDK, kCD_a, kCD_adot, kCD_q, kCD_de;
899 double CDo_clean, CDK_clean, CD_a_clean, CD_adot_clean, CD_q_clean, CD_de_clean;
900 #define kCDo aircraft_->kCDo
901 #define kCDK aircraft_->kCDK
902 #define kCD_a aircraft_->kCD_a
903 #define kCD_adot aircraft_->kCD_adot
904 #define kCD_q aircraft_->kCD_q
905 #define kCD_de aircraft_->kCD_de
906 #define CDo_clean aircraft_->CDo_clean
907 #define CDK_clean aircraft_->CDK_clean
908 #define CD_a_clean aircraft_->CD_a_clean
909 #define CD_adot_clean aircraft_->CD_adot_clean
910 #define CD_q_clean aircraft_->CD_q_clean
911 #define CD_de_clean aircraft_->CD_de_clean
912 double kCXo, kCXK, kCX_a, kCX_a2, kCX_a3, kCX_adot;
913 double kCX_q, kCX_de, kCX_dr, kCX_df, kCX_adf;
914 double CXo_clean, CXK_clean, CX_a_clean, CX_a2_clean, CX_a3_clean, CX_adot_clean;
915 double CX_q_clean, CX_de_clean, CX_dr_clean, CX_df_clean, CX_adf_clean;
916 #define kCXo aircraft_->kCXo
917 #define kCXK aircraft_->kCXK
918 #define kCX_a aircraft_->kCX_a
919 #define kCX_a2 aircraft_->kCX_a2
920 #define kCX_a3 aircraft_->kCX_a3
921 #define kCX_adot aircraft_->kCX_adot
922 #define kCX_q aircraft_->kCX_q
923 #define kCX_de aircraft_->kCX_de
924 #define kCX_dr aircraft_->kCX_dr
925 #define kCX_df aircraft_->kCX_df
926 #define kCX_adf aircraft_->kCX_adf
927 #define CXo_clean aircraft_->CXo_clean
928 #define CXK_clean aircraft_->CXK_clean
929 #define CX_a_clean aircraft_->CX_a_clean
930 #define CX_a2_clean aircraft_->CX_a2_clean
931 #define CX_a3_clean aircraft_->CX_a3_clean
932 #define CX_adot_clean aircraft_->CX_adot_clean
933 #define CX_q_clean aircraft_->CX_q_clean
934 #define CX_de_clean aircraft_->CX_de_clean
935 #define CX_dr_clean aircraft_->CX_dr_clean
936 #define CX_df_clean aircraft_->CX_df_clean
937 #define CX_adf_clean aircraft_->CX_adf_clean
938 double kCLo, kCL_a, kCL_adot, kCL_q, kCL_de;
939 double CLo_clean, CL_a_clean, CL_adot_clean, CL_q_clean, CL_de_clean;
940 #define kCLo aircraft_->kCLo
941 #define kCL_a aircraft_->kCL_a
942 #define kCL_adot aircraft_->kCL_adot
943 #define kCL_q aircraft_->kCL_q
944 #define kCL_de aircraft_->kCL_de
945 #define CLo_clean aircraft_->CLo_clean
946 #define CL_a_clean aircraft_->CL_a_clean
947 #define CL_adot_clean aircraft_->CL_adot_clean
948 #define CL_q_clean aircraft_->CL_q_clean
949 #define CL_de_clean aircraft_->CL_de_clean
950 double kCZo, kCZ_a, kCZ_a2, kCZ_a3, kCZ_adot, kCZ_q, kCZ_de, kCZ_deb2, kCZ_df, kCZ_adf;
951 double CZo_clean, CZ_a_clean, CZ_a2_clean, CZ_a3_clean, CZ_adot_clean;
952 double CZ_q_clean, CZ_de_clean, CZ_deb2_clean, CZ_df_clean, CZ_adf_clean;
953 #define kCZo aircraft_->kCZo
954 #define kCZ_a aircraft_->kCZ_a
955 #define kCZ_a2 aircraft_->kCZ_a2
956 #define kCZ_a3 aircraft_->kCZ_a3
957 #define kCZ_adot aircraft_->kCZ_adot
958 #define kCZ_q aircraft_->kCZ_q
959 #define kCZ_de aircraft_->kCZ_de
960 #define kCZ_deb2 aircraft_->kCZ_deb2
961 #define kCZ_df aircraft_->kCZ_df
962 #define kCZ_adf aircraft_->kCZ_adf
963 #define CZo_clean aircraft_->CZo_clean
964 #define CZ_a_clean aircraft_->CZ_a_clean
965 #define CZ_a2_clean aircraft_->CZ_a2_clean
966 #define CZ_a3_clean aircraft_->CZ_a3_clean
967 #define CZ_adot_clean aircraft_->CZ_adot_clean
968 #define CZ_q_clean aircraft_->CZ_q_clean
969 #define CZ_de_clean aircraft_->CZ_de_clean
970 #define CZ_deb2_clean aircraft_->CZ_deb2_clean
971 #define CZ_df_clean aircraft_->CZ_df_clean
972 #define CZ_adf_clean aircraft_->CZ_adf_clean
973 double kCmo, kCm_a, kCm_a2, kCm_adot, kCm_q, kCm_de, kCm_b2, kCm_r, kCm_df;
974 double Cmo_clean, Cm_a_clean, Cm_a2_clean, Cm_adot_clean, Cm_q_clean;
975 double Cm_de_clean, Cm_b2_clean, Cm_r_clean, Cm_df_clean;
976 #define kCmo aircraft_->kCmo
977 #define kCm_a aircraft_->kCm_a
978 #define kCm_a2 aircraft_->kCm_a2
979 #define kCm_adot aircraft_->kCm_adot
980 #define kCm_q aircraft_->kCm_q
981 #define kCm_de aircraft_->kCm_de
982 #define kCm_b2 aircraft_->kCm_b2
983 #define kCm_r aircraft_->kCm_r
984 #define kCm_df aircraft_->kCm_df
985 #define Cmo_clean aircraft_->Cmo_clean
986 #define Cm_a_clean aircraft_->Cm_a_clean
987 #define Cm_a2_clean aircraft_->Cm_a2_clean
988 #define Cm_adot_clean aircraft_->Cm_adot_clean
989 #define Cm_q_clean aircraft_->Cm_q_clean
990 #define Cm_de_clean aircraft_->Cm_de_clean
991 #define Cm_b2_clean aircraft_->Cm_b2_clean
992 #define Cm_r_clean aircraft_->Cm_r_clean
993 #define Cm_df_clean aircraft_->Cm_df_clean
994 double kCYo, kCY_beta, kCY_p, kCY_r, kCY_da, kCY_dr, kCY_dra, kCY_bdot;
995 double CYo_clean, CY_beta_clean, CY_p_clean, CY_r_clean, CY_da_clean;
996 double CY_dr_clean, CY_dra_clean, CY_bdot_clean;
997 #define kCYo aircraft_->kCYo
998 #define kCY_beta aircraft_->kCY_beta
999 #define kCY_p aircraft_->kCY_p
1000 #define kCY_r aircraft_->kCY_r
1001 #define kCY_da aircraft_->kCY_da
1002 #define kCY_dr aircraft_->kCY_dr
1003 #define kCY_dra aircraft_->kCY_dra
1004 #define kCY_bdot aircraft_->kCY_bdot
1005 #define CYo_clean aircraft_->CYo_clean
1006 #define CY_beta_clean aircraft_->CY_beta_clean
1007 #define CY_p_clean aircraft_->CY_p_clean
1008 #define CY_r_clean aircraft_->CY_r_clean
1009 #define CY_da_clean aircraft_->CY_da_clean
1010 #define CY_dr_clean aircraft_->CY_dr_clean
1011 #define CY_dra_clean aircraft_->CY_dra_clean
1012 #define CY_bdot_clean aircraft_->CY_bdot_clean
1013 double kClo, kCl_beta, kCl_p, kCl_r, kCl_da, kCl_dr, kCl_daa;
1014 double Clo_clean, Cl_beta_clean, Cl_p_clean, Cl_r_clean, Cl_da_clean;
1015 double Cl_dr_clean, Cl_daa_clean;
1016 #define kClo aircraft_->kClo
1017 #define kCl_beta aircraft_->kCl_beta
1018 #define kCl_p aircraft_->kCl_p
1019 #define kCl_r aircraft_->kCl_r
1020 #define kCl_da aircraft_->kCl_da
1021 #define kCl_dr aircraft_->kCl_dr
1022 #define kCl_daa aircraft_->kCl_daa
1023 #define Clo_clean aircraft_->Clo_clean
1024 #define Cl_beta_clean aircraft_->Cl_beta_clean
1025 #define Cl_p_clean aircraft_->Cl_p_clean
1026 #define Cl_r_clean aircraft_->Cl_r_clean
1027 #define Cl_da_clean aircraft_->Cl_da_clean
1028 #define Cl_dr_clean aircraft_->Cl_dr_clean
1029 #define Cl_daa_clean aircraft_->Cl_daa_clean
1030 double kCno, kCn_beta, kCn_p, kCn_r, kCn_da, kCn_dr, kCn_q, kCn_b3;
1031 double Cno_clean, Cn_beta_clean, Cn_p_clean, Cn_r_clean, Cn_da_clean;
1032 double Cn_dr_clean, Cn_q_clean, Cn_b3_clean;
1033 #define kCno aircraft_->kCno
1034 #define kCn_beta aircraft_->kCn_beta
1035 #define kCn_p aircraft_->kCn_p
1036 #define kCn_r aircraft_->kCn_r
1037 #define kCn_da aircraft_->kCn_da
1038 #define kCn_dr aircraft_->kCn_dr
1039 #define kCn_q aircraft_->kCn_q
1040 #define kCn_b3 aircraft_->kCn_b3
1041 #define Cno_clean aircraft_->Cno_clean
1042 #define Cn_beta_clean aircraft_->Cn_beta_clean
1043 #define Cn_p_clean aircraft_->Cn_p_clean
1044 #define Cn_r_clean aircraft_->Cn_r_clean
1045 #define Cn_da_clean aircraft_->Cn_da_clean
1046 #define Cn_dr_clean aircraft_->Cn_dr_clean
1047 #define Cn_q_clean aircraft_->Cn_q_clean
1048 #define Cn_b3_clean aircraft_->Cn_b3_clean
1051 /* Variables (token2) ===========================================*/
1052 /* record ======== Record desired quantites to file =============*/
1054 map <string,int> record_map;
1055 #define record_map aircraft_->record_map
1057 /***** Angles ******/
1058 double Alpha_deg, Alpha_dot_deg, Beta_deg, Beta_dot_deg;
1059 #define Alpha_deg aircraft_->Alpha_deg
1060 #define Alpha_dot_deg aircraft_->Alpha_dot_deg
1061 #define Beta_deg aircraft_->Beta_deg
1062 #define Beta_dot_deg aircraft_->Beta_dot_deg
1063 double Gamma_vert_deg, Gamma_horiz_deg;
1064 #define Gamma_vert_deg aircraft_->Gamma_vert_deg
1065 #define Gamma_horiz_deg aircraft_->Gamma_horiz_deg
1067 /** Control Inputs **/
1068 double Long_trim_deg, elevator_tab, elevator_deg, aileron_deg, rudder_deg;
1069 #define Long_trim_deg aircraft_->Long_trim_deg
1070 #define elevator_tab aircraft_->elevator_tab
1071 #define elevator_deg aircraft_->elevator_deg
1072 #define aileron_deg aircraft_->aileron_deg
1073 #define rudder_deg aircraft_->rudder_deg
1075 #define flap_deg aircraft_->flap_deg
1077 /***** Forces ******/
1078 double F_X_wind, F_Y_wind, F_Z_wind;
1079 #define F_X_wind aircraft_->F_X_wind
1080 #define F_Y_wind aircraft_->F_Y_wind
1081 #define F_Z_wind aircraft_->F_Z_wind
1082 double Lift_clean_wing, Lift_iced_wing;
1083 double Lift_clean_tail, Lift_iced_tail;
1084 #define Lift_clean_wing aircraft_->Lift_clean_wing
1085 #define Lift_iced_wing aircraft_->Lift_iced_wing
1086 #define Lift_clean_tail aircraft_->Lift_clean_tail
1087 #define Lift_iced_tail aircraft_->Lift_iced_tail
1088 double Gamma_clean_wing, Gamma_iced_wing;
1089 double Gamma_clean_tail, Gamma_iced_tail;
1090 #define Gamma_clean_wing aircraft_->Gamma_clean_wing
1091 #define Gamma_iced_wing aircraft_->Gamma_iced_wing
1092 #define Gamma_clean_tail aircraft_->Gamma_clean_tail
1093 #define Gamma_iced_tail aircraft_->Gamma_iced_tail
1094 double w_clean_wing, w_iced_wing;
1095 double w_clean_tail, w_iced_tail;
1096 #define w_clean_wing aircraft_->w_clean_wing
1097 #define w_iced_wing aircraft_->w_iced_wing
1098 #define w_clean_tail aircraft_->w_clean_tail
1099 #define w_iced_tail aircraft_->w_iced_tail
1100 double V_total_clean_wing, V_total_iced_wing;
1101 double V_total_clean_tail, V_total_iced_tail;
1102 #define V_total_clean_wing aircraft_->V_total_clean_wing
1103 #define V_total_iced_wing aircraft_->V_total_iced_wing
1104 #define V_total_clean_tail aircraft_->V_total_clean_tail
1105 #define V_total_iced_tail aircraft_->V_total_iced_tail
1106 double beta_flow_clean_wing, beta_flow_clean_wing_deg;
1107 double beta_flow_iced_wing, beta_flow_iced_wing_deg;
1108 double beta_flow_clean_tail, beta_flow_clean_tail_deg;
1109 double beta_flow_iced_tail, beta_flow_iced_tail_deg;
1110 #define beta_flow_clean_wing aircraft_->beta_flow_clean_wing
1111 #define beta_flow_clean_wing_deg aircraft_->beta_flow_clean_wing_deg
1112 #define beta_flow_iced_wing aircraft_->beta_flow_iced_wing
1113 #define beta_flow_iced_wing_deg aircraft_->beta_flow_iced_wing_deg
1114 #define beta_flow_clean_tail aircraft_->beta_flow_clean_tail
1115 #define beta_flow_clean_tail_deg aircraft_->beta_flow_clean_tail_deg
1116 #define beta_flow_iced_tail aircraft_->beta_flow_iced_tail
1117 #define beta_flow_iced_tail_deg aircraft_->beta_flow_iced_tail_deg
1118 double Dbeta_flow_wing, Dbeta_flow_wing_deg;
1119 double Dbeta_flow_tail, Dbeta_flow_tail_deg;
1120 #define Dbeta_flow_wing aircraft_->Dbeta_flow_wing
1121 #define Dbeta_flow_wing_deg aircraft_->Dbeta_flow_wing_deg
1122 #define Dbeta_flow_tail aircraft_->Dbeta_flow_tail
1123 #define Dbeta_flow_tail_deg aircraft_->Dbeta_flow_tail_deg
1124 double pct_beta_flow_wing, pct_beta_flow_tail;
1125 #define pct_beta_flow_wing aircraft_->pct_beta_flow_wing
1126 #define pct_beta_flow_tail aircraft_->pct_beta_flow_tail
1129 /* Variables (token2) ===========================================*/
1130 /* misc ========== Miscellaneous input commands =================*/
1132 map <string,int> misc_map;
1133 #define misc_map aircraft_->misc_map
1135 double simpleHingeMomentCoef;
1136 #define simpleHingeMomentCoef aircraft_->simpleHingeMomentCoef
1138 double dfTimefdf_dfArray[100];
1139 double dfTimefdf_TimeArray[100];
1141 #define dfTimefdf aircraft_->dfTimefdf
1142 #define dfTimefdf_dfArray aircraft_->dfTimefdf_dfArray
1143 #define dfTimefdf_TimeArray aircraft_->dfTimefdf_TimeArray
1144 #define dfTimefdf_ndf aircraft_->dfTimefdf_ndf
1147 /* Other variables (not tokens) =================================*/
1149 double convert_x, convert_y, convert_z;
1150 #define convert_x aircraft_->convert_x
1151 #define convert_y aircraft_->convert_y
1152 #define convert_z aircraft_->convert_z
1154 double cbar_2U, b_2U, ch_2U;
1155 #define cbar_2U aircraft_->cbar_2U
1156 #define b_2U aircraft_->b_2U
1157 #define ch_2U aircraft_->ch_2U
1160 double dfArray[100];
1161 double TimeArray[100];
1162 #define ndf aircraft_->ndf
1163 #define dfArray aircraft_->dfArray
1164 #define TimeArray aircraft_->TimeArray
1169 #define fout aircraft_->fout
1174 extern AIRCRAFT *aircraft_; // usually defined in the first program that includes uiuc_aircraft.h
1176 #endif // endif _AIRCRAFT_H