De-localize Material and FlightDataType objects when persisting in ork files. Added a String key to each of these objects which holds on to a unique identifier which is stored in the ork file. User defined Materials are given a key which is defined as "UserDefined." + name.

The construction pattern for Material has changed so explicitly passing in the userDefined boolean is no longer required.  Instead there are two different factory methods to be used.  Direct construction of Material derived classes is no longer allowed.

The persistence mechanism for Materials in perferences has changed.  It will now persist the key and name but still supports reading old format.

The example files have been regenerated, but will need to be regenerated again prior to an official build in order to get the version string correct.
This commit is contained in:
Kevin Ruland 2012-07-31 21:20:55 +00:00
parent be8827c226
commit 77e3652249
46 changed files with 4831 additions and 4316 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
<?xml version='1.0' encoding='utf-8'?>
<openrocket version="1.4" creator="OpenRocket 12.03">
<openrocket version="1.4" creator="OpenRocket 12.03dev">
<rocket>
<name>Roll-stabilized rocket</name>
<comment>Canting the fins may increase the flight stability of a rocket.
@ -18,33 +18,33 @@ Be cautious when flying rockets with marginal or neutral static stability!!</com
<nosecone>
<name>Nose cone</name>
<finish>normal</finish>
<material type="bulk" density="1050.0">Polystyrene</material>
<material type="bulk" density="1050.0" key="Polystyrene">Polystyrene</material>
<length>0.1</length>
<thickness>0.002</thickness>
<thickness>0.0020</thickness>
<shape>ellipsoid</shape>
<shapeclipped>false</shapeclipped>
<aftradius>0.0225</aftradius>
<aftshoulderradius>0.019</aftshoulderradius>
<aftshoulderlength>0.035</aftshoulderlength>
<aftshoulderthickness>0.002</aftshoulderthickness>
<aftshoulderthickness>0.0020</aftshoulderthickness>
<aftshouldercapped>true</aftshouldercapped>
</nosecone>
<bodytube>
<name>Body tube</name>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<length>0.4</length>
<thickness>0.001</thickness>
<thickness>0.0010</thickness>
<radius>auto</radius>
<subcomponents>
<innertube>
<name>Clustered Inner Tube</name>
<position type="bottom">0.005</position>
<position type="bottom">0.0050</position>
<comment>Clustering the inner tube automatically multiplies also the components attached to it.
The cluster configuration can be modified at any point in the &quot;Cluster&quot; tab.</comment>
<material type="bulk" density="680.0">Cardboard</material>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<length>0.075</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
@ -74,19 +74,19 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
</motor>
<ignitionevent>automatic</ignitionevent>
<ignitiondelay>0.0</ignitiondelay>
<overhang>0.003</overhang>
<overhang>0.0030</overhang>
</motormount>
<subcomponents>
<engineblock>
<name>Engine block</name>
<position type="top">0.002</position>
<material type="bulk" density="680.0">Cardboard</material>
<length>0.005</length>
<position type="top">0.0020</position>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<length>0.0050</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<outerradius>auto</outerradius>
<thickness>0.003</thickness>
<thickness>0.0030</thickness>
</engineblock>
</subcomponents>
</innertube>
@ -95,8 +95,8 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<name>Centering ring</name>
<position type="bottom">0.0</position>
<comment>The centering ring automatically takes the outer diameter of the body tube and the inner diameter of the inner tube.</comment>
<material type="bulk" density="680.0">Cardboard</material>
<length>0.002</length>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<length>0.0020</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<outerradius>auto</outerradius>
@ -107,8 +107,8 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<name>Centering ring</name>
<position type="bottom">-0.045</position>
<comment>The centering ring automatically takes the outer diameter of the body tube and the inner diameter of the inner tube.</comment>
<material type="bulk" density="680.0">Cardboard</material>
<length>0.002</length>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<length>0.0020</length>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<outerradius>auto</outerradius>
@ -120,11 +120,11 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<position type="top">0.035</position>
<comment>The shock cord does not need to be attached to anything in particular, as it functions only as a mass component.</comment>
<packedlength>0.052000000000000005</packedlength>
<packedradius>0.008</packedradius>
<packedradius>0.0080</packedradius>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<cordlength>0.6</cordlength>
<material type="line" density="0.0043">Elastic cord (flat 6mm, 1/4 in)</material>
<material type="line" density="0.0043" key="Elasticcordflat6mm">Elastic cord (flat 6mm, 1/4 in)</material>
</shockcord>
<parachute>
@ -138,11 +138,11 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<deployevent>ejection</deployevent>
<deployaltitude>200.0</deployaltitude>
<deploydelay>0.0</deploydelay>
<material type="surface" density="0.067">Ripstop nylon</material>
<material type="surface" density="0.067" key="Ripstopnylon">Ripstop nylon</material>
<diameter>0.4</diameter>
<linecount>6</linecount>
<linelength>0.3</linelength>
<linematerial type="line" density="0.001">Braided nylon (2 mm, 1/16 in)</linematerial>
<linematerial type="line" density="0.0010" key="Braidednylon2mm">Braided nylon (2 mm, 1/16 in)</linematerial>
</parachute>
<masscomponent>
@ -152,17 +152,17 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<packedradius>0.021</packedradius>
<radialposition>0.0</radialposition>
<radialdirection>0.0</radialdirection>
<mass>0.002</mass>
<mass>0.0020</mass>
</masscomponent>
<launchlug>
<name>Launch lug</name>
<position type="middle">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<radius>0.0035</radius>
<length>0.035</length>
<thickness>0.001</thickness>
<thickness>0.0010</thickness>
<radialdirection>14.999999999999998</radialdirection>
</launchlug>
@ -170,10 +170,10 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<name>Launch lug</name>
<position type="bottom">-0.01</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<radius>0.0035</radius>
<length>0.035</length>
<thickness>0.001</thickness>
<thickness>0.0010</thickness>
<radialdirection>14.999999999999998</radialdirection>
</launchlug>
@ -181,10 +181,10 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<name>Elliptical fin set</name>
<position type="bottom">0.0</position>
<finish>normal</finish>
<material type="bulk" density="680.0">Cardboard</material>
<material type="bulk" density="680.0" key="Cardboard">Cardboard</material>
<fincount>3</fincount>
<rotation>0.0</rotation>
<thickness>0.003</thickness>
<thickness>0.0030</thickness>
<crosssection>airfoil</crosssection>
<cant>5.0</cant>
<rootchord>0.06</rootchord>
@ -216,192 +216,200 @@ The cluster configuration can be modified at any point in the &quot;Cluster&quot
<atmosphere model="isa"/>
<timestep>0.05</timestep>
</conditions>
<flightdata maxaltitude="286.69" maxvelocity="91.504" maxacceleration="205.08" maxmach="0.26907" timetoapogee="7.0453" flighttime="72.879" groundhitvelocity="4.6429" launchrodvelocity="16.054" deploymentvelocity="6.5657">
<databranch name="MAIN" types="Time,Altitude,Vertical velocity,Vertical acceleration,Total velocity,Total acceleration,Position upwind,Position parallel to wind,Lateral distance,Lateral direction,Lateral velocity,Lateral acceleration,Latitude,Longitude,Angle of attack,Roll rate,Pitch rate,Yaw rate,Mass,Longitudinal moment of inertia,Rotational moment of inertia,CP location,CG location,Stability margin calibers,Mach number,Reynolds number,Thrust,Drag force,Drag coefficient,Axial drag coefficient,Friction drag coefficient,Pressure drag coefficient,Base drag coefficient,Normal force coefficient,Pitch moment coefficient,Yaw moment coefficient,Side force coefficient,Roll moment coefficient,Roll forcing coefficient,Roll damping coefficient,Pitch damping coefficient,Reference length,Reference area,Vertical orientation (zenith),Lateral orientation (azimuth),Wind velocity,Air temperature,Air pressure,Speed of sound,Simulation time step,Computation time">
<flightdata maxaltitude="288.41" maxvelocity="91.825" maxacceleration="205.54" maxmach="0.27002" timetoapogee="7.0806" flighttime="72.952" groundhitvelocity="4.5669" launchrodvelocity="16.078" deploymentvelocity="6.78">
<databranch name="MAIN" typekeys="TYPE_TIME,TYPE_ALTITUDE,TYPE_VELOCITY_Z,TYPE_ACCELERATION_Z,TYPE_VELOCITY_TOTAL,TYPE_ACCELERATION_TOTAL,TYPE_POSITION_X,TYPE_POSITION_Y,TYPE_POSITION_XY,TYPE_POSITION_DIRECTION,TYPE_VELOCITY_XY,TYPE_ACCELERATION_XY,TYPE_LATITUDE,TYPE_LONGITUDE,TYPE_AOA,TYPE_ROLL_RATE,TYPE_PITCH_RATE,TYPE_YAW_RATE,TYPE_MASS,TYPE_LONGITUDINAL_INERTIA,TYPE_ROTATIONAL_INERTIA,TYPE_CP_LOCATION,TYPE_CG_LOCATION,TYPE_STABILITY,TYPE_MACH_NUMBER,TYPE_REYNOLDS_NUMBER,TYPE_THRUST_FORCE,TYPE_DRAG_FORCE,TYPE_DRAG_COEFF,TYPE_AXIAL_DRAG_COEFF,TYPE_FRICTION_DRAG_COEFF,TYPE_PRESSURE_DRAG_COEFF,TYPE_BASE_DRAG_COEFF,TYPE_NORMAL_FORCE_COEFF,TYPE_PITCH_MOMENT_COEFF,TYPE_YAW_MOMENT_COEFF,TYPE_SIDE_FORCE_COEFF,TYPE_ROLL_MOMENT_COEFF,TYPE_ROLL_FORCING_COEFF,TYPE_ROLL_DAMPING_COEFF,TYPE_PITCH_DAMPING_MOMENT_COEFF,TYPE_REFERENCE_LENGTH,TYPE_REFERENCE_AREA,TYPE_ORIENTATION_THETA,TYPE_ORIENTATION_PHI,TYPE_WIND_VELOCITY,TYPE_AIR_TEMPERATURE,TYPE_AIR_PRESSURE,TYPE_SPEED_OF_SOUND,TYPE_TIME_STEP,TYPE_COMPUTATION_TIME" types="Time,Altitude,Vertical velocity,Vertical acceleration,Total velocity,Total acceleration,Position upwind,Position parallel to wind,Lateral distance,Lateral direction,Lateral velocity,Lateral acceleration,Latitude,Longitude,Angle of attack,Roll rate,Pitch rate,Yaw rate,Mass,Longitudinal moment of inertia,Rotational moment of inertia,CP location,CG location,Stability margin calibers,Mach number,Reynolds number,Thrust,Drag force,Drag coefficient,Axial drag coefficient,Friction drag coefficient,Pressure drag coefficient,Base drag coefficient,Normal force coefficient,Pitch moment coefficient,Yaw moment coefficient,Side force coefficient,Roll moment coefficient,Roll forcing coefficient,Roll damping coefficient,Pitch damping coefficient,Reference length,Reference area,Vertical orientation (zenith),Lateral orientation (azimuth),Wind velocity,Air temperature,Air pressure,Speed of sound,Simulation time step,Computation time">
<event time="0" type="launch"/>
<event time="0" type="ignition"/>
<event time="0.09" type="liftoff"/>
<event time="0.24069" type="launchrod"/>
<event time="1.6535" type="burnout"/>
<event time="6.6535" type="ejectioncharge"/>
<event time="6.6545" type="recoverydevicedeployment"/>
<event time="7.1474" type="apogee"/>
<event time="72.879" type="groundhit"/>
<event time="72.879" type="simulationend"/>
<datapoint>0,0,0,-7.9511,0,7.9511,0,0,0,0,0,0,0.7854,0,1.5708,0,0,0,0.14131,0.0040959,6.4637e-5,NaN,0.30219,NaN,0.0054016,62770,0.26214,0,0.58095,0,0.4198,0.041142,0.12,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,0.045,0.0015904,1.5708,0,NaN,288.15,101325,340.39,0.01,0.0020227</datapoint>
<datapoint>0.25069,1.2304,17.782,178.35,17.782,178.36,-8.6291e-5,0,8.6291e-5,-3.1416,0.01747,1.8121,0.7854,0,0.11194,0.91327,-0.0031227,1.1395e-5,0.1378,0.0039894,6.4385e-5,0.29323,0.29784,-0.10252,0.052571,610845,26.074,0.1459,0.42687,0.4678,0.26517,0.041337,0.12036,0.79929,-0.0817,-3.5691e-4,0,0.45016,0.47541,0.025247,-1.2805e-6,0.045,0.0015904,1.5708,-3.1402,NaN,288.14,101311,340.38,0.0025,0.010205</datapoint>
<datapoint>0.50069,9.7893,44.25,61.331,44.255,61.388,-0.085558,1.6128e-4,0.085558,3.1397,0.6759,2.6414,0.7854,-1.9017e-8,0.031258,36.281,-0.023921,-0.029319,0.13276,0.0038265,6.4021e-5,0.29975,0.29118,0.19031,0.13008,1510336,10.271,0.82723,0.42965,0.43364,0.2648,0.042655,0.1222,0.18612,0.035899,-1.1895e-4,0,0.067649,0.47594,0.40829,-1.2275e-5,0.045,0.0015904,1.5674,1.296,NaN,288.09,101210,340.35,0.0025,0.051622</datapoint>
<datapoint>0.75069,22.627,58.028,50.615,58.041,50.639,-0.32721,0.02451,0.32813,3.0668,1.2211,1.5339,0.7854,-7.2729e-8,0.0095764,52.545,-0.016614,-0.032888,0.12972,0.0037226,6.3803e-5,0.30208,0.28693,0.33658,0.17053,1977802,9.2636,1.4251,0.43491,0.43531,0.26447,0.046661,0.12378,0.05397,0.017928,3.3217e-4,0,0.022456,0.47639,0.45394,-3.4463e-6,0.045,0.0015904,1.563,1.3361,NaN,288,101060,340.3,0.0025,0.075977</datapoint>
<datapoint>1.0007,38.652,69.909,44.353,69.925,44.372,-0.65756,0.10983,0.66667,2.9761,1.4896,1.2931,0.7854,-1.4615e-7,0.0043053,64.285,0.0095008,0.015219,0.12687,0.0036203,6.3597e-5,0.30277,0.28275,0.44486,0.20548,2379795,8.9709,2.0988,0.44231,0.4424,0.26412,0.052699,0.12549,0.023942,0.010999,2.1709e-4,0,0.012749,0.47689,0.46414,7.7656e-7,0.045,0.0015904,1.5604,1.3248,NaN,287.9,100872,340.24,0.0025,0.096462</datapoint>
<datapoint>1.2507,57.448,80.184,37.774,80.201,37.79,-1.0172,0.26548,1.0512,2.8863,1.65,1.113,0.7854,-2.2608e-7,0.0021508,74.048,0.0052245,0.02192,0.1241,0.0035164,6.3398e-5,0.30312,0.2785,0.5471,0.23573,2725717,8.7034,2.7978,0.44905,0.44907,0.26377,0.058053,0.12722,0.0119,0.0066375,3.6079e-5,0,0.0079989,0.47739,0.46939,1.7849e-7,0.045,0.0015904,1.5586,1.2207,NaN,287.78,100651,340.16,0.0025,0.11681</datapoint>
<datapoint>1.5007,78.584,88.575,30.147,88.591,30.151,-1.3761,0.48095,1.4577,2.8054,1.6868,0.46596,0.7854,-3.0586e-7,5.0609e-4,81.852,0.019919,0.019447,0.12144,0.0034128,6.3207e-5,0.3034,0.27425,0.64778,0.26047,3006180,8.3031,3.4508,0.45479,0.45479,0.26344,0.062522,0.12882,0.0027894,0.0016759,3.2172e-4,0,0.005073,0.47786,0.47279,2.1262e-6,0.045,0.0015904,1.5589,1.1439,NaN,287.64,100403,340.08,0.0025,0.13893</datapoint>
<datapoint>1.7513,101.07,86.781,-37.227,86.796,37.234,-1.7187,0.7256,1.8656,2.7421,1.6228,0.70398,0.7854,-3.8201e-7,0.0020295,82.199,0.023592,0.008847,0.12022,0.0033632,6.3118e-5,0.3032,0.27222,0.68858,0.25526,2940202,0,3.2965,0.45356,0.45358,0.26352,0.061573,0.12847,0.01123,0.0080718,3.0562e-6,0,-0.0061535,0.47776,0.48391,3.1072e-6,0.045,0.0015904,1.5593,1.098,NaN,287.49,100140,339.99,0.0025,0.15665</datapoint>
<datapoint>2.0013,121.67,78.193,-31.737,78.208,31.742,-2.0431,0.94418,2.2507,2.7087,1.5329,0.57571,0.7854,-4.5411e-7,0.0013982,74.575,-0.021188,0.0014804,0.12022,0.0033632,6.3118e-5,0.30318,0.27222,0.68809,0.23006,2645074,0,2.637,0.44776,0.44777,0.26384,0.057039,0.12688,0.0077192,0.005037,-1.1408e-4,0,-0.0067957,0.47729,0.48409,-3.0869e-6,0.045,0.0015904,1.5605,1.1942,NaN,287.36,99898,339.91,0.0025,0.17539</datapoint>
<datapoint>2.2513,140.27,70.803,-27.565,70.821,27.566,-2.3855,1.1372,2.6427,2.6967,1.6003,0.15193,0.7854,-5.3022e-7,5.0229e-4,67.886,0.0028368,0.019881,0.12022,0.0033632,6.3118e-5,0.30321,0.27222,0.68875,0.20836,2391652,0,2.135,0.44294,0.44294,0.26409,0.053204,0.12564,0.0027649,0.0016174,3.6621e-4,0,-0.0073064,0.47693,0.48424,6.7491e-8,0.045,0.0015904,1.5592,1.2492,NaN,287.24,99680,339.84,0.0025,0.19377</datapoint>
<datapoint>2.5013,157.14,64.335,-24.309,64.356,24.311,-2.7443,1.3202,3.0453,2.6932,1.6263,0.29761,0.7854,-6.0996e-7,0.001256,61.967,-0.014237,-0.021091,0.12022,0.0033632,6.3118e-5,0.30307,0.27222,0.68552,0.18936,2170368,0,1.7437,0.43885,0.43886,0.26429,0.049896,0.12466,0.0069254,0.0052494,-8.0916e-5,0,-0.0078895,0.47665,0.48454,-2.0588e-6,0.045,0.0015904,1.5585,1.2073,NaN,287.13,99482,339.77,0.0025,0.21235</datapoint>
<datapoint>2.7513,172.5,58.593,-21.722,58.614,21.727,-3.1083,1.4943,3.4489,2.6935,1.578,0.44606,0.7854,-6.9088e-7,0.0027327,56.667,-0.017235,-0.024397,0.12022,0.0033632,6.3118e-5,0.30285,0.27222,0.68071,0.17249,1974285,0,1.4327,0.43532,0.43535,0.26445,0.046996,0.12387,0.015123,0.0099852,-2.0324e-4,0,-0.0085747,0.47642,0.48499,-3.6379e-6,0.045,0.0015904,1.5599,1.2579,NaN,287.03,99302,339.71,0.0025,0.23135</datapoint>
<datapoint>3.0013,186.49,53.433,-19.63,53.454,19.633,-3.4566,1.6522,3.8312,2.6957,1.5052,0.31804,0.7854,-7.6829e-7,0.0018416,51.875,0.014562,0.012044,0.12022,0.0033632,6.3118e-5,0.30291,0.27222,0.68212,0.15733,1798463,0,1.1813,0.43222,0.43224,0.26459,0.044418,0.12322,0.010165,0.007225,2.6102e-4,0,-0.0093788,0.47623,0.48561,3.1226e-6,0.045,0.0015904,1.561,1.2473,NaN,286.94,99138,339.65,0.0025,0.25112</datapoint>
<datapoint>3.2513,199.25,48.745,-17.94,48.77,17.956,-3.8076,1.7921,4.2083,2.7017,1.5592,0.74104,0.7854,-8.463e-7,0.0067359,47.504,0.010156,-0.035181,0.12022,0.0033632,6.3118e-5,0.30233,0.27222,0.66913,0.14355,1639107,0,0.97824,0.43038,0.43058,0.2647,0.043007,0.12268,0.037661,0.025204,6.9337e-5,0,-0.010336,0.47607,0.48641,1.825e-6,0.045,0.0015904,1.5596,1.3201,NaN,286.85,98988,339.6,0.0025,0.26875</datapoint>
<datapoint>3.5013,210.89,44.438,-16.549,44.471,16.552,-4.1949,1.9264,4.6161,2.7111,1.7114,0.31233,0.7854,-9.3238e-7,0.0037589,43.479,0.0063943,-0.034119,0.12022,0.0033632,6.3118e-5,0.30264,0.27222,0.67597,0.13088,1492932,0,0.81055,0.42969,0.42975,0.26479,0.042676,0.12223,0.020846,0.013754,1.4184e-5,0,-0.011526,0.47594,0.48747,8.7044e-7,0.045,0.0015904,1.5562,1.3349,NaN,286.78,98852,339.56,0.0025,0.28638</datapoint>
<datapoint>3.7513,221.5,40.451,-15.381,40.491,15.385,-4.609,2.0656,5.0507,2.7203,1.7952,0.37054,0.7854,-1.0244e-6,0.0052311,39.745,0.018352,-0.001267,0.12022,0.0033632,6.3118e-5,0.30245,0.27222,0.67178,0.11916,1357909,0,0.67015,0.4291,0.42922,0.26487,0.042385,0.12185,0.029121,0.019571,1.3829e-5,0,-0.012948,0.47583,0.48878,8.6529e-6,0.045,0.0015904,1.5541,1.3388,NaN,286.71,98727,339.52,0.0025,0.30432</datapoint>
<datapoint>4.001,231.13,36.737,-14.394,36.783,14.395,-5.042,2.2098,5.505,2.7285,1.8449,0.18545,0.7854,-1.1207e-6,0.0034715,36.264,-0.025757,-0.0065686,0.12022,0.0033632,6.3118e-5,0.30263,0.27222,0.67577,0.10823,1232311,0,0.55149,0.42859,0.42864,0.26493,0.042129,0.12152,0.019232,0.013279,-3.8434e-4,0,-0.014695,0.47574,0.49044,-2.0664e-5,0.045,0.0015904,1.5517,1.2692,NaN,286.65,98614,339.48,0.0025895,0.32354</datapoint>
<datapoint>4.252,239.91,33.233,-13.552,33.286,13.553,-5.4867,2.357,5.9715,2.7359,1.8868,0.17069,0.7854,-1.2195e-6,0.0033032,32.983,0.012646,0.014783,0.12022,0.0033632,6.3118e-5,0.30263,0.27222,0.67583,0.097922,1114041,0,0.45049,0.42815,0.4282,0.26499,0.041913,0.12125,0.01829,0.012527,-1.8007e-4,0,-0.016902,0.47566,0.49256,6.0865e-6,0.045,0.0015904,1.5513,1.2997,NaN,286.59,98511,339.44,0.0027534,0.34088</datapoint>
<datapoint>4.5012,247.78,29.945,-12.842,30.006,12.843,-5.9362,2.5025,6.4421,2.7426,1.9068,0.19507,0.7854,-1.3194e-6,0.0040872,29.913,0.026115,-0.020444,0.12022,0.0033632,6.3118e-5,0.30253,0.27222,0.67355,0.088249,1003281,0,0.36528,0.42782,0.42789,0.26504,0.041771,0.12101,0.022677,0.015183,-1.1566e-5,0,-0.01967,0.47559,0.49526,3.1963e-5,0.045,0.0015904,1.5507,1.2268,NaN,286.54,98419,339.41,0.0029158,0.3559</datapoint>
<datapoint>4.7527,254.91,26.795,-12.234,26.865,12.239,-6.3974,2.6464,6.9232,2.7494,1.9396,0.32288,0.7854,-1.4219e-6,0.0094138,26.981,-0.0016021,-0.037562,0.12022,0.0033632,6.3118e-5,0.30192,0.27222,0.66013,0.07898,897326,0,0.29234,0.42753,0.42791,0.26508,0.041644,0.12081,0.052972,0.03457,5.6137e-4,0,-0.023277,0.47554,0.49881,-1.5022e-7,0.045,0.0015904,1.5485,1.2348,NaN,286.49,98335,339.38,0.0030789,0.37024</datapoint>
<datapoint>5.0019,261.21,23.811,-11.723,23.898,11.728,-6.8727,2.7861,7.4159,2.7564,2.0342,0.32498,0.7854,-1.5276e-6,0.012371,24.225,-0.015664,-0.032011,0.12022,0.0033632,6.3118e-5,0.30159,0.27222,0.65278,0.070197,797093,0,0.23078,0.42729,0.42794,0.26511,0.041534,0.12064,0.070148,0.045864,3.8537e-4,0,-0.028095,0.47549,0.50358,-1.8179e-5,0.045,0.0015904,1.5443,1.2827,NaN,286.45,98261,339.36,0.0032315,0.38381</datapoint>
<datapoint>5.2533,266.83,20.92,-11.283,21.022,11.285,-7.369,2.926,7.9286,2.7636,2.069,0.21647,0.7854,-1.6379e-6,0.01024,21.573,0.014827,-0.04078,0.12022,0.0033632,6.3118e-5,0.30182,0.27222,0.65772,0.061682,700051,0,0.17789,0.42707,0.42752,0.26514,0.041434,0.12049,0.057738,0.038376,2.6016e-4,0,-0.034657,0.47544,0.5101,2.11e-5,0.045,0.0015904,1.5435,1.2654,NaN,286.42,98196,339.34,0.0033951,0.39676</datapoint>
<datapoint>5.5034,271.71,18.146,-10.915,18.266,10.915,-7.8721,3.0628,8.447,2.7705,2.0916,0.081493,0.7854,-1.7497e-6,0.0038704,19.06,-0.011202,0.02708,0.12022,0.0033632,6.3118e-5,0.30252,0.27222,0.67326,0.053503,606950,0,0.13359,0.42689,0.42695,0.26517,0.041347,0.12037,0.021456,0.014503,-3.6857e-4,0,-0.043971,0.47541,0.51938,-1.6008e-5,0.045,0.0015904,1.5437,1.3349,NaN,286.38,98138,339.32,0.0035588,0.40927</datapoint>
<datapoint>5.7552,275.94,15.438,-10.608,15.577,10.609,-8.3805,3.1969,8.9696,2.7772,2.0783,0.13257,0.7854,-1.8627e-6,0.011389,16.653,-0.0091634,-0.039483,0.12022,0.0033632,6.3118e-5,0.30168,0.27222,0.65466,0.045526,516264,0,0.096751,0.42674,0.42729,0.26519,0.041284,0.12027,0.064409,0.042097,4.8662e-4,0,-0.057713,0.47538,0.53309,-1.4797e-5,0.045,0.0015904,1.5427,1.4532,NaN,286.36,98089,339.3,0.0037467,0.42102</datapoint>
<datapoint>6.0054,279.47,12.816,-10.358,12.979,10.358,-8.8813,3.3247,9.4832,2.7834,2.054,0.1036,0.7854,-1.974e-6,0.012322,14.385,0.032841,-0.010693,0.12022,0.0033632,6.3118e-5,0.30157,0.27222,0.65231,0.0378,428518,0,0.06667,0.42663,0.42728,0.26521,0.041243,0.12019,0.069854,0.044881,8.9154e-6,0,-0.079094,0.47536,0.55445,2.7571e-4,0.045,0.0015904,1.5427,1.3632,NaN,286.33,98047,339.29,0.0039672,0.43206</datapoint>
<datapoint>6.2556,282.36,10.249,-10.168,10.452,10.169,-9.3804,3.446,9.9933,2.7895,2.051,0.12044,0.7854,-2.0849e-6,0.023133,12.257,-0.011609,0.019969,0.12022,0.0033632,6.3118e-5,0.30044,0.27222,0.62712,0.030241,342732,0,0.043937,0.43784,0.44011,0.27652,0.041209,0.12012,0.13485,0.084226,-3.7449e-4,0,-0.11505,0.47534,0.59039,-5.3833e-5,0.045,0.0015904,1.546,1.5326,NaN,286.31,98013,339.28,0.0042628,0.44275</datapoint>
<datapoint>6.5057,284.61,7.7252,-10.022,7.9946,10.023,-9.8808,3.5606,10.503,2.7957,2.0581,0.13203,0.7854,-2.1962e-6,0.043867,10.304,0.0061236,-0.036282,0.12022,0.0033632,6.3118e-5,0.29845,0.27222,0.58282,0.022823,258610,0,0.026376,0.45591,0.46399,0.29466,0.041182,0.12007,0.26921,0.15639,0.0011442,0,-0.18219,0.47532,0.65751,2.6299e-5,0.045,0.0015904,1.5416,1.4628,NaN,286.3,97987,339.27,0.0047274,0.45322</datapoint>
<datapoint>6.7637,286.18,3.7287,-18.748,4.2428,18.762,-10.406,3.6668,11.033,2.8028,2.1058,0.74187,0.7854,-2.3129e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012506,141688,0,1.0787,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1363,286.29,97970,339.26,0.026649,0.45946</datapoint>
<datapoint>6.9958,286.66,0.72996,-10.577,1.2591,10.579,-10.892,3.731,11.513,2.8116,2.1193,0.16932,0.7854,-2.421e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.0037114,42047,0,0.094999,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1932,286.29,97963,339.26,0.047265,0.45972</datapoint>
<datapoint>7.2556,286.52,-1.7699,-8.988,1.2911,8.9893,-11.439,3.7926,12.052,2.8214,2.1162,0.14964,0.7854,-2.5425e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.0038056,43114,0,0.099882,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0993,286.29,97964,339.26,0.055622,0.46036</datapoint>
<datapoint>7.4692,285.97,-3.2689,-5.9728,2.7763,5.979,-11.887,3.8354,12.49,2.8295,2.0961,0.27151,0.7854,-2.642e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.0081834,92713,0,0.46188,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0729,286.29,97968,339.26,0.083626,0.46049</datapoint>
<datapoint>7.7628,284.85,-4.2626,-2.7192,3.7731,2.7461,-12.509,3.8742,13.095,2.8412,2.1595,0.38347,0.7854,-2.7803e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.011121,126005,0,0.8531,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2541,286.29,97976,339.26,0.18207,0.46058</datapoint>
<datapoint>8.2628,282.63,-4.6329,-0.74042,4.2658,0.81783,-13.623,3.896,14.17,2.8631,2.3003,0.34731,0.7854,-3.028e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012574,142468,0,1.0905,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2918,286.3,97984,339.27,0.5,0.46062</datapoint>
<datapoint>8.6358,280.96,-4.2825,0.9393,4.6512,1.3406,-14.415,3.8947,14.932,2.8777,1.9436,0.95651,0.7854,-3.2039e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013709,155367,0,1.2968,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8879,286.31,98010,339.28,0.37297,0.46073</datapoint>
<datapoint>9.1358,278.74,-4.603,-0.64091,4.291,0.86152,-15.459,3.8945,15.942,2.8948,2.2314,0.57572,0.7854,-3.4359e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012647,143353,0,1.1039,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2126,286.32,98030,339.28,0.5,0.46078</datapoint>
<datapoint>9.6019,276.68,-4.2356,0.78826,4.6138,1.0728,-16.42,3.8945,16.875,2.9087,1.8923,0.72765,0.7854,-3.6495e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013598,154166,0,1.2765,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9153,286.34,98056,339.29,0.46608,0.46082</datapoint>
<datapoint>10.102,274.46,-4.6628,-0.85436,4.2357,0.8575,-17.357,3.8945,17.788,2.9209,1.8556,0.073384,0.7854,-3.8578e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012484,141556,0,1.0761,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8576,286.35,98080,339.3,0.5,0.46087</datapoint>
<datapoint>10.581,272.34,-4.1628,1.0442,4.6628,1.0442,-18.246,3.8945,18.657,2.9313,1.8597,0.0084552,0.7854,-4.0555e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013742,155854,0,1.3043,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8592,286.37,98106,339.31,0.47884,0.46091</datapoint>
<datapoint>10.912,270.91,-4.5249,-1.0945,4.1924,1.511,-18.918,3.8945,19.315,2.9386,2.2044,1.0417,0.7854,-4.2049e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012356,140157,0,1.0546,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3575,286.38,98131,339.32,0.33091,0.46096</datapoint>
<datapoint>11.412,268.7,-4.3171,0.41579,4.525,0.41581,-20.021,3.8945,20.396,2.9495,2.2065,0.0041926,0.7854,-4.45e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013335,151290,0,1.2287,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2062,286.39,98148,339.32,0.5,0.461</datapoint>
<datapoint>11.912,266.48,-4.567,-0.49985,4.3171,0.50003,-21.123,3.8945,21.479,2.9593,2.1996,0.013692,0.7854,-4.6949e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012722,144364,0,1.1187,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2001,286.4,98174,339.33,0.5,0.46105</datapoint>
<datapoint>12.412,264.27,-4.2615,0.61099,4.567,0.61099,-22.222,3.8945,22.561,2.9681,2.1992,8.576e-4,0.7854,-4.9393e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013458,152749,0,1.2522,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1992,286.42,98200,339.34,0.5,0.4611</datapoint>
<datapoint>12.912,262.05,-4.626,-0.72898,4.2639,0.78933,-23.284,3.8945,23.608,2.9759,2.0478,0.30271,0.7854,-5.1753e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012565,142635,0,1.0917,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0571,286.43,98226,339.35,0.5,0.46115</datapoint>
<datapoint>13.412,259.84,-4.1799,0.8922,4.6285,0.95925,-24.352,3.8945,24.662,2.983,2.224,0.35235,0.7854,-5.4127e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013639,154860,0,1.2867,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2002,286.45,98252,339.36,0.5,0.46119</datapoint>
<datapoint>13.835,257.98,-4.6285,-1.0589,4.1873,1.1803,-25.248,3.8945,25.546,2.9885,2.0032,0.52124,0.7854,-5.6117e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012339,140122,0,1.0533,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9749,286.46,98277,339.37,0.42364,0.46124</datapoint>
<datapoint>14.335,255.78,-4.1737,0.90951,4.6317,0.9925,-26.199,3.8945,26.487,2.994,1.8046,0.39729,0.7854,-5.8233e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013648,155015,0,1.289,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8316,286.47,98299,339.37,0.5,0.46128</datapoint>
<datapoint>14.694,254.21,-4.55,-1.049,4.1966,1.3939,-26.906,3.8945,27.186,2.9978,2.1338,0.91795,0.7854,-5.9803e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012365,140478,0,1.0584,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2421,286.49,98325,339.38,0.3587,0.46133</datapoint>
<datapoint>15.194,252.01,-4.2663,0.56744,4.5595,0.87811,-28.057,3.8945,28.326,3.0037,2.4689,0.67015,0.7854,-6.236e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013434,152645,0,1.2496,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.4278,286.5,98343,339.39,0.5,0.46138</datapoint>
<datapoint>15.684,249.84,-4.5953,-0.67082,4.2813,1.0193,-29.175,3.8945,29.434,3.0089,2.0924,0.76749,0.7854,-6.4847e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012614,143357,0,1.102,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1105,286.51,98369,339.4,0.49052,0.46142</datapoint>
<datapoint>16.184,247.63,-4.2165,0.75759,4.5953,0.75765,-30.22,3.8945,30.47,3.0134,2.0876,0.0096691,0.7854,-6.7169e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013539,153898,0,1.2698,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0882,286.53,98395,339.4,0.5,0.46147</datapoint>
<datapoint>16.684,245.41,-4.6693,-0.90546,4.2188,0.95083,-31.228,3.8945,31.47,3.0175,1.9425,0.29019,0.7854,-6.9409e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01243,141311,0,1.0705,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9501,286.54,98421,339.41,0.5,0.46152</datapoint>
<datapoint>17.137,243.41,-4.1698,1.105,4.6693,1.1062,-32.101,3.8945,32.336,3.0209,1.9194,0.051134,0.7854,-7.1349e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013757,156430,0,1.3116,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9206,286.55,98447,339.42,0.45201,0.46156</datapoint>
<datapoint>17.578,241.47,-4.6549,-1.0984,4.1719,1.1321,-32.975,3.8945,33.204,3.024,2.0404,0.27403,0.7854,-7.3292e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012291,139786,0,1.0472,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0506,286.57,98470,339.43,0.44165,0.46161</datapoint>
<datapoint>18.058,239.35,-4.1549,1.0421,4.6549,1.0421,-33.953,3.8945,34.176,3.0274,2.038,0.0051318,0.7854,-7.5467e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013714,155996,0,1.304,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0382,286.58,98493,339.44,0.47979,0.46166</datapoint>
<datapoint>18.446,237.65,-4.5974,-1.1406,4.1649,1.2888,-34.789,3.8945,35.006,3.0301,2.2708,0.60013,0.7854,-7.7325e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01227,139597,0,1.0441,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3257,286.59,98518,339.45,0.38794,0.46174</datapoint>
<datapoint>18.946,235.46,-4.2005,0.79383,4.6036,0.96542,-35.856,3.8945,36.067,3.0334,1.9961,0.54942,0.7854,-7.9696e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013562,154322,0,1.2759,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0325,286.61,98538,339.45,0.5,0.46178</datapoint>
<datapoint>19.446,233.23,-4.6829,-0.96484,4.2017,0.9874,-36.88,3.8945,37.085,3.0364,2.101,0.20987,0.7854,-8.1972e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012377,140874,0,1.0631,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0958,286.62,98564,339.46,0.5,0.46183</datapoint>
<datapoint>19.866,231.37,-4.1857,1.1824,4.6832,1.189,-37.753,3.8945,37.953,3.0388,2.0483,0.12523,0.7854,-8.3911e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013796,157046,0,1.321,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0476,286.63,98590,339.47,0.42052,0.46187</datapoint>
<datapoint>20.275,229.58,-4.5928,-0.99747,4.1993,1.2252,-38.529,3.8945,38.726,3.0409,1.758,0.71139,0.7854,-8.5638e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01237,140840,0,1.0623,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7103,286.65,98611,339.48,0.40811,0.46192</datapoint>
<datapoint>20.775,227.38,-4.2017,0.78213,4.5996,0.97165,-39.48,3.8945,39.672,3.0433,2.0463,0.57652,0.7854,-8.7752e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013549,154285,0,1.2747,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0081,286.66,98632,339.48,0.5,0.46196</datapoint>
<datapoint>21.266,225.2,-4.6669,-0.94753,4.2054,1.0183,-40.44,3.8945,40.627,3.0456,1.8631,0.37311,0.7854,-8.9885e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012387,141089,0,1.0658,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8693,286.67,98658,339.49,0.49099,0.46202</datapoint>
<datapoint>21.685,223.35,-4.1965,1.1227,4.6701,1.1933,-41.256,3.8945,41.44,3.0475,2.0325,0.40423,0.7854,-9.1699e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013756,156705,0,1.3146,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0357,286.69,98684,339.5,0.41902,0.46206</datapoint>
<datapoint>22.184,221.13,-4.6812,-0.97048,4.1981,1.001,-42.302,3.8945,42.481,3.0498,2.1551,0.24546,0.7854,-9.4023e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012365,140888,0,1.0625,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.149,286.7,98706,339.51,0.49948,0.46211</datapoint>
<datapoint>22.584,219.35,-4.2042,1.1929,4.684,1.2504,-43.134,3.8945,43.309,3.0515,2.0052,0.37482,0.7854,-9.5872e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013796,157219,0,1.3229,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9955,286.71,98732,339.52,0.39986,0.46216</datapoint>
<datapoint>23.084,217.13,-4.6712,-0.93403,4.2061,0.97048,-44.103,3.8945,44.275,3.0535,1.8735,0.26345,0.7854,-9.8027e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012388,141199,0,1.067,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8803,286.72,98752,339.52,0.5,0.4622</datapoint>
<datapoint>23.472,215.41,-4.2215,1.1583,4.6774,1.2877,-44.873,3.8945,45.042,3.055,2.0919,0.56266,0.7854,-9.9738e-6,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013776,157048,0,1.3198,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1132,286.74,98778,339.53,0.38829,0.46225</datapoint>
<datapoint>23.972,213.19,-4.6504,-0.85787,4.2232,0.89545,-45.887,3.8945,46.052,3.0569,1.9636,0.25668,0.7854,-1.0199e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012438,141818,0,1.0761,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9708,286.75,98799,339.54,0.5,0.46229</datapoint>
<datapoint>24.384,211.36,-4.2116,1.0662,4.6571,1.2147,-46.745,3.8945,46.907,3.0585,2.2032,0.58206,0.7854,-1.039e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013716,156415,0,1.3088,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2126,286.76,98825,339.55,0.41162,0.46234</datapoint>
<datapoint>24.881,209.16,-4.6525,-0.88751,4.2175,1.0064,-47.898,3.8945,48.056,3.0605,2.4389,0.47455,0.7854,-1.0646e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012421,141672,0,1.0736,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.4273,286.78,98846,339.56,0.49681,0.46238</datapoint>
<datapoint>25.322,207.21,-4.1799,1.0708,4.6552,1.1327,-49.01,3.8945,49.165,3.0623,2.6021,0.36958,0.7854,-1.0893e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013709,156400,0,1.3083,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.597,286.79,98872,339.57,0.44141,0.46243</datapoint>
<datapoint>25.75,205.33,-4.613,-1.011,4.189,1.1671,-50.072,3.8945,50.223,3.064,2.3523,0.58313,0.7854,-1.1129e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012336,140760,0,1.0596,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3249,286.8,98895,339.57,0.42842,0.46247</datapoint>
<datapoint>26.196,203.36,-4.2097,0.90499,4.6218,1.1221,-51.054,3.8945,51.202,3.0655,2.0566,0.66342,0.7854,-1.1348e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01361,155325,0,1.29,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0665,286.82,98917,339.58,0.44559,0.46252</datapoint>
<datapoint>26.616,201.52,-4.573,-0.86401,4.2273,1.1893,-51.846,3.8945,51.992,3.0666,1.7131,0.81721,0.7854,-1.1524e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012448,142087,0,1.0794,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6719,286.83,98940,339.59,0.42043,0.46256</datapoint>
<datapoint>27.116,199.32,-4.214,0.71795,4.5792,0.90264,-52.771,3.8945,52.915,3.0679,1.9866,0.5471,0.7854,-1.1729e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013484,153937,0,1.2668,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9508,286.84,98962,339.6,0.5,0.46261</datapoint>
<datapoint>27.616,197.1,-4.6536,-0.87924,4.2142,0.88242,-53.774,3.8945,53.915,3.0693,2.024,0.07482,0.7854,-1.1952e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012409,141691,0,1.0731,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0219,286.85,98987,339.6,0.5,0.46265</datapoint>
<datapoint>28.077,195.08,-4.1551,1.0826,4.6538,1.0858,-54.697,3.8945,54.836,3.0705,1.9859,0.082694,0.7854,-1.2157e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013703,156499,0,1.309,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9887,286.87,99013,339.61,0.46051,0.4627</datapoint>
<datapoint>28.522,193.12,-4.655,-1.1239,4.1551,1.124,-55.582,3.8945,55.719,3.0716,1.993,0.015904,0.7854,-1.2354e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012235,139751,0,1.0437,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9936,286.88,99037,339.62,0.44483,0.46274</datapoint>
<datapoint>28.976,191.12,-4.1587,1.0938,4.6554,1.102,-56.473,3.8945,56.607,3.0727,1.9323,0.13377,0.7854,-1.2552e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013707,156602,0,1.3104,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9359,286.89,99060,339.63,0.45373,0.46279</datapoint>
<datapoint>29.404,189.23,-4.6287,-1.0963,4.1631,1.1664,-57.338,3.8945,57.47,3.0738,2.103,0.39813,0.7854,-1.2744e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012257,140063,0,1.0481,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1224,286.91,99084,339.64,0.42868,0.46283</datapoint>
<datapoint>29.904,187.04,-4.1409,0.97552,4.6293,0.99183,-58.367,3.8945,58.497,3.075,2.0134,0.17912,0.7854,-1.2973e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01363,155773,0,1.2962,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0261,286.92,99106,339.64,0.5,0.46288</datapoint>
<datapoint>30.325,185.19,-4.6357,-1.1746,4.1418,1.1871,-59.2,3.8945,59.328,3.0759,1.9411,0.17168,0.7854,-1.3158e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012194,139390,0,1.0378,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9311,286.93,99131,339.65,0.42119,0.46293</datapoint>
<datapoint>30.781,183.18,-4.1713,1.0184,4.6389,1.0964,-60.043,3.8945,60.169,3.0768,1.7558,0.4063,0.7854,-1.3345e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013658,156145,0,1.3021,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7671,286.95,99153,339.66,0.45603,0.46297</datapoint>
<datapoint>31.258,181.08,-4.6701,-1.0459,4.1714,1.0485,-60.888,3.8945,61.013,3.0777,1.7908,0.073397,0.7854,-1.3533e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012281,140430,0,1.0531,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7908,286.96,99177,339.67,0.47689,0.46302</datapoint>
<datapoint>31.673,179.24,-4.181,1.1789,4.6713,1.2053,-61.61,3.8945,61.733,3.0785,1.6867,0.25104,0.7854,-1.3694e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013752,157283,0,1.3209,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6841,286.97,99201,339.68,0.41482,0.46306</datapoint>
<datapoint>32.099,177.37,-4.598,-0.97831,4.1922,1.173,-62.387,3.8945,62.509,3.0792,1.9626,0.64716,0.7854,-1.3867e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012342,141174,0,1.064,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9932,286.98,99223,339.68,0.42626,0.46311</datapoint>
<datapoint>32.599,175.18,-4.1706,0.85486,4.6029,0.98439,-63.43,3.8945,63.549,3.0803,2.2066,0.48809,0.7854,-1.4098e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01355,155024,0,1.2829,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1731,287,99245,339.69,0.5,0.46315</datapoint>
<datapoint>33.078,173.06,-4.6698,-1.0421,4.1707,1.0439,-64.494,3.8945,64.611,3.0813,2.2359,0.061052,0.7854,-1.4335e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012278,140493,0,1.0535,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2357,287.01,99270,339.7,0.47896,0.4632</datapoint>
<datapoint>33.501,171.19,-4.17,1.1831,4.6698,1.1837,-65.442,3.8945,65.557,3.0822,2.2526,0.039674,0.7854,-1.4545e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013746,157331,0,1.321,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2527,287.03,99295,339.71,0.42239,0.46324</datapoint>
<datapoint>33.94,169.26,-4.6214,-1.0278,4.1765,1.1385,-66.478,3.8945,66.592,3.0831,2.4677,0.48966,0.7854,-1.4776e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012294,140732,0,1.0569,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.4852,287.04,99317,339.71,0.43917,0.46329</datapoint>
<datapoint>34.41,167.2,-4.1659,0.96954,4.6252,1.0641,-67.589,3.8945,67.701,3.084,2.2616,0.43856,0.7854,-1.5023e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013615,155876,0,1.2964,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2796,287.05,99340,339.72,0.46987,0.46333</datapoint>
<datapoint>34.874,165.15,-4.6549,-1.0528,4.1672,1.0764,-68.616,3.8945,68.726,3.0849,2.1575,0.22409,0.7854,-1.5251e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012266,140463,0,1.0526,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1549,287.06,99364,339.73,0.46453,0.46338</datapoint>
<datapoint>35.29,163.31,-4.186,1.1294,4.6583,1.2043,-69.475,3.8945,69.584,3.0856,1.984,0.41787,0.7854,-1.5442e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013711,157040,0,1.3155,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9796,287.08,99388,339.74,0.41519,0.46342</datapoint>
<datapoint>35.79,161.1,-4.668,-0.96412,4.1877,0.99642,-70.436,3.8945,70.543,3.0864,1.8582,0.25163,0.7854,-1.5656e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012326,141194,0,1.0633,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8649,287.09,99410,339.75,0.5,0.46347</datapoint>
<datapoint>36.183,159.36,-4.1978,1.1959,4.6716,1.2716,-71.133,3.8945,71.24,3.0869,1.6882,0.43223,0.7854,-1.581e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01375,157539,0,1.3236,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6748,287.1,99436,339.75,0.39321,0.46351</datapoint>
<datapoint>36.498,158,-4.4536,-0.81256,4.2458,1.5882,-71.732,3.8945,71.838,3.0874,2.1178,1.3646,0.7854,-1.5944e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012497,143200,0,1.0935,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3252,287.11,99456,339.76,0.31483,0.46356</datapoint>
<datapoint>36.998,155.8,-4.3466,0.21411,4.4583,0.50514,-72.848,3.8945,72.952,3.0882,2.3466,0.45752,0.7854,-1.6192e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013122,150380,0,1.2058,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3212,287.12,99472,339.77,0.5,0.4636</datapoint>
<datapoint>37.449,153.81,-4.4406,-0.20857,4.3745,1.1087,-73.796,3.8945,73.899,3.0889,1.8555,1.0889,0.7854,-1.6402e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012875,147578,0,1.1611,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8534,287.14,99498,339.78,0.451,0.46365</datapoint>
<datapoint>37.949,151.61,-4.3653,0.15056,4.4412,0.21738,-74.743,3.8945,74.845,3.0895,1.9339,0.1568,0.7854,-1.6613e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013071,149852,0,1.197,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9254,287.15,99521,339.78,0.5,0.46369</datapoint>
<datapoint>38.449,149.41,-4.4568,-0.18285,4.3656,0.20692,-75.722,3.8945,75.822,3.0902,1.9823,0.096871,0.7854,-1.6831e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012848,147326,0,1.1569,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9779,287.16,99547,339.79,0.5,0.46374</datapoint>
<datapoint>38.949,147.21,-4.3406,0.2324,4.4596,0.42662,-76.669,3.8945,76.768,3.0908,1.8035,0.35777,0.7854,-1.7041e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013124,150525,0,1.2075,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8235,287.18,99573,339.8,0.5,0.46378</datapoint>
<datapoint>39.449,145,-4.4847,-0.28824,4.3406,0.28928,-77.567,3.8945,77.665,3.0914,1.7912,0.024487,0.7854,-1.7241e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012774,146533,0,1.1442,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7923,287.19,99598,339.81,0.5,0.46383</datapoint>
<datapoint>39.949,142.81,-4.3013,0.36683,4.4893,0.58976,-78.521,3.8945,78.617,3.092,2.0221,0.4618,0.7854,-1.7453e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013211,151579,0,1.2242,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9948,287.21,99624,339.82,0.5,0.46387</datapoint>
<datapoint>40.449,140.6,-4.524,-0.44535,4.3061,0.62963,-79.476,3.8945,79.571,3.0926,1.7996,0.44508,0.7854,-1.7665e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012672,145419,0,1.1265,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8176,287.22,99650,339.83,0.5,0.46392</datapoint>
<datapoint>40.949,138.4,-4.2522,0.54355,4.5258,0.61789,-80.413,3.8945,80.507,3.0932,1.9465,0.29384,0.7854,-1.7873e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013318,152862,0,1.2446,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.928,287.24,99676,339.84,0.5,0.46397</datapoint>
<datapoint>41.449,136.2,-4.579,-0.65359,4.2572,0.79015,-81.441,3.8945,81.534,3.0938,2.1685,0.44401,0.7854,-1.8102e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012527,143814,0,1.1015,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1528,287.25,99702,339.84,0.5,0.46401</datapoint>
<datapoint>41.937,134.06,-4.1808,0.81497,4.5867,1.0234,-82.427,3.8945,82.519,3.0944,1.8661,0.61907,0.7854,-1.8321e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013496,154974,0,1.2789,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9016,287.26,99728,339.85,0.48855,0.46406</datapoint>
<datapoint>42.404,132,-4.6254,-0.95145,4.1872,1.0699,-83.246,3.8945,83.337,3.0948,1.6373,0.48941,0.7854,-1.8503e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01232,141498,0,1.0661,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.635,287.28,99753,339.86,0.46732,0.4641</datapoint>
<datapoint>42.887,129.89,-4.1337,1.0192,4.6261,1.0364,-84.057,3.8945,84.148,3.0953,1.728,0.18789,0.7854,-1.8683e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013612,156356,0,1.3015,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7176,287.29,99777,339.87,0.48244,0.46415</datapoint>
<datapoint>43.272,128.21,-4.5714,-1.1369,4.1446,1.2989,-84.676,3.8945,84.765,3.0956,1.4861,0.62829,0.7854,-1.8821e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012194,140102,0,1.0449,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.4284,287.31,99802,339.88,0.38493,0.46419</datapoint>
<datapoint>43.772,126.02,-4.1781,0.7865,4.5786,0.98769,-85.494,3.8945,85.582,3.0961,1.7849,0.59746,0.7854,-1.9002e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013471,154795,0,1.2754,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.744,287.32,99821,339.88,0.5,0.46424</datapoint>
<datapoint>44.209,124.11,-4.5919,-0.94654,4.1891,1.1439,-86.335,3.8945,86.423,3.0965,2.0656,0.64223,0.7854,-1.9189e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012325,141648,0,1.0678,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0878,287.33,99847,339.89,0.43712,0.46428</datapoint>
<datapoint>44.709,121.92,-4.1572,0.86928,4.592,0.87387,-87.379,3.8945,87.466,3.0971,2.1103,0.089476,0.7854,-1.9421e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01351,155296,0,1.2834,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1041,287.34,99869,339.9,0.5,0.46433</datapoint>
<datapoint>45.149,119.99,-4.6167,-1.0431,4.1626,1.135,-88.265,3.8945,88.351,3.0975,1.9132,0.44748,0.7854,-1.9618e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012246,140799,0,1.0548,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8981,287.36,99895,339.91,0.44053,0.46437</datapoint>
<datapoint>45.572,118.12,-4.1908,1.0067,4.6243,1.1818,-89.13,3.8945,89.215,3.0979,2.1751,0.61908,0.7854,-1.9811e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013604,156437,0,1.302,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1776,287.37,99918,339.92,0.42308,0.46442</datapoint>
<datapoint>46.072,115.92,-4.6436,-0.90567,4.1925,0.94052,-90.186,3.8945,90.27,3.0984,2.0483,0.25366,0.7854,-2.0045e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012334,141851,0,1.0704,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0557,287.38,99940,339.92,0.5,0.46446</datapoint>
<datapoint>46.482,114.11,-4.1812,1.1293,4.6478,1.221,-90.986,3.8945,91.069,3.0988,1.8583,0.46409,0.7854,-2.0223e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013673,157283,0,1.3158,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8512,287.4,99966,339.93,0.40951,0.46451</datapoint>
<datapoint>46.928,112.15,-4.5929,-0.92407,4.1919,1.1221,-91.877,3.8945,91.96,3.0992,2.1419,0.63662,0.7854,-2.0421e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012331,141874,0,1.0705,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.158,287.41,99987,339.94,0.44558,0.46455</datapoint>
<datapoint>47.428,109.97,-4.1489,0.88799,4.5938,0.91283,-92.975,3.8945,93.056,3.0997,2.2477,0.21151,0.7854,-2.0665e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013513,155500,0,1.2858,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2328,287.42,100010,339.95,0.5,0.4646</datapoint>
<datapoint>47.86,108.07,-4.6109,-1.0683,4.1542,1.1563,-93.905,3.8945,93.986,3.1001,2.0564,0.44234,0.7854,-2.0872e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01222,140644,0,1.0517,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0376,287.44,100035,339.96,0.43242,0.46465</datapoint>
<datapoint>48.31,106.1,-4.1669,0.98596,4.616,1.1104,-94.883,3.8945,94.963,3.1006,2.2864,0.51073,0.7854,-2.1089e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013578,156301,0,1.2988,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2746,287.45,100057,339.96,0.45029,0.46469</datapoint>
<datapoint>48.673,104.53,-4.5091,-0.94389,4.1937,1.3794,-95.646,3.8945,95.725,3.1009,1.9218,1.0059,0.7854,-2.1259e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012335,142021,0,1.0722,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8134,287.46,100081,339.97,0.36248,0.46474</datapoint>
<datapoint>49.173,102.33,-4.2557,0.50665,4.5091,0.51033,-96.599,3.8945,96.677,3.1013,1.8912,0.061199,0.7854,-2.1471e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013263,152723,0,1.2397,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.895,287.47,100099,339.98,0.5,0.46478</datapoint>
<datapoint>49.673,100.13,-4.5642,-0.61696,4.2561,0.62939,-97.56,3.8945,97.638,3.1017,1.9534,0.12444,0.7854,-2.1684e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012519,144178,0,1.1047,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9488,287.48,100125,339.99,0.5,0.46483</datapoint>
<datapoint>50.173,97.943,-4.1808,0.76676,4.5651,0.79494,-98.563,3.8945,98.64,3.1021,2.0583,0.20976,0.7854,-2.1907e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013427,154671,0,1.2712,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0439,287.5,100151,339.99,0.5,0.46487</datapoint>
<datapoint>50.673,95.737,-4.6456,-0.92961,4.1832,0.9771,-99.555,3.8945,99.631,3.1025,1.9078,0.30092,0.7854,-2.2128e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012304,141756,0,1.0677,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9165,287.51,100176,340,0.5,0.46492</datapoint>
<datapoint>51.107,93.827,-4.146,1.1498,4.6457,1.1508,-100.38,3.8945,100.45,3.1028,1.8877,0.046294,0.7854,-2.2311e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013663,157454,0,1.3171,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8882,287.53,100202,340.01,0.4345,0.46496</datapoint>
<datapoint>51.528,91.987,-4.5933,-1.0623,4.1537,1.1876,-101.22,3.8945,101.3,3.1031,2.1112,0.53094,0.7854,-2.2498e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012216,140799,0,1.0531,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1395,287.54,100225,340.02,0.42103,0.46501</datapoint>
<datapoint>51.934,90.201,-4.213,0.93768,4.606,1.2328,-102.01,3.8945,102.09,3.1034,1.7866,0.8003,0.7854,-2.2674e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013546,156154,0,1.2951,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7691,287.55,100246,340.03,0.40559,0.46505</datapoint>
<datapoint>52.434,87.997,-4.6048,-0.78374,4.2165,0.86564,-102.86,3.8945,102.93,3.1037,1.6029,0.36756,0.7854,-2.2862e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.0124,142967,0,1.0855,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.615,287.56,100267,340.03,0.5,0.4651</datapoint>
<datapoint>52.701,86.806,-4.3186,1.0729,4.6505,1.8738,-103.34,3.8945,103.41,3.1039,2.0128,1.5363,0.7854,-2.2969e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013676,157711,0,1.3208,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2532,287.58,100293,340.04,0.26683,0.46514</datapoint>
<datapoint>53.201,84.606,-4.482,-0.32681,4.3203,0.42428,-104.31,3.8945,104.39,3.1043,1.8775,0.27058,0.7854,-2.3185e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012705,146526,0,1.14,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8895,287.59,100307,340.05,0.5,0.46519</datapoint>
<datapoint>53.701,82.416,-4.2772,0.40953,4.4853,0.56629,-105.2,3.8945,105.28,3.1046,1.6819,0.39112,0.7854,-2.3383e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01319,152146,0,1.229,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7059,287.6,100333,340.06,0.5,0.46523</datapoint>
<datapoint>54.201,80.216,-4.5235,-0.4926,4.284,0.72128,-106.11,3.8945,106.18,3.1049,1.9454,0.52687,0.7854,-2.3585e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012598,145345,0,1.1214,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9239,287.61,100358,340.06,0.5,0.46528</datapoint>
<datapoint>54.701,78.031,-4.2167,0.61355,4.531,0.85705,-107.16,3.8945,107.23,3.1053,2.2446,0.59841,0.7854,-2.3818e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013323,153747,0,1.2546,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2052,287.63,100384,340.07,0.5,0.46533</datapoint>
<datapoint>55.201,75.828,-4.5943,-0.75515,4.2212,0.86347,-108.23,3.8945,108.3,3.1056,2.0352,0.41871,0.7854,-2.4055e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012412,143262,0,1.0892,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0495,287.64,100410,340.08,0.5,0.46537</datapoint>
<datapoint>55.606,74.045,-4.2064,0.95706,4.6063,1.2336,-109.12,3.8945,109.19,3.1059,2.3507,0.77838,0.7854,-2.4253e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013544,156357,0,1.2973,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3675,287.66,100436,340.09,0.40531,0.46542</datapoint>
<datapoint>56.106,71.842,-4.6035,-0.79426,4.2117,0.91495,-110.24,3.8945,110.3,3.1063,2.1236,0.45418,0.7854,-2.4502e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012384,142983,0,1.0847,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1387,287.67,100457,340.1,0.5,0.46546</datapoint>
<datapoint>56.583,69.759,-4.1351,0.98245,4.6062,1.0487,-111.21,3.8945,111.27,3.1066,1.9487,0.36684,0.7854,-2.4717e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013543,156400,0,1.2977,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9671,287.68,100482,340.11,0.47678,0.46551</datapoint>
<datapoint>57.034,67.782,-4.6329,-1.104,4.1354,1.1089,-112.1,3.8945,112.16,3.1069,1.9959,0.10453,0.7854,-2.4915e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012159,140438,0,1.0462,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9984,287.7,100507,340.11,0.45088,0.46555</datapoint>
<datapoint>57.479,65.831,-4.1349,1.1188,4.6331,1.1233,-112.97,3.8945,113.04,3.1071,1.9514,0.099955,0.7854,-2.511e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013622,157362,0,1.3134,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9535,287.71,100530,340.12,0.44513,0.4656</datapoint>
<datapoint>57.923,63.886,-4.6229,-1.099,4.1365,1.1259,-113.86,3.8945,113.93,3.1074,2.06,0.24473,0.7854,-2.5308e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012162,140517,0,1.0471,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0676,287.72,100553,340.13,0.44408,0.46564</datapoint>
<datapoint>58.373,61.916,-4.1376,1.0786,4.6243,1.1113,-114.82,3.8945,114.88,3.1077,2.1803,0.26723,0.7854,-2.552e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013595,157111,0,1.3089,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1735,287.73,100576,340.14,0.44994,0.4657</datapoint>
<datapoint>58.812,59.995,-4.6118,-1.0803,4.1411,1.1391,-115.81,3.8945,115.88,3.108,2.3388,0.36117,0.7854,-2.5741e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012175,140716,0,1.0499,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3515,287.75,100599,340.15,0.43894,0.46575</datapoint>
<datapoint>59.194,58.311,-4.209,1.0546,4.6235,1.3091,-116.65,3.8945,116.71,3.1082,2.0426,0.77557,0.7854,-2.5927e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013593,157131,0,1.3089,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0095,287.76,100621,340.15,0.38195,0.46579</datapoint>
<datapoint>59.694,56.109,-4.5978,-0.77759,4.2107,0.8192,-117.7,3.8945,117.76,3.1085,2.1715,0.25777,0.7854,-2.6161e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012379,143119,0,1.0858,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1628,287.77,100641,340.16,0.5,0.46584</datapoint>
<datapoint>60.164,54.053,-4.1396,0.97361,4.6014,1.0624,-118.68,3.8945,118.74,3.1088,1.9714,0.42514,0.7854,-2.6378e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013527,156424,0,1.2969,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9901,287.79,100667,340.17,0.47064,0.46588</datapoint>
<datapoint>60.63,52.008,-4.6394,-1.073,4.1396,1.0734,-119.6,3.8945,119.66,3.109,1.9854,0.030203,0.7854,-2.6582e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012169,140748,0,1.0499,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9857,287.8,100691,340.18,0.4658,0.46593</datapoint>
<datapoint>61.027,50.261,-4.1735,1.1747,4.6434,1.2607,-120.42,3.8945,120.48,3.1093,2.1669,0.45757,0.7854,-2.6765e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01365,157902,0,1.3212,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1788,287.81,100715,340.18,0.39662,0.46597</datapoint>
<datapoint>61.374,48.76,-4.4693,-0.85192,4.2084,1.4401,-121.1,3.8945,121.17,3.1094,1.7638,1.1611,0.7854,-2.6917e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012371,143129,0,1.0854,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6257,287.82,100736,340.19,0.34719,0.46602</datapoint>
<datapoint>61.874,46.574,-4.2761,0.38636,4.4728,0.55857,-122.04,3.8945,122.1,3.1097,1.9655,0.40339,0.7854,-2.7124e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013148,152136,0,1.2262,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9407,287.83,100753,340.2,0.5,0.46606</datapoint>
<datapoint>62.374,44.376,-4.5152,-0.47823,4.2774,0.53141,-123.05,3.8945,123.11,3.11,2.0813,0.23171,0.7854,-2.7349e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012573,145515,0,1.1217,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0717,287.85,100779,340.21,0.5,0.46611</datapoint>
<datapoint>62.874,42.193,-4.2165,0.59734,4.517,0.66756,-124.12,3.8945,124.19,3.1102,2.2304,0.29802,0.7854,-2.7589e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013277,153694,0,1.2512,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2107,287.86,100805,340.21,0.5,0.46615</datapoint>
<datapoint>63.374,39.993,-4.5837,-0.73426,4.217,0.74739,-125.22,3.8945,125.28,3.1105,2.1606,0.13947,0.7854,-2.7833e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012395,143509,0,1.0907,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1655,287.88,100830,340.22,0.5,0.4662</datapoint>
<datapoint>63.874,37.816,-4.1251,0.91719,4.5845,0.94002,-126.28,3.8945,126.34,3.1108,2.0577,0.20595,0.7854,-2.8067e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013475,156041,0,1.2893,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0726,287.89,100856,340.23,0.5,0.46624</datapoint>
<datapoint>64.32,35.866,-4.6248,-1.121,4.1251,1.1215,-127.19,3.8945,127.25,3.111,2.0419,0.035274,0.7854,-2.827e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012124,140427,0,1.0441,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0409,287.9,100881,340.24,0.44583,0.46629</datapoint>
<datapoint>64.765,33.917,-4.1289,1.1138,4.6252,1.1229,-128.09,3.8945,128.15,3.1112,1.9784,0.14274,0.7854,-2.8469e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013594,157476,0,1.3128,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9815,287.92,100904,340.25,0.44529,0.46633</datapoint>
<datapoint>65.219,31.93,-4.6287,-1.1018,4.1289,1.1021,-128.99,3.8945,129.05,3.1114,1.9903,0.026376,0.7854,-2.8669e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012135,140598,0,1.0464,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9909,287.93,100927,340.26,0.45368,0.46638</datapoint>
<datapoint>65.647,30.054,-4.1416,1.1385,4.6301,1.1685,-129.81,3.8945,129.87,3.1116,1.8778,0.26304,0.7854,-2.8853e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013607,157688,0,1.3161,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8791,287.94,100951,340.26,0.42791,0.46642</datapoint>
<datapoint>66.118,27.984,-4.6334,-1.043,4.1425,1.0602,-130.72,3.8945,130.78,3.1118,1.9675,0.19016,0.7854,-2.9055e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012174,141104,0,1.0537,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9676,287.95,100973,340.27,0.47161,0.46647</datapoint>
<datapoint>66.529,26.18,-4.1541,1.1672,4.6358,1.2175,-131.56,3.8945,131.62,3.112,2.1097,0.34626,0.7854,-2.9241e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013623,157929,0,1.3198,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1137,287.97,100997,340.28,0.41069,0.46651</datapoint>
<datapoint>67.029,23.979,-4.6485,-0.98873,4.1541,0.98894,-132.61,3.8945,132.67,3.1122,2.0994,0.020564,0.7854,-2.9475e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012208,141540,0,1.06,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1,287.98,101018,340.29,0.5,0.46656</datapoint>
<datapoint>67.429,22.22,-4.1535,1.2384,4.6491,1.2509,-133.44,3.8945,133.49,3.1124,2.0289,0.17644,0.7854,-2.9658e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013662,158430,0,1.3279,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0251,287.99,101044,340.29,0.3997,0.4666</datapoint>
<datapoint>67.901,20.15,-4.6158,-0.979,4.1578,1.0589,-134.35,3.8945,134.4,3.1126,1.8384,0.40341,0.7854,-2.9861e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012218,141708,0,1.0623,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.839,288.01,101064,340.3,0.47221,0.46665</datapoint>
<datapoint>68.222,18.725,-4.2502,1.1371,4.6374,1.5553,-134.99,3.8945,135.05,3.1128,2.1795,1.061,0.7854,-3.0005e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013627,158078,0,1.3217,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2859,288.02,101089,340.31,0.32149,0.46669</datapoint>
<datapoint>68.722,16.529,-4.5316,-0.56282,4.2534,0.66713,-136.04,3.8945,136.09,3.113,2.0004,0.35819,0.7854,-3.0237e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012498,145003,0,1.112,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0148,288.03,101105,340.32,0.5,0.46674</datapoint>
<datapoint>69.222,14.352,-4.1772,0.70869,4.5371,0.87726,-137.1,3.8945,137.16,3.1132,2.2589,0.51706,0.7854,-3.0474e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013332,154701,0,1.2656,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2232,288.04,101131,340.32,0.5,0.46678</datapoint>
<datapoint>69.722,12.154,-4.6158,-0.8771,4.1788,0.91004,-138.2,3.8945,138.26,3.1134,2.1376,0.24264,0.7854,-3.0718e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012279,142508,0,1.0738,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1454,288.06,101157,340.33,0.5,0.46683</datapoint>
<datapoint>70.136,10.338,-4.1584,1.1053,4.6204,1.2082,-139.13,3.8945,139.18,3.1136,2.3396,0.48802,0.7854,-3.0924e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013576,157594,0,1.313,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.344,288.07,101182,340.34,0.41384,0.46688</datapoint>
<datapoint>70.52,8.6737,-4.5076,-0.9091,4.1811,1.3015,-139.96,3.8945,140.01,3.1138,1.9817,0.93142,0.7854,-3.1108e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012285,142631,0,1.0754,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9042,288.08,101204,340.35,0.38416,0.46692</datapoint>
<datapoint>71.02,6.4941,-4.2109,0.59351,4.5079,0.60455,-140.94,3.8945,140.99,3.114,1.9242,0.11502,0.7854,-3.1325e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013245,153798,0,1.2503,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9319,288.09,101223,340.35,0.5,0.46697</datapoint>
<datapoint>71.52,4.2981,-4.5731,-0.72438,4.2132,0.78528,-141.94,3.8945,141.99,3.1142,2.0758,0.30323,0.7854,-3.1548e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012379,143767,0,1.0924,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0648,288.11,101249,340.36,0.5,0.46701</datapoint>
<datapoint>71.989,2.2563,-4.1443,0.91536,4.5791,1.0674,-142.85,3.8945,142.9,3.1143,1.8187,0.54898,0.7854,-3.175e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.013453,156277,0,1.2906,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8417,288.12,101275,340.37,0.46845,0.46706</datapoint>
<datapoint>72.481,0.09271,-4.6418,-1.0103,4.1445,1.0152,-143.76,3.8945,143.81,3.1145,1.868,0.1002,0.7854,-3.1952e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.012176,141469,0,1.0575,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8659,288.14,101299,340.38,0.4925,0.4671</datapoint>
<datapoint>72.879,-1.6572,-4.1512,1.2327,4.6429,1.2562,-144.48,3.8945,144.53,3.1146,1.7718,0.24186,0.7854,-3.2113e-5,NaN,NaN,NaN,NaN,0.12022,NaN,NaN,NaN,NaN,NaN,0.01364,158507,0,1.3274,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7663,288.15,101324,340.39,0.39802,0.46715</datapoint>
<event time="0.24061" type="launchrod"/>
<event time="1.6529" type="burnout"/>
<event time="6.6529" type="ejectioncharge"/>
<event time="6.6539" type="recoverydevicedeployment"/>
<event time="7.1316" type="apogee"/>
<event time="72.952" type="groundhit"/>
<event time="72.952" type="simulationend"/>
<datapoint>0,0,0,-7.9475,0,7.9475,0,0,0,0,0,0,0.7854,0,1.5708,0,0,0,0.14104,0.0040896,6.4547e-5,NaN,0.30258,NaN,0.006332,73583,0.26214,0,0.55586,0,0.39471,0.041144,0.12001,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,0.045,0.0015904,1.5708,0,NaN,288.15,101325,340.39,0.01,0.0035086</datapoint>
<datapoint>0.20997,0.64442,11.364,143.61,11.364,143.61,0,0,0,0,0,0,0.7854,0,0.15419,0,0,0,0.13878,0.0040221,6.4384e-5,NaN,0.29981,NaN,0.033785,392585,21.277,0.063413,0.42478,0.49225,0.26341,0.041224,0.12015,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,0.045,0.0015904,1.5708,0,NaN,288.15,101317,340.39,0.0088001,0.014565</datapoint>
<datapoint>0.42061,6.4645,39.152,69.786,39.155,69.835,-0.036436,-1.601e-4,0.036436,-3.1372,0.43883,2.6193,0.7854,-8.0984e-9,0.038987,27.656,0.022827,-0.019685,0.13355,0.0038568,6.4008e-5,0.29875,0.29303,0.12705,0.11512,1337023,11.272,0.64275,0.42402,0.43003,0.26,0.042289,0.12172,0.2366,0.030227,8.3509e-5,0,0.12479,0.4758,0.35101,1.4282e-5,0.045,0.0015904,1.5704,0.18016,NaN,288.11,101249,340.36,0.0025,0.054274</datapoint>
<datapoint>0.63061,16.071,51.851,54.919,51.861,54.973,-0.18554,0.0059813,0.18564,3.1094,0.9763,2.4315,0.7854,-4.124e-8,0.020987,45.941,-0.0088114,-0.040785,0.13088,0.0037672,6.3815e-5,0.30058,0.28935,0.24957,0.1524,1768473,9.5915,1.1203,0.42635,0.42818,0.25974,0.043587,0.12302,0.12181,0.030133,-4.6075e-4,0,0.033422,0.47617,0.44275,-1.2146e-6,0.045,0.0015904,1.5655,1.3224,NaN,288.05,101137,340.33,0.0025,0.098409</datapoint>
<datapoint>0.84061,28.117,62.652,48.59,62.667,48.612,-0.43316,0.043266,0.43531,3.042,1.3668,1.4718,0.7854,-9.6277e-8,0.0076338,57.185,0.011998,-0.029057,0.12841,0.0036814,6.3638e-5,0.30209,0.28583,0.3614,0.18413,2134491,9.1514,1.652,0.43287,0.43312,0.25947,0.048992,0.12441,0.042813,0.01546,3.0587e-5,0,0.017865,0.47657,0.45871,1.5432e-6,0.045,0.0015904,1.5625,1.3447,NaN,287.97,100995,340.28,0.0025,0.13691</datapoint>
<datapoint>1.0506,42.306,72.304,43.263,72.32,43.275,-0.72728,0.12853,0.73855,2.9667,1.5228,1.0355,0.7854,-1.6165e-7,0.0023184,66.576,-0.021054,-0.013488,0.12603,0.0035954,6.3466e-5,0.30277,0.28229,0.45515,0.21253,2460613,8.9164,2.227,0.43898,0.439,0.25917,0.053936,0.12587,0.012826,0.0057171,-2.1328e-4,0,0.011521,0.477,0.46548,-3.568e-6,0.045,0.0015904,1.5607,1.2482,NaN,287.88,100829,340.22,0.0025,0.18321</datapoint>
<datapoint>1.2606,58.404,80.812,37.669,80.828,37.681,-1.0292,0.26012,1.0615,2.894,1.6111,0.92347,0.7854,-2.2875e-7,0.0021591,74.624,0.0052186,0.013217,0.12372,0.0035084,6.3299e-5,0.30288,0.27872,0.53693,0.23758,2746862,8.6875,2.8134,0.4446,0.44462,0.25888,0.058384,0.12734,0.011946,0.0067898,-4.3092e-5,0,0.0078386,0.47743,0.46959,1.7547e-7,0.045,0.0015904,1.5598,1.2215,NaN,287.77,100640,340.16,0.0025,0.22334</datapoint>
<datapoint>1.4706,76.151,87.956,30.871,87.972,30.882,-1.3348,0.43008,1.4024,2.8299,1.6831,0.82961,0.7854,-2.9669e-7,0.0010757,81.277,0.0045608,0.019594,0.12149,0.0034218,6.3139e-5,0.30309,0.27515,0.62074,0.25864,2985680,8.3063,3.3638,0.44949,0.4495,0.25861,0.062188,0.1287,0.0059375,0.0040482,3.9299e-4,0,0.00529,0.47782,0.47253,1.1314e-7,0.045,0.0015904,1.559,1.1483,NaN,287.66,100432,340.09,0.0025,0.26182</datapoint>
<datapoint>1.6807,95.143,89.795,-39.068,89.811,39.068,-1.6298,0.6257,1.7458,2.775,1.7028,0.16446,0.7854,-3.6226e-7,5.5729e-4,84.587,-0.0073466,0.026407,0.11994,0.0033599,6.3027e-5,0.30317,0.27261,0.67911,0.26411,3043715,0,3.5098,0.45079,0.45079,0.25853,0.063186,0.12907,0.0030722,0.0024285,-9.5331e-5,0,-0.0045098,0.47793,0.48244,-2.8165e-7,0.045,0.0015904,1.5588,1.1317,NaN,287.53,100209,340.01,0.0025,0.29781</datapoint>
<datapoint>1.8907,113.18,82.149,-33.969,82.166,33.971,-1.9285,0.81698,2.0944,2.7409,1.6688,0.43221,0.7854,-4.2864e-7,0.0011133,78.11,0.0015719,0.031216,0.11994,0.0033599,6.3027e-5,0.30302,0.27261,0.67572,0.24167,2780683,0,2.8984,0.44554,0.44554,0.25883,0.059118,0.12759,0.0061431,0.0043666,6.6392e-5,0,-0.006522,0.4775,0.48402,1.5406e-8,0.045,0.0015904,1.5594,1.1006,NaN,287.41,99998,339.94,0.0025,0.33979</datapoint>
<datapoint>2.1007,129.71,75.453,-29.953,75.472,29.964,-2.2294,0.99393,2.4409,2.7222,1.6764,0.80556,0.7854,-4.9552e-7,0.0026559,72.098,0.013739,0.02073,0.11994,0.0033599,6.3027e-5,0.30277,0.27261,0.67021,0.22202,2550838,0,2.4171,0.44108,0.44112,0.25907,0.055611,0.12641,0.014709,0.0094778,2.6271e-4,0,-0.0069156,0.47715,0.48407,1.395e-6,0.045,0.0015904,1.5595,1.182,NaN,287.31,99804,339.88,0.0025,0.37857</datapoint>
<datapoint>2.3107,144.92,69.513,-26.735,69.535,26.736,-2.5491,1.161,2.801,2.7142,1.7491,0.2063,0.7854,-5.6657e-7,8.383e-4,66.703,-0.034607,-0.02203,0.11994,0.0033599,6.3027e-5,0.30292,0.27261,0.67357,0.20457,2347258,0,2.0306,0.43724,0.43724,0.25926,0.052541,0.12544,0.0046184,0.0032661,-1.0436e-4,0,-0.0073573,0.47687,0.48423,-1.0428e-5,0.045,0.0015904,1.5577,1.1451,NaN,287.21,99625,339.82,0.0025,0.42145</datapoint>
<datapoint>2.5207,158.95,64.183,-24.11,64.208,24.11,-2.8856,1.3249,3.1752,2.7111,1.7973,0.065966,0.7854,-6.4136e-7,0.0011136,61.821,-7.4835e-4,0.035752,0.11994,0.0033599,6.3027e-5,0.30284,0.27261,0.6718,0.18892,2164960,0,1.7156,0.43388,0.43388,0.25942,0.04982,0.12464,0.0061376,0.0041694,-4.4604e-4,0,-0.0078536,0.47664,0.48449,-5.7198e-9,0.045,0.0015904,1.5566,1.1844,NaN,287.12,99461,339.76,0.0025,0.46661</datapoint>
<datapoint>2.7307,171.91,59.355,-21.938,59.381,21.94,-3.2246,1.4848,3.55,2.7101,1.7578,0.21337,0.7854,-7.1672e-7,0.0012154,57.367,0.029361,-0.026092,0.11994,0.0033599,6.3027e-5,0.30279,0.27261,0.67065,0.17474,2000094,0,1.4553,0.4309,0.43091,0.25955,0.04738,0.12397,0.0066991,0.0046526,-2.8701e-4,0,-0.0084174,0.47645,0.48486,1.0295e-5,0.045,0.0015904,1.5575,1.1897,NaN,287.03,99309,339.71,0.0025,0.50515</datapoint>
<datapoint>2.9407,183.91,54.944,-20.124,54.97,20.126,-3.5544,1.6345,3.9122,2.7106,1.6885,0.25769,0.7854,-7.9002e-7,0.0012453,53.276,0.013728,-0.036602,0.11994,0.0033599,6.3027e-5,0.30275,0.27261,0.66983,0.16177,1849727,0,1.2379,0.42824,0.42825,0.25967,0.045171,0.1234,0.0068627,0.0047076,3.5909e-4,0,-0.0090634,0.47628,0.48535,2.6266e-6,0.045,0.0015904,1.5586,1.1942,NaN,286.95,99168,339.66,0.0025,0.54314</datapoint>
<datapoint>3.1507,195.01,50.883,-18.597,50.912,18.606,-3.8828,1.7709,4.2676,2.7137,1.7157,0.56769,0.7854,-8.6302e-7,0.0044291,49.495,-0.010694,-0.043478,0.11994,0.0033599,6.3027e-5,0.30236,0.27261,0.66114,0.14984,1711588,0,1.0549,0.42586,0.42595,0.25976,0.043179,0.12292,0.024614,0.015914,2.4232e-4,0,-0.0098025,0.47614,0.48595,-1.8583e-6,0.045,0.0015904,1.558,1.1881,NaN,286.88,99038,339.62,0.0025,0.58206</datapoint>
<datapoint>3.3607,205.3,47.114,-17.327,47.151,17.331,-4.2372,1.9003,4.6439,2.72,1.8796,0.3788,0.7854,-9.4179e-7,0.0038399,45.978,0.023481,-0.011531,0.11994,0.0033599,6.3027e-5,0.3024,0.27261,0.66207,0.13876,1583529,0,0.90214,0.42523,0.42529,0.25985,0.04288,0.1225,0.021303,0.014435,9.0319e-5,0,-0.01071,0.47602,0.48673,1.0451e-5,0.045,0.0015904,1.5554,1.2831,NaN,286.82,98917,339.58,0.0025,0.63392</datapoint>
<datapoint>3.5707,214.82,43.593,-16.231,43.635,16.232,-4.616,2.0321,5.0435,2.7269,1.9285,0.17564,0.7854,-1.026e-6,0.0025463,42.682,-0.01464,0.0052465,0.11994,0.0033599,6.3027e-5,0.30253,0.27261,0.66486,0.1284,1464122,0,0.77059,0.42468,0.4247,0.25992,0.042613,0.12214,0.014075,0.0089246,3.4842e-4,0,-0.011729,0.47592,0.48765,-4.745e-6,0.045,0.0015904,1.5534,1.2551,NaN,286.75,98806,339.54,0.0025,0.67126</datapoint>
<datapoint>3.7807,223.62,40.286,-15.281,40.332,15.281,-4.9997,2.1654,5.4485,2.7329,1.9305,0.11162,0.7854,-1.1113e-6,0.0014248,39.585,-0.017248,-0.011167,0.11994,0.0033599,6.3027e-5,0.30264,0.27261,0.6673,0.11868,1352141,0,0.65678,0.42419,0.4242,0.25998,0.042374,0.12183,0.0078509,0.0047997,-1.8173e-4,0,-0.012954,0.47583,0.48878,-7.7116e-6,0.045,0.0015904,1.5542,1.238,NaN,286.7,98702,339.51,0.0025,0.70741</datapoint>
<datapoint>3.99,231.72,37.177,-14.459,37.227,14.46,-5.382,2.2959,5.8512,2.7384,1.9404,0.14744,0.7854,-1.1962e-6,0.001611,36.672,-0.0036605,-0.015944,0.11994,0.0033599,6.3027e-5,0.3026,0.27261,0.66647,0.10953,1247034,0,0.55835,0.42375,0.42377,0.26004,0.042159,0.12156,0.0088809,0.0062499,-3.3972e-6,0,-0.014399,0.47575,0.49015,-4.0783e-7,0.045,0.0015904,1.5532,1.2166,NaN,286.64,98607,339.48,0.002577,0.74715</datapoint>
<datapoint>4.1988,239.18,34.233,-13.745,34.289,13.746,-5.7692,2.4225,6.2572,2.7441,1.9581,0.078391,0.7854,-1.2823e-6,1.502e-4,33.915,-0.0079716,-0.0093994,0.11994,0.0033599,6.3027e-5,0.30275,0.27261,0.66989,0.10087,1147630,0,0.47265,0.42337,0.42337,0.26008,0.041964,0.12132,8.2463e-4,5.7644e-5,4.4173e-4,0,-0.016144,0.47568,0.49183,-2.2811e-6,0.045,0.0015904,1.5525,1.254,NaN,286.6,98520,339.45,0.0027126,0.79199</datapoint>
<datapoint>4.4074,246.02,31.432,-13.125,31.497,13.134,-6.1626,2.5452,6.6675,2.7499,2.0116,0.4937,0.7854,-1.3697e-6,0.010722,31.298,-0.014897,-0.0106,0.11994,0.0033599,6.3027e-5,0.30156,0.27261,0.64331,0.092635,1053312,0,0.3985,0.42307,0.42356,0.26013,0.041834,0.12112,0.060548,0.039053,3.9265e-4,0,-0.01823,0.47562,0.49385,-9.4461e-6,0.045,0.0015904,1.5506,1.2767,NaN,286.55,98440,339.42,0.0028505,0.82467</datapoint>
<datapoint>4.6171,252.33,28.74,-12.576,28.813,12.576,-6.5736,2.6663,7.0937,2.7563,2.0567,0.033406,0.7854,-1.4611e-6,8.3867e-4,28.786,0.0088153,0.014239,0.11994,0.0033599,6.3027e-5,0.30265,0.27261,0.66761,0.084698,962519,0,0.3323,0.42282,0.42282,0.26016,0.041721,0.12093,0.0046125,0.0026567,3.089e-4,0,-0.020884,0.47557,0.49645,3.9573e-6,0.045,0.0015904,1.5493,1.3204,NaN,286.51,98366,339.39,0.0029787,0.85732</datapoint>
<datapoint>4.8272,258.09,26.149,-12.096,26.229,12.096,-6.9875,2.7857,7.5224,2.7622,2.0404,0.096619,0.7854,-1.5531e-6,0.0023527,26.378,0.0031168,-0.015396,0.11994,0.0033599,6.3027e-5,0.30247,0.27261,0.66355,0.077071,875385,0,0.27482,0.42259,0.42261,0.26019,0.04162,0.12077,0.012991,0.008232,3.2171e-4,0,-0.02415,0.47552,0.49967,5.9756e-7,0.045,0.0015904,1.55,1.3214,NaN,286.47,98298,339.37,0.0031131,0.88755</datapoint>
<datapoint>5.0369,263.32,23.657,-11.68,23.744,11.683,-7.3982,2.901,7.9467,2.7679,2.0227,0.25532,0.7854,-1.6444e-6,0.010032,24.075,0.018576,-0.010028,0.11994,0.0033599,6.3027e-5,0.3016,0.27261,0.64436,0.069732,791662,0,0.22494,0.42238,0.42281,0.26022,0.041528,0.12063,0.056538,0.036227,7.8958e-5,0,-0.028312,0.47548,0.5038,2.5931e-5,0.045,0.0015904,1.5502,1.3357,NaN,286.44,98237,339.35,0.0032458,0.91849</datapoint>
<datapoint>5.2454,268,21.26,-11.316,21.351,11.318,-7.7989,3.0103,8.3597,2.7732,1.9649,0.18678,0.7854,-1.7334e-6,0.0083488,21.876,0.0075043,0.0069381,0.11994,0.0033599,6.3027e-5,0.30178,0.27261,0.6483,0.062671,711192,0,0.18146,0.4222,0.4225,0.26025,0.041445,0.12051,0.046842,0.030862,-4.4952e-4,0,-0.033713,0.47545,0.50916,5.24e-6,0.045,0.0015904,1.5535,1.3148,NaN,286.41,98182,339.33,0.0033765,0.94841</datapoint>
<datapoint>5.4556,272.22,18.916,-11,19.018,11.002,-8.1969,3.1133,8.7682,2.7786,1.9601,0.18846,0.7854,-1.8219e-6,0.010658,19.748,0.0082553,0.012062,0.11994,0.0033599,6.3027e-5,0.30152,0.27261,0.64255,0.055768,632616,0,0.14362,0.42204,0.42252,0.26027,0.04137,0.1204,0.060162,0.038151,2.1641e-4,0,-0.040906,0.47542,0.51632,8.009e-6,0.045,0.0015904,1.5544,1.4151,NaN,286.38,98132,339.32,0.0035162,0.97529</datapoint>
<datapoint>5.6672,275.98,16.618,-10.727,16.734,10.728,-8.6004,3.2104,9.1801,2.7843,1.9649,0.16459,0.7854,-1.9116e-6,0.012283,17.689,-0.020647,-0.0018705,0.11994,0.0033599,6.3027e-5,0.30134,0.27261,0.63853,0.048996,555611,0,0.11081,0.4219,0.42254,0.26029,0.041305,0.12031,0.069632,0.044694,-2.3611e-4,0,-0.05086,0.47539,0.52625,-6.4909e-5,0.045,0.0015904,1.5524,1.5489,NaN,286.36,98088,339.3,0.0036654,1.0016</datapoint>
<datapoint>5.877,279.23,14.392,-10.497,14.53,10.499,-9.0053,3.3011,9.5913,2.7902,1.9948,0.18148,0.7854,-2.0016e-6,0.018307,15.735,0.017831,-0.032334,0.11994,0.0033599,6.3027e-5,0.3007,0.27261,0.62426,0.042444,481166,0,0.083252,0.4218,0.42319,0.2603,0.041267,0.12023,0.10542,0.066008,-2.8134e-4,0,-0.064876,0.47537,0.54025,6.4519e-5,0.045,0.0015904,1.5509,1.4675,NaN,286.34,98050,339.29,0.0038307,1.0264</datapoint>
<datapoint>6.0888,282.04,12.19,-10.302,12.355,10.303,-9.4207,3.3881,10.011,2.7963,2.0108,0.11582,0.7854,-2.0939e-6,0.016188,13.851,-0.023669,0.010238,0.11994,0.0033599,6.3027e-5,0.30092,0.27261,0.6291,0.03595,407443,0,0.059788,0.42268,0.42377,0.26128,0.041234,0.12017,0.092701,0.05853,-1.5799e-4,0,-0.085987,0.47535,0.56134,-1.5847e-4,0.045,0.0015904,1.549,1.7146,NaN,286.32,98017,339.28,0.0040301,1.0565</datapoint>
<datapoint>6.3005,284.39,10.025,-10.15,10.227,10.15,-9.8398,3.4712,10.434,2.8025,2.0194,0.082544,0.7854,-2.187e-6,0.016465,12.072,0.032043,-0.0024512,0.11994,0.0033599,6.3027e-5,0.30089,0.27261,0.62839,0.029571,335079,0,0.041538,0.4341,0.43526,0.27278,0.041207,0.12011,0.094353,0.058991,-3.0568e-4,0,-0.11932,0.47534,0.59465,4.2926e-4,0.045,0.0015904,1.549,1.5763,NaN,286.3,97990,339.27,0.0042935,1.1</datapoint>
<datapoint>6.5104,286.28,7.9082,-10.027,8.1604,10.027,-10.256,3.5498,10.853,2.8084,2.0129,0.069348,0.7854,-2.2795e-6,0.022109,10.433,-0.012989,-0.039165,0.11994,0.0033599,6.3027e-5,0.3003,0.27261,0.61535,0.023337,264388,0,0.026808,0.44901,0.45115,0.28776,0.041184,0.12007,0.12855,0.079441,0.0015161,0,-0.17579,0.47532,0.65112,-1.1327e-4,0.045,0.0015904,1.5453,1.8112,NaN,286.29,97967,339.26,0.0046804,1.1214</datapoint>
<datapoint>6.711,287.63,4.9523,-24.683,5.463,24.701,-10.653,3.6206,11.252,2.814,2.0187,0.95134,0.7854,-2.3678e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.016103,182415,0,1.7881,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1263,286.28,97953,339.26,0.020242,1.1365</datapoint>
<datapoint>6.9356,288.31,1.4543,-11.738,1.9805,11.743,-11.11,3.6755,11.702,2.8221,2.0761,0.3186,0.7854,-2.4694e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0058378,66126,0,0.23499,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2938,286.28,97945,339.25,0.04258,1.1373</datapoint>
<datapoint>7.1316,288.39,-0.54553,-9.8,0.23559,9.8,-11.517,3.7141,12.101,2.8296,2.0889,0.027199,0.7854,-2.5598e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,6.9442e-4,7865.8,0,0.003325,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2062,286.28,97942,339.25,0.05102,1.1378</datapoint>
<datapoint>7.3604,288.03,-2.5453,-7.7079,2.0529,7.71,-11.993,3.7555,12.567,2.8381,2.0887,0.17993,0.7854,-2.6657e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0060513,68546,0,0.2525,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.086,286.28,97945,339.25,0.064851,1.1387</datapoint>
<datapoint>7.5332,287.49,-3.5444,-5.1677,3.0491,5.1735,-12.355,3.7806,12.92,2.8446,2.1057,0.24407,0.7854,-2.7461e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0089877,101811,0,0.55702,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1546,286.28,97949,339.26,0.096647,1.139</datapoint>
<datapoint>7.6747,286.96,-4.0426,-3.5232,3.5482,3.5354,-12.65,3.7962,13.208,2.8501,2.0773,0.29299,0.7854,-2.8117e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.010459,118478,0,0.75432,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.995,286.28,97953,339.26,0.14143,1.1391</datapoint>
<datapoint>7.9758,285.67,-4.5355,-1.6364,4.045,1.6602,-13.266,3.816,13.804,2.8615,2.0136,0.28038,0.7854,-2.9486e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.011923,135073,0,0.98039,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9735,286.28,97959,339.26,0.30116,1.1392</datapoint>
<datapoint>8.4758,283.46,-4.2993,0.47225,4.5356,0.47963,-14.273,3.824,14.776,2.8798,2.0135,0.083811,0.7854,-3.1723e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013369,151470,0,1.2328,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0135,286.29,97975,339.26,0.5,1.1393</datapoint>
<datapoint>8.9758,281.24,-4.5818,-0.565,4.3009,0.61756,-15.311,3.8229,15.781,2.8969,2.1381,0.24931,0.7854,-3.403e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012677,143657,0,1.1087,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1294,286.31,98001,339.27,0.5,1.1395</datapoint>
<datapoint>9.4758,279.03,-4.238,0.68775,4.5819,0.68915,-16.374,3.823,16.814,2.9122,2.1161,0.043898,0.7854,-3.6394e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013505,153069,0,1.2586,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1189,286.32,98027,339.28,0.5,1.1397</datapoint>
<datapoint>9.9269,277.04,-4.5957,-0.79327,4.2536,1.1086,-17.25,3.823,17.668,2.9235,1.7668,0.77443,0.7854,-3.834e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012537,142126,0,1.0849,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7519,286.34,98052,339.29,0.45102,1.1398</datapoint>
<datapoint>10.427,274.84,-4.2115,0.76845,4.6013,0.92765,-18.198,3.823,18.595,2.9345,2.0267,0.51964,0.7854,-4.0448e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013561,153768,0,1.2698,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9927,286.35,98076,339.3,0.5,1.1401</datapoint>
<datapoint>10.927,272.62,-4.6774,-0.93182,4.2128,0.95701,-19.184,3.823,19.561,2.9449,1.9176,0.21812,0.7854,-4.264e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012416,140809,0,1.0646,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9231,286.36,98102,339.31,0.5,1.1402</datapoint>
<datapoint>11.313,270.9,-4.2315,1.1548,4.6841,1.2949,-19.968,3.823,20.331,2.9524,2.1438,0.58591,0.7854,-4.4383e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013805,156590,0,1.3165,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1676,286.38,98128,339.32,0.38613,1.1403</datapoint>
<datapoint>11.813,268.68,-4.6479,-0.83273,4.2381,0.97055,-20.978,3.823,21.323,2.9613,1.8946,0.49852,0.7854,-4.6627e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01249,141698,0,1.0779,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9087,286.39,98148,339.32,0.5,1.1404</datapoint>
<datapoint>12.299,266.54,-4.1587,1.0076,4.6488,1.0298,-21.923,3.823,22.254,2.9689,1.9977,0.21246,0.7854,-4.8727e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0137,155458,0,1.2972,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9859,286.4,98174,339.33,0.48555,1.1405</datapoint>
<datapoint>12.67,264.92,-4.5738,-1.1167,4.1741,1.3449,-22.614,3.823,22.935,2.9741,1.7191,0.74954,0.7854,-5.0263e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012301,139608,0,1.046,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.639,286.42,98199,339.34,0.37177,1.1407</datapoint>
<datapoint>13.086,263.07,-4.2777,0.7117,4.5932,1.2018,-23.413,3.823,23.723,2.9797,2.122,0.9684,0.7854,-5.2039e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013535,153643,0,1.2668,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1402,286.43,98218,339.35,0.41604,1.1408</datapoint>
<datapoint>13.586,260.86,-4.5976,-0.63982,4.2792,0.68471,-24.443,3.823,24.74,2.9864,2.0001,0.24384,0.7854,-5.4329e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01261,143163,0,1.0997,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0082,286.44,98240,339.35,0.5,1.1409</datapoint>
<datapoint>14.086,258.65,-4.2069,0.78137,4.5978,0.78824,-25.456,3.823,25.742,2.9925,2.052,0.10385,0.7854,-5.6581e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013549,153849,0,1.2699,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0452,286.45,98266,339.36,0.5,1.141</datapoint>
<datapoint>14.584,256.45,-4.6707,-0.93201,4.2107,1.0049,-26.431,3.823,26.706,2.9979,1.865,0.37581,0.7854,-5.8747e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012407,140919,0,1.0653,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8738,286.47,98291,339.37,0.49755,1.1411</datapoint>
<datapoint>14.917,254.96,-4.2829,1.1653,4.6881,1.5025,-27.104,3.823,27.372,3.0015,2.1806,0.94841,0.7854,-6.0243e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013814,156923,0,1.3208,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2688,286.48,98317,339.38,0.33279,1.1412</datapoint>
<datapoint>15.417,252.74,-4.5893,-0.61283,4.2833,0.62709,-28.211,3.823,28.469,3.0069,2.2471,0.13295,0.7854,-6.2703e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012621,143391,0,1.1027,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2426,286.49,98335,339.38,0.5,1.1414</datapoint>
<datapoint>15.917,250.54,-4.2109,0.75677,4.5919,0.8369,-29.29,3.823,29.538,3.0118,2.0684,0.35736,0.7854,-6.5101e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01353,153748,0,1.2676,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0918,286.51,98361,339.39,0.5,1.1415</datapoint>
<datapoint>16.403,248.38,-4.6502,-0.90285,4.2173,1.0275,-30.354,3.823,30.594,3.0163,2.3071,0.49056,0.7854,-6.7467e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012426,141229,0,1.0694,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3004,286.52,98387,339.4,0.48661,1.1416</datapoint>
<datapoint>16.841,246.45,-4.1918,1.0471,4.6543,1.1419,-31.321,3.823,31.553,3.0201,2.1076,0.45568,0.7854,-6.9616e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013713,155892,0,1.3028,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1119,286.54,98412,339.41,0.43785,1.1417</datapoint>
<datapoint>17.338,244.24,-4.6849,-0.99189,4.1925,1.0057,-32.389,3.823,32.614,3.0241,2.1902,0.16612,0.7854,-7.199e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012352,140445,0,1.0573,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1866,286.55,98435,339.42,0.49716,1.1418</datapoint>
<datapoint>17.714,242.57,-4.2276,1.2173,4.6905,1.331,-33.174,3.823,33.393,3.0269,1.988,0.53834,0.7854,-7.3734e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013819,157154,0,1.3237,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9614,286.56,98460,339.43,0.37565,1.142</datapoint>
<datapoint>18.214,240.35,-4.6405,-0.82572,4.2337,0.957,-34.107,3.823,34.321,3.03,1.7461,0.48376,0.7854,-7.5809e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012473,141869,0,1.0786,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7602,286.57,98480,339.43,0.5,1.1421</datapoint>
<datapoint>18.696,238.23,-4.1568,1.0036,4.6418,1.0375,-34.979,3.823,35.188,3.0327,1.8727,0.26274,0.7854,-7.7747e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013675,155572,0,1.2969,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8589,286.59,98506,339.44,0.48195,1.1422</datapoint>
<datapoint>19.094,236.49,-4.6,-1.1137,4.1661,1.2563,-35.679,3.823,35.883,3.0349,1.6414,0.58124,0.7854,-7.9302e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012273,139649,0,1.0448,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.5947,286.6,98531,339.45,0.398,1.1423</datapoint>
<datapoint>19.531,234.56,-4.2311,0.8448,4.6121,1.1448,-36.469,3.823,36.669,3.0371,1.9788,0.77252,0.7854,-8.1059e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013587,154622,0,1.2808,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.975,286.61,98551,339.46,0.43677,1.1425</datapoint>
<datapoint>20.02,232.39,-4.6193,-0.79426,4.2419,1.0228,-37.36,3.823,37.555,3.0396,1.6638,0.64446,0.7854,-8.3038e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012496,142231,0,1.0836,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6762,286.63,98574,339.46,0.48884,1.1429</datapoint>
<datapoint>20.52,230.2,-4.1637,0.91132,4.6197,0.9229,-38.21,3.823,38.401,3.0419,1.7366,0.14574,0.7854,-8.4927e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013609,154928,0,1.2855,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7266,286.64,98599,339.47,0.5,1.143</datapoint>
<datapoint>20.929,228.4,-4.605,-1.0788,4.1727,1.2223,-38.968,3.823,39.155,3.0438,1.9717,0.57457,0.7854,-8.6613e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012291,139959,0,1.049,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0108,286.65,98625,339.48,0.40908,1.1431</datapoint>
<datapoint>21.429,226.21,-4.1751,0.85983,4.6101,0.99683,-39.891,3.823,40.074,3.046,1.7195,0.50434,0.7854,-8.8664e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01358,154653,0,1.2807,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7539,286.67,98646,339.49,0.5,1.1432</datapoint>
<datapoint>21.895,224.15,-4.661,-1.0429,4.1768,1.0731,-40.665,3.823,40.844,3.0479,1.6017,0.25277,0.7854,-9.0384e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012303,140140,0,1.0515,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.5991,286.68,98672,339.5,0.46593,1.1433</datapoint>
<datapoint>22.286,222.41,-4.2184,1.1292,4.6678,1.2757,-41.338,3.823,41.515,3.0494,1.8343,0.59347,0.7854,-9.1881e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013749,156641,0,1.3135,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8547,286.69,98696,339.51,0.39195,1.1434</datapoint>
<datapoint>22.786,220.19,-4.6486,-0.86041,4.2185,0.86178,-42.249,3.823,42.422,3.0514,1.81,0.048713,0.7854,-9.3906e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012425,141580,0,1.0729,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8114,286.7,98716,339.51,0.5,1.1435</datapoint>
<datapoint>23.257,218.12,-4.1496,1.0595,4.6487,1.0616,-43.094,3.823,43.263,3.0531,1.7781,0.067728,0.7854,-9.5784e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013692,156047,0,1.3032,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.781,286.72,98742,339.52,0.47097,1.1436</datapoint>
<datapoint>23.681,216.26,-4.6324,-1.1409,4.1522,1.1815,-43.874,3.823,44.04,3.0547,1.908,0.30705,0.7854,-9.7517e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012229,139404,0,1.0399,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9251,286.73,98767,339.53,0.42321,1.1438</datapoint>
<datapoint>24.12,214.32,-4.1921,1.0013,4.6382,1.1369,-44.765,3.823,44.928,3.0564,2.1448,0.5385,0.7854,-9.9498e-6,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01366,155742,0,1.2978,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1389,286.74,98789,339.54,0.43979,1.1439</datapoint>
<datapoint>24.62,212.11,-4.6744,-0.96462,4.1922,0.96776,-45.847,3.823,46.007,3.0584,2.1838,0.077911,0.7854,-1.019e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012347,140789,0,1.0605,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1818,286.76,98811,339.54,0.5,1.144</datapoint>
<datapoint>25.041,210.25,-4.1745,1.1887,4.6744,1.1889,-46.768,3.823,46.924,3.06,2.1929,0.021669,0.7854,-1.0395e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013766,157009,0,1.3187,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.193,286.77,98837,339.55,0.42056,1.1441</datapoint>
<datapoint>25.506,208.19,-4.6537,-1.0303,4.177,1.0749,-47.755,3.823,47.908,3.0617,2.0505,0.30623,0.7854,-1.0614e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012301,140322,0,1.0532,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0472,286.78,98859,339.56,0.46518,1.1442</datapoint>
<datapoint>25.92,206.36,-4.1953,1.1065,4.6583,1.2069,-48.563,3.823,48.713,3.063,1.8508,0.48188,0.7854,-1.0794e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013718,156515,0,1.3101,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.845,286.8,98883,339.57,0.41429,1.1443</datapoint>
<datapoint>26.323,204.6,-4.5592,-0.904,4.2145,1.2421,-49.377,3.823,49.525,3.0643,2.1937,0.8518,0.7854,-1.0975e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012411,141625,0,1.0726,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2523,286.81,98905,339.58,0.40255,1.1444</datapoint>
<datapoint>26.73,202.8,-4.271,0.70884,4.58,1.2295,-50.352,3.823,50.497,3.0658,2.6022,1.0045,0.7854,-1.1192e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013487,153928,0,1.2669,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.6293,286.82,98925,339.58,0.40668,1.1445</datapoint>
<datapoint>27.135,201.02,-4.4958,-0.5542,4.3011,1.2324,-51.317,3.823,51.46,3.0672,2.1557,1.1007,0.7854,-1.1406e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012666,144574,0,1.1175,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0941,286.83,98946,339.59,0.40572,1.1446</datapoint>
<datapoint>27.635,198.82,-4.3028,0.38603,4.5005,0.60373,-52.337,3.823,52.477,3.0687,1.9236,0.46419,0.7854,-1.1633e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013252,151297,0,1.2237,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9509,286.84,98967,339.6,0.5,1.1448</datapoint>
<datapoint>28.135,196.61,-4.5408,-0.47609,4.3037,0.51186,-53.275,3.823,53.412,3.07,1.8296,0.18799,0.7854,-1.1841e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012673,144706,0,1.1192,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8369,286.86,98993,339.61,0.5,1.1448</datapoint>
<datapoint>28.635,194.42,-4.2445,0.59264,4.5442,0.71672,-54.241,3.823,54.375,3.0712,2.0311,0.40308,0.7854,-1.2056e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013381,152822,0,1.2481,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0056,286.87,99019,339.61,0.5,1.145</datapoint>
<datapoint>29.135,192.2,-4.6047,-0.72043,4.2467,0.77716,-55.22,3.823,55.352,3.0725,1.8854,0.29149,0.7854,-1.2273e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012504,142840,0,1.0903,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8949,286.89,99045,339.62,0.5,1.1451</datapoint>
<datapoint>29.635,190.01,-4.1628,0.88384,4.6048,0.88431,-56.159,3.823,56.289,3.0736,1.8708,0.029015,0.7854,-1.2482e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013558,154910,0,1.2821,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8729,286.9,99071,339.63,0.5,1.1452</datapoint>
<datapoint>30.059,188.16,-4.6077,-1.0511,4.1707,1.1812,-56.902,3.823,57.031,3.0745,1.6427,0.53892,0.7854,-1.2648e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01228,140331,0,1.052,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6146,286.91,99096,339.64,0.42329,1.1453</datapoint>
<datapoint>30.449,186.43,-4.242,0.93724,4.6229,1.2811,-57.477,3.823,57.604,3.0752,1.3019,0.87339,0.7854,-1.2775e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013611,155571,0,1.2928,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.2681,286.93,99118,339.65,0.39029,1.1454</datapoint>
<datapoint>30.949,184.22,-4.6058,-0.72767,4.2427,0.74629,-58.149,3.823,58.274,3.0759,1.3847,0.16567,0.7854,-1.2925e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012491,142792,0,1.089,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.3793,286.94,99138,339.65,0.5,1.1455</datapoint>
<datapoint>31.314,182.6,-4.2619,0.94259,4.6255,1.3706,-58.72,3.823,58.844,3.0766,1.7477,0.99497,0.7854,-1.3051e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013618,155703,0,1.2947,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8111,286.95,99164,339.66,0.36481,1.1456</datapoint>
<datapoint>31.814,180.39,-4.58,-0.63623,4.2638,0.69114,-59.628,3.823,59.75,3.0776,1.8827,0.26998,0.7854,-1.3253e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012553,143545,0,1.1003,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8732,286.96,99183,339.67,0.5,1.1457</datapoint>
<datapoint>32.238,178.52,-4.2343,0.81533,4.5947,1.1792,-60.503,3.823,60.623,3.0785,2.2439,0.85188,0.7854,-1.3448e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013527,154715,0,1.278,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.25,286.98,99209,339.68,0.42402,1.1458</datapoint>
<datapoint>32.738,176.31,-4.61,-0.75141,4.236,0.7939,-61.592,3.823,61.711,3.0796,2.1158,0.25626,0.7854,-1.369e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01247,142656,0,1.0864,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.124,286.99,99231,339.69,0.5,1.1459</datapoint>
<datapoint>33.238,174.12,-4.1473,0.92533,4.6103,0.93411,-62.634,3.823,62.751,3.0806,2.0519,0.12776,0.7854,-1.3922e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013572,155289,0,1.2872,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0609,287,99257,339.69,0.5,1.146</datapoint>
<datapoint>33.684,172.16,-4.6471,-1.1193,4.1474,1.1199,-63.554,3.823,63.669,3.0815,2.0682,0.036594,0.7854,-1.4126e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012209,139719,0,1.0419,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0693,287.02,99283,339.7,0.44649,1.1461</datapoint>
<datapoint>34.126,170.21,-4.1586,1.1048,4.6482,1.1308,-64.445,3.823,64.558,3.0823,1.9615,0.24125,0.7854,-1.4324e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013683,156615,0,1.309,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9655,287.03,99306,339.71,0.44215,1.1462</datapoint>
<datapoint>34.593,168.16,-4.6568,-1.0684,4.1588,1.0724,-65.35,3.823,65.461,3.0832,1.9188,0.091619,0.7854,-1.4525e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012242,140147,0,1.048,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9179,287.04,99329,339.72,0.46626,1.1463</datapoint>
<datapoint>35.027,166.24,-4.157,1.1519,4.6568,1.1524,-66.179,3.823,66.289,3.0839,1.9031,0.036226,0.7854,-1.4709e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013707,156953,0,1.3143,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9034,287.06,99353,339.73,0.43386,1.1464</datapoint>
<datapoint>35.493,164.19,-4.657,-1.0723,4.157,1.0723,-67.067,3.823,67.176,3.0847,1.9089,0.012491,0.7854,-1.4907e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012236,140129,0,1.0475,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.909,287.07,99375,339.73,0.46627,1.1465</datapoint>
<datapoint>35.919,162.31,-4.1632,1.1585,4.6576,1.1731,-67.898,3.823,68.005,3.0853,1.9876,0.18467,0.7854,-1.5091e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013709,157030,0,1.3153,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9874,287.08,99399,339.74,0.42621,1.1466</datapoint>
<datapoint>36.356,160.39,-4.6123,-1.0285,4.1701,1.1451,-68.718,3.823,68.824,3.086,1.7678,0.50339,0.7854,-1.5274e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012274,140611,0,1.0545,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7489,287.09,99421,339.75,0.43664,1.1467</datapoint>
<datapoint>36.713,158.81,-4.2564,0.99596,4.6314,1.3992,-69.412,3.823,69.517,3.0866,2.119,0.98283,0.7854,-1.5428e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013631,156189,0,1.3009,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1875,287.11,99444,339.76,0.35733,1.1468</datapoint>
<datapoint>37.213,156.6,-4.5725,-0.63207,4.2616,0.77643,-70.415,3.823,70.519,3.0874,1.8936,0.45092,0.7854,-1.5651e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012543,143736,0,1.1016,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9098,287.12,99462,339.76,0.5,1.1469</datapoint>
<datapoint>37.713,154.41,-4.186,0.77296,4.5736,0.80952,-71.392,3.823,71.494,3.0881,2.0138,0.24054,0.7854,-1.5868e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013461,154288,0,1.2692,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9975,287.13,99488,339.77,0.5,1.1471</datapoint>
<datapoint>38.213,152.2,-4.6561,-0.94021,4.186,0.94021,-72.4,3.823,72.5,3.0888,2.0155,0.0032869,0.7854,-1.6092e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01232,141234,0,1.0634,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0154,287.15,99514,339.78,0.5,1.1471</datapoint>
<datapoint>38.585,150.55,-4.2154,1.1835,4.6638,1.3428,-73.106,3.823,73.206,3.0893,1.7792,0.63455,0.7854,-1.6249e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013726,157384,0,1.3203,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7466,287.16,99540,339.79,0.37234,1.1473</datapoint>
<datapoint>39.085,148.34,-4.6207,-0.81056,4.216,0.82348,-73.977,3.823,74.076,3.09,1.7066,0.14532,0.7854,-1.6443e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012407,142289,0,1.0791,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7111,287.17,99559,339.8,0.5,1.1474</datapoint>
<datapoint>39.542,146.34,-4.1592,1.0113,4.6242,1.0958,-74.8,3.823,74.898,3.0905,1.8991,0.42188,0.7854,-1.6626e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013608,156094,0,1.2984,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8868,287.19,99585,339.8,0.45631,1.1475</datapoint>
<datapoint>39.984,144.4,-4.617,-1.0346,4.1648,1.13,-75.596,3.823,75.692,3.0911,1.698,0.45443,0.7854,-1.6802e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012256,140608,0,1.0535,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6836,287.2,99609,339.81,0.44247,1.1476</datapoint>
<datapoint>40.473,142.26,-4.132,0.9928,4.6183,1.0234,-76.455,3.823,76.551,3.0916,1.8194,0.24846,0.7854,-1.6993e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01359,155940,0,1.2956,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8042,287.21,99631,339.82,0.48856,1.1477</datapoint>
<datapoint>40.897,140.4,-4.6219,-1.1542,4.1335,1.1781,-77.206,3.823,77.301,3.0921,1.7192,0.23594,0.7854,-1.716e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012164,139596,0,1.0381,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7067,287.23,99657,339.83,0.42442,1.1478</datapoint>
<datapoint>41.389,138.25,-4.1219,1.0166,4.6219,1.0167,-78.05,3.823,78.144,3.0927,1.7133,0.012046,0.7854,-1.7348e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0136,156110,0,1.2981,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7141,287.24,99678,339.84,0.49178,1.1479</datapoint>
<datapoint>41.77,136.59,-4.5707,-1.1771,4.1311,1.3114,-78.745,3.823,78.838,3.0931,1.9338,0.57824,0.7854,-1.7502e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012156,139558,0,1.0373,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9895,287.25,99704,339.84,0.38126,1.148</datapoint>
<datapoint>42.27,134.41,-4.1756,0.79005,4.5741,0.89115,-79.764,3.823,79.855,3.0937,2.1399,0.41228,0.7854,-1.7729e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013459,154543,0,1.2719,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1116,287.26,99723,339.85,0.5,1.1481</datapoint>
<datapoint>42.672,132.65,-4.549,-0.92887,4.1937,1.2439,-80.557,3.823,80.648,3.0942,1.8073,0.82737,0.7854,-1.7905e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01234,141715,0,1.0693,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7507,287.28,99749,339.86,0.40195,1.1482</datapoint>
<datapoint>43.172,130.47,-4.204,0.69,4.5508,0.75078,-81.424,3.823,81.513,3.0947,1.6594,0.29593,0.7854,-1.8098e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01339,153802,0,1.2594,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.6791,287.29,99769,339.87,0.5,1.1483</datapoint>
<datapoint>43.672,128.26,-4.6201,-0.83225,4.2092,0.94457,-82.309,3.823,82.398,3.0952,1.8827,0.44673,0.7854,-1.8295e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012385,142281,0,1.0777,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8687,287.3,99795,339.87,0.5,1.1484</datapoint>
<datapoint>44.058,126.55,-4.2155,1.0475,4.6314,1.2943,-83.093,3.823,83.181,3.0956,2.1764,0.76015,0.7854,-1.8469e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013627,156580,0,1.305,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2063,287.32,99821,339.88,0.38632,1.1485</datapoint>
<datapoint>44.558,124.35,-4.6108,-0.79071,4.2156,0.79543,-84.171,3.823,84.257,3.0962,2.1332,0.08647,0.7854,-1.8708e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012403,142541,0,1.0814,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.136,287.33,99841,339.89,0.5,1.1486</datapoint>
<datapoint>45.044,122.22,-4.1323,0.98548,4.6126,1.0298,-85.242,3.823,85.327,3.0968,2.2783,0.29887,0.7854,-1.8946e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01357,155989,0,1.2948,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.2609,287.34,99867,339.9,0.48553,1.1487</datapoint>
<datapoint>45.457,120.42,-4.5979,-1.1284,4.1377,1.2118,-86.144,3.823,86.229,3.0972,2.096,0.44185,0.7854,-1.9147e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012173,139952,0,1.0422,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0679,287.36,99892,339.91,0.41261,1.1488</datapoint>
<datapoint>45.892,118.51,-4.187,0.94493,4.6064,1.1497,-86.994,3.823,87.078,3.0977,1.8111,0.65498,0.7854,-1.9336e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013552,155828,0,1.2919,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8158,287.37,99913,339.91,0.43488,1.1489</datapoint>
<datapoint>46.346,116.52,-4.5878,-0.88166,4.1983,1.0997,-87.885,3.823,87.968,3.0981,2.11,0.65734,0.7854,-1.9534e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012351,142043,0,1.0733,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1195,287.38,99935,339.92,0.45466,1.149</datapoint>
<datapoint>46.846,114.33,-4.1468,0.88204,4.5879,0.883,-88.935,3.823,89.017,3.0986,2.0894,0.041112,0.7854,-1.9767e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013496,155246,0,1.282,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0923,287.39,99958,339.93,0.5,1.1491</datapoint>
<datapoint>47.305,112.32,-4.6379,-1.0699,4.1479,1.0892,-89.916,3.823,89.997,3.0991,2.1832,0.20424,0.7854,-1.9985e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012202,140384,0,1.0481,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1864,287.41,99984,339.94,0.45905,1.1492</datapoint>
<datapoint>47.741,110.4,-4.1483,1.1235,4.639,1.1473,-90.845,3.823,90.925,3.0995,2.082,0.23223,0.7854,-2.0192e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013646,157027,0,1.3112,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0846,287.42,100008,339.95,0.43582,1.1493</datapoint>
<datapoint>48.175,108.5,-4.6044,-1.0501,4.1543,1.1511,-91.794,3.823,91.873,3.1,2.2867,0.47139,0.7854,-2.0403e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01222,140641,0,1.0517,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.3053,287.43,100030,339.95,0.43437,1.1495</datapoint>
<datapoint>48.639,106.47,-4.1509,0.97718,4.6085,1.0774,-92.806,3.823,92.885,3.1004,2.0762,0.45372,0.7854,-2.0628e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013556,156041,0,1.2945,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.093,287.44,100052,339.96,0.46409,1.1496</datapoint>
<datapoint>49.116,104.37,-4.6509,-1.0484,4.1509,1.0485,-93.794,3.823,93.872,3.1009,2.0679,0.017432,0.7854,-2.0847e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01221,140570,0,1.0504,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0679,287.46,100076,339.97,0.47687,1.1497</datapoint>
<datapoint>49.512,102.62,-4.1768,1.1976,4.654,1.263,-94.581,3.823,94.659,3.1012,1.909,0.40125,0.7854,-2.1022e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013689,157630,0,1.3207,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8983,287.47,100101,339.98,0.39587,1.1498</datapoint>
<datapoint>50.012,100.42,-4.6444,-0.93529,4.177,0.94023,-95.524,3.823,95.6,3.1016,1.8609,0.096243,0.7854,-2.1232e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012286,141495,0,1.064,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8637,287.48,100121,339.98,0.5,1.1499</datapoint>
<datapoint>50.407,98.676,-4.1805,1.174,4.6487,1.2652,-96.296,3.823,96.372,3.1019,2.0473,0.47161,0.7854,-2.1403e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013673,157499,0,1.3182,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0604,287.5,100147,339.99,0.39519,1.15</datapoint>
<datapoint>50.907,96.471,-4.6372,-0.91353,4.182,0.94546,-97.289,3.823,97.364,3.1023,1.9255,0.24364,0.7854,-2.1624e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0123,141707,0,1.067,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9327,287.51,100168,340,0.5,1.1501</datapoint>
<datapoint>51.296,94.754,-4.1902,1.1491,4.6436,1.2853,-98.082,3.823,98.156,3.1026,2.1494,0.57578,0.7854,-2.18e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013657,157375,0,1.3158,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1692,287.52,100194,340.01,0.38902,1.1502</datapoint>
<datapoint>51.796,92.55,-4.6262,-0.87201,4.1902,0.87278,-99.161,3.823,99.235,3.1031,2.1678,0.036709,0.7854,-2.204e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012324,142028,0,1.0716,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1667,287.53,100214,340.02,0.5,1.1503</datapoint>
<datapoint>52.223,90.678,-4.1598,1.0943,4.6297,1.1731,-100.05,3.823,100.12,3.1034,1.9876,0.42267,0.7854,-2.2237e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013616,156949,0,1.3084,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9884,287.55,100240,340.02,0.42623,1.1504</datapoint>
<datapoint>52.72,88.486,-4.6556,-0.99696,4.1602,1.0054,-101.02,3.823,101.09,3.1038,1.9229,0.13016,0.7854,-2.2453e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012235,141055,0,1.0567,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9262,287.56,100262,340.03,0.49731,1.1505</datapoint>
<datapoint>53.12,86.724,-4.1635,1.2313,4.6565,1.2512,-101.77,3.823,101.84,3.104,1.8341,0.22237,0.7854,-2.262e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013694,157908,0,1.3241,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8291,287.57,100287,340.04,0.3996,1.153</datapoint>
<datapoint>53.62,84.52,-4.6517,-0.97639,4.1646,0.99748,-102.71,3.823,102.78,3.1044,1.9361,0.20403,0.7854,-2.283e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012247,141247,0,1.0593,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9303,287.59,100308,340.05,0.5,1.1533</datapoint>
<datapoint>53.996,82.857,-4.1904,1.2269,4.6568,1.3298,-103.48,3.823,103.55,3.1047,2.129,0.51299,0.7854,-2.2999e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013694,157964,0,1.3247,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1524,287.6,100334,340.06,0.376,1.1534</datapoint>
<datapoint>54.496,80.655,-4.621,-0.86108,4.1904,0.86117,-104.54,3.823,104.61,3.105,2.1353,0.01266,0.7854,-2.3236e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012323,142164,0,1.0729,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1349,287.61,100353,340.06,0.5,1.1535</datapoint>
<datapoint>54.929,78.755,-4.1528,1.0812,4.6242,1.1548,-105.43,3.823,105.5,3.1053,1.9596,0.40572,0.7854,-2.3433e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013598,156905,0,1.3067,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9631,287.63,100379,340.07,0.43297,1.1536</datapoint>
<datapoint>55.419,76.594,-4.6523,-1.0173,4.1529,1.0185,-106.39,3.823,106.45,3.1057,1.9357,0.048678,0.7854,-2.3646e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012212,140935,0,1.0542,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9366,287.64,100401,340.08,0.49093,1.1537</datapoint>
<datapoint>55.817,74.842,-4.1638,1.229,4.6537,1.2581,-107.18,3.823,107.24,3.1059,2.0426,0.26893,0.7854,-2.3822e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013684,157955,0,1.324,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0491,287.65,100427,340.09,0.39743,1.1538</datapoint>
<datapoint>56.317,72.639,-4.647,-0.9663,4.1645,0.97849,-108.18,3.823,108.25,3.1063,1.9656,0.15395,0.7854,-2.4044e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012245,141369,0,1.0604,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9701,287.66,100447,340.09,0.5,1.1539</datapoint>
<datapoint>56.72,70.866,-4.1603,1.2084,4.6485,1.2414,-108.99,3.823,109.06,3.1065,2.0801,0.28409,0.7854,-2.4225e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013668,157828,0,1.3215,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0855,287.68,100473,340.1,0.40278,1.154</datapoint>
<datapoint>57.208,68.718,-4.6358,-0.97387,4.1629,1.024,-109.97,3.823,110.04,3.1068,1.9255,0.31663,0.7854,-2.4443e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01224,141360,0,1.06,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9309,287.69,100494,340.11,0.48826,1.1541</datapoint>
<datapoint>57.639,66.828,-4.1376,1.1561,4.6359,1.1603,-110.79,3.823,110.86,3.1071,1.8827,0.099313,0.7854,-2.4625e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01363,157448,0,1.3149,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8835,287.7,100519,340.12,0.43091,1.1542</datapoint>
<datapoint>58.096,64.824,-4.6265,-1.0691,4.139,1.0934,-111.68,3.823,111.74,3.1074,1.9874,0.22908,0.7854,-2.4822e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012169,140591,0,1.0483,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9911,287.72,100541,340.13,0.45728,1.1543</datapoint>
<datapoint>58.543,62.869,-4.1279,1.1162,4.6266,1.1193,-112.56,3.823,112.62,3.1076,1.95,0.083823,0.7854,-2.5017e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013602,157178,0,1.3101,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9519,287.73,100565,340.13,0.4467,1.1545</datapoint>
<datapoint>58.982,60.948,-4.6138,-1.1057,4.1299,1.1378,-113.44,3.823,113.5,3.1079,2.0679,0.26832,0.7854,-2.5214e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012142,140322,0,1.044,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0773,287.74,100588,340.14,0.43946,1.1546</datapoint>
<datapoint>59.391,59.154,-4.1746,1.0756,4.6205,1.2246,-114.23,3.823,114.3,3.1081,1.8289,0.58537,0.7854,-2.539e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013584,157015,0,1.3071,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8197,287.75,100610,340.15,0.4083,1.1547</datapoint>
<datapoint>59.891,56.953,-4.6285,-0.90778,4.1751,0.91719,-115.16,3.823,115.23,3.1084,1.8944,0.13102,0.7854,-2.5597e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012274,141898,0,1.0674,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8903,287.77,100631,340.16,0.5,1.1548</datapoint>
<datapoint>60.317,55.084,-4.144,1.1373,4.6301,1.1736,-115.95,3.823,116.01,3.1086,1.7709,0.28983,0.7854,-2.5771e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013611,157391,0,1.313,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7718,287.78,100657,340.16,0.42604,1.1549</datapoint>
<datapoint>60.712,53.368,-4.5399,-1.0017,4.1599,1.2652,-116.71,3.823,116.77,3.1088,2.0763,0.7729,0.7854,-2.594e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012229,141428,0,1.0601,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1347,287.79,100679,340.17,0.39518,1.155</datapoint>
<datapoint>61.212,51.189,-4.1767,0.72633,4.5418,0.78767,-117.71,3.823,117.77,3.1091,1.924,0.30473,0.7854,-2.6162e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013351,154429,0,1.2638,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.945,287.8,100699,340.18,0.5,1.1551</datapoint>
<datapoint>61.712,48.989,-4.6229,-0.89237,4.1771,0.9012,-118.65,3.823,118.71,3.1094,1.8611,0.12585,0.7854,-2.6372e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012279,142054,0,1.0692,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.865,287.82,100725,340.19,0.5,1.1552</datapoint>
<datapoint>62.147,47.083,-4.1362,1.1181,4.6242,1.1487,-119.44,3.823,119.5,3.1096,1.7466,0.26303,0.7854,-2.6547e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013593,157285,0,1.3107,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7498,287.83,100750,340.2,0.43529,1.1553</datapoint>
<datapoint>62.618,45.018,-4.6361,-1.062,4.1362,1.0622,-120.26,3.823,120.32,3.1098,1.755,0.018008,0.7854,-2.673e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012158,140705,0,1.0488,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7551,287.84,100773,340.2,0.47073,1.1554</datapoint>
<datapoint>63.03,43.21,-4.1483,1.1848,4.6375,1.2145,-121.01,3.823,121.07,3.11,1.8649,0.26692,0.7854,-2.6896e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013631,157783,0,1.3187,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8676,287.86,100797,340.21,0.41169,1.1555</datapoint>
<datapoint>63.509,41.104,-4.6296,-1.0029,4.1504,1.0418,-121.93,3.823,121.99,3.1103,2.0003,0.28216,0.7854,-2.7102e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012199,141232,0,1.0564,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9979,287.87,100818,340.22,0.47993,1.1556</datapoint>
<datapoint>63.904,39.37,-4.17,1.1663,4.6344,1.2689,-122.68,3.823,122.74,3.1104,1.8034,0.49978,0.7854,-2.7268e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013622,157727,0,1.3174,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7895,287.88,100843,340.23,0.39404,1.1557</datapoint>
<datapoint>64.404,37.171,-4.6247,-0.90941,4.1712,0.93241,-123.61,3.823,123.67,3.1107,1.9063,0.20583,0.7854,-2.7475e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01226,141979,0,1.0674,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8999,287.89,100863,340.23,0.5,1.1558</datapoint>
<datapoint>64.798,35.438,-4.172,1.1491,4.6303,1.269,-124.32,3.823,124.38,3.1109,1.6941,0.53852,0.7854,-2.7632e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013609,157634,0,1.3156,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.679,287.91,100889,340.24,0.394,1.1559</datapoint>
<datapoint>65.298,33.24,-4.6221,-0.90011,4.172,0.9007,-125.17,3.823,125.23,3.1111,1.7104,0.032509,0.7854,-2.7821e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012262,142051,0,1.0682,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7094,287.92,100909,340.25,0.5,1.156</datapoint>
<datapoint>65.724,31.371,-4.1393,1.1314,4.6238,1.1717,-125.87,3.823,125.93,3.1112,1.5804,0.30467,0.7854,-2.7977e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013589,157460,0,1.3124,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.5817,287.93,100935,340.26,0.42672,1.1561</datapoint>
<datapoint>66.175,29.401,-4.6016,-1.026,4.144,1.1095,-126.63,3.823,126.69,3.1114,1.7707,0.42224,0.7854,-2.8145e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012179,141141,0,1.0543,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7794,287.95,100957,340.27,0.45067,1.1562</datapoint>
<datapoint>66.658,27.299,-4.1018,1.0347,4.6016,1.035,-127.48,3.823,127.54,3.1116,1.758,0.026318,0.7854,-2.8335e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013523,156750,0,1.3003,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.7595,287.96,100980,340.27,0.4831,1.1563</datapoint>
<datapoint>67.063,25.54,-4.5813,-1.1838,4.1052,1.2343,-128.16,3.823,128.22,3.1118,1.6165,0.3493,0.7854,-2.8487e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012064,139860,0,1.035,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.5918,287.97,101005,340.28,0.4051,1.1564</datapoint>
<datapoint>67.473,23.744,-4.1844,0.96862,4.5922,1.2201,-128.89,3.823,128.95,3.1119,1.9205,0.74197,0.7854,-2.8648e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013495,156474,0,1.2954,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.932,287.98,101025,340.29,0.40979,1.1565</datapoint>
<datapoint>67.973,21.547,-4.6028,-0.83683,4.1846,0.8417,-129.84,3.823,129.89,3.1122,1.8753,0.090422,0.7854,-2.8859e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012297,142606,0,1.0759,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8783,288,101047,340.3,0.5,1.1566</datapoint>
<datapoint>68.38,19.763,-4.1696,1.0655,4.6102,1.2296,-130.65,3.823,130.71,3.1123,2.1249,0.6137,0.7854,-2.9039e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013547,157133,0,1.3061,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1351,288.01,101072,340.3,0.40662,1.1567</datapoint>
<datapoint>68.85,17.707,-4.582,-0.87739,4.179,1.0637,-131.72,3.823,131.77,3.1126,2.4075,0.60131,0.7854,-2.9276e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.01228,142457,0,1.0734,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.4057,288.02,101093,340.31,0.47007,1.1569</datapoint>
<datapoint>69.181,16.242,-4.2465,1.0113,4.6064,1.5074,-132.45,3.823,132.51,3.1127,2.0368,1.1177,0.7854,-2.944e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013536,157050,0,1.3044,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9341,288.03,101117,340.32,0.3317,1.157</datapoint>
<datapoint>69.681,14.049,-4.5258,-0.55852,4.2484,0.62255,-133.44,3.823,133.49,3.113,1.8993,0.27499,0.7854,-2.9659e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012483,144861,0,1.1097,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.9105,288.04,101135,340.32,0.5,1.1571</datapoint>
<datapoint>70.181,11.873,-4.1776,0.69639,4.5263,0.71322,-134.37,3.823,134.42,3.1131,1.8222,0.15404,0.7854,-2.9865e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.0133,154362,0,1.2598,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8329,288.06,101160,340.33,0.5,1.1572</datapoint>
<datapoint>70.681,9.6787,-4.6009,-0.84663,4.1823,0.94679,-135.33,3.823,135.39,3.1134,2.0342,0.42384,0.7854,-3.008e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012288,142653,0,1.0758,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0199,288.07,101186,340.34,0.5,1.1573</datapoint>
<datapoint>71.154,7.6216,-4.1038,1.0518,4.6012,1.0579,-136.31,3.823,136.36,3.1136,2.0877,0.11333,0.7854,-3.0296e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013519,156967,0,1.3024,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.0822,288.09,101211,340.35,0.47265,1.1574</datapoint>
<datapoint>71.583,5.7557,-4.6038,-1.1667,4.1038,1.1667,-137.2,3.823,137.26,3.1137,2.0925,0.011087,0.7854,-3.0495e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012057,140021,0,1.0363,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.093,288.1,101236,340.36,0.42856,1.1575</datapoint>
<datapoint>72.05,3.7196,-4.104,1.0687,4.6038,1.0691,-138.18,3.823,138.24,3.1139,2.1072,0.031546,0.7854,-3.0714e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013526,157103,0,1.3044,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,2.1058,288.11,101257,340.37,0.46767,1.1576</datapoint>
<datapoint>72.452,1.9758,-4.5665,-1.1499,4.1101,1.243,-138.99,3.823,139.05,3.1141,1.9173,0.47216,0.7854,-3.0894e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.012075,140277,0,1.0398,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.8834,288.13,101281,340.37,0.40224,1.1577</datapoint>
<datapoint>72.952,-0.19526,-4.1176,0.8979,4.5669,0.9077,-139.97,3.823,140.02,3.1143,1.9838,0.13301,0.7854,-3.111e-5,NaN,NaN,NaN,NaN,0.11994,NaN,NaN,NaN,NaN,NaN,0.013417,155887,0,1.284,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,NaN,1.974,288.14,101302,340.38,0.5,1.1578</datapoint>
</databranch>
</flightdata>
</simulation>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,5 @@
package net.sf.openrocket.database;
import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.logging.LogHelper;
import net.sf.openrocket.material.Material;
import net.sf.openrocket.material.MaterialStorage;
@ -15,7 +14,6 @@ import net.sf.openrocket.util.MathUtil;
*/
public class Databases {
private static final LogHelper log = Application.getLogger();
private static final Translator trans = Application.getTranslator();
/* Static implementations of specific databases: */
@ -37,65 +35,65 @@ public class Databases {
static {
// Add default materials
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Acrylic"), 1190, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Aluminum"), 2700, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Balsa"), 170, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Basswood"), 500, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Birch"), 670, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Brass"), 8600, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Cardboard"), 680, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Carbonfiber"), 1780, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Cork"), 240, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.DepronXPS"), 40, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Fiberglass"), 1850, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Kraftphenolic"), 950, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Maple"), 755, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Paperoffice"), 820, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Pine"), 530, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Plywoodbirch"), 630, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.PolycarbonateLexan"), 1200, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Polystyrene"), 1050, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.PVC"), 1390, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Spruce"), 450, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Steel"), 7850, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.StyrofoamgenericEPS"), 20, false));
// BULK_MATERIAL.add(new Material.Bulk("Styrofoam (Blue foam, XPS)", 32, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.StyrofoamBluefoamXPS"), 32, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Titanium"), 4500, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.Quantumtubing"), 1050, false));
BULK_MATERIAL.add(new Material.Bulk(trans.get("Databases.materials.BlueTube"), 1300, false));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Acrylic", 1190));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Aluminum", 2700));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Balsa", 170));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Basswood", 500));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Birch", 670));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Brass", 8600));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Cardboard", 680));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Carbonfiber", 1780));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Cork", 240));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"DepronXPS", 40));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Fiberglass", 1850));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Kraftphenolic", 950));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Maple", 755));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Paperoffice", 820));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Pine", 530));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Plywoodbirch", 630));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"PolycarbonateLexan", 1200));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Polystyrene", 1050));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"PVC", 1390));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Spruce", 450));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Steel", 7850));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"StyrofoamgenericEPS", 20));
// BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Styrofoam (Blue foam, XPS)", 32));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"StyrofoamBluefoamXPS", 32));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Titanium", 4500));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"Quantumtubing", 1050));
BULK_MATERIAL.add(Material.newSystemMaterial(Material.Type.BULK,"BlueTube", 1300));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Ripstopnylon"), 0.067, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Mylar"), 0.021, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Polyethylenethin"), 0.015, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Polyethyleneheavy"), 0.040, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Silk"), 0.060, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Paperoffice"), 0.080, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Cellophane"), 0.018, false));
SURFACE_MATERIAL.add(new Material.Surface(trans.get("Databases.materials.Crepepaper"), 0.025, false));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Ripstopnylon", 0.067));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Mylar", 0.021));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Polyethylenethin", 0.015));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Polyethyleneheavy", 0.040));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Silk", 0.060));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Paperoffice", 0.080));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Cellophane", 0.018));
SURFACE_MATERIAL.add(Material.newSystemMaterial(Material.Type.SURFACE,"Crepepaper", 0.025));
//// Thread (heavy-duty)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Threadheavy-duty"), 0.0003, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Threadheavy-duty", 0.0003));
//// Elastic cord (round 2mm, 1/16 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Elasticcordround2mm"), 0.0018, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Elasticcordround2mm", 0.0018));
//// Elastic cord (flat 6mm, 1/4 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Elasticcordflat6mm"), 0.0043, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Elasticcordflat6mm", 0.0043));
//// Elastic cord (flat 12mm, 1/2 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Elasticcordflat12mm"), 0.008, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Elasticcordflat12mm", 0.008));
//// Elastic cord (flat 19mm, 3/4 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Elasticcordflat19mm"), 0.0012, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Elasticcordflat19mm", 0.0012));
//// Elastic cord (flat 25mm, 1 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Elasticcordflat25mm"), 0.0016, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Elasticcordflat25mm", 0.0016));
//// Braided nylon (2 mm, 1/16 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Braidednylon2mm"), 0.001, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Braidednylon2mm", 0.001));
//// Braided nylon (3 mm, 1/8 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Braidednylon3mm"), 0.0035, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Braidednylon3mm", 0.0035));
//// Tubular nylon (11 mm, 7/16 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Tubularnylon11mm"), 0.013, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Tubularnylon11mm", 0.013));
//// Tubular nylon (14 mm, 9/16 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Tubularnylon14mm"), 0.016, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Tubularnylon14mm", 0.016));
//// Tubular nylon (25 mm, 1 in)
LINE_MATERIAL.add(new Material.Line(trans.get("Databases.materials.Tubularnylon25mm"), 0.029, false));
LINE_MATERIAL.add(Material.newSystemMaterial(Material.Type.LINE,"Tubularnylon25mm", 0.029));
// Add user-defined materials
@ -168,17 +166,15 @@ public class Databases {
/**
* Find a material from the database or return a new material if the specified
* Find a material from the database or return a new user defined material if the specified
* material with the specified density is not found.
*
* @param type the material type.
* @param name the material name.
* @param density the density of the material.
* @param userDefined whether a newly created material should be user-defined.
* @return the material object from the database or a new material.
*/
public static Material findMaterial(Material.Type type, String name, double density,
boolean userDefined) {
public static Material findMaterial(Material.Type type, String key, String name, double density) {
Database<Material> db;
switch (type) {
case BULK:
@ -194,12 +190,25 @@ public class Databases {
throw new IllegalArgumentException("Illegal material type: " + type);
}
Material bestMatch = null;
// Alter the search mechanism to handle older specifications.
// If a key is specified, then we match on key, if one is found.
// Otherwise we return the material which matches on name.
// this requires us to loop through the entire db at least once to look for the key.
for (Material m : db) {
if (m.getName().equalsIgnoreCase(name) && MathUtil.equals(m.getDensity(), density)) {
// perfect match based on key.
if ( key != null && m.getKey().equals(key) && MathUtil.equals(m.getDensity(), density) ) {
return m;
}
if (m.getName().equalsIgnoreCase(name) && MathUtil.equals(m.getDensity(), density)) {
bestMatch = m;
}
}
return Material.newMaterial(type, name, density, userDefined);
if ( bestMatch != null ) {
return bestMatch;
}
return Material.newUserMaterial(type, name, density);
}

View File

@ -452,6 +452,14 @@ public class OpenRocketSaver extends RocketSaver {
StringBuilder sb = new StringBuilder();
sb.append("<databranch name=\"");
sb.append(escapeXML(branch.getBranchName()));
sb.append("\" typekeys=\"");
for (int i = 0; i < types.length; i++) {
if (i > 0)
sb.append(",");
sb.append(types[i].getKey());
}
sb.append("\" types=\"");
for (int i = 0; i < types.length; i++) {
if (i > 0)

View File

@ -1212,7 +1212,7 @@ class SingleSimulationHandler extends AbstractElementHandler {
private SimulationConditionsHandler conditionHandler;
private FlightDataHandler dataHandler;
private CustomExpressionsHandler customExpressionsHandler;
private ArrayList<CustomExpression> customExpressions = new ArrayList<CustomExpression>();
private final List<String> listeners = new ArrayList<String>();
@ -1224,7 +1224,7 @@ class SingleSimulationHandler extends AbstractElementHandler {
public void setCustomExpressions(ArrayList<CustomExpression> expressions){
this.customExpressions = expressions;
}
public ArrayList<CustomExpression> getCustomExpressions(){
return customExpressions;
}
@ -1301,14 +1301,14 @@ class SingleSimulationHandler extends AbstractElementHandler {
Simulation simulation = new Simulation(doc, doc.getRocket(), status, name,
conditions, listeners, data);
// Note : arraylist implementation in simulation different from standard one
for (CustomExpression exp : customExpressions){
exp.setSimulation(simulation);
if (exp.checkAll())
simulation.addCustomExpression(exp);
}
doc.addSimulation(simulation);
}
}
@ -1319,52 +1319,52 @@ class CustomExpressionsHandler extends AbstractElementHandler {
public CustomExpression currentExpression = new CustomExpression();
private final ArrayList<CustomExpression> customExpressions = new ArrayList<CustomExpression>();
public CustomExpressionsHandler(SingleSimulationHandler simHandler, DocumentLoadingContext context) {
this.context = context;
this.simHandler = simHandler;
}
@Override
public ElementHandler openElement(String element,
HashMap<String, String> attributes, WarningSet warnings)
throws SAXException {
throws SAXException {
if (element.equals("expression")){
currentExpression = new CustomExpression();
}
return this;
}
@Override
public void closeElement(String element, HashMap<String, String> attributes,
String content, WarningSet warnings) {
String content, WarningSet warnings) {
if (element.equals("expression"))
customExpressions.add(currentExpression);
if (element.equals("name"))
currentExpression.setName(content);
else if (element.equals("symbol"))
currentExpression.setSymbol(content);
else if (element.equals("unit"))
currentExpression.setUnit(content);
else if (element.equals("expressionstring"))
currentExpression.setExpression(content);
}
@Override
public void endHandler(String element, HashMap<String, String> attributes,
String content, WarningSet warnings) {
simHandler.setCustomExpressions(customExpressions);
}
}
class SimulationConditionsHandler extends AbstractElementHandler {
private final DocumentLoadingContext context;
private SimulationOptions conditions;
@ -1548,7 +1548,7 @@ class FlightDataHandler extends AbstractElementHandler {
private FlightDataBranchHandler dataHandler;
private WarningSet warningSet = new WarningSet();
private List<FlightDataBranch> branches = new ArrayList<FlightDataBranch>();
private SingleSimulationHandler simHandler;
private FlightData data;
@ -1575,8 +1575,9 @@ class FlightDataHandler extends AbstractElementHandler {
return null;
}
dataHandler = new FlightDataBranchHandler( attributes.get("name"),
attributes.get("types"),
simHandler, context);
attributes.get("typekeys"),
attributes.get("types"),
simHandler, context);
return dataHandler;
}
@ -1672,18 +1673,23 @@ class FlightDataBranchHandler extends AbstractElementHandler {
private final DocumentLoadingContext context;
private final FlightDataType[] types;
private final FlightDataBranch branch;
private static final LogHelper log = Application.getLogger();
private final SingleSimulationHandler simHandler;
public FlightDataBranchHandler(String name, String typeList, SingleSimulationHandler simHandler, DocumentLoadingContext context) {
public FlightDataBranchHandler(String name, String typeKeyList, String typeList, SingleSimulationHandler simHandler, DocumentLoadingContext context) {
this.simHandler = simHandler;
this.context = context;
String[] split = typeList.split(",");
types = new FlightDataType[split.length];
for (int i = 0; i < split.length; i++) {
String typeName = split[i];
FlightDataType matching = findFlightDataType(typeName);
String[] typeNames = typeList.split(",");
String[] typeKeys = null;
if ( typeKeyList != null ) {
typeKeys = typeKeyList.split(",");
}
types = new FlightDataType[typeNames.length];
for (int i = 0; i < typeNames.length; i++) {
String typeName = typeNames[i];
String typeKey = (typeKeys != null ) ? typeKeys[i] : null ;
FlightDataType matching = findFlightDataType(typeKey, typeName);
types[i] = matching;
//types[i] = FlightDataType.getType(typeName, matching.getSymbol(), matching.getUnitGroup());
}
@ -1691,26 +1697,34 @@ class FlightDataBranchHandler extends AbstractElementHandler {
// TODO: LOW: May throw an IllegalArgumentException
branch = new FlightDataBranch(name, types);
}
// Find the full flight data type given name only
// Note: this way of doing it requires that custom expressions always come before flight data in the file,
// not the nicest but this is always the case anyway.
private FlightDataType findFlightDataType(String name){
// Look in built in types
private FlightDataType findFlightDataType(String key, String name){
// Look in built in types by key.
if ( key != null ) {
for (FlightDataType t : FlightDataType.ALL_TYPES){
if (t.getKey().equals(key) ){
return t;
}
}
}
// Look in built in types by name.
for (FlightDataType t : FlightDataType.ALL_TYPES){
if (t.getName().equals(name) ){
return t;
}
}
// Look in custom expressions
for (CustomExpression exp : simHandler.getCustomExpressions()){
if (exp.getName().equals(name) ){
return exp.getType();
}
}
// Look in custom expressions, meanwhile set priority based on order in file
/*
int totalExpressions = simHandler.getCustomExpressions().size();
@ -1722,8 +1736,8 @@ class FlightDataBranchHandler extends AbstractElementHandler {
return exp.getType();
}
}
*/
*/
log.warn("Could not find the flight data type '"+name+"' used in the XML file. Substituted type with unknown symbol and units.");
return FlightDataType.getType(name, "Unknown", UnitGroup.UNITS_NONE);
}
@ -2064,7 +2078,7 @@ class ComponentPresetSetter implements Setter {
@Override
public void set(RocketComponent c, String name, HashMap<String, String> attributes,
WarningSet warnings) {
// FIXME - probably need more data in the warning messages - like what component preset...
// FIXME - probably need more data in the warning messages - like what component preset...
String manufacturerName = attributes.get("manufacturer");
if ( manufacturerName == null ) {
warnings.add(Warning.fromString("Invalid ComponentPreset, no manufacturer specified. Ignored"));
@ -2105,10 +2119,10 @@ class ComponentPresetSetter implements Setter {
// Was any found?
if ( matchingPreset == null ) {
warnings.add(Warning.fromString("No matching ComponentPreset found"));
warnings.add(Warning.fromString("No matching ComponentPreset found " + manufacturerName + " " + productNo));
return;
}
if ( digest != null && !matchingPreset.getDigest().equals(digest) ) {
warnings.add(Warning.fromString("ComponentPreset has wrong digest"));
}
@ -2174,7 +2188,9 @@ class MaterialSetter implements Setter {
return;
}
mat = Databases.findMaterial(type, name, density, false);
String key = attributes.remove("key");
mat = Databases.findMaterial(type, key, name, density);
setMethod.invoke(c, mat);
}

View File

@ -108,7 +108,7 @@ public class RocketComponentSaver {
throw new BugException("Unknown material type: " + mat.getType());
}
return str + " density=\"" + mat.getDensity() + "\">" + RocketSaver.escapeXML(mat.getName()) + "</" + tag + ">";
return str + " density=\"" + mat.getDensity() + "\" key=\"" + mat.getKey() + "\">" + RocketSaver.escapeXML(mat.getName()) + "</" + tag + ">";
}

View File

@ -246,7 +246,7 @@ public abstract class BaseHandler<C extends RocketComponent> extends AbstractEle
* @return a Material instance
*/
public static Material createCustomMaterial(Material.Type type, String name, double density) {
return Material.newMaterial(type, ROCKSIM_MATERIAL_PREFIX + name, density, true);
return Material.newUserMaterial(type, ROCKSIM_MATERIAL_PREFIX + name, density);
}
/**

View File

@ -161,7 +161,7 @@ public class CustomMaterialDialog extends JDialog {
density = this.density.getValue();
return Material.newMaterial(type, name, density, true);
return Material.newUserMaterial(type, name, density);
}

View File

@ -471,6 +471,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
*
* @param m the material to add.
*/
@Override
public void addUserMaterial(Material m) {
Preferences prefs = PREFNODE.node("userMaterials");
@ -498,6 +499,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
*
* @param m the material to remove.
*/
@Override
public void removeUserMaterial(Material m) {
Preferences prefs = PREFNODE.node("userMaterials");
@ -508,7 +510,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
String value = prefs.get(key, null);
try {
Material existing = Material.fromStorableString(value, true);
Material existing = Material.fromStorableString(value);
if (existing.equals(m)) {
prefs.remove(key);
}
@ -530,6 +532,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
*
* @return a set of all user-defined materials.
*/
@Override
public Set<Material> getUserMaterials() {
Preferences prefs = PREFNODE.node("userMaterials");
@ -540,7 +543,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
String value = prefs.get(key, null);
try {
Material m = Material.fromStorableString(value, true);
Material m = Material.fromStorableString(value);
materials.add(m);
} catch (IllegalArgumentException e) {
@ -556,6 +559,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
return materials;
}
@Override
public void setComponentFavorite( ComponentPreset preset, boolean favorite ) {
Preferences prefs = PREFNODE.node("favoritePresets");
if ( favorite ) {
@ -565,6 +569,7 @@ public class SwingPreferences extends net.sf.openrocket.startup.Preferences {
}
}
@Override
public Set<String> getComponentFavorites( ) {
Preferences prefs = PREFNODE.node("favoritePresets");
Set<String> collection = new HashSet<String>();

View File

@ -1,5 +1,8 @@
package net.sf.openrocket.material;
import net.sf.openrocket.database.Databases;
import net.sf.openrocket.l10n.Translator;
import net.sf.openrocket.startup.Application;
import net.sf.openrocket.unit.Unit;
import net.sf.openrocket.unit.UnitGroup;
import net.sf.openrocket.util.MathUtil;
@ -16,6 +19,8 @@ import net.sf.openrocket.util.MathUtil;
public abstract class Material implements Comparable<Material> {
private static final Translator trans = Application.getTranslator();
public enum Type {
LINE("Line", UnitGroup.UNITS_DENSITY_LINE),
SURFACE("Surface", UnitGroup.UNITS_DENSITY_SURFACE),
@ -43,10 +48,10 @@ public abstract class Material implements Comparable<Material> {
///// Definitions of different material types /////
public static class Line extends Material {
public Line(String name, double density, boolean userDefined) {
super(name, density, userDefined);
Line(String name, String key, double density, boolean userDefined) {
super(name, key, density, userDefined);
}
@Override
public Type getType() {
return Type.LINE;
@ -55,10 +60,10 @@ public abstract class Material implements Comparable<Material> {
public static class Surface extends Material {
public Surface(String name, double density, boolean userDefined) {
super(name, density, userDefined);
Surface(String name, String key, double density, boolean userDefined) {
super(name, key, density, userDefined);
}
@Override
public Type getType() {
return Type.SURFACE;
@ -71,10 +76,10 @@ public abstract class Material implements Comparable<Material> {
}
public static class Bulk extends Material {
public Bulk(String name, double density, boolean userDefined) {
super(name, density, userDefined);
Bulk(String name, String key, double density, boolean userDefined) {
super(name, key, density, userDefined);
}
@Override
public Type getType() {
return Type.BULK;
@ -84,18 +89,35 @@ public abstract class Material implements Comparable<Material> {
private final String name;
private final String key;
private final double density;
private final boolean userDefined;
public Material(String name, double density, boolean userDefined) {
this.name = name;
this.density = density;
/**
* Constructor for materials.
*
* @param name ignored when defining system materials.
* @param key ignored when defining user materials.
* @param density
* @param userDefined true if this is a user defined material, false if it is a system material.
*/
private Material(String name, String key, double density, boolean userDefined) {
if ( userDefined ) {
this.key = "UserDefined."+name;
this.name = name;
} else {
this.key = key;
this.name = trans.get("Databases.materials." + key);
}
this.userDefined = userDefined;
this.density = density;
}
public String getKey() {
return key;
}
public double getDensity() {
return density;
}
@ -158,20 +180,35 @@ public abstract class Material implements Comparable<Material> {
}
/**
* Return a new material of the specified type.
*/
public static Material newMaterial(Type type, String name, double density,
boolean userDefined) {
public static Material newSystemMaterial(Type type, String key, double density ) {
switch (type) {
case LINE:
return new Material.Line(name, density, userDefined);
return new Material.Line(null, key, density, false);
case SURFACE:
return new Material.Surface(name, density, userDefined);
return new Material.Surface(null,key, density, false);
case BULK:
return new Material.Bulk(name, density, userDefined);
return new Material.Bulk(null, key, density, false);
default:
throw new IllegalArgumentException("Unknown material type: " + type);
}
}
/**
* Return a new user defined material of the specified type.
*/
public static Material newUserMaterial(Type type, String name, double density) {
switch (type) {
case LINE:
return new Material.Line(name, null, density, true);
case SURFACE:
return new Material.Surface(name, null, density, true);
case BULK:
return new Material.Bulk(name, null, density, true);
default:
throw new IllegalArgumentException("Unknown material type: " + type);
@ -180,7 +217,7 @@ public abstract class Material implements Comparable<Material> {
public String toStorableString() {
return getType().name() + "|" + name.replace('|', ' ') + '|' + density;
return getType().name() + "|" + key + "|" + name.replace('|', ' ') + '|' + density;
}
@ -192,17 +229,18 @@ public abstract class Material implements Comparable<Material> {
* @return a new <code>Material</code> object.
* @throws IllegalArgumentException if <code>str</code> is invalid or null.
*/
public static Material fromStorableString(String str, boolean userDefined) {
public static Material fromStorableString(String str) {
if (str == null)
throw new IllegalArgumentException("Material string is null");
String[] split = str.split("\\|", 3);
String[] split = str.split("\\|");
if (split.length < 3)
throw new IllegalArgumentException("Illegal material string: " + str);
Type type = null;
String name;
double density;
String name = null;
String key= null;
String densityString;
try {
type = Type.valueOf(split[0]);
@ -210,27 +248,25 @@ public abstract class Material implements Comparable<Material> {
throw new IllegalArgumentException("Illegal material string: " + str, e);
}
name = split[1];
if ( split.length == 3 ) {
name = split[1];
densityString =split[2];
} else {
key = split[1];
name = split[2];
densityString=split[3];
}
double density;
try {
density = Double.parseDouble(split[2]);
density = Double.parseDouble(densityString);
} catch (NumberFormatException e) {
throw new IllegalArgumentException("Illegal material string: " + str, e);
}
switch (type) {
case BULK:
return new Material.Bulk(name, density, userDefined);
case SURFACE:
return new Material.Surface(name, density, userDefined);
case LINE:
return new Material.Line(name, density, userDefined);
default:
throw new IllegalArgumentException("Illegal material string: " + str);
}
return Databases.findMaterial(type, key, name, density);
}
}

View File

@ -100,7 +100,7 @@ public abstract class ComponentPresetFactory {
if ( preset.has(MATERIAL) ) {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume);
preset.put(MATERIAL, m);
}
@ -123,7 +123,7 @@ public abstract class ComponentPresetFactory {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName,density, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName,density);
preset.put(MATERIAL, m);
}
@ -145,7 +145,7 @@ public abstract class ComponentPresetFactory {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName,density, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName,density);
preset.put(MATERIAL, m);
}
@ -167,7 +167,7 @@ public abstract class ComponentPresetFactory {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName,density, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName,density);
preset.put(MATERIAL, m);
}
@ -187,7 +187,7 @@ public abstract class ComponentPresetFactory {
if ( preset.has(MATERIAL) ) {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume);
preset.put(MATERIAL, m);
}
@ -206,7 +206,7 @@ public abstract class ComponentPresetFactory {
if ( preset.has(MATERIAL) ) {
materialName = preset.get(MATERIAL).getName();
}
Material m = Material.newMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume, false);
Material m = Material.newUserMaterial(Material.Type.BULK, materialName, preset.get(MASS)/volume);
preset.put(MATERIAL, m);
}

View File

@ -24,7 +24,7 @@ public class LineMaterialColumnParser extends BaseColumnParser {
return;
}
Material.Line myMaterial = new Material.Line(columnData, 0.0, true);
Material.Line myMaterial = (Material.Line) Material.newUserMaterial(Material.Type.LINE, columnData, 0.0);
Material.Line m = materialMap.getLineMaterial(myMaterial);
props.put(param, m!=null? m : myMaterial);

View File

@ -29,7 +29,7 @@ public class MaterialColumnParser extends BaseColumnParser {
return;
}
Material.Bulk tmpMaterial = new Material.Bulk(columnData, 0.0, true);
Material.Bulk tmpMaterial = (Material.Bulk) Material.newUserMaterial( Material.Type.BULK,columnData, 0.0);
Material.Bulk m = materialMap.getBulkMaterial(tmpMaterial);
props.put(param, m!= null ? m : tmpMaterial);

View File

@ -86,7 +86,7 @@ public class MaterialHolder {
// Ok, now we have a thickness and a bulk material of the correct name,
// we can make our own surface material.
Material.Surface surface = new Material.Surface( convertedMaterialName, bulk.getDensity() * thickness , true);
Material.Surface surface = (Material.Surface) Material.newUserMaterial(Material.Type.SURFACE, convertedMaterialName, bulk.getDensity() * thickness);
this.put(surface);

View File

@ -40,19 +40,19 @@ public class MaterialLoader extends RocksimComponentFileLoader {
String cleanedMaterialName = stripAll(name, '"').trim();
if ( "g/cm".equals( unit ) ) {
materialMap.put( new Material.Line(cleanedMaterialName, 0.1d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.LINE,cleanedMaterialName, 0.1d * density));
} else if ( "g/cm2".equals(unit) ) {
materialMap.put( new Material.Surface(cleanedMaterialName, 10.0d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.SURFACE,cleanedMaterialName, 10.0d * density));
} else if ( "g/cm3".equals(unit) ) {
materialMap.put( new Material.Bulk(cleanedMaterialName, 1000.0d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.BULK,cleanedMaterialName, 1000.0d * density));
} else if ( "kg/m3".equals(unit) ) {
materialMap.put( new Material.Bulk(cleanedMaterialName, density, true));
materialMap.put( Material.newUserMaterial(Material.Type.BULK,cleanedMaterialName, density));
} else if ( "lb/ft3".equals(unit) ) {
materialMap.put( new Material.Bulk(cleanedMaterialName, 16.0184634d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.BULK,cleanedMaterialName, 16.0184634d * density));
} else if ( "oz/in".equals(unit) ) {
materialMap.put( new Material.Line(cleanedMaterialName, 1.11612296d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.LINE,cleanedMaterialName, 1.11612296d * density));
} else if ( "oz/in2".equals(unit ) ) {
materialMap.put( new Material.Surface(cleanedMaterialName, 43.94184876d * density, true));
materialMap.put( Material.newUserMaterial(Material.Type.SURFACE,cleanedMaterialName, 43.94184876d * density));
} else {
throw new BugException("Unknown unit in Materials file: " + unit);
}

View File

@ -24,7 +24,7 @@ public class SurfaceMaterialColumnParser extends BaseColumnParser {
return;
}
Material.Surface myMaterial = new Material.Surface(columnData, 0.0, true);
Material.Surface myMaterial = (Material.Surface) Material.newUserMaterial(Material.Type.SURFACE,columnData, 0.0);
Material.Surface m = materialMap.getSurfaceMaterial(myMaterial, null);
props.put(param, m!=null ? m : myMaterial);

View File

@ -196,16 +196,7 @@ public abstract class BaseComponentDTO {
return m;
}
switch( dto.getORMaterialType() ) {
case BULK:
return new Material.Bulk(dto.material, 0.0, true);
case SURFACE:
return new Material.Surface(dto.material, 0.0, true);
case LINE:
return new Material.Line(dto.material, 0.0, true);
}
return null;
return Material.newUserMaterial(dto.getORMaterialType(), dto.material, 0.0);
}
@ -269,6 +260,7 @@ public abstract class BaseComponentDTO {
}
static class Base64Adapter extends XmlAdapter<String, byte[]> {
@Override
public byte[] unmarshal(String s) {
if (s == null) {
return null;
@ -276,6 +268,7 @@ public abstract class BaseComponentDTO {
return DatatypeConverter.parseBase64Binary(s);
}
@Override
public String marshal(byte[] bytes) {
if (bytes == null) {
return null;

View File

@ -9,7 +9,6 @@ import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;
import net.sf.openrocket.database.Databases;
import net.sf.openrocket.material.Material;
import net.sf.openrocket.util.Chars;
@ -80,7 +79,7 @@ public class MaterialDTO {
}
Material asMaterial() {
return Material.newMaterial(type.getORMaterialType(), name, density, true);
return Material.newUserMaterial(type.getORMaterialType(), name, density);
}

View File

@ -33,149 +33,149 @@ public class FlightDataType implements Comparable<FlightDataType> {
//// Time
public static final FlightDataType TYPE_TIME = newType(trans.get("FlightDataType.TYPE_TIME"), "t", UnitGroup.UNITS_FLIGHT_TIME, 1);
public static final FlightDataType TYPE_TIME = newType("TYPE_TIME", "t", UnitGroup.UNITS_FLIGHT_TIME, 1);
//// Vertical position and motion
//// Altitude
public static final FlightDataType TYPE_ALTITUDE = newType(trans.get("FlightDataType.TYPE_ALTITUDE"), "h", UnitGroup.UNITS_DISTANCE, 10);
public static final FlightDataType TYPE_ALTITUDE = newType("TYPE_ALTITUDE", "h", UnitGroup.UNITS_DISTANCE, 10);
//// Vertical velocity
public static final FlightDataType TYPE_VELOCITY_Z = newType(trans.get("FlightDataType.TYPE_VELOCITY_Z"), "Vz", UnitGroup.UNITS_VELOCITY, 11);
public static final FlightDataType TYPE_VELOCITY_Z = newType("TYPE_VELOCITY_Z", "Vz", UnitGroup.UNITS_VELOCITY, 11);
//// Vertical acceleration
public static final FlightDataType TYPE_ACCELERATION_Z = newType(trans.get("FlightDataType.TYPE_ACCELERATION_Z"), "Az", UnitGroup.UNITS_ACCELERATION, 12);
public static final FlightDataType TYPE_ACCELERATION_Z = newType("TYPE_ACCELERATION_Z", "Az", UnitGroup.UNITS_ACCELERATION, 12);
//// Total motion
//// Total velocity
public static final FlightDataType TYPE_VELOCITY_TOTAL = newType(trans.get("FlightDataType.TYPE_VELOCITY_TOTAL"), "Vt", UnitGroup.UNITS_VELOCITY, 20);
public static final FlightDataType TYPE_VELOCITY_TOTAL = newType("TYPE_VELOCITY_TOTAL", "Vt", UnitGroup.UNITS_VELOCITY, 20);
//// Total acceleration
public static final FlightDataType TYPE_ACCELERATION_TOTAL = newType(trans.get("FlightDataType.TYPE_ACCELERATION_TOTAL"), "At", UnitGroup.UNITS_ACCELERATION, 21);
public static final FlightDataType TYPE_ACCELERATION_TOTAL = newType("TYPE_ACCELERATION_TOTAL", "At", UnitGroup.UNITS_ACCELERATION, 21);
//// Lateral position and motion
//// Position upwind
public static final FlightDataType TYPE_POSITION_X = newType(trans.get("FlightDataType.TYPE_POSITION_X"), "Px", UnitGroup.UNITS_DISTANCE, 30);
public static final FlightDataType TYPE_POSITION_X = newType("TYPE_POSITION_X", "Px", UnitGroup.UNITS_DISTANCE, 30);
//// Position parallel to wind
public static final FlightDataType TYPE_POSITION_Y = newType(trans.get("FlightDataType.TYPE_POSITION_Y"), "Py", UnitGroup.UNITS_DISTANCE, 31);
public static final FlightDataType TYPE_POSITION_Y = newType("TYPE_POSITION_Y", "Py", UnitGroup.UNITS_DISTANCE, 31);
//// Lateral distance
public static final FlightDataType TYPE_POSITION_XY = newType(trans.get("FlightDataType.TYPE_POSITION_XY"), "Pl", UnitGroup.UNITS_DISTANCE, 32);
public static final FlightDataType TYPE_POSITION_XY = newType("TYPE_POSITION_XY", "Pl", UnitGroup.UNITS_DISTANCE, 32);
//// Lateral direction
public static final FlightDataType TYPE_POSITION_DIRECTION = newType(trans.get("FlightDataType.TYPE_POSITION_DIRECTION"), "\u03b8l", UnitGroup.UNITS_ANGLE, 33);
public static final FlightDataType TYPE_POSITION_DIRECTION = newType("TYPE_POSITION_DIRECTION", "\u03b8l", UnitGroup.UNITS_ANGLE, 33);
//// Lateral velocity
public static final FlightDataType TYPE_VELOCITY_XY = newType(trans.get("FlightDataType.TYPE_VELOCITY_XY"), "Vl", UnitGroup.UNITS_VELOCITY, 34);
public static final FlightDataType TYPE_VELOCITY_XY = newType("TYPE_VELOCITY_XY", "Vl", UnitGroup.UNITS_VELOCITY, 34);
//// Lateral acceleration
public static final FlightDataType TYPE_ACCELERATION_XY = newType(trans.get("FlightDataType.TYPE_ACCELERATION_XY"), "Al", UnitGroup.UNITS_ACCELERATION, 35);
public static final FlightDataType TYPE_ACCELERATION_XY = newType("TYPE_ACCELERATION_XY", "Al", UnitGroup.UNITS_ACCELERATION, 35);
//// Latitude
public static final FlightDataType TYPE_LATITUDE = newType(trans.get("FlightDataType.TYPE_LATITUDE"), "\u03c6", UnitGroup.UNITS_ANGLE, 36);
public static final FlightDataType TYPE_LATITUDE = newType("TYPE_LATITUDE", "\u03c6", UnitGroup.UNITS_ANGLE, 36);
//// Longitude
public static final FlightDataType TYPE_LONGITUDE = newType(trans.get("FlightDataType.TYPE_LONGITUDE"), "\u03bb", UnitGroup.UNITS_ANGLE, 37);
public static final FlightDataType TYPE_LONGITUDE = newType("TYPE_LONGITUDE", "\u03bb", UnitGroup.UNITS_ANGLE, 37);
//// Angular motion
//// Angle of attack
public static final FlightDataType TYPE_AOA = newType(trans.get("FlightDataType.TYPE_AOA"), "\u03b1", UnitGroup.UNITS_ANGLE, 40);
public static final FlightDataType TYPE_AOA = newType("TYPE_AOA", "\u03b1", UnitGroup.UNITS_ANGLE, 40);
//// Roll rate
public static final FlightDataType TYPE_ROLL_RATE = newType(trans.get("FlightDataType.TYPE_ROLL_RATE"), "d\u03a6", UnitGroup.UNITS_ROLL, 41);
public static final FlightDataType TYPE_ROLL_RATE = newType("TYPE_ROLL_RATE", "d\u03a6", UnitGroup.UNITS_ROLL, 41);
//// Pitch rate
public static final FlightDataType TYPE_PITCH_RATE = newType(trans.get("FlightDataType.TYPE_PITCH_RATE"), "d\u03b8", UnitGroup.UNITS_ROLL, 42);
public static final FlightDataType TYPE_PITCH_RATE = newType("TYPE_PITCH_RATE", "d\u03b8", UnitGroup.UNITS_ROLL, 42);
//// Yaw rate
public static final FlightDataType TYPE_YAW_RATE = newType(trans.get("FlightDataType.TYPE_YAW_RATE"), "d\u03a8", UnitGroup.UNITS_ROLL, 43);
public static final FlightDataType TYPE_YAW_RATE = newType("TYPE_YAW_RATE", "d\u03a8", UnitGroup.UNITS_ROLL, 43);
//// Stability information
//// Mass
public static final FlightDataType TYPE_MASS = newType(trans.get("FlightDataType.TYPE_MASS"), "m", UnitGroup.UNITS_MASS, 50);
public static final FlightDataType TYPE_MASS = newType("TYPE_MASS", "m", UnitGroup.UNITS_MASS, 50);
//// Longitudinal moment of inertia
public static final FlightDataType TYPE_LONGITUDINAL_INERTIA = newType(trans.get("FlightDataType.TYPE_LONGITUDINAL_INERTIA"), "Il", UnitGroup.UNITS_INERTIA, 51);
public static final FlightDataType TYPE_LONGITUDINAL_INERTIA = newType("TYPE_LONGITUDINAL_INERTIA", "Il", UnitGroup.UNITS_INERTIA, 51);
//// Rotational moment of inertia
public static final FlightDataType TYPE_ROTATIONAL_INERTIA = newType(trans.get("FlightDataType.TYPE_ROTATIONAL_INERTIA"), "Ir", UnitGroup.UNITS_INERTIA, 52);
public static final FlightDataType TYPE_ROTATIONAL_INERTIA = newType("TYPE_ROTATIONAL_INERTIA", "Ir", UnitGroup.UNITS_INERTIA, 52);
//// CP location
public static final FlightDataType TYPE_CP_LOCATION = newType(trans.get("FlightDataType.TYPE_CP_LOCATION"), "Cp", UnitGroup.UNITS_LENGTH, 53);
public static final FlightDataType TYPE_CP_LOCATION = newType("TYPE_CP_LOCATION", "Cp", UnitGroup.UNITS_LENGTH, 53);
//// CG location
public static final FlightDataType TYPE_CG_LOCATION = newType(trans.get("FlightDataType.TYPE_CG_LOCATION"), "Cg", UnitGroup.UNITS_LENGTH, 54);
public static final FlightDataType TYPE_CG_LOCATION = newType("TYPE_CG_LOCATION", "Cg", UnitGroup.UNITS_LENGTH, 54);
//// Stability margin calibers
public static final FlightDataType TYPE_STABILITY = newType(trans.get("FlightDataType.TYPE_STABILITY"), "S", UnitGroup.UNITS_COEFFICIENT, 55);
public static final FlightDataType TYPE_STABILITY = newType("TYPE_STABILITY", "S", UnitGroup.UNITS_COEFFICIENT, 55);
//// Characteristic numbers
//// Mach number
public static final FlightDataType TYPE_MACH_NUMBER = newType(trans.get("FlightDataType.TYPE_MACH_NUMBER"), "M", UnitGroup.UNITS_COEFFICIENT, 60);
public static final FlightDataType TYPE_MACH_NUMBER = newType("TYPE_MACH_NUMBER", "M", UnitGroup.UNITS_COEFFICIENT, 60);
//// Reynolds number
public static final FlightDataType TYPE_REYNOLDS_NUMBER = newType(trans.get("FlightDataType.TYPE_REYNOLDS_NUMBER"), "R", UnitGroup.UNITS_COEFFICIENT, 61);
public static final FlightDataType TYPE_REYNOLDS_NUMBER = newType("TYPE_REYNOLDS_NUMBER", "R", UnitGroup.UNITS_COEFFICIENT, 61);
//// Thrust and drag
//// Thrust
public static final FlightDataType TYPE_THRUST_FORCE = newType(trans.get("FlightDataType.TYPE_THRUST_FORCE"), "Ft", UnitGroup.UNITS_FORCE, 70);
public static final FlightDataType TYPE_THRUST_FORCE = newType("TYPE_THRUST_FORCE", "Ft", UnitGroup.UNITS_FORCE, 70);
//// Drag force
public static final FlightDataType TYPE_DRAG_FORCE = newType(trans.get("FlightDataType.TYPE_DRAG_FORCE"), "Fd", UnitGroup.UNITS_FORCE, 71);
public static final FlightDataType TYPE_DRAG_FORCE = newType("TYPE_DRAG_FORCE", "Fd", UnitGroup.UNITS_FORCE, 71);
//// Drag coefficient
public static final FlightDataType TYPE_DRAG_COEFF = newType(trans.get("FlightDataType.TYPE_DRAG_COEFF"), "Cd", UnitGroup.UNITS_COEFFICIENT, 72);
public static final FlightDataType TYPE_DRAG_COEFF = newType("TYPE_DRAG_COEFF", "Cd", UnitGroup.UNITS_COEFFICIENT, 72);
//// Axial drag coefficient
public static final FlightDataType TYPE_AXIAL_DRAG_COEFF = newType(trans.get("FlightDataType.TYPE_AXIAL_DRAG_COEFF"), "Cda", UnitGroup.UNITS_COEFFICIENT, 73);
public static final FlightDataType TYPE_AXIAL_DRAG_COEFF = newType("TYPE_AXIAL_DRAG_COEFF", "Cda", UnitGroup.UNITS_COEFFICIENT, 73);
//// Component drag coefficients
//// Friction drag coefficient
public static final FlightDataType TYPE_FRICTION_DRAG_COEFF = newType(trans.get("FlightDataType.TYPE_FRICTION_DRAG_COEFF"), "Cdf", UnitGroup.UNITS_COEFFICIENT, 80);
public static final FlightDataType TYPE_FRICTION_DRAG_COEFF = newType("TYPE_FRICTION_DRAG_COEFF", "Cdf", UnitGroup.UNITS_COEFFICIENT, 80);
//// Pressure drag coefficient
public static final FlightDataType TYPE_PRESSURE_DRAG_COEFF = newType(trans.get("FlightDataType.TYPE_PRESSURE_DRAG_COEFF"), "Cdp", UnitGroup.UNITS_COEFFICIENT, 81);
public static final FlightDataType TYPE_PRESSURE_DRAG_COEFF = newType("TYPE_PRESSURE_DRAG_COEFF", "Cdp", UnitGroup.UNITS_COEFFICIENT, 81);
//// Base drag coefficient
public static final FlightDataType TYPE_BASE_DRAG_COEFF = newType(trans.get("FlightDataType.TYPE_BASE_DRAG_COEFF"), "Cdb", UnitGroup.UNITS_COEFFICIENT, 82);
public static final FlightDataType TYPE_BASE_DRAG_COEFF = newType("TYPE_BASE_DRAG_COEFF", "Cdb", UnitGroup.UNITS_COEFFICIENT, 82);
//// Other coefficients
//// Normal force coefficient
public static final FlightDataType TYPE_NORMAL_FORCE_COEFF = newType(trans.get("FlightDataType.TYPE_NORMAL_FORCE_COEFF"), "Cn", UnitGroup.UNITS_COEFFICIENT, 90);
public static final FlightDataType TYPE_NORMAL_FORCE_COEFF = newType("TYPE_NORMAL_FORCE_COEFF", "Cn", UnitGroup.UNITS_COEFFICIENT, 90);
//// Pitch moment coefficient
public static final FlightDataType TYPE_PITCH_MOMENT_COEFF = newType(trans.get("FlightDataType.TYPE_PITCH_MOMENT_COEFF"), "C\u03b8", UnitGroup.UNITS_COEFFICIENT, 91);
public static final FlightDataType TYPE_PITCH_MOMENT_COEFF = newType("TYPE_PITCH_MOMENT_COEFF", "C\u03b8", UnitGroup.UNITS_COEFFICIENT, 91);
//// Yaw moment coefficient
public static final FlightDataType TYPE_YAW_MOMENT_COEFF = newType(trans.get("FlightDataType.TYPE_YAW_MOMENT_COEFF"), "C\u03c4\u03a8", UnitGroup.UNITS_COEFFICIENT, 92);
public static final FlightDataType TYPE_YAW_MOMENT_COEFF = newType("TYPE_YAW_MOMENT_COEFF", "C\u03c4\u03a8", UnitGroup.UNITS_COEFFICIENT, 92);
//// Side force coefficient
public static final FlightDataType TYPE_SIDE_FORCE_COEFF = newType(trans.get("FlightDataType.TYPE_SIDE_FORCE_COEFF"), "C\u03c4s", UnitGroup.UNITS_COEFFICIENT, 93);
public static final FlightDataType TYPE_SIDE_FORCE_COEFF = newType("TYPE_SIDE_FORCE_COEFF", "C\u03c4s", UnitGroup.UNITS_COEFFICIENT, 93);
//// Roll moment coefficient
public static final FlightDataType TYPE_ROLL_MOMENT_COEFF = newType(trans.get("FlightDataType.TYPE_ROLL_MOMENT_COEFF"), "C\u03c4\u03a6", UnitGroup.UNITS_COEFFICIENT, 94);
public static final FlightDataType TYPE_ROLL_MOMENT_COEFF = newType("TYPE_ROLL_MOMENT_COEFF", "C\u03c4\u03a6", UnitGroup.UNITS_COEFFICIENT, 94);
//// Roll forcing coefficient
public static final FlightDataType TYPE_ROLL_FORCING_COEFF = newType(trans.get("FlightDataType.TYPE_ROLL_FORCING_COEFF"), "Cf\u03a6", UnitGroup.UNITS_COEFFICIENT, 95);
public static final FlightDataType TYPE_ROLL_FORCING_COEFF = newType("TYPE_ROLL_FORCING_COEFF", "Cf\u03a6", UnitGroup.UNITS_COEFFICIENT, 95);
//// Roll damping coefficient
public static final FlightDataType TYPE_ROLL_DAMPING_COEFF = newType(trans.get("FlightDataType.TYPE_ROLL_DAMPING_COEFF"), "C\u03b6\u03a6", UnitGroup.UNITS_COEFFICIENT, 96);
public static final FlightDataType TYPE_ROLL_DAMPING_COEFF = newType("TYPE_ROLL_DAMPING_COEFF", "C\u03b6\u03a6", UnitGroup.UNITS_COEFFICIENT, 96);
//// Pitch damping coefficient
public static final FlightDataType TYPE_PITCH_DAMPING_MOMENT_COEFF = newType(trans.get("FlightDataType.TYPE_PITCH_DAMPING_MOMENT_COEFF"), "C\u03b6\u03b8", UnitGroup.UNITS_COEFFICIENT, 97);
public static final FlightDataType TYPE_PITCH_DAMPING_MOMENT_COEFF = newType("TYPE_PITCH_DAMPING_MOMENT_COEFF", "C\u03b6\u03b8", UnitGroup.UNITS_COEFFICIENT, 97);
//// Yaw damping coefficient
public static final FlightDataType TYPE_YAW_DAMPING_MOMENT_COEFF = newType(trans.get("FlightDataType.TYPE_YAW_DAMPING_MOMENT_COEFF"), "C\u03b6\u03a8", UnitGroup.UNITS_COEFFICIENT, 98);
public static final FlightDataType TYPE_YAW_DAMPING_MOMENT_COEFF = newType("TYPE_YAW_DAMPING_MOMENT_COEFF", "C\u03b6\u03a8", UnitGroup.UNITS_COEFFICIENT, 98);
//// Coriolis acceleration
public static final FlightDataType TYPE_CORIOLIS_ACCELERATION = newType(trans.get("FlightDataType.TYPE_CORIOLIS_ACCELERATION"), "Ac", UnitGroup.UNITS_ACCELERATION, 99);
public static final FlightDataType TYPE_CORIOLIS_ACCELERATION = newType("TYPE_CORIOLIS_ACCELERATION", "Ac", UnitGroup.UNITS_ACCELERATION, 99);
//// Reference length + area
//// Reference length
public static final FlightDataType TYPE_REFERENCE_LENGTH = newType(trans.get("FlightDataType.TYPE_REFERENCE_LENGTH"), "Lr", UnitGroup.UNITS_LENGTH, 100);
public static final FlightDataType TYPE_REFERENCE_LENGTH = newType("TYPE_REFERENCE_LENGTH", "Lr", UnitGroup.UNITS_LENGTH, 100);
//// Reference area
public static final FlightDataType TYPE_REFERENCE_AREA = newType(trans.get("FlightDataType.TYPE_REFERENCE_AREA"), "Ar", UnitGroup.UNITS_AREA, 101);
public static final FlightDataType TYPE_REFERENCE_AREA = newType("TYPE_REFERENCE_AREA", "Ar", UnitGroup.UNITS_AREA, 101);
//// Orientation
//// Vertical orientation (zenith)
public static final FlightDataType TYPE_ORIENTATION_THETA = newType(trans.get("FlightDataType.TYPE_ORIENTATION_THETA"), "\u0398", UnitGroup.UNITS_ANGLE, 106);
public static final FlightDataType TYPE_ORIENTATION_THETA = newType("TYPE_ORIENTATION_THETA", "\u0398", UnitGroup.UNITS_ANGLE, 106);
//// Lateral orientation (azimuth)
public static final FlightDataType TYPE_ORIENTATION_PHI = newType(trans.get("FlightDataType.TYPE_ORIENTATION_PHI"), "\u03a6", UnitGroup.UNITS_ANGLE, 107);
public static final FlightDataType TYPE_ORIENTATION_PHI = newType("TYPE_ORIENTATION_PHI", "\u03a6", UnitGroup.UNITS_ANGLE, 107);
//// Atmospheric conditions
//// Wind velocity
public static final FlightDataType TYPE_WIND_VELOCITY = newType(trans.get("FlightDataType.TYPE_WIND_VELOCITY"), "Vw", UnitGroup.UNITS_VELOCITY, 110);
public static final FlightDataType TYPE_WIND_VELOCITY = newType("TYPE_WIND_VELOCITY", "Vw", UnitGroup.UNITS_VELOCITY, 110);
//// Air temperature
public static final FlightDataType TYPE_AIR_TEMPERATURE = newType(trans.get("FlightDataType.TYPE_AIR_TEMPERATURE"), "T", UnitGroup.UNITS_TEMPERATURE, 111);
public static final FlightDataType TYPE_AIR_TEMPERATURE = newType("TYPE_AIR_TEMPERATURE", "T", UnitGroup.UNITS_TEMPERATURE, 111);
//// Air pressure
public static final FlightDataType TYPE_AIR_PRESSURE = newType(trans.get("FlightDataType.TYPE_AIR_PRESSURE"), "p", UnitGroup.UNITS_PRESSURE, 112);
public static final FlightDataType TYPE_AIR_PRESSURE = newType("TYPE_AIR_PRESSURE", "p", UnitGroup.UNITS_PRESSURE, 112);
//// Speed of sound
public static final FlightDataType TYPE_SPEED_OF_SOUND = newType(trans.get("FlightDataType.TYPE_SPEED_OF_SOUND"), "Vs", UnitGroup.UNITS_VELOCITY, 113);
public static final FlightDataType TYPE_SPEED_OF_SOUND = newType("TYPE_SPEED_OF_SOUND", "Vs", UnitGroup.UNITS_VELOCITY, 113);
//// Simulation information
//// Simulation time step
public static final FlightDataType TYPE_TIME_STEP = newType(trans.get("FlightDataType.TYPE_TIME_STEP"), "dt", UnitGroup.UNITS_TIME_STEP, 200);
public static final FlightDataType TYPE_TIME_STEP = newType("TYPE_TIME_STEP", "dt", UnitGroup.UNITS_TIME_STEP, 200);
//// Computation time
public static final FlightDataType TYPE_COMPUTATION_TIME = newType(trans.get("FlightDataType.TYPE_COMPUTATION_TIME"), "tc", UnitGroup.UNITS_SHORT_TIME, 201);
public static final FlightDataType TYPE_COMPUTATION_TIME = newType("TYPE_COMPUTATION_TIME", "tc", UnitGroup.UNITS_SHORT_TIME, 201);
// An array of all the built in types
public static final FlightDataType[] ALL_TYPES = {
@ -255,20 +255,26 @@ public class FlightDataType implements Comparable<FlightDataType> {
if (type != null) {
return type;
}
type = newType(s, symbol, u, DEFAULT_PRIORITY);
type = newType("UserDefined." + s, s, symbol, u, DEFAULT_PRIORITY);
return type;
}
/**
* Used while initializing the class.
*/
private static synchronized FlightDataType newType(String s, String symbol, UnitGroup u, int priority) {
FlightDataType type = new FlightDataType(s, symbol, u, priority);
private static FlightDataType newType( String key , String symbol, UnitGroup u, int priority ) {
String name = trans.get("FlightDataType." + key );
return newType( key, name, symbol, u, priority );
}
private static synchronized FlightDataType newType(String key, String s, String symbol, UnitGroup u, int priority) {
FlightDataType type = new FlightDataType(key, s, symbol, u, priority);
EXISTING_TYPES.put(s.toLowerCase(Locale.ENGLISH), type);
return type;
}
private final String key;
private final String name;
private final String symbol;
private final UnitGroup units;
@ -276,7 +282,8 @@ public class FlightDataType implements Comparable<FlightDataType> {
private final int hashCode;
private FlightDataType(String typeName, String symbol, UnitGroup units, int priority) {
private FlightDataType(String key, String typeName, String symbol, UnitGroup units, int priority) {
this.key = key;
if (typeName == null)
throw new IllegalArgumentException("typeName is null");
if (units == null)
@ -285,7 +292,7 @@ public class FlightDataType implements Comparable<FlightDataType> {
this.symbol = symbol;
this.units = units;
this.priority = priority;
this.hashCode = this.name.toLowerCase(Locale.ENGLISH).hashCode();
this.hashCode = this.key.hashCode();
}
/*
@ -294,6 +301,10 @@ public class FlightDataType implements Comparable<FlightDataType> {
}
*/
public String getKey() {
return key;
}
public String getName() {
return name;
}
@ -315,7 +326,7 @@ public class FlightDataType implements Comparable<FlightDataType> {
public boolean equals(Object other) {
if (!(other instanceof FlightDataType))
return false;
return this.name.equalsIgnoreCase(((FlightDataType) other).name);
return this.hashCode == other.hashCode();
}
@Override

View File

@ -234,7 +234,7 @@ public abstract class Preferences {
String material = get("componentMaterials", componentClass, null);
if (material != null) {
try {
Material m = Material.fromStorableString(material, false);
Material m = Material.fromStorableString(material);
if (m.getType() == type)
return m;
} catch (IllegalArgumentException ignore) {
@ -385,14 +385,13 @@ public abstract class Preferences {
//// Elastic cord (round 2mm, 1/16 in)
private static final Material DEFAULT_LINE_MATERIAL =
Databases.findMaterial(Material.Type.LINE, trans.get("Databases.materials.Elasticcordround2mm"),
0.0018, false);
Databases.findMaterial(Material.Type.LINE, "Elasticcordround2mm", trans.get("Databases.materials.Elasticcordround2mm"),0.0018);
//// Ripstop nylon
private static final Material DEFAULT_SURFACE_MATERIAL =
Databases.findMaterial(Material.Type.SURFACE, trans.get("Databases.materials.Ripstopnylon"), 0.067, false);
Databases.findMaterial(Material.Type.SURFACE, "Ripstopnylon", trans.get("Databases.materials.Ripstopnylon"), 0.067);
//// Cardboard
private static final Material DEFAULT_BULK_MATERIAL =
Databases.findMaterial(Material.Type.BULK, trans.get("Databases.materials.Cardboard"), 680, false);
Databases.findMaterial(Material.Type.BULK, "Cardboard", trans.get("Databases.materials.Cardboard"), 680);
}
private static final HashMap<Class<?>, String> DEFAULT_COLORS =

View File

@ -203,7 +203,7 @@ public class TestRockets {
ExternalComponent e = (ExternalComponent) c;
e.setFinish((Finish) randomEnum(Finish.class));
double d = rnd(100);
e.setMaterial(Material.newMaterial(Type.BULK, "Testmat " + d, d, rnd.nextBoolean()));
e.setMaterial(Material.newUserMaterial(Type.BULK, "Testmat " + d, d));
}
if (c instanceof InternalComponent) {

View File

@ -113,7 +113,7 @@ public class BodyTubeComponentTests extends BaseTestCase {
bt.loadPreset(preset);
bt.setMaterial( new Material.Bulk("new", 1.0, true));
bt.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( bt.getPresetComponent() );
}

View File

@ -235,7 +235,7 @@ public class BodyTubePresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -253,7 +253,7 @@ public class BodyTubePresetTests {
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -98,7 +98,7 @@ public class BulkHeadComponentTests extends BaseTestCase {
bt.loadPreset(preset);
bt.setMaterial( new Material.Bulk("new", 1.0, true));
bt.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( bt.getPresetComponent() );
}

View File

@ -138,7 +138,7 @@ public class BulkHeadPresetTests {
presetspec.put( ComponentPreset.PARTNO, "partno");
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -155,7 +155,7 @@ public class BulkHeadPresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -111,7 +111,7 @@ public class CenteringRingComponentTests extends BaseTestCase {
cr.loadPreset(preset);
cr.setMaterial( new Material.Bulk("new", 1.0, true));
cr.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( cr.getPresetComponent() );
}

View File

@ -235,7 +235,7 @@ public class CenteringRingPresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -253,7 +253,7 @@ public class CenteringRingPresetTests {
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -111,7 +111,7 @@ public class EngineBlockComponentTests extends BaseTestCase {
eb.loadPreset(preset);
eb.setMaterial( new Material.Bulk("new", 1.0, true));
eb.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( eb.getPresetComponent() );
}

View File

@ -235,7 +235,7 @@ public class EngineBlockPresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -253,7 +253,7 @@ public class EngineBlockPresetTests {
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -107,7 +107,7 @@ public class LaunchLugComponentTests extends BaseTestCase {
bt.loadPreset(preset);
bt.setMaterial( new Material.Bulk("new", 1.0, true));
bt.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( bt.getPresetComponent() );
}

View File

@ -235,7 +235,7 @@ public class LaunchLugPresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -253,7 +253,7 @@ public class LaunchLugPresetTests {
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -37,7 +37,7 @@ public class NoseConeComponentTests extends BaseTestCase {
presetspec.put( ComponentPreset.AFT_SHOULDER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.FILLED, true);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
preset = ComponentPresetFactory.create(presetspec);
}
@ -155,7 +155,7 @@ public class NoseConeComponentTests extends BaseTestCase {
nc.loadPreset(preset);
nc.setMaterial( new Material.Bulk("new", 1.0, true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( nc.getPresetComponent() );
}

View File

@ -172,7 +172,7 @@ public class NoseConePresetTests extends BaseTestCase {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.SHAPE, Transition.Shape.CONICAL);
presetspec.put( ComponentPreset.AFT_OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -191,7 +191,7 @@ public class NoseConePresetTests extends BaseTestCase {
presetspec.put( ComponentPreset.AFT_OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.FILLED, true);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// constants put into the presetspec above.

View File

@ -33,9 +33,9 @@ public class ParachuterComponentTests extends BaseTestCase {
presetspec.put( ComponentPreset.DIAMETER, 20.0);
presetspec.put( ComponentPreset.LINE_COUNT, 8);
presetspec.put( ComponentPreset.LINE_LENGTH, 12.0);
Material m = new Material.Surface("testMaterial", 2.0, true);
Material m = Material.newUserMaterial(Material.Type.SURFACE,"testMaterial", 2.0);
presetspec.put( ComponentPreset.MATERIAL, m);
m = new Material.Line("testLineMaterial", 3, true);
m = Material.newUserMaterial(Material.Type.LINE,"testLineMaterial", 3);
presetspec.put( ComponentPreset.LINE_MATERIAL, m);
preset = ComponentPresetFactory.create(presetspec);
}
@ -111,7 +111,7 @@ public class ParachuterComponentTests extends BaseTestCase {
cr.loadPreset(preset);
cr.setMaterial( new Material.Surface("new", 1.0, true));
cr.setMaterial( Material.newUserMaterial(Material.Type.SURFACE,"new", 1.0));
assertNull( cr.getPresetComponent() );
}
@ -122,7 +122,7 @@ public class ParachuterComponentTests extends BaseTestCase {
cr.loadPreset(preset);
cr.setLineMaterial( new Material.Line("new", 1.0, true));
cr.setLineMaterial( Material.newUserMaterial(Material.Type.LINE,"new", 1.0));
assertSame( preset, cr.getPresetComponent() );
}

View File

@ -32,7 +32,7 @@ public class StreamerComponentTests extends BaseTestCase {
presetspec.put( ComponentPreset.PARTNO, "partno");
presetspec.put( ComponentPreset.LENGTH, 20.0);
presetspec.put( ComponentPreset.WIDTH, 2.0);
Material m = new Material.Surface("testMaterial", 2.0, true);
Material m = Material.newUserMaterial(Material.Type.SURFACE,"testMaterial", 2.0);
presetspec.put( ComponentPreset.MATERIAL, m);
preset = ComponentPresetFactory.create(presetspec);
}
@ -86,7 +86,7 @@ public class StreamerComponentTests extends BaseTestCase {
cr.loadPreset(preset);
cr.setMaterial( new Material.Surface("new", 1.0, true));
cr.setMaterial( Material.newUserMaterial(Material.Type.SURFACE,"new", 1.0));
assertNull( cr.getPresetComponent() );
}

View File

@ -43,7 +43,7 @@ public class TransitionComponentTests extends BaseTestCase {
presetspec.put( ComponentPreset.FORE_SHOULDER_DIAMETER, 0.5);
presetspec.put( ComponentPreset.FILLED, true);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
preset = ComponentPresetFactory.create(presetspec);
}
@ -195,7 +195,7 @@ public class TransitionComponentTests extends BaseTestCase {
tr.loadPreset(preset);
tr.setMaterial( new Material.Bulk("new", 1.0, true));
tr.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( tr.getPresetComponent() );
}

View File

@ -179,7 +179,7 @@ public class TransitionPresetTests extends BaseTestCase {
presetspec.put( ComponentPreset.AFT_OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.FORE_OUTER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.FILLED, true);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -199,7 +199,7 @@ public class TransitionPresetTests extends BaseTestCase {
presetspec.put( ComponentPreset.FORE_OUTER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.FILLED, true);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// constants put into the presetspec above.

View File

@ -109,7 +109,7 @@ public class TubeCouplerComponentTests extends BaseTestCase {
tc.loadPreset(preset);
tc.setMaterial( new Material.Bulk("new", 1.0, true));
tc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"new", 1.0));
assertNull( tc.getPresetComponent() );
}

View File

@ -235,7 +235,7 @@ public class TubeCouplerPresetTests {
presetspec.put( ComponentPreset.LENGTH, 2.0);
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
assertEquals("test",preset.get(ComponentPreset.MATERIAL).getName());
@ -253,7 +253,7 @@ public class TubeCouplerPresetTests {
presetspec.put( ComponentPreset.OUTER_DIAMETER, 2.0);
presetspec.put( ComponentPreset.INNER_DIAMETER, 1.0);
presetspec.put( ComponentPreset.MASS, 100.0);
presetspec.put( ComponentPreset.MATERIAL, new Material.Bulk("test", 2.0, true));
presetspec.put( ComponentPreset.MATERIAL, Material.newUserMaterial(Material.Type.BULK,"test", 2.0));
ComponentPreset preset = ComponentPresetFactory.create(presetspec);
// Compute the volume by hand here using a slightly different formula from

View File

@ -31,7 +31,7 @@ public class FinSetTest extends BaseTestCase {
private void testFreeformConvert(FinSet fin) {
FreeformFinSet converted;
Material mat = Material.newMaterial(Type.BULK, "foo", 0.1, true);
Material mat = Material.newUserMaterial(Type.BULK, "foo", 0.1);
fin.setBaseRotation(1.1);
fin.setCantAngle(0.001);

View File

@ -20,7 +20,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setFilled(true);
nc.setType( Transition.Shape.CONICAL );
nc.setAftRadius(1.0);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -54,7 +54,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setAftShoulderRadius(1.0);
nc.setAftShoulderLength(1.0);
nc.setAftShoulderThickness(1.0);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -86,7 +86,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setAftRadius(1.0);
nc.setThickness(0.5);
nc.setType( Transition.Shape.CONICAL );
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -128,7 +128,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setAftShoulderRadius(1.0);
nc.setAftShoulderLength(1.0);
nc.setAftShoulderThickness(0.5);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -171,7 +171,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setType( Transition.Shape.CONICAL );
nc.setForeRadius(1.0);
nc.setAftRadius(2.0);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -209,7 +209,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setForeShoulderLength(1.0);
nc.setForeShoulderRadius(1.0);
nc.setForeShoulderThickness(1.0);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -245,7 +245,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setForeRadius(0.5);
nc.setAftRadius(1.0);
nc.setThickness(0.5);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -298,7 +298,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setForeShoulderLength(1.0);
nc.setForeShoulderRadius(0.5);
nc.setForeShoulderThickness(0.5); // note this means fore shoulder is filled.
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -350,7 +350,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setForeRadius(0.5);
nc.setAftRadius(1.0);
nc.setThickness(0.25);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();
@ -404,7 +404,7 @@ public class SymmetricComponentVolumeTest extends BaseTestCase {
nc.setForeShoulderRadius(0.5);
nc.setForeShoulderThickness(0.25);
nc.setMaterial( new Material.Bulk("test",density,true));
nc.setMaterial( Material.newUserMaterial(Material.Type.BULK,"test",density));
Coordinate cg = nc.getCG();