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