1 /**********************************************************************
3 FILENAME: uiuc_menu.cpp
5 ----------------------------------------------------------------------
7 DESCRIPTION: reads input file for specified aircraft and creates
8 approporiate data storage space
10 ----------------------------------------------------------------------
14 ----------------------------------------------------------------------
16 REFERENCES: based on "menu reader" format of Michael Selig
18 ----------------------------------------------------------------------
20 HISTORY: 01/29/2000 initial release
21 02/18/2000 (JS) added 1D data file capability for
22 CL(a) and CD(a) -- calls
24 02/22/2000 (JS) added ice map functions
25 02/29/2000 (JS) added 2D data file capability for
26 CL(a,de), CD(a,de), Cm(a,de), CY(a,da),
27 CY(beta,dr), Cl(a,da), Cl(beta,dr),
28 Cn(a,da), Cn(beta,dr) -- calls
30 02/02/2000 (JS) added record options for 1D and
31 2D interpolated variables
32 03/28/2000 (JS) streamlined conversion factors for
33 file readers -- since they are global
34 variables, it is not necessary to put
35 them in the function calls
36 03/29/2000 (JS) added Cmfa and Weight flags;
37 added misc map; added Dx_cg (etc) to init
39 04/01/2000 (JS) added throttle, longitudinal, lateral,
40 and rudder inputs to record map
41 04/05/2000 (JS) added Altitude to init and record
42 maps; added zero_Long_trim to
45 ----------------------------------------------------------------------
47 AUTHOR(S): Bipin Sehgal <bsehgal@uiuc.edu>
48 Jeff Scott <jscott@mail.com>
49 Michael Selig <m-selig@uiuc.edu>
51 ----------------------------------------------------------------------
55 ----------------------------------------------------------------------
59 ----------------------------------------------------------------------
63 ----------------------------------------------------------------------
65 CALLED BY: uiuc_wrapper.cpp
67 ----------------------------------------------------------------------
69 CALLS TO: aircraft.dat
70 tabulated data files (if needed)
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 **********************************************************************/
92 #include "uiuc_menu.h"
95 bool check_float(string &token)
98 istrstream stream(token.c_str());
99 return (stream >> value);
103 void uiuc_menu( string aircraft_name )
107 int token_value_recordRate;
108 int token_value_convert1, token_value_convert2, token_value_convert3;
118 /* the following default setting should eventually be moved to a default or uiuc_init routine */
120 recordRate = 1; /* record every time step, default */
121 recordStartTime = 0; /* record from beginning of simulation */
123 /* set speed at which dynamic pressure terms will be accounted for,
124 since if velocity is too small, coefficients will go to infinity */
125 dyn_on_speed = 33; /* 20 kts, default */
129 /* Read the file and get the list of commands */
130 airplane = new ParseFile(aircraft_name); /* struct that includes all lines of the input file */
131 command_list = airplane -> getCommands();
132 /* structs to include all parts included in the input file for specific keyword groups */
133 initParts = new ParseFile();
134 geometryParts = new ParseFile();
135 massParts = new ParseFile();
136 engineParts = new ParseFile();
137 aeroDragParts = new ParseFile();
138 aeroLiftParts = new ParseFile();
139 aeroPitchParts = new ParseFile();
140 aeroSideforceParts = new ParseFile();
141 aeroRollParts = new ParseFile();
142 aeroYawParts = new ParseFile();
143 gearParts = new ParseFile();
144 recordParts = new ParseFile();
146 if (command_list.begin() == command_list.end())
148 cerr << "UIUC ERROR: File " << aircraft_name <<" does not exist" << endl;
152 for (LIST command_line = command_list.begin(); command_line!=command_list.end(); ++command_line)
154 cout << *command_line << endl;
156 linetoken1 = airplane -> getToken (*command_line, 1);
157 linetoken2 = airplane -> getToken (*command_line, 2);
158 linetoken3 = airplane -> getToken (*command_line, 3);
159 linetoken4 = airplane -> getToken (*command_line, 4);
160 linetoken5 = airplane -> getToken (*command_line, 5);
161 linetoken6 = airplane -> getToken (*command_line, 6);
163 istrstream token3(linetoken3.c_str());
164 istrstream token4(linetoken4.c_str());
165 istrstream token5(linetoken5.c_str());
166 istrstream token6(linetoken6.c_str());
168 switch (Keyword_map[linetoken1])
172 switch(init_map[linetoken2])
176 if (check_float(linetoken3))
177 token3 >> token_value;
179 uiuc_warnings_errors(1, *command_line);
181 Dx_pilot = token_value;
182 initParts -> storeCommands (*command_line);
187 if (check_float(linetoken3))
188 token3 >> token_value;
190 uiuc_warnings_errors(1, *command_line);
192 Dy_pilot = token_value;
193 initParts -> storeCommands (*command_line);
198 if (check_float(linetoken3))
199 token3 >> token_value;
201 uiuc_warnings_errors(1, *command_line);
203 Dz_pilot = token_value;
204 initParts -> storeCommands (*command_line);
209 if (check_float(linetoken3))
210 token3 >> token_value;
212 uiuc_warnings_errors(1, *command_line);
215 initParts -> storeCommands (*command_line);
220 if (check_float(linetoken3))
221 token3 >> token_value;
223 uiuc_warnings_errors(1, *command_line);
226 initParts -> storeCommands (*command_line);
231 if (check_float(linetoken3))
232 token3 >> token_value;
234 uiuc_warnings_errors(1, *command_line);
237 initParts -> storeCommands (*command_line);
242 if (check_float(linetoken3))
243 token3 >> token_value;
245 uiuc_warnings_errors(1, *command_line);
247 Altitude = token_value;
248 initParts -> storeCommands (*command_line);
253 if (check_float(linetoken3))
254 token3 >> token_value;
256 uiuc_warnings_errors(1, *command_line);
258 V_north = token_value;
259 initParts -> storeCommands (*command_line);
264 initParts -> storeCommands (*command_line);
265 if (check_float(linetoken3))
266 token3 >> token_value;
268 uiuc_warnings_errors(1, *command_line);
270 V_east = token_value;
275 if (check_float(linetoken3))
276 token3 >> token_value;
278 uiuc_warnings_errors(1, *command_line);
280 V_down = token_value;
281 initParts -> storeCommands (*command_line);
286 if (check_float(linetoken3))
287 token3 >> token_value;
289 uiuc_warnings_errors(1, *command_line);
291 P_body = token_value;
292 initParts -> storeCommands (*command_line);
297 if (check_float(linetoken3))
298 token3 >> token_value;
300 uiuc_warnings_errors(1, *command_line);
302 Q_body = token_value;
303 initParts -> storeCommands (*command_line);
308 if (check_float(linetoken3))
309 token3 >> token_value;
311 uiuc_warnings_errors(1, *command_line);
313 R_body = token_value;
314 initParts -> storeCommands (*command_line);
319 if (check_float(linetoken3))
320 token3 >> token_value;
322 uiuc_warnings_errors(1, *command_line);
325 initParts -> storeCommands (*command_line);
330 if (check_float(linetoken3))
331 token3 >> token_value;
333 uiuc_warnings_errors(1, *command_line);
336 initParts -> storeCommands (*command_line);
341 if (check_float(linetoken3))
342 token3 >> token_value;
344 uiuc_warnings_errors(1, *command_line);
347 initParts -> storeCommands (*command_line);
352 if (check_float(linetoken3))
353 token3 >> token_value;
355 uiuc_warnings_errors(1, *command_line);
357 Long_trim = token_value;
358 initParts -> storeCommands (*command_line);
361 case recordRate_flag:
363 //can't use check_float since variable is integer
364 token3 >> token_value_recordRate;
365 recordRate = 120 / token_value_recordRate;
368 case recordStartTime_flag:
370 if (check_float(linetoken3))
371 token3 >> token_value;
373 uiuc_warnings_errors(1, *command_line);
375 recordStartTime = token_value;
378 case nondim_rate_V_rel_wind_flag:
380 nondim_rate_V_rel_wind = true;
383 case dyn_on_speed_flag:
385 if (check_float(linetoken3))
386 token3 >> token_value;
388 uiuc_warnings_errors(1, *command_line);
390 dyn_on_speed = token_value;
395 uiuc_warnings_errors(2, *command_line);
405 switch(geometry_map[linetoken2])
409 if (check_float(linetoken3))
410 token3 >> token_value;
412 uiuc_warnings_errors(1, *command_line);
415 geometryParts -> storeCommands (*command_line);
420 if (check_float(linetoken3))
421 token3 >> token_value;
423 uiuc_warnings_errors(1, *command_line);
426 geometryParts -> storeCommands (*command_line);
431 if (check_float(linetoken3))
432 token3 >> token_value;
434 uiuc_warnings_errors(1, *command_line);
437 geometryParts -> storeCommands (*command_line);
442 if (check_float(linetoken3))
443 token3 >> token_value;
445 uiuc_warnings_errors(1, *command_line);
448 geometryParts -> storeCommands (*command_line);
453 if (check_float(linetoken3))
454 token3 >> token_value;
456 uiuc_warnings_errors(1, *command_line);
459 geometryParts -> storeCommands (*command_line);
464 if (check_float(linetoken3))
465 token3 >> token_value;
467 uiuc_warnings_errors(1, *command_line);
470 geometryParts -> storeCommands (*command_line);
475 if (check_float(linetoken3))
476 token3 >> token_value;
478 uiuc_warnings_errors(1, *command_line);
481 geometryParts -> storeCommands (*command_line);
486 uiuc_warnings_errors(2, *command_line);
491 } // end geometry map
494 case controlSurface_flag:
496 switch(controlSurface_map[linetoken2])
500 if (check_float(linetoken3))
501 token3 >> token_value;
503 uiuc_warnings_errors(1, *command_line);
507 if (check_float(linetoken4))
508 token4 >> token_value;
510 uiuc_warnings_errors(1, *command_line);
517 if (check_float(linetoken3))
518 token3 >> token_value;
520 uiuc_warnings_errors(1, *command_line);
524 if (check_float(linetoken4))
525 token4 >> token_value;
527 uiuc_warnings_errors(1, *command_line);
534 if (check_float(linetoken3))
535 token3 >> token_value;
537 uiuc_warnings_errors(1, *command_line);
541 if (check_float(linetoken4))
542 token4 >> token_value;
544 uiuc_warnings_errors(1, *command_line);
549 case set_Long_trim_flag:
551 if (check_float(linetoken3))
552 token3 >> token_value;
554 uiuc_warnings_errors(1, *command_line);
556 set_Long_trim = true;
557 elevator_tab = token_value;
560 case set_Long_trim_deg_flag:
562 if (check_float(linetoken3))
563 token3 >> token_value;
565 uiuc_warnings_errors(1, *command_line);
567 set_Long_trim = true;
568 elevator_tab = token_value * DEG_TO_RAD;
571 case zero_Long_trim_flag:
573 zero_Long_trim = true;
576 case elevator_step_flag:
578 // set step input flag
579 elevator_step = true;
581 // read in step angle in degrees and convert
582 if (check_float(linetoken3))
583 token3 >> token_value;
585 uiuc_warnings_errors(1, *command_line);
587 elevator_step_angle = token_value * DEG_TO_RAD;
589 // read in step start time
590 if (check_float(linetoken4))
591 token4 >> token_value;
593 uiuc_warnings_errors(1, *command_line);
595 elevator_step_startTime = token_value;
598 case elevator_singlet_flag:
600 // set singlet input flag
601 elevator_singlet = true;
603 // read in singlet angle in degrees and convert
604 if (check_float(linetoken3))
605 token3 >> token_value;
607 uiuc_warnings_errors(1, *command_line);
609 elevator_singlet_angle = token_value * DEG_TO_RAD;
611 // read in singlet start time
612 if (check_float(linetoken4))
613 token4 >> token_value;
615 uiuc_warnings_errors(1, *command_line);
617 elevator_singlet_startTime = token_value;
619 // read in singlet duration
620 if (check_float(linetoken5))
621 token5 >> token_value;
623 uiuc_warnings_errors(1, *command_line);
625 elevator_singlet_duration = token_value;
628 case elevator_doublet_flag:
630 // set doublet input flag
631 elevator_doublet = true;
633 // read in doublet angle in degrees and convert
634 if (check_float(linetoken3))
635 token3 >> token_value;
637 uiuc_warnings_errors(1, *command_line);
639 elevator_doublet_angle = token_value * DEG_TO_RAD;
641 // read in doublet start time
642 if (check_float(linetoken4))
643 token4 >> token_value;
645 uiuc_warnings_errors(1, *command_line);
647 elevator_doublet_startTime = token_value;
649 // read in doublet duration
650 if (check_float(linetoken5))
651 token5 >> token_value;
653 uiuc_warnings_errors(1, *command_line);
655 elevator_doublet_duration = token_value;
658 case elevator_input_flag:
660 elevator_input = true;
661 elevator_input_file = linetoken3;
662 token4 >> token_value_convert1;
663 token5 >> token_value_convert2;
664 convert_y = uiuc_convert(token_value_convert1);
665 convert_x = uiuc_convert(token_value_convert2);
666 uiuc_1DdataFileReader(elevator_input_file,
667 elevator_input_timeArray,
668 elevator_input_deArray,
669 elevator_input_ntime);
670 token6 >> token_value;
671 elevator_input_startTime = token_value;
676 uiuc_warnings_errors(2, *command_line);
681 } // end controlSurface map
686 switch(mass_map[linetoken2])
690 if (check_float(linetoken3))
691 token3 >> token_value;
693 uiuc_warnings_errors(1, *command_line);
695 Weight = token_value;
696 Mass = Weight * INVG;
697 massParts -> storeCommands (*command_line);
702 if (check_float(linetoken3))
703 token3 >> token_value;
705 uiuc_warnings_errors(1, *command_line);
708 massParts -> storeCommands (*command_line);
713 if (check_float(linetoken3))
714 token3 >> token_value;
716 uiuc_warnings_errors(1, *command_line);
719 massParts -> storeCommands (*command_line);
724 if (check_float(linetoken3))
725 token3 >> token_value;
727 uiuc_warnings_errors(1, *command_line);
730 massParts -> storeCommands (*command_line);
735 if (check_float(linetoken3))
736 token3 >> token_value;
738 uiuc_warnings_errors(1, *command_line);
741 massParts -> storeCommands (*command_line);
746 if (check_float(linetoken3))
747 token3 >> token_value;
749 uiuc_warnings_errors(1, *command_line);
752 massParts -> storeCommands (*command_line);
757 uiuc_warnings_errors(2, *command_line);
767 switch(engine_map[linetoken2])
769 case simpleSingle_flag:
771 if (check_float(linetoken3))
772 token3 >> token_value;
774 uiuc_warnings_errors(1, *command_line);
776 simpleSingleMaxThrust = token_value;
777 engineParts -> storeCommands (*command_line);
782 engineParts -> storeCommands (*command_line);
787 engineParts -> storeCommands (*command_line);
792 uiuc_warnings_errors(2, *command_line);
802 switch(CD_map[linetoken2])
806 if (check_float(linetoken3))
807 token3 >> token_value;
809 uiuc_warnings_errors(1, *command_line);
813 aeroDragParts -> storeCommands (*command_line);
818 if (check_float(linetoken3))
819 token3 >> token_value;
821 uiuc_warnings_errors(1, *command_line);
825 aeroDragParts -> storeCommands (*command_line);
830 if (check_float(linetoken3))
831 token3 >> token_value;
833 uiuc_warnings_errors(1, *command_line);
837 aeroDragParts -> storeCommands (*command_line);
842 if (check_float(linetoken3))
843 token3 >> token_value;
845 uiuc_warnings_errors(1, *command_line);
847 CD_adot = token_value;
848 CD_adot_clean = CD_adot;
849 aeroDragParts -> storeCommands (*command_line);
854 if (check_float(linetoken3))
855 token3 >> token_value;
857 uiuc_warnings_errors(1, *command_line);
861 aeroDragParts -> storeCommands (*command_line);
866 if (check_float(linetoken3))
867 token3 >> token_value;
869 uiuc_warnings_errors(1, *command_line);
872 aeroDragParts -> storeCommands (*command_line);
877 if (check_float(linetoken3))
878 token3 >> token_value;
880 uiuc_warnings_errors(1, *command_line);
884 aeroDragParts -> storeCommands (*command_line);
890 token4 >> token_value_convert1;
891 token5 >> token_value_convert2;
892 convert_y = uiuc_convert(token_value_convert1);
893 convert_x = uiuc_convert(token_value_convert2);
894 /* call 1D File Reader with file name (CDfa) and conversion
895 factors; function returns array of alphas (aArray) and
896 corresponding CD values (CDArray) and max number of
897 terms in arrays (nAlpha) */
898 uiuc_1DdataFileReader(CDfa,
902 aeroDragParts -> storeCommands (*command_line);
908 token4 >> token_value_convert1;
909 token5 >> token_value_convert2;
910 convert_y = uiuc_convert(token_value_convert1);
911 convert_x = uiuc_convert(token_value_convert2);
912 /* call 1D File Reader with file name (CDfCL) and conversion
913 factors; function returns array of CLs (CLArray) and
914 corresponding CD values (CDArray) and max number of
915 terms in arrays (nCL) */
916 uiuc_1DdataFileReader(CDfCL,
920 aeroDragParts -> storeCommands (*command_line);
926 token4 >> token_value_convert1;
927 token5 >> token_value_convert2;
928 token6 >> token_value_convert3;
929 convert_z = uiuc_convert(token_value_convert1);
930 convert_x = uiuc_convert(token_value_convert2);
931 convert_y = uiuc_convert(token_value_convert3);
932 /* call 2D File Reader with file name (CDfade) and
933 conversion factors; function returns array of
934 elevator deflections (deArray) and corresponding
935 alpha (aArray) and delta CD (CDArray) values and
936 max number of terms in alpha arrays (nAlphaArray)
937 and deflection array (nde) */
938 uiuc_2DdataFileReader(CDfade,
944 aeroDragParts -> storeCommands (*command_line);
950 token4 >> token_value_convert1;
951 token5 >> token_value_convert2;
952 convert_y = uiuc_convert(token_value_convert1);
953 convert_x = uiuc_convert(token_value_convert2);
954 /* call 1D File Reader with file name (CDfdf) and conversion
955 factors; function returns array of dfs (dfArray) and
956 corresponding CD values (CDArray) and max number of
957 terms in arrays (ndf) */
958 uiuc_1DdataFileReader(CDfdf,
962 aeroDragParts -> storeCommands (*command_line);
968 token4 >> token_value_convert1;
969 token5 >> token_value_convert2;
970 token6 >> token_value_convert3;
971 convert_z = uiuc_convert(token_value_convert1);
972 convert_x = uiuc_convert(token_value_convert2);
973 convert_y = uiuc_convert(token_value_convert3);
974 /* call 2D File Reader with file name (CDfadf) and
975 conversion factors; function returns array of
976 flap deflections (dfArray) and corresponding
977 alpha (aArray) and delta CD (CDArray) values and
978 max number of terms in alpha arrays (nAlphaArray)
979 and deflection array (ndf) */
980 uiuc_2DdataFileReader(CDfadf,
986 aeroDragParts -> storeCommands (*command_line);
991 if (check_float(linetoken3))
992 token3 >> token_value;
994 uiuc_warnings_errors(1, *command_line);
998 aeroDragParts -> storeCommands (*command_line);
1003 if (check_float(linetoken3))
1004 token3 >> token_value;
1006 uiuc_warnings_errors(1, *command_line);
1010 aeroDragParts -> storeCommands (*command_line);
1015 if (check_float(linetoken3))
1016 token3 >> token_value;
1018 uiuc_warnings_errors(1, *command_line);
1022 aeroDragParts -> storeCommands (*command_line);
1027 if (check_float(linetoken3))
1028 token3 >> token_value;
1030 uiuc_warnings_errors(1, *command_line);
1032 CX_a2 = token_value;
1033 CX_a2_clean = CX_a2;
1034 aeroDragParts -> storeCommands (*command_line);
1039 if (check_float(linetoken3))
1040 token3 >> token_value;
1042 uiuc_warnings_errors(1, *command_line);
1044 CX_a3 = token_value;
1045 CX_a3_clean = CX_a3;
1046 aeroDragParts -> storeCommands (*command_line);
1051 if (check_float(linetoken3))
1052 token3 >> token_value;
1054 uiuc_warnings_errors(1, *command_line);
1056 CX_adot = token_value;
1057 CX_adot_clean = CX_adot;
1058 aeroDragParts -> storeCommands (*command_line);
1063 if (check_float(linetoken3))
1064 token3 >> token_value;
1066 uiuc_warnings_errors(1, *command_line);
1070 aeroDragParts -> storeCommands (*command_line);
1075 if (check_float(linetoken3))
1076 token3 >> token_value;
1078 uiuc_warnings_errors(1, *command_line);
1080 CX_de = token_value;
1081 CX_de_clean = CX_de;
1082 aeroDragParts -> storeCommands (*command_line);
1087 if (check_float(linetoken3))
1088 token3 >> token_value;
1090 uiuc_warnings_errors(1, *command_line);
1092 CX_dr = token_value;
1093 CX_dr_clean = CX_dr;
1094 aeroDragParts -> storeCommands (*command_line);
1099 if (check_float(linetoken3))
1100 token3 >> token_value;
1102 uiuc_warnings_errors(1, *command_line);
1104 CX_df = token_value;
1105 CX_df_clean = CX_df;
1106 aeroDragParts -> storeCommands (*command_line);
1111 if (check_float(linetoken3))
1112 token3 >> token_value;
1114 uiuc_warnings_errors(1, *command_line);
1116 CX_adf = token_value;
1117 CX_adf_clean = CX_adf;
1118 aeroDragParts -> storeCommands (*command_line);
1123 uiuc_warnings_errors(2, *command_line);
1133 switch(CL_map[linetoken2])
1137 if (check_float(linetoken3))
1138 token3 >> token_value;
1140 uiuc_warnings_errors(1, *command_line);
1144 aeroLiftParts -> storeCommands (*command_line);
1149 if (check_float(linetoken3))
1150 token3 >> token_value;
1152 uiuc_warnings_errors(1, *command_line);
1156 aeroLiftParts -> storeCommands (*command_line);
1161 if (check_float(linetoken3))
1162 token3 >> token_value;
1164 uiuc_warnings_errors(1, *command_line);
1166 CL_adot = token_value;
1167 CL_adot_clean = CL_adot;
1168 aeroLiftParts -> storeCommands (*command_line);
1173 if (check_float(linetoken3))
1174 token3 >> token_value;
1176 uiuc_warnings_errors(1, *command_line);
1180 aeroLiftParts -> storeCommands (*command_line);
1185 if (check_float(linetoken3))
1186 token3 >> token_value;
1188 uiuc_warnings_errors(1, *command_line);
1190 CL_ih = token_value;
1191 aeroLiftParts -> storeCommands (*command_line);
1196 if (check_float(linetoken3))
1197 token3 >> token_value;
1199 uiuc_warnings_errors(1, *command_line);
1201 CL_de = token_value;
1202 CL_de_clean = CL_de;
1203 aeroLiftParts -> storeCommands (*command_line);
1209 token4 >> token_value_convert1;
1210 token5 >> token_value_convert2;
1211 convert_y = uiuc_convert(token_value_convert1);
1212 convert_x = uiuc_convert(token_value_convert2);
1213 /* call 1D File Reader with file name (CLfa) and conversion
1214 factors; function returns array of alphas (aArray) and
1215 corresponding CL values (CLArray) and max number of
1216 terms in arrays (nAlpha) */
1217 uiuc_1DdataFileReader(CLfa,
1221 aeroLiftParts -> storeCommands (*command_line);
1226 CLfade = linetoken3;
1227 token4 >> token_value_convert1;
1228 token5 >> token_value_convert2;
1229 token6 >> token_value_convert3;
1230 convert_z = uiuc_convert(token_value_convert1);
1231 convert_x = uiuc_convert(token_value_convert2);
1232 convert_y = uiuc_convert(token_value_convert3);
1233 /* call 2D File Reader with file name (CLfade) and
1234 conversion factors; function returns array of
1235 elevator deflections (deArray) and corresponding
1236 alpha (aArray) and delta CL (CLArray) values and
1237 max number of terms in alpha arrays (nAlphaArray)
1238 and deflection array (nde) */
1239 uiuc_2DdataFileReader(CLfade,
1245 aeroLiftParts -> storeCommands (*command_line);
1251 token4 >> token_value_convert1;
1252 token5 >> token_value_convert2;
1253 convert_y = uiuc_convert(token_value_convert1);
1254 convert_x = uiuc_convert(token_value_convert2);
1255 /* call 1D File Reader with file name (CLfdf) and conversion
1256 factors; function returns array of dfs (dfArray) and
1257 corresponding CL values (CLArray) and max number of
1258 terms in arrays (ndf) */
1259 uiuc_1DdataFileReader(CLfdf,
1263 aeroLiftParts -> storeCommands (*command_line);
1265 // additional variables to streamline flap routine in aerodeflections
1267 int temp_counter = 1;
1268 while (temp_counter <= ndf)
1270 dfArray[temp_counter] = CLfdf_dfArray[temp_counter];
1271 TimeArray[temp_counter] = dfTimefdf_TimeArray[temp_counter];
1278 CLfadf = linetoken3;
1279 token4 >> token_value_convert1;
1280 token5 >> token_value_convert2;
1281 token6 >> token_value_convert3;
1282 convert_z = uiuc_convert(token_value_convert1);
1283 convert_x = uiuc_convert(token_value_convert2);
1284 convert_y = uiuc_convert(token_value_convert3);
1285 /* call 2D File Reader with file name (CLfadf) and
1286 conversion factors; function returns array of
1287 flap deflections (dfArray) and corresponding
1288 alpha (aArray) and delta CL (CLArray) values and
1289 max number of terms in alpha arrays (nAlphaArray)
1290 and deflection array (ndf) */
1291 uiuc_2DdataFileReader(CLfadf,
1297 aeroLiftParts -> storeCommands (*command_line);
1302 if (check_float(linetoken3))
1303 token3 >> token_value;
1305 uiuc_warnings_errors(1, *command_line);
1309 aeroLiftParts -> storeCommands (*command_line);
1314 if (check_float(linetoken3))
1315 token3 >> token_value;
1317 uiuc_warnings_errors(1, *command_line);
1321 aeroLiftParts -> storeCommands (*command_line);
1326 if (check_float(linetoken3))
1327 token3 >> token_value;
1329 uiuc_warnings_errors(1, *command_line);
1331 CZ_a2 = token_value;
1332 CZ_a2_clean = CZ_a2;
1333 aeroLiftParts -> storeCommands (*command_line);
1338 if (check_float(linetoken3))
1339 token3 >> token_value;
1341 uiuc_warnings_errors(1, *command_line);
1343 CZ_a3 = token_value;
1344 CZ_a3_clean = CZ_a3;
1345 aeroLiftParts -> storeCommands (*command_line);
1350 if (check_float(linetoken3))
1351 token3 >> token_value;
1353 uiuc_warnings_errors(1, *command_line);
1355 CZ_adot = token_value;
1356 CZ_adot_clean = CZ_adot;
1357 aeroLiftParts -> storeCommands (*command_line);
1362 if (check_float(linetoken3))
1363 token3 >> token_value;
1365 uiuc_warnings_errors(1, *command_line);
1369 aeroLiftParts -> storeCommands (*command_line);
1374 if (check_float(linetoken3))
1375 token3 >> token_value;
1377 uiuc_warnings_errors(1, *command_line);
1379 CZ_de = token_value;
1380 CZ_de_clean = CZ_de;
1381 aeroLiftParts -> storeCommands (*command_line);
1386 if (check_float(linetoken3))
1387 token3 >> token_value;
1389 uiuc_warnings_errors(1, *command_line);
1391 CZ_deb2 = token_value;
1392 CZ_deb2_clean = CZ_deb2;
1393 aeroLiftParts -> storeCommands (*command_line);
1398 if (check_float(linetoken3))
1399 token3 >> token_value;
1401 uiuc_warnings_errors(1, *command_line);
1403 CZ_df = token_value;
1404 CZ_df_clean = CZ_df;
1405 aeroLiftParts -> storeCommands (*command_line);
1410 if (check_float(linetoken3))
1411 token3 >> token_value;
1413 uiuc_warnings_errors(1, *command_line);
1415 CZ_adf = token_value;
1416 CZ_adf_clean = CZ_adf;
1417 aeroLiftParts -> storeCommands (*command_line);
1422 uiuc_warnings_errors(2, *command_line);
1432 switch(Cm_map[linetoken2])
1436 if (check_float(linetoken3))
1437 token3 >> token_value;
1439 uiuc_warnings_errors(1, *command_line);
1443 aeroPitchParts -> storeCommands (*command_line);
1448 if (check_float(linetoken3))
1449 token3 >> token_value;
1451 uiuc_warnings_errors(1, *command_line);
1455 aeroPitchParts -> storeCommands (*command_line);
1460 if (check_float(linetoken3))
1461 token3 >> token_value;
1463 uiuc_warnings_errors(1, *command_line);
1465 Cm_a2 = token_value;
1466 Cm_a2_clean = Cm_a2;
1467 aeroPitchParts -> storeCommands (*command_line);
1472 if (check_float(linetoken3))
1473 token3 >> token_value;
1475 uiuc_warnings_errors(1, *command_line);
1477 Cm_adot = token_value;
1478 Cm_adot_clean = Cm_adot;
1479 aeroPitchParts -> storeCommands (*command_line);
1484 if (check_float(linetoken3))
1485 token3 >> token_value;
1487 uiuc_warnings_errors(1, *command_line);
1491 aeroPitchParts -> storeCommands (*command_line);
1496 if (check_float(linetoken3))
1497 token3 >> token_value;
1499 uiuc_warnings_errors(1, *command_line);
1501 Cm_ih = token_value;
1502 aeroPitchParts -> storeCommands (*command_line);
1507 if (check_float(linetoken3))
1508 token3 >> token_value;
1510 uiuc_warnings_errors(1, *command_line);
1512 Cm_de = token_value;
1513 Cm_de_clean = Cm_de;
1514 aeroPitchParts -> storeCommands (*command_line);
1519 if (check_float(linetoken3))
1520 token3 >> token_value;
1522 uiuc_warnings_errors(1, *command_line);
1524 Cm_b2 = token_value;
1525 Cm_b2_clean = Cm_b2;
1526 aeroPitchParts -> storeCommands (*command_line);
1531 if (check_float(linetoken3))
1532 token3 >> token_value;
1534 uiuc_warnings_errors(1, *command_line);
1538 aeroPitchParts -> storeCommands (*command_line);
1543 if (check_float(linetoken3))
1544 token3 >> token_value;
1546 uiuc_warnings_errors(1, *command_line);
1548 Cm_df = token_value;
1549 Cm_df_clean = Cm_df;
1550 aeroPitchParts -> storeCommands (*command_line);
1556 token4 >> token_value_convert1;
1557 token5 >> token_value_convert2;
1558 convert_y = uiuc_convert(token_value_convert1);
1559 convert_x = uiuc_convert(token_value_convert2);
1560 /* call 1D File Reader with file name (Cmfa) and conversion
1561 factors; function returns array of alphas (aArray) and
1562 corresponding Cm values (CmArray) and max number of
1563 terms in arrays (nAlpha) */
1564 uiuc_1DdataFileReader(Cmfa,
1568 aeroPitchParts -> storeCommands (*command_line);
1573 Cmfade = linetoken3;
1574 token4 >> token_value_convert1;
1575 token5 >> token_value_convert2;
1576 token6 >> token_value_convert3;
1577 convert_z = uiuc_convert(token_value_convert1);
1578 convert_x = uiuc_convert(token_value_convert2);
1579 convert_y = uiuc_convert(token_value_convert3);
1580 /* call 2D File Reader with file name (Cmfade) and
1581 conversion factors; function returns array of
1582 elevator deflections (deArray) and corresponding
1583 alpha (aArray) and delta Cm (CmArray) values and
1584 max number of terms in alpha arrays (nAlphaArray)
1585 and deflection array (nde) */
1586 uiuc_2DdataFileReader(Cmfade,
1592 aeroPitchParts -> storeCommands (*command_line);
1598 token4 >> token_value_convert1;
1599 token5 >> token_value_convert2;
1600 convert_y = uiuc_convert(token_value_convert1);
1601 convert_x = uiuc_convert(token_value_convert2);
1602 /* call 1D File Reader with file name (Cmfdf) and conversion
1603 factors; function returns array of dfs (dfArray) and
1604 corresponding Cm values (CmArray) and max number of
1605 terms in arrays (ndf) */
1606 uiuc_1DdataFileReader(Cmfdf,
1610 aeroPitchParts -> storeCommands (*command_line);
1615 Cmfadf = linetoken3;
1616 token4 >> token_value_convert1;
1617 token5 >> token_value_convert2;
1618 token6 >> token_value_convert3;
1619 convert_z = uiuc_convert(token_value_convert1);
1620 convert_x = uiuc_convert(token_value_convert2);
1621 convert_y = uiuc_convert(token_value_convert3);
1622 /* call 2D File Reader with file name (Cmfadf) and
1623 conversion factors; function returns array of
1624 flap deflections (dfArray) and corresponding
1625 alpha (aArray) and delta Cm (CmArray) values and
1626 max number of terms in alpha arrays (nAlphaArray)
1627 and deflection array (ndf) */
1628 uiuc_2DdataFileReader(Cmfadf,
1634 aeroPitchParts -> storeCommands (*command_line);
1639 uiuc_warnings_errors(2, *command_line);
1649 switch(CY_map[linetoken2])
1653 if (check_float(linetoken3))
1654 token3 >> token_value;
1656 uiuc_warnings_errors(1, *command_line);
1660 aeroSideforceParts -> storeCommands (*command_line);
1665 if (check_float(linetoken3))
1666 token3 >> token_value;
1668 uiuc_warnings_errors(1, *command_line);
1670 CY_beta = token_value;
1671 CY_beta_clean = CY_beta;
1672 aeroSideforceParts -> storeCommands (*command_line);
1677 if (check_float(linetoken3))
1678 token3 >> token_value;
1680 uiuc_warnings_errors(1, *command_line);
1684 aeroSideforceParts -> storeCommands (*command_line);
1689 if (check_float(linetoken3))
1690 token3 >> token_value;
1692 uiuc_warnings_errors(1, *command_line);
1696 aeroSideforceParts -> storeCommands (*command_line);
1701 if (check_float(linetoken3))
1702 token3 >> token_value;
1704 uiuc_warnings_errors(1, *command_line);
1706 CY_da = token_value;
1707 CY_da_clean = CY_da;
1708 aeroSideforceParts -> storeCommands (*command_line);
1713 if (check_float(linetoken3))
1714 token3 >> token_value;
1716 uiuc_warnings_errors(2, *command_line);
1718 CY_dr = token_value;
1719 CY_dr_clean = CY_dr;
1720 aeroSideforceParts -> storeCommands (*command_line);
1725 if (check_float(linetoken3))
1726 token3 >> token_value;
1728 uiuc_warnings_errors(2, *command_line);
1730 CY_dra = token_value;
1731 CY_dra_clean = CY_dra;
1732 aeroSideforceParts -> storeCommands (*command_line);
1737 if (check_float(linetoken3))
1738 token3 >> token_value;
1740 uiuc_warnings_errors(2, *command_line);
1742 CY_bdot = token_value;
1743 CY_bdot_clean = CY_bdot;
1744 aeroSideforceParts -> storeCommands (*command_line);
1749 CYfada = linetoken3;
1750 token4 >> token_value_convert1;
1751 token5 >> token_value_convert2;
1752 token6 >> token_value_convert3;
1753 convert_z = uiuc_convert(token_value_convert1);
1754 convert_x = uiuc_convert(token_value_convert2);
1755 convert_y = uiuc_convert(token_value_convert3);
1756 /* call 2D File Reader with file name (CYfada) and
1757 conversion factors; function returns array of
1758 aileron deflections (daArray) and corresponding
1759 alpha (aArray) and delta CY (CYArray) values and
1760 max number of terms in alpha arrays (nAlphaArray)
1761 and deflection array (nda) */
1762 uiuc_2DdataFileReader(CYfada,
1768 aeroSideforceParts -> storeCommands (*command_line);
1771 case CYfbetadr_flag:
1773 CYfbetadr = linetoken3;
1774 token4 >> token_value_convert1;
1775 token5 >> token_value_convert2;
1776 token6 >> token_value_convert3;
1777 convert_z = uiuc_convert(token_value_convert1);
1778 convert_x = uiuc_convert(token_value_convert2);
1779 convert_y = uiuc_convert(token_value_convert3);
1780 /* call 2D File Reader with file name (CYfbetadr) and
1781 conversion factors; function returns array of
1782 rudder deflections (drArray) and corresponding
1783 beta (betaArray) and delta CY (CYArray) values and
1784 max number of terms in beta arrays (nBetaArray)
1785 and deflection array (ndr) */
1786 uiuc_2DdataFileReader(CYfbetadr,
1787 CYfbetadr_betaArray,
1790 CYfbetadr_nBetaArray,
1792 aeroSideforceParts -> storeCommands (*command_line);
1797 uiuc_warnings_errors(2, *command_line);
1807 switch(Cl_map[linetoken2])
1811 if (check_float(linetoken3))
1812 token3 >> token_value;
1814 uiuc_warnings_errors(1, *command_line);
1818 aeroRollParts -> storeCommands (*command_line);
1823 if (check_float(linetoken3))
1824 token3 >> token_value;
1826 uiuc_warnings_errors(1, *command_line);
1828 Cl_beta = token_value;
1829 Cl_beta_clean = Cl_beta;
1830 aeroRollParts -> storeCommands (*command_line);
1835 if (check_float(linetoken3))
1836 token3 >> token_value;
1838 uiuc_warnings_errors(1, *command_line);
1842 aeroRollParts -> storeCommands (*command_line);
1847 if (check_float(linetoken3))
1848 token3 >> token_value;
1850 uiuc_warnings_errors(1, *command_line);
1854 aeroRollParts -> storeCommands (*command_line);
1859 if (check_float(linetoken3))
1860 token3 >> token_value;
1862 uiuc_warnings_errors(1, *command_line);
1864 Cl_da = token_value;
1865 Cl_da_clean = Cl_da;
1866 aeroRollParts -> storeCommands (*command_line);
1871 if (check_float(linetoken3))
1872 token3 >> token_value;
1874 uiuc_warnings_errors(1, *command_line);
1876 Cl_dr = token_value;
1877 Cl_dr_clean = Cl_dr;
1878 aeroRollParts -> storeCommands (*command_line);
1883 if (check_float(linetoken3))
1884 token3 >> token_value;
1886 uiuc_warnings_errors(1, *command_line);
1888 Cl_daa = token_value;
1889 Cl_daa_clean = Cl_daa;
1890 aeroRollParts -> storeCommands (*command_line);
1895 Clfada = linetoken3;
1896 token4 >> token_value_convert1;
1897 token5 >> token_value_convert2;
1898 token6 >> token_value_convert3;
1899 convert_z = uiuc_convert(token_value_convert1);
1900 convert_x = uiuc_convert(token_value_convert2);
1901 convert_y = uiuc_convert(token_value_convert3);
1902 /* call 2D File Reader with file name (Clfada) and
1903 conversion factors; function returns array of
1904 aileron deflections (daArray) and corresponding
1905 alpha (aArray) and delta Cl (ClArray) values and
1906 max number of terms in alpha arrays (nAlphaArray)
1907 and deflection array (nda) */
1908 uiuc_2DdataFileReader(Clfada,
1914 aeroRollParts -> storeCommands (*command_line);
1917 case Clfbetadr_flag:
1919 Clfbetadr = linetoken3;
1920 token4 >> token_value_convert1;
1921 token5 >> token_value_convert2;
1922 token6 >> token_value_convert3;
1923 convert_z = uiuc_convert(token_value_convert1);
1924 convert_x = uiuc_convert(token_value_convert2);
1925 convert_y = uiuc_convert(token_value_convert3);
1926 /* call 2D File Reader with file name (Clfbetadr) and
1927 conversion factors; function returns array of
1928 rudder deflections (drArray) and corresponding
1929 beta (betaArray) and delta Cl (ClArray) values and
1930 max number of terms in beta arrays (nBetaArray)
1931 and deflection array (ndr) */
1932 uiuc_2DdataFileReader(Clfbetadr,
1933 Clfbetadr_betaArray,
1936 Clfbetadr_nBetaArray,
1938 aeroRollParts -> storeCommands (*command_line);
1943 uiuc_warnings_errors(2, *command_line);
1953 switch(Cn_map[linetoken2])
1957 if (check_float(linetoken3))
1958 token3 >> token_value;
1960 uiuc_warnings_errors(1, *command_line);
1964 aeroYawParts -> storeCommands (*command_line);
1969 if (check_float(linetoken3))
1970 token3 >> token_value;
1972 uiuc_warnings_errors(1, *command_line);
1974 Cn_beta = token_value;
1975 Cn_beta_clean = Cn_beta;
1976 aeroYawParts -> storeCommands (*command_line);
1981 if (check_float(linetoken3))
1982 token3 >> token_value;
1984 uiuc_warnings_errors(1, *command_line);
1988 aeroYawParts -> storeCommands (*command_line);
1993 if (check_float(linetoken3))
1994 token3 >> token_value;
1996 uiuc_warnings_errors(1, *command_line);
2000 aeroYawParts -> storeCommands (*command_line);
2005 if (check_float(linetoken3))
2006 token3 >> token_value;
2008 uiuc_warnings_errors(1, *command_line);
2010 Cn_da = token_value;
2011 Cn_da_clean = Cn_da;
2012 aeroYawParts -> storeCommands (*command_line);
2017 if (check_float(linetoken3))
2018 token3 >> token_value;
2020 uiuc_warnings_errors(1, *command_line);
2022 Cn_dr = token_value;
2023 Cn_dr_clean = Cn_dr;
2024 aeroYawParts -> storeCommands (*command_line);
2029 if (check_float(linetoken3))
2030 token3 >> token_value;
2032 uiuc_warnings_errors(1, *command_line);
2036 aeroYawParts -> storeCommands (*command_line);
2041 if (check_float(linetoken3))
2042 token3 >> token_value;
2044 uiuc_warnings_errors(1, *command_line);
2046 Cn_b3 = token_value;
2047 Cn_b3_clean = Cn_b3;
2048 aeroYawParts -> storeCommands (*command_line);
2053 Cnfada = linetoken3;
2054 token4 >> token_value_convert1;
2055 token5 >> token_value_convert2;
2056 token6 >> token_value_convert3;
2057 convert_z = uiuc_convert(token_value_convert1);
2058 convert_x = uiuc_convert(token_value_convert2);
2059 convert_y = uiuc_convert(token_value_convert3);
2060 /* call 2D File Reader with file name (Cnfada) and
2061 conversion factors; function returns array of
2062 aileron deflections (daArray) and corresponding
2063 alpha (aArray) and delta Cn (CnArray) values and
2064 max number of terms in alpha arrays (nAlphaArray)
2065 and deflection array (nda) */
2066 uiuc_2DdataFileReader(Cnfada,
2072 aeroYawParts -> storeCommands (*command_line);
2075 case Cnfbetadr_flag:
2077 Cnfbetadr = linetoken3;
2078 token4 >> token_value_convert1;
2079 token5 >> token_value_convert2;
2080 token6 >> token_value_convert3;
2081 convert_z = uiuc_convert(token_value_convert1);
2082 convert_x = uiuc_convert(token_value_convert2);
2083 convert_y = uiuc_convert(token_value_convert3);
2084 /* call 2D File Reader with file name (Cnfbetadr) and
2085 conversion factors; function returns array of
2086 rudder deflections (drArray) and corresponding
2087 beta (betaArray) and delta Cn (CnArray) values and
2088 max number of terms in beta arrays (nBetaArray)
2089 and deflection array (ndr) */
2090 uiuc_2DdataFileReader(Cnfbetadr,
2091 Cnfbetadr_betaArray,
2094 Cnfbetadr_nBetaArray,
2096 aeroYawParts -> storeCommands (*command_line);
2101 uiuc_warnings_errors(2, *command_line);
2113 switch(gear_map[linetoken2])
2122 uiuc_warnings_errors(2, *command_line);
2133 switch(ice_map[linetoken2])
2137 if (check_float(linetoken3))
2138 token3 >> token_value;
2141 uiuc_warnings_errors(1, *command_line);
2144 iceTime = token_value;
2147 case transientTime_flag:
2149 if (check_float(linetoken3))
2150 token3 >> token_value;
2152 uiuc_warnings_errors(1, *command_line);
2154 transientTime = token_value;
2157 case eta_ice_final_flag:
2159 if (check_float(linetoken3))
2160 token3 >> token_value;
2162 uiuc_warnings_errors(1, *command_line);
2164 eta_ice_final = token_value;
2167 case beta_probe_wing_flag:
2169 if (check_float(linetoken3))
2170 token3 >> token_value;
2172 uiuc_warnings_errors(1, *command_line);
2175 x_probe_wing = token_value;
2178 case beta_probe_tail_flag:
2180 if (check_float(linetoken3))
2181 token3 >> token_value;
2183 uiuc_warnings_errors(1, *command_line);
2186 x_probe_tail = token_value;
2191 if (check_float(linetoken3))
2192 token3 >> token_value;
2194 uiuc_warnings_errors(1, *command_line);
2201 if (check_float(linetoken3))
2202 token3 >> token_value;
2204 uiuc_warnings_errors(1, *command_line);
2211 if (check_float(linetoken3))
2212 token3 >> token_value;
2214 uiuc_warnings_errors(1, *command_line);
2216 kCD_a = token_value;
2221 if (check_float(linetoken3))
2222 token3 >> token_value;
2224 uiuc_warnings_errors(1, *command_line);
2226 kCD_adot = token_value;
2231 if (check_float(linetoken3))
2232 token3 >> token_value;
2234 uiuc_warnings_errors(1, *command_line);
2236 kCD_q = token_value;
2241 if (check_float(linetoken3))
2242 token3 >> token_value;
2244 uiuc_warnings_errors(1, *command_line);
2246 kCD_de = token_value;
2251 if (check_float(linetoken3))
2252 token3 >> token_value;
2254 uiuc_warnings_errors(1, *command_line);
2261 if (check_float(linetoken3))
2262 token3 >> token_value;
2264 uiuc_warnings_errors(1, *command_line);
2271 if (check_float(linetoken3))
2272 token3 >> token_value;
2274 uiuc_warnings_errors(1, *command_line);
2276 kCX_a = token_value;
2281 if (check_float(linetoken3))
2282 token3 >> token_value;
2284 uiuc_warnings_errors(1, *command_line);
2286 kCX_a2 = token_value;
2291 if (check_float(linetoken3))
2292 token3 >> token_value;
2294 uiuc_warnings_errors(1, *command_line);
2296 kCX_a3 = token_value;
2301 if (check_float(linetoken3))
2302 token3 >> token_value;
2304 uiuc_warnings_errors(1, *command_line);
2306 kCX_adot = token_value;
2311 if (check_float(linetoken3))
2312 token3 >> token_value;
2314 uiuc_warnings_errors(1, *command_line);
2316 kCX_q = token_value;
2321 if (check_float(linetoken3))
2322 token3 >> token_value;
2324 uiuc_warnings_errors(1, *command_line);
2326 kCX_de = token_value;
2331 if (check_float(linetoken3))
2332 token3 >> token_value;
2334 uiuc_warnings_errors(1, *command_line);
2336 kCX_dr = token_value;
2341 if (check_float(linetoken3))
2342 token3 >> token_value;
2344 uiuc_warnings_errors(1, *command_line);
2346 kCX_df = token_value;
2351 if (check_float(linetoken3))
2352 token3 >> token_value;
2354 uiuc_warnings_errors(1, *command_line);
2356 kCX_adf = token_value;
2361 if (check_float(linetoken3))
2362 token3 >> token_value;
2364 uiuc_warnings_errors(1, *command_line);
2371 if (check_float(linetoken3))
2372 token3 >> token_value;
2374 uiuc_warnings_errors(1, *command_line);
2376 kCL_a = token_value;
2381 if (check_float(linetoken3))
2382 token3 >> token_value;
2384 uiuc_warnings_errors(1, *command_line);
2386 kCL_adot = token_value;
2391 if (check_float(linetoken3))
2392 token3 >> token_value;
2394 uiuc_warnings_errors(1, *command_line);
2396 kCL_q = token_value;
2401 if (check_float(linetoken3))
2402 token3 >> token_value;
2404 uiuc_warnings_errors(1, *command_line);
2406 kCL_de = token_value;
2411 if (check_float(linetoken3))
2412 token3 >> token_value;
2414 uiuc_warnings_errors(1, *command_line);
2421 if (check_float(linetoken3))
2422 token3 >> token_value;
2424 uiuc_warnings_errors(1, *command_line);
2426 kCZ_a = token_value;
2431 if (check_float(linetoken3))
2432 token3 >> token_value;
2434 uiuc_warnings_errors(1, *command_line);
2436 kCZ_a2 = token_value;
2441 if (check_float(linetoken3))
2442 token3 >> token_value;
2444 uiuc_warnings_errors(1, *command_line);
2446 kCZ_a3 = token_value;
2451 if (check_float(linetoken3))
2452 token3 >> token_value;
2454 uiuc_warnings_errors(1, *command_line);
2456 kCZ_adot = token_value;
2461 if (check_float(linetoken3))
2462 token3 >> token_value;
2464 uiuc_warnings_errors(1, *command_line);
2466 kCZ_q = token_value;
2471 if (check_float(linetoken3))
2472 token3 >> token_value;
2474 uiuc_warnings_errors(1, *command_line);
2476 kCZ_de = token_value;
2481 if (check_float(linetoken3))
2482 token3 >> token_value;
2484 uiuc_warnings_errors(1, *command_line);
2486 kCZ_deb2 = token_value;
2491 if (check_float(linetoken3))
2492 token3 >> token_value;
2494 uiuc_warnings_errors(1, *command_line);
2496 kCZ_df = token_value;
2501 if (check_float(linetoken3))
2502 token3 >> token_value;
2504 uiuc_warnings_errors(1, *command_line);
2506 kCZ_adf = token_value;
2511 if (check_float(linetoken3))
2512 token3 >> token_value;
2514 uiuc_warnings_errors(1, *command_line);
2521 if (check_float(linetoken3))
2522 token3 >> token_value;
2524 uiuc_warnings_errors(1, *command_line);
2526 kCm_a = token_value;
2531 if (check_float(linetoken3))
2532 token3 >> token_value;
2534 uiuc_warnings_errors(1, *command_line);
2536 kCm_a2 = token_value;
2541 if (check_float(linetoken3))
2542 token3 >> token_value;
2544 uiuc_warnings_errors(1, *command_line);
2546 kCm_adot = token_value;
2551 if (check_float(linetoken3))
2552 token3 >> token_value;
2554 uiuc_warnings_errors(1, *command_line);
2556 kCm_q = token_value;
2561 if (check_float(linetoken3))
2562 token3 >> token_value;
2564 uiuc_warnings_errors(1, *command_line);
2566 kCm_de = token_value;
2571 if (check_float(linetoken3))
2572 token3 >> token_value;
2574 uiuc_warnings_errors(1, *command_line);
2576 kCm_b2 = token_value;
2581 if (check_float(linetoken3))
2582 token3 >> token_value;
2584 uiuc_warnings_errors(1, *command_line);
2586 kCm_r = token_value;
2591 if (check_float(linetoken3))
2592 token3 >> token_value;
2594 uiuc_warnings_errors(1, *command_line);
2596 kCm_df = token_value;
2601 if (check_float(linetoken3))
2602 token3 >> token_value;
2604 uiuc_warnings_errors(1, *command_line);
2611 if (check_float(linetoken3))
2612 token3 >> token_value;
2614 uiuc_warnings_errors(1, *command_line);
2616 kCY_beta = token_value;
2621 if (check_float(linetoken3))
2622 token3 >> token_value;
2624 uiuc_warnings_errors(1, *command_line);
2626 kCY_p = token_value;
2631 if (check_float(linetoken3))
2632 token3 >> token_value;
2634 uiuc_warnings_errors(1, *command_line);
2636 kCY_r = token_value;
2641 if (check_float(linetoken3))
2642 token3 >> token_value;
2644 uiuc_warnings_errors(1, *command_line);
2646 kCY_da = token_value;
2651 if (check_float(linetoken3))
2652 token3 >> token_value;
2654 uiuc_warnings_errors(1, *command_line);
2656 kCY_dr = token_value;
2661 if (check_float(linetoken3))
2662 token3 >> token_value;
2664 uiuc_warnings_errors(1, *command_line);
2666 kCY_dra = token_value;
2671 if (check_float(linetoken3))
2672 token3 >> token_value;
2674 uiuc_warnings_errors(1, *command_line);
2676 kCY_bdot = token_value;
2681 if (check_float(linetoken3))
2682 token3 >> token_value;
2684 uiuc_warnings_errors(1, *command_line);
2691 if (check_float(linetoken3))
2692 token3 >> token_value;
2694 uiuc_warnings_errors(1, *command_line);
2696 kCl_beta = token_value;
2701 if (check_float(linetoken3))
2702 token3 >> token_value;
2704 uiuc_warnings_errors(1, *command_line);
2706 kCl_p = token_value;
2711 if (check_float(linetoken3))
2712 token3 >> token_value;
2714 uiuc_warnings_errors(1, *command_line);
2716 kCl_r = token_value;
2721 if (check_float(linetoken3))
2722 token3 >> token_value;
2724 uiuc_warnings_errors(1, *command_line);
2726 kCl_da = token_value;
2731 if (check_float(linetoken3))
2732 token3 >> token_value;
2734 uiuc_warnings_errors(1, *command_line);
2736 kCl_dr = token_value;
2741 if (check_float(linetoken3))
2742 token3 >> token_value;
2744 uiuc_warnings_errors(1, *command_line);
2746 kCl_daa = token_value;
2751 if (check_float(linetoken3))
2752 token3 >> token_value;
2754 uiuc_warnings_errors(1, *command_line);
2761 if (check_float(linetoken3))
2762 token3 >> token_value;
2764 uiuc_warnings_errors(1, *command_line);
2766 kCn_beta = token_value;
2771 if (check_float(linetoken3))
2772 token3 >> token_value;
2774 uiuc_warnings_errors(1, *command_line);
2776 kCn_p = token_value;
2781 if (check_float(linetoken3))
2782 token3 >> token_value;
2784 uiuc_warnings_errors(1, *command_line);
2786 kCn_r = token_value;
2791 if (check_float(linetoken3))
2792 token3 >> token_value;
2794 uiuc_warnings_errors(1, *command_line);
2796 kCn_da = token_value;
2801 if (check_float(linetoken3))
2802 token3 >> token_value;
2804 uiuc_warnings_errors(1, *command_line);
2806 kCn_dr = token_value;
2811 if (check_float(linetoken3))
2812 token3 >> token_value;
2814 uiuc_warnings_errors(1, *command_line);
2816 kCn_q = token_value;
2821 if (check_float(linetoken3))
2822 token3 >> token_value;
2824 uiuc_warnings_errors(1, *command_line);
2826 kCn_b3 = token_value;
2831 uiuc_warnings_errors(2, *command_line);
2841 static int fout_flag=0;
2845 fout.open("uiuc_record.dat");
2847 switch(record_map[linetoken2])
2849 /************************* Time ************************/
2850 case Simtime_record:
2852 recordParts -> storeCommands (*command_line);
2857 recordParts -> storeCommands (*command_line);
2861 /************************* Mass ************************/
2864 recordParts -> storeCommands (*command_line);
2869 recordParts -> storeCommands (*command_line);
2874 recordParts -> storeCommands (*command_line);
2879 recordParts -> storeCommands (*command_line);
2884 recordParts -> storeCommands (*command_line);
2889 recordParts -> storeCommands (*command_line);
2893 /*********************** Geometry **********************/
2894 case Dx_pilot_record:
2896 recordParts -> storeCommands (*command_line);
2899 case Dy_pilot_record:
2901 recordParts -> storeCommands (*command_line);
2904 case Dz_pilot_record:
2906 recordParts -> storeCommands (*command_line);
2911 recordParts -> storeCommands (*command_line);
2916 recordParts -> storeCommands (*command_line);
2921 recordParts -> storeCommands (*command_line);
2925 /********************** Positions **********************/
2926 case Lat_geocentric_record:
2928 recordParts -> storeCommands (*command_line);
2931 case Lon_geocentric_record:
2933 recordParts -> storeCommands (*command_line);
2936 case Radius_to_vehicle_record:
2938 recordParts -> storeCommands (*command_line);
2941 case Latitude_record:
2943 recordParts -> storeCommands (*command_line);
2946 case Longitude_record:
2948 recordParts -> storeCommands (*command_line);
2951 case Altitude_record:
2953 recordParts -> storeCommands (*command_line);
2958 recordParts -> storeCommands (*command_line);
2963 recordParts -> storeCommands (*command_line);
2968 recordParts -> storeCommands (*command_line);
2972 /******************** Accelerations ********************/
2973 case V_dot_north_record:
2975 recordParts -> storeCommands (*command_line);
2978 case V_dot_east_record:
2980 recordParts -> storeCommands (*command_line);
2983 case V_dot_down_record:
2985 recordParts -> storeCommands (*command_line);
2988 case U_dot_body_record:
2990 recordParts -> storeCommands (*command_line);
2993 case V_dot_body_record:
2995 recordParts -> storeCommands (*command_line);
2998 case W_dot_body_record:
3000 recordParts -> storeCommands (*command_line);
3003 case A_X_pilot_record:
3005 recordParts -> storeCommands (*command_line);
3008 case A_Y_pilot_record:
3010 recordParts -> storeCommands (*command_line);
3013 case A_Z_pilot_record:
3015 recordParts -> storeCommands (*command_line);
3020 recordParts -> storeCommands (*command_line);
3025 recordParts -> storeCommands (*command_line);
3030 recordParts -> storeCommands (*command_line);
3033 case N_X_pilot_record:
3035 recordParts -> storeCommands (*command_line);
3038 case N_Y_pilot_record:
3040 recordParts -> storeCommands (*command_line);
3043 case N_Z_pilot_record:
3045 recordParts -> storeCommands (*command_line);
3050 recordParts -> storeCommands (*command_line);
3055 recordParts -> storeCommands (*command_line);
3060 recordParts -> storeCommands (*command_line);
3063 case P_dot_body_record:
3065 recordParts -> storeCommands (*command_line);
3068 case Q_dot_body_record:
3070 recordParts -> storeCommands (*command_line);
3073 case R_dot_body_record:
3075 recordParts -> storeCommands (*command_line);
3079 /********************** Velocities *********************/
3080 case V_north_record:
3082 recordParts -> storeCommands (*command_line);
3087 recordParts -> storeCommands (*command_line);
3092 recordParts -> storeCommands (*command_line);
3095 case V_north_rel_ground_record:
3097 recordParts -> storeCommands (*command_line);
3100 case V_east_rel_ground_record:
3102 recordParts -> storeCommands (*command_line);
3105 case V_down_rel_ground_record:
3107 recordParts -> storeCommands (*command_line);
3110 case V_north_airmass_record:
3112 recordParts -> storeCommands (*command_line);
3115 case V_east_airmass_record:
3117 recordParts -> storeCommands (*command_line);
3120 case V_down_airmass_record:
3122 recordParts -> storeCommands (*command_line);
3125 case V_north_rel_airmass_record:
3127 recordParts -> storeCommands (*command_line);
3130 case V_east_rel_airmass_record:
3132 recordParts -> storeCommands (*command_line);
3135 case V_down_rel_airmass_record:
3137 recordParts -> storeCommands (*command_line);
3142 recordParts -> storeCommands (*command_line);
3147 recordParts -> storeCommands (*command_line);
3152 recordParts -> storeCommands (*command_line);
3157 recordParts -> storeCommands (*command_line);
3162 recordParts -> storeCommands (*command_line);
3167 recordParts -> storeCommands (*command_line);
3170 case V_rel_wind_record:
3172 recordParts -> storeCommands (*command_line);
3175 case V_true_kts_record:
3177 recordParts -> storeCommands (*command_line);
3180 case V_rel_ground_record:
3182 recordParts -> storeCommands (*command_line);
3185 case V_inertial_record:
3187 recordParts -> storeCommands (*command_line);
3190 case V_ground_speed_record:
3192 recordParts -> storeCommands (*command_line);
3195 case V_equiv_record:
3197 recordParts -> storeCommands (*command_line);
3200 case V_equiv_kts_record:
3202 recordParts -> storeCommands (*command_line);
3205 case V_calibrated_record:
3207 recordParts -> storeCommands (*command_line);
3210 case V_calibrated_kts_record:
3212 recordParts -> storeCommands (*command_line);
3215 case P_local_record:
3217 recordParts -> storeCommands (*command_line);
3220 case Q_local_record:
3222 recordParts -> storeCommands (*command_line);
3225 case R_local_record:
3227 recordParts -> storeCommands (*command_line);
3232 recordParts -> storeCommands (*command_line);
3237 recordParts -> storeCommands (*command_line);
3242 recordParts -> storeCommands (*command_line);
3245 case P_total_record:
3247 recordParts -> storeCommands (*command_line);
3250 case Q_total_record:
3252 recordParts -> storeCommands (*command_line);
3255 case R_total_record:
3257 recordParts -> storeCommands (*command_line);
3260 case Phi_dot_record:
3262 recordParts -> storeCommands (*command_line);
3265 case Theta_dot_record:
3267 recordParts -> storeCommands (*command_line);
3270 case Psi_dot_record:
3272 recordParts -> storeCommands (*command_line);
3275 case Latitude_dot_record:
3277 recordParts -> storeCommands (*command_line);
3280 case Longitude_dot_record:
3282 recordParts -> storeCommands (*command_line);
3285 case Radius_dot_record:
3287 recordParts -> storeCommands (*command_line);
3291 /************************ Angles ***********************/
3294 recordParts -> storeCommands (*command_line);
3297 case Alpha_deg_record:
3299 recordParts -> storeCommands (*command_line);
3302 case Alpha_dot_record:
3304 recordParts -> storeCommands (*command_line);
3307 case Alpha_dot_deg_record:
3309 recordParts -> storeCommands (*command_line);
3314 recordParts -> storeCommands (*command_line);
3317 case Beta_deg_record:
3319 recordParts -> storeCommands (*command_line);
3322 case Beta_dot_record:
3324 recordParts -> storeCommands (*command_line);
3327 case Beta_dot_deg_record:
3329 recordParts -> storeCommands (*command_line);
3332 case Gamma_vert_record:
3334 recordParts -> storeCommands (*command_line);
3337 case Gamma_vert_deg_record:
3339 recordParts -> storeCommands (*command_line);
3342 case Gamma_horiz_record:
3344 recordParts -> storeCommands (*command_line);
3347 case Gamma_horiz_deg_record:
3349 recordParts -> storeCommands (*command_line);
3353 /**************** Atmospheric Properties ***************/
3354 case Density_record:
3356 recordParts -> storeCommands (*command_line);
3359 case V_sound_record:
3361 recordParts -> storeCommands (*command_line);
3364 case Mach_number_record:
3366 recordParts -> storeCommands (*command_line);
3369 case Static_pressure_record:
3371 recordParts -> storeCommands (*command_line);
3374 case Total_pressure_record:
3376 recordParts -> storeCommands (*command_line);
3379 case Impact_pressure_record:
3381 recordParts -> storeCommands (*command_line);
3384 case Dynamic_pressure_record:
3386 recordParts -> storeCommands (*command_line);
3389 case Static_temperature_record:
3391 recordParts -> storeCommands (*command_line);
3394 case Total_temperature_record:
3396 recordParts -> storeCommands (*command_line);
3400 /******************** Earth Properties *****************/
3401 case Gravity_record:
3403 recordParts -> storeCommands (*command_line);
3406 case Sea_level_radius_record:
3408 recordParts -> storeCommands (*command_line);
3411 case Earth_position_angle_record:
3413 recordParts -> storeCommands (*command_line);
3416 case Runway_altitude_record:
3418 recordParts -> storeCommands (*command_line);
3421 case Runway_latitude_record:
3423 recordParts -> storeCommands (*command_line);
3426 case Runway_longitude_record:
3428 recordParts -> storeCommands (*command_line);
3431 case Runway_heading_record:
3433 recordParts -> storeCommands (*command_line);
3436 case Radius_to_rwy_record:
3438 recordParts -> storeCommands (*command_line);
3441 case D_pilot_north_of_rwy_record:
3443 recordParts -> storeCommands (*command_line);
3446 case D_pilot_east_of_rwy_record:
3448 recordParts -> storeCommands (*command_line);
3451 case D_pilot_above_rwy_record:
3453 recordParts -> storeCommands (*command_line);
3456 case X_pilot_rwy_record:
3458 recordParts -> storeCommands (*command_line);
3461 case Y_pilot_rwy_record:
3463 recordParts -> storeCommands (*command_line);
3466 case H_pilot_rwy_record:
3468 recordParts -> storeCommands (*command_line);
3471 case D_cg_north_of_rwy_record:
3473 recordParts -> storeCommands (*command_line);
3476 case D_cg_east_of_rwy_record:
3478 recordParts -> storeCommands (*command_line);
3481 case D_cg_above_rwy_record:
3483 recordParts -> storeCommands (*command_line);
3486 case X_cg_rwy_record:
3488 recordParts -> storeCommands (*command_line);
3491 case Y_cg_rwy_record:
3493 recordParts -> storeCommands (*command_line);
3496 case H_cg_rwy_record:
3498 recordParts -> storeCommands (*command_line);
3502 /********************* Engine Inputs *******************/
3503 case Throttle_pct_record:
3505 recordParts -> storeCommands (*command_line);
3508 case Throttle_3_record:
3510 recordParts -> storeCommands (*command_line);
3514 /******************** Control Inputs *******************/
3515 case Long_control_record:
3517 recordParts -> storeCommands (*command_line);
3520 case Long_trim_record:
3522 recordParts -> storeCommands (*command_line);
3525 case Long_trim_deg_record:
3527 recordParts -> storeCommands (*command_line);
3530 case elevator_record:
3532 recordParts -> storeCommands (*command_line);
3535 case elevator_deg_record:
3537 recordParts -> storeCommands (*command_line);
3540 case Lat_control_record:
3542 recordParts -> storeCommands (*command_line);
3545 case aileron_record:
3547 recordParts -> storeCommands (*command_line);
3550 case aileron_deg_record:
3552 recordParts -> storeCommands (*command_line);
3555 case Rudder_pedal_record:
3557 recordParts -> storeCommands (*command_line);
3562 recordParts -> storeCommands (*command_line);
3565 case rudder_deg_record:
3567 recordParts -> storeCommands (*command_line);
3570 case Flap_handle_record:
3572 recordParts -> storeCommands (*command_line);
3577 recordParts -> storeCommands (*command_line);
3580 case flap_deg_record:
3582 recordParts -> storeCommands (*command_line);
3586 /****************** Aero Coefficients ******************/
3589 recordParts -> storeCommands (*command_line);
3594 recordParts -> storeCommands (*command_line);
3597 case CDfadeI_record:
3599 recordParts -> storeCommands (*command_line);
3604 recordParts -> storeCommands (*command_line);
3607 case CDfadfI_record:
3609 recordParts -> storeCommands (*command_line);
3614 recordParts -> storeCommands (*command_line);
3619 recordParts -> storeCommands (*command_line);
3624 recordParts -> storeCommands (*command_line);
3627 case CLfadeI_record:
3629 recordParts -> storeCommands (*command_line);
3634 recordParts -> storeCommands (*command_line);
3637 case CLfadfI_record:
3639 recordParts -> storeCommands (*command_line);
3644 recordParts -> storeCommands (*command_line);
3649 recordParts -> storeCommands (*command_line);
3654 recordParts -> storeCommands (*command_line);
3657 case CmfadeI_record:
3659 recordParts -> storeCommands (*command_line);
3664 recordParts -> storeCommands (*command_line);
3667 case CmfadfI_record:
3669 recordParts -> storeCommands (*command_line);
3674 recordParts -> storeCommands (*command_line);
3677 case CYfadaI_record:
3679 recordParts -> storeCommands (*command_line);
3682 case CYfbetadrI_record:
3684 recordParts -> storeCommands (*command_line);
3689 recordParts -> storeCommands (*command_line);
3692 case ClfadaI_record:
3694 recordParts -> storeCommands (*command_line);
3697 case ClfbetadrI_record:
3699 recordParts -> storeCommands (*command_line);
3704 recordParts -> storeCommands (*command_line);
3707 case CnfadaI_record:
3709 recordParts -> storeCommands (*command_line);
3712 case CnfbetadrI_record:
3714 recordParts -> storeCommands (*command_line);
3718 /******************** Ice Detection ********************/
3719 case CLclean_wing_record:
3721 recordParts -> storeCommands (*command_line);
3724 case CLiced_wing_record:
3726 recordParts -> storeCommands (*command_line);
3729 case CLclean_tail_record:
3731 recordParts -> storeCommands (*command_line);
3734 case CLiced_tail_record:
3736 recordParts -> storeCommands (*command_line);
3739 case Lift_clean_wing_record:
3741 recordParts -> storeCommands (*command_line);
3744 case Lift_iced_wing_record:
3746 recordParts -> storeCommands (*command_line);
3749 case Lift_clean_tail_record:
3751 recordParts -> storeCommands (*command_line);
3754 case Lift_iced_tail_record:
3756 recordParts -> storeCommands (*command_line);
3759 case Gamma_clean_wing_record:
3761 recordParts -> storeCommands (*command_line);
3764 case Gamma_iced_wing_record:
3766 recordParts -> storeCommands (*command_line);
3769 case Gamma_clean_tail_record:
3771 recordParts -> storeCommands (*command_line);
3774 case Gamma_iced_tail_record:
3776 recordParts -> storeCommands (*command_line);
3779 case w_clean_wing_record:
3781 recordParts -> storeCommands (*command_line);
3784 case w_iced_wing_record:
3786 recordParts -> storeCommands (*command_line);
3789 case w_clean_tail_record:
3791 recordParts -> storeCommands (*command_line);
3794 case w_iced_tail_record:
3796 recordParts -> storeCommands (*command_line);
3799 case V_total_clean_wing_record:
3801 recordParts -> storeCommands (*command_line);
3804 case V_total_iced_wing_record:
3806 recordParts -> storeCommands (*command_line);
3809 case V_total_clean_tail_record:
3811 recordParts -> storeCommands (*command_line);
3814 case V_total_iced_tail_record:
3816 recordParts -> storeCommands (*command_line);
3819 case beta_flow_clean_wing_record:
3821 recordParts -> storeCommands (*command_line);
3824 case beta_flow_clean_wing_deg_record:
3826 recordParts -> storeCommands (*command_line);
3829 case beta_flow_iced_wing_record:
3831 recordParts -> storeCommands (*command_line);
3834 case beta_flow_iced_wing_deg_record:
3836 recordParts -> storeCommands (*command_line);
3839 case beta_flow_clean_tail_record:
3841 recordParts -> storeCommands (*command_line);
3844 case beta_flow_clean_tail_deg_record:
3846 recordParts -> storeCommands (*command_line);
3849 case beta_flow_iced_tail_record:
3851 recordParts -> storeCommands (*command_line);
3854 case beta_flow_iced_tail_deg_record:
3856 recordParts -> storeCommands (*command_line);
3859 case Dbeta_flow_wing_record:
3861 recordParts -> storeCommands (*command_line);
3864 case Dbeta_flow_wing_deg_record:
3866 recordParts -> storeCommands (*command_line);
3869 case Dbeta_flow_tail_record:
3871 recordParts -> storeCommands (*command_line);
3874 case Dbeta_flow_tail_deg_record:
3876 recordParts -> storeCommands (*command_line);
3879 case pct_beta_flow_wing_record:
3881 recordParts -> storeCommands (*command_line);
3884 case pct_beta_flow_tail_record:
3886 recordParts -> storeCommands (*command_line);
3890 /************************ Forces ***********************/
3891 case F_X_wind_record:
3893 recordParts -> storeCommands (*command_line);
3896 case F_Y_wind_record:
3898 recordParts -> storeCommands (*command_line);
3901 case F_Z_wind_record:
3903 recordParts -> storeCommands (*command_line);
3906 case F_X_aero_record:
3908 recordParts -> storeCommands (*command_line);
3911 case F_Y_aero_record:
3913 recordParts -> storeCommands (*command_line);
3916 case F_Z_aero_record:
3918 recordParts -> storeCommands (*command_line);
3921 case F_X_engine_record:
3923 recordParts -> storeCommands (*command_line);
3926 case F_Y_engine_record:
3928 recordParts -> storeCommands (*command_line);
3931 case F_Z_engine_record:
3933 recordParts -> storeCommands (*command_line);
3936 case F_X_gear_record:
3938 recordParts -> storeCommands (*command_line);
3941 case F_Y_gear_record:
3943 recordParts -> storeCommands (*command_line);
3946 case F_Z_gear_record:
3948 recordParts -> storeCommands (*command_line);
3953 recordParts -> storeCommands (*command_line);
3958 recordParts -> storeCommands (*command_line);
3963 recordParts -> storeCommands (*command_line);
3966 case F_north_record:
3968 recordParts -> storeCommands (*command_line);
3973 recordParts -> storeCommands (*command_line);
3978 recordParts -> storeCommands (*command_line);
3982 /*********************** Moments ***********************/
3983 case M_l_aero_record:
3985 recordParts -> storeCommands (*command_line);
3988 case M_m_aero_record:
3990 recordParts -> storeCommands (*command_line);
3993 case M_n_aero_record:
3995 recordParts -> storeCommands (*command_line);
3998 case M_l_engine_record:
4000 recordParts -> storeCommands (*command_line);
4003 case M_m_engine_record:
4005 recordParts -> storeCommands (*command_line);
4008 case M_n_engine_record:
4010 recordParts -> storeCommands (*command_line);
4013 case M_l_gear_record:
4015 recordParts -> storeCommands (*command_line);
4018 case M_m_gear_record:
4020 recordParts -> storeCommands (*command_line);
4023 case M_n_gear_record:
4025 recordParts -> storeCommands (*command_line);
4030 recordParts -> storeCommands (*command_line);
4035 recordParts -> storeCommands (*command_line);
4040 recordParts -> storeCommands (*command_line);
4045 uiuc_warnings_errors(2, *command_line);
4055 switch(misc_map[linetoken2])
4057 case simpleHingeMomentCoef_flag:
4059 if (check_float(linetoken3))
4060 token3 >> token_value;
4062 uiuc_warnings_errors(1, *command_line);
4064 simpleHingeMomentCoef = token_value;
4067 case dfTimefdf_flag:
4069 dfTimefdf = linetoken3;
4070 /* call 1D File Reader with file name (dfTimefdf);
4071 function returns array of dfs (dfArray) and
4072 corresponding time values (TimeArray) and max
4073 number of terms in arrays (ndf) */
4074 uiuc_1DdataFileReader(dfTimefdf,
4076 dfTimefdf_TimeArray,
4082 uiuc_warnings_errors(2, *command_line);
4092 if (linetoken1=="*")
4094 uiuc_warnings_errors(2, *command_line);
4098 } // end keyword map