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 #if defined( __MWERKS__ )
95 // -dw- optimizer chokes (big-time) trying to optimize humongous
96 // loop/switch statements
97 #pragma optimization_level 0
103 #include "uiuc_menu.h"
113 bool check_float(string &token)
116 istrstream stream(token.c_str());
117 return (stream >> value);
121 void uiuc_menu( string aircraft_name )
125 int token_value_recordRate;
126 int token_value_convert1, token_value_convert2, token_value_convert3;
136 /* the following default setting should eventually be moved to a default or uiuc_init routine */
138 recordRate = 1; /* record every time step, default */
139 recordStartTime = 0; /* record from beginning of simulation */
141 /* set speed at which dynamic pressure terms will be accounted for,
142 since if velocity is too small, coefficients will go to infinity */
143 dyn_on_speed = 33; /* 20 kts, default */
147 /* Read the file and get the list of commands */
148 airplane = new ParseFile(aircraft_name); /* struct that includes all lines of the input file */
149 command_list = airplane -> getCommands();
150 /* structs to include all parts included in the input file for specific keyword groups */
151 initParts = new ParseFile();
152 geometryParts = new ParseFile();
153 massParts = new ParseFile();
154 engineParts = new ParseFile();
155 aeroDragParts = new ParseFile();
156 aeroLiftParts = new ParseFile();
157 aeroPitchParts = new ParseFile();
158 aeroSideforceParts = new ParseFile();
159 aeroRollParts = new ParseFile();
160 aeroYawParts = new ParseFile();
161 gearParts = new ParseFile();
162 recordParts = new ParseFile();
164 if (command_list.begin() == command_list.end())
166 cerr << "UIUC ERROR: File " << aircraft_name <<" does not exist" << endl;
170 for (LIST command_line = command_list.begin(); command_line!=command_list.end(); ++command_line)
172 cout << *command_line << endl;
174 linetoken1 = airplane -> getToken (*command_line, 1);
175 linetoken2 = airplane -> getToken (*command_line, 2);
176 linetoken3 = airplane -> getToken (*command_line, 3);
177 linetoken4 = airplane -> getToken (*command_line, 4);
178 linetoken5 = airplane -> getToken (*command_line, 5);
179 linetoken6 = airplane -> getToken (*command_line, 6);
181 istrstream token3(linetoken3.c_str());
182 istrstream token4(linetoken4.c_str());
183 istrstream token5(linetoken5.c_str());
184 istrstream token6(linetoken6.c_str());
186 switch (Keyword_map[linetoken1])
190 switch(init_map[linetoken2])
194 if (check_float(linetoken3))
195 token3 >> token_value;
197 uiuc_warnings_errors(1, *command_line);
199 Dx_pilot = token_value;
200 initParts -> storeCommands (*command_line);
205 if (check_float(linetoken3))
206 token3 >> token_value;
208 uiuc_warnings_errors(1, *command_line);
210 Dy_pilot = token_value;
211 initParts -> storeCommands (*command_line);
216 if (check_float(linetoken3))
217 token3 >> token_value;
219 uiuc_warnings_errors(1, *command_line);
221 Dz_pilot = token_value;
222 initParts -> storeCommands (*command_line);
227 if (check_float(linetoken3))
228 token3 >> token_value;
230 uiuc_warnings_errors(1, *command_line);
233 initParts -> storeCommands (*command_line);
238 if (check_float(linetoken3))
239 token3 >> token_value;
241 uiuc_warnings_errors(1, *command_line);
244 initParts -> storeCommands (*command_line);
249 if (check_float(linetoken3))
250 token3 >> token_value;
252 uiuc_warnings_errors(1, *command_line);
255 initParts -> storeCommands (*command_line);
260 if (check_float(linetoken3))
261 token3 >> token_value;
263 uiuc_warnings_errors(1, *command_line);
265 Altitude = token_value;
266 initParts -> storeCommands (*command_line);
271 if (check_float(linetoken3))
272 token3 >> token_value;
274 uiuc_warnings_errors(1, *command_line);
276 V_north = token_value;
277 initParts -> storeCommands (*command_line);
282 initParts -> storeCommands (*command_line);
283 if (check_float(linetoken3))
284 token3 >> token_value;
286 uiuc_warnings_errors(1, *command_line);
288 V_east = token_value;
293 if (check_float(linetoken3))
294 token3 >> token_value;
296 uiuc_warnings_errors(1, *command_line);
298 V_down = token_value;
299 initParts -> storeCommands (*command_line);
304 if (check_float(linetoken3))
305 token3 >> token_value;
307 uiuc_warnings_errors(1, *command_line);
309 P_body = token_value;
310 initParts -> storeCommands (*command_line);
315 if (check_float(linetoken3))
316 token3 >> token_value;
318 uiuc_warnings_errors(1, *command_line);
320 Q_body = token_value;
321 initParts -> storeCommands (*command_line);
326 if (check_float(linetoken3))
327 token3 >> token_value;
329 uiuc_warnings_errors(1, *command_line);
331 R_body = token_value;
332 initParts -> storeCommands (*command_line);
337 if (check_float(linetoken3))
338 token3 >> token_value;
340 uiuc_warnings_errors(1, *command_line);
343 initParts -> storeCommands (*command_line);
348 if (check_float(linetoken3))
349 token3 >> token_value;
351 uiuc_warnings_errors(1, *command_line);
354 initParts -> storeCommands (*command_line);
359 if (check_float(linetoken3))
360 token3 >> token_value;
362 uiuc_warnings_errors(1, *command_line);
365 initParts -> storeCommands (*command_line);
370 if (check_float(linetoken3))
371 token3 >> token_value;
373 uiuc_warnings_errors(1, *command_line);
375 Long_trim = token_value;
376 initParts -> storeCommands (*command_line);
379 case recordRate_flag:
381 //can't use check_float since variable is integer
382 token3 >> token_value_recordRate;
383 recordRate = 120 / token_value_recordRate;
386 case recordStartTime_flag:
388 if (check_float(linetoken3))
389 token3 >> token_value;
391 uiuc_warnings_errors(1, *command_line);
393 recordStartTime = token_value;
396 case nondim_rate_V_rel_wind_flag:
398 nondim_rate_V_rel_wind = true;
401 case dyn_on_speed_flag:
403 if (check_float(linetoken3))
404 token3 >> token_value;
406 uiuc_warnings_errors(1, *command_line);
408 dyn_on_speed = token_value;
413 uiuc_warnings_errors(2, *command_line);
423 switch(geometry_map[linetoken2])
427 if (check_float(linetoken3))
428 token3 >> token_value;
430 uiuc_warnings_errors(1, *command_line);
433 geometryParts -> storeCommands (*command_line);
438 if (check_float(linetoken3))
439 token3 >> token_value;
441 uiuc_warnings_errors(1, *command_line);
444 geometryParts -> storeCommands (*command_line);
449 if (check_float(linetoken3))
450 token3 >> token_value;
452 uiuc_warnings_errors(1, *command_line);
455 geometryParts -> storeCommands (*command_line);
460 if (check_float(linetoken3))
461 token3 >> token_value;
463 uiuc_warnings_errors(1, *command_line);
466 geometryParts -> storeCommands (*command_line);
471 if (check_float(linetoken3))
472 token3 >> token_value;
474 uiuc_warnings_errors(1, *command_line);
477 geometryParts -> storeCommands (*command_line);
482 if (check_float(linetoken3))
483 token3 >> token_value;
485 uiuc_warnings_errors(1, *command_line);
488 geometryParts -> storeCommands (*command_line);
493 if (check_float(linetoken3))
494 token3 >> token_value;
496 uiuc_warnings_errors(1, *command_line);
499 geometryParts -> storeCommands (*command_line);
504 uiuc_warnings_errors(2, *command_line);
509 } // end geometry map
512 case controlSurface_flag:
514 switch(controlSurface_map[linetoken2])
518 if (check_float(linetoken3))
519 token3 >> token_value;
521 uiuc_warnings_errors(1, *command_line);
525 if (check_float(linetoken4))
526 token4 >> token_value;
528 uiuc_warnings_errors(1, *command_line);
535 if (check_float(linetoken3))
536 token3 >> token_value;
538 uiuc_warnings_errors(1, *command_line);
542 if (check_float(linetoken4))
543 token4 >> token_value;
545 uiuc_warnings_errors(1, *command_line);
552 if (check_float(linetoken3))
553 token3 >> token_value;
555 uiuc_warnings_errors(1, *command_line);
559 if (check_float(linetoken4))
560 token4 >> token_value;
562 uiuc_warnings_errors(1, *command_line);
567 case set_Long_trim_flag:
569 if (check_float(linetoken3))
570 token3 >> token_value;
572 uiuc_warnings_errors(1, *command_line);
574 set_Long_trim = true;
575 elevator_tab = token_value;
578 case set_Long_trim_deg_flag:
580 if (check_float(linetoken3))
581 token3 >> token_value;
583 uiuc_warnings_errors(1, *command_line);
585 set_Long_trim = true;
586 elevator_tab = token_value * DEG_TO_RAD;
589 case zero_Long_trim_flag:
591 zero_Long_trim = true;
594 case elevator_step_flag:
596 // set step input flag
597 elevator_step = true;
599 // read in step angle in degrees and convert
600 if (check_float(linetoken3))
601 token3 >> token_value;
603 uiuc_warnings_errors(1, *command_line);
605 elevator_step_angle = token_value * DEG_TO_RAD;
607 // read in step start time
608 if (check_float(linetoken4))
609 token4 >> token_value;
611 uiuc_warnings_errors(1, *command_line);
613 elevator_step_startTime = token_value;
616 case elevator_singlet_flag:
618 // set singlet input flag
619 elevator_singlet = true;
621 // read in singlet angle in degrees and convert
622 if (check_float(linetoken3))
623 token3 >> token_value;
625 uiuc_warnings_errors(1, *command_line);
627 elevator_singlet_angle = token_value * DEG_TO_RAD;
629 // read in singlet start time
630 if (check_float(linetoken4))
631 token4 >> token_value;
633 uiuc_warnings_errors(1, *command_line);
635 elevator_singlet_startTime = token_value;
637 // read in singlet duration
638 if (check_float(linetoken5))
639 token5 >> token_value;
641 uiuc_warnings_errors(1, *command_line);
643 elevator_singlet_duration = token_value;
646 case elevator_doublet_flag:
648 // set doublet input flag
649 elevator_doublet = true;
651 // read in doublet angle in degrees and convert
652 if (check_float(linetoken3))
653 token3 >> token_value;
655 uiuc_warnings_errors(1, *command_line);
657 elevator_doublet_angle = token_value * DEG_TO_RAD;
659 // read in doublet start time
660 if (check_float(linetoken4))
661 token4 >> token_value;
663 uiuc_warnings_errors(1, *command_line);
665 elevator_doublet_startTime = token_value;
667 // read in doublet duration
668 if (check_float(linetoken5))
669 token5 >> token_value;
671 uiuc_warnings_errors(1, *command_line);
673 elevator_doublet_duration = token_value;
676 case elevator_input_flag:
678 elevator_input = true;
679 elevator_input_file = linetoken3;
680 token4 >> token_value_convert1;
681 token5 >> token_value_convert2;
682 convert_y = uiuc_convert(token_value_convert1);
683 convert_x = uiuc_convert(token_value_convert2);
684 uiuc_1DdataFileReader(elevator_input_file,
685 elevator_input_timeArray,
686 elevator_input_deArray,
687 elevator_input_ntime);
688 token6 >> token_value;
689 elevator_input_startTime = token_value;
694 uiuc_warnings_errors(2, *command_line);
699 } // end controlSurface map
704 switch(mass_map[linetoken2])
708 if (check_float(linetoken3))
709 token3 >> token_value;
711 uiuc_warnings_errors(1, *command_line);
713 Weight = token_value;
714 Mass = Weight * INVG;
715 massParts -> storeCommands (*command_line);
720 if (check_float(linetoken3))
721 token3 >> token_value;
723 uiuc_warnings_errors(1, *command_line);
726 massParts -> storeCommands (*command_line);
731 if (check_float(linetoken3))
732 token3 >> token_value;
734 uiuc_warnings_errors(1, *command_line);
737 massParts -> storeCommands (*command_line);
742 if (check_float(linetoken3))
743 token3 >> token_value;
745 uiuc_warnings_errors(1, *command_line);
748 massParts -> storeCommands (*command_line);
753 if (check_float(linetoken3))
754 token3 >> token_value;
756 uiuc_warnings_errors(1, *command_line);
759 massParts -> storeCommands (*command_line);
764 if (check_float(linetoken3))
765 token3 >> token_value;
767 uiuc_warnings_errors(1, *command_line);
770 massParts -> storeCommands (*command_line);
775 uiuc_warnings_errors(2, *command_line);
785 switch(engine_map[linetoken2])
787 case simpleSingle_flag:
789 if (check_float(linetoken3))
790 token3 >> token_value;
792 uiuc_warnings_errors(1, *command_line);
794 simpleSingleMaxThrust = token_value;
795 engineParts -> storeCommands (*command_line);
800 engineParts -> storeCommands (*command_line);
805 engineParts -> storeCommands (*command_line);
810 uiuc_warnings_errors(2, *command_line);
820 switch(CD_map[linetoken2])
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);
855 aeroDragParts -> storeCommands (*command_line);
860 if (check_float(linetoken3))
861 token3 >> token_value;
863 uiuc_warnings_errors(1, *command_line);
865 CD_adot = token_value;
866 CD_adot_clean = CD_adot;
867 aeroDragParts -> storeCommands (*command_line);
872 if (check_float(linetoken3))
873 token3 >> token_value;
875 uiuc_warnings_errors(1, *command_line);
879 aeroDragParts -> storeCommands (*command_line);
884 if (check_float(linetoken3))
885 token3 >> token_value;
887 uiuc_warnings_errors(1, *command_line);
890 aeroDragParts -> storeCommands (*command_line);
895 if (check_float(linetoken3))
896 token3 >> token_value;
898 uiuc_warnings_errors(1, *command_line);
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 (CDfa) and conversion
913 factors; function returns array of alphas (aArray) and
914 corresponding CD values (CDArray) and max number of
915 terms in arrays (nAlpha) */
916 uiuc_1DdataFileReader(CDfa,
920 aeroDragParts -> storeCommands (*command_line);
926 token4 >> token_value_convert1;
927 token5 >> token_value_convert2;
928 convert_y = uiuc_convert(token_value_convert1);
929 convert_x = uiuc_convert(token_value_convert2);
930 /* call 1D File Reader with file name (CDfCL) and conversion
931 factors; function returns array of CLs (CLArray) and
932 corresponding CD values (CDArray) and max number of
933 terms in arrays (nCL) */
934 uiuc_1DdataFileReader(CDfCL,
938 aeroDragParts -> storeCommands (*command_line);
944 token4 >> token_value_convert1;
945 token5 >> token_value_convert2;
946 token6 >> token_value_convert3;
947 convert_z = uiuc_convert(token_value_convert1);
948 convert_x = uiuc_convert(token_value_convert2);
949 convert_y = uiuc_convert(token_value_convert3);
950 /* call 2D File Reader with file name (CDfade) and
951 conversion factors; function returns array of
952 elevator deflections (deArray) and corresponding
953 alpha (aArray) and delta CD (CDArray) values and
954 max number of terms in alpha arrays (nAlphaArray)
955 and deflection array (nde) */
956 uiuc_2DdataFileReader(CDfade,
962 aeroDragParts -> storeCommands (*command_line);
968 token4 >> token_value_convert1;
969 token5 >> token_value_convert2;
970 convert_y = uiuc_convert(token_value_convert1);
971 convert_x = uiuc_convert(token_value_convert2);
972 /* call 1D File Reader with file name (CDfdf) and conversion
973 factors; function returns array of dfs (dfArray) and
974 corresponding CD values (CDArray) and max number of
975 terms in arrays (ndf) */
976 uiuc_1DdataFileReader(CDfdf,
980 aeroDragParts -> storeCommands (*command_line);
986 token4 >> token_value_convert1;
987 token5 >> token_value_convert2;
988 token6 >> token_value_convert3;
989 convert_z = uiuc_convert(token_value_convert1);
990 convert_x = uiuc_convert(token_value_convert2);
991 convert_y = uiuc_convert(token_value_convert3);
992 /* call 2D File Reader with file name (CDfadf) and
993 conversion factors; function returns array of
994 flap deflections (dfArray) and corresponding
995 alpha (aArray) and delta CD (CDArray) values and
996 max number of terms in alpha arrays (nAlphaArray)
997 and deflection array (ndf) */
998 uiuc_2DdataFileReader(CDfadf,
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);
1040 aeroDragParts -> storeCommands (*command_line);
1045 if (check_float(linetoken3))
1046 token3 >> token_value;
1048 uiuc_warnings_errors(1, *command_line);
1050 CX_a2 = token_value;
1051 CX_a2_clean = CX_a2;
1052 aeroDragParts -> storeCommands (*command_line);
1057 if (check_float(linetoken3))
1058 token3 >> token_value;
1060 uiuc_warnings_errors(1, *command_line);
1062 CX_a3 = token_value;
1063 CX_a3_clean = CX_a3;
1064 aeroDragParts -> storeCommands (*command_line);
1069 if (check_float(linetoken3))
1070 token3 >> token_value;
1072 uiuc_warnings_errors(1, *command_line);
1074 CX_adot = token_value;
1075 CX_adot_clean = CX_adot;
1076 aeroDragParts -> storeCommands (*command_line);
1081 if (check_float(linetoken3))
1082 token3 >> token_value;
1084 uiuc_warnings_errors(1, *command_line);
1088 aeroDragParts -> storeCommands (*command_line);
1093 if (check_float(linetoken3))
1094 token3 >> token_value;
1096 uiuc_warnings_errors(1, *command_line);
1098 CX_de = token_value;
1099 CX_de_clean = CX_de;
1100 aeroDragParts -> storeCommands (*command_line);
1105 if (check_float(linetoken3))
1106 token3 >> token_value;
1108 uiuc_warnings_errors(1, *command_line);
1110 CX_dr = token_value;
1111 CX_dr_clean = CX_dr;
1112 aeroDragParts -> storeCommands (*command_line);
1117 if (check_float(linetoken3))
1118 token3 >> token_value;
1120 uiuc_warnings_errors(1, *command_line);
1122 CX_df = token_value;
1123 CX_df_clean = CX_df;
1124 aeroDragParts -> storeCommands (*command_line);
1129 if (check_float(linetoken3))
1130 token3 >> token_value;
1132 uiuc_warnings_errors(1, *command_line);
1134 CX_adf = token_value;
1135 CX_adf_clean = CX_adf;
1136 aeroDragParts -> storeCommands (*command_line);
1141 uiuc_warnings_errors(2, *command_line);
1151 switch(CL_map[linetoken2])
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);
1174 aeroLiftParts -> storeCommands (*command_line);
1179 if (check_float(linetoken3))
1180 token3 >> token_value;
1182 uiuc_warnings_errors(1, *command_line);
1184 CL_adot = token_value;
1185 CL_adot_clean = CL_adot;
1186 aeroLiftParts -> storeCommands (*command_line);
1191 if (check_float(linetoken3))
1192 token3 >> token_value;
1194 uiuc_warnings_errors(1, *command_line);
1198 aeroLiftParts -> storeCommands (*command_line);
1203 if (check_float(linetoken3))
1204 token3 >> token_value;
1206 uiuc_warnings_errors(1, *command_line);
1208 CL_ih = token_value;
1209 aeroLiftParts -> storeCommands (*command_line);
1214 if (check_float(linetoken3))
1215 token3 >> token_value;
1217 uiuc_warnings_errors(1, *command_line);
1219 CL_de = token_value;
1220 CL_de_clean = CL_de;
1221 aeroLiftParts -> storeCommands (*command_line);
1227 token4 >> token_value_convert1;
1228 token5 >> token_value_convert2;
1229 convert_y = uiuc_convert(token_value_convert1);
1230 convert_x = uiuc_convert(token_value_convert2);
1231 /* call 1D File Reader with file name (CLfa) and conversion
1232 factors; function returns array of alphas (aArray) and
1233 corresponding CL values (CLArray) and max number of
1234 terms in arrays (nAlpha) */
1235 uiuc_1DdataFileReader(CLfa,
1239 aeroLiftParts -> storeCommands (*command_line);
1244 CLfade = linetoken3;
1245 token4 >> token_value_convert1;
1246 token5 >> token_value_convert2;
1247 token6 >> token_value_convert3;
1248 convert_z = uiuc_convert(token_value_convert1);
1249 convert_x = uiuc_convert(token_value_convert2);
1250 convert_y = uiuc_convert(token_value_convert3);
1251 /* call 2D File Reader with file name (CLfade) and
1252 conversion factors; function returns array of
1253 elevator deflections (deArray) and corresponding
1254 alpha (aArray) and delta CL (CLArray) values and
1255 max number of terms in alpha arrays (nAlphaArray)
1256 and deflection array (nde) */
1257 uiuc_2DdataFileReader(CLfade,
1263 aeroLiftParts -> storeCommands (*command_line);
1269 token4 >> token_value_convert1;
1270 token5 >> token_value_convert2;
1271 convert_y = uiuc_convert(token_value_convert1);
1272 convert_x = uiuc_convert(token_value_convert2);
1273 /* call 1D File Reader with file name (CLfdf) and conversion
1274 factors; function returns array of dfs (dfArray) and
1275 corresponding CL values (CLArray) and max number of
1276 terms in arrays (ndf) */
1277 uiuc_1DdataFileReader(CLfdf,
1281 aeroLiftParts -> storeCommands (*command_line);
1283 // additional variables to streamline flap routine in aerodeflections
1285 int temp_counter = 1;
1286 while (temp_counter <= ndf)
1288 dfArray[temp_counter] = CLfdf_dfArray[temp_counter];
1289 TimeArray[temp_counter] = dfTimefdf_TimeArray[temp_counter];
1296 CLfadf = linetoken3;
1297 token4 >> token_value_convert1;
1298 token5 >> token_value_convert2;
1299 token6 >> token_value_convert3;
1300 convert_z = uiuc_convert(token_value_convert1);
1301 convert_x = uiuc_convert(token_value_convert2);
1302 convert_y = uiuc_convert(token_value_convert3);
1303 /* call 2D File Reader with file name (CLfadf) and
1304 conversion factors; function returns array of
1305 flap deflections (dfArray) and corresponding
1306 alpha (aArray) and delta CL (CLArray) values and
1307 max number of terms in alpha arrays (nAlphaArray)
1308 and deflection array (ndf) */
1309 uiuc_2DdataFileReader(CLfadf,
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);
1339 aeroLiftParts -> storeCommands (*command_line);
1344 if (check_float(linetoken3))
1345 token3 >> token_value;
1347 uiuc_warnings_errors(1, *command_line);
1349 CZ_a2 = token_value;
1350 CZ_a2_clean = CZ_a2;
1351 aeroLiftParts -> storeCommands (*command_line);
1356 if (check_float(linetoken3))
1357 token3 >> token_value;
1359 uiuc_warnings_errors(1, *command_line);
1361 CZ_a3 = token_value;
1362 CZ_a3_clean = CZ_a3;
1363 aeroLiftParts -> storeCommands (*command_line);
1368 if (check_float(linetoken3))
1369 token3 >> token_value;
1371 uiuc_warnings_errors(1, *command_line);
1373 CZ_adot = token_value;
1374 CZ_adot_clean = CZ_adot;
1375 aeroLiftParts -> storeCommands (*command_line);
1380 if (check_float(linetoken3))
1381 token3 >> token_value;
1383 uiuc_warnings_errors(1, *command_line);
1387 aeroLiftParts -> storeCommands (*command_line);
1392 if (check_float(linetoken3))
1393 token3 >> token_value;
1395 uiuc_warnings_errors(1, *command_line);
1397 CZ_de = token_value;
1398 CZ_de_clean = CZ_de;
1399 aeroLiftParts -> storeCommands (*command_line);
1404 if (check_float(linetoken3))
1405 token3 >> token_value;
1407 uiuc_warnings_errors(1, *command_line);
1409 CZ_deb2 = token_value;
1410 CZ_deb2_clean = CZ_deb2;
1411 aeroLiftParts -> storeCommands (*command_line);
1416 if (check_float(linetoken3))
1417 token3 >> token_value;
1419 uiuc_warnings_errors(1, *command_line);
1421 CZ_df = token_value;
1422 CZ_df_clean = CZ_df;
1423 aeroLiftParts -> storeCommands (*command_line);
1428 if (check_float(linetoken3))
1429 token3 >> token_value;
1431 uiuc_warnings_errors(1, *command_line);
1433 CZ_adf = token_value;
1434 CZ_adf_clean = CZ_adf;
1435 aeroLiftParts -> storeCommands (*command_line);
1440 uiuc_warnings_errors(2, *command_line);
1450 switch(Cm_map[linetoken2])
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);
1473 aeroPitchParts -> storeCommands (*command_line);
1478 if (check_float(linetoken3))
1479 token3 >> token_value;
1481 uiuc_warnings_errors(1, *command_line);
1483 Cm_a2 = token_value;
1484 Cm_a2_clean = Cm_a2;
1485 aeroPitchParts -> storeCommands (*command_line);
1490 if (check_float(linetoken3))
1491 token3 >> token_value;
1493 uiuc_warnings_errors(1, *command_line);
1495 Cm_adot = token_value;
1496 Cm_adot_clean = Cm_adot;
1497 aeroPitchParts -> storeCommands (*command_line);
1502 if (check_float(linetoken3))
1503 token3 >> token_value;
1505 uiuc_warnings_errors(1, *command_line);
1509 aeroPitchParts -> storeCommands (*command_line);
1514 if (check_float(linetoken3))
1515 token3 >> token_value;
1517 uiuc_warnings_errors(1, *command_line);
1519 Cm_ih = token_value;
1520 aeroPitchParts -> storeCommands (*command_line);
1525 if (check_float(linetoken3))
1526 token3 >> token_value;
1528 uiuc_warnings_errors(1, *command_line);
1530 Cm_de = token_value;
1531 Cm_de_clean = Cm_de;
1532 aeroPitchParts -> storeCommands (*command_line);
1537 if (check_float(linetoken3))
1538 token3 >> token_value;
1540 uiuc_warnings_errors(1, *command_line);
1542 Cm_b2 = token_value;
1543 Cm_b2_clean = Cm_b2;
1544 aeroPitchParts -> storeCommands (*command_line);
1549 if (check_float(linetoken3))
1550 token3 >> token_value;
1552 uiuc_warnings_errors(1, *command_line);
1556 aeroPitchParts -> storeCommands (*command_line);
1561 if (check_float(linetoken3))
1562 token3 >> token_value;
1564 uiuc_warnings_errors(1, *command_line);
1566 Cm_df = token_value;
1567 Cm_df_clean = Cm_df;
1568 aeroPitchParts -> storeCommands (*command_line);
1574 token4 >> token_value_convert1;
1575 token5 >> token_value_convert2;
1576 convert_y = uiuc_convert(token_value_convert1);
1577 convert_x = uiuc_convert(token_value_convert2);
1578 /* call 1D File Reader with file name (Cmfa) and conversion
1579 factors; function returns array of alphas (aArray) and
1580 corresponding Cm values (CmArray) and max number of
1581 terms in arrays (nAlpha) */
1582 uiuc_1DdataFileReader(Cmfa,
1586 aeroPitchParts -> storeCommands (*command_line);
1591 Cmfade = linetoken3;
1592 token4 >> token_value_convert1;
1593 token5 >> token_value_convert2;
1594 token6 >> token_value_convert3;
1595 convert_z = uiuc_convert(token_value_convert1);
1596 convert_x = uiuc_convert(token_value_convert2);
1597 convert_y = uiuc_convert(token_value_convert3);
1598 /* call 2D File Reader with file name (Cmfade) and
1599 conversion factors; function returns array of
1600 elevator deflections (deArray) and corresponding
1601 alpha (aArray) and delta Cm (CmArray) values and
1602 max number of terms in alpha arrays (nAlphaArray)
1603 and deflection array (nde) */
1604 uiuc_2DdataFileReader(Cmfade,
1610 aeroPitchParts -> storeCommands (*command_line);
1616 token4 >> token_value_convert1;
1617 token5 >> token_value_convert2;
1618 convert_y = uiuc_convert(token_value_convert1);
1619 convert_x = uiuc_convert(token_value_convert2);
1620 /* call 1D File Reader with file name (Cmfdf) and conversion
1621 factors; function returns array of dfs (dfArray) and
1622 corresponding Cm values (CmArray) and max number of
1623 terms in arrays (ndf) */
1624 uiuc_1DdataFileReader(Cmfdf,
1628 aeroPitchParts -> storeCommands (*command_line);
1633 Cmfadf = linetoken3;
1634 token4 >> token_value_convert1;
1635 token5 >> token_value_convert2;
1636 token6 >> token_value_convert3;
1637 convert_z = uiuc_convert(token_value_convert1);
1638 convert_x = uiuc_convert(token_value_convert2);
1639 convert_y = uiuc_convert(token_value_convert3);
1640 /* call 2D File Reader with file name (Cmfadf) and
1641 conversion factors; function returns array of
1642 flap deflections (dfArray) and corresponding
1643 alpha (aArray) and delta Cm (CmArray) values and
1644 max number of terms in alpha arrays (nAlphaArray)
1645 and deflection array (ndf) */
1646 uiuc_2DdataFileReader(Cmfadf,
1652 aeroPitchParts -> storeCommands (*command_line);
1657 uiuc_warnings_errors(2, *command_line);
1667 switch(CY_map[linetoken2])
1671 if (check_float(linetoken3))
1672 token3 >> token_value;
1674 uiuc_warnings_errors(1, *command_line);
1678 aeroSideforceParts -> storeCommands (*command_line);
1683 if (check_float(linetoken3))
1684 token3 >> token_value;
1686 uiuc_warnings_errors(1, *command_line);
1688 CY_beta = token_value;
1689 CY_beta_clean = CY_beta;
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);
1714 aeroSideforceParts -> storeCommands (*command_line);
1719 if (check_float(linetoken3))
1720 token3 >> token_value;
1722 uiuc_warnings_errors(1, *command_line);
1724 CY_da = token_value;
1725 CY_da_clean = CY_da;
1726 aeroSideforceParts -> storeCommands (*command_line);
1731 if (check_float(linetoken3))
1732 token3 >> token_value;
1734 uiuc_warnings_errors(2, *command_line);
1736 CY_dr = token_value;
1737 CY_dr_clean = CY_dr;
1738 aeroSideforceParts -> storeCommands (*command_line);
1743 if (check_float(linetoken3))
1744 token3 >> token_value;
1746 uiuc_warnings_errors(2, *command_line);
1748 CY_dra = token_value;
1749 CY_dra_clean = CY_dra;
1750 aeroSideforceParts -> storeCommands (*command_line);
1755 if (check_float(linetoken3))
1756 token3 >> token_value;
1758 uiuc_warnings_errors(2, *command_line);
1760 CY_bdot = token_value;
1761 CY_bdot_clean = CY_bdot;
1762 aeroSideforceParts -> storeCommands (*command_line);
1767 CYfada = linetoken3;
1768 token4 >> token_value_convert1;
1769 token5 >> token_value_convert2;
1770 token6 >> token_value_convert3;
1771 convert_z = uiuc_convert(token_value_convert1);
1772 convert_x = uiuc_convert(token_value_convert2);
1773 convert_y = uiuc_convert(token_value_convert3);
1774 /* call 2D File Reader with file name (CYfada) and
1775 conversion factors; function returns array of
1776 aileron deflections (daArray) and corresponding
1777 alpha (aArray) and delta CY (CYArray) values and
1778 max number of terms in alpha arrays (nAlphaArray)
1779 and deflection array (nda) */
1780 uiuc_2DdataFileReader(CYfada,
1786 aeroSideforceParts -> storeCommands (*command_line);
1789 case CYfbetadr_flag:
1791 CYfbetadr = linetoken3;
1792 token4 >> token_value_convert1;
1793 token5 >> token_value_convert2;
1794 token6 >> token_value_convert3;
1795 convert_z = uiuc_convert(token_value_convert1);
1796 convert_x = uiuc_convert(token_value_convert2);
1797 convert_y = uiuc_convert(token_value_convert3);
1798 /* call 2D File Reader with file name (CYfbetadr) and
1799 conversion factors; function returns array of
1800 rudder deflections (drArray) and corresponding
1801 beta (betaArray) and delta CY (CYArray) values and
1802 max number of terms in beta arrays (nBetaArray)
1803 and deflection array (ndr) */
1804 uiuc_2DdataFileReader(CYfbetadr,
1805 CYfbetadr_betaArray,
1808 CYfbetadr_nBetaArray,
1810 aeroSideforceParts -> storeCommands (*command_line);
1815 uiuc_warnings_errors(2, *command_line);
1825 switch(Cl_map[linetoken2])
1829 if (check_float(linetoken3))
1830 token3 >> token_value;
1832 uiuc_warnings_errors(1, *command_line);
1836 aeroRollParts -> storeCommands (*command_line);
1841 if (check_float(linetoken3))
1842 token3 >> token_value;
1844 uiuc_warnings_errors(1, *command_line);
1846 Cl_beta = token_value;
1847 Cl_beta_clean = Cl_beta;
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);
1872 aeroRollParts -> storeCommands (*command_line);
1877 if (check_float(linetoken3))
1878 token3 >> token_value;
1880 uiuc_warnings_errors(1, *command_line);
1882 Cl_da = token_value;
1883 Cl_da_clean = Cl_da;
1884 aeroRollParts -> storeCommands (*command_line);
1889 if (check_float(linetoken3))
1890 token3 >> token_value;
1892 uiuc_warnings_errors(1, *command_line);
1894 Cl_dr = token_value;
1895 Cl_dr_clean = Cl_dr;
1896 aeroRollParts -> storeCommands (*command_line);
1901 if (check_float(linetoken3))
1902 token3 >> token_value;
1904 uiuc_warnings_errors(1, *command_line);
1906 Cl_daa = token_value;
1907 Cl_daa_clean = Cl_daa;
1908 aeroRollParts -> storeCommands (*command_line);
1913 Clfada = linetoken3;
1914 token4 >> token_value_convert1;
1915 token5 >> token_value_convert2;
1916 token6 >> token_value_convert3;
1917 convert_z = uiuc_convert(token_value_convert1);
1918 convert_x = uiuc_convert(token_value_convert2);
1919 convert_y = uiuc_convert(token_value_convert3);
1920 /* call 2D File Reader with file name (Clfada) and
1921 conversion factors; function returns array of
1922 aileron deflections (daArray) and corresponding
1923 alpha (aArray) and delta Cl (ClArray) values and
1924 max number of terms in alpha arrays (nAlphaArray)
1925 and deflection array (nda) */
1926 uiuc_2DdataFileReader(Clfada,
1932 aeroRollParts -> storeCommands (*command_line);
1935 case Clfbetadr_flag:
1937 Clfbetadr = linetoken3;
1938 token4 >> token_value_convert1;
1939 token5 >> token_value_convert2;
1940 token6 >> token_value_convert3;
1941 convert_z = uiuc_convert(token_value_convert1);
1942 convert_x = uiuc_convert(token_value_convert2);
1943 convert_y = uiuc_convert(token_value_convert3);
1944 /* call 2D File Reader with file name (Clfbetadr) and
1945 conversion factors; function returns array of
1946 rudder deflections (drArray) and corresponding
1947 beta (betaArray) and delta Cl (ClArray) values and
1948 max number of terms in beta arrays (nBetaArray)
1949 and deflection array (ndr) */
1950 uiuc_2DdataFileReader(Clfbetadr,
1951 Clfbetadr_betaArray,
1954 Clfbetadr_nBetaArray,
1956 aeroRollParts -> storeCommands (*command_line);
1961 uiuc_warnings_errors(2, *command_line);
1971 switch(Cn_map[linetoken2])
1975 if (check_float(linetoken3))
1976 token3 >> token_value;
1978 uiuc_warnings_errors(1, *command_line);
1982 aeroYawParts -> storeCommands (*command_line);
1987 if (check_float(linetoken3))
1988 token3 >> token_value;
1990 uiuc_warnings_errors(1, *command_line);
1992 Cn_beta = token_value;
1993 Cn_beta_clean = Cn_beta;
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);
2018 aeroYawParts -> storeCommands (*command_line);
2023 if (check_float(linetoken3))
2024 token3 >> token_value;
2026 uiuc_warnings_errors(1, *command_line);
2028 Cn_da = token_value;
2029 Cn_da_clean = Cn_da;
2030 aeroYawParts -> storeCommands (*command_line);
2035 if (check_float(linetoken3))
2036 token3 >> token_value;
2038 uiuc_warnings_errors(1, *command_line);
2040 Cn_dr = token_value;
2041 Cn_dr_clean = Cn_dr;
2042 aeroYawParts -> storeCommands (*command_line);
2047 if (check_float(linetoken3))
2048 token3 >> token_value;
2050 uiuc_warnings_errors(1, *command_line);
2054 aeroYawParts -> storeCommands (*command_line);
2059 if (check_float(linetoken3))
2060 token3 >> token_value;
2062 uiuc_warnings_errors(1, *command_line);
2064 Cn_b3 = token_value;
2065 Cn_b3_clean = Cn_b3;
2066 aeroYawParts -> storeCommands (*command_line);
2071 Cnfada = linetoken3;
2072 token4 >> token_value_convert1;
2073 token5 >> token_value_convert2;
2074 token6 >> token_value_convert3;
2075 convert_z = uiuc_convert(token_value_convert1);
2076 convert_x = uiuc_convert(token_value_convert2);
2077 convert_y = uiuc_convert(token_value_convert3);
2078 /* call 2D File Reader with file name (Cnfada) and
2079 conversion factors; function returns array of
2080 aileron deflections (daArray) and corresponding
2081 alpha (aArray) and delta Cn (CnArray) values and
2082 max number of terms in alpha arrays (nAlphaArray)
2083 and deflection array (nda) */
2084 uiuc_2DdataFileReader(Cnfada,
2090 aeroYawParts -> storeCommands (*command_line);
2093 case Cnfbetadr_flag:
2095 Cnfbetadr = linetoken3;
2096 token4 >> token_value_convert1;
2097 token5 >> token_value_convert2;
2098 token6 >> token_value_convert3;
2099 convert_z = uiuc_convert(token_value_convert1);
2100 convert_x = uiuc_convert(token_value_convert2);
2101 convert_y = uiuc_convert(token_value_convert3);
2102 /* call 2D File Reader with file name (Cnfbetadr) and
2103 conversion factors; function returns array of
2104 rudder deflections (drArray) and corresponding
2105 beta (betaArray) and delta Cn (CnArray) values and
2106 max number of terms in beta arrays (nBetaArray)
2107 and deflection array (ndr) */
2108 uiuc_2DdataFileReader(Cnfbetadr,
2109 Cnfbetadr_betaArray,
2112 Cnfbetadr_nBetaArray,
2114 aeroYawParts -> storeCommands (*command_line);
2119 uiuc_warnings_errors(2, *command_line);
2131 switch(gear_map[linetoken2])
2140 uiuc_warnings_errors(2, *command_line);
2151 switch(ice_map[linetoken2])
2155 if (check_float(linetoken3))
2156 token3 >> token_value;
2159 uiuc_warnings_errors(1, *command_line);
2162 iceTime = token_value;
2165 case transientTime_flag:
2167 if (check_float(linetoken3))
2168 token3 >> token_value;
2170 uiuc_warnings_errors(1, *command_line);
2172 transientTime = token_value;
2175 case eta_ice_final_flag:
2177 if (check_float(linetoken3))
2178 token3 >> token_value;
2180 uiuc_warnings_errors(1, *command_line);
2182 eta_ice_final = token_value;
2185 case beta_probe_wing_flag:
2187 if (check_float(linetoken3))
2188 token3 >> token_value;
2190 uiuc_warnings_errors(1, *command_line);
2193 x_probe_wing = token_value;
2196 case beta_probe_tail_flag:
2198 if (check_float(linetoken3))
2199 token3 >> token_value;
2201 uiuc_warnings_errors(1, *command_line);
2204 x_probe_tail = token_value;
2209 if (check_float(linetoken3))
2210 token3 >> token_value;
2212 uiuc_warnings_errors(1, *command_line);
2219 if (check_float(linetoken3))
2220 token3 >> token_value;
2222 uiuc_warnings_errors(1, *command_line);
2229 if (check_float(linetoken3))
2230 token3 >> token_value;
2232 uiuc_warnings_errors(1, *command_line);
2234 kCD_a = token_value;
2239 if (check_float(linetoken3))
2240 token3 >> token_value;
2242 uiuc_warnings_errors(1, *command_line);
2244 kCD_adot = token_value;
2249 if (check_float(linetoken3))
2250 token3 >> token_value;
2252 uiuc_warnings_errors(1, *command_line);
2254 kCD_q = token_value;
2259 if (check_float(linetoken3))
2260 token3 >> token_value;
2262 uiuc_warnings_errors(1, *command_line);
2264 kCD_de = token_value;
2269 if (check_float(linetoken3))
2270 token3 >> token_value;
2272 uiuc_warnings_errors(1, *command_line);
2279 if (check_float(linetoken3))
2280 token3 >> token_value;
2282 uiuc_warnings_errors(1, *command_line);
2289 if (check_float(linetoken3))
2290 token3 >> token_value;
2292 uiuc_warnings_errors(1, *command_line);
2294 kCX_a = token_value;
2299 if (check_float(linetoken3))
2300 token3 >> token_value;
2302 uiuc_warnings_errors(1, *command_line);
2304 kCX_a2 = token_value;
2309 if (check_float(linetoken3))
2310 token3 >> token_value;
2312 uiuc_warnings_errors(1, *command_line);
2314 kCX_a3 = token_value;
2319 if (check_float(linetoken3))
2320 token3 >> token_value;
2322 uiuc_warnings_errors(1, *command_line);
2324 kCX_adot = token_value;
2329 if (check_float(linetoken3))
2330 token3 >> token_value;
2332 uiuc_warnings_errors(1, *command_line);
2334 kCX_q = token_value;
2339 if (check_float(linetoken3))
2340 token3 >> token_value;
2342 uiuc_warnings_errors(1, *command_line);
2344 kCX_de = token_value;
2349 if (check_float(linetoken3))
2350 token3 >> token_value;
2352 uiuc_warnings_errors(1, *command_line);
2354 kCX_dr = token_value;
2359 if (check_float(linetoken3))
2360 token3 >> token_value;
2362 uiuc_warnings_errors(1, *command_line);
2364 kCX_df = token_value;
2369 if (check_float(linetoken3))
2370 token3 >> token_value;
2372 uiuc_warnings_errors(1, *command_line);
2374 kCX_adf = token_value;
2379 if (check_float(linetoken3))
2380 token3 >> token_value;
2382 uiuc_warnings_errors(1, *command_line);
2389 if (check_float(linetoken3))
2390 token3 >> token_value;
2392 uiuc_warnings_errors(1, *command_line);
2394 kCL_a = token_value;
2399 if (check_float(linetoken3))
2400 token3 >> token_value;
2402 uiuc_warnings_errors(1, *command_line);
2404 kCL_adot = token_value;
2409 if (check_float(linetoken3))
2410 token3 >> token_value;
2412 uiuc_warnings_errors(1, *command_line);
2414 kCL_q = token_value;
2419 if (check_float(linetoken3))
2420 token3 >> token_value;
2422 uiuc_warnings_errors(1, *command_line);
2424 kCL_de = token_value;
2429 if (check_float(linetoken3))
2430 token3 >> token_value;
2432 uiuc_warnings_errors(1, *command_line);
2439 if (check_float(linetoken3))
2440 token3 >> token_value;
2442 uiuc_warnings_errors(1, *command_line);
2444 kCZ_a = token_value;
2449 if (check_float(linetoken3))
2450 token3 >> token_value;
2452 uiuc_warnings_errors(1, *command_line);
2454 kCZ_a2 = token_value;
2459 if (check_float(linetoken3))
2460 token3 >> token_value;
2462 uiuc_warnings_errors(1, *command_line);
2464 kCZ_a3 = token_value;
2469 if (check_float(linetoken3))
2470 token3 >> token_value;
2472 uiuc_warnings_errors(1, *command_line);
2474 kCZ_adot = token_value;
2479 if (check_float(linetoken3))
2480 token3 >> token_value;
2482 uiuc_warnings_errors(1, *command_line);
2484 kCZ_q = token_value;
2489 if (check_float(linetoken3))
2490 token3 >> token_value;
2492 uiuc_warnings_errors(1, *command_line);
2494 kCZ_de = token_value;
2499 if (check_float(linetoken3))
2500 token3 >> token_value;
2502 uiuc_warnings_errors(1, *command_line);
2504 kCZ_deb2 = token_value;
2509 if (check_float(linetoken3))
2510 token3 >> token_value;
2512 uiuc_warnings_errors(1, *command_line);
2514 kCZ_df = token_value;
2519 if (check_float(linetoken3))
2520 token3 >> token_value;
2522 uiuc_warnings_errors(1, *command_line);
2524 kCZ_adf = token_value;
2529 if (check_float(linetoken3))
2530 token3 >> token_value;
2532 uiuc_warnings_errors(1, *command_line);
2539 if (check_float(linetoken3))
2540 token3 >> token_value;
2542 uiuc_warnings_errors(1, *command_line);
2544 kCm_a = token_value;
2549 if (check_float(linetoken3))
2550 token3 >> token_value;
2552 uiuc_warnings_errors(1, *command_line);
2554 kCm_a2 = token_value;
2559 if (check_float(linetoken3))
2560 token3 >> token_value;
2562 uiuc_warnings_errors(1, *command_line);
2564 kCm_adot = token_value;
2569 if (check_float(linetoken3))
2570 token3 >> token_value;
2572 uiuc_warnings_errors(1, *command_line);
2574 kCm_q = token_value;
2579 if (check_float(linetoken3))
2580 token3 >> token_value;
2582 uiuc_warnings_errors(1, *command_line);
2584 kCm_de = token_value;
2589 if (check_float(linetoken3))
2590 token3 >> token_value;
2592 uiuc_warnings_errors(1, *command_line);
2594 kCm_b2 = token_value;
2599 if (check_float(linetoken3))
2600 token3 >> token_value;
2602 uiuc_warnings_errors(1, *command_line);
2604 kCm_r = token_value;
2609 if (check_float(linetoken3))
2610 token3 >> token_value;
2612 uiuc_warnings_errors(1, *command_line);
2614 kCm_df = token_value;
2619 if (check_float(linetoken3))
2620 token3 >> token_value;
2622 uiuc_warnings_errors(1, *command_line);
2629 if (check_float(linetoken3))
2630 token3 >> token_value;
2632 uiuc_warnings_errors(1, *command_line);
2634 kCY_beta = token_value;
2639 if (check_float(linetoken3))
2640 token3 >> token_value;
2642 uiuc_warnings_errors(1, *command_line);
2644 kCY_p = token_value;
2649 if (check_float(linetoken3))
2650 token3 >> token_value;
2652 uiuc_warnings_errors(1, *command_line);
2654 kCY_r = token_value;
2659 if (check_float(linetoken3))
2660 token3 >> token_value;
2662 uiuc_warnings_errors(1, *command_line);
2664 kCY_da = token_value;
2669 if (check_float(linetoken3))
2670 token3 >> token_value;
2672 uiuc_warnings_errors(1, *command_line);
2674 kCY_dr = token_value;
2679 if (check_float(linetoken3))
2680 token3 >> token_value;
2682 uiuc_warnings_errors(1, *command_line);
2684 kCY_dra = token_value;
2689 if (check_float(linetoken3))
2690 token3 >> token_value;
2692 uiuc_warnings_errors(1, *command_line);
2694 kCY_bdot = token_value;
2699 if (check_float(linetoken3))
2700 token3 >> token_value;
2702 uiuc_warnings_errors(1, *command_line);
2709 if (check_float(linetoken3))
2710 token3 >> token_value;
2712 uiuc_warnings_errors(1, *command_line);
2714 kCl_beta = token_value;
2719 if (check_float(linetoken3))
2720 token3 >> token_value;
2722 uiuc_warnings_errors(1, *command_line);
2724 kCl_p = token_value;
2729 if (check_float(linetoken3))
2730 token3 >> token_value;
2732 uiuc_warnings_errors(1, *command_line);
2734 kCl_r = token_value;
2739 if (check_float(linetoken3))
2740 token3 >> token_value;
2742 uiuc_warnings_errors(1, *command_line);
2744 kCl_da = token_value;
2749 if (check_float(linetoken3))
2750 token3 >> token_value;
2752 uiuc_warnings_errors(1, *command_line);
2754 kCl_dr = token_value;
2759 if (check_float(linetoken3))
2760 token3 >> token_value;
2762 uiuc_warnings_errors(1, *command_line);
2764 kCl_daa = token_value;
2769 if (check_float(linetoken3))
2770 token3 >> token_value;
2772 uiuc_warnings_errors(1, *command_line);
2779 if (check_float(linetoken3))
2780 token3 >> token_value;
2782 uiuc_warnings_errors(1, *command_line);
2784 kCn_beta = token_value;
2789 if (check_float(linetoken3))
2790 token3 >> token_value;
2792 uiuc_warnings_errors(1, *command_line);
2794 kCn_p = token_value;
2799 if (check_float(linetoken3))
2800 token3 >> token_value;
2802 uiuc_warnings_errors(1, *command_line);
2804 kCn_r = token_value;
2809 if (check_float(linetoken3))
2810 token3 >> token_value;
2812 uiuc_warnings_errors(1, *command_line);
2814 kCn_da = token_value;
2819 if (check_float(linetoken3))
2820 token3 >> token_value;
2822 uiuc_warnings_errors(1, *command_line);
2824 kCn_dr = token_value;
2829 if (check_float(linetoken3))
2830 token3 >> token_value;
2832 uiuc_warnings_errors(1, *command_line);
2834 kCn_q = token_value;
2839 if (check_float(linetoken3))
2840 token3 >> token_value;
2842 uiuc_warnings_errors(1, *command_line);
2844 kCn_b3 = token_value;
2849 uiuc_warnings_errors(2, *command_line);
2859 static int fout_flag=0;
2863 fout.open("uiuc_record.dat");
2865 switch(record_map[linetoken2])
2867 /************************* Time ************************/
2868 case Simtime_record:
2870 recordParts -> storeCommands (*command_line);
2875 recordParts -> storeCommands (*command_line);
2879 /************************* Mass ************************/
2882 recordParts -> storeCommands (*command_line);
2887 recordParts -> storeCommands (*command_line);
2892 recordParts -> storeCommands (*command_line);
2897 recordParts -> storeCommands (*command_line);
2902 recordParts -> storeCommands (*command_line);
2907 recordParts -> storeCommands (*command_line);
2911 /*********************** Geometry **********************/
2912 case Dx_pilot_record:
2914 recordParts -> storeCommands (*command_line);
2917 case Dy_pilot_record:
2919 recordParts -> storeCommands (*command_line);
2922 case Dz_pilot_record:
2924 recordParts -> storeCommands (*command_line);
2929 recordParts -> storeCommands (*command_line);
2934 recordParts -> storeCommands (*command_line);
2939 recordParts -> storeCommands (*command_line);
2943 /********************** Positions **********************/
2944 case Lat_geocentric_record:
2946 recordParts -> storeCommands (*command_line);
2949 case Lon_geocentric_record:
2951 recordParts -> storeCommands (*command_line);
2954 case Radius_to_vehicle_record:
2956 recordParts -> storeCommands (*command_line);
2959 case Latitude_record:
2961 recordParts -> storeCommands (*command_line);
2964 case Longitude_record:
2966 recordParts -> storeCommands (*command_line);
2969 case Altitude_record:
2971 recordParts -> storeCommands (*command_line);
2976 recordParts -> storeCommands (*command_line);
2981 recordParts -> storeCommands (*command_line);
2986 recordParts -> storeCommands (*command_line);
2990 /******************** Accelerations ********************/
2991 case V_dot_north_record:
2993 recordParts -> storeCommands (*command_line);
2996 case V_dot_east_record:
2998 recordParts -> storeCommands (*command_line);
3001 case V_dot_down_record:
3003 recordParts -> storeCommands (*command_line);
3006 case U_dot_body_record:
3008 recordParts -> storeCommands (*command_line);
3011 case V_dot_body_record:
3013 recordParts -> storeCommands (*command_line);
3016 case W_dot_body_record:
3018 recordParts -> storeCommands (*command_line);
3021 case A_X_pilot_record:
3023 recordParts -> storeCommands (*command_line);
3026 case A_Y_pilot_record:
3028 recordParts -> storeCommands (*command_line);
3031 case A_Z_pilot_record:
3033 recordParts -> storeCommands (*command_line);
3038 recordParts -> storeCommands (*command_line);
3043 recordParts -> storeCommands (*command_line);
3048 recordParts -> storeCommands (*command_line);
3051 case N_X_pilot_record:
3053 recordParts -> storeCommands (*command_line);
3056 case N_Y_pilot_record:
3058 recordParts -> storeCommands (*command_line);
3061 case N_Z_pilot_record:
3063 recordParts -> storeCommands (*command_line);
3068 recordParts -> storeCommands (*command_line);
3073 recordParts -> storeCommands (*command_line);
3078 recordParts -> storeCommands (*command_line);
3081 case P_dot_body_record:
3083 recordParts -> storeCommands (*command_line);
3086 case Q_dot_body_record:
3088 recordParts -> storeCommands (*command_line);
3091 case R_dot_body_record:
3093 recordParts -> storeCommands (*command_line);
3097 /********************** Velocities *********************/
3098 case V_north_record:
3100 recordParts -> storeCommands (*command_line);
3105 recordParts -> storeCommands (*command_line);
3110 recordParts -> storeCommands (*command_line);
3113 case V_north_rel_ground_record:
3115 recordParts -> storeCommands (*command_line);
3118 case V_east_rel_ground_record:
3120 recordParts -> storeCommands (*command_line);
3123 case V_down_rel_ground_record:
3125 recordParts -> storeCommands (*command_line);
3128 case V_north_airmass_record:
3130 recordParts -> storeCommands (*command_line);
3133 case V_east_airmass_record:
3135 recordParts -> storeCommands (*command_line);
3138 case V_down_airmass_record:
3140 recordParts -> storeCommands (*command_line);
3143 case V_north_rel_airmass_record:
3145 recordParts -> storeCommands (*command_line);
3148 case V_east_rel_airmass_record:
3150 recordParts -> storeCommands (*command_line);
3153 case V_down_rel_airmass_record:
3155 recordParts -> storeCommands (*command_line);
3160 recordParts -> storeCommands (*command_line);
3165 recordParts -> storeCommands (*command_line);
3170 recordParts -> storeCommands (*command_line);
3175 recordParts -> storeCommands (*command_line);
3180 recordParts -> storeCommands (*command_line);
3185 recordParts -> storeCommands (*command_line);
3188 case V_rel_wind_record:
3190 recordParts -> storeCommands (*command_line);
3193 case V_true_kts_record:
3195 recordParts -> storeCommands (*command_line);
3198 case V_rel_ground_record:
3200 recordParts -> storeCommands (*command_line);
3203 case V_inertial_record:
3205 recordParts -> storeCommands (*command_line);
3208 case V_ground_speed_record:
3210 recordParts -> storeCommands (*command_line);
3213 case V_equiv_record:
3215 recordParts -> storeCommands (*command_line);
3218 case V_equiv_kts_record:
3220 recordParts -> storeCommands (*command_line);
3223 case V_calibrated_record:
3225 recordParts -> storeCommands (*command_line);
3228 case V_calibrated_kts_record:
3230 recordParts -> storeCommands (*command_line);
3233 case P_local_record:
3235 recordParts -> storeCommands (*command_line);
3238 case Q_local_record:
3240 recordParts -> storeCommands (*command_line);
3243 case R_local_record:
3245 recordParts -> storeCommands (*command_line);
3250 recordParts -> storeCommands (*command_line);
3255 recordParts -> storeCommands (*command_line);
3260 recordParts -> storeCommands (*command_line);
3263 case P_total_record:
3265 recordParts -> storeCommands (*command_line);
3268 case Q_total_record:
3270 recordParts -> storeCommands (*command_line);
3273 case R_total_record:
3275 recordParts -> storeCommands (*command_line);
3278 case Phi_dot_record:
3280 recordParts -> storeCommands (*command_line);
3283 case Theta_dot_record:
3285 recordParts -> storeCommands (*command_line);
3288 case Psi_dot_record:
3290 recordParts -> storeCommands (*command_line);
3293 case Latitude_dot_record:
3295 recordParts -> storeCommands (*command_line);
3298 case Longitude_dot_record:
3300 recordParts -> storeCommands (*command_line);
3303 case Radius_dot_record:
3305 recordParts -> storeCommands (*command_line);
3309 /************************ Angles ***********************/
3312 recordParts -> storeCommands (*command_line);
3315 case Alpha_deg_record:
3317 recordParts -> storeCommands (*command_line);
3320 case Alpha_dot_record:
3322 recordParts -> storeCommands (*command_line);
3325 case Alpha_dot_deg_record:
3327 recordParts -> storeCommands (*command_line);
3332 recordParts -> storeCommands (*command_line);
3335 case Beta_deg_record:
3337 recordParts -> storeCommands (*command_line);
3340 case Beta_dot_record:
3342 recordParts -> storeCommands (*command_line);
3345 case Beta_dot_deg_record:
3347 recordParts -> storeCommands (*command_line);
3350 case Gamma_vert_record:
3352 recordParts -> storeCommands (*command_line);
3355 case Gamma_vert_deg_record:
3357 recordParts -> storeCommands (*command_line);
3360 case Gamma_horiz_record:
3362 recordParts -> storeCommands (*command_line);
3365 case Gamma_horiz_deg_record:
3367 recordParts -> storeCommands (*command_line);
3371 /**************** Atmospheric Properties ***************/
3372 case Density_record:
3374 recordParts -> storeCommands (*command_line);
3377 case V_sound_record:
3379 recordParts -> storeCommands (*command_line);
3382 case Mach_number_record:
3384 recordParts -> storeCommands (*command_line);
3387 case Static_pressure_record:
3389 recordParts -> storeCommands (*command_line);
3392 case Total_pressure_record:
3394 recordParts -> storeCommands (*command_line);
3397 case Impact_pressure_record:
3399 recordParts -> storeCommands (*command_line);
3402 case Dynamic_pressure_record:
3404 recordParts -> storeCommands (*command_line);
3407 case Static_temperature_record:
3409 recordParts -> storeCommands (*command_line);
3412 case Total_temperature_record:
3414 recordParts -> storeCommands (*command_line);
3418 /******************** Earth Properties *****************/
3419 case Gravity_record:
3421 recordParts -> storeCommands (*command_line);
3424 case Sea_level_radius_record:
3426 recordParts -> storeCommands (*command_line);
3429 case Earth_position_angle_record:
3431 recordParts -> storeCommands (*command_line);
3434 case Runway_altitude_record:
3436 recordParts -> storeCommands (*command_line);
3439 case Runway_latitude_record:
3441 recordParts -> storeCommands (*command_line);
3444 case Runway_longitude_record:
3446 recordParts -> storeCommands (*command_line);
3449 case Runway_heading_record:
3451 recordParts -> storeCommands (*command_line);
3454 case Radius_to_rwy_record:
3456 recordParts -> storeCommands (*command_line);
3459 case D_pilot_north_of_rwy_record:
3461 recordParts -> storeCommands (*command_line);
3464 case D_pilot_east_of_rwy_record:
3466 recordParts -> storeCommands (*command_line);
3469 case D_pilot_above_rwy_record:
3471 recordParts -> storeCommands (*command_line);
3474 case X_pilot_rwy_record:
3476 recordParts -> storeCommands (*command_line);
3479 case Y_pilot_rwy_record:
3481 recordParts -> storeCommands (*command_line);
3484 case H_pilot_rwy_record:
3486 recordParts -> storeCommands (*command_line);
3489 case D_cg_north_of_rwy_record:
3491 recordParts -> storeCommands (*command_line);
3494 case D_cg_east_of_rwy_record:
3496 recordParts -> storeCommands (*command_line);
3499 case D_cg_above_rwy_record:
3501 recordParts -> storeCommands (*command_line);
3504 case X_cg_rwy_record:
3506 recordParts -> storeCommands (*command_line);
3509 case Y_cg_rwy_record:
3511 recordParts -> storeCommands (*command_line);
3514 case H_cg_rwy_record:
3516 recordParts -> storeCommands (*command_line);
3520 /********************* Engine Inputs *******************/
3521 case Throttle_pct_record:
3523 recordParts -> storeCommands (*command_line);
3526 case Throttle_3_record:
3528 recordParts -> storeCommands (*command_line);
3532 /******************** Control Inputs *******************/
3533 case Long_control_record:
3535 recordParts -> storeCommands (*command_line);
3538 case Long_trim_record:
3540 recordParts -> storeCommands (*command_line);
3543 case Long_trim_deg_record:
3545 recordParts -> storeCommands (*command_line);
3548 case elevator_record:
3550 recordParts -> storeCommands (*command_line);
3553 case elevator_deg_record:
3555 recordParts -> storeCommands (*command_line);
3558 case Lat_control_record:
3560 recordParts -> storeCommands (*command_line);
3563 case aileron_record:
3565 recordParts -> storeCommands (*command_line);
3568 case aileron_deg_record:
3570 recordParts -> storeCommands (*command_line);
3573 case Rudder_pedal_record:
3575 recordParts -> storeCommands (*command_line);
3580 recordParts -> storeCommands (*command_line);
3583 case rudder_deg_record:
3585 recordParts -> storeCommands (*command_line);
3588 case Flap_handle_record:
3590 recordParts -> storeCommands (*command_line);
3595 recordParts -> storeCommands (*command_line);
3598 case flap_deg_record:
3600 recordParts -> storeCommands (*command_line);
3604 /****************** Aero Coefficients ******************/
3607 recordParts -> storeCommands (*command_line);
3612 recordParts -> storeCommands (*command_line);
3615 case CDfadeI_record:
3617 recordParts -> storeCommands (*command_line);
3622 recordParts -> storeCommands (*command_line);
3625 case CDfadfI_record:
3627 recordParts -> storeCommands (*command_line);
3632 recordParts -> storeCommands (*command_line);
3637 recordParts -> storeCommands (*command_line);
3642 recordParts -> storeCommands (*command_line);
3645 case CLfadeI_record:
3647 recordParts -> storeCommands (*command_line);
3652 recordParts -> storeCommands (*command_line);
3655 case CLfadfI_record:
3657 recordParts -> storeCommands (*command_line);
3662 recordParts -> storeCommands (*command_line);
3667 recordParts -> storeCommands (*command_line);
3672 recordParts -> storeCommands (*command_line);
3675 case CmfadeI_record:
3677 recordParts -> storeCommands (*command_line);
3682 recordParts -> storeCommands (*command_line);
3685 case CmfadfI_record:
3687 recordParts -> storeCommands (*command_line);
3692 recordParts -> storeCommands (*command_line);
3695 case CYfadaI_record:
3697 recordParts -> storeCommands (*command_line);
3700 case CYfbetadrI_record:
3702 recordParts -> storeCommands (*command_line);
3707 recordParts -> storeCommands (*command_line);
3710 case ClfadaI_record:
3712 recordParts -> storeCommands (*command_line);
3715 case ClfbetadrI_record:
3717 recordParts -> storeCommands (*command_line);
3722 recordParts -> storeCommands (*command_line);
3725 case CnfadaI_record:
3727 recordParts -> storeCommands (*command_line);
3730 case CnfbetadrI_record:
3732 recordParts -> storeCommands (*command_line);
3736 /******************** Ice Detection ********************/
3737 case CLclean_wing_record:
3739 recordParts -> storeCommands (*command_line);
3742 case CLiced_wing_record:
3744 recordParts -> storeCommands (*command_line);
3747 case CLclean_tail_record:
3749 recordParts -> storeCommands (*command_line);
3752 case CLiced_tail_record:
3754 recordParts -> storeCommands (*command_line);
3757 case Lift_clean_wing_record:
3759 recordParts -> storeCommands (*command_line);
3762 case Lift_iced_wing_record:
3764 recordParts -> storeCommands (*command_line);
3767 case Lift_clean_tail_record:
3769 recordParts -> storeCommands (*command_line);
3772 case Lift_iced_tail_record:
3774 recordParts -> storeCommands (*command_line);
3777 case Gamma_clean_wing_record:
3779 recordParts -> storeCommands (*command_line);
3782 case Gamma_iced_wing_record:
3784 recordParts -> storeCommands (*command_line);
3787 case Gamma_clean_tail_record:
3789 recordParts -> storeCommands (*command_line);
3792 case Gamma_iced_tail_record:
3794 recordParts -> storeCommands (*command_line);
3797 case w_clean_wing_record:
3799 recordParts -> storeCommands (*command_line);
3802 case w_iced_wing_record:
3804 recordParts -> storeCommands (*command_line);
3807 case w_clean_tail_record:
3809 recordParts -> storeCommands (*command_line);
3812 case w_iced_tail_record:
3814 recordParts -> storeCommands (*command_line);
3817 case V_total_clean_wing_record:
3819 recordParts -> storeCommands (*command_line);
3822 case V_total_iced_wing_record:
3824 recordParts -> storeCommands (*command_line);
3827 case V_total_clean_tail_record:
3829 recordParts -> storeCommands (*command_line);
3832 case V_total_iced_tail_record:
3834 recordParts -> storeCommands (*command_line);
3837 case beta_flow_clean_wing_record:
3839 recordParts -> storeCommands (*command_line);
3842 case beta_flow_clean_wing_deg_record:
3844 recordParts -> storeCommands (*command_line);
3847 case beta_flow_iced_wing_record:
3849 recordParts -> storeCommands (*command_line);
3852 case beta_flow_iced_wing_deg_record:
3854 recordParts -> storeCommands (*command_line);
3857 case beta_flow_clean_tail_record:
3859 recordParts -> storeCommands (*command_line);
3862 case beta_flow_clean_tail_deg_record:
3864 recordParts -> storeCommands (*command_line);
3867 case beta_flow_iced_tail_record:
3869 recordParts -> storeCommands (*command_line);
3872 case beta_flow_iced_tail_deg_record:
3874 recordParts -> storeCommands (*command_line);
3877 case Dbeta_flow_wing_record:
3879 recordParts -> storeCommands (*command_line);
3882 case Dbeta_flow_wing_deg_record:
3884 recordParts -> storeCommands (*command_line);
3887 case Dbeta_flow_tail_record:
3889 recordParts -> storeCommands (*command_line);
3892 case Dbeta_flow_tail_deg_record:
3894 recordParts -> storeCommands (*command_line);
3897 case pct_beta_flow_wing_record:
3899 recordParts -> storeCommands (*command_line);
3902 case pct_beta_flow_tail_record:
3904 recordParts -> storeCommands (*command_line);
3908 /************************ Forces ***********************/
3909 case F_X_wind_record:
3911 recordParts -> storeCommands (*command_line);
3914 case F_Y_wind_record:
3916 recordParts -> storeCommands (*command_line);
3919 case F_Z_wind_record:
3921 recordParts -> storeCommands (*command_line);
3924 case F_X_aero_record:
3926 recordParts -> storeCommands (*command_line);
3929 case F_Y_aero_record:
3931 recordParts -> storeCommands (*command_line);
3934 case F_Z_aero_record:
3936 recordParts -> storeCommands (*command_line);
3939 case F_X_engine_record:
3941 recordParts -> storeCommands (*command_line);
3944 case F_Y_engine_record:
3946 recordParts -> storeCommands (*command_line);
3949 case F_Z_engine_record:
3951 recordParts -> storeCommands (*command_line);
3954 case F_X_gear_record:
3956 recordParts -> storeCommands (*command_line);
3959 case F_Y_gear_record:
3961 recordParts -> storeCommands (*command_line);
3964 case F_Z_gear_record:
3966 recordParts -> storeCommands (*command_line);
3971 recordParts -> storeCommands (*command_line);
3976 recordParts -> storeCommands (*command_line);
3981 recordParts -> storeCommands (*command_line);
3984 case F_north_record:
3986 recordParts -> storeCommands (*command_line);
3991 recordParts -> storeCommands (*command_line);
3996 recordParts -> storeCommands (*command_line);
4000 /*********************** Moments ***********************/
4001 case M_l_aero_record:
4003 recordParts -> storeCommands (*command_line);
4006 case M_m_aero_record:
4008 recordParts -> storeCommands (*command_line);
4011 case M_n_aero_record:
4013 recordParts -> storeCommands (*command_line);
4016 case M_l_engine_record:
4018 recordParts -> storeCommands (*command_line);
4021 case M_m_engine_record:
4023 recordParts -> storeCommands (*command_line);
4026 case M_n_engine_record:
4028 recordParts -> storeCommands (*command_line);
4031 case M_l_gear_record:
4033 recordParts -> storeCommands (*command_line);
4036 case M_m_gear_record:
4038 recordParts -> storeCommands (*command_line);
4041 case M_n_gear_record:
4043 recordParts -> storeCommands (*command_line);
4048 recordParts -> storeCommands (*command_line);
4053 recordParts -> storeCommands (*command_line);
4058 recordParts -> storeCommands (*command_line);
4063 uiuc_warnings_errors(2, *command_line);
4073 switch(misc_map[linetoken2])
4075 case simpleHingeMomentCoef_flag:
4077 if (check_float(linetoken3))
4078 token3 >> token_value;
4080 uiuc_warnings_errors(1, *command_line);
4082 simpleHingeMomentCoef = token_value;
4085 case dfTimefdf_flag:
4087 dfTimefdf = linetoken3;
4088 /* call 1D File Reader with file name (dfTimefdf);
4089 function returns array of dfs (dfArray) and
4090 corresponding time values (TimeArray) and max
4091 number of terms in arrays (ndf) */
4092 uiuc_1DdataFileReader(dfTimefdf,
4094 dfTimefdf_TimeArray,
4100 uiuc_warnings_errors(2, *command_line);
4110 if (linetoken1=="*")
4112 uiuc_warnings_errors(2, *command_line);
4116 } // end keyword map