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 <simgear/compiler.h>
94 #include "uiuc_menu.h"
101 bool check_float(string &token)
104 istrstream stream(token.c_str());
105 return (stream >> value);
109 void uiuc_menu( string aircraft_name )
113 int token_value_recordRate;
114 int token_value_convert1, token_value_convert2, token_value_convert3;
124 /* the following default setting should eventually be moved to a default or uiuc_init routine */
126 recordRate = 1; /* record every time step, default */
127 recordStartTime = 0; /* record from beginning of simulation */
129 /* set speed at which dynamic pressure terms will be accounted for,
130 since if velocity is too small, coefficients will go to infinity */
131 dyn_on_speed = 33; /* 20 kts, default */
135 /* Read the file and get the list of commands */
136 airplane = new ParseFile(aircraft_name); /* struct that includes all lines of the input file */
137 command_list = airplane -> getCommands();
138 /* structs to include all parts included in the input file for specific keyword groups */
139 initParts = new ParseFile();
140 geometryParts = new ParseFile();
141 massParts = new ParseFile();
142 engineParts = new ParseFile();
143 aeroDragParts = new ParseFile();
144 aeroLiftParts = new ParseFile();
145 aeroPitchParts = new ParseFile();
146 aeroSideforceParts = new ParseFile();
147 aeroRollParts = new ParseFile();
148 aeroYawParts = new ParseFile();
149 gearParts = new ParseFile();
150 recordParts = new ParseFile();
152 if (command_list.begin() == command_list.end())
154 cerr << "UIUC ERROR: File " << aircraft_name <<" does not exist" << endl;
158 for (LIST command_line = command_list.begin(); command_line!=command_list.end(); ++command_line)
160 cout << *command_line << endl;
162 linetoken1 = airplane -> getToken (*command_line, 1);
163 linetoken2 = airplane -> getToken (*command_line, 2);
164 linetoken3 = airplane -> getToken (*command_line, 3);
165 linetoken4 = airplane -> getToken (*command_line, 4);
166 linetoken5 = airplane -> getToken (*command_line, 5);
167 linetoken6 = airplane -> getToken (*command_line, 6);
169 istrstream token3(linetoken3.c_str());
170 istrstream token4(linetoken4.c_str());
171 istrstream token5(linetoken5.c_str());
172 istrstream token6(linetoken6.c_str());
174 switch (Keyword_map[linetoken1])
178 switch(init_map[linetoken2])
182 if (check_float(linetoken3))
183 token3 >> token_value;
185 uiuc_warnings_errors(1, *command_line);
187 Dx_pilot = token_value;
188 initParts -> storeCommands (*command_line);
193 if (check_float(linetoken3))
194 token3 >> token_value;
196 uiuc_warnings_errors(1, *command_line);
198 Dy_pilot = token_value;
199 initParts -> storeCommands (*command_line);
204 if (check_float(linetoken3))
205 token3 >> token_value;
207 uiuc_warnings_errors(1, *command_line);
209 Dz_pilot = token_value;
210 initParts -> storeCommands (*command_line);
215 if (check_float(linetoken3))
216 token3 >> token_value;
218 uiuc_warnings_errors(1, *command_line);
221 initParts -> storeCommands (*command_line);
226 if (check_float(linetoken3))
227 token3 >> token_value;
229 uiuc_warnings_errors(1, *command_line);
232 initParts -> storeCommands (*command_line);
237 if (check_float(linetoken3))
238 token3 >> token_value;
240 uiuc_warnings_errors(1, *command_line);
243 initParts -> storeCommands (*command_line);
248 if (check_float(linetoken3))
249 token3 >> token_value;
251 uiuc_warnings_errors(1, *command_line);
253 Altitude = token_value;
254 initParts -> storeCommands (*command_line);
259 if (check_float(linetoken3))
260 token3 >> token_value;
262 uiuc_warnings_errors(1, *command_line);
264 V_north = token_value;
265 initParts -> storeCommands (*command_line);
270 initParts -> storeCommands (*command_line);
271 if (check_float(linetoken3))
272 token3 >> token_value;
274 uiuc_warnings_errors(1, *command_line);
276 V_east = token_value;
281 if (check_float(linetoken3))
282 token3 >> token_value;
284 uiuc_warnings_errors(1, *command_line);
286 V_down = token_value;
287 initParts -> storeCommands (*command_line);
292 if (check_float(linetoken3))
293 token3 >> token_value;
295 uiuc_warnings_errors(1, *command_line);
297 P_body = token_value;
298 initParts -> storeCommands (*command_line);
303 if (check_float(linetoken3))
304 token3 >> token_value;
306 uiuc_warnings_errors(1, *command_line);
308 Q_body = token_value;
309 initParts -> storeCommands (*command_line);
314 if (check_float(linetoken3))
315 token3 >> token_value;
317 uiuc_warnings_errors(1, *command_line);
319 R_body = token_value;
320 initParts -> storeCommands (*command_line);
325 if (check_float(linetoken3))
326 token3 >> token_value;
328 uiuc_warnings_errors(1, *command_line);
331 initParts -> storeCommands (*command_line);
336 if (check_float(linetoken3))
337 token3 >> token_value;
339 uiuc_warnings_errors(1, *command_line);
342 initParts -> storeCommands (*command_line);
347 if (check_float(linetoken3))
348 token3 >> token_value;
350 uiuc_warnings_errors(1, *command_line);
353 initParts -> storeCommands (*command_line);
358 if (check_float(linetoken3))
359 token3 >> token_value;
361 uiuc_warnings_errors(1, *command_line);
363 Long_trim = token_value;
364 initParts -> storeCommands (*command_line);
367 case recordRate_flag:
369 //can't use check_float since variable is integer
370 token3 >> token_value_recordRate;
371 recordRate = 120 / token_value_recordRate;
374 case recordStartTime_flag:
376 if (check_float(linetoken3))
377 token3 >> token_value;
379 uiuc_warnings_errors(1, *command_line);
381 recordStartTime = token_value;
384 case nondim_rate_V_rel_wind_flag:
386 nondim_rate_V_rel_wind = true;
389 case dyn_on_speed_flag:
391 if (check_float(linetoken3))
392 token3 >> token_value;
394 uiuc_warnings_errors(1, *command_line);
396 dyn_on_speed = token_value;
401 uiuc_warnings_errors(2, *command_line);
411 switch(geometry_map[linetoken2])
415 if (check_float(linetoken3))
416 token3 >> token_value;
418 uiuc_warnings_errors(1, *command_line);
421 geometryParts -> storeCommands (*command_line);
426 if (check_float(linetoken3))
427 token3 >> token_value;
429 uiuc_warnings_errors(1, *command_line);
432 geometryParts -> storeCommands (*command_line);
437 if (check_float(linetoken3))
438 token3 >> token_value;
440 uiuc_warnings_errors(1, *command_line);
443 geometryParts -> storeCommands (*command_line);
448 if (check_float(linetoken3))
449 token3 >> token_value;
451 uiuc_warnings_errors(1, *command_line);
454 geometryParts -> storeCommands (*command_line);
459 if (check_float(linetoken3))
460 token3 >> token_value;
462 uiuc_warnings_errors(1, *command_line);
465 geometryParts -> storeCommands (*command_line);
470 if (check_float(linetoken3))
471 token3 >> token_value;
473 uiuc_warnings_errors(1, *command_line);
476 geometryParts -> storeCommands (*command_line);
481 if (check_float(linetoken3))
482 token3 >> token_value;
484 uiuc_warnings_errors(1, *command_line);
487 geometryParts -> storeCommands (*command_line);
492 uiuc_warnings_errors(2, *command_line);
497 } // end geometry map
500 case controlSurface_flag:
502 switch(controlSurface_map[linetoken2])
506 if (check_float(linetoken3))
507 token3 >> token_value;
509 uiuc_warnings_errors(1, *command_line);
513 if (check_float(linetoken4))
514 token4 >> token_value;
516 uiuc_warnings_errors(1, *command_line);
523 if (check_float(linetoken3))
524 token3 >> token_value;
526 uiuc_warnings_errors(1, *command_line);
530 if (check_float(linetoken4))
531 token4 >> token_value;
533 uiuc_warnings_errors(1, *command_line);
540 if (check_float(linetoken3))
541 token3 >> token_value;
543 uiuc_warnings_errors(1, *command_line);
547 if (check_float(linetoken4))
548 token4 >> token_value;
550 uiuc_warnings_errors(1, *command_line);
555 case set_Long_trim_flag:
557 if (check_float(linetoken3))
558 token3 >> token_value;
560 uiuc_warnings_errors(1, *command_line);
562 set_Long_trim = true;
563 elevator_tab = token_value;
566 case set_Long_trim_deg_flag:
568 if (check_float(linetoken3))
569 token3 >> token_value;
571 uiuc_warnings_errors(1, *command_line);
573 set_Long_trim = true;
574 elevator_tab = token_value * DEG_TO_RAD;
577 case zero_Long_trim_flag:
579 zero_Long_trim = true;
582 case elevator_step_flag:
584 // set step input flag
585 elevator_step = true;
587 // read in step angle in degrees and convert
588 if (check_float(linetoken3))
589 token3 >> token_value;
591 uiuc_warnings_errors(1, *command_line);
593 elevator_step_angle = token_value * DEG_TO_RAD;
595 // read in step start time
596 if (check_float(linetoken4))
597 token4 >> token_value;
599 uiuc_warnings_errors(1, *command_line);
601 elevator_step_startTime = token_value;
604 case elevator_singlet_flag:
606 // set singlet input flag
607 elevator_singlet = true;
609 // read in singlet angle in degrees and convert
610 if (check_float(linetoken3))
611 token3 >> token_value;
613 uiuc_warnings_errors(1, *command_line);
615 elevator_singlet_angle = token_value * DEG_TO_RAD;
617 // read in singlet start time
618 if (check_float(linetoken4))
619 token4 >> token_value;
621 uiuc_warnings_errors(1, *command_line);
623 elevator_singlet_startTime = token_value;
625 // read in singlet duration
626 if (check_float(linetoken5))
627 token5 >> token_value;
629 uiuc_warnings_errors(1, *command_line);
631 elevator_singlet_duration = token_value;
634 case elevator_doublet_flag:
636 // set doublet input flag
637 elevator_doublet = true;
639 // read in doublet angle in degrees and convert
640 if (check_float(linetoken3))
641 token3 >> token_value;
643 uiuc_warnings_errors(1, *command_line);
645 elevator_doublet_angle = token_value * DEG_TO_RAD;
647 // read in doublet start time
648 if (check_float(linetoken4))
649 token4 >> token_value;
651 uiuc_warnings_errors(1, *command_line);
653 elevator_doublet_startTime = token_value;
655 // read in doublet duration
656 if (check_float(linetoken5))
657 token5 >> token_value;
659 uiuc_warnings_errors(1, *command_line);
661 elevator_doublet_duration = token_value;
664 case elevator_input_flag:
666 elevator_input = true;
667 elevator_input_file = linetoken3;
668 token4 >> token_value_convert1;
669 token5 >> token_value_convert2;
670 convert_y = uiuc_convert(token_value_convert1);
671 convert_x = uiuc_convert(token_value_convert2);
672 uiuc_1DdataFileReader(elevator_input_file,
673 elevator_input_timeArray,
674 elevator_input_deArray,
675 elevator_input_ntime);
676 token6 >> token_value;
677 elevator_input_startTime = token_value;
682 uiuc_warnings_errors(2, *command_line);
687 } // end controlSurface map
692 switch(mass_map[linetoken2])
696 if (check_float(linetoken3))
697 token3 >> token_value;
699 uiuc_warnings_errors(1, *command_line);
701 Weight = token_value;
702 Mass = Weight * INVG;
703 massParts -> storeCommands (*command_line);
708 if (check_float(linetoken3))
709 token3 >> token_value;
711 uiuc_warnings_errors(1, *command_line);
714 massParts -> storeCommands (*command_line);
719 if (check_float(linetoken3))
720 token3 >> token_value;
722 uiuc_warnings_errors(1, *command_line);
725 massParts -> storeCommands (*command_line);
730 if (check_float(linetoken3))
731 token3 >> token_value;
733 uiuc_warnings_errors(1, *command_line);
736 massParts -> storeCommands (*command_line);
741 if (check_float(linetoken3))
742 token3 >> token_value;
744 uiuc_warnings_errors(1, *command_line);
747 massParts -> storeCommands (*command_line);
752 if (check_float(linetoken3))
753 token3 >> token_value;
755 uiuc_warnings_errors(1, *command_line);
758 massParts -> storeCommands (*command_line);
763 uiuc_warnings_errors(2, *command_line);
773 switch(engine_map[linetoken2])
775 case simpleSingle_flag:
777 if (check_float(linetoken3))
778 token3 >> token_value;
780 uiuc_warnings_errors(1, *command_line);
782 simpleSingleMaxThrust = token_value;
783 engineParts -> storeCommands (*command_line);
788 engineParts -> storeCommands (*command_line);
793 engineParts -> storeCommands (*command_line);
798 uiuc_warnings_errors(2, *command_line);
808 switch(CD_map[linetoken2])
812 if (check_float(linetoken3))
813 token3 >> token_value;
815 uiuc_warnings_errors(1, *command_line);
819 aeroDragParts -> storeCommands (*command_line);
824 if (check_float(linetoken3))
825 token3 >> token_value;
827 uiuc_warnings_errors(1, *command_line);
831 aeroDragParts -> storeCommands (*command_line);
836 if (check_float(linetoken3))
837 token3 >> token_value;
839 uiuc_warnings_errors(1, *command_line);
843 aeroDragParts -> storeCommands (*command_line);
848 if (check_float(linetoken3))
849 token3 >> token_value;
851 uiuc_warnings_errors(1, *command_line);
853 CD_adot = token_value;
854 CD_adot_clean = CD_adot;
855 aeroDragParts -> storeCommands (*command_line);
860 if (check_float(linetoken3))
861 token3 >> token_value;
863 uiuc_warnings_errors(1, *command_line);
867 aeroDragParts -> storeCommands (*command_line);
872 if (check_float(linetoken3))
873 token3 >> token_value;
875 uiuc_warnings_errors(1, *command_line);
878 aeroDragParts -> storeCommands (*command_line);
883 if (check_float(linetoken3))
884 token3 >> token_value;
886 uiuc_warnings_errors(1, *command_line);
890 aeroDragParts -> storeCommands (*command_line);
896 token4 >> token_value_convert1;
897 token5 >> token_value_convert2;
898 convert_y = uiuc_convert(token_value_convert1);
899 convert_x = uiuc_convert(token_value_convert2);
900 /* call 1D File Reader with file name (CDfa) and conversion
901 factors; function returns array of alphas (aArray) and
902 corresponding CD values (CDArray) and max number of
903 terms in arrays (nAlpha) */
904 uiuc_1DdataFileReader(CDfa,
908 aeroDragParts -> storeCommands (*command_line);
914 token4 >> token_value_convert1;
915 token5 >> token_value_convert2;
916 convert_y = uiuc_convert(token_value_convert1);
917 convert_x = uiuc_convert(token_value_convert2);
918 /* call 1D File Reader with file name (CDfCL) and conversion
919 factors; function returns array of CLs (CLArray) and
920 corresponding CD values (CDArray) and max number of
921 terms in arrays (nCL) */
922 uiuc_1DdataFileReader(CDfCL,
926 aeroDragParts -> storeCommands (*command_line);
932 token4 >> token_value_convert1;
933 token5 >> token_value_convert2;
934 token6 >> token_value_convert3;
935 convert_z = uiuc_convert(token_value_convert1);
936 convert_x = uiuc_convert(token_value_convert2);
937 convert_y = uiuc_convert(token_value_convert3);
938 /* call 2D File Reader with file name (CDfade) and
939 conversion factors; function returns array of
940 elevator deflections (deArray) and corresponding
941 alpha (aArray) and delta CD (CDArray) values and
942 max number of terms in alpha arrays (nAlphaArray)
943 and deflection array (nde) */
944 uiuc_2DdataFileReader(CDfade,
950 aeroDragParts -> storeCommands (*command_line);
956 token4 >> token_value_convert1;
957 token5 >> token_value_convert2;
958 convert_y = uiuc_convert(token_value_convert1);
959 convert_x = uiuc_convert(token_value_convert2);
960 /* call 1D File Reader with file name (CDfdf) and conversion
961 factors; function returns array of dfs (dfArray) and
962 corresponding CD values (CDArray) and max number of
963 terms in arrays (ndf) */
964 uiuc_1DdataFileReader(CDfdf,
968 aeroDragParts -> storeCommands (*command_line);
974 token4 >> token_value_convert1;
975 token5 >> token_value_convert2;
976 token6 >> token_value_convert3;
977 convert_z = uiuc_convert(token_value_convert1);
978 convert_x = uiuc_convert(token_value_convert2);
979 convert_y = uiuc_convert(token_value_convert3);
980 /* call 2D File Reader with file name (CDfadf) and
981 conversion factors; function returns array of
982 flap deflections (dfArray) and corresponding
983 alpha (aArray) and delta CD (CDArray) values and
984 max number of terms in alpha arrays (nAlphaArray)
985 and deflection array (ndf) */
986 uiuc_2DdataFileReader(CDfadf,
992 aeroDragParts -> storeCommands (*command_line);
997 if (check_float(linetoken3))
998 token3 >> token_value;
1000 uiuc_warnings_errors(1, *command_line);
1004 aeroDragParts -> storeCommands (*command_line);
1009 if (check_float(linetoken3))
1010 token3 >> token_value;
1012 uiuc_warnings_errors(1, *command_line);
1016 aeroDragParts -> storeCommands (*command_line);
1021 if (check_float(linetoken3))
1022 token3 >> token_value;
1024 uiuc_warnings_errors(1, *command_line);
1028 aeroDragParts -> storeCommands (*command_line);
1033 if (check_float(linetoken3))
1034 token3 >> token_value;
1036 uiuc_warnings_errors(1, *command_line);
1038 CX_a2 = token_value;
1039 CX_a2_clean = CX_a2;
1040 aeroDragParts -> storeCommands (*command_line);
1045 if (check_float(linetoken3))
1046 token3 >> token_value;
1048 uiuc_warnings_errors(1, *command_line);
1050 CX_a3 = token_value;
1051 CX_a3_clean = CX_a3;
1052 aeroDragParts -> storeCommands (*command_line);
1057 if (check_float(linetoken3))
1058 token3 >> token_value;
1060 uiuc_warnings_errors(1, *command_line);
1062 CX_adot = token_value;
1063 CX_adot_clean = CX_adot;
1064 aeroDragParts -> storeCommands (*command_line);
1069 if (check_float(linetoken3))
1070 token3 >> token_value;
1072 uiuc_warnings_errors(1, *command_line);
1076 aeroDragParts -> storeCommands (*command_line);
1081 if (check_float(linetoken3))
1082 token3 >> token_value;
1084 uiuc_warnings_errors(1, *command_line);
1086 CX_de = token_value;
1087 CX_de_clean = CX_de;
1088 aeroDragParts -> storeCommands (*command_line);
1093 if (check_float(linetoken3))
1094 token3 >> token_value;
1096 uiuc_warnings_errors(1, *command_line);
1098 CX_dr = token_value;
1099 CX_dr_clean = CX_dr;
1100 aeroDragParts -> storeCommands (*command_line);
1105 if (check_float(linetoken3))
1106 token3 >> token_value;
1108 uiuc_warnings_errors(1, *command_line);
1110 CX_df = token_value;
1111 CX_df_clean = CX_df;
1112 aeroDragParts -> storeCommands (*command_line);
1117 if (check_float(linetoken3))
1118 token3 >> token_value;
1120 uiuc_warnings_errors(1, *command_line);
1122 CX_adf = token_value;
1123 CX_adf_clean = CX_adf;
1124 aeroDragParts -> storeCommands (*command_line);
1129 uiuc_warnings_errors(2, *command_line);
1139 switch(CL_map[linetoken2])
1143 if (check_float(linetoken3))
1144 token3 >> token_value;
1146 uiuc_warnings_errors(1, *command_line);
1150 aeroLiftParts -> storeCommands (*command_line);
1155 if (check_float(linetoken3))
1156 token3 >> token_value;
1158 uiuc_warnings_errors(1, *command_line);
1162 aeroLiftParts -> storeCommands (*command_line);
1167 if (check_float(linetoken3))
1168 token3 >> token_value;
1170 uiuc_warnings_errors(1, *command_line);
1172 CL_adot = token_value;
1173 CL_adot_clean = CL_adot;
1174 aeroLiftParts -> storeCommands (*command_line);
1179 if (check_float(linetoken3))
1180 token3 >> token_value;
1182 uiuc_warnings_errors(1, *command_line);
1186 aeroLiftParts -> storeCommands (*command_line);
1191 if (check_float(linetoken3))
1192 token3 >> token_value;
1194 uiuc_warnings_errors(1, *command_line);
1196 CL_ih = token_value;
1197 aeroLiftParts -> storeCommands (*command_line);
1202 if (check_float(linetoken3))
1203 token3 >> token_value;
1205 uiuc_warnings_errors(1, *command_line);
1207 CL_de = token_value;
1208 CL_de_clean = CL_de;
1209 aeroLiftParts -> storeCommands (*command_line);
1215 token4 >> token_value_convert1;
1216 token5 >> token_value_convert2;
1217 convert_y = uiuc_convert(token_value_convert1);
1218 convert_x = uiuc_convert(token_value_convert2);
1219 /* call 1D File Reader with file name (CLfa) and conversion
1220 factors; function returns array of alphas (aArray) and
1221 corresponding CL values (CLArray) and max number of
1222 terms in arrays (nAlpha) */
1223 uiuc_1DdataFileReader(CLfa,
1227 aeroLiftParts -> storeCommands (*command_line);
1232 CLfade = linetoken3;
1233 token4 >> token_value_convert1;
1234 token5 >> token_value_convert2;
1235 token6 >> token_value_convert3;
1236 convert_z = uiuc_convert(token_value_convert1);
1237 convert_x = uiuc_convert(token_value_convert2);
1238 convert_y = uiuc_convert(token_value_convert3);
1239 /* call 2D File Reader with file name (CLfade) and
1240 conversion factors; function returns array of
1241 elevator deflections (deArray) and corresponding
1242 alpha (aArray) and delta CL (CLArray) values and
1243 max number of terms in alpha arrays (nAlphaArray)
1244 and deflection array (nde) */
1245 uiuc_2DdataFileReader(CLfade,
1251 aeroLiftParts -> storeCommands (*command_line);
1257 token4 >> token_value_convert1;
1258 token5 >> token_value_convert2;
1259 convert_y = uiuc_convert(token_value_convert1);
1260 convert_x = uiuc_convert(token_value_convert2);
1261 /* call 1D File Reader with file name (CLfdf) and conversion
1262 factors; function returns array of dfs (dfArray) and
1263 corresponding CL values (CLArray) and max number of
1264 terms in arrays (ndf) */
1265 uiuc_1DdataFileReader(CLfdf,
1269 aeroLiftParts -> storeCommands (*command_line);
1271 // additional variables to streamline flap routine in aerodeflections
1273 int temp_counter = 1;
1274 while (temp_counter <= ndf)
1276 dfArray[temp_counter] = CLfdf_dfArray[temp_counter];
1277 TimeArray[temp_counter] = dfTimefdf_TimeArray[temp_counter];
1284 CLfadf = linetoken3;
1285 token4 >> token_value_convert1;
1286 token5 >> token_value_convert2;
1287 token6 >> token_value_convert3;
1288 convert_z = uiuc_convert(token_value_convert1);
1289 convert_x = uiuc_convert(token_value_convert2);
1290 convert_y = uiuc_convert(token_value_convert3);
1291 /* call 2D File Reader with file name (CLfadf) and
1292 conversion factors; function returns array of
1293 flap deflections (dfArray) and corresponding
1294 alpha (aArray) and delta CL (CLArray) values and
1295 max number of terms in alpha arrays (nAlphaArray)
1296 and deflection array (ndf) */
1297 uiuc_2DdataFileReader(CLfadf,
1303 aeroLiftParts -> storeCommands (*command_line);
1308 if (check_float(linetoken3))
1309 token3 >> token_value;
1311 uiuc_warnings_errors(1, *command_line);
1315 aeroLiftParts -> storeCommands (*command_line);
1320 if (check_float(linetoken3))
1321 token3 >> token_value;
1323 uiuc_warnings_errors(1, *command_line);
1327 aeroLiftParts -> storeCommands (*command_line);
1332 if (check_float(linetoken3))
1333 token3 >> token_value;
1335 uiuc_warnings_errors(1, *command_line);
1337 CZ_a2 = token_value;
1338 CZ_a2_clean = CZ_a2;
1339 aeroLiftParts -> storeCommands (*command_line);
1344 if (check_float(linetoken3))
1345 token3 >> token_value;
1347 uiuc_warnings_errors(1, *command_line);
1349 CZ_a3 = token_value;
1350 CZ_a3_clean = CZ_a3;
1351 aeroLiftParts -> storeCommands (*command_line);
1356 if (check_float(linetoken3))
1357 token3 >> token_value;
1359 uiuc_warnings_errors(1, *command_line);
1361 CZ_adot = token_value;
1362 CZ_adot_clean = CZ_adot;
1363 aeroLiftParts -> storeCommands (*command_line);
1368 if (check_float(linetoken3))
1369 token3 >> token_value;
1371 uiuc_warnings_errors(1, *command_line);
1375 aeroLiftParts -> storeCommands (*command_line);
1380 if (check_float(linetoken3))
1381 token3 >> token_value;
1383 uiuc_warnings_errors(1, *command_line);
1385 CZ_de = token_value;
1386 CZ_de_clean = CZ_de;
1387 aeroLiftParts -> storeCommands (*command_line);
1392 if (check_float(linetoken3))
1393 token3 >> token_value;
1395 uiuc_warnings_errors(1, *command_line);
1397 CZ_deb2 = token_value;
1398 CZ_deb2_clean = CZ_deb2;
1399 aeroLiftParts -> storeCommands (*command_line);
1404 if (check_float(linetoken3))
1405 token3 >> token_value;
1407 uiuc_warnings_errors(1, *command_line);
1409 CZ_df = token_value;
1410 CZ_df_clean = CZ_df;
1411 aeroLiftParts -> storeCommands (*command_line);
1416 if (check_float(linetoken3))
1417 token3 >> token_value;
1419 uiuc_warnings_errors(1, *command_line);
1421 CZ_adf = token_value;
1422 CZ_adf_clean = CZ_adf;
1423 aeroLiftParts -> storeCommands (*command_line);
1428 uiuc_warnings_errors(2, *command_line);
1438 switch(Cm_map[linetoken2])
1442 if (check_float(linetoken3))
1443 token3 >> token_value;
1445 uiuc_warnings_errors(1, *command_line);
1449 aeroPitchParts -> storeCommands (*command_line);
1454 if (check_float(linetoken3))
1455 token3 >> token_value;
1457 uiuc_warnings_errors(1, *command_line);
1461 aeroPitchParts -> storeCommands (*command_line);
1466 if (check_float(linetoken3))
1467 token3 >> token_value;
1469 uiuc_warnings_errors(1, *command_line);
1471 Cm_a2 = token_value;
1472 Cm_a2_clean = Cm_a2;
1473 aeroPitchParts -> storeCommands (*command_line);
1478 if (check_float(linetoken3))
1479 token3 >> token_value;
1481 uiuc_warnings_errors(1, *command_line);
1483 Cm_adot = token_value;
1484 Cm_adot_clean = Cm_adot;
1485 aeroPitchParts -> storeCommands (*command_line);
1490 if (check_float(linetoken3))
1491 token3 >> token_value;
1493 uiuc_warnings_errors(1, *command_line);
1497 aeroPitchParts -> storeCommands (*command_line);
1502 if (check_float(linetoken3))
1503 token3 >> token_value;
1505 uiuc_warnings_errors(1, *command_line);
1507 Cm_ih = token_value;
1508 aeroPitchParts -> storeCommands (*command_line);
1513 if (check_float(linetoken3))
1514 token3 >> token_value;
1516 uiuc_warnings_errors(1, *command_line);
1518 Cm_de = token_value;
1519 Cm_de_clean = Cm_de;
1520 aeroPitchParts -> storeCommands (*command_line);
1525 if (check_float(linetoken3))
1526 token3 >> token_value;
1528 uiuc_warnings_errors(1, *command_line);
1530 Cm_b2 = token_value;
1531 Cm_b2_clean = Cm_b2;
1532 aeroPitchParts -> storeCommands (*command_line);
1537 if (check_float(linetoken3))
1538 token3 >> token_value;
1540 uiuc_warnings_errors(1, *command_line);
1544 aeroPitchParts -> storeCommands (*command_line);
1549 if (check_float(linetoken3))
1550 token3 >> token_value;
1552 uiuc_warnings_errors(1, *command_line);
1554 Cm_df = token_value;
1555 Cm_df_clean = Cm_df;
1556 aeroPitchParts -> storeCommands (*command_line);
1562 token4 >> token_value_convert1;
1563 token5 >> token_value_convert2;
1564 convert_y = uiuc_convert(token_value_convert1);
1565 convert_x = uiuc_convert(token_value_convert2);
1566 /* call 1D File Reader with file name (Cmfa) and conversion
1567 factors; function returns array of alphas (aArray) and
1568 corresponding Cm values (CmArray) and max number of
1569 terms in arrays (nAlpha) */
1570 uiuc_1DdataFileReader(Cmfa,
1574 aeroPitchParts -> storeCommands (*command_line);
1579 Cmfade = linetoken3;
1580 token4 >> token_value_convert1;
1581 token5 >> token_value_convert2;
1582 token6 >> token_value_convert3;
1583 convert_z = uiuc_convert(token_value_convert1);
1584 convert_x = uiuc_convert(token_value_convert2);
1585 convert_y = uiuc_convert(token_value_convert3);
1586 /* call 2D File Reader with file name (Cmfade) and
1587 conversion factors; function returns array of
1588 elevator deflections (deArray) and corresponding
1589 alpha (aArray) and delta Cm (CmArray) values and
1590 max number of terms in alpha arrays (nAlphaArray)
1591 and deflection array (nde) */
1592 uiuc_2DdataFileReader(Cmfade,
1598 aeroPitchParts -> storeCommands (*command_line);
1604 token4 >> token_value_convert1;
1605 token5 >> token_value_convert2;
1606 convert_y = uiuc_convert(token_value_convert1);
1607 convert_x = uiuc_convert(token_value_convert2);
1608 /* call 1D File Reader with file name (Cmfdf) and conversion
1609 factors; function returns array of dfs (dfArray) and
1610 corresponding Cm values (CmArray) and max number of
1611 terms in arrays (ndf) */
1612 uiuc_1DdataFileReader(Cmfdf,
1616 aeroPitchParts -> storeCommands (*command_line);
1621 Cmfadf = linetoken3;
1622 token4 >> token_value_convert1;
1623 token5 >> token_value_convert2;
1624 token6 >> token_value_convert3;
1625 convert_z = uiuc_convert(token_value_convert1);
1626 convert_x = uiuc_convert(token_value_convert2);
1627 convert_y = uiuc_convert(token_value_convert3);
1628 /* call 2D File Reader with file name (Cmfadf) and
1629 conversion factors; function returns array of
1630 flap deflections (dfArray) and corresponding
1631 alpha (aArray) and delta Cm (CmArray) values and
1632 max number of terms in alpha arrays (nAlphaArray)
1633 and deflection array (ndf) */
1634 uiuc_2DdataFileReader(Cmfadf,
1640 aeroPitchParts -> storeCommands (*command_line);
1645 uiuc_warnings_errors(2, *command_line);
1655 switch(CY_map[linetoken2])
1659 if (check_float(linetoken3))
1660 token3 >> token_value;
1662 uiuc_warnings_errors(1, *command_line);
1666 aeroSideforceParts -> storeCommands (*command_line);
1671 if (check_float(linetoken3))
1672 token3 >> token_value;
1674 uiuc_warnings_errors(1, *command_line);
1676 CY_beta = token_value;
1677 CY_beta_clean = CY_beta;
1678 aeroSideforceParts -> storeCommands (*command_line);
1683 if (check_float(linetoken3))
1684 token3 >> token_value;
1686 uiuc_warnings_errors(1, *command_line);
1690 aeroSideforceParts -> storeCommands (*command_line);
1695 if (check_float(linetoken3))
1696 token3 >> token_value;
1698 uiuc_warnings_errors(1, *command_line);
1702 aeroSideforceParts -> storeCommands (*command_line);
1707 if (check_float(linetoken3))
1708 token3 >> token_value;
1710 uiuc_warnings_errors(1, *command_line);
1712 CY_da = token_value;
1713 CY_da_clean = CY_da;
1714 aeroSideforceParts -> storeCommands (*command_line);
1719 if (check_float(linetoken3))
1720 token3 >> token_value;
1722 uiuc_warnings_errors(2, *command_line);
1724 CY_dr = token_value;
1725 CY_dr_clean = CY_dr;
1726 aeroSideforceParts -> storeCommands (*command_line);
1731 if (check_float(linetoken3))
1732 token3 >> token_value;
1734 uiuc_warnings_errors(2, *command_line);
1736 CY_dra = token_value;
1737 CY_dra_clean = CY_dra;
1738 aeroSideforceParts -> storeCommands (*command_line);
1743 if (check_float(linetoken3))
1744 token3 >> token_value;
1746 uiuc_warnings_errors(2, *command_line);
1748 CY_bdot = token_value;
1749 CY_bdot_clean = CY_bdot;
1750 aeroSideforceParts -> storeCommands (*command_line);
1755 CYfada = linetoken3;
1756 token4 >> token_value_convert1;
1757 token5 >> token_value_convert2;
1758 token6 >> token_value_convert3;
1759 convert_z = uiuc_convert(token_value_convert1);
1760 convert_x = uiuc_convert(token_value_convert2);
1761 convert_y = uiuc_convert(token_value_convert3);
1762 /* call 2D File Reader with file name (CYfada) and
1763 conversion factors; function returns array of
1764 aileron deflections (daArray) and corresponding
1765 alpha (aArray) and delta CY (CYArray) values and
1766 max number of terms in alpha arrays (nAlphaArray)
1767 and deflection array (nda) */
1768 uiuc_2DdataFileReader(CYfada,
1774 aeroSideforceParts -> storeCommands (*command_line);
1777 case CYfbetadr_flag:
1779 CYfbetadr = linetoken3;
1780 token4 >> token_value_convert1;
1781 token5 >> token_value_convert2;
1782 token6 >> token_value_convert3;
1783 convert_z = uiuc_convert(token_value_convert1);
1784 convert_x = uiuc_convert(token_value_convert2);
1785 convert_y = uiuc_convert(token_value_convert3);
1786 /* call 2D File Reader with file name (CYfbetadr) and
1787 conversion factors; function returns array of
1788 rudder deflections (drArray) and corresponding
1789 beta (betaArray) and delta CY (CYArray) values and
1790 max number of terms in beta arrays (nBetaArray)
1791 and deflection array (ndr) */
1792 uiuc_2DdataFileReader(CYfbetadr,
1793 CYfbetadr_betaArray,
1796 CYfbetadr_nBetaArray,
1798 aeroSideforceParts -> storeCommands (*command_line);
1803 uiuc_warnings_errors(2, *command_line);
1813 switch(Cl_map[linetoken2])
1817 if (check_float(linetoken3))
1818 token3 >> token_value;
1820 uiuc_warnings_errors(1, *command_line);
1824 aeroRollParts -> storeCommands (*command_line);
1829 if (check_float(linetoken3))
1830 token3 >> token_value;
1832 uiuc_warnings_errors(1, *command_line);
1834 Cl_beta = token_value;
1835 Cl_beta_clean = Cl_beta;
1836 aeroRollParts -> storeCommands (*command_line);
1841 if (check_float(linetoken3))
1842 token3 >> token_value;
1844 uiuc_warnings_errors(1, *command_line);
1848 aeroRollParts -> storeCommands (*command_line);
1853 if (check_float(linetoken3))
1854 token3 >> token_value;
1856 uiuc_warnings_errors(1, *command_line);
1860 aeroRollParts -> storeCommands (*command_line);
1865 if (check_float(linetoken3))
1866 token3 >> token_value;
1868 uiuc_warnings_errors(1, *command_line);
1870 Cl_da = token_value;
1871 Cl_da_clean = Cl_da;
1872 aeroRollParts -> storeCommands (*command_line);
1877 if (check_float(linetoken3))
1878 token3 >> token_value;
1880 uiuc_warnings_errors(1, *command_line);
1882 Cl_dr = token_value;
1883 Cl_dr_clean = Cl_dr;
1884 aeroRollParts -> storeCommands (*command_line);
1889 if (check_float(linetoken3))
1890 token3 >> token_value;
1892 uiuc_warnings_errors(1, *command_line);
1894 Cl_daa = token_value;
1895 Cl_daa_clean = Cl_daa;
1896 aeroRollParts -> storeCommands (*command_line);
1901 Clfada = linetoken3;
1902 token4 >> token_value_convert1;
1903 token5 >> token_value_convert2;
1904 token6 >> token_value_convert3;
1905 convert_z = uiuc_convert(token_value_convert1);
1906 convert_x = uiuc_convert(token_value_convert2);
1907 convert_y = uiuc_convert(token_value_convert3);
1908 /* call 2D File Reader with file name (Clfada) and
1909 conversion factors; function returns array of
1910 aileron deflections (daArray) and corresponding
1911 alpha (aArray) and delta Cl (ClArray) values and
1912 max number of terms in alpha arrays (nAlphaArray)
1913 and deflection array (nda) */
1914 uiuc_2DdataFileReader(Clfada,
1920 aeroRollParts -> storeCommands (*command_line);
1923 case Clfbetadr_flag:
1925 Clfbetadr = linetoken3;
1926 token4 >> token_value_convert1;
1927 token5 >> token_value_convert2;
1928 token6 >> token_value_convert3;
1929 convert_z = uiuc_convert(token_value_convert1);
1930 convert_x = uiuc_convert(token_value_convert2);
1931 convert_y = uiuc_convert(token_value_convert3);
1932 /* call 2D File Reader with file name (Clfbetadr) and
1933 conversion factors; function returns array of
1934 rudder deflections (drArray) and corresponding
1935 beta (betaArray) and delta Cl (ClArray) values and
1936 max number of terms in beta arrays (nBetaArray)
1937 and deflection array (ndr) */
1938 uiuc_2DdataFileReader(Clfbetadr,
1939 Clfbetadr_betaArray,
1942 Clfbetadr_nBetaArray,
1944 aeroRollParts -> storeCommands (*command_line);
1949 uiuc_warnings_errors(2, *command_line);
1959 switch(Cn_map[linetoken2])
1963 if (check_float(linetoken3))
1964 token3 >> token_value;
1966 uiuc_warnings_errors(1, *command_line);
1970 aeroYawParts -> storeCommands (*command_line);
1975 if (check_float(linetoken3))
1976 token3 >> token_value;
1978 uiuc_warnings_errors(1, *command_line);
1980 Cn_beta = token_value;
1981 Cn_beta_clean = Cn_beta;
1982 aeroYawParts -> storeCommands (*command_line);
1987 if (check_float(linetoken3))
1988 token3 >> token_value;
1990 uiuc_warnings_errors(1, *command_line);
1994 aeroYawParts -> storeCommands (*command_line);
1999 if (check_float(linetoken3))
2000 token3 >> token_value;
2002 uiuc_warnings_errors(1, *command_line);
2006 aeroYawParts -> storeCommands (*command_line);
2011 if (check_float(linetoken3))
2012 token3 >> token_value;
2014 uiuc_warnings_errors(1, *command_line);
2016 Cn_da = token_value;
2017 Cn_da_clean = Cn_da;
2018 aeroYawParts -> storeCommands (*command_line);
2023 if (check_float(linetoken3))
2024 token3 >> token_value;
2026 uiuc_warnings_errors(1, *command_line);
2028 Cn_dr = token_value;
2029 Cn_dr_clean = Cn_dr;
2030 aeroYawParts -> storeCommands (*command_line);
2035 if (check_float(linetoken3))
2036 token3 >> token_value;
2038 uiuc_warnings_errors(1, *command_line);
2042 aeroYawParts -> storeCommands (*command_line);
2047 if (check_float(linetoken3))
2048 token3 >> token_value;
2050 uiuc_warnings_errors(1, *command_line);
2052 Cn_b3 = token_value;
2053 Cn_b3_clean = Cn_b3;
2054 aeroYawParts -> storeCommands (*command_line);
2059 Cnfada = linetoken3;
2060 token4 >> token_value_convert1;
2061 token5 >> token_value_convert2;
2062 token6 >> token_value_convert3;
2063 convert_z = uiuc_convert(token_value_convert1);
2064 convert_x = uiuc_convert(token_value_convert2);
2065 convert_y = uiuc_convert(token_value_convert3);
2066 /* call 2D File Reader with file name (Cnfada) and
2067 conversion factors; function returns array of
2068 aileron deflections (daArray) and corresponding
2069 alpha (aArray) and delta Cn (CnArray) values and
2070 max number of terms in alpha arrays (nAlphaArray)
2071 and deflection array (nda) */
2072 uiuc_2DdataFileReader(Cnfada,
2078 aeroYawParts -> storeCommands (*command_line);
2081 case Cnfbetadr_flag:
2083 Cnfbetadr = linetoken3;
2084 token4 >> token_value_convert1;
2085 token5 >> token_value_convert2;
2086 token6 >> token_value_convert3;
2087 convert_z = uiuc_convert(token_value_convert1);
2088 convert_x = uiuc_convert(token_value_convert2);
2089 convert_y = uiuc_convert(token_value_convert3);
2090 /* call 2D File Reader with file name (Cnfbetadr) and
2091 conversion factors; function returns array of
2092 rudder deflections (drArray) and corresponding
2093 beta (betaArray) and delta Cn (CnArray) values and
2094 max number of terms in beta arrays (nBetaArray)
2095 and deflection array (ndr) */
2096 uiuc_2DdataFileReader(Cnfbetadr,
2097 Cnfbetadr_betaArray,
2100 Cnfbetadr_nBetaArray,
2102 aeroYawParts -> storeCommands (*command_line);
2107 uiuc_warnings_errors(2, *command_line);
2119 switch(gear_map[linetoken2])
2128 uiuc_warnings_errors(2, *command_line);
2139 switch(ice_map[linetoken2])
2143 if (check_float(linetoken3))
2144 token3 >> token_value;
2147 uiuc_warnings_errors(1, *command_line);
2150 iceTime = token_value;
2153 case transientTime_flag:
2155 if (check_float(linetoken3))
2156 token3 >> token_value;
2158 uiuc_warnings_errors(1, *command_line);
2160 transientTime = token_value;
2163 case eta_ice_final_flag:
2165 if (check_float(linetoken3))
2166 token3 >> token_value;
2168 uiuc_warnings_errors(1, *command_line);
2170 eta_ice_final = token_value;
2173 case beta_probe_wing_flag:
2175 if (check_float(linetoken3))
2176 token3 >> token_value;
2178 uiuc_warnings_errors(1, *command_line);
2181 x_probe_wing = token_value;
2184 case beta_probe_tail_flag:
2186 if (check_float(linetoken3))
2187 token3 >> token_value;
2189 uiuc_warnings_errors(1, *command_line);
2192 x_probe_tail = token_value;
2197 if (check_float(linetoken3))
2198 token3 >> token_value;
2200 uiuc_warnings_errors(1, *command_line);
2207 if (check_float(linetoken3))
2208 token3 >> token_value;
2210 uiuc_warnings_errors(1, *command_line);
2217 if (check_float(linetoken3))
2218 token3 >> token_value;
2220 uiuc_warnings_errors(1, *command_line);
2222 kCD_a = token_value;
2227 if (check_float(linetoken3))
2228 token3 >> token_value;
2230 uiuc_warnings_errors(1, *command_line);
2232 kCD_adot = token_value;
2237 if (check_float(linetoken3))
2238 token3 >> token_value;
2240 uiuc_warnings_errors(1, *command_line);
2242 kCD_q = token_value;
2247 if (check_float(linetoken3))
2248 token3 >> token_value;
2250 uiuc_warnings_errors(1, *command_line);
2252 kCD_de = token_value;
2257 if (check_float(linetoken3))
2258 token3 >> token_value;
2260 uiuc_warnings_errors(1, *command_line);
2267 if (check_float(linetoken3))
2268 token3 >> token_value;
2270 uiuc_warnings_errors(1, *command_line);
2277 if (check_float(linetoken3))
2278 token3 >> token_value;
2280 uiuc_warnings_errors(1, *command_line);
2282 kCX_a = token_value;
2287 if (check_float(linetoken3))
2288 token3 >> token_value;
2290 uiuc_warnings_errors(1, *command_line);
2292 kCX_a2 = token_value;
2297 if (check_float(linetoken3))
2298 token3 >> token_value;
2300 uiuc_warnings_errors(1, *command_line);
2302 kCX_a3 = token_value;
2307 if (check_float(linetoken3))
2308 token3 >> token_value;
2310 uiuc_warnings_errors(1, *command_line);
2312 kCX_adot = token_value;
2317 if (check_float(linetoken3))
2318 token3 >> token_value;
2320 uiuc_warnings_errors(1, *command_line);
2322 kCX_q = token_value;
2327 if (check_float(linetoken3))
2328 token3 >> token_value;
2330 uiuc_warnings_errors(1, *command_line);
2332 kCX_de = token_value;
2337 if (check_float(linetoken3))
2338 token3 >> token_value;
2340 uiuc_warnings_errors(1, *command_line);
2342 kCX_dr = token_value;
2347 if (check_float(linetoken3))
2348 token3 >> token_value;
2350 uiuc_warnings_errors(1, *command_line);
2352 kCX_df = token_value;
2357 if (check_float(linetoken3))
2358 token3 >> token_value;
2360 uiuc_warnings_errors(1, *command_line);
2362 kCX_adf = token_value;
2367 if (check_float(linetoken3))
2368 token3 >> token_value;
2370 uiuc_warnings_errors(1, *command_line);
2377 if (check_float(linetoken3))
2378 token3 >> token_value;
2380 uiuc_warnings_errors(1, *command_line);
2382 kCL_a = token_value;
2387 if (check_float(linetoken3))
2388 token3 >> token_value;
2390 uiuc_warnings_errors(1, *command_line);
2392 kCL_adot = token_value;
2397 if (check_float(linetoken3))
2398 token3 >> token_value;
2400 uiuc_warnings_errors(1, *command_line);
2402 kCL_q = token_value;
2407 if (check_float(linetoken3))
2408 token3 >> token_value;
2410 uiuc_warnings_errors(1, *command_line);
2412 kCL_de = token_value;
2417 if (check_float(linetoken3))
2418 token3 >> token_value;
2420 uiuc_warnings_errors(1, *command_line);
2427 if (check_float(linetoken3))
2428 token3 >> token_value;
2430 uiuc_warnings_errors(1, *command_line);
2432 kCZ_a = token_value;
2437 if (check_float(linetoken3))
2438 token3 >> token_value;
2440 uiuc_warnings_errors(1, *command_line);
2442 kCZ_a2 = token_value;
2447 if (check_float(linetoken3))
2448 token3 >> token_value;
2450 uiuc_warnings_errors(1, *command_line);
2452 kCZ_a3 = token_value;
2457 if (check_float(linetoken3))
2458 token3 >> token_value;
2460 uiuc_warnings_errors(1, *command_line);
2462 kCZ_adot = token_value;
2467 if (check_float(linetoken3))
2468 token3 >> token_value;
2470 uiuc_warnings_errors(1, *command_line);
2472 kCZ_q = token_value;
2477 if (check_float(linetoken3))
2478 token3 >> token_value;
2480 uiuc_warnings_errors(1, *command_line);
2482 kCZ_de = token_value;
2487 if (check_float(linetoken3))
2488 token3 >> token_value;
2490 uiuc_warnings_errors(1, *command_line);
2492 kCZ_deb2 = token_value;
2497 if (check_float(linetoken3))
2498 token3 >> token_value;
2500 uiuc_warnings_errors(1, *command_line);
2502 kCZ_df = token_value;
2507 if (check_float(linetoken3))
2508 token3 >> token_value;
2510 uiuc_warnings_errors(1, *command_line);
2512 kCZ_adf = token_value;
2517 if (check_float(linetoken3))
2518 token3 >> token_value;
2520 uiuc_warnings_errors(1, *command_line);
2527 if (check_float(linetoken3))
2528 token3 >> token_value;
2530 uiuc_warnings_errors(1, *command_line);
2532 kCm_a = token_value;
2537 if (check_float(linetoken3))
2538 token3 >> token_value;
2540 uiuc_warnings_errors(1, *command_line);
2542 kCm_a2 = token_value;
2547 if (check_float(linetoken3))
2548 token3 >> token_value;
2550 uiuc_warnings_errors(1, *command_line);
2552 kCm_adot = token_value;
2557 if (check_float(linetoken3))
2558 token3 >> token_value;
2560 uiuc_warnings_errors(1, *command_line);
2562 kCm_q = token_value;
2567 if (check_float(linetoken3))
2568 token3 >> token_value;
2570 uiuc_warnings_errors(1, *command_line);
2572 kCm_de = token_value;
2577 if (check_float(linetoken3))
2578 token3 >> token_value;
2580 uiuc_warnings_errors(1, *command_line);
2582 kCm_b2 = token_value;
2587 if (check_float(linetoken3))
2588 token3 >> token_value;
2590 uiuc_warnings_errors(1, *command_line);
2592 kCm_r = token_value;
2597 if (check_float(linetoken3))
2598 token3 >> token_value;
2600 uiuc_warnings_errors(1, *command_line);
2602 kCm_df = token_value;
2607 if (check_float(linetoken3))
2608 token3 >> token_value;
2610 uiuc_warnings_errors(1, *command_line);
2617 if (check_float(linetoken3))
2618 token3 >> token_value;
2620 uiuc_warnings_errors(1, *command_line);
2622 kCY_beta = token_value;
2627 if (check_float(linetoken3))
2628 token3 >> token_value;
2630 uiuc_warnings_errors(1, *command_line);
2632 kCY_p = token_value;
2637 if (check_float(linetoken3))
2638 token3 >> token_value;
2640 uiuc_warnings_errors(1, *command_line);
2642 kCY_r = token_value;
2647 if (check_float(linetoken3))
2648 token3 >> token_value;
2650 uiuc_warnings_errors(1, *command_line);
2652 kCY_da = token_value;
2657 if (check_float(linetoken3))
2658 token3 >> token_value;
2660 uiuc_warnings_errors(1, *command_line);
2662 kCY_dr = token_value;
2667 if (check_float(linetoken3))
2668 token3 >> token_value;
2670 uiuc_warnings_errors(1, *command_line);
2672 kCY_dra = token_value;
2677 if (check_float(linetoken3))
2678 token3 >> token_value;
2680 uiuc_warnings_errors(1, *command_line);
2682 kCY_bdot = token_value;
2687 if (check_float(linetoken3))
2688 token3 >> token_value;
2690 uiuc_warnings_errors(1, *command_line);
2697 if (check_float(linetoken3))
2698 token3 >> token_value;
2700 uiuc_warnings_errors(1, *command_line);
2702 kCl_beta = token_value;
2707 if (check_float(linetoken3))
2708 token3 >> token_value;
2710 uiuc_warnings_errors(1, *command_line);
2712 kCl_p = token_value;
2717 if (check_float(linetoken3))
2718 token3 >> token_value;
2720 uiuc_warnings_errors(1, *command_line);
2722 kCl_r = token_value;
2727 if (check_float(linetoken3))
2728 token3 >> token_value;
2730 uiuc_warnings_errors(1, *command_line);
2732 kCl_da = token_value;
2737 if (check_float(linetoken3))
2738 token3 >> token_value;
2740 uiuc_warnings_errors(1, *command_line);
2742 kCl_dr = token_value;
2747 if (check_float(linetoken3))
2748 token3 >> token_value;
2750 uiuc_warnings_errors(1, *command_line);
2752 kCl_daa = token_value;
2757 if (check_float(linetoken3))
2758 token3 >> token_value;
2760 uiuc_warnings_errors(1, *command_line);
2767 if (check_float(linetoken3))
2768 token3 >> token_value;
2770 uiuc_warnings_errors(1, *command_line);
2772 kCn_beta = token_value;
2777 if (check_float(linetoken3))
2778 token3 >> token_value;
2780 uiuc_warnings_errors(1, *command_line);
2782 kCn_p = token_value;
2787 if (check_float(linetoken3))
2788 token3 >> token_value;
2790 uiuc_warnings_errors(1, *command_line);
2792 kCn_r = token_value;
2797 if (check_float(linetoken3))
2798 token3 >> token_value;
2800 uiuc_warnings_errors(1, *command_line);
2802 kCn_da = token_value;
2807 if (check_float(linetoken3))
2808 token3 >> token_value;
2810 uiuc_warnings_errors(1, *command_line);
2812 kCn_dr = token_value;
2817 if (check_float(linetoken3))
2818 token3 >> token_value;
2820 uiuc_warnings_errors(1, *command_line);
2822 kCn_q = token_value;
2827 if (check_float(linetoken3))
2828 token3 >> token_value;
2830 uiuc_warnings_errors(1, *command_line);
2832 kCn_b3 = token_value;
2837 uiuc_warnings_errors(2, *command_line);
2847 static int fout_flag=0;
2851 fout.open("uiuc_record.dat");
2853 switch(record_map[linetoken2])
2855 /************************* Time ************************/
2856 case Simtime_record:
2858 recordParts -> storeCommands (*command_line);
2863 recordParts -> storeCommands (*command_line);
2867 /************************* Mass ************************/
2870 recordParts -> storeCommands (*command_line);
2875 recordParts -> storeCommands (*command_line);
2880 recordParts -> storeCommands (*command_line);
2885 recordParts -> storeCommands (*command_line);
2890 recordParts -> storeCommands (*command_line);
2895 recordParts -> storeCommands (*command_line);
2899 /*********************** Geometry **********************/
2900 case Dx_pilot_record:
2902 recordParts -> storeCommands (*command_line);
2905 case Dy_pilot_record:
2907 recordParts -> storeCommands (*command_line);
2910 case Dz_pilot_record:
2912 recordParts -> storeCommands (*command_line);
2917 recordParts -> storeCommands (*command_line);
2922 recordParts -> storeCommands (*command_line);
2927 recordParts -> storeCommands (*command_line);
2931 /********************** Positions **********************/
2932 case Lat_geocentric_record:
2934 recordParts -> storeCommands (*command_line);
2937 case Lon_geocentric_record:
2939 recordParts -> storeCommands (*command_line);
2942 case Radius_to_vehicle_record:
2944 recordParts -> storeCommands (*command_line);
2947 case Latitude_record:
2949 recordParts -> storeCommands (*command_line);
2952 case Longitude_record:
2954 recordParts -> storeCommands (*command_line);
2957 case Altitude_record:
2959 recordParts -> storeCommands (*command_line);
2964 recordParts -> storeCommands (*command_line);
2969 recordParts -> storeCommands (*command_line);
2974 recordParts -> storeCommands (*command_line);
2978 /******************** Accelerations ********************/
2979 case V_dot_north_record:
2981 recordParts -> storeCommands (*command_line);
2984 case V_dot_east_record:
2986 recordParts -> storeCommands (*command_line);
2989 case V_dot_down_record:
2991 recordParts -> storeCommands (*command_line);
2994 case U_dot_body_record:
2996 recordParts -> storeCommands (*command_line);
2999 case V_dot_body_record:
3001 recordParts -> storeCommands (*command_line);
3004 case W_dot_body_record:
3006 recordParts -> storeCommands (*command_line);
3009 case A_X_pilot_record:
3011 recordParts -> storeCommands (*command_line);
3014 case A_Y_pilot_record:
3016 recordParts -> storeCommands (*command_line);
3019 case A_Z_pilot_record:
3021 recordParts -> storeCommands (*command_line);
3026 recordParts -> storeCommands (*command_line);
3031 recordParts -> storeCommands (*command_line);
3036 recordParts -> storeCommands (*command_line);
3039 case N_X_pilot_record:
3041 recordParts -> storeCommands (*command_line);
3044 case N_Y_pilot_record:
3046 recordParts -> storeCommands (*command_line);
3049 case N_Z_pilot_record:
3051 recordParts -> storeCommands (*command_line);
3056 recordParts -> storeCommands (*command_line);
3061 recordParts -> storeCommands (*command_line);
3066 recordParts -> storeCommands (*command_line);
3069 case P_dot_body_record:
3071 recordParts -> storeCommands (*command_line);
3074 case Q_dot_body_record:
3076 recordParts -> storeCommands (*command_line);
3079 case R_dot_body_record:
3081 recordParts -> storeCommands (*command_line);
3085 /********************** Velocities *********************/
3086 case V_north_record:
3088 recordParts -> storeCommands (*command_line);
3093 recordParts -> storeCommands (*command_line);
3098 recordParts -> storeCommands (*command_line);
3101 case V_north_rel_ground_record:
3103 recordParts -> storeCommands (*command_line);
3106 case V_east_rel_ground_record:
3108 recordParts -> storeCommands (*command_line);
3111 case V_down_rel_ground_record:
3113 recordParts -> storeCommands (*command_line);
3116 case V_north_airmass_record:
3118 recordParts -> storeCommands (*command_line);
3121 case V_east_airmass_record:
3123 recordParts -> storeCommands (*command_line);
3126 case V_down_airmass_record:
3128 recordParts -> storeCommands (*command_line);
3131 case V_north_rel_airmass_record:
3133 recordParts -> storeCommands (*command_line);
3136 case V_east_rel_airmass_record:
3138 recordParts -> storeCommands (*command_line);
3141 case V_down_rel_airmass_record:
3143 recordParts -> storeCommands (*command_line);
3148 recordParts -> storeCommands (*command_line);
3153 recordParts -> storeCommands (*command_line);
3158 recordParts -> storeCommands (*command_line);
3163 recordParts -> storeCommands (*command_line);
3168 recordParts -> storeCommands (*command_line);
3173 recordParts -> storeCommands (*command_line);
3176 case V_rel_wind_record:
3178 recordParts -> storeCommands (*command_line);
3181 case V_true_kts_record:
3183 recordParts -> storeCommands (*command_line);
3186 case V_rel_ground_record:
3188 recordParts -> storeCommands (*command_line);
3191 case V_inertial_record:
3193 recordParts -> storeCommands (*command_line);
3196 case V_ground_speed_record:
3198 recordParts -> storeCommands (*command_line);
3201 case V_equiv_record:
3203 recordParts -> storeCommands (*command_line);
3206 case V_equiv_kts_record:
3208 recordParts -> storeCommands (*command_line);
3211 case V_calibrated_record:
3213 recordParts -> storeCommands (*command_line);
3216 case V_calibrated_kts_record:
3218 recordParts -> storeCommands (*command_line);
3221 case P_local_record:
3223 recordParts -> storeCommands (*command_line);
3226 case Q_local_record:
3228 recordParts -> storeCommands (*command_line);
3231 case R_local_record:
3233 recordParts -> storeCommands (*command_line);
3238 recordParts -> storeCommands (*command_line);
3243 recordParts -> storeCommands (*command_line);
3248 recordParts -> storeCommands (*command_line);
3251 case P_total_record:
3253 recordParts -> storeCommands (*command_line);
3256 case Q_total_record:
3258 recordParts -> storeCommands (*command_line);
3261 case R_total_record:
3263 recordParts -> storeCommands (*command_line);
3266 case Phi_dot_record:
3268 recordParts -> storeCommands (*command_line);
3271 case Theta_dot_record:
3273 recordParts -> storeCommands (*command_line);
3276 case Psi_dot_record:
3278 recordParts -> storeCommands (*command_line);
3281 case Latitude_dot_record:
3283 recordParts -> storeCommands (*command_line);
3286 case Longitude_dot_record:
3288 recordParts -> storeCommands (*command_line);
3291 case Radius_dot_record:
3293 recordParts -> storeCommands (*command_line);
3297 /************************ Angles ***********************/
3300 recordParts -> storeCommands (*command_line);
3303 case Alpha_deg_record:
3305 recordParts -> storeCommands (*command_line);
3308 case Alpha_dot_record:
3310 recordParts -> storeCommands (*command_line);
3313 case Alpha_dot_deg_record:
3315 recordParts -> storeCommands (*command_line);
3320 recordParts -> storeCommands (*command_line);
3323 case Beta_deg_record:
3325 recordParts -> storeCommands (*command_line);
3328 case Beta_dot_record:
3330 recordParts -> storeCommands (*command_line);
3333 case Beta_dot_deg_record:
3335 recordParts -> storeCommands (*command_line);
3338 case Gamma_vert_record:
3340 recordParts -> storeCommands (*command_line);
3343 case Gamma_vert_deg_record:
3345 recordParts -> storeCommands (*command_line);
3348 case Gamma_horiz_record:
3350 recordParts -> storeCommands (*command_line);
3353 case Gamma_horiz_deg_record:
3355 recordParts -> storeCommands (*command_line);
3359 /**************** Atmospheric Properties ***************/
3360 case Density_record:
3362 recordParts -> storeCommands (*command_line);
3365 case V_sound_record:
3367 recordParts -> storeCommands (*command_line);
3370 case Mach_number_record:
3372 recordParts -> storeCommands (*command_line);
3375 case Static_pressure_record:
3377 recordParts -> storeCommands (*command_line);
3380 case Total_pressure_record:
3382 recordParts -> storeCommands (*command_line);
3385 case Impact_pressure_record:
3387 recordParts -> storeCommands (*command_line);
3390 case Dynamic_pressure_record:
3392 recordParts -> storeCommands (*command_line);
3395 case Static_temperature_record:
3397 recordParts -> storeCommands (*command_line);
3400 case Total_temperature_record:
3402 recordParts -> storeCommands (*command_line);
3406 /******************** Earth Properties *****************/
3407 case Gravity_record:
3409 recordParts -> storeCommands (*command_line);
3412 case Sea_level_radius_record:
3414 recordParts -> storeCommands (*command_line);
3417 case Earth_position_angle_record:
3419 recordParts -> storeCommands (*command_line);
3422 case Runway_altitude_record:
3424 recordParts -> storeCommands (*command_line);
3427 case Runway_latitude_record:
3429 recordParts -> storeCommands (*command_line);
3432 case Runway_longitude_record:
3434 recordParts -> storeCommands (*command_line);
3437 case Runway_heading_record:
3439 recordParts -> storeCommands (*command_line);
3442 case Radius_to_rwy_record:
3444 recordParts -> storeCommands (*command_line);
3447 case D_pilot_north_of_rwy_record:
3449 recordParts -> storeCommands (*command_line);
3452 case D_pilot_east_of_rwy_record:
3454 recordParts -> storeCommands (*command_line);
3457 case D_pilot_above_rwy_record:
3459 recordParts -> storeCommands (*command_line);
3462 case X_pilot_rwy_record:
3464 recordParts -> storeCommands (*command_line);
3467 case Y_pilot_rwy_record:
3469 recordParts -> storeCommands (*command_line);
3472 case H_pilot_rwy_record:
3474 recordParts -> storeCommands (*command_line);
3477 case D_cg_north_of_rwy_record:
3479 recordParts -> storeCommands (*command_line);
3482 case D_cg_east_of_rwy_record:
3484 recordParts -> storeCommands (*command_line);
3487 case D_cg_above_rwy_record:
3489 recordParts -> storeCommands (*command_line);
3492 case X_cg_rwy_record:
3494 recordParts -> storeCommands (*command_line);
3497 case Y_cg_rwy_record:
3499 recordParts -> storeCommands (*command_line);
3502 case H_cg_rwy_record:
3504 recordParts -> storeCommands (*command_line);
3508 /********************* Engine Inputs *******************/
3509 case Throttle_pct_record:
3511 recordParts -> storeCommands (*command_line);
3514 case Throttle_3_record:
3516 recordParts -> storeCommands (*command_line);
3520 /******************** Control Inputs *******************/
3521 case Long_control_record:
3523 recordParts -> storeCommands (*command_line);
3526 case Long_trim_record:
3528 recordParts -> storeCommands (*command_line);
3531 case Long_trim_deg_record:
3533 recordParts -> storeCommands (*command_line);
3536 case elevator_record:
3538 recordParts -> storeCommands (*command_line);
3541 case elevator_deg_record:
3543 recordParts -> storeCommands (*command_line);
3546 case Lat_control_record:
3548 recordParts -> storeCommands (*command_line);
3551 case aileron_record:
3553 recordParts -> storeCommands (*command_line);
3556 case aileron_deg_record:
3558 recordParts -> storeCommands (*command_line);
3561 case Rudder_pedal_record:
3563 recordParts -> storeCommands (*command_line);
3568 recordParts -> storeCommands (*command_line);
3571 case rudder_deg_record:
3573 recordParts -> storeCommands (*command_line);
3576 case Flap_handle_record:
3578 recordParts -> storeCommands (*command_line);
3583 recordParts -> storeCommands (*command_line);
3586 case flap_deg_record:
3588 recordParts -> storeCommands (*command_line);
3592 /****************** Aero Coefficients ******************/
3595 recordParts -> storeCommands (*command_line);
3600 recordParts -> storeCommands (*command_line);
3603 case CDfadeI_record:
3605 recordParts -> storeCommands (*command_line);
3610 recordParts -> storeCommands (*command_line);
3613 case CDfadfI_record:
3615 recordParts -> storeCommands (*command_line);
3620 recordParts -> storeCommands (*command_line);
3625 recordParts -> storeCommands (*command_line);
3630 recordParts -> storeCommands (*command_line);
3633 case CLfadeI_record:
3635 recordParts -> storeCommands (*command_line);
3640 recordParts -> storeCommands (*command_line);
3643 case CLfadfI_record:
3645 recordParts -> storeCommands (*command_line);
3650 recordParts -> storeCommands (*command_line);
3655 recordParts -> storeCommands (*command_line);
3660 recordParts -> storeCommands (*command_line);
3663 case CmfadeI_record:
3665 recordParts -> storeCommands (*command_line);
3670 recordParts -> storeCommands (*command_line);
3673 case CmfadfI_record:
3675 recordParts -> storeCommands (*command_line);
3680 recordParts -> storeCommands (*command_line);
3683 case CYfadaI_record:
3685 recordParts -> storeCommands (*command_line);
3688 case CYfbetadrI_record:
3690 recordParts -> storeCommands (*command_line);
3695 recordParts -> storeCommands (*command_line);
3698 case ClfadaI_record:
3700 recordParts -> storeCommands (*command_line);
3703 case ClfbetadrI_record:
3705 recordParts -> storeCommands (*command_line);
3710 recordParts -> storeCommands (*command_line);
3713 case CnfadaI_record:
3715 recordParts -> storeCommands (*command_line);
3718 case CnfbetadrI_record:
3720 recordParts -> storeCommands (*command_line);
3724 /******************** Ice Detection ********************/
3725 case CLclean_wing_record:
3727 recordParts -> storeCommands (*command_line);
3730 case CLiced_wing_record:
3732 recordParts -> storeCommands (*command_line);
3735 case CLclean_tail_record:
3737 recordParts -> storeCommands (*command_line);
3740 case CLiced_tail_record:
3742 recordParts -> storeCommands (*command_line);
3745 case Lift_clean_wing_record:
3747 recordParts -> storeCommands (*command_line);
3750 case Lift_iced_wing_record:
3752 recordParts -> storeCommands (*command_line);
3755 case Lift_clean_tail_record:
3757 recordParts -> storeCommands (*command_line);
3760 case Lift_iced_tail_record:
3762 recordParts -> storeCommands (*command_line);
3765 case Gamma_clean_wing_record:
3767 recordParts -> storeCommands (*command_line);
3770 case Gamma_iced_wing_record:
3772 recordParts -> storeCommands (*command_line);
3775 case Gamma_clean_tail_record:
3777 recordParts -> storeCommands (*command_line);
3780 case Gamma_iced_tail_record:
3782 recordParts -> storeCommands (*command_line);
3785 case w_clean_wing_record:
3787 recordParts -> storeCommands (*command_line);
3790 case w_iced_wing_record:
3792 recordParts -> storeCommands (*command_line);
3795 case w_clean_tail_record:
3797 recordParts -> storeCommands (*command_line);
3800 case w_iced_tail_record:
3802 recordParts -> storeCommands (*command_line);
3805 case V_total_clean_wing_record:
3807 recordParts -> storeCommands (*command_line);
3810 case V_total_iced_wing_record:
3812 recordParts -> storeCommands (*command_line);
3815 case V_total_clean_tail_record:
3817 recordParts -> storeCommands (*command_line);
3820 case V_total_iced_tail_record:
3822 recordParts -> storeCommands (*command_line);
3825 case beta_flow_clean_wing_record:
3827 recordParts -> storeCommands (*command_line);
3830 case beta_flow_clean_wing_deg_record:
3832 recordParts -> storeCommands (*command_line);
3835 case beta_flow_iced_wing_record:
3837 recordParts -> storeCommands (*command_line);
3840 case beta_flow_iced_wing_deg_record:
3842 recordParts -> storeCommands (*command_line);
3845 case beta_flow_clean_tail_record:
3847 recordParts -> storeCommands (*command_line);
3850 case beta_flow_clean_tail_deg_record:
3852 recordParts -> storeCommands (*command_line);
3855 case beta_flow_iced_tail_record:
3857 recordParts -> storeCommands (*command_line);
3860 case beta_flow_iced_tail_deg_record:
3862 recordParts -> storeCommands (*command_line);
3865 case Dbeta_flow_wing_record:
3867 recordParts -> storeCommands (*command_line);
3870 case Dbeta_flow_wing_deg_record:
3872 recordParts -> storeCommands (*command_line);
3875 case Dbeta_flow_tail_record:
3877 recordParts -> storeCommands (*command_line);
3880 case Dbeta_flow_tail_deg_record:
3882 recordParts -> storeCommands (*command_line);
3885 case pct_beta_flow_wing_record:
3887 recordParts -> storeCommands (*command_line);
3890 case pct_beta_flow_tail_record:
3892 recordParts -> storeCommands (*command_line);
3896 /************************ Forces ***********************/
3897 case F_X_wind_record:
3899 recordParts -> storeCommands (*command_line);
3902 case F_Y_wind_record:
3904 recordParts -> storeCommands (*command_line);
3907 case F_Z_wind_record:
3909 recordParts -> storeCommands (*command_line);
3912 case F_X_aero_record:
3914 recordParts -> storeCommands (*command_line);
3917 case F_Y_aero_record:
3919 recordParts -> storeCommands (*command_line);
3922 case F_Z_aero_record:
3924 recordParts -> storeCommands (*command_line);
3927 case F_X_engine_record:
3929 recordParts -> storeCommands (*command_line);
3932 case F_Y_engine_record:
3934 recordParts -> storeCommands (*command_line);
3937 case F_Z_engine_record:
3939 recordParts -> storeCommands (*command_line);
3942 case F_X_gear_record:
3944 recordParts -> storeCommands (*command_line);
3947 case F_Y_gear_record:
3949 recordParts -> storeCommands (*command_line);
3952 case F_Z_gear_record:
3954 recordParts -> storeCommands (*command_line);
3959 recordParts -> storeCommands (*command_line);
3964 recordParts -> storeCommands (*command_line);
3969 recordParts -> storeCommands (*command_line);
3972 case F_north_record:
3974 recordParts -> storeCommands (*command_line);
3979 recordParts -> storeCommands (*command_line);
3984 recordParts -> storeCommands (*command_line);
3988 /*********************** Moments ***********************/
3989 case M_l_aero_record:
3991 recordParts -> storeCommands (*command_line);
3994 case M_m_aero_record:
3996 recordParts -> storeCommands (*command_line);
3999 case M_n_aero_record:
4001 recordParts -> storeCommands (*command_line);
4004 case M_l_engine_record:
4006 recordParts -> storeCommands (*command_line);
4009 case M_m_engine_record:
4011 recordParts -> storeCommands (*command_line);
4014 case M_n_engine_record:
4016 recordParts -> storeCommands (*command_line);
4019 case M_l_gear_record:
4021 recordParts -> storeCommands (*command_line);
4024 case M_m_gear_record:
4026 recordParts -> storeCommands (*command_line);
4029 case M_n_gear_record:
4031 recordParts -> storeCommands (*command_line);
4036 recordParts -> storeCommands (*command_line);
4041 recordParts -> storeCommands (*command_line);
4046 recordParts -> storeCommands (*command_line);
4051 uiuc_warnings_errors(2, *command_line);
4061 switch(misc_map[linetoken2])
4063 case simpleHingeMomentCoef_flag:
4065 if (check_float(linetoken3))
4066 token3 >> token_value;
4068 uiuc_warnings_errors(1, *command_line);
4070 simpleHingeMomentCoef = token_value;
4073 case dfTimefdf_flag:
4075 dfTimefdf = linetoken3;
4076 /* call 1D File Reader with file name (dfTimefdf);
4077 function returns array of dfs (dfArray) and
4078 corresponding time values (TimeArray) and max
4079 number of terms in arrays (ndf) */
4080 uiuc_1DdataFileReader(dfTimefdf,
4082 dfTimefdf_TimeArray,
4088 uiuc_warnings_errors(2, *command_line);
4098 if (linetoken1=="*")
4100 uiuc_warnings_errors(2, *command_line);
4104 } // end keyword map