Semester Project - CPU Temps
Thomas J. Kennedy
1 Overview
As a Computer Scientist, I have a number of interests. Many of these interests overlap. While designing this project, I happened to be batch encoding some videos. I decided to write a quick script to grab CPU temperature data every 30 seconds. This resulted in three sets of data:
To visualize this data I used Gnuplot to generate three graphs:
Click on each item to view either the graph or raw text file.
Each of the encoding jobs ran for 5 to 10 hours. If you look at the data you see four temperatures for each reading. My CPU is a 4-core (8 thread) Intel i7-6700K. I found myself interested in not only the behavior of the readings, but also in the temperature differences between the 4 CPU cores.
1.1 Input
Data takes the form of temperatures in a txt
file. All data points are whitespace delimited. For example, if I had 5 temperature readings:
Example 1: Sample Input with Labels+61.0°C +63.0°C +50.0°C +58.0°C +80.0°C +81.0°C +68.0°C +77.0°C +62.0°C +63.0°C +52.0°C +60.0°C +83.0°C +82.0°C +70.0°C +79.0°C +68.0°C +69.0°C +58.0°C +65.0°C
Example 2: Sample Input without Labels61.0 63.0 50.0 58.0 80.0 81.0 68.0 77.0 62.0 63.0 52.0 60.0 83.0 82.0 70.0 79.0 68.0 69.0 58.0 65.0
would be a possible input files. Each line represents temperature readings from 4 processor cores. Process each temperature column independently. Readings are taken every 30 seconds. In this example:
- line 1 is 0 sec
- line 2 is 30 sec,
- line 3 is 60 sec.
- line 4 is 90 sec.
- line 5 is 120 sec.
- line 6 is 150 sec.
- line 7 is 180 sec.
Your first step should be to pre-process this data into a usable form. Conceptually, you need the data in the following format:
Time (sec) | Core 0 | Core 1 | Core 2 | Core 3 |
---|---|---|---|---|
0 | 61.0 | 63.0 | 50.0 | 58.0 |
30 | 80.0 | 81.0 | 68.0 | 77.0 |
60 | 62.0 | 63.0 | 52.0 | 60.0 |
90 | 83.0 | 82.0 | 70.0 | 79.0 |
120 | 68.0 | 69.0 | 58.0 | 65.0 |
This “table” can be represented by five vectors (or similar data structure), e.g.,
Example 3: Data Structures: C++std::vector<int> time = {}; std::vector<double> readings_core_0 = {}; std::vector<double> readings_core_1 = {}; std::vector<double> readings_core_2 = {}; std::vector<double> readings_core_3 = {};
Example 4: Data Structures: Javaint[] time = new int[numberOfReadings]; double[] readings_core_0 = new double[numberOfReadings]; double[] readings_core_1 = new double[numberOfReadings]; double[] readings_core_2 = new double[numberOfReadings]; double[] readings_core_3 = new double[numberOfReadings];
Example 5: Data Structures: Pythontime = [] readings_core_0 = [] readings_core_1 = [] readings_core_2 = [] readings_core_3 = []
1.2 Import Input Libraries
You may opt to #include
or import
the C++, Java, or Python input libraries provided here.
1.3 Output Format
All output must be written to text files (one file per core). Each line must take the form:
\(x_{k} <= x < x_{k+1}\); \(y_i=c_0 + c_{1} x\) ; type
where
-
\(x_{k}\) and \(x_{k+1}\) are the domain in which \(y_k\) is applicable
-
\(y_k\) is the \(k^{th}\) function
-
type is either least-squares or interpolation
For the example data in described in Section 2.1 (Input Format) you would generate 4 output files.
{basename}-core-0.{txt}
{basename}-core-1.{txt}
{basename}-core-2.{txt}
{basename}-core-3.{txt}
2 Sample Execution & Output
2.1 Input Data
The Overview listed three input files, as an introduction. If you would like more test data…
- sensors-2018.12.26.txt
- sensors-2019.01.26.txt
- sensors-2019.02.09.txt
- sensors-2019.06.07.txt
- sensors-2019.06.14.txt
- sensors-2019.07.12.txt
- sensors-2019.08.04.txt
- sensors-2019.08.12.txt
- sensors-2019.08.25.txt
- sensors-2019.09.07.txt
- sensors-2019.12.24.txt
- sensors-2019.12.25.txt
- sensors-2019.12.26.txt
- sensors-2019.12.29.txt
- sensors-2020.01.02.txt
- sensors-2018.12.26-no-labels.txt
- sensors-2019.01.26-no-labels.txt
- sensors-2019.02.09-no-labels.txt
- sensors-2019.06.07-no-labels.txt
- sensors-2019.06.14-no-labels.txt
- sensors-2019.07.12-no-labels.txt
- sensors-2019.08.04-no-labels.txt
- sensors-2019.08.12-no-labels.txt
- sensors-2019.08.25-no-labels.txt
- sensors-2019.09.07-no-labels.txt
- sensors-2019.12.24-no-labels.txt
- sensors-2019.12.25-no-labels.txt
- sensors-2019.12.26-no-labels.txt
- sensors-2019.12.29-no-labels.txt
- sensors-2020.01.02-no-labels.txt
2.2 Sample Output
The following is an example of piecewise linear interpolation output for a single core.
0 <= x < 30; y_0 = 61.0000 + 0.6333x; interpolation
30 <= x < 60; y_1 = 98.0000 + -0.6000x; interpolation
60 <= x < 90; y_2 = 20.0000 + 0.7000x; interpolation
90 <= x < 120; y_3 = 128.0000 + -0.5000x; interpolation
120 <= x < 150; y_4 = 12.0000 + 0.4667x; interpolation
150 <= x < 180; y_5 = 112.0000 + -0.2000x; interpolation
180 <= x < 210; y_6 = 34.0000 + 0.2333x; interpolation
210 <= x < 240; y_7 = 146.0000 + -0.3000x; interpolation
240 <= x < 270; y_8 = 2.0000 + 0.3000x; interpolation
270 <= x < 300; y_9 = 137.0000 + -0.2000x; interpolation
300 <= x < 330; y_10 = 197.0000 + -0.4000x; interpolation
330 <= x < 360; y_11 = -78.0000 + 0.4333x; interpolation
360 <= x < 390; y_12 = 222.0000 + -0.4000x; interpolation
390 <= x < 420; y_13 = 79.0000 + -0.0333x; interpolation
420 <= x < 450; y_14 = -215.0000 + 0.6667x; interpolation
450 <= x < 480; y_15 = 85.0000 + 0.0000x; interpolation
480 <= x < 510; y_16 = 389.0000 + -0.6333x; interpolation
510 <= x < 540; y_17 = 151.0000 + -0.1667x; interpolation
540 <= x < 570; y_18 = -353.0000 + 0.7667x; interpolation
570 <= x < 600; y_19 = 445.0000 + -0.6333x; interpolation
600 <= x < 630; y_20 = 45.0000 + 0.0333x; interpolation
630 <= x < 660; y_21 = 87.0000 + -0.0333x; interpolation
660 <= x < 690; y_22 = -375.0000 + 0.6667x; interpolation
690 <= x < 720; y_23 = 85.0000 + 0.0000x; interpolation
720 <= x < 750; y_24 = 541.0000 + -0.6333x; interpolation
750 <= x < 780; y_25 = -434.0000 + 0.6667x; interpolation
780 <= x < 810; y_26 = 86.0000 + 0.0000x; interpolation
810 <= x < 840; y_27 = 167.0000 + -0.1000x; interpolation
840 <= x < 870; y_28 = -1.0000 + 0.1000x; interpolation
870 <= x < 900; y_29 = 86.0000 + 0.0000x; interpolation
900 <= x < 930; y_30 = 56.0000 + 0.0333x; interpolation
930 <= x < 960; y_31 = 118.0000 + -0.0333x; interpolation
960 <= x < 990; y_32 = 246.0000 + -0.1667x; interpolation
990 <= x < 1020; y_33 = -51.0000 + 0.1333x; interpolation
1020 <= x < 1050; y_34 = 731.0000 + -0.6333x; interpolation
1050 <= x < 1080; y_35 = 101.0000 + -0.0333x; interpolation
1080 <= x < 1110; y_36 = -619.0000 + 0.6333x; interpolation
1110 <= x < 1140; y_37 = 84.0000 + 0.0000x; interpolation
1140 <= x < 1170; y_38 = 160.0000 + -0.0667x; interpolation
1170 <= x < 1200; y_39 = 121.0000 + -0.0333x; interpolation
1200 <= x < 1230; y_40 = 1.0000 + 0.0667x; interpolation
1230 <= x < 1260; y_41 = 42.0000 + 0.0333x; interpolation
1260 <= x < 1290; y_42 = -42.0000 + 0.1000x; interpolation
1290 <= x < 1320; y_43 = 302.0000 + -0.1667x; interpolation
1320 <= x < 1350; y_44 = 1006.0000 + -0.7000x; interpolation
1350 <= x < 1380; y_45 = -29.0000 + 0.0667x; interpolation
1380 <= x < 1410; y_46 = -121.0000 + 0.1333x; interpolation
1410 <= x < 1440; y_47 = -685.0000 + 0.5333x; interpolation
1440 <= x < 1470; y_48 = -13.0000 + 0.0667x; interpolation
1470 <= x < 1500; y_49 = -13.0000 + 0.0667x; interpolation
1500 <= x < 1530; y_50 = 437.0000 + -0.2333x; interpolation
1530 <= x < 1560; y_51 = 845.0000 + -0.5000x; interpolation
1560 <= x < 1590; y_52 = -871.0000 + 0.6000x; interpolation
1590 <= x < 1620; y_53 = -23.0000 + 0.0667x; interpolation
1620 <= x < 1650; y_54 = 85.0000 + 0.0000x; interpolation
1650 <= x < 1680; y_55 = 1185.0000 + -0.6667x; interpolation
1680 <= x < 1710; y_56 = -999.0000 + 0.6333x; interpolation
1710 <= x < 1740; y_57 = 1167.0000 + -0.6333x; interpolation
1740 <= x < 1770; y_58 = -109.0000 + 0.1000x; interpolation
1770 <= x < 1800; y_59 = 245.0000 + -0.1000x; interpolation
1800 <= x < 1830; y_60 = -1015.0000 + 0.6000x; interpolation
1830 <= x < 1860; y_61 = 1181.0000 + -0.6000x; interpolation
1860 <= x < 1890; y_62 = 3.0000 + 0.0333x; interpolation
1890 <= x < 1920; y_63 = -1194.0000 + 0.6667x; interpolation
1920 <= x < 1950; y_64 = 1238.0000 + -0.6000x; interpolation
1950 <= x < 1980; y_65 = 328.0000 + -0.1333x; interpolation
1980 <= x < 2010; y_66 = -134.0000 + 0.1000x; interpolation
2010 <= x < 2040; y_67 = 134.0000 + -0.0333x; interpolation
2040 <= x < 2070; y_68 = 66.0000 + 0.0000x; interpolation
2070 <= x < 2100; y_69 = -1314.0000 + 0.6667x; interpolation
2100 <= x < 2130; y_70 = 646.0000 + -0.2667x; interpolation
2130 <= x < 2160; y_71 = 3628.0000 + -1.6667x; interpolation
2160 <= x < 2190; y_72 = 172.0000 + -0.0667x; interpolation
2190 <= x < 2220; y_73 = -4062.0000 + 1.8667x; interpolation
2220 <= x < 2250; y_74 = 1192.0000 + -0.5000x; interpolation
2250 <= x < 2280; y_75 = -1208.0000 + 0.5667x; interpolation
2280 <= x < 2310; y_76 = 1452.0000 + -0.6000x; interpolation
2310 <= x < 2340; y_77 = -1397.0000 + 0.6333x; interpolation
2340 <= x < 2370; y_78 = -71.0000 + 0.0667x; interpolation
2370 <= x < 2400; y_79 = 1825.0000 + -0.7333x; interpolation
2400 <= x < 2430; y_80 = -1535.0000 + 0.6667x; interpolation
2430 <= x < 2460; y_81 = 247.0000 + -0.0667x; interpolation
2460 <= x < 2490; y_82 = 1395.0000 + -0.5333x; interpolation
2490 <= x < 2520; y_83 = 150.0000 + -0.0333x; interpolation
2520 <= x < 2550; y_84 = -18.0000 + 0.0333x; interpolation
2550 <= x < 2580; y_85 = -1463.0000 + 0.6000x; interpolation
2580 <= x < 2610; y_86 = -87.0000 + 0.0667x; interpolation
2610 <= x < 2640; y_87 = 2088.0000 + -0.7667x; interpolation
2640 <= x < 2670; y_88 = -288.0000 + 0.1333x; interpolation
2670 <= x < 2700; y_89 = -1534.0000 + 0.6000x; interpolation
2700 <= x < 2730; y_90 = 266.0000 + -0.0667x; interpolation
2730 <= x < 2760; y_91 = -7.0000 + 0.0333x; interpolation
2760 <= x < 2790; y_92 = 269.0000 + -0.0667x; interpolation
2790 <= x < 2820; y_93 = 1664.0000 + -0.5667x; interpolation
2820 <= x < 2850; y_94 = -122.0000 + 0.0667x; interpolation
2850 <= x < 2880; y_95 = -502.0000 + 0.2000x; interpolation
2880 <= x < 2910; y_96 = 554.0000 + -0.1667x; interpolation
2910 <= x < 2940; y_97 = -1580.0000 + 0.5667x; interpolation
2940 <= x < 2970; y_98 = 576.0000 + -0.1667x; interpolation
2970 <= x < 3000; y_99 = -315.0000 + 0.1333x; interpolation
3000 <= x < 3030; y_100 = 285.0000 + -0.0667x; interpolation
3030 <= x < 3060; y_101 = -18.0000 + 0.0333x; interpolation
3060 <= x < 3090; y_102 = 186.0000 + -0.0333x; interpolation
3090 <= x < 3120; y_103 = -432.0000 + 0.1667x; interpolation
3120 <= x < 3150; y_104 = 296.0000 + -0.0667x; interpolation
3150 <= x < 3180; y_105 = 2186.0000 + -0.6667x; interpolation
3180 <= x < 3210; y_106 = -1736.0000 + 0.5667x; interpolation
3210 <= x < 3240; y_107 = 1902.0000 + -0.5667x; interpolation
3240 <= x < 3270; y_108 = -258.0000 + 0.1000x; interpolation
3270 <= x < 3300; y_109 = -1784.0000 + 0.5667x; interpolation
3300 <= x < 3330; y_110 = 416.0000 + -0.1000x; interpolation
3330 <= x < 3360; y_111 = -250.0000 + 0.1000x; interpolation
3360 <= x < 3390; y_112 = -26.0000 + 0.0333x; interpolation
3390 <= x < 3420; y_113 = 87.0000 + 0.0000x; interpolation
3420 <= x < 3450; y_114 = 315.0000 + -0.0667x; interpolation
3450 <= x < 3480; y_115 = 85.0000 + 0.0000x; interpolation
3480 <= x < 3510; y_116 = 1941.0000 + -0.5333x; interpolation
3510 <= x < 3540; y_117 = -1803.0000 + 0.5333x; interpolation
3540 <= x < 3570; y_118 = 321.0000 + -0.0667x; interpolation
3570 <= x < 3600; y_119 = -274.0000 + 0.1000x; interpolation
3600 <= x < 3630; y_120 = 446.0000 + -0.1000x; interpolation
3630 <= x < 3660; y_121 = -522.0000 + 0.1667x; interpolation
3660 <= x < 3690; y_122 = 576.0000 + -0.1333x; interpolation
3690 <= x < 3720; y_123 = -39.0000 + 0.0333x; interpolation
3720 <= x < 3750; y_124 = 209.0000 + -0.0333x; interpolation
3750 <= x < 3780; y_125 = 2334.0000 + -0.6000x; interpolation
3780 <= x < 3810; y_126 = -2454.0000 + 0.6667x; interpolation
3810 <= x < 3840; y_127 = -41.0000 + 0.0333x; interpolation
3840 <= x < 3870; y_128 = 599.0000 + -0.1333x; interpolation
3870 <= x < 3900; y_129 = 2276.0000 + -0.5667x; interpolation
3900 <= x < 3930; y_130 = 66.0000 + 0.0000x; interpolation
3930 <= x < 3960; y_131 = -2554.0000 + 0.6667x; interpolation
3960 <= x < 3990; y_132 = 1010.0000 + -0.2333x; interpolation
3990 <= x < 4020; y_133 = 1808.0000 + -0.4333x; interpolation
4020 <= x < 4050; y_134 = -202.0000 + 0.0667x; interpolation
4050 <= x < 4080; y_135 = -1957.0000 + 0.5000x; interpolation
4080 <= x < 4110; y_136 = 83.0000 + 0.0000x; interpolation
4110 <= x < 4140; y_137 = 2549.0000 + -0.6000x; interpolation
4140 <= x < 4170; y_138 = -2833.0000 + 0.7000x; interpolation
4170 <= x < 4200; y_139 = 781.0000 + -0.1667x; interpolation
4200 <= x < 4230; y_140 = 2321.0000 + -0.5333x; interpolation
4230 <= x < 4260; y_141 = -3037.0000 + 0.7333x; interpolation
4260 <= x < 4290; y_142 = 371.0000 + -0.0667x; interpolation
4290 <= x < 4320; y_143 = 2945.0000 + -0.6667x; interpolation
4320 <= x < 4350; y_144 = -511.0000 + 0.1333x; interpolation
4350 <= x < 4380; y_145 = -2251.0000 + 0.5333x; interpolation
4380 <= x < 4410; y_146 = 2859.0000 + -0.6333x; interpolation
4410 <= x < 4440; y_147 = 5799.0000 + -1.3000x; interpolation
4440 <= x < 4470; y_148 = -5893.0000 + 1.3333x; interpolation
4470 <= x < 4500; y_149 = 365.0000 + -0.0667x; interpolation
4500 <= x < 4530; y_150 = -2185.0000 + 0.5000x; interpolation
4530 <= x < 4560; y_151 = -977.0000 + 0.2333x; interpolation
4560 <= x < 4590; y_152 = 1303.0000 + -0.2667x; interpolation
4590 <= x < 4620; y_153 = -1145.0000 + 0.2667x; interpolation
4620 <= x < 4650; y_154 = 1319.0000 + -0.2667x; interpolation
4650 <= x < 4680; y_155 = -1161.0000 + 0.2667x; interpolation
4680 <= x < 4710; y_156 = 1179.0000 + -0.2333x; interpolation
4710 <= x < 4740; y_157 = -1019.0000 + 0.2333x; interpolation
4740 <= x < 4770; y_158 = 403.0000 + -0.0667x; interpolation
4770 <= x < 4800; y_159 = 3424.0000 + -0.7000x; interpolation
4800 <= x < 4830; y_160 = -3616.0000 + 0.7667x; interpolation
4830 <= x < 4860; y_161 = 3629.0000 + -0.7333x; interpolation
4860 <= x < 4890; y_162 = -3175.0000 + 0.6667x; interpolation
4890 <= x < 4920; y_163 = 3345.0000 + -0.6667x; interpolation
4920 <= x < 4950; y_164 = -3379.0000 + 0.7000x; interpolation
4950 <= x < 4980; y_165 = 3386.0000 + -0.6667x; interpolation
4980 <= x < 5010; y_166 = -764.0000 + 0.1667x; interpolation
5010 <= x < 5040; y_167 = -2100.0000 + 0.4333x; interpolation
5040 <= x < 5070; y_168 = 2436.0000 + -0.4667x; interpolation
5070 <= x < 5100; y_169 = -1620.0000 + 0.3333x; interpolation
5100 <= x < 5130; y_170 = 80.0000 + 0.0000x; interpolation
5130 <= x < 5160; y_171 = 2474.0000 + -0.4667x; interpolation
5160 <= x < 5190; y_172 = -3202.0000 + 0.6333x; interpolation
5190 <= x < 5220; y_173 = 3199.0000 + -0.6000x; interpolation
5220 <= x < 5250; y_174 = 1111.0000 + -0.2000x; interpolation
5250 <= x < 5280; y_175 = -989.0000 + 0.2000x; interpolation
5280 <= x < 5310; y_176 = -813.0000 + 0.1667x; interpolation
5310 <= x < 5340; y_177 = -2406.0000 + 0.4667x; interpolation
5340 <= x < 5370; y_178 = 2400.0000 + -0.4333x; interpolation
5370 <= x < 5400; y_179 = -1896.0000 + 0.3667x; interpolation
5400 <= x < 5430; y_180 = 2064.0000 + -0.3667x; interpolation
5430 <= x < 5460; y_181 = -1737.0000 + 0.3333x; interpolation
5460 <= x < 5490; y_182 = 1175.0000 + -0.2000x; interpolation
5490 <= x < 5520; y_183 = 2090.0000 + -0.3667x; interpolation
5520 <= x < 5550; y_184 = -3246.0000 + 0.6000x; interpolation
5550 <= x < 5580; y_185 = 3044.0000 + -0.5333x; interpolation
5580 <= x < 5610; y_186 = -2722.0000 + 0.5000x; interpolation
5610 <= x < 5640; y_187 = 3075.0000 + -0.5333x; interpolation
5640 <= x < 5670; y_188 = -3505.0000 + 0.6333x; interpolation
5670 <= x < 5700; y_189 = 1598.0000 + -0.2667x; interpolation
5700 <= x < 5730; y_190 = 2738.0000 + -0.4667x; interpolation
5730 <= x < 5760; y_191 = -3947.0000 + 0.7000x; interpolation
5760 <= x < 5790; y_192 = 3733.0000 + -0.6333x; interpolation
5790 <= x < 5820; y_193 = -3987.0000 + 0.7000x; interpolation
5820 <= x < 5850; y_194 = 4355.0000 + -0.7333x; interpolation
5850 <= x < 5880; y_195 = -4225.0000 + 0.7333x; interpolation
5880 <= x < 5910; y_196 = 4203.0000 + -0.7000x; interpolation
5910 <= x < 5940; y_197 = -3480.0000 + 0.6000x; interpolation
5940 <= x < 5970; y_198 = -312.0000 + 0.0667x; interpolation
5970 <= x < 6000; y_199 = 683.0000 + -0.1000x; interpolation
6000 <= x < 6030; y_200 = 3683.0000 + -0.6000x; interpolation
6030 <= x < 6060; y_201 = -3955.0000 + 0.6667x; interpolation
6060 <= x < 6090; y_202 = 3923.0000 + -0.6333x; interpolation
6090 <= x < 6120; y_203 = -4197.0000 + 0.7000x; interpolation
6120 <= x < 6150; y_204 = 903.0000 + -0.1333x; interpolation
6150 <= x < 6180; y_205 = 83.0000 + 0.0000x; interpolation
6180 <= x < 6210; y_206 = -947.0000 + 0.1667x; interpolation
6210 <= x < 6240; y_207 = 4642.0000 + -0.7333x; interpolation
6240 <= x < 6270; y_208 = -3886.0000 + 0.6333x; interpolation
6270 <= x < 6300; y_209 = 3847.0000 + -0.6000x; interpolation
6300 <= x < 6330; y_210 = -4133.0000 + 0.6667x; interpolation
6330 <= x < 6360; y_211 = 4096.0000 + -0.6333x; interpolation
6360 <= x < 6390; y_212 = -3748.0000 + 0.6000x; interpolation
6390 <= x < 6420; y_213 = -127.0000 + 0.0333x; interpolation
6420 <= x < 6450; y_214 = 515.0000 + -0.0667x; interpolation
6450 <= x < 6480; y_215 = 515.0000 + -0.0667x; interpolation
6480 <= x < 6510; y_216 = 3971.0000 + -0.6000x; interpolation
6510 <= x < 6540; y_217 = -4709.0000 + 0.7333x; interpolation
6540 <= x < 6570; y_218 = 4665.0000 + -0.7000x; interpolation
6570 <= x < 6600; y_219 = -4095.0000 + 0.6333x; interpolation
6600 <= x < 6630; y_220 = 4265.0000 + -0.6333x; interpolation
6630 <= x < 6660; y_221 = -376.0000 + 0.0667x; interpolation
6660 <= x < 6690; y_222 = -3706.0000 + 0.5667x; interpolation
6690 <= x < 6720; y_223 = 531.0000 + -0.0667x; interpolation
6720 <= x < 6750; y_224 = 3891.0000 + -0.5667x; interpolation
6750 <= x < 6780; y_225 = 516.0000 + -0.0667x; interpolation
6780 <= x < 6810; y_226 = 7070.0000 + -1.0333x; interpolation
6810 <= x < 6840; y_227 = 714.0000 + -0.1000x; interpolation
6840 <= x < 6870; y_228 = -11370.0000 + 1.6667x; interpolation
6870 <= x < 6900; y_229 = -607.0000 + 0.1000x; interpolation
6900 <= x < 6930; y_230 = -377.0000 + 0.0667x; interpolation
6930 <= x < 6960; y_231 = 316.0000 + -0.0333x; interpolation
6960 <= x < 6990; y_232 = 1012.0000 + -0.1333x; interpolation
6990 <= x < 7020; y_233 = 80.0000 + 0.0000x; interpolation
7020 <= x < 7050; y_234 = 1484.0000 + -0.2000x; interpolation
7050 <= x < 7080; y_235 = -1336.0000 + 0.2000x; interpolation
7080 <= x < 7110; y_236 = -1572.0000 + 0.2333x; interpolation
7110 <= x < 7140; y_237 = 5775.0000 + -0.8000x; interpolation
7140 <= x < 7170; y_238 = -4697.0000 + 0.6667x; interpolation
7170 <= x < 7200; y_239 = 83.0000 + 0.0000x; interpolation
7200 <= x < 7230; y_240 = -397.0000 + 0.0667x; interpolation
7230 <= x < 7260; y_241 = 326.0000 + -0.0333x; interpolation
7260 <= x < 7290; y_242 = 4682.0000 + -0.6333x; interpolation
7290 <= x < 7320; y_243 = -5281.0000 + 0.7333x; interpolation
7320 <= x < 7350; y_244 = 5211.0000 + -0.7000x; interpolation
7350 <= x < 7380; y_245 = -179.0000 + 0.0333x; interpolation
7380 <= x < 7410; y_246 = -4853.0000 + 0.6667x; interpolation
7410 <= x < 7440; y_247 = 5027.0000 + -0.6667x; interpolation
7440 <= x < 7470; y_248 = -5141.0000 + 0.7000x; interpolation
7470 <= x < 7500; y_249 = 1084.0000 + -0.1333x; interpolation
7500 <= x < 7530; y_250 = 84.0000 + 0.0000x; interpolation
7530 <= x < 7560; y_251 = 2092.0000 + -0.2667x; interpolation
7560 <= x < 7590; y_252 = 3100.0000 + -0.4000x; interpolation
7590 <= x < 7620; y_253 = -695.0000 + 0.1000x; interpolation
7620 <= x < 7650; y_254 = -3997.0000 + 0.5333x; interpolation
7650 <= x < 7680; y_255 = 83.0000 + 0.0000x; interpolation
7680 <= x < 7710; y_256 = -685.0000 + 0.1000x; interpolation
7710 <= x < 7740; y_257 = 343.0000 + -0.0333x; interpolation
7740 <= x < 7770; y_258 = 5245.0000 + -0.6667x; interpolation
7770 <= x < 7800; y_259 = -453.0000 + 0.0667x; interpolation
7800 <= x < 7830; y_260 = -4093.0000 + 0.5333x; interpolation
7830 <= x < 7860; y_261 = 3998.0000 + -0.5000x; interpolation
7860 <= x < 7890; y_262 = -4910.0000 + 0.6333x; interpolation
7890 <= x < 7920; y_263 = 87.0000 + 0.0000x; interpolation
7920 <= x < 7950; y_264 = 351.0000 + -0.0333x; interpolation
7950 <= x < 7980; y_265 = 351.0000 + -0.0333x; interpolation
7980 <= x < 8010; y_266 = 5405.0000 + -0.6667x; interpolation
8010 <= x < 8040; y_267 = -4474.0000 + 0.5667x; interpolation
8040 <= x < 8070; y_268 = 4370.0000 + -0.5333x; interpolation
8070 <= x < 8100; y_269 = -5045.0000 + 0.6333x; interpolation
8100 <= x < 8130; y_270 = 4945.0000 + -0.6000x; interpolation
8130 <= x < 8160; y_271 = -475.0000 + 0.0667x; interpolation
8160 <= x < 8190; y_272 = 885.0000 + -0.1000x; interpolation
8190 <= x < 8220; y_273 = -5940.0000 + 0.7333x; interpolation
8220 <= x < 8250; y_274 = 636.0000 + -0.0667x; interpolation
8250 <= x < 8280; y_275 = 5036.0000 + -0.6000x; interpolation
8280 <= x < 8310; y_276 = -4900.0000 + 0.6000x; interpolation
8310 <= x < 8340; y_277 = 5072.0000 + -0.6000x; interpolation
8340 <= x < 8370; y_278 = -4380.0000 + 0.5333x; interpolation
8370 <= x < 8400; y_279 = 642.0000 + -0.0667x; interpolation
8400 <= x < 8430; y_280 = 4842.0000 + -0.5667x; interpolation
8430 <= x < 8460; y_281 = -5836.0000 + 0.7000x; interpolation
8460 <= x < 8490; y_282 = 1496.0000 + -0.1667x; interpolation
8490 <= x < 8520; y_283 = 7156.0000 + -0.8333x; interpolation
8520 <= x < 8550; y_284 = -3068.0000 + 0.3667x; interpolation
8550 <= x < 8580; y_285 = -4778.0000 + 0.5667x; interpolation
8580 <= x < 8610; y_286 = 5232.0000 + -0.6000x; interpolation
8610 <= x < 8640; y_287 = -5961.0000 + 0.7000x; interpolation
8640 <= x < 8670; y_288 = 4983.0000 + -0.5667x; interpolation
8670 <= x < 8700; y_289 = -5132.0000 + 0.6000x; interpolation
8700 <= x < 8730; y_290 = 7338.0000 + -0.8333x; interpolation
8730 <= x < 8760; y_291 = -5757.0000 + 0.6667x; interpolation
8760 <= x < 8790; y_292 = 5047.0000 + -0.5667x; interpolation
8790 <= x < 8820; y_293 = 66.0000 + 0.0000x; interpolation
8820 <= x < 8850; y_294 = -5520.0000 + 0.6333x; interpolation
8850 <= x < 8880; y_295 = 380.0000 + -0.0333x; interpolation
8880 <= x < 8910; y_296 = -508.0000 + 0.0667x; interpolation
8910 <= x < 8940; y_297 = 680.0000 + -0.0667x; interpolation
8940 <= x < 8970; y_298 = 84.0000 + 0.0000x; interpolation
8970 <= x < 9000; y_299 = 5167.0000 + -0.5667x; interpolation
9000 <= x < 9030; y_300 = -833.0000 + 0.1000x; interpolation
9030 <= x < 9060; y_301 = -4144.0000 + 0.4667x; interpolation
9060 <= x < 9090; y_302 = 4312.0000 + -0.4667x; interpolation
9090 <= x < 9120; y_303 = -4172.0000 + 0.4667x; interpolation
9120 <= x < 9150; y_304 = 4340.0000 + -0.4667x; interpolation
9150 <= x < 9180; y_305 = 2815.0000 + -0.3000x; interpolation
9180 <= x < 9210; y_306 = 5569.0000 + -0.6000x; interpolation
9210 <= x < 9240; y_307 = 4341.0000 + -0.4667x; interpolation
9240 <= x < 9270; y_308 = -12291.0000 + 1.3333x; interpolation
9270 <= x < 9300; y_309 = -4257.0000 + 0.4667x; interpolation
9300 <= x < 9330; y_310 = 5353.0000 + -0.5667x; interpolation
9330 <= x < 9360; y_311 = -4599.0000 + 0.5000x; interpolation
9360 <= x < 9390; y_312 = 3825.0000 + -0.4000x; interpolation
9390 <= x < 9420; y_313 = -4626.0000 + 0.5000x; interpolation
9420 <= x < 9450; y_314 = 1654.0000 + -0.1667x; interpolation
9450 <= x < 9480; y_315 = -866.0000 + 0.1000x; interpolation
9480 <= x < 9510; y_316 = 714.0000 + -0.0667x; interpolation
9510 <= x < 9540; y_317 = 4835.0000 + -0.5000x; interpolation
9540 <= x < 9570; y_318 = -1525.0000 + 0.1667x; interpolation
9570 <= x < 9600; y_319 = -4396.0000 + 0.4667x; interpolation
9600 <= x < 9630; y_320 = 2324.0000 + -0.2333x; interpolation
9630 <= x < 9660; y_321 = -3133.0000 + 0.3333x; interpolation
9660 <= x < 9690; y_322 = 3307.0000 + -0.3333x; interpolation
9690 <= x < 9720; y_323 = 3953.0000 + -0.4000x; interpolation
9720 <= x < 9750; y_324 = -6739.0000 + 0.7000x; interpolation
9750 <= x < 9780; y_325 = 6261.0000 + -0.6333x; interpolation
9780 <= x < 9810; y_326 = -6453.0000 + 0.6667x; interpolation
9810 <= x < 9840; y_327 = 1068.0000 + -0.1000x; interpolation
9840 <= x < 9870; y_328 = 3036.0000 + -0.3000x; interpolation
9870 <= x < 9900; y_329 = -3215.0000 + 0.3333x; interpolation
9900 <= x < 9930; y_330 = 1735.0000 + -0.1667x; interpolation
9930 <= x < 9960; y_331 = -1244.0000 + 0.1333x; interpolation
9960 <= x < 9990; y_332 = -580.0000 + 0.0667x; interpolation
9990 <= x < 10020; y_333 = 419.0000 + -0.0333x; interpolation
10020 <= x < 10050; y_334 = 7099.0000 + -0.7000x; interpolation
10050 <= x < 10080; y_335 = -7306.0000 + 0.7333x; interpolation
10080 <= x < 10110; y_336 = 7142.0000 + -0.7000x; interpolation
10110 <= x < 10140; y_337 = -272.0000 + 0.0333x; interpolation
10140 <= x < 10170; y_338 = -6694.0000 + 0.6667x; interpolation
10170 <= x < 10200; y_339 = 6527.0000 + -0.6333x; interpolation
10200 <= x < 10230; y_340 = -5033.0000 + 0.5000x; interpolation
10230 <= x < 10260; y_341 = 6220.0000 + -0.6000x; interpolation
10260 <= x < 10290; y_342 = -7118.0000 + 0.7000x; interpolation
10290 <= x < 10320; y_343 = 85.0000 + 0.0000x; interpolation
10320 <= x < 10350; y_344 = 1117.0000 + -0.1000x; interpolation
10350 <= x < 10380; y_345 = 5257.0000 + -0.5000x; interpolation
10380 <= x < 10410; y_346 = -5815.0000 + 0.5667x; interpolation
10410 <= x < 10440; y_347 = 6330.0000 + -0.6000x; interpolation
10440 <= x < 10470; y_348 = -6894.0000 + 0.6667x; interpolation
10470 <= x < 10500; y_349 = 7066.0000 + -0.6667x; interpolation
10500 <= x < 10530; y_350 = -6584.0000 + 0.6333x; interpolation
10530 <= x < 10560; y_351 = 436.0000 + -0.0333x; interpolation
10560 <= x < 10590; y_352 = -972.0000 + 0.1000x; interpolation
10590 <= x < 10620; y_353 = 1146.0000 + -0.1000x; interpolation
10620 <= x < 10650; y_354 = -978.0000 + 0.1000x; interpolation
10650 <= x < 10680; y_355 = 2572.0000 + -0.2333x; interpolation
10680 <= x < 10710; y_356 = 6132.0000 + -0.5667x; interpolation
10710 <= x < 10740; y_357 = -7791.0000 + 0.7333x; interpolation
10740 <= x < 10770; y_358 = 7245.0000 + -0.6667x; interpolation
10770 <= x < 10800; y_359 = -7474.0000 + 0.7000x; interpolation
10800 <= x < 10830; y_360 = 8366.0000 + -0.7667x; interpolation
10830 <= x < 10860; y_361 = -1381.0000 + 0.1333x; interpolation
10860 <= x < 10890; y_362 = -6449.0000 + 0.6000x; interpolation
10890 <= x < 10920; y_363 = 1900.0000 + -0.1667x; interpolation
10920 <= x < 10950; y_364 = -2104.0000 + 0.2000x; interpolation
10950 <= x < 10980; y_365 = 1181.0000 + -0.1000x; interpolation
10980 <= x < 11010; y_366 = -1381.0000 + 0.1333x; interpolation
11010 <= x < 11040; y_367 = 7794.0000 + -0.7000x; interpolation
11040 <= x < 11070; y_368 = -6926.0000 + 0.6333x; interpolation
11070 <= x < 11100; y_369 = 7096.0000 + -0.6333x; interpolation
11100 <= x < 11130; y_370 = -7704.0000 + 0.7000x; interpolation
11130 <= x < 11160; y_371 = 7878.0000 + -0.7000x; interpolation
11160 <= x < 11190; y_372 = -306.0000 + 0.0333x; interpolation
11190 <= x < 11220; y_373 = -5155.0000 + 0.4667x; interpolation
11220 <= x < 11250; y_374 = 5317.0000 + -0.4667x; interpolation
11250 <= x < 11280; y_375 = -6308.0000 + 0.5667x; interpolation
11280 <= x < 11310; y_376 = 6476.0000 + -0.5667x; interpolation
11310 <= x < 11340; y_377 = -6719.0000 + 0.6000x; interpolation
11340 <= x < 11370; y_378 = 6889.0000 + -0.6000x; interpolation
11370 <= x < 11400; y_379 = -6755.0000 + 0.6000x; interpolation
11400 <= x < 11430; y_380 = 845.0000 + -0.0667x; interpolation
11430 <= x < 11460; y_381 = 21800.0000 + -1.9000x; interpolation
11460 <= x < 11490; y_382 = -14872.0000 + 1.3000x; interpolation
11490 <= x < 11520; y_383 = 831.0000 + -0.0667x; interpolation
11520 <= x < 11550; y_384 = -8385.0000 + 0.7333x; interpolation
11550 <= x < 11580; y_385 = 7785.0000 + -0.6667x; interpolation
11580 <= x < 11610; y_386 = -7655.0000 + 0.6667x; interpolation
11610 <= x < 11640; y_387 = 8212.0000 + -0.7000x; interpolation
11640 <= x < 11670; y_388 = -7696.0000 + 0.6667x; interpolation
11670 <= x < 11700; y_389 = 7475.0000 + -0.6333x; interpolation
11700 <= x < 11730; y_390 = -7345.0000 + 0.6333x; interpolation
11730 <= x < 11760; y_391 = 7513.0000 + -0.6333x; interpolation
11760 <= x < 11790; y_392 = -8167.0000 + 0.7000x; interpolation
11790 <= x < 11820; y_393 = 2444.0000 + -0.2000x; interpolation
11820 <= x < 11850; y_394 = 4808.0000 + -0.4000x; interpolation
11850 <= x < 11880; y_395 = -5857.0000 + 0.5000x; interpolation
11880 <= x < 11910; y_396 = 2459.0000 + -0.2000x; interpolation
11910 <= x < 11940; y_397 = -3893.0000 + 0.3333x; interpolation
11940 <= x < 11970; y_398 = 2077.0000 + -0.1667x; interpolation
11970 <= x < 12000; y_399 = -1913.0000 + 0.1667x; interpolation
12000 <= x < 12030; y_400 = 887.0000 + -0.0667x; interpolation
12030 <= x < 12060; y_401 = 7704.0000 + -0.6333x; interpolation
12060 <= x < 12090; y_402 = -7974.0000 + 0.6667x; interpolation
12090 <= x < 12120; y_403 = 8146.0000 + -0.6667x; interpolation
12120 <= x < 12150; y_404 = -7206.0000 + 0.6000x; interpolation
12150 <= x < 12180; y_405 = 7779.0000 + -0.6333x; interpolation
12180 <= x < 12210; y_406 = -5619.0000 + 0.4667x; interpolation
12210 <= x < 12240; y_407 = 5777.0000 + -0.4667x; interpolation
12240 <= x < 12270; y_408 = -1159.0000 + 0.1000x; interpolation
12270 <= x < 12300; y_409 = -6067.0000 + 0.5000x; interpolation
12300 <= x < 12330; y_410 = 7053.0000 + -0.5667x; interpolation
12330 <= x < 12360; y_411 = -6921.0000 + 0.5667x; interpolation
12360 <= x < 12390; y_412 = 5851.0000 + -0.4667x; interpolation
12390 <= x < 12420; y_413 = -6126.0000 + 0.5000x; interpolation
12420 <= x < 12450; y_414 = 1326.0000 + -0.1000x; interpolation
12450 <= x < 12480; y_415 = 6306.0000 + -0.5000x; interpolation
12480 <= x < 12510; y_416 = -7422.0000 + 0.6000x; interpolation
12510 <= x < 12540; y_417 = 7590.0000 + -0.6000x; interpolation
12540 <= x < 12570; y_418 = -1188.0000 + 0.1000x; interpolation
12570 <= x < 12600; y_419 = -5797.0000 + 0.4667x; interpolation
12600 <= x < 12630; y_420 = 83.0000 + 0.0000x; interpolation
12630 <= x < 12660; y_421 = -1180.0000 + 0.1000x; interpolation
12660 <= x < 12690; y_422 = 8104.0000 + -0.6333x; interpolation
12690 <= x < 12720; y_423 = -7124.0000 + 0.5667x; interpolation
12720 <= x < 12750; y_424 = 6868.0000 + -0.5333x; interpolation
12750 <= x < 12780; y_425 = -6307.0000 + 0.5000x; interpolation
12780 <= x < 12810; y_426 = 6899.0000 + -0.5333x; interpolation
12810 <= x < 12840; y_427 = -7619.0000 + 0.6000x; interpolation
12840 <= x < 12870; y_428 = 7361.0000 + -0.5667x; interpolation
12870 <= x < 12900; y_429 = -6796.0000 + 0.5333x; interpolation
12900 <= x < 12930; y_430 = 6534.0000 + -0.5000x; interpolation
12930 <= x < 12960; y_431 = -5965.0000 + 0.4667x; interpolation
12960 <= x < 12990; y_432 = 7859.0000 + -0.6000x; interpolation
12990 <= x < 13020; y_433 = -8595.0000 + 0.6667x; interpolation
13020 <= x < 13050; y_434 = 7029.0000 + -0.5333x; interpolation
13050 <= x < 13080; y_435 = -6891.0000 + 0.5333x; interpolation
13080 <= x < 13110; y_436 = 2265.0000 + -0.1667x; interpolation
13110 <= x < 13140; y_437 = -1231.0000 + 0.1000x; interpolation
13140 <= x < 13170; y_438 = 5777.0000 + -0.4333x; interpolation
13170 <= x < 13200; y_439 = -6515.0000 + 0.5000x; interpolation
13200 <= x < 13230; y_440 = 1405.0000 + -0.1000x; interpolation
13230 <= x < 13260; y_441 = -1241.0000 + 0.1000x; interpolation
13260 <= x < 13290; y_442 = 3179.0000 + -0.2333x; interpolation
13290 <= x < 13320; y_443 = -3466.0000 + 0.2667x; interpolation
13320 <= x < 13350; y_444 = 3194.0000 + -0.2333x; interpolation
13350 <= x < 13380; y_445 = -2591.0000 + 0.2000x; interpolation
13380 <= x < 13410; y_446 = 8113.0000 + -0.6000x; interpolation
13410 <= x < 13440; y_447 = 4984.0000 + -0.3667x; interpolation
13440 <= x < 13470; y_448 = -12936.0000 + 0.9667x; interpolation
13470 <= x < 13500; y_449 = 8616.0000 + -0.6333x; interpolation
13500 <= x < 13530; y_450 = -9384.0000 + 0.7000x; interpolation
13530 <= x < 13560; y_451 = 9107.0000 + -0.6667x; interpolation
13560 <= x < 13590; y_452 = -8069.0000 + 0.6000x; interpolation
13590 <= x < 13620; y_453 = 9145.0000 + -0.6667x; interpolation
13620 <= x < 13650; y_454 = -9015.0000 + 0.6667x; interpolation
13650 <= x < 13680; y_455 = 9185.0000 + -0.6667x; interpolation
13680 <= x < 13710; y_456 = -2215.0000 + 0.1667x; interpolation
13710 <= x < 13740; y_457 = 9667.0000 + -0.7000x; interpolation
13740 <= x < 13770; y_458 = 10583.0000 + -0.7667x; interpolation
13770 <= x < 13800; y_459 = -22465.0000 + 1.6333x; interpolation
13800 <= x < 13830; y_460 = -3145.0000 + 0.2333x; interpolation
13830 <= x < 13860; y_461 = 7919.0000 + -0.5667x; interpolation
13860 <= x < 13890; y_462 = -8251.0000 + 0.6000x; interpolation
13890 <= x < 13920; y_463 = 8880.0000 + -0.6333x; interpolation
13920 <= x < 13950; y_464 = -8752.0000 + 0.6333x; interpolation
13950 <= x < 13980; y_465 = 8918.0000 + -0.6333x; interpolation
13980 <= x < 14010; y_466 = -9722.0000 + 0.7000x; interpolation
14010 <= x < 14040; y_467 = 8958.0000 + -0.6333x; interpolation
14040 <= x < 14070; y_468 = -7422.0000 + 0.5333x; interpolation
14070 <= x < 14100; y_469 = 8055.0000 + -0.5667x; interpolation
14100 <= x < 14130; y_470 = -9335.0000 + 0.6667x; interpolation
14130 <= x < 14160; y_471 = 9505.0000 + -0.6667x; interpolation
14160 <= x < 14190; y_472 = -1351.0000 + 0.1000x; interpolation
14190 <= x < 14220; y_473 = -7500.0000 + 0.5333x; interpolation
14220 <= x < 14250; y_474 = 7668.0000 + -0.5333x; interpolation
14250 <= x < 14280; y_475 = -8482.0000 + 0.6000x; interpolation
14280 <= x < 14310; y_476 = 8654.0000 + -0.6000x; interpolation
14310 <= x < 14340; y_477 = -7564.0000 + 0.5333x; interpolation
14340 <= x < 14370; y_478 = 8210.0000 + -0.5667x; interpolation
14370 <= x < 14400; y_479 = -9992.0000 + 0.7000x; interpolation
14400 <= x < 14430; y_480 = 568.0000 + -0.0333x; interpolation
14430 <= x < 14460; y_481 = 10188.0000 + -0.7000x; interpolation
14460 <= x < 14490; y_482 = -9092.0000 + 0.6333x; interpolation
14490 <= x < 14520; y_483 = 7813.0000 + -0.5333x; interpolation
14520 <= x < 14550; y_484 = -6223.0000 + 0.4333x; interpolation
14550 <= x < 14580; y_485 = 5902.0000 + -0.4000x; interpolation
14580 <= x < 14610; y_486 = -5276.0000 + 0.3667x; interpolation
14610 <= x < 14640; y_487 = 7873.0000 + -0.5333x; interpolation
14640 <= x < 14670; y_488 = -8231.0000 + 0.5667x; interpolation
14670 <= x < 14700; y_489 = 9862.0000 + -0.6667x; interpolation
14700 <= x < 14730; y_490 = -11208.0000 + 0.7667x; interpolation
14730 <= x < 14760; y_491 = 9414.0000 + -0.6333x; interpolation
14760 <= x < 14790; y_492 = -8790.0000 + 0.6000x; interpolation
14790 <= x < 14820; y_493 = -902.0000 + 0.0667x; interpolation
14820 <= x < 14850; y_494 = 6508.0000 + -0.4333x; interpolation
14850 <= x < 14880; y_495 = -6362.0000 + 0.4333x; interpolation
14880 <= x < 14910; y_496 = 3062.0000 + -0.2000x; interpolation
14910 <= x < 14940; y_497 = -2902.0000 + 0.2000x; interpolation
14940 <= x < 14970; y_498 = 3074.0000 + -0.2000x; interpolation
14970 <= x < 15000; y_499 = 6567.0000 + -0.4333x; interpolation
15000 <= x < 15030; y_500 = -433.0000 + 0.0333x; interpolation
15030 <= x < 15060; y_501 = -7447.0000 + 0.5000x; interpolation
15060 <= x < 15090; y_502 = 6609.0000 + -0.4333x; interpolation
15090 <= x < 15120; y_503 = -6972.0000 + 0.4667x; interpolation
15120 <= x < 15150; y_504 = -420.0000 + 0.0333x; interpolation
15150 <= x < 15180; y_505 = -420.0000 + 0.0333x; interpolation
15180 <= x < 15210; y_506 = 86.0000 + 0.0000x; interpolation
15210 <= x < 15240; y_507 = 8705.0000 + -0.5667x; interpolation
15240 <= x < 15270; y_508 = -8567.0000 + 0.5667x; interpolation
15270 <= x < 15300; y_509 = 5176.0000 + -0.3333x; interpolation
15300 <= x < 15330; y_510 = -3494.0000 + 0.2333x; interpolation
15330 <= x < 15360; y_511 = 5704.0000 + -0.3667x; interpolation
15360 <= x < 15390; y_512 = -7096.0000 + 0.4667x; interpolation
15390 <= x < 15420; y_513 = 10859.0000 + -0.7000x; interpolation
15420 <= x < 15450; y_514 = -10215.0000 + 0.6667x; interpolation
15450 <= x < 15480; y_515 = 9870.0000 + -0.6333x; interpolation
15480 <= x < 15510; y_516 = 66.0000 + 0.0000x; interpolation
15510 <= x < 15540; y_517 = 66.0000 + 0.0000x; interpolation
15540 <= x < 15570; y_518 = -8222.0000 + 0.5333x; interpolation
15570 <= x < 15600; y_519 = 82.0000 + 0.0000x; interpolation
15600 <= x < 15630; y_520 = 2162.0000 + -0.1333x; interpolation
15630 <= x < 15660; y_521 = -3569.0000 + 0.2333x; interpolation
15660 <= x < 15690; y_522 = 1129.0000 + -0.0667x; interpolation
15690 <= x < 15720; y_523 = -2009.0000 + 0.1333x; interpolation
15720 <= x < 15750; y_524 = 2183.0000 + -0.1333x; interpolation
15750 <= x < 15780; y_525 = 9533.0000 + -0.6000x; interpolation
15780 <= x < 15810; y_526 = -10455.0000 + 0.6667x; interpolation
15810 <= x < 15840; y_527 = 10625.0000 + -0.6667x; interpolation
15840 <= x < 15870; y_528 = -10495.0000 + 0.6667x; interpolation
15870 <= x < 15900; y_529 = -444.0000 + 0.0333x; interpolation
15900 <= x < 15930; y_530 = 616.0000 + -0.0333x; interpolation
15930 <= x < 15960; y_531 = 10705.0000 + -0.6667x; interpolation
15960 <= x < 15990; y_532 = -11107.0000 + 0.7000x; interpolation
15990 <= x < 16020; y_533 = 11279.0000 + -0.7000x; interpolation
16020 <= x < 16050; y_534 = -10081.0000 + 0.6333x; interpolation
16050 <= x < 16080; y_535 = 17739.0000 + -1.1000x; interpolation
16080 <= x < 16110; y_536 = 12915.0000 + -0.8000x; interpolation
16110 <= x < 16140; y_537 = -23601.0000 + 1.4667x; interpolation
16140 <= x < 16170; y_538 = -5309.0000 + 0.3333x; interpolation
16170 <= x < 16200; y_539 = -2075.0000 + 0.1333x; interpolation
16200 <= x < 16230; y_540 = 11425.0000 + -0.7000x; interpolation
16230 <= x < 16260; y_541 = -9674.0000 + 0.6000x; interpolation
16260 <= x < 16290; y_542 = 9296.0000 + -0.5667x; interpolation
16290 <= x < 16320; y_543 = -9709.0000 + 0.6000x; interpolation
16320 <= x < 16350; y_544 = 9331.0000 + -0.5667x; interpolation
16350 <= x < 16380; y_545 = -8109.0000 + 0.5000x; interpolation
16380 <= x < 16410; y_546 = 8271.0000 + -0.5000x; interpolation
16410 <= x < 16440; y_547 = -10327.0000 + 0.6333x; interpolation
16440 <= x < 16470; y_548 = 10497.0000 + -0.6333x; interpolation
16470 <= x < 16500; y_549 = -9816.0000 + 0.6000x; interpolation
16500 <= x < 16530; y_550 = 9984.0000 + -0.6000x; interpolation
16530 <= x < 16560; y_551 = -8199.0000 + 0.5000x; interpolation
16560 <= x < 16590; y_552 = 8361.0000 + -0.5000x; interpolation
16590 <= x < 16620; y_553 = -9888.0000 + 0.6000x; interpolation
16620 <= x < 16650; y_554 = 10056.0000 + -0.6000x; interpolation
16650 <= x < 16680; y_555 = -10479.0000 + 0.6333x; interpolation
16680 <= x < 16710; y_556 = 10093.0000 + -0.6000x; interpolation
16710 <= x < 16740; y_557 = -7174.0000 + 0.4333x; interpolation
16740 <= x < 16770; y_558 = 7334.0000 + -0.4333x; interpolation
16770 <= x < 16800; y_559 = -9436.0000 + 0.5667x; interpolation
16800 <= x < 16830; y_560 = 10164.0000 + -0.6000x; interpolation
16830 <= x < 16860; y_561 = -10032.0000 + 0.6000x; interpolation
16860 <= x < 16890; y_562 = 10762.0000 + -0.6333x; interpolation
16890 <= x < 16920; y_563 = -9506.0000 + 0.5667x; interpolation
16920 <= x < 16950; y_564 = 8542.0000 + -0.5000x; interpolation
16950 <= x < 16980; y_565 = -10103.0000 + 0.6000x; interpolation
16980 <= x < 17010; y_566 = 10273.0000 + -0.6000x; interpolation
17010 <= x < 17040; y_567 = -9572.0000 + 0.5667x; interpolation
17040 <= x < 17070; y_568 = 9740.0000 + -0.5667x; interpolation
17070 <= x < 17100; y_569 = -8468.0000 + 0.5000x; interpolation
17100 <= x < 17130; y_570 = -1628.0000 + 0.1000x; interpolation
17130 <= x < 17160; y_571 = 11505.0000 + -0.6667x; interpolation
17160 <= x < 17190; y_572 = -11947.0000 + 0.7000x; interpolation
17190 <= x < 17220; y_573 = 12692.0000 + -0.7333x; interpolation
17220 <= x < 17250; y_574 = -9694.0000 + 0.5667x; interpolation
17250 <= x < 17280; y_575 = 9856.0000 + -0.5667x; interpolation
17280 <= x < 17310; y_576 = -12032.0000 + 0.7000x; interpolation
17310 <= x < 17340; y_577 = 662.0000 + -0.0333x; interpolation
17340 <= x < 17370; y_578 = 9910.0000 + -0.5667x; interpolation
17370 <= x < 17400; y_579 = -8039.0000 + 0.4667x; interpolation
17400 <= x < 17430; y_580 = 10521.0000 + -0.6000x; interpolation
17430 <= x < 17460; y_581 = -6909.0000 + 0.4000x; interpolation
17460 <= x < 17490; y_582 = 4731.0000 + -0.2667x; interpolation
17490 <= x < 17520; y_583 = -9261.0000 + 0.5333x; interpolation
17520 <= x < 17550; y_584 = 8843.0000 + -0.5000x; interpolation
17550 <= x < 17580; y_585 = -9877.0000 + 0.5667x; interpolation
17580 <= x < 17610; y_586 = 10633.0000 + -0.6000x; interpolation
17610 <= x < 17640; y_587 = -9912.0000 + 0.5667x; interpolation
17640 <= x < 17670; y_588 = 9492.0000 + -0.5333x; interpolation
17670 <= x < 17700; y_589 = 1835.0000 + -0.1000x; interpolation
17700 <= x < 17730; y_590 = -11735.0000 + 0.6667x; interpolation
17730 <= x < 17760; y_591 = 11905.0000 + -0.6667x; interpolation
17760 <= x < 17790; y_592 = -11775.0000 + 0.6667x; interpolation
17790 <= x < 17820; y_593 = 11945.0000 + -0.6667x; interpolation
17820 <= x < 17850; y_594 = -11221.0000 + 0.6333x; interpolation
17850 <= x < 17880; y_595 = 11984.0000 + -0.6667x; interpolation
17880 <= x < 17910; y_596 = -13048.0000 + 0.7333x; interpolation
17910 <= x < 17940; y_597 = 12623.0000 + -0.7000x; interpolation
17940 <= x < 17970; y_598 = -10699.0000 + 0.6000x; interpolation
17970 <= x < 18000; y_599 = 10865.0000 + -0.6000x; interpolation
18000 <= x < 18030; y_600 = -10735.0000 + 0.6000x; interpolation
18030 <= x < 18060; y_601 = 11502.0000 + -0.6333x; interpolation
18060 <= x < 18090; y_602 = -12578.0000 + 0.7000x; interpolation
18090 <= x < 18120; y_603 = 12145.0000 + -0.6667x; interpolation
18120 <= x < 18150; y_604 = -12015.0000 + 0.6667x; interpolation
18150 <= x < 18180; y_605 = 12790.0000 + -0.7000x; interpolation
18180 <= x < 18210; y_606 = -12662.0000 + 0.7000x; interpolation
18210 <= x < 18240; y_607 = 12225.0000 + -0.6667x; interpolation
18240 <= x < 18270; y_608 = -10879.0000 + 0.6000x; interpolation
18270 <= x < 18300; y_609 = 11045.0000 + -0.6000x; interpolation
18300 <= x < 18330; y_610 = -10305.0000 + 0.5667x; interpolation
18330 <= x < 18360; y_611 = 9858.0000 + -0.5333x; interpolation
18360 <= x < 18390; y_612 = -11562.0000 + 0.6333x; interpolation
18390 <= x < 18420; y_613 = 4989.0000 + -0.2667x; interpolation
18420 <= x < 18450; y_614 = 31391.0000 + -1.7000x; interpolation
18450 <= x < 18480; y_615 = 1256.0000 + -0.0667x; interpolation
18480 <= x < 18510; y_616 = -36320.0000 + 1.9667x; interpolation
18510 <= x < 18540; y_617 = 12423.0000 + -0.6667x; interpolation
18540 <= x < 18570; y_618 = -12297.0000 + 0.6667x; interpolation
18570 <= x < 18600; y_619 = 11844.0000 + -0.6333x; interpolation
18600 <= x < 18630; y_620 = -12956.0000 + 0.7000x; interpolation
18630 <= x < 18660; y_621 = 13126.0000 + -0.7000x; interpolation
18660 <= x < 18690; y_622 = -11754.0000 + 0.6333x; interpolation
18690 <= x < 18720; y_623 = 11920.0000 + -0.6333x; interpolation
18720 <= x < 18750; y_624 = -12416.0000 + 0.6667x; interpolation
18750 <= x < 18780; y_625 = 11959.0000 + -0.6333x; interpolation
18780 <= x < 18810; y_626 = -9325.0000 + 0.5000x; interpolation
18810 <= x < 18840; y_627 = -3055.0000 + 0.1667x; interpolation
18840 <= x < 18870; y_628 = 1341.0000 + -0.0667x; interpolation
18870 <= x < 18900; y_629 = 712.0000 + -0.0333x; interpolation
18900 <= x < 18930; y_630 = 8902.0000 + -0.4667x; interpolation
18930 <= x < 18960; y_631 = -8766.0000 + 0.4667x; interpolation
18960 <= x < 18990; y_632 = 8298.0000 + -0.4333x; interpolation
18990 <= x < 19020; y_633 = -9426.0000 + 0.5000x; interpolation
19020 <= x < 19050; y_634 = -550.0000 + 0.0333x; interpolation
19050 <= x < 19080; y_635 = 12150.0000 + -0.6333x; interpolation
19080 <= x < 19110; y_636 = -12654.0000 + 0.6667x; interpolation
19110 <= x < 19140; y_637 = 13463.0000 + -0.7000x; interpolation
19140 <= x < 19170; y_638 = -11419.0000 + 0.6000x; interpolation
19170 <= x < 19200; y_639 = 11585.0000 + -0.6000x; interpolation
19200 <= x < 19230; y_640 = -12735.0000 + 0.6667x; interpolation
19230 <= x < 19260; y_641 = 12905.0000 + -0.6667x; interpolation
19260 <= x < 19290; y_642 = -12133.0000 + 0.6333x; interpolation
19290 <= x < 19320; y_643 = 12301.0000 + -0.6333x; interpolation
19320 <= x < 19350; y_644 = -12171.0000 + 0.6333x; interpolation
19350 <= x < 19380; y_645 = 11694.0000 + -0.6000x; interpolation
19380 <= x < 19410; y_646 = -12208.0000 + 0.6333x; interpolation
19410 <= x < 19440; y_647 = 13025.0000 + -0.6667x; interpolation
19440 <= x < 19470; y_648 = -9007.0000 + 0.4667x; interpolation
19470 <= x < 19500; y_649 = 8516.0000 + -0.4333x; interpolation
19500 <= x < 19530; y_650 = -11634.0000 + 0.6000x; interpolation
19530 <= x < 19560; y_651 = 12453.0000 + -0.6333x; interpolation
19560 <= x < 19590; y_652 = -12975.0000 + 0.6667x; interpolation
19590 <= x < 19620; y_653 = 13145.0000 + -0.6667x; interpolation
19620 <= x < 19650; y_654 = -13015.0000 + 0.6667x; interpolation
19650 <= x < 19680; y_655 = 13185.0000 + -0.6667x; interpolation
19680 <= x < 19710; y_656 = -11743.0000 + 0.6000x; interpolation
19710 <= x < 19740; y_657 = 11252.0000 + -0.5667x; interpolation
19740 <= x < 19770; y_658 = -11778.0000 + 0.6000x; interpolation
19770 <= x < 19800; y_659 = 13923.0000 + -0.7000x; interpolation
19800 <= x < 19830; y_660 = -14457.0000 + 0.7333x; interpolation
19830 <= x < 19860; y_661 = 12644.0000 + -0.6333x; interpolation
19860 <= x < 19890; y_662 = -3244.0000 + 0.1667x; interpolation
19890 <= x < 19920; y_663 = -5896.0000 + 0.3000x; interpolation
19920 <= x < 19950; y_664 = 5392.0000 + -0.2667x; interpolation
19950 <= x < 19980; y_665 = -7908.0000 + 0.4000x; interpolation
19980 <= x < 20010; y_666 = 8742.0000 + -0.4333x; interpolation
20010 <= x < 20040; y_667 = -7933.0000 + 0.4000x; interpolation
20040 <= x < 20070; y_668 = 8099.0000 + -0.4000x; interpolation
20070 <= x < 20100; y_669 = -7288.0000 + 0.3667x; interpolation
20100 <= x < 20130; y_670 = 6782.0000 + -0.3333x; interpolation
20130 <= x < 20160; y_671 = -5967.0000 + 0.3000x; interpolation
20160 <= x < 20190; y_672 = 5457.0000 + -0.2667x; interpolation
20190 <= x < 20220; y_673 = -5311.0000 + 0.2667x; interpolation
20220 <= x < 20250; y_674 = 5473.0000 + -0.2667x; interpolation
20250 <= x < 20280; y_675 = -4652.0000 + 0.2333x; interpolation
20280 <= x < 20310; y_676 = -3300.0000 + 0.1667x; interpolation
20310 <= x < 20340; y_677 = 2793.0000 + -0.1333x; interpolation
20340 <= x < 20370; y_678 = -2631.0000 + 0.1333x; interpolation
20370 <= x < 20400; y_679 = 2122.0000 + -0.1000x; interpolation
20400 <= x < 20430; y_680 = -1958.0000 + 0.1000x; interpolation
20430 <= x < 20460; y_681 = 1447.0000 + -0.0667x; interpolation
20460 <= x < 20490; y_682 = 83.0000 + 0.0000x; interpolation
20490 <= x < 20520; y_683 = 83.0000 + 0.0000x; interpolation
20520 <= x < 20550; y_684 = -601.0000 + 0.0333x; interpolation
20550 <= x < 20580; y_685 = 15154.0000 + -0.7333x; interpolation
20580 <= x < 20610; y_686 = 22700.0000 + -1.1000x; interpolation
20610 <= x < 20640; y_687 = 2777.0000 + -0.1333x; interpolation
20640 <= x < 20670; y_688 = -26119.0000 + 1.2667x; interpolation
20670 <= x < 20700; y_689 = -15095.0000 + 0.7333x; interpolation
20700 <= x < 20730; y_690 = 15265.0000 + -0.7333x; interpolation
20730 <= x < 20760; y_691 = -12375.0000 + 0.6000x; interpolation
20760 <= x < 20790; y_692 = 12537.0000 + -0.6000x; interpolation
20790 <= x < 20820; y_693 = -14490.0000 + 0.7000x; interpolation
20820 <= x < 20850; y_694 = 14658.0000 + -0.7000x; interpolation
20850 <= x < 20880; y_695 = -15227.0000 + 0.7333x; interpolation
20880 <= x < 20910; y_696 = 14701.0000 + -0.7000x; interpolation
20910 <= x < 20940; y_697 = -14573.0000 + 0.7000x; interpolation
20940 <= x < 20970; y_698 = 14045.0000 + -0.6667x; interpolation
20970 <= x < 21000; y_699 = -12517.0000 + 0.6000x; interpolation
21000 <= x < 21030; y_700 = 12683.0000 + -0.6000x; interpolation
21030 <= x < 21060; y_701 = -13254.0000 + 0.6333x; interpolation
21060 <= x < 21090; y_702 = 14124.0000 + -0.6667x; interpolation
21090 <= x < 21120; y_703 = -13293.0000 + 0.6333x; interpolation
21120 <= x < 21150; y_704 = 13459.0000 + -0.6333x; interpolation
21150 <= x < 21180; y_705 = -13331.0000 + 0.6333x; interpolation
21180 <= x < 21210; y_706 = 13497.0000 + -0.6333x; interpolation
21210 <= x < 21240; y_707 = -15490.0000 + 0.7333x; interpolation
21240 <= x < 21270; y_708 = 15662.0000 + -0.7333x; interpolation
21270 <= x < 21300; y_709 = -14116.0000 + 0.6667x; interpolation
21300 <= x < 21330; y_710 = 13574.0000 + -0.6333x; interpolation
21330 <= x < 21360; y_711 = -14155.0000 + 0.6667x; interpolation
21360 <= x < 21390; y_712 = 14325.0000 + -0.6667x; interpolation
21390 <= x < 21420; y_713 = 6482.0000 + -0.3000x; interpolation
21420 <= x < 21450; y_714 = -6370.0000 + 0.3000x; interpolation
21450 <= x < 21480; y_715 = -13520.0000 + 0.6333x; interpolation
21480 <= x < 21510; y_716 = 17268.0000 + -0.8000x; interpolation
21510 <= x < 21540; y_717 = -16431.0000 + 0.7667x; interpolation
21540 <= x < 21570; y_718 = 15879.0000 + -0.7333x; interpolation
21570 <= x < 21600; y_719 = -17914.0000 + 0.8333x; interpolation
21600 <= x < 21630; y_720 = 15206.0000 + -0.7000x; interpolation
21630 <= x < 21660; y_721 = -13634.0000 + 0.6333x; interpolation
21660 <= x < 21690; y_722 = 14524.0000 + -0.6667x; interpolation
21690 <= x < 21720; y_723 = -15119.0000 + 0.7000x; interpolation
21720 <= x < 21750; y_724 = 16013.0000 + -0.7333x; interpolation
21750 <= x < 21780; y_725 = -15162.0000 + 0.7000x; interpolation
21780 <= x < 21810; y_726 = 16782.0000 + -0.7667x; interpolation
21810 <= x < 21840; y_727 = -17387.0000 + 0.8000x; interpolation
21840 <= x < 21870; y_728 = 15373.0000 + -0.7000x; interpolation
21870 <= x < 21900; y_729 = -14516.0000 + 0.6667x; interpolation
21900 <= x < 21930; y_730 = 15414.0000 + -0.7000x; interpolation
21930 <= x < 21960; y_731 = -16019.0000 + 0.7333x; interpolation
21960 <= x < 21990; y_732 = 14725.0000 + -0.6667x; interpolation
21990 <= x < 22020; y_733 = -15328.0000 + 0.7000x; interpolation
22020 <= x < 22050; y_734 = 15500.0000 + -0.7000x; interpolation
22050 <= x < 22080; y_735 = -13900.0000 + 0.6333x; interpolation
22080 <= x < 22110; y_736 = 14804.0000 + -0.6667x; interpolation
22110 <= x < 22140; y_737 = -13939.0000 + 0.6333x; interpolation
22140 <= x < 22170; y_738 = 13367.0000 + -0.6000x; interpolation
22170 <= x < 22200; y_739 = -13237.0000 + 0.6000x; interpolation
22200 <= x < 22230; y_740 = 13403.0000 + -0.6000x; interpolation
22230 <= x < 22260; y_741 = -14755.0000 + 0.6667x; interpolation
22260 <= x < 22290; y_742 = 15667.0000 + -0.7000x; interpolation
22290 <= x < 22320; y_743 = -14796.0000 + 0.6667x; interpolation
22320 <= x < 22350; y_744 = 84.0000 + 0.0000x; interpolation
22350 <= x < 22380; y_745 = 14239.0000 + -0.6333x; interpolation
22380 <= x < 22410; y_746 = -3665.0000 + 0.1667x; interpolation
22410 <= x < 22440; y_747 = -4412.0000 + 0.2000x; interpolation
22440 <= x < 22470; y_748 = -5160.0000 + 0.2333x; interpolation
22470 <= x < 22500; y_749 = 12067.0000 + -0.5333x; interpolation
22500 <= x < 22530; y_750 = -11933.0000 + 0.5333x; interpolation
22530 <= x < 22560; y_751 = -2170.0000 + 0.1000x; interpolation
22560 <= x < 22590; y_752 = 2342.0000 + -0.1000x; interpolation
22590 <= x < 22620; y_753 = 14390.0000 + -0.6333x; interpolation
22620 <= x < 22650; y_754 = 5342.0000 + -0.2333x; interpolation
22650 <= x < 22680; y_755 = -19573.0000 + 0.8667x; interpolation
22680 <= x < 22710; y_756 = -3697.0000 + 0.1667x; interpolation
22710 <= x < 22740; y_757 = 6144.0000 + -0.2667x; interpolation
22740 <= x < 22770; y_758 = -3710.0000 + 0.1667x; interpolation
22770 <= x < 22800; y_759 = -1433.0000 + 0.0667x; interpolation
22800 <= x < 22830; y_760 = 11487.0000 + -0.5000x; interpolation
22830 <= x < 22860; y_761 = 2355.0000 + -0.1000x; interpolation
22860 <= x < 22890; y_762 = 3879.0000 + -0.1667x; interpolation
22890 <= x < 22920; y_763 = -17485.0000 + 0.7667x; interpolation
22920 <= x < 22950; y_764 = 1615.0000 + -0.0667x; interpolation
22950 <= x < 22980; y_765 = 13855.0000 + -0.6000x; interpolation
22980 <= x < 23010; y_766 = -13721.0000 + 0.6000x; interpolation
23010 <= x < 23040; y_767 = 4687.0000 + -0.2000x; interpolation
23040 <= x < 23070; y_768 = 35407.0000 + -1.5333x; interpolation
23070 <= x < 23100; y_769 = 4647.0000 + -0.2000x; interpolation
23100 <= x < 23130; y_770 = -43093.0000 + 1.8667x; interpolation
23130 <= x < 23160; y_771 = 3167.0000 + -0.1333x; interpolation
23160 <= x < 23190; y_772 = -4553.0000 + 0.2000x; interpolation
23190 <= x < 23220; y_773 = 3950.0000 + -0.1667x; interpolation
23220 <= x < 23250; y_774 = 10142.0000 + -0.4333x; interpolation
23250 <= x < 23280; y_775 = -14658.0000 + 0.6333x; interpolation
23280 <= x < 23310; y_776 = 19486.0000 + -0.8333x; interpolation
23310 <= x < 23340; y_777 = -9263.0000 + 0.4000x; interpolation
23340 <= x < 23370; y_778 = 4741.0000 + -0.2000x; interpolation
23370 <= x < 23400; y_779 = -7723.0000 + 0.3333x; interpolation
23400 <= x < 23430; y_780 = -6163.0000 + 0.2667x; interpolation
23430 <= x < 23460; y_781 = 3209.0000 + -0.1333x; interpolation
23460 <= x < 23490; y_782 = 10247.0000 + -0.4333x; interpolation
23490 <= x < 23520; y_783 = -6979.0000 + 0.3000x; interpolation
23520 <= x < 23550; y_784 = -6195.0000 + 0.2667x; interpolation
23550 <= x < 23580; y_785 = 85.0000 + 0.0000x; interpolation
23580 <= x < 23610; y_786 = -1487.0000 + 0.0667x; interpolation
23610 <= x < 23640; y_787 = 8744.0000 + -0.3667x; interpolation
23640 <= x < 23670; y_788 = -7016.0000 + 0.3000x; interpolation
23670 <= x < 23700; y_789 = 12709.0000 + -0.5333x; interpolation
23700 <= x < 23730; y_790 = -10201.0000 + 0.4333x; interpolation
23730 <= x < 23760; y_791 = -3873.0000 + 0.1667x; interpolation
23760 <= x < 23790; y_792 = 17511.0000 + -0.7333x; interpolation
23790 <= x < 23820; y_793 = -1521.0000 + 0.0667x; interpolation
23820 <= x < 23850; y_794 = -17401.0000 + 0.7333x; interpolation
23850 <= x < 23880; y_795 = 19169.0000 + -0.8000x; interpolation
23880 <= x < 23910; y_796 = -16651.0000 + 0.7000x; interpolation
23910 <= x < 23940; y_797 = 14432.0000 + -0.6000x; interpolation
23940 <= x < 23970; y_798 = 68.0000 + 0.0000x; interpolation
23970 <= x < 24000; y_799 = -13515.0000 + 0.5667x; interpolation
24000 <= x < 24030; y_800 = 15285.0000 + -0.6333x; interpolation
24030 <= x < 24060; y_801 = -15954.0000 + 0.6667x; interpolation
24060 <= x < 24090; y_802 = -716.0000 + 0.0333x; interpolation
24090 <= x < 24120; y_803 = 4102.0000 + -0.1667x; interpolation
24120 <= x < 24150; y_804 = -3134.0000 + 0.1333x; interpolation
24150 <= x < 24180; y_805 = 14576.0000 + -0.6000x; interpolation
24180 <= x < 24210; y_806 = 1680.0000 + -0.0667x; interpolation
24210 <= x < 24240; y_807 = -741.0000 + 0.0333x; interpolation
24240 <= x < 24270; y_808 = -17709.0000 + 0.7333x; interpolation
24270 <= x < 24300; y_809 = 7370.0000 + -0.3000x; interpolation
24300 <= x < 24330; y_810 = -3970.0000 + 0.1667x; interpolation
24330 <= x < 24360; y_811 = -726.0000 + 0.0333x; interpolation
24360 <= x < 24390; y_812 = -726.0000 + 0.0333x; interpolation
24390 <= x < 24420; y_813 = 2526.0000 + -0.1000x; interpolation
24420 <= x < 24450; y_814 = -730.0000 + 0.0333x; interpolation
24450 <= x < 24480; y_815 = -730.0000 + 0.0333x; interpolation
24480 <= x < 24510; y_816 = 15590.0000 + -0.6333x; interpolation
24510 <= x < 24540; y_817 = -14639.0000 + 0.6000x; interpolation
24540 <= x < 24570; y_818 = 14809.0000 + -0.6000x; interpolation
24570 <= x < 24600; y_819 = -752.0000 + 0.0333x; interpolation
24600 <= x < 24630; y_820 = -16332.0000 + 0.6667x; interpolation
24630 <= x < 24660; y_821 = 909.0000 + -0.0333x; interpolation
24660 <= x < 24690; y_822 = -735.0000 + 0.0333x; interpolation
24690 <= x < 24720; y_823 = 2557.0000 + -0.1000x; interpolation
24720 <= x < 24750; y_824 = -2387.0000 + 0.1000x; interpolation
24750 <= x < 24780; y_825 = 1738.0000 + -0.0667x; interpolation
24780 <= x < 24810; y_826 = -740.0000 + 0.0333x; interpolation
24810 <= x < 24840; y_827 = 914.0000 + -0.0333x; interpolation
24840 <= x < 24870; y_828 = -1570.0000 + 0.0667x; interpolation
24870 <= x < 24900; y_829 = 15010.0000 + -0.6000x; interpolation
24900 <= x < 24930; y_830 = -14870.0000 + 0.6000x; interpolation
24930 <= x < 24960; y_831 = 15877.0000 + -0.6333x; interpolation
24960 <= x < 24990; y_832 = -14075.0000 + 0.5667x; interpolation
24990 <= x < 25020; y_833 = 2585.0000 + -0.1000x; interpolation
25020 <= x < 25050; y_834 = 15095.0000 + -0.6000x; interpolation
25050 <= x < 25080; y_835 = -16635.0000 + 0.6667x; interpolation
25080 <= x < 25110; y_836 = -1587.0000 + 0.0667x; interpolation
25110 <= x < 25140; y_837 = 1761.0000 + -0.0667x; interpolation
25140 <= x < 25170; y_838 = 923.0000 + -0.0333x; interpolation
25170 <= x < 25200; y_839 = -2433.0000 + 0.1000x; interpolation
25200 <= x < 25230; y_840 = 16887.0000 + -0.6667x; interpolation
25230 <= x < 25260; y_841 = -15912.0000 + 0.6333x; interpolation
25260 <= x < 25290; y_842 = 15242.0000 + -0.6000x; interpolation
25290 <= x < 25320; y_843 = 5126.0000 + -0.2000x; interpolation
25320 <= x < 25350; y_844 = -23570.0000 + 0.9333x; interpolation
25350 <= x < 25380; y_845 = 4315.0000 + -0.1667x; interpolation
25380 <= x < 25410; y_846 = -2453.0000 + 0.1000x; interpolation
25410 <= x < 25440; y_847 = 45826.0000 + -1.8000x; interpolation
25440 <= x < 25470; y_848 = 5122.0000 + -0.2000x; interpolation
25470 <= x < 25500; y_849 = -46667.0000 + 1.8333x; interpolation
25500 <= x < 25530; y_850 = -2467.0000 + 0.1000x; interpolation
25530 <= x < 25560; y_851 = 3490.0000 + -0.1333x; interpolation
25560 <= x < 25590; y_852 = -4178.0000 + 0.1667x; interpolation
25590 <= x < 25620; y_853 = 16294.0000 + -0.6333x; interpolation
25620 <= x < 25650; y_854 = 1776.0000 + -0.0667x; interpolation
25650 <= x < 25680; y_855 = -14469.0000 + 0.5667x; interpolation
25680 <= x < 25710; y_856 = -3341.0000 + 0.1333x; interpolation
25710 <= x < 25740; y_857 = 14656.0000 + -0.5667x; interpolation
25740 <= x < 25770; y_858 = -15374.0000 + 0.6000x; interpolation
25770 <= x < 25800; y_859 = 3524.0000 + -0.1333x; interpolation
25800 <= x < 25830; y_860 = 14704.0000 + -0.5667x; interpolation
25830 <= x < 25860; y_861 = -794.0000 + 0.0333x; interpolation
25860 <= x < 25890; y_862 = -17172.0000 + 0.6667x; interpolation
25890 <= x < 25920; y_863 = 15622.0000 + -0.6000x; interpolation
25920 <= x < 25950; y_864 = 934.0000 + -0.0333x; interpolation
25950 <= x < 25980; y_865 = -796.0000 + 0.0333x; interpolation
25980 <= x < 26010; y_866 = 1802.0000 + -0.0667x; interpolation
26010 <= x < 26040; y_867 = -799.0000 + 0.0333x; interpolation
26040 <= x < 26070; y_868 = 1805.0000 + -0.0667x; interpolation
26070 <= x < 26100; y_869 = -1671.0000 + 0.0667x; interpolation
26100 <= x < 26130; y_870 = -15591.0000 + 0.6000x; interpolation
26130 <= x < 26160; y_871 = 87.0000 + 0.0000x; interpolation
26160 <= x < 26190; y_872 = 87.0000 + 0.0000x; interpolation
26190 <= x < 26220; y_873 = 2706.0000 + -0.1000x; interpolation
26220 <= x < 26250; y_874 = 14942.0000 + -0.5667x; interpolation
26250 <= x < 26280; y_875 = -1683.0000 + 0.0667x; interpolation
26280 <= x < 26310; y_876 = -16575.0000 + 0.6333x; interpolation
26310 <= x < 26340; y_877 = 15874.0000 + -0.6000x; interpolation
26340 <= x < 26370; y_878 = 4460.0000 + -0.1667x; interpolation
26370 <= x < 26400; y_879 = -15757.0000 + 0.6000x; interpolation
26400 <= x < 26430; y_880 = -4317.0000 + 0.1667x; interpolation
26430 <= x < 26460; y_881 = 15946.0000 + -0.6000x; interpolation
26460 <= x < 26490; y_882 = -14042.0000 + 0.5333x; interpolation
26490 <= x < 26520; y_883 = 1852.0000 + -0.0667x; interpolation
26520 <= x < 26550; y_884 = -1684.0000 + 0.0667x; interpolation
26550 <= x < 26580; y_885 = 971.0000 + -0.0333x; interpolation
26580 <= x < 26610; y_886 = 16033.0000 + -0.6000x; interpolation
26610 <= x < 26640; y_887 = -12351.0000 + 0.4667x; interpolation
26640 <= x < 26670; y_888 = 12513.0000 + -0.4667x; interpolation
26670 <= x < 26700; y_889 = -19491.0000 + 0.7333x; interpolation
26700 <= x < 26730; y_890 = 19669.0000 + -0.7333x; interpolation
26730 <= x < 26760; y_891 = -1715.0000 + 0.0667x; interpolation
26760 <= x < 26790; y_892 = 3637.0000 + -0.1333x; interpolation
26790 <= x < 26820; y_893 = -20474.0000 + 0.7667x; interpolation
26820 <= x < 26850; y_894 = 18862.0000 + -0.7000x; interpolation
26850 <= x < 26880; y_895 = -2618.0000 + 0.1000x; interpolation
26880 <= x < 26910; y_896 = -15162.0000 + 0.5667x; interpolation
26910 <= x < 26940; y_897 = 16233.0000 + -0.6000x; interpolation
26940 <= x < 26970; y_898 = -14299.0000 + 0.5333x; interpolation
26970 <= x < 27000; y_899 = 13570.0000 + -0.5000x; interpolation
27000 <= x < 27030; y_900 = -14330.0000 + 0.5333x; interpolation
27030 <= x < 27060; y_901 = 13601.0000 + -0.5000x; interpolation
27060 <= x < 27090; y_902 = -12557.0000 + 0.4667x; interpolation
27090 <= x < 27120; y_903 = 13630.0000 + -0.5000x; interpolation
27120 <= x < 27150; y_904 = 3686.0000 + -0.1333x; interpolation
27150 <= x < 27180; y_905 = -4459.0000 + 0.1667x; interpolation
27180 <= x < 27210; y_906 = -13519.0000 + 0.5000x; interpolation
27210 <= x < 27240; y_907 = 13691.0000 + -0.5000x; interpolation
27240 <= x < 27270; y_908 = 2795.0000 + -0.1000x; interpolation
27270 <= x < 27300; y_909 = -15385.0000 + 0.5667x; interpolation
27300 <= x < 27330; y_910 = 16465.0000 + -0.6000x; interpolation
27330 <= x < 27360; y_911 = -844.0000 + 0.0333x; interpolation
27360 <= x < 27390; y_912 = -844.0000 + 0.0333x; interpolation
27390 <= x < 27420; y_913 = -9974.0000 + 0.3667x; interpolation
27420 <= x < 27450; y_914 = -9060.0000 + 0.3333x; interpolation
27450 <= x < 27480; y_915 = 7410.0000 + -0.2667x; interpolation
27480 <= x < 27510; y_916 = 13822.0000 + -0.5000x; interpolation
27510 <= x < 27540; y_917 = -14605.0000 + 0.5333x; interpolation
27540 <= x < 27570; y_918 = 13853.0000 + -0.5000x; interpolation
27570 <= x < 27600; y_919 = -1770.0000 + 0.0667x; interpolation
27600 <= x < 27630; y_920 = -12810.0000 + 0.4667x; interpolation
27630 <= x < 27660; y_921 = 12057.0000 + -0.4333x; interpolation
27660 <= x < 27690; y_922 = 7447.0000 + -0.2667x; interpolation
27690 <= x < 27720; y_923 = 19446.0000 + -0.7000x; interpolation
27720 <= x < 27750; y_924 = 12054.0000 + -0.4333x; interpolation
27750 <= x < 27780; y_925 = -45296.0000 + 1.6333x; interpolation
27780 <= x < 27810; y_926 = 11190.0000 + -0.4000x; interpolation
27810 <= x < 27840; y_927 = -9204.0000 + 0.3333x; interpolation
27840 <= x < 27870; y_928 = -7348.0000 + 0.2667x; interpolation
27870 <= x < 27900; y_929 = 12161.0000 + -0.4333x; interpolation
27900 <= x < 27930; y_930 = 3791.0000 + -0.1333x; interpolation
27930 <= x < 27960; y_931 = -12036.0000 + 0.4333x; interpolation
27960 <= x < 27990; y_932 = -7376.0000 + 0.2667x; interpolation
27990 <= x < 28020; y_933 = 7552.0000 + -0.2667x; interpolation
28020 <= x < 28050; y_934 = 12222.0000 + -0.4333x; interpolation
28050 <= x < 28080; y_935 = -5543.0000 + 0.2000x; interpolation
28080 <= x < 28110; y_936 = -13031.0000 + 0.4667x; interpolation
28110 <= x < 28140; y_937 = 13205.0000 + -0.4667x; interpolation
28140 <= x < 28170; y_938 = -12121.0000 + 0.4333x; interpolation
28170 <= x < 28200; y_939 = 5720.0000 + -0.2000x; interpolation
28200 <= x < 28230; y_940 = 11360.0000 + -0.4000x; interpolation
28230 <= x < 28260; y_941 = -9342.0000 + 0.3333x; interpolation
28260 <= x < 28290; y_942 = -7458.0000 + 0.2667x; interpolation
28290 <= x < 28320; y_943 = 8573.0000 + -0.3000x; interpolation
28320 <= x < 28350; y_944 = -8419.0000 + 0.3000x; interpolation
28350 <= x < 28380; y_945 = 10481.0000 + -0.3667x; interpolation
28380 <= x < 28410; y_946 = 9535.0000 + -0.3333x; interpolation
28410 <= x < 28440; y_947 = -11299.0000 + 0.4000x; interpolation
28440 <= x < 28470; y_948 = -10351.0000 + 0.3667x; interpolation
28470 <= x < 28500; y_949 = 17170.0000 + -0.6000x; interpolation
28500 <= x < 28530; y_950 = 1970.0000 + -0.0667x; interpolation
28530 <= x < 28560; y_951 = -17050.0000 + 0.6000x; interpolation
28560 <= x < 28590; y_952 = 1038.0000 + -0.0333x; interpolation
28590 <= x < 28620; y_953 = -2774.0000 + 0.1000x; interpolation
28620 <= x < 28650; y_954 = 19168.0000 + -0.6667x; interpolation
28650 <= x < 28680; y_955 = -18077.0000 + 0.6333x; interpolation
28680 <= x < 28710; y_956 = 18251.0000 + -0.6333x; interpolation
28710 <= x < 28740; y_957 = 1025.0000 + -0.0333x; interpolation
28740 <= x < 28770; y_958 = 67.0000 + 0.0000x; interpolation
28770 <= x < 28800; y_959 = -18154.0000 + 0.6333x; interpolation
28800 <= x < 28830; y_960 = -874.0000 + 0.0333x; interpolation
28830 <= x < 28860; y_961 = 19307.0000 + -0.6667x; interpolation
28860 <= x < 28890; y_962 = 67.0000 + 0.0000x; interpolation
28890 <= x < 28920; y_963 = -16304.0000 + 0.5667x; interpolation
28920 <= x < 28950; y_964 = 15508.0000 + -0.5333x; interpolation
28950 <= x < 28980; y_965 = 1998.0000 + -0.0667x; interpolation
28980 <= x < 29010; y_966 = -17322.0000 + 0.6000x; interpolation
29010 <= x < 29040; y_967 = -3784.0000 + 0.1333x; interpolation
29040 <= x < 29070; y_968 = 19448.0000 + -0.6667x; interpolation
29070 <= x < 29100; y_969 = 1037.0000 + -0.0333x; interpolation
29100 <= x < 29130; y_970 = -17393.0000 + 0.6000x; interpolation
29130 <= x < 29160; y_971 = 17563.0000 + -0.6000x; interpolation
29160 <= x < 29190; y_972 = 67.0000 + 0.0000x; interpolation
29190 <= x < 29220; y_973 = -21339.0000 + 0.7333x; interpolation
29220 <= x < 29250; y_974 = 4959.0000 + -0.1667x; interpolation
29250 <= x < 29280; y_975 = -2841.0000 + 0.1000x; interpolation
29280 <= x < 29310; y_976 = 18631.0000 + -0.6333x; interpolation
29310 <= x < 29340; y_977 = 2022.0000 + -0.0667x; interpolation
29340 <= x < 29370; y_978 = -1890.0000 + 0.0667x; interpolation
29370 <= x < 29400; y_979 = 68.0000 + 0.0000x; interpolation
29400 <= x < 29430; y_980 = -18552.0000 + 0.6333x; interpolation
29430 <= x < 29460; y_981 = 19707.0000 + -0.6667x; interpolation
29460 <= x < 29490; y_982 = 67.0000 + 0.0000x; interpolation
29490 <= x < 29520; y_983 = -19593.0000 + 0.6667x; interpolation
29520 <= x < 29550; y_984 = 18783.0000 + -0.6333x; interpolation
29550 <= x < 29580; y_985 = 3023.0000 + -0.1000x; interpolation
29580 <= x < 29610; y_986 = -2893.0000 + 0.1000x; interpolation
29610 <= x < 29640; y_987 = 4016.0000 + -0.1333x; interpolation
29640 <= x < 29670; y_988 = -19696.0000 + 0.6667x; interpolation
29670 <= x < 29700; y_989 = 1073.0000 + -0.0333x; interpolation
29700 <= x < 29730; y_990 = -2887.0000 + 0.1000x; interpolation
29730 <= x < 29760; y_991 = 5041.0000 + -0.1667x; interpolation
29760 <= x < 29790; y_992 = -5871.0000 + 0.2000x; interpolation
29790 <= x < 29820; y_993 = 2073.0000 + -0.0667x; interpolation
29820 <= x < 29850; y_994 = 2073.0000 + -0.0667x; interpolation
29850 <= x < 29880; y_995 = 16003.0000 + -0.5333x; interpolation
29880 <= x < 29910; y_996 = -2921.0000 + 0.1000x; interpolation
29910 <= x < 29940; y_997 = -9900.0000 + 0.3333x; interpolation
29940 <= x < 29970; y_998 = 47984.0000 + -1.6000x; interpolation
29970 <= x < 30000; y_999 = 2030.0000 + -0.0667x; interpolation
30000 <= x < 30030; y_1000 = -50970.0000 + 1.7000x; interpolation
30030 <= x < 30060; y_1001 = 23104.0000 + -0.7667x; interpolation
30060 <= x < 30090; y_1002 = -11966.0000 + 0.4000x; interpolation
30090 <= x < 30120; y_1003 = 3079.0000 + -0.1000x; interpolation
30120 <= x < 30150; y_1004 = -2945.0000 + 0.1000x; interpolation
30150 <= x < 30180; y_1005 = 2080.0000 + -0.0667x; interpolation
30180 <= x < 30210; y_1006 = -16028.0000 + 0.5333x; interpolation
30210 <= x < 30240; y_1007 = 1091.0000 + -0.0333x; interpolation
30240 <= x < 30270; y_1008 = 2099.0000 + -0.0667x; interpolation
30270 <= x < 30300; y_1009 = -3955.0000 + 0.1333x; interpolation
30300 <= x < 30330; y_1010 = 18265.0000 + -0.6000x; interpolation
30330 <= x < 30360; y_1011 = -21164.0000 + 0.7000x; interpolation
30360 <= x < 30390; y_1012 = 5148.0000 + -0.1667x; interpolation
30390 <= x < 30420; y_1013 = 16291.0000 + -0.5333x; interpolation
30420 <= x < 30450; y_1014 = -2975.0000 + 0.1000x; interpolation
30450 <= x < 30480; y_1015 = -17185.0000 + 0.5667x; interpolation
30480 <= x < 30510; y_1016 = 4151.0000 + -0.1333x; interpolation
30510 <= x < 30540; y_1017 = -3985.0000 + 0.1333x; interpolation
30540 <= x < 30570; y_1018 = 1105.0000 + -0.0333x; interpolation
30570 <= x < 30600; y_1019 = 19447.0000 + -0.6333x; interpolation
30600 <= x < 30630; y_1020 = -19313.0000 + 0.6333x; interpolation
30630 <= x < 30660; y_1021 = 17443.0000 + -0.5667x; interpolation
30660 <= x < 30690; y_1022 = 2113.0000 + -0.0667x; interpolation
30690 <= x < 30720; y_1023 = -3002.0000 + 0.1000x; interpolation
30720 <= x < 30750; y_1024 = -18362.0000 + 0.6000x; interpolation
30750 <= x < 30780; y_1025 = 17513.0000 + -0.5667x; interpolation
30780 <= x < 30810; y_1026 = -16345.0000 + 0.5333x; interpolation
30810 <= x < 30840; y_1027 = 17546.0000 + -0.5667x; interpolation
30840 <= x < 30870; y_1028 = 6238.0000 + -0.2000x; interpolation
30870 <= x < 30900; y_1029 = -7139.0000 + 0.2333x; interpolation
30900 <= x < 30930; y_1030 = -17439.0000 + 0.5667x; interpolation
30930 <= x < 30960; y_1031 = 4212.0000 + -0.1333x; interpolation
30960 <= x < 30990; y_1032 = 22788.0000 + -0.7333x; interpolation
30990 <= x < 31020; y_1033 = -8202.0000 + 0.2667x; interpolation
31020 <= x < 31050; y_1034 = 3172.0000 + -0.1000x; interpolation
31050 <= x < 31080; y_1035 = -20633.0000 + 0.6667x; interpolation
31080 <= x < 31110; y_1036 = 18735.0000 + -0.6000x; interpolation
31110 <= x < 31140; y_1037 = -20671.0000 + 0.6667x; interpolation
31140 <= x < 31170; y_1038 = 1127.0000 + -0.0333x; interpolation
31170 <= x < 31200; y_1039 = 18790.0000 + -0.6000x; interpolation
31200 <= x < 31230; y_1040 = 4230.0000 + -0.1333x; interpolation
31230 <= x < 31260; y_1041 = -21795.0000 + 0.7000x; interpolation
31260 <= x < 31290; y_1042 = 23011.0000 + -0.7333x; interpolation
31290 <= x < 31320; y_1043 = -23924.0000 + 0.7667x; interpolation
31320 <= x < 31350; y_1044 = 2176.0000 + -0.0667x; interpolation
31350 <= x < 31380; y_1045 = 8446.0000 + -0.2667x; interpolation
31380 <= x < 31410; y_1046 = -7244.0000 + 0.2333x; interpolation
31410 <= x < 31440; y_1047 = -4103.0000 + 0.1333x; interpolation
31440 <= x < 31470; y_1048 = 20001.0000 + -0.6333x; interpolation
31470 <= x < 31500; y_1049 = -17763.0000 + 0.5667x; interpolation
31500 <= x < 31530; y_1050 = 1137.0000 + -0.0333x; interpolation
31530 <= x < 31560; y_1051 = -965.0000 + 0.0333x; interpolation
31560 <= x < 31590; y_1052 = 2191.0000 + -0.0667x; interpolation
31590 <= x < 31620; y_1053 = 16933.0000 + -0.5333x; interpolation
31620 <= x < 31650; y_1054 = 69.0000 + 0.0000x; interpolation
31650 <= x < 31680; y_1055 = -19976.0000 + 0.6333x; interpolation
31680 <= x < 31710; y_1056 = 23320.0000 + -0.7333x; interpolation
31710 <= x < 31740; y_1057 = -20017.0000 + 0.6333x; interpolation
31740 <= x < 31770; y_1058 = -973.0000 + 0.0333x; interpolation
31770 <= x < 31800; y_1059 = 20207.0000 + -0.6333x; interpolation
31800 <= x < 31830; y_1060 = 67.0000 + 0.0000x; interpolation
31830 <= x < 31860; y_1061 = -20092.0000 + 0.6333x; interpolation
31860 <= x < 31890; y_1062 = 17078.0000 + -0.5333x; interpolation
31890 <= x < 31920; y_1063 = -16938.0000 + 0.5333x; interpolation
31920 <= x < 31950; y_1064 = 1150.0000 + -0.0333x; interpolation
31950 <= x < 31980; y_1065 = -980.0000 + 0.0333x; interpolation
31980 <= x < 32010; y_1066 = 86.0000 + 0.0000x; interpolation
32010 <= x < 32040; y_1067 = 18225.0000 + -0.5667x; interpolation
32040 <= x < 32070; y_1068 = -999.0000 + 0.0333x; interpolation
32070 <= x < 32100; y_1069 = 1139.0000 + -0.0333x; interpolation
32100 <= x < 32130; y_1070 = 2209.0000 + -0.0667x; interpolation
32130 <= x < 32160; y_1071 = -6359.0000 + 0.2000x; interpolation
32160 <= x < 32190; y_1072 = -14935.0000 + 0.4667x; interpolation
32190 <= x < 32220; y_1073 = 6525.0000 + -0.2000x; interpolation
32220 <= x < 32250; y_1074 = 14043.0000 + -0.4333x; interpolation
32250 <= x < 32280; y_1075 = -3157.0000 + 0.1000x; interpolation
32280 <= x < 32310; y_1076 = 5451.0000 + -0.1667x; interpolation
32310 <= x < 32340; y_1077 = 32376.0000 + -1.0000x; interpolation
32340 <= x < 32370; y_1078 = 4348.0000 + -0.1333x; interpolation
32370 <= x < 32400; y_1079 = -49602.0000 + 1.5333x; interpolation
32400 <= x < 32430; y_1080 = -5322.0000 + 0.1667x; interpolation
32430 <= x < 32460; y_1081 = 7650.0000 + -0.2333x; interpolation
32460 <= x < 32490; y_1082 = -10744.0000 + 0.3333x; interpolation
32490 <= x < 32520; y_1083 = 16331.0000 + -0.5000x; interpolation
32520 <= x < 32550; y_1084 = -11853.0000 + 0.3667x; interpolation
32550 <= x < 32580; y_1085 = 18527.0000 + -0.5667x; interpolation
32580 <= x < 32610; y_1086 = -20569.0000 + 0.6333x; interpolation
32610 <= x < 32640; y_1087 = 20737.0000 + -0.6333x; interpolation
32640 <= x < 32670; y_1088 = -2111.0000 + 0.0667x; interpolation
32670 <= x < 32700; y_1089 = -8645.0000 + 0.2667x; interpolation
32700 <= x < 32730; y_1090 = -14095.0000 + 0.4333x; interpolation
32730 <= x < 32760; y_1091 = 3361.0000 + -0.1000x; interpolation
32760 <= x < 32790; y_1092 = 1177.0000 + -0.0333x; interpolation
32790 <= x < 32820; y_1093 = 20851.0000 + -0.6333x; interpolation
32820 <= x < 32850; y_1094 = 65.0000 + 0.0000x; interpolation
32850 <= x < 32880; y_1095 = -21835.0000 + 0.6667x; interpolation
32880 <= x < 32910; y_1096 = 85.0000 + 0.0000x; interpolation
32910 <= x < 32940; y_1097 = 85.0000 + 0.0000x; interpolation
32940 <= x < 32970; y_1098 = -2111.0000 + 0.0667x; interpolation
32970 <= x < 33000; y_1099 = 24265.0000 + -0.7333x; interpolation
33000 <= x < 33030; y_1100 = -2135.0000 + 0.0667x; interpolation
33030 <= x < 33060; y_1101 = -18650.0000 + 0.5667x; interpolation
33060 <= x < 33090; y_1102 = 3390.0000 + -0.1000x; interpolation
33090 <= x < 33120; y_1103 = 17729.0000 + -0.5333x; interpolation
33120 <= x < 33150; y_1104 = -2143.0000 + 0.0667x; interpolation
33150 <= x < 33180; y_1105 = -19823.0000 + 0.6000x; interpolation
33180 <= x < 33210; y_1106 = 85.0000 + 0.0000x; interpolation
33210 <= x < 33240; y_1107 = -3236.0000 + 0.1000x; interpolation
33240 <= x < 33270; y_1108 = 7844.0000 + -0.2333x; interpolation
33270 <= x < 33300; y_1109 = -7682.0000 + 0.2333x; interpolation
33300 <= x < 33330; y_1110 = 23398.0000 + -0.7000x; interpolation
33330 <= x < 33360; y_1111 = -19931.0000 + 0.6000x; interpolation
33360 <= x < 33390; y_1112 = 18989.0000 + -0.5667x; interpolation
33390 <= x < 33420; y_1113 = -18853.0000 + 0.5667x; interpolation
33420 <= x < 33450; y_1114 = 21251.0000 + -0.6333x; interpolation
33450 <= x < 33480; y_1115 = -23349.0000 + 0.7000x; interpolation
33480 <= x < 33510; y_1116 = 87.0000 + 0.0000x; interpolation
33510 <= x < 33540; y_1117 = 23544.0000 + -0.7000x; interpolation
33540 <= x < 33570; y_1118 = -15586.0000 + 0.4667x; interpolation
33570 <= x < 33600; y_1119 = 16865.0000 + -0.5000x; interpolation
33600 <= x < 33630; y_1120 = -23455.0000 + 0.7000x; interpolation
33630 <= x < 33660; y_1121 = 3449.0000 + -0.1000x; interpolation
33660 <= x < 33690; y_1122 = 15791.0000 + -0.4667x; interpolation
33690 <= x < 33720; y_1123 = -17899.0000 + 0.5333x; interpolation
33720 <= x < 33750; y_1124 = 5705.0000 + -0.1667x; interpolation
33750 <= x < 33780; y_1125 = -5545.0000 + 0.1667x; interpolation
33780 <= x < 33810; y_1126 = 5715.0000 + -0.1667x; interpolation
33810 <= x < 33840; y_1127 = 16985.0000 + -0.5000x; interpolation
33840 <= x < 33870; y_1128 = -4447.0000 + 0.1333x; interpolation
33870 <= x < 33900; y_1129 = -17995.0000 + 0.5333x; interpolation
33900 <= x < 33930; y_1130 = 5735.0000 + -0.1667x; interpolation
33930 <= x < 33960; y_1131 = 17045.0000 + -0.5000x; interpolation
33960 <= x < 33990; y_1132 = -5595.0000 + 0.1667x; interpolation
33990 <= x < 34020; y_1133 = -16925.0000 + 0.5000x; interpolation
34020 <= x < 34050; y_1134 = 15961.0000 + -0.4667x; interpolation
34050 <= x < 34080; y_1135 = -16954.0000 + 0.5000x; interpolation
34080 <= x < 34110; y_1136 = 5766.0000 + -0.1667x; interpolation
34110 <= x < 34140; y_1137 = -1056.0000 + 0.0333x; interpolation
34140 <= x < 34170; y_1138 = 4634.0000 + -0.1333x; interpolation
34170 <= x < 34200; y_1139 = -9034.0000 + 0.2667x; interpolation
34200 <= x < 34230; y_1140 = 5786.0000 + -0.1667x; interpolation
34230 <= x < 34260; y_1141 = -2201.0000 + 0.0667x; interpolation
34260 <= x < 34290; y_1142 = 22923.0000 + -0.6667x; interpolation
34290 <= x < 34320; y_1143 = -25083.0000 + 0.7333x; interpolation
34320 <= x < 34350; y_1144 = 24109.0000 + -0.7000x; interpolation
34350 <= x < 34380; y_1145 = -19401.0000 + 0.5667x; interpolation
34380 <= x < 34410; y_1146 = 18417.0000 + -0.5333x; interpolation
34410 <= x < 34440; y_1147 = -25169.0000 + 0.7333x; interpolation
34440 <= x < 34470; y_1148 = 25343.0000 + -0.7333x; interpolation
34470 <= x < 34500; y_1149 = -22915.0000 + 0.6667x; interpolation
34500 <= x < 34530; y_1150 = 21935.0000 + -0.6333x; interpolation
34530 <= x < 34560; y_1151 = -19501.0000 + 0.5667x; interpolation
34560 <= x < 34590; y_1152 = 5843.0000 + -0.1667x; interpolation
34590 <= x < 34620; y_1153 = -6840.0000 + 0.2000x; interpolation
34620 <= x < 34650; y_1154 = -2224.0000 + 0.0667x; interpolation
34650 <= x < 34680; y_1155 = 24341.0000 + -0.7000x; interpolation
34680 <= x < 34710; y_1156 = -25367.0000 + 0.7333x; interpolation
34710 <= x < 34740; y_1157 = 24384.0000 + -0.7000x; interpolation
34740 <= x < 34770; y_1158 = -19620.0000 + 0.5667x; interpolation
34770 <= x < 34800; y_1159 = -3394.0000 + 0.1000x; interpolation
34800 <= x < 34830; y_1160 = 24446.0000 + -0.7000x; interpolation
34830 <= x < 34860; y_1161 = -23155.0000 + 0.6667x; interpolation
34860 <= x < 34890; y_1162 = 16353.0000 + -0.4667x; interpolation
34890 <= x < 34920; y_1163 = 7049.0000 + -0.2000x; interpolation
34920 <= x < 34950; y_1164 = -13903.0000 + 0.4000x; interpolation
34950 <= x < 34980; y_1165 = 49007.0000 + -1.4000x; interpolation
34980 <= x < 35010; y_1166 = 10529.0000 + -0.3000x; interpolation
35010 <= x < 35040; y_1167 = 1193.0000 + -0.0333x; interpolation
35040 <= x < 35070; y_1168 = -1143.0000 + 0.0333x; interpolation
35070 <= x < 35100; y_1169 = 2364.0000 + -0.0667x; interpolation
35100 <= x < 35130; y_1170 = -12846.0000 + 0.3667x; interpolation
35130 <= x < 35160; y_1171 = -18701.0000 + 0.5333x; interpolation
35160 <= x < 35190; y_1172 = 10599.0000 + -0.3000x; interpolation
35190 <= x < 35220; y_1173 = 8253.0000 + -0.2333x; interpolation
35220 <= x < 35250; y_1174 = 14123.0000 + -0.4000x; interpolation
35250 <= x < 35280; y_1175 = 1198.0000 + -0.0333x; interpolation
35280 <= x < 35310; y_1176 = 22.0000 + 0.0000x; interpolation
35310 <= x < 35340; y_1177 = 22.0000 + 0.0000x; interpolation
35340 <= x < 35370; y_1178 = 22.0000 + 0.0000x; interpolation
35370 <= x < 35400; y_1179 = 22.0000 + 0.0000x; interpolation
35400 <= x < 35430; y_1180 = -3518.0000 + 0.1000x; interpolation
35430 <= x < 35460; y_1181 = 4749.0000 + -0.1333x; interpolation
35460 <= x < 35490; y_1182 = -61443.0000 + 1.7333x; interpolation
35490 <= x < 35520; y_1183 = -8208.0000 + 0.2333x; interpolation
35520 <= x < 35550; y_1184 = 22576.0000 + -0.6333x; interpolation
35550 <= x < 35580; y_1185 = -20084.0000 + 0.5667x; interpolation
35580 <= x < 35610; y_1186 = -3480.0000 + 0.1000x; interpolation
3 Programming Requirements & Constraints
All code must follow the requirements outlined in the Submission (Programming Exercises) section of the syllabus.
Your task is to take the temperature readings and generate for each core:
- A piecewise linear interpolation.
- A global linear least squares approximation.
- (Optional) A cubic spline (or other non-linear) interpolation.
3.1 Arguments & Execution
Your program must accept an input filename as the first command line argument. Your program must NOT prompt the user for a filename.
3.2 Architecture
Your solution must be organized into appropriate “modules” (using each language’s best practices). Start with four modules:
- Input (e.g., using the supplied input libraries)
- Data pre-processing (i.e., structuring the data for analysis)
- Piecewise Linear Interpolation
- Least Squares Approximation
3.3 Documentation Requirements
All code must be properly and fully documented using a language appropriate comment style. All functions (including parameters and return types) must be documented.
-
Doxygen can be used for C++, Java, or JavaScript. Consider the following Doxygen Example:
Example 6: C++ Doxygen Documentation/** * Retrieve the value stored in three selected Cells * * @param cell1Id numeric id representing the 1st desired cell * @param cell2Id numeric id representing the 2nd desired cell * @param cell3Id numeric id representing the 3rd desired cell * * @return value stored in the Cell * * @pre (cell1Id > 0 && cell1Id < 10) && * (cell2Id > 0 && cell2Id < 10) && * (cell3Id > 0 && cell3Id < 10) */ CellTriple get3Cells(int cell1Id, int cell2Id, int cell3Id) const;
-
Javadoc can be used for Java. Consider the following Javadoc Example:
Example 7: Javadoc Documentation/** * Multi-thread Coin Flip. * * @param numTrials # flips to simulate * @param numThreads number of threads to use * * @return Completed FlipTasks * * @throws InterruptedException if a thread is stopped prematurely */ public static FlipTask[] multiThread(long numTrials, int numThreads) throws InterruptedException
-
Pydoc or Sphinx can be used for Python. Consider the following Pydoc Example:
Example 8: Python 3 Pydoc Documentationdef parse_raw_temps(original_temps: TextIO, step_size: int=30, units: bool=True) -> Iterator[Tuple[float, List[float]] ]: """ Take an input file and time-step size and parse all core temps. :param original_temps: an input file :param step_size: time-step in seconds :param units: True if the input file includes units and False if the file includes only raw readings (no units) :yields: A tuple containing the next time step and a List containing _n_ core temps as floating point values (where _n_ is the number of CPU cores) """
or the following Sphinx Example:
Example 9: Python 3 Sphinx Documentationdef parse_raw_temps(original_temps: TextIO, step_size: int=30, units: bool=True) -> Iterator[Tuple[float, List[float]] ]: """ Take an input file and time-step size and parse all core temps. Args: original_temps: an input file step_size: time-step in seconds units: True if the input file includes units and False if the file includes only raw readings (no units) Yields: A tuple containing the next time step and a List containing _n_ core temps as floating point values (where _n_ is the number of CPU cores) """