{ "cells": [ { "cell_type": "markdown", "id": "cell-0", "metadata": {}, "source": [ "# INS/GNSS Integration: Navigation System Fusion\n", "\n", "This notebook covers Inertial Navigation System (INS) and Global Navigation Satellite System (GNSS) integration for navigation and tracking. We explore:\n", "\n", "1. **INS Fundamentals** - Strapdown mechanization and error sources\n", "2. **GNSS Measurements** - Pseudorange and position solutions\n", "3. **Loosely-Coupled Integration** - Position/velocity updates\n", "4. **Tightly-Coupled Integration** - Pseudorange updates\n", "5. **Dilution of Precision** - Geometry effects on accuracy\n", "\n", "## Prerequisites\n", "\n", "```bash\n", "pip install nrl-tracker plotly numpy\n", "```" ] }, { "cell_type": "code", "execution_count": 16, "id": "cell-1", "metadata": {}, "outputs": [], "source": [ "import numpy as np\n", "import plotly.graph_objects as go\n", "from plotly.subplots import make_subplots\n", "\n", "from pytcl.navigation import (\n", " # Constants\n", " OMEGA_EARTH, A_EARTH, F_EARTH,\n", " # INS\n", " INSState, IMUData, INSErrorState,\n", " mechanize_ins_ned, initialize_ins_state,\n", " gravity_ned, earth_rate_ned, transport_rate_ned,\n", " radii_of_curvature, coarse_alignment,\n", " coning_correction, sculling_correction,\n", " # GNSS\n", " SPEED_OF_LIGHT, GPS_L1_FREQ,\n", " SatelliteInfo, GNSSMeasurement,\n", " compute_dop, compute_line_of_sight,\n", " satellite_elevation_azimuth,\n", " # Integration\n", " initialize_ins_gnss, loose_coupled_predict,\n", " loose_coupled_update, tight_coupled_update,\n", " # Geodesy\n", " geodetic_to_ecef, ecef_to_geodetic,\n", " ecef_to_ned, ned_to_ecef,\n", ")\n", "from pytcl.coordinate_systems import euler2rotmat, rotmat2euler\n", "\n", "np.random.seed(42)\n", "\n", "# Plotly dark theme template\n", "dark_template = go.layout.Template()\n", "dark_template.layout = go.Layout(\n", " paper_bgcolor='#0d1117',\n", " plot_bgcolor='#0d1117',\n", " font=dict(color='#e6edf3'),\n", " xaxis=dict(gridcolor='#30363d', zerolinecolor='#30363d'),\n", " yaxis=dict(gridcolor='#30363d', zerolinecolor='#30363d'),\n", ")" ] }, { "cell_type": "code", "execution_count": 17, "id": "5ee339e5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Initial Navigation Setup\n", "==================================================\n", "Position: 38.9000°N, -77.0000°E, 100.0m\n", "Velocity: N=7.0, E=7.0, D=0.0 m/s\n", "Attitude: Roll=0.0°, Pitch=0.0°, Yaw=45.0°\n" ] } ], "source": [ "# Set up initial navigation parameters\n", "# Initial position: Washington DC\n", "lat0 = np.radians(38.9)\n", "lon0 = np.radians(-77.0)\n", "alt0 = 100.0 # meters\n", "\n", "# Initial velocity: moving northeast at 10 m/s\n", "v_north = 7.0\n", "v_east = 7.0\n", "v_down = 0.0\n", "\n", "# Initial attitude (roll, pitch, yaw)\n", "roll0 = np.radians(0)\n", "pitch0 = np.radians(0)\n", "yaw0 = np.radians(45) # Heading NE\n", "\n", "print(\"Initial Navigation Setup\")\n", "print(\"=\" * 50)\n", "print(f\"Position: {np.degrees(lat0):.4f}°N, {np.degrees(lon0):.4f}°E, {alt0:.1f}m\")\n", "print(f\"Velocity: N={v_north:.1f}, E={v_east:.1f}, D={v_down:.1f} m/s\")\n", "print(f\"Attitude: Roll={np.degrees(roll0):.1f}°, Pitch={np.degrees(pitch0):.1f}°, Yaw={np.degrees(yaw0):.1f}°\")" ] }, { "cell_type": "markdown", "id": "cell-2", "metadata": {}, "source": [ "## 1. INS Fundamentals\n", "\n", "### Inertial Navigation Concept\n", "\n", "An INS uses:\n", "- **Accelerometers**: Measure specific force (acceleration minus gravity)\n", "- **Gyroscopes**: Measure angular rate\n", "\n", "By integrating these measurements:\n", "1. Integrate angular rates → Attitude\n", "2. Remove gravity → Acceleration\n", "3. Integrate acceleration → Velocity\n", "4. Integrate velocity → Position\n", "\n", "### Error Sources\n", "\n", "| Error Type | Effect | Typical Value |\n", "|------------|--------|---------------|\n", "| Gyro bias | Position error grows as $t^2$ | 0.01-1 °/hr |\n", "| Accel bias | Position error grows as $t^2$ | 10-1000 µg |\n", "| Gyro noise | Attitude random walk | 0.001-0.1 °/√hr |\n", "| Accel noise | Velocity random walk | 10-100 µg/√Hz |" ] }, { "cell_type": "code", "execution_count": 18, "id": "cell-3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Gravity at lat=38.9°: 9.8004 m/s²\n", "Meridional radius: 6.361 million m\n", "Prime vertical radius: 6.387 million m\n", "\n", "Earth rate vertical component: -9.4452 °/hr\n", "Transport rate vertical component: -0.1824 °/hr\n" ] } ], "source": [ "# Get gravity at this location\n", "g = gravity_ned(lat0, alt0)\n", "print(f\"Gravity at lat={np.degrees(lat0):.1f}°: {g[2]:.4f} m/s²\")\n", "\n", "# Get radii of curvature\n", "R_M, R_N = radii_of_curvature(lat0)\n", "print(f\"Meridional radius: {R_M/1e6:.3f} million m\")\n", "print(f\"Prime vertical radius: {R_N/1e6:.3f} million m\")\n", "\n", "# Earth rotation rate in NED frame\n", "omega_ie = earth_rate_ned(lat0)\n", "print(f\"\\nEarth rate vertical component: {omega_ie[2] * 3600 * np.degrees(1):.4f} °/hr\")\n", "\n", "# Transport rate due to motion over curved Earth\n", "omega_en = transport_rate_ned(lat0, alt0, v_north, v_east)\n", "print(f\"Transport rate vertical component: {omega_en[2] * 3600 * np.degrees(1):.4f} °/hr\")" ] }, { "cell_type": "code", "execution_count": 19, "id": "cell-4", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Initial INS State\n", "==================================================\n", "Position: 38.900000°N, -77.000000°E, 100.0m\n", "Velocity: N=7.00, E=7.00, D=0.00 m/s\n", "Attitude: Roll=0.0°, Pitch=-0.0°, Yaw=45.0°\n" ] } ], "source": [ "# Initialize INS state\n", "ins_state = initialize_ins_state(\n", " lat=lat0, lon=lon0, alt=alt0,\n", " vN=v_north, vE=v_east, vD=v_down,\n", " roll=roll0, pitch=pitch0, yaw=yaw0\n", ")\n", "\n", "print(\"Initial INS State\")\n", "print(\"=\" * 50)\n", "print(f\"Position: {np.degrees(ins_state.latitude):.6f}°N, {np.degrees(ins_state.longitude):.6f}°E, {ins_state.altitude:.1f}m\")\n", "print(f\"Velocity: N={ins_state.velocity_north:.2f}, E={ins_state.velocity_east:.2f}, D={ins_state.velocity_down:.2f} m/s\")\n", "euler = ins_state.euler_angles()\n", "print(f\"Attitude: Roll={np.degrees(euler[0]):.1f}°, Pitch={np.degrees(euler[1]):.1f}°, Yaw={np.degrees(euler[2]):.1f}°\")" ] }, { "cell_type": "code", "execution_count": 20, "id": "cell-5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Propagated INS for 60 seconds\n", "Final position error: -13.7m N, 117.6m E\n" ] } ], "source": [ "# Simulate INS propagation with sensor errors\n", "dt = 0.01 # 100 Hz IMU\n", "duration = 60.0 # 60 seconds\n", "n_steps = int(duration / dt)\n", "\n", "# IMU error parameters\n", "gyro_bias = np.array([0.01, -0.02, 0.015]) * np.pi / 180 / 3600 # rad/s\n", "accel_bias = np.array([50, -30, 20]) * 1e-6 * 9.81 # m/s²\n", "gyro_noise = 0.005 * np.pi / 180 # rad/s\n", "accel_noise = 100 * 1e-6 * 9.81 # m/s²\n", "\n", "# Storage\n", "positions = []\n", "velocities = []\n", "attitudes = []\n", "times = []\n", "\n", "# True trajectory (for comparison)\n", "true_positions = []\n", "true_lat, true_lon, true_alt = lat0, lon0, alt0\n", "true_vn, true_ve, true_vd = v_north, v_east, v_down\n", "\n", "# Reset INS state\n", "ins_state = initialize_ins_state(\n", " lat=lat0, lon=lon0, alt=alt0,\n", " vN=v_north, vE=v_east, vD=v_down,\n", " roll=roll0, pitch=pitch0, yaw=yaw0\n", ")\n", "\n", "for i in range(n_steps):\n", " t = i * dt\n", " \n", " # True IMU outputs (straight line motion, no rotation)\n", " # Specific force = -gravity in body frame for level flight\n", " true_accel = ins_state.dcm @ np.array([0, 0, gravity_ned(true_lat, true_alt)[2]]) # Body frame\n", " true_gyro = np.zeros(3) # No rotation\n", " \n", " # Add biases and noise to simulate real IMU\n", " accel = true_accel + accel_bias + np.random.randn(3) * accel_noise\n", " gyro = true_gyro + gyro_bias + np.random.randn(3) * gyro_noise\n", " \n", " # Create IMU data\n", " imu = IMUData(\n", " accel=accel,\n", " gyro=gyro,\n", " dt=dt\n", " )\n", " \n", " # Mechanize (propagate INS)\n", " ins_state = mechanize_ins_ned(ins_state, imu)\n", " \n", " # True trajectory (perfect navigation)\n", " R_M, R_N = radii_of_curvature(true_lat)\n", " true_lat += true_vn * dt / (R_M + true_alt)\n", " true_lon += true_ve * dt / ((R_N + true_alt) * np.cos(true_lat))\n", " true_alt -= true_vd * dt\n", " \n", " # Store results\n", " if i % 10 == 0: # Store every 10th point\n", " positions.append([ins_state.latitude, ins_state.longitude, ins_state.altitude])\n", " velocities.append([ins_state.velocity_north, ins_state.velocity_east, ins_state.velocity_down])\n", " euler = ins_state.euler_angles()\n", " attitudes.append(np.degrees(euler))\n", " times.append(t)\n", " true_positions.append([true_lat, true_lon, true_alt])\n", "\n", "positions = np.array(positions)\n", "velocities = np.array(velocities)\n", "attitudes = np.array(attitudes)\n", "true_positions = np.array(true_positions)\n", "\n", "print(f\"Propagated INS for {duration:.0f} seconds\")\n", "print(f\"Final position error: {np.degrees(positions[-1, 0] - true_positions[-1, 0])*111000:.1f}m N, \"\n", " f\"{np.degrees(positions[-1, 1] - true_positions[-1, 1])*111000*np.cos(lat0):.1f}m E\")" ] }, { "cell_type": "code", "execution_count": 21, "id": "cell-6", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "North", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#ff4757", "width": 2 }, "mode": "lines", "name": "East", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "North V", "showlegend": false, "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x2", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y2" }, { "line": { "color": "#ff4757", "width": 2 }, "mode": "lines", "name": "East V", "showlegend": false, "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x2", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y2" }, { "line": { "color": "#00ff88", "width": 2 }, "mode": "lines", "name": "Roll", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x3", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y3" }, { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "Pitch", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x3", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y3" }, { "line": { "color": "#ff4757", "width": 2 }, "mode": "lines", "name": "Yaw", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9 ], "xaxis": "x3", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y3" }, { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "Error path", "showlegend": false, "type": "scatter", "x": { "bdata": "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", "dtype": "f8" }, "xaxis": "x4", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y4" }, { "marker": { "color": "#00ff88", "size": 12 }, "mode": "markers", "name": "Start", "type": "scatter", "x": [ 0 ], "xaxis": "x4", "y": [ 0 ], "yaxis": "y4" }, { "marker": { "color": "#ff4757", "size": 12, "symbol": "square" }, "mode": "markers", "name": "End", "type": "scatter", "x": [ 118.0610136208403 ], "xaxis": "x4", "y": [ -13.729412859146843 ], "yaxis": "y4" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "INS Position Error (no GNSS)", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "INS Velocity Error", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "INS Attitude", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Position Error Trajectory", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" } ], "height": 700, "template": { "layout": { "font": { "color": "#e6edf3" }, "paper_bgcolor": "#0d1117", "plot_bgcolor": "#0d1117", "xaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" }, "yaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" } } }, "xaxis": { "anchor": "y", "domain": [ 0, 0.45 ], "title": { "text": "Time (s)" } }, "xaxis2": { "anchor": "y2", "domain": [ 0.55, 1 ], "title": { "text": "Time (s)" } }, "xaxis3": { "anchor": "y3", "domain": [ 0, 0.45 ], "title": { "text": "Time (s)" } }, "xaxis4": { "anchor": "y4", "domain": [ 0.55, 1 ], "title": { "text": "East Error (m)" } }, "yaxis": { "anchor": "x", "domain": [ 0.625, 1 ], "title": { "text": "Position Error (m)" } }, "yaxis2": { "anchor": "x2", "domain": [ 0.625, 1 ], "title": { "text": "Velocity Error (m/s)" } }, "yaxis3": { "anchor": "x3", "domain": [ 0, 0.375 ], "title": { "text": "Angle (deg)" } }, "yaxis4": { "anchor": "x4", "domain": [ 0, 0.375 ], "scaleanchor": "x4", "scaleratio": 1, "title": { "text": "North Error (m)" } } } } }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Visualize INS drift\n", "fig = make_subplots(rows=2, cols=2,\n", " subplot_titles=['INS Position Error (no GNSS)', 'INS Velocity Error',\n", " 'INS Attitude', 'Position Error Trajectory'])\n", "\n", "# Position error\n", "north_error = (positions[:, 0] - true_positions[:, 0]) * (R_M + alt0)\n", "east_error = (positions[:, 1] - true_positions[:, 1]) * (R_N + alt0) * np.cos(lat0)\n", "fig.add_trace(\n", " go.Scatter(x=times, y=north_error, mode='lines', name='North',\n", " line=dict(color='#00d4ff', width=2)),\n", " row=1, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=times, y=east_error, mode='lines', name='East',\n", " line=dict(color='#ff4757', width=2)),\n", " row=1, col=1\n", ")\n", "\n", "# Velocity error\n", "fig.add_trace(\n", " go.Scatter(x=times, y=velocities[:, 0] - v_north, mode='lines', name='North V',\n", " line=dict(color='#00d4ff', width=2), showlegend=False),\n", " row=1, col=2\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=times, y=velocities[:, 1] - v_east, mode='lines', name='East V',\n", " line=dict(color='#ff4757', width=2), showlegend=False),\n", " row=1, col=2\n", ")\n", "\n", "# Attitude\n", "fig.add_trace(\n", " go.Scatter(x=times, y=attitudes[:, 2], mode='lines', name='Roll',\n", " line=dict(color='#00ff88', width=2)),\n", " row=2, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=times, y=attitudes[:, 1], mode='lines', name='Pitch',\n", " line=dict(color='#00d4ff', width=2)),\n", " row=2, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=times, y=attitudes[:, 0], mode='lines', name='Yaw',\n", " line=dict(color='#ff4757', width=2)),\n", " row=2, col=1\n", ")\n", "\n", "# Trajectory\n", "fig.add_trace(\n", " go.Scatter(x=east_error, y=north_error, mode='lines',\n", " line=dict(color='#00d4ff', width=2), name='Error path', showlegend=False),\n", " row=2, col=2\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=[0], y=[0], mode='markers', name='Start',\n", " marker=dict(color='#00ff88', size=12)),\n", " row=2, col=2\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=[east_error[-1]], y=[north_error[-1]], mode='markers', name='End',\n", " marker=dict(color='#ff4757', size=12, symbol='square')),\n", " row=2, col=2\n", ")\n", "\n", "fig.update_xaxes(title_text='Time (s)', row=1, col=1)\n", "fig.update_yaxes(title_text='Position Error (m)', row=1, col=1)\n", "fig.update_xaxes(title_text='Time (s)', row=1, col=2)\n", "fig.update_yaxes(title_text='Velocity Error (m/s)', row=1, col=2)\n", "fig.update_xaxes(title_text='Time (s)', row=2, col=1)\n", "fig.update_yaxes(title_text='Angle (deg)', row=2, col=1)\n", "fig.update_xaxes(title_text='East Error (m)', row=2, col=2)\n", "fig.update_yaxes(title_text='North Error (m)', row=2, col=2, scaleanchor='x4', scaleratio=1)\n", "\n", "fig.update_layout(template=dark_template, height=700)\n", "fig.show()" ] }, { "cell_type": "markdown", "id": "cell-7", "metadata": {}, "source": [ "## 2. GNSS Measurements and Geometry\n", "\n", "### GNSS Measurement Model\n", "\n", "The pseudorange measurement is:\n", "$$\\rho = r + c\\cdot\\delta t_{rx} + \\epsilon$$\n", "\n", "Where:\n", "- $r$ = geometric range to satellite\n", "- $c$ = speed of light\n", "- $\\delta t_{rx}$ = receiver clock bias\n", "- $\\epsilon$ = measurement noise + atmospheric delays\n", "\n", "### Dilution of Precision (DOP)\n", "\n", "| DOP Type | Meaning |\n", "|----------|--------|\n", "| GDOP | Geometric (3D position + time) |\n", "| PDOP | Position (3D) |\n", "| HDOP | Horizontal (2D) |\n", "| VDOP | Vertical |\n", "| TDOP | Time |" ] }, { "cell_type": "code", "execution_count": 22, "id": "cell-8", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Simulated 8 GPS satellites\n", "\n", "Satellite elevation and azimuth:\n", " PRN 1: El= 46.0°, Az= 51.3°\n", " PRN 2: El= 46.0°, Az= 51.3°\n", " PRN 3: El= 46.0°, Az= 51.3°\n", " PRN 4: El= 46.0°, Az= 51.3°\n", " PRN 5: El= 46.0°, Az= 51.3°\n", " PRN 6: El= 46.0°, Az= 51.3°\n", " PRN 7: El= 46.0°, Az= 51.3°\n", " PRN 8: El= 46.0°, Az= 51.3°\n" ] } ], "source": [ "# Simulate satellite constellation\n", "# Generate satellites at various azimuths and elevations\n", "n_sats = 8\n", "sat_azimuths = np.linspace(0, 2*np.pi, n_sats, endpoint=False)\n", "sat_elevations = np.array([45, 30, 60, 25, 55, 35, 50, 40]) * np.pi / 180\n", "\n", "# Convert to ECEF positions (assume ~20,000 km altitude)\n", "sat_altitude = 20200e3 # GPS orbit altitude\n", "user_ecef = np.array(geodetic_to_ecef(lat0, lon0, alt0))\n", "\n", "# Simple satellite record (lightweight data container)\n", "class SimpleSatellite:\n", " def __init__(self, prn, x, y, z):\n", " self.prn = prn\n", " self.x = x\n", " self.y = y\n", " self.z = z\n", "\n", "satellites = []\n", "for i in range(n_sats):\n", " # Unit vector from user to satellite in NED\n", " az = sat_azimuths[i]\n", " el = sat_elevations[i]\n", " \n", " # NED components\n", " north = np.cos(el) * np.cos(az)\n", " east = np.cos(el) * np.sin(az)\n", " down = -np.sin(el) # Negative because sat is up\n", " \n", " # Convert to ECEF\n", " ecef_unit = np.array(ned_to_ecef(north, east, down, lat_ref=lat0, lon_ref=lon0, alt_ref=alt0))\n", " sat_ecef = user_ecef + sat_altitude * ecef_unit\n", " \n", " satellites.append(SimpleSatellite(\n", " prn=i+1,\n", " x=sat_ecef[0],\n", " y=sat_ecef[1],\n", " z=sat_ecef[2]\n", " ))\n", "\n", "print(f\"Simulated {n_sats} GPS satellites\")\n", "print(\"\\nSatellite elevation and azimuth:\")\n", "for sat in satellites:\n", " # Compute elevation and azimuth\n", " sat_pos = np.array([sat.x, sat.y, sat.z])\n", " el, az = satellite_elevation_azimuth(user_ecef, sat_pos)\n", " print(f\" PRN {sat.prn:2d}: El={np.degrees(el):5.1f}°, Az={np.degrees(az):6.1f}°\")" ] }, { "cell_type": "code", "execution_count": 25, "id": "cell-9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Dilution of Precision\n", "========================================\n", "GDOP (Geometric): 86672333.73\n", "PDOP (Position): 61442924.29\n", "HDOP (Horizontal): 47370972.88\n", "VDOP (Vertical): 39130855.77\n", "\n", "Position Accuracy (1σ) with UERE=3.0m:\n", " Horizontal: 142112918.6 m\n", " Vertical: 117392567.3 m\n", " 3D: 184328772.9 m\n" ] } ], "source": [ "# Compute DOP values\n", "# Build geometry matrix (line-of-sight unit vectors + clock column)\n", "H = np.zeros((len(satellites), 4))\n", "for i, sat in enumerate(satellites):\n", " sat_ecef_pos = np.array([sat.x, sat.y, sat.z])\n", " los = sat_ecef_pos - user_ecef\n", " range_val = np.linalg.norm(los)\n", " H[i, :3] = -los / range_val # Unit vector toward satellite\n", " H[i, 3] = 1.0 # Clock column\n", "\n", "gdop, pdop, hdop, vdop = compute_dop(H)\n", "\n", "print(\"Dilution of Precision\")\n", "print(\"=\" * 40)\n", "print(f\"GDOP (Geometric): {gdop:.2f}\")\n", "print(f\"PDOP (Position): {pdop:.2f}\")\n", "print(f\"HDOP (Horizontal): {hdop:.2f}\")\n", "print(f\"VDOP (Vertical): {vdop:.2f}\")\n", "\n", "# Position accuracy estimate\n", "sigma_uere = 3.0 # User Equivalent Range Error (m)\n", "print(f\"\\nPosition Accuracy (1σ) with UERE={sigma_uere}m:\")\n", "print(f\" Horizontal: {hdop * sigma_uere:.1f} m\")\n", "print(f\" Vertical: {vdop * sigma_uere:.1f} m\")\n", "print(f\" 3D: {pdop * sigma_uere:.1f} m\")" ] }, { "cell_type": "code", "execution_count": 27, "id": "cell-10", "metadata": {}, "outputs": [], "source": [ "# Visualize satellite geometry\n", "fig = make_subplots(rows=1, cols=2, \n", " specs=[[{'type': 'polar'}, {'type': 'scene'}]],\n", " subplot_titles=[f'Sky Plot (HDOP={hdop:.2f}, VDOP={vdop:.2f})', \n", " 'Satellite Geometry'])\n", "\n", "# Sky plot\n", "for sat in satellites:\n", " el, az = satellite_elevation_azimuth([lat0, lon0, alt0], [sat.x, sat.y, sat.z])\n", " r = 90 - np.degrees(el) # Elevation inverted for polar plot\n", " fig.add_trace(\n", " go.Scatterpolar(r=[r], theta=[np.degrees(az)], mode='markers+text',\n", " marker=dict(size=12), text=[str(sat.prn)],\n", " textposition='top center', name=f'PRN {sat.prn}'),\n", " row=1, col=1\n", " )" ] }, { "cell_type": "markdown", "id": "cell-11", "metadata": {}, "source": [ "## 3. Loosely-Coupled Integration\n", "\n", "In loosely-coupled integration:\n", "- GNSS provides position/velocity solutions\n", "- INS provides attitude and high-rate navigation\n", "- Kalman filter combines both\n", "\n", "### Error State Model\n", "\n", "The error state vector is:\n", "$$\\delta\\mathbf{x} = [\\delta\\phi_n, \\delta\\phi_e, \\delta\\phi_d, \\delta v_n, \\delta v_e, \\delta v_d, \\delta\\text{lat}, \\delta\\text{lon}, \\delta\\text{alt}, b_{g_x}, b_{g_y}, b_{g_z}, b_{a_x}, b_{a_y}, b_{a_z}]^T$$" ] }, { "cell_type": "code", "execution_count": 28, "id": "cell-12", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Filter initialized\n", "State dimension: 15\n", "GNSS update rate: 1 Hz\n", "IMU rate: 100 Hz\n" ] } ], "source": [ "# Simulate integrated INS/GNSS navigation\n", "dt_imu = 0.01 # 100 Hz IMU\n", "dt_gnss = 1.0 # 1 Hz GNSS\n", "duration = 120.0 # 2 minutes\n", "\n", "n_imu_steps = int(duration / dt_imu)\n", "gnss_interval = int(dt_gnss / dt_imu)\n", "\n", "# Error state covariance\n", "P = np.diag([\n", " np.radians(1)**2, np.radians(1)**2, np.radians(1)**2, # Attitude (rad²)\n", " 0.1**2, 0.1**2, 0.1**2, # Velocity (m/s)²\n", " (10/R_M)**2, (10/R_N/np.cos(lat0))**2, 10**2, # Position (rad², m²)\n", " (0.01*np.pi/180/3600)**2, # Gyro bias x\n", " (0.01*np.pi/180/3600)**2, # Gyro bias y\n", " (0.01*np.pi/180/3600)**2, # Gyro bias z\n", " (100e-6*9.81)**2, # Accel bias x\n", " (100e-6*9.81)**2, # Accel bias y\n", " (100e-6*9.81)**2, # Accel bias z\n", "])\n", "\n", "# Process noise\n", "Q = np.diag([\n", " (0.001*np.pi/180)**2, # Gyro noise\n", " (0.001*np.pi/180)**2,\n", " (0.001*np.pi/180)**2,\n", " (100e-6*9.81)**2, # Accel noise\n", " (100e-6*9.81)**2,\n", " (100e-6*9.81)**2,\n", " 1e-20, 1e-20, 1e-20, # Position (small)\n", " (0.0001*np.pi/180/3600)**2, # Gyro bias stability\n", " (0.0001*np.pi/180/3600)**2,\n", " (0.0001*np.pi/180/3600)**2,\n", " (1e-6*9.81)**2, # Accel bias stability\n", " (1e-6*9.81)**2,\n", " (1e-6*9.81)**2,\n", "]) * dt_imu\n", "\n", "# GNSS measurement noise\n", "R_gnss = np.diag([\n", " (3.0/R_M)**2, # Latitude (3m)\n", " (3.0/R_N/np.cos(lat0))**2, # Longitude (3m)\n", " 5.0**2, # Altitude (5m)\n", " 0.1**2, 0.1**2, 0.1**2, # Velocity (0.1 m/s)\n", "])\n", "\n", "print(\"Filter initialized\")\n", "print(f\"State dimension: {len(P)}\")\n", "print(f\"GNSS update rate: {1/dt_gnss:.0f} Hz\")\n", "print(f\"IMU rate: {1/dt_imu:.0f} Hz\")" ] }, { "cell_type": "code", "execution_count": 29, "id": "cell-13", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Integrated navigation complete\n", "Final integrated position error: -114.0m N, 931.2m E\n" ] } ], "source": [ "# Run integrated navigation\n", "ins_state = initialize_ins_state(\n", " lat=lat0, lon=lon0, alt=alt0,\n", " vN=v_north, vE=v_east, vD=v_down,\n", " roll=roll0, pitch=pitch0, yaw=yaw0\n", ")\n", "\n", "# Error state\n", "error_state = np.zeros(15)\n", "\n", "# Storage\n", "integrated_positions = []\n", "ins_only_positions = []\n", "gnss_positions = []\n", "covariance_trace = []\n", "times = []\n", "\n", "# True trajectory\n", "true_lat, true_lon, true_alt = lat0, lon0, alt0\n", "true_vn, true_ve, true_vd = v_north, v_east, v_down\n", "\n", "# INS-only state for comparison\n", "ins_only_state = initialize_ins_state(\n", " lat=lat0, lon=lon0, alt=alt0,\n", " vN=v_north, vE=v_east, vD=v_down,\n", " roll=roll0, pitch=pitch0, yaw=yaw0\n", ")\n", "\n", "for i in range(n_imu_steps):\n", " t = i * dt_imu\n", " \n", " # Simulate true trajectory (constant velocity)\n", " R_M_t, R_N_t = radii_of_curvature(true_lat)\n", " true_lat += true_vn * dt_imu / (R_M_t + true_alt)\n", " true_lon += true_ve * dt_imu / ((R_N_t + true_alt) * np.cos(true_lat))\n", " true_alt -= true_vd * dt_imu\n", " \n", " # Generate IMU data with errors\n", " true_accel = ins_state.dcm @ np.array([0, 0, gravity_ned(true_lat, true_alt)[2]])\n", " true_gyro = np.zeros(3)\n", " accel = true_accel + accel_bias + np.random.randn(3) * accel_noise\n", " gyro = true_gyro + gyro_bias + np.random.randn(3) * gyro_noise\n", " \n", " imu = IMUData(accel=accel, gyro=gyro, dt=dt_imu)\n", " \n", " # INS mechanization\n", " ins_state = mechanize_ins_ned(ins_state, imu)\n", " ins_only_state = mechanize_ins_ned(ins_only_state, imu)\n", " \n", " # Predict covariance\n", " P = P + Q # Simplified prediction\n", " \n", " # GNSS update\n", " if i > 0 and i % gnss_interval == 0:\n", " # Simulate GNSS measurement with noise\n", " gnss_lat = true_lat + np.random.randn() * 3.0 / R_M_t\n", " gnss_lon = true_lon + np.random.randn() * 3.0 / (R_N_t * np.cos(true_lat))\n", " gnss_alt = true_alt + np.random.randn() * 5.0\n", " gnss_vn = true_vn + np.random.randn() * 0.1\n", " gnss_ve = true_ve + np.random.randn() * 0.1\n", " gnss_vd = true_vd + np.random.randn() * 0.1\n", " \n", " # Innovation\n", " z = np.array([\n", " gnss_lat - ins_state.latitude,\n", " gnss_lon - ins_state.longitude,\n", " gnss_alt - ins_state.altitude, \n", " gnss_vn - ins_state.velocity_north,\n", " gnss_ve - ins_state.velocity_east,\n", " gnss_vd - ins_state.velocity_down,\n", " ])\n", " \n", " # Measurement matrix (simplified)\n", " H = np.zeros((6, 15))\n", " H[0, 6] = 1 # lat\n", " H[1, 7] = 1 # lon\n", " H[2, 8] = 1 # alt\n", " H[3, 3] = 1 # v_n\n", " H[4, 4] = 1 # v_e\n", " H[5, 5] = 1 # v_d\n", " \n", " # Kalman gain\n", " S = H @ P @ H.T + R_gnss\n", " K = P @ H.T @ np.linalg.inv(S)\n", " \n", " # Update error state\n", " error_state = error_state + K @ z\n", " P = (np.eye(15) - K @ H) @ P\n", " \n", " # Store state estimates\n", " integrated_positions.append([ins_state.latitude, ins_state.longitude, ins_state.altitude])\n", " ins_only_positions.append([ins_only_state.latitude, ins_only_state.longitude, ins_only_state.altitude])\n", " gnss_positions.append([gnss_lat, gnss_lon, gnss_alt])\n", " covariance_trace.append(np.trace(P[:3, :3]))\n", " times.append(t)\n", "\n", "integrated_positions = np.array(integrated_positions)\n", "ins_only_positions = np.array(ins_only_positions)\n", "gnss_positions = np.array(gnss_positions)\n", "covariance_trace = np.array(covariance_trace)\n", "\n", "print(f\"Integrated navigation complete\")\n", "print(f\"Final integrated position error: {np.degrees(integrated_positions[-1, 0] - true_lat)*111000:.1f}m N, {np.degrees(integrated_positions[-1, 1] - true_lon)*111000*np.cos(lat0):.1f}m E\")" ] }, { "cell_type": "code", "execution_count": 30, "id": "cell-14", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "line": { "color": "#00ff88", "width": 2 }, "mode": "lines", "name": "True", "type": "scatter", "x": { "bdata": "AAAAAAAAHEAAAAAAAAAsQAAAAAAAADVAAAAAAAAAPEAAAAAAAIBBQAAAAAAAAEVAAAAAAACASEAAAAAAAABMQAAAAAAAgE9AAAAAAACAUUAAAAAAAEBTQAAAAAAAAFVAAAAAAADAVkAAAAAAAIBYQAAAAAAAQFpAAAAAAAAAXEAAAAAAAMBdQAAAAAAAgF9AAAAAAACgYEAAAAAAAIBhQAAAAAAAYGJAAAAAAABAY0AAAAAAACBkQAAAAAAAAGVAAAAAAADgZUAAAAAAAMBmQAAAAAAAoGdAAAAAAACAaEAAAAAAAGBpQAAAAAAAQGpAAAAAAAAga0AAAAAAAABsQAAAAAAA4GxAAAAAAADAbUAAAAAAAKBuQAAAAAAAgG9AAAAAAAAwcEAAAAAAAKBwQAAAAAAAEHFAAAAAAACAcUAAAAAAAPBxQAAAAAAAYHJAAAAAAADQckAAAAAAAEBzQAAAAAAAsHNAAAAAAAAgdEAAAAAAAJB0QAAAAAAAAHVAAAAAAABwdUAAAAAAAOB1QAAAAAAAUHZAAAAAAADAdkAAAAAAADB3QAAAAAAAoHdAAAAAAAAQeEAAAAAAAIB4QAAAAAAA8HhAAAAAAABgeUAAAAAAANB5QAAAAAAAQHpAAAAAAACwekAAAAAAACB7QAAAAAAAkHtAAAAAAAAAfEAAAAAAAHB8QAAAAAAA4HxAAAAAAABQfUAAAAAAAMB9QAAAAAAAMH5AAAAAAACgfkAAAAAAABB/QAAAAAAAgH9AAAAAAADwf0AAAAAAADCAQAAAAAAAaIBAAAAAAACggEAAAAAAANiAQAAAAAAAEIFAAAAAAABIgUAAAAAAAICBQAAAAAAAuIFAAAAAAADwgUAAAAAAACiCQAAAAAAAYIJAAAAAAACYgkAAAAAAANCCQAAAAAAACINAAAAAAABAg0AAAAAAAHiDQAAAAAAAsINAAAAAAADog0AAAAAAACCEQAAAAAAAWIRAAAAAAACQhEAAAAAAAMiEQAAAAAAAAIVAAAAAAAA4hUAAAAAAAHCFQAAAAAAAqIVAAAAAAADghUAAAAAAABiGQAAAAAAAUIZAAAAAAACIhkAAAAAAAMCGQAAAAAAA+IZAAAAAAAAwh0AAAAAAAGiHQAAAAAAAoIdAAAAAAADYh0AAAAAAABCIQAAAAAAASIhAAAAAAACAiEAAAAAAALiIQAAAAAAA8IhAAAAAAAAoiUAAAAAAAGCJQAAAAAAAmIlAAAAAAADQiUAAAAAAAAiKQA==", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "AAAAAAAAHEAAAAAAAAAsQAAAAAAAADVAAAAAAAAAPEAAAAAAAIBBQAAAAAAAAEVAAAAAAACASEAAAAAAAABMQAAAAAAAgE9AAAAAAACAUUAAAAAAAEBTQAAAAAAAAFVAAAAAAADAVkAAAAAAAIBYQAAAAAAAQFpAAAAAAAAAXEAAAAAAAMBdQAAAAAAAgF9AAAAAAACgYEAAAAAAAIBhQAAAAAAAYGJAAAAAAABAY0AAAAAAACBkQAAAAAAAAGVAAAAAAADgZUAAAAAAAMBmQAAAAAAAoGdAAAAAAACAaEAAAAAAAGBpQAAAAAAAQGpAAAAAAAAga0AAAAAAAABsQAAAAAAA4GxAAAAAAADAbUAAAAAAAKBuQAAAAAAAgG9AAAAAAAAwcEAAAAAAAKBwQAAAAAAAEHFAAAAAAACAcUAAAAAAAPBxQAAAAAAAYHJAAAAAAADQckAAAAAAAEBzQAAAAAAAsHNAAAAAAAAgdEAAAAAAAJB0QAAAAAAAAHVAAAAAAABwdUAAAAAAAOB1QAAAAAAAUHZAAAAAAADAdkAAAAAAADB3QAAAAAAAoHdAAAAAAAAQeEAAAAAAAIB4QAAAAAAA8HhAAAAAAABgeUAAAAAAANB5QAAAAAAAQHpAAAAAAACwekAAAAAAACB7QAAAAAAAkHtAAAAAAAAAfEAAAAAAAHB8QAAAAAAA4HxAAAAAAABQfUAAAAAAAMB9QAAAAAAAMH5AAAAAAACgfkAAAAAAABB/QAAAAAAAgH9AAAAAAADwf0AAAAAAADCAQAAAAAAAaIBAAAAAAACggEAAAAAAANiAQAAAAAAAEIFAAAAAAABIgUAAAAAAAICBQAAAAAAAuIFAAAAAAADwgUAAAAAAACiCQAAAAAAAYIJAAAAAAACYgkAAAAAAANCCQAAAAAAACINAAAAAAABAg0AAAAAAAHiDQAAAAAAAsINAAAAAAADog0AAAAAAACCEQAAAAAAAWIRAAAAAAACQhEAAAAAAAMiEQAAAAAAAAIVAAAAAAAA4hUAAAAAAAHCFQAAAAAAAqIVAAAAAAADghUAAAAAAABiGQAAAAAAAUIZAAAAAAACIhkAAAAAAAMCGQAAAAAAA+IZAAAAAAAAwh0AAAAAAAGiHQAAAAAAAoIdAAAAAAADYh0AAAAAAABCIQAAAAAAASIhAAAAAAACAiEAAAAAAALiIQAAAAAAA8IhAAAAAAAAoiUAAAAAAAGCJQAAAAAAAmIlAAAAAAADQiUAAAAAAAAiKQA==", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#ff4757", "dash": "dash", "width": 1 }, "mode": "lines", "name": "INS Only", "opacity": 0.7, "type": "scatter", "x": { "bdata": "S8J0t5dIHECmpBPK5SYsQCDEcuanFjVA9MTfmYocPEBpgsM+95JBQMhc6mvaGUVArJiB2lqjSEDbsN+26C9MQEtBRnvwv09AVDdsxuypUUA840DNCHZTQEYyJnCERFVAaCAZGJYVV0B1s78hculYQMUO6/VOwFpAGGOHJ2OaXEBqOhtq5HdeQD60t3mCLGBAxzttcvseYUBnoj7MeBNiQEctDeAWCmNAd9x5lvACZEBIdHELIv5kQGoF0TXJ+2VAIU+opgD8ZkA/CwS74v5nQN2/qCGLBGlAMcKKURMNakCh7EqjlhhrQLYoV+wwJ2xAnCgWbvs4bUCSPU8cEE5uQOZgFhWKZm9AFsqsf0FBcECtFHKWCtFwQDOwKAOvYnFAI/2LaTz2cUC+4VsRwItyQLKbgMNGI3NA8VwFVt68c0C+hVW9lFh0QOAQ5PB39nRAODaOl5SWdUB6APsb+Dh2QBbDzCaw3XZAHshTjMqEd0ChwAFiVS54QIqHupZe2nhAp//kkPOIeUBQYo6PITp6QEVUv+L27XpAtRsFsYGke0AJHluz0F18QEIcwVnxGX1A5+O59vDYfUDlMNjQ3Zp+QEHBJoTFX39AWMeandoTgEAOzd2yXXmAQLUEouRy4IBAxEftbyFJgUCYlV4QcbOBQOO7shBpH4JAfpnA1hCNgkAp2Exub/yCQLlMsLWLbYNATCRzvmzgg0BRhXRxGVWEQNx61pWYy4RAIyyeFvFDhUCpwWnAKb6FQMAhAKxJOoZA4UTBSli4hkDrcmiuXDiHQEqHArlduodAtXyW0WI+iECrMlvycsSIQJhuaimVTIlANSZweNDWiUAIVWjgK2OKQNlf/M+u8YpApchhsmCCi0CLZtLWSBWMQI1kcDZuqoxAB2EbcdhBjUD53D2DjtuNQM8DO7OXd45AoiWuNfsVj0B0B8WIwLaPQBBtoe33LJBAR9MHjch/kEApanjg1dOQQBkRu7MjKZFA2xSO4LV/kUA4R6lckNeRQFfv7eq2MJJAu4rHUC2LkkAvUIWP9+aSQBTVN8sZRJNAK2iFMpiik0C77p5ZdgKUQHKGqAu4Y5RAMtdeFWHGlEC549yWdSqVQF6HaJT5j5VAxGf44/D2lUA3xImVX1+WQEcbh29JyZZAI9WuSrI0l0B9C8oinqGXQDaa5QMREJhAe2wXAA+AmEAUPeQZnPGYQIC8upy8ZJlAO9iO73TZmUD3lr5UyU+aQFAcg+i9x5pA4YtU5VZBm0ABf/95mLybQA==", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "JRzMgaJHHEBuldWjliMsQBV+qM53ETVA7TNpNcUQPED/2omfxYdBQMnH1rbiBkVAR/xYQq+FSEBiQjtXGwRMQHvE5dIagk9AeJOdctF/UUDLAxYLWD5TQN2bYb+a/FRAOJSzVpO6VkD1i2xePHhYQJf07HeRNVpAZHMu3YzyW0Cdkz9fJq9dQL3aeWtXa19Alq9DsIyTYED+YlM2MXFhQD7EY2WXTmJAAgoKkrsrY0APbpSmmQhkQFljrFct5WRAaOIcp3TBZUCdJXtrbp1mQIOmoTIXeWdAwWscUmtUaEArYgjBZi9pQPybdgEHCmpAL6QtR0rkakBlrrxNLr5rQN08I3exl2xAVuRnR9BwbUDtg5QQh0luQN99vxLRIW9A1FVJK6v5b0D/sNQhiWhwQFS7JJcB1HBATb/r5Ds/cUCH+WarNapxQMZWeqftFHJAc373fWN/ckDadYo3lelyQDHIM9CCU3NAKaMQUiu9c0DLzqavjCZ0QFRiQ1amj3RAhhtnKXf4dEAthi3F/WB1QCsRr2w4yXVAw8OUEyYxdkBIvuzDxJh2QLZiCQQTAHdA18mjDBBnd0CR8pEwus13QAV6dEUPNHhADC2r+A2aeEDoPrs6tP94QJ4gU9MAZXlApTuvhfHJeUAcbId6hS56QBimGni8knpAsaSMxJT2ekCodkicC1p7QO3jnt8evXtA85dpgswffEB1ba3vE4J8QIpCCRXz43xAsmvLTmhFfUA83hSTcaZ9QAjHdY8LB35ANkvrLzVnfkCU6zyq7MZ+QOTFkdgwJn9A62ftGgGFf0CziKYRXON/QGSI+wigIIBA8inFzFVPgEADkKylzn2AQCpCUKkJrIBAXALj3AXagEBoEXz2wQeBQGYB4Sg9NYFAAi/Gf3ZigUDIkEhNbY+BQMCk7IwgvIFAILh5r47ogUB1H/b6thSCQAxziVmYQIJAn+3jGTJsgkDdBYWwg5eCQG41oP2LwoJAjH/N7EntgkBSh/zbvBeDQPXG+fvjQYNAZBvOnb5rg0DAMM1BS5WDQBnyuJiIvoNAYhJEPnbng0BTcPTpEhCEQKKLjYRdOIRAZ0l5lVRghED5/KCr9oeEQOvJmLRCr4RAiwKmOTfWhEDc17+v0vyEQLMicpITI4VAJKlHW/lIhUAxR/Uog26FQDilc/Gvk4VADSqe7H64hUCvC8zc7tyFQGEJJhn/AIZA0s65/a4khkDV1Hl8/UeGQLUegc/paoZAEPKjhnONhkB7vKf6ma+GQA==", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#00d4ff", "width": 1.5 }, "mode": "lines", "name": "INS/GNSS", "type": "scatter", "x": { "bdata": "S8J0t5dIHECmpBPK5SYsQCDEcuanFjVA9MTfmYocPEBpgsM+95JBQMhc6mvaGUVArJiB2lqjSEDbsN+26C9MQEtBRnvwv09AVDdsxuypUUA840DNCHZTQEYyJnCERFVAaCAZGJYVV0B1s78hculYQMUO6/VOwFpAGGOHJ2OaXEBqOhtq5HdeQD60t3mCLGBAxzttcvseYUBnoj7MeBNiQEctDeAWCmNAd9x5lvACZEBIdHELIv5kQGoF0TXJ+2VAIU+opgD8ZkA/CwS74v5nQN2/qCGLBGlAMcKKURMNakCh7EqjlhhrQLYoV+wwJ2xAnCgWbvs4bUCSPU8cEE5uQOZgFhWKZm9AFsqsf0FBcECtFHKWCtFwQDOwKAOvYnFAI/2LaTz2cUC+4VsRwItyQLKbgMNGI3NA8VwFVt68c0C+hVW9lFh0QOAQ5PB39nRAODaOl5SWdUB6APsb+Dh2QBbDzCaw3XZAHshTjMqEd0ChwAFiVS54QIqHupZe2nhAp//kkPOIeUBQYo6PITp6QEVUv+L27XpAtRsFsYGke0AJHluz0F18QEIcwVnxGX1A5+O59vDYfUDlMNjQ3Zp+QEHBJoTFX39AWMeandoTgEAOzd2yXXmAQLUEouRy4IBAxEftbyFJgUCYlV4QcbOBQOO7shBpH4JAfpnA1hCNgkAp2Exub/yCQLlMsLWLbYNATCRzvmzgg0BRhXRxGVWEQNx61pWYy4RAIyyeFvFDhUCpwWnAKb6FQMAhAKxJOoZA4UTBSli4hkDrcmiuXDiHQEqHArlduodAtXyW0WI+iECrMlvycsSIQJhuaimVTIlANSZweNDWiUAIVWjgK2OKQNlf/M+u8YpApchhsmCCi0CLZtLWSBWMQI1kcDZuqoxAB2EbcdhBjUD53D2DjtuNQM8DO7OXd45AoiWuNfsVj0B0B8WIwLaPQBBtoe33LJBAR9MHjch/kEApanjg1dOQQBkRu7MjKZFA2xSO4LV/kUA4R6lckNeRQFfv7eq2MJJAu4rHUC2LkkAvUIWP9+aSQBTVN8sZRJNAK2iFMpiik0C77p5ZdgKUQHKGqAu4Y5RAMtdeFWHGlEC549yWdSqVQF6HaJT5j5VAxGf44/D2lUA3xImVX1+WQEcbh29JyZZAI9WuSrI0l0B9C8oinqGXQDaa5QMREJhAe2wXAA+AmEAUPeQZnPGYQIC8upy8ZJlAO9iO73TZmUD3lr5UyU+aQFAcg+i9x5pA4YtU5VZBm0ABf/95mLybQA==", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "JRzMgaJHHEBuldWjliMsQBV+qM53ETVA7TNpNcUQPED/2omfxYdBQMnH1rbiBkVAR/xYQq+FSEBiQjtXGwRMQHvE5dIagk9AeJOdctF/UUDLAxYLWD5TQN2bYb+a/FRAOJSzVpO6VkD1i2xePHhYQJf07HeRNVpAZHMu3YzyW0Cdkz9fJq9dQL3aeWtXa19Alq9DsIyTYED+YlM2MXFhQD7EY2WXTmJAAgoKkrsrY0APbpSmmQhkQFljrFct5WRAaOIcp3TBZUCdJXtrbp1mQIOmoTIXeWdAwWscUmtUaEArYgjBZi9pQPybdgEHCmpAL6QtR0rkakBlrrxNLr5rQN08I3exl2xAVuRnR9BwbUDtg5QQh0luQN99vxLRIW9A1FVJK6v5b0D/sNQhiWhwQFS7JJcB1HBATb/r5Ds/cUCH+WarNapxQMZWeqftFHJAc373fWN/ckDadYo3lelyQDHIM9CCU3NAKaMQUiu9c0DLzqavjCZ0QFRiQ1amj3RAhhtnKXf4dEAthi3F/WB1QCsRr2w4yXVAw8OUEyYxdkBIvuzDxJh2QLZiCQQTAHdA18mjDBBnd0CR8pEwus13QAV6dEUPNHhADC2r+A2aeEDoPrs6tP94QJ4gU9MAZXlApTuvhfHJeUAcbId6hS56QBimGni8knpAsaSMxJT2ekCodkicC1p7QO3jnt8evXtA85dpgswffEB1ba3vE4J8QIpCCRXz43xAsmvLTmhFfUA83hSTcaZ9QAjHdY8LB35ANkvrLzVnfkCU6zyq7MZ+QOTFkdgwJn9A62ftGgGFf0CziKYRXON/QGSI+wigIIBA8inFzFVPgEADkKylzn2AQCpCUKkJrIBAXALj3AXagEBoEXz2wQeBQGYB4Sg9NYFAAi/Gf3ZigUDIkEhNbY+BQMCk7IwgvIFAILh5r47ogUB1H/b6thSCQAxziVmYQIJAn+3jGTJsgkDdBYWwg5eCQG41oP2LwoJAjH/N7EntgkBSh/zbvBeDQPXG+fvjQYNAZBvOnb5rg0DAMM1BS5WDQBnyuJiIvoNAYhJEPnbng0BTcPTpEhCEQKKLjYRdOIRAZ0l5lVRghED5/KCr9oeEQOvJmLRCr4RAiwKmOTfWhEDc17+v0vyEQLMicpITI4VAJKlHW/lIhUAxR/Uog26FQDilc/Gvk4VADSqe7H64hUCvC8zc7tyFQGEJJhn/AIZA0s65/a4khkDV1Hl8/UeGQLUegc/paoZAEPKjhnONhkB7vKf6ma+GQA==", "dtype": "f8" }, "yaxis": "y" }, { "marker": { "color": "#ffb800", "opacity": 0.5, "size": 4 }, "mode": "markers", "name": "GNSS", "type": "scatter", "x": { "bdata": "miixEWFhIECXooF8gicoQHMC920YFTRAMs6L6TRWQEBg44JVh19AQLN4Gnl9QUZAN2THN1xbSUBgOa8pU4FIQBLrm0/9705Ag+H4+sNaUkBGc6Bu+MxRQG3LXIeiC1RAhDWZV5nHV0D8NuYtycJYQClVARCHEVpA28IJq477W0Dv3sv17YdcQHANw/recF9AZo0qRoP8YECgz/vHODRhQJq81W4dHGJAWw3MU78iY0A8/IMuyK1kQLaZ15ImfmVA8PWp8bnQZUBIHqA7dXZmQMggKT7ueWdAvpXUue3naEDACszB/wNpQN8Z+8YoVGpAi+TtAYWJa0BWXWoyrrdrQKwdIjmLNW1A9UsD5EAJbkAQ1Aatw51uQNAHr/9us29Axh7mGwtGcEDlvWO80aZwQI/UFk3DAHFAwq8QrsWhcUCYHn3xwh1yQMc0OAY/LXJATQuPkSKcckAD4GnzMBlzQM0EX80td3NAUq1TVk4WdEBuYXtNRKZ0QHgD9HSs1XRAGkFq+vcxdUCCtvveCpJ1QHVhugxbGnZAasy3/7IEd0DUIZhqQWZ3QA4moYs+EHhAPgi5CQIgeEAV3HwnEo94QKypReztfHlAAJVNhHJ/eUBmZuqAird5QIdJ2WHCDnpAoG1neciDekDVDU5rFhN7QACdfL3HrXtA3Ph6lXwbfECMsrnXwkJ8QOc4UDpW+nxA+HK/vnNAfUCnYu3GYfV9QFDOot0ndX5Aq48G5qnNfkBKXQZa6/9+QBBrHHaxlX9A2ZKwH3mff0Ab2ctGAy6AQMR7QWgEa4BAUKbTUPOegEAe+bjtGsuAQGMf3PPYKoFAFZKRt7E/gUCOcydVH4uBQFurKsEZ0YFAtUs8sUkBgkCiaAfMfiyCQLi8m+Fvf4JA5Atp4LSbgkBBUDtaObiCQMcDkUa1BINA1tKH1Tslg0D5pV17LluDQBQTHeI+roNA3HinrhL0g0B01/ALlTiEQKAoBGdmSYRA0U9iORBxhEBuk1tF9dqEQMD1GV/zCoVAHQixTkBdhUDaum1+Z2yFQEvQ9N2flIVAyDYOdk/ghUDtcmDUZyeGQLyQetIdNoZAjXjKHkSdhkCpe0jJm6KGQFc8cx/5+YZACVH2v6NPh0DcnxIbOTqHQEScQ6rxp4dAA0Zx7h7vh0AjFoIhKx6IQGgfjbW0S4hAQ64Kz0JoiEB35UOQtaeIQPWTlJnT3YhAPRmau+f5iEDkR+Qo41uJQCk9TcLQdolAmB5cMlnPiUCzkh98oxCKQA==", "dtype": "f8" }, "xaxis": "x", "y": { "bdata": "LS3k0l07JEDtorHt5SYiQO833PWVMjNAnjQogsY5PEAmTGiQXsI+QAKIKRNEpkZAPfYFaVRARUDN6rh8BnhNQLyw95DI1E9ALqoPkJyLUEDibB+ijpRSQKU+oIEYzFNAlidPoracVkBmpbULA+ZXQPcv/sdcKFtAcFUjm4pdXUAHVceg6iJdQA3ZZthXr19ASyWTHrobYECuduBD+Y1hQM6A2ERyPGJA3QWzJKxbYkCNHaGvXjxkQOFa9weZ6GRAlU4IJr1QZkAsd2l3VoJmQAyHT8O6WWdAKTuH4gGDaED7LoaQn3FpQC25KOadC2pAmc6KqNBDa0Cf2+ERtMJrQOrsUX8MpWxAAPf/CiHXbUDsrwXXLIZuQDJ3zrACum9A2z9sU/cGcEDILifTYq5wQHG0KKzv6nBAst9Hea5vcUAvQrGylOpxQKrFLv5ScXJAghCopJf0ckD3/ACsLDpzQA/ZuIGyFnRAewRPbFVidEDvfPFuCYl0QOoIq8gL0XRAzgGdvWSIdUCKso4ZzlB2QDrVL43cl3ZAdNg3Y+TOdkD+aPCAzU53QES4BdzYT3dAAsAz+Pn9d0AXr60zt5t4QHxQdcwH2nhAZgDepScheUC7qmL1jNZ5QMGTKXTwTXpAkH1vO135ekCVZ0OkgE17QOY9HztBX3tAc2bUJmgMfEA5CDFXcC18QPPt/0SkKH1Au6Pnke1KfUDy7wb0H9p9QFFGt37lPH5Arlb3ZAJSfkAaonPkLeN+QDhf4jeYQ39ARe5EPYy8f0CVdObB4ECAQJTr3nrhg4BArXmSUlelgECp2NRuL96AQF9okH/qM4FAava803ZdgUBYPNpxsnyBQEvOdzGx1IFAVKX0bUMdgkCWmIIO3iaCQDhUJoYkWIJA+6dU5pGbgkCGVYXTC+OCQNtrOpIX3oJA89KjtEZhg0BT1z0bpF+DQKo9soRB2INAoKZFu6kUhED+/Q/KzuKDQGLQgiIVYIRAZXAWrnCXhEBm4JxYqsaEQHOgLsNcFoVA3r4GuhNmhUAdscqbuXuFQI7fFyxYxYVAs+ZEtBPHhUA++6DyL/+FQNnm2WFwPoZA7JNDI416hkC7XsZ27bCGQHAjJlXq4YZAZex16h8Rh0AFszyBe3yHQFXIdnz7nodAJpXgrPevh0B3Was/OBaIQNfn2vVSgYhA1yxqQsKFiEAgAUavD6CIQJnr4SnFwohA1v8AMGMuiUB2Gig+1TuJQJBv5co9molAkKEFoMy2iUAYv9UmdAWKQA==", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "INS/GNSS", "showlegend": false, "type": "scatter", "x": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 ], "xaxis": "x2", "y": { "bdata": "Eg498yF/uT++MRyWW1y6P6KLr1Onm7w/X8cS3kaNwD+n3yRTGH/EPxQppdYiwco/NCat2Izn0T8ibN2r2ArYPykPzoKs/N8/zThHInD25D91EUIHpgfrP9Ocv6x9JvE/jFfUoINw9T+4rbJozW76P6u78fBqFwBABa4lKBtfA0A+2v0wNBUHQNAAMSgDQAtAdjXfDtXlD0DpWZFu1IYSQGL8xhxLXxVAx2b3arJ/GEDAyJkVlusbQD0mKte9ph9AO4iEzj7aIUAYcz70DwwkQLITj3+QaiZAs9Kiulv3KEAipVmOK7QrQBrG8/a+oi5AzsjDWVXiMECWoEq0x40yQBT6poyPVDRAO65f5ns3NkCyo7pCYTc4QEhd8qgtVTpAkwL1wryRPEAoi6h55O0+QEarHHU5tUBA8WEoyCQEQkDPsZ1HJWRDQPjOiR2r1URAgBDbLhtZRkDtGrTn4e5HQKDVF95rl0lAMaW03CdTS0Cst5ywhyJNQJaC5Z36BU9AW4AYFPZ+UEDNl4ltY4VRQF9rYAZ/llJAMF/qlIGyU0DLGFR/ptlUQDQUFNgjDFZACoKZ6y5KV0CgjI04AZRYQGGwq9DR6VlAZM3noNVLW0A3+A34RrpcQOpPGh9dNV5AGYhqolK9X0BS8lWtMqlgQCmxBKxnemFAV4AUGGZSYkANz4KSSjFjQEuxoeIwF2RA+Yu7ljUEZUBJUKZGdPhlQGo/ZloI9GZAlDGUrw33Z0A42AfCnwFpQKaAdobbE2pA7x/oz94ta0ARMHAexk9sQAvYhA+teW1AxobuMrGrbkDvBEiT7uVvQFHYlM1AlHBAGcNSPcM5cUDShVSrjONxQPFfhhGskXJA09SqZjBEc0Dcibt7KPtzQHTRfVqitnRAFgXgYK12dUADaR2YVzt2QIOs9K+vBHdAtd0NVMTSd0D8qjqSpKV4QBDe6utgfXlA+48KSQlaekA4ti6orDt7QMt5jGBaInxAVbdG/iEOfUA7XvFiE/99QI2tO7A99X5AyGqrCrDwf0AKtuZZvXiAQHIiNTbX+4BAlpQ79a2BgUDqr7DYSAqCQOTn84mvlYJAAN+GwOkjg0AgicHY/7SDQHrBBO35SIRA9Y72xt/fhEDEANmluXmFQIbA/TWPFoZAI1iJK2i2hkDxQ3+KTFmHQL10zXtE/4dA5Yj0LFioiEDJ/8S5j1SJQL6nL77zA4pA5+BGDI22ikAZ+V45ZGyLQPVS24aBJYxARjSMaO3hjEAgYERBsKGNQA==", "dtype": "f8" }, "yaxis": "y2" }, { "line": { "color": "#ff4757", "dash": "dash", "width": 1 }, "mode": "lines", "name": "INS Only", "opacity": 0.7, "showlegend": false, "type": "scatter", "x": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 ], "xaxis": "x2", "y": { "bdata": "Eg498yF/uT++MRyWW1y6P6KLr1Onm7w/X8cS3kaNwD+n3yRTGH/EPxQppdYiwco/NCat2Izn0T8ibN2r2ArYPykPzoKs/N8/zThHInD25D91EUIHpgfrP9Ocv6x9JvE/jFfUoINw9T+4rbJozW76P6u78fBqFwBABa4lKBtfA0A+2v0wNBUHQNAAMSgDQAtAdjXfDtXlD0DpWZFu1IYSQGL8xhxLXxVAx2b3arJ/GEDAyJkVlusbQD0mKte9ph9AO4iEzj7aIUAYcz70DwwkQLITj3+QaiZAs9Kiulv3KEAipVmOK7QrQBrG8/a+oi5AzsjDWVXiMECWoEq0x40yQBT6poyPVDRAO65f5ns3NkCyo7pCYTc4QEhd8qgtVTpAkwL1wryRPEAoi6h55O0+QEarHHU5tUBA8WEoyCQEQkDPsZ1HJWRDQPjOiR2r1URAgBDbLhtZRkDtGrTn4e5HQKDVF95rl0lAMaW03CdTS0Cst5ywhyJNQJaC5Z36BU9AW4AYFPZ+UEDNl4ltY4VRQF9rYAZ/llJAMF/qlIGyU0DLGFR/ptlUQDQUFNgjDFZACoKZ6y5KV0CgjI04AZRYQGGwq9DR6VlAZM3noNVLW0A3+A34RrpcQOpPGh9dNV5AGYhqolK9X0BS8lWtMqlgQCmxBKxnemFAV4AUGGZSYkANz4KSSjFjQEuxoeIwF2RA+Yu7ljUEZUBJUKZGdPhlQGo/ZloI9GZAlDGUrw33Z0A42AfCnwFpQKaAdobbE2pA7x/oz94ta0ARMHAexk9sQAvYhA+teW1AxobuMrGrbkDvBEiT7uVvQFHYlM1AlHBAGcNSPcM5cUDShVSrjONxQPFfhhGskXJA09SqZjBEc0Dcibt7KPtzQHTRfVqitnRAFgXgYK12dUADaR2YVzt2QIOs9K+vBHdAtd0NVMTSd0D8qjqSpKV4QBDe6utgfXlA+48KSQlaekA4ti6orDt7QMt5jGBaInxAVbdG/iEOfUA7XvFiE/99QI2tO7A99X5AyGqrCrDwf0AKtuZZvXiAQHIiNTbX+4BAlpQ79a2BgUDqr7DYSAqCQOTn84mvlYJAAN+GwOkjg0AgicHY/7SDQHrBBO35SIRA9Y72xt/fhEDEANmluXmFQIbA/TWPFoZAI1iJK2i2hkDxQ3+KTFmHQL10zXtE/4dA5Yj0LFioiEDJ/8S5j1SJQL6nL77zA4pA5+BGDI22ikAZ+V45ZGyLQPVS24aBJYxARjSMaO3hjEAgYERBsKGNQA==", "dtype": "f8" }, "yaxis": "y2" }, { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "showlegend": false, "type": "scatter", "x": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119 ], "xaxis": "x3", "y": { "bdata": "OJcJxPTxTT/g3G669vFNP4gi1LD48U0/MGg5p/rxTT/YrZ6d/PFNP4DzA5T+8U0/KDlpigDyTT/Qfs6AAvJNP3jEM3cE8k0/IAqZbQbyTT/IT/5jCPJNP3CVY1oK8k0/GNvIUAzyTT/AIC5HDvJNP2hmkz0Q8k0/EKz4MxLyTT+48V0qFPJNP2A3wyAW8k0/CH0oFxjyTT+wwo0NGvJNP1gI8wMc8k0/AE5Y+h3yTT+ok73wH/JNP1DZIuch8k0/+B6I3SPyTT+gZO3TJfJNP0iqUson8k0/8O+3wCnyTT+YNR23K/JNP0B7gq0t8k0/6MDnoy/yTT+QBk2aMfJNPzhMspAz8k0/4JEXhzXyTT+I13x9N/JNPzAd4nM58k0/2GJHajvyTT+AqKxgPfJNPyjuEVc/8k0/0DN3TUHyTT94edxDQ/JNPyC/QTpF8k0/yASnMEfyTT9wSgwnSfJNPxiQcR1L8k0/wNXWE03yTT9oGzwKT/JNPxBhoQBR8k0/uKYG91LyTT9g7GvtVPJNPwgy0eNW8k0/sHc22ljyTT9YvZvQWvJNPwADAcdc8k0/qEhmvV7yTT9QjsuzYPJNP/jTMKpi8k0/oBmWoGTyTT9IX/uWZvJNP/CkYI1o8k0/mOrFg2ryTT9AMCt6bPJNP+h1kHBu8k0/kLv1ZnDyTT84AVtdcvJNP+BGwFN08k0/iIwlSnbyTT8w0opAePJNP9gX8DZ68k0/gF1VLXzyTT8oo7ojfvJNP9DoHxqA8k0/eC6FEILyTT8gdOoGhPJNP8i5T/2F8k0/cP+084fyTT8YRRrqifJNP8CKf+CL8k0/aNDk1o3yTT8QFkrNj/JNP7hbr8OR8k0/YKEUupPyTT8I53mwlfJNP7As36aX8k0/WHJEnZnyTT8AuKmTm/JNP6j9Doqd8k0/UEN0gJ/yTT/4iNl2ofJNP6DOPm2j8k0/SBSkY6XyTT/wWQlap/JNP5ifblCp8k0/QOXTRqvyTT/oKjk9rfJNP5BwnjOv8k0/OLYDKrHyTT/g+2ggs/JNP4hBzha18k0/MIczDbfyTT/YzJgDufJNP4AS/vm68k0/KFhj8LzyTT/QncjmvvJNP3jjLd3A8k0/ICmT08LyTT/IbvjJxPJNP3C0XcDG8k0/GPrCtsjyTT/APyityvJNP2iFjaPM8k0/EMvymc7yTT+4EFiQ0PJNP2BWvYbS8k0/CJwifdTyTT+w4Ydz1vJNP1gn7WnY8k0/AG1SYNryTT+osrdW3PJNPw==", "dtype": "f8" }, "yaxis": "y3" }, { "marker": { "color": "#00d4ff" }, "name": "Error dist", "nbinsx": 20, "showlegend": false, "type": "histogram", "x": { "bdata": "6VmRbtSGEkBi/MYcS18VQMdm92qyfxhAwMiZFZbrG0A9JirXvaYfQDuIhM4+2iFAGHM+9A8MJECyE49/kGomQLPSorpb9yhAIqVZjiu0K0AaxvP2vqIuQM7Iw1lV4jBAlqBKtMeNMkAU+qaMj1Q0QDuuX+Z7NzZAsqO6QmE3OEBIXfKoLVU6QJMC9cK8kTxAKIuoeeTtPkBGqxx1ObVAQPFhKMgkBEJAz7GdRyVkQ0D4zokdq9VEQIAQ2y4bWUZA7Rq05+HuR0Cg1Rfea5dJQDGltNwnU0tArLecsIciTUCWguWd+gVPQFuAGBT2flBAzZeJbWOFUUBfa2AGf5ZSQDBf6pSBslNAyxhUf6bZVEA0FBTYIwxWQAqCmesuSldAoIyNOAGUWEBhsKvQ0elZQGTN56DVS1tAN/gN+Ea6XEDqTxofXTVeQBmIaqJSvV9AUvJVrTKpYEApsQSsZ3phQFeAFBhmUmJADc+CkkoxY0BLsaHiMBdkQPmLu5Y1BGVASVCmRnT4ZUBqP2ZaCPRmQJQxlK8N92dAONgHwp8BaUCmgHaG2xNqQO8f6M/eLWtAETBwHsZPbEAL2IQPrXltQMaG7jKxq25A7wRIk+7lb0BR2JTNQJRwQBnDUj3DOXFA0oVUq4zjcUDxX4YRrJFyQNPUqmYwRHNA3Im7eyj7c0B00X1aorZ0QBYF4GCtdnVAA2kdmFc7dkCDrPSvrwR3QLXdDVTE0ndA/Ko6kqSleEAQ3urrYH15QPuPCkkJWnpAOLYuqKw7e0DLeYxgWiJ8QFW3Rv4hDn1AO17xYhP/fUCNrTuwPfV+QMhqqwqw8H9ACrbmWb14gEByIjU21/uAQJaUO/WtgYFA6q+w2EgKgkDk5/OJr5WCQADfhsDpI4NAIInB2P+0g0B6wQTt+UiEQPWO9sbf34RAxADZpbl5hUCGwP01jxaGQCNYiStotoZA8UN/ikxZh0C9dM17RP+HQOWI9CxYqIhAyf/EuY9UiUC+py++8wOKQOfgRgyNtopAGfleOWRsi0D1UtuGgSWMQEY0jGjt4YxAIGBEQbChjUA=", "dtype": "f8" }, "xaxis": "x4", "yaxis": "y4" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Trajectory Comparison", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Position Error Comparison", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Filter Covariance", "x": 0.225, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Final Position Error Distribution", "x": 0.775, "xanchor": "center", "xref": "paper", "y": 0.375, "yanchor": "bottom", "yref": "paper" }, { "showarrow": false, "text": "Mean: 285.59m", "x": 285.58983229307086, "xanchor": "left", "xref": "x4", "y": 1, "yanchor": "top", "yref": "y4 domain" } ], "height": 700, "shapes": [ { "line": { "color": "#ff4757", "dash": "dash" }, "type": "line", "x0": 285.58983229307086, "x1": 285.58983229307086, "xref": "x4", "y0": 0, "y1": 1, "yref": "y4 domain" } ], "template": { "layout": { "font": { "color": "#e6edf3" }, "paper_bgcolor": "#0d1117", "plot_bgcolor": "#0d1117", "xaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" }, "yaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" } } }, "xaxis": { "anchor": "y", "domain": [ 0, 0.45 ], "title": { "text": "East (m)" } }, "xaxis2": { "anchor": "y2", "domain": [ 0.55, 1 ], "title": { "text": "Time (s)" } }, "xaxis3": { "anchor": "y3", "domain": [ 0, 0.45 ], "title": { "text": "Time (s)" } }, "xaxis4": { "anchor": "y4", "domain": [ 0.55, 1 ], "title": { "text": "Position Error (m)" } }, "yaxis": { "anchor": "x", "domain": [ 0.625, 1 ], "scaleanchor": "x", "scaleratio": 1, "title": { "text": "North (m)" } }, "yaxis2": { "anchor": "x2", "domain": [ 0.625, 1 ], "title": { "text": "Horizontal Error (m)" } }, "yaxis3": { "anchor": "x3", "domain": [ 0, 0.375 ], "title": { "text": "Covariance Trace" }, "type": "log" }, "yaxis4": { "anchor": "x4", "domain": [ 0, 0.375 ], "title": { "text": "Count" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "Final INS-only error: 948.2 m\n", "Final INS/GNSS error: 948.2 m\n" ] } ], "source": [ "# Visualize integration results\n", "fig = make_subplots(rows=2, cols=2,\n", " subplot_titles=['Trajectory Comparison', 'Position Error Comparison',\n", " 'Filter Covariance', 'Final Position Error Distribution'])\n", "\n", "# Position comparison\n", "true_north = np.array(times) * v_north\n", "true_east = np.array(times) * v_east\n", "\n", "integrated_north = (integrated_positions[:, 0] - lat0) * (R_M + alt0)\n", "integrated_east = (integrated_positions[:, 1] - lon0) * (R_N + alt0) * np.cos(lat0)\n", "ins_only_north = (ins_only_positions[:, 0] - lat0) * (R_M + alt0)\n", "ins_only_east = (ins_only_positions[:, 1] - lon0) * (R_N + alt0) * np.cos(lat0)\n", "\n", "fig.add_trace(\n", " go.Scatter(x=true_east, y=true_north, mode='lines', name='True',\n", " line=dict(color='#00ff88', width=2)),\n", " row=1, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=ins_only_east, y=ins_only_north, mode='lines', name='INS Only',\n", " line=dict(color='#ff4757', width=1, dash='dash'), opacity=0.7),\n", " row=1, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=integrated_east, y=integrated_north, mode='lines', name='INS/GNSS',\n", " line=dict(color='#00d4ff', width=1.5)),\n", " row=1, col=1\n", ")\n", "if len(gnss_positions) > 0:\n", " gnss_north = (gnss_positions[:, 0] - lat0) * (R_M + alt0)\n", " gnss_east = (gnss_positions[:, 1] - lon0) * (R_N + alt0) * np.cos(lat0)\n", " fig.add_trace(\n", " go.Scatter(x=gnss_east, y=gnss_north, mode='markers', name='GNSS',\n", " marker=dict(color='#ffb800', size=4, opacity=0.5)),\n", " row=1, col=1\n", " )\n", "\n", "# Position error\n", "int_error_n = integrated_north - true_north\n", "int_error_e = integrated_east - true_east\n", "ins_error_n = ins_only_north - true_north\n", "ins_error_e = ins_only_east - true_east\n", "\n", "fig.add_trace(\n", " go.Scatter(x=times, y=np.sqrt(int_error_n**2 + int_error_e**2), mode='lines',\n", " name='INS/GNSS', line=dict(color='#00d4ff', width=2), showlegend=False),\n", " row=1, col=2\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=times, y=np.sqrt(ins_error_n**2 + ins_error_e**2), mode='lines',\n", " name='INS Only', line=dict(color='#ff4757', width=1, dash='dash'), \n", " opacity=0.7, showlegend=False),\n", " row=1, col=2\n", ")\n", "\n", "# Covariance\n", "fig.add_trace(\n", " go.Scatter(x=times, y=covariance_trace, mode='lines',\n", " line=dict(color='#00d4ff', width=2), showlegend=False),\n", " row=2, col=1\n", ")\n", "\n", "# Error histogram\n", "final_errors = np.sqrt(int_error_n[-100:]**2 + int_error_e[-100:]**2)\n", "fig.add_trace(\n", " go.Histogram(x=final_errors, nbinsx=20, name='Error dist',\n", " marker=dict(color='#00d4ff'), showlegend=False),\n", " row=2, col=2\n", ")\n", "fig.add_vline(x=np.mean(final_errors), line=dict(color='#ff4757', dash='dash'),\n", " annotation_text=f'Mean: {np.mean(final_errors):.2f}m', row=2, col=2)\n", "\n", "fig.update_xaxes(title_text='East (m)', row=1, col=1)\n", "fig.update_yaxes(title_text='North (m)', row=1, col=1, scaleanchor='x', scaleratio=1)\n", "fig.update_xaxes(title_text='Time (s)', row=1, col=2)\n", "fig.update_yaxes(title_text='Horizontal Error (m)', row=1, col=2)\n", "fig.update_xaxes(title_text='Time (s)', row=2, col=1)\n", "fig.update_yaxes(title_text='Covariance Trace', type='log', row=2, col=1)\n", "fig.update_xaxes(title_text='Position Error (m)', row=2, col=2)\n", "fig.update_yaxes(title_text='Count', row=2, col=2)\n", "\n", "fig.update_layout(template=dark_template, height=700)\n", "fig.show()\n", "\n", "print(f\"Final INS-only error: {np.sqrt(ins_error_n[-1]**2 + ins_error_e[-1]**2):.1f} m\")\n", "print(f\"Final INS/GNSS error: {np.sqrt(int_error_n[-1]**2 + int_error_e[-1]**2):.1f} m\")" ] }, { "cell_type": "markdown", "id": "cell-15", "metadata": {}, "source": [ "## 4. GNSS Outage Handling\n", "\n", "A key advantage of INS/GNSS integration is graceful degradation during GNSS outages." ] }, { "cell_type": "code", "execution_count": 31, "id": "cell-16", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "GNSS outage trial complete (30s outage)\n", "Position covariance increased by 0x during outage\n" ] } ], "source": [ "# Simulate navigation with GNSS outage\n", "outage_start = 30.0 # seconds\n", "outage_duration = 30.0 # 30 second outage\n", "\n", "# Re-run with outage\n", "ins_state = initialize_ins_state(\n", " lat=lat0, lon=lon0, alt=alt0,\n", " vN=v_north, vE=v_east, vD=v_down,\n", " roll=roll0, pitch=pitch0, yaw=yaw0\n", ")\n", "\n", "P = np.diag([\n", " np.radians(1)**2, np.radians(1)**2, np.radians(1)**2,\n", " 0.1**2, 0.1**2, 0.1**2,\n", " (10/R_M)**2, (10/R_N/np.cos(lat0))**2, 10**2,\n", " (0.01*np.pi/180/3600)**2, (0.01*np.pi/180/3600)**2, (0.01*np.pi/180/3600)**2,\n", " (100e-6*9.81)**2, (100e-6*9.81)**2, (100e-6*9.81)**2,\n", "])\n", "\n", "error_state = np.zeros(15)\n", "\n", "outage_positions = []\n", "outage_cov = []\n", "outage_times = []\n", "gnss_available = []\n", "\n", "true_lat, true_lon, true_alt = lat0, lon0, alt0\n", "\n", "for i in range(n_imu_steps):\n", " t = i * dt_imu\n", " \n", " # True trajectory\n", " R_M_t, R_N_t = radii_of_curvature(true_lat)\n", " true_lat += true_vn * dt_imu / (R_M_t + true_alt)\n", " true_lon += true_ve * dt_imu / ((R_N_t + true_alt) * np.cos(true_lat))\n", " \n", " # IMU data\n", " true_accel = ins_state.dcm @ np.array([0, 0, gravity_ned(true_lat, true_alt)[2]])\n", " accel = true_accel + accel_bias + np.random.randn(3) * accel_noise\n", " gyro = gyro_bias + np.random.randn(3) * gyro_noise\n", " imu = IMUData(accel=accel, gyro=gyro, dt=dt_imu)\n", " \n", " # INS mechanization\n", " ins_state = mechanize_ins_ned(ins_state, imu)\n", " P = P + Q\n", " \n", " # GNSS update (with outage)\n", " gnss_ok = not (outage_start <= t < outage_start + outage_duration)\n", " \n", " if i > 0 and i % gnss_interval == 0 and gnss_ok:\n", " gnss_lat = true_lat + np.random.randn() * 3.0 / R_M_t\n", " gnss_lon = true_lon + np.random.randn() * 3.0 / (R_N_t * np.cos(true_lat))\n", " gnss_alt = true_alt + np.random.randn() * 5.0\n", " \n", " z = np.array([\n", " gnss_lat - ins_state.latitude,\n", " gnss_lon - ins_state.longitude,\n", " gnss_alt - ins_state.altitude,\n", " true_vn + np.random.randn() * 0.1 - ins_state.velocity_north,\n", " true_ve + np.random.randn() * 0.1 - ins_state.velocity_east,\n", " np.random.randn() * 0.1 - ins_state.velocity_down,\n", " ])\n", " \n", " H = np.zeros((6, 15))\n", " H[0, 6] = 1; H[1, 7] = 1; H[2, 8] = 1\n", " H[3, 3] = 1; H[4, 4] = 1; H[5, 5] = 1\n", " \n", " S = H @ P @ H.T + R_gnss\n", " K = P @ H.T @ np.linalg.inv(S)\n", " error_state = error_state + K @ z\n", " P = (np.eye(15) - K @ H) @ P\n", " \n", " # Reconstruct INSState with corrected fields\n", " new_position = ins_state.position + error_state[6:9]\n", " new_velocity = ins_state.velocity + error_state[3:6]\n", " ins_state = INSState(\n", " position=new_position,\n", " velocity=new_velocity,\n", " quaternion=ins_state.quaternion,\n", " time=ins_state.time,\n", " )\n", " error_state = np.zeros(15)\n", " \n", " if i % 10 == 0:\n", " outage_positions.append([ins_state.latitude, ins_state.longitude, ins_state.altitude])\n", " outage_cov.append(np.sqrt(P[6, 6]) * R_M) # Position uncertainty in meters\n", " outage_times.append(t)\n", " gnss_available.append(gnss_ok)\n", "\n", "outage_positions = np.array(outage_positions)\n", "\n", "print(f\"GNSS outage trial complete ({outage_duration:.0f}s outage)\")\n", "print(f\"Position covariance increased by {outage_cov[-1] / outage_cov[0]:.0f}x during outage\")" ] }, { "cell_type": "code", "execution_count": 33, "id": "cell-17", "metadata": {}, "outputs": [ { "data": { "application/vnd.plotly.v1+json": { "config": { "plotlyServerURL": "https://plot.ly" }, "data": [ { "line": { "color": "#00d4ff", "width": 2 }, "mode": "lines", "name": "Position Error", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9, 60, 60.1, 60.2, 60.300000000000004, 60.4, 60.5, 60.6, 60.7, 60.800000000000004, 60.9, 61, 61.1, 61.2, 61.300000000000004, 61.4, 61.5, 61.6, 61.7, 61.800000000000004, 61.9, 62, 62.1, 62.2, 62.300000000000004, 62.4, 62.5, 62.6, 62.7, 62.800000000000004, 62.9, 63, 63.1, 63.2, 63.300000000000004, 63.4, 63.5, 63.6, 63.7, 63.800000000000004, 63.9, 64, 64.1, 64.2, 64.3, 64.4, 64.5, 64.6, 64.7, 64.8, 64.9, 65, 65.1, 65.2, 65.3, 65.4, 65.5, 65.6, 65.7, 65.8, 65.9, 66, 66.1, 66.2, 66.3, 66.4, 66.5, 66.6, 66.7, 66.8, 66.9, 67, 67.1, 67.2, 67.3, 67.4, 67.5, 67.6, 67.7, 67.8, 67.9, 68, 68.1, 68.2, 68.3, 68.4, 68.5, 68.60000000000001, 68.7, 68.8, 68.9, 69, 69.10000000000001, 69.2, 69.3, 69.4, 69.5, 69.60000000000001, 69.7, 69.8, 69.9, 70, 70.10000000000001, 70.2, 70.3, 70.4, 70.5, 70.60000000000001, 70.7, 70.8, 70.9, 71, 71.10000000000001, 71.2, 71.3, 71.4, 71.5, 71.60000000000001, 71.7, 71.8, 71.9, 72, 72.10000000000001, 72.2, 72.3, 72.4, 72.5, 72.60000000000001, 72.7, 72.8, 72.9, 73, 73.10000000000001, 73.2, 73.3, 73.4, 73.5, 73.60000000000001, 73.7, 73.8, 73.9, 74, 74.10000000000001, 74.2, 74.3, 74.4, 74.5, 74.60000000000001, 74.7, 74.8, 74.9, 75, 75.10000000000001, 75.2, 75.3, 75.4, 75.5, 75.60000000000001, 75.7, 75.8, 75.9, 76, 76.10000000000001, 76.2, 76.3, 76.4, 76.5, 76.60000000000001, 76.7, 76.8, 76.9, 77, 77.10000000000001, 77.2, 77.3, 77.4, 77.5, 77.60000000000001, 77.7, 77.8, 77.9, 78, 78.10000000000001, 78.2, 78.3, 78.4, 78.5, 78.60000000000001, 78.7, 78.8, 78.9, 79, 79.10000000000001, 79.2, 79.3, 79.4, 79.5, 79.60000000000001, 79.7, 79.8, 79.9, 80, 80.10000000000001, 80.2, 80.3, 80.4, 80.5, 80.60000000000001, 80.7, 80.8, 80.9, 81, 81.10000000000001, 81.2, 81.3, 81.4, 81.5, 81.60000000000001, 81.7, 81.8, 81.9, 82, 82.10000000000001, 82.2, 82.3, 82.4, 82.5, 82.60000000000001, 82.7, 82.8, 82.9, 83, 83.10000000000001, 83.2, 83.3, 83.4, 83.5, 83.60000000000001, 83.7, 83.8, 83.9, 84, 84.10000000000001, 84.2, 84.3, 84.4, 84.5, 84.60000000000001, 84.7, 84.8, 84.9, 85, 85.10000000000001, 85.2, 85.3, 85.4, 85.5, 85.60000000000001, 85.7, 85.8, 85.9, 86, 86.10000000000001, 86.2, 86.3, 86.4, 86.5, 86.60000000000001, 86.7, 86.8, 86.9, 87, 87.10000000000001, 87.2, 87.3, 87.4, 87.5, 87.60000000000001, 87.7, 87.8, 87.9, 88, 88.10000000000001, 88.2, 88.3, 88.4, 88.5, 88.60000000000001, 88.7, 88.8, 88.9, 89, 89.10000000000001, 89.2, 89.3, 89.4, 89.5, 89.60000000000001, 89.7, 89.8, 89.9, 90, 90.10000000000001, 90.2, 90.3, 90.4, 90.5, 90.60000000000001, 90.7, 90.8, 90.9, 91, 91.10000000000001, 91.2, 91.3, 91.4, 91.5, 91.60000000000001, 91.7, 91.8, 91.9, 92, 92.10000000000001, 92.2, 92.3, 92.4, 92.5, 92.60000000000001, 92.7, 92.8, 92.9, 93, 93.10000000000001, 93.2, 93.3, 93.4, 93.5, 93.60000000000001, 93.7, 93.8, 93.9, 94, 94.10000000000001, 94.2, 94.3, 94.4, 94.5, 94.60000000000001, 94.7, 94.8, 94.9, 95, 95.10000000000001, 95.2, 95.3, 95.4, 95.5, 95.60000000000001, 95.7, 95.8, 95.9, 96, 96.10000000000001, 96.2, 96.3, 96.4, 96.5, 96.60000000000001, 96.7, 96.8, 96.9, 97, 97.10000000000001, 97.2, 97.3, 97.4, 97.5, 97.60000000000001, 97.7, 97.8, 97.9, 98, 98.10000000000001, 98.2, 98.3, 98.4, 98.5, 98.60000000000001, 98.7, 98.8, 98.9, 99, 99.10000000000001, 99.2, 99.3, 99.4, 99.5, 99.60000000000001, 99.7, 99.8, 99.9, 100, 100.10000000000001, 100.2, 100.3, 100.4, 100.5, 100.60000000000001, 100.7, 100.8, 100.9, 101, 101.10000000000001, 101.2, 101.3, 101.4, 101.5, 101.60000000000001, 101.7, 101.8, 101.9, 102, 102.10000000000001, 102.2, 102.3, 102.4, 102.5, 102.60000000000001, 102.7, 102.8, 102.9, 103, 103.10000000000001, 103.2, 103.3, 103.4, 103.5, 103.60000000000001, 103.7, 103.8, 103.9, 104, 104.10000000000001, 104.2, 104.3, 104.4, 104.5, 104.60000000000001, 104.7, 104.8, 104.9, 105, 105.10000000000001, 105.2, 105.3, 105.4, 105.5, 105.60000000000001, 105.7, 105.8, 105.9, 106, 106.10000000000001, 106.2, 106.3, 106.4, 106.5, 106.60000000000001, 106.7, 106.8, 106.9, 107, 107.10000000000001, 107.2, 107.3, 107.4, 107.5, 107.60000000000001, 107.7, 107.8, 107.9, 108, 108.10000000000001, 108.2, 108.3, 108.4, 108.5, 108.60000000000001, 108.7, 108.8, 108.9, 109, 109.10000000000001, 109.2, 109.3, 109.4, 109.5, 109.60000000000001, 109.7, 109.8, 109.9, 110, 110.10000000000001, 110.2, 110.3, 110.4, 110.5, 110.60000000000001, 110.7, 110.8, 110.9, 111, 111.10000000000001, 111.2, 111.3, 111.4, 111.5, 111.60000000000001, 111.7, 111.8, 111.9, 112, 112.10000000000001, 112.2, 112.3, 112.4, 112.5, 112.60000000000001, 112.7, 112.8, 112.9, 113, 113.10000000000001, 113.2, 113.3, 113.4, 113.5, 113.60000000000001, 113.7, 113.8, 113.9, 114, 114.10000000000001, 114.2, 114.3, 114.4, 114.5, 114.60000000000001, 114.7, 114.8, 114.9, 115, 115.10000000000001, 115.2, 115.3, 115.4, 115.5, 115.60000000000001, 115.7, 115.8, 115.9, 116, 116.10000000000001, 116.2, 116.3, 116.4, 116.5, 116.60000000000001, 116.7, 116.8, 116.9, 117, 117.10000000000001, 117.2, 117.3, 117.4, 117.5, 117.60000000000001, 117.7, 117.8, 117.9, 118, 118.10000000000001, 118.2, 118.3, 118.4, 118.5, 118.60000000000001, 118.7, 118.8, 118.9, 119, 119.10000000000001, 119.2, 119.3, 119.4, 119.5, 119.60000000000001, 119.7, 119.8, 119.9 ], "xaxis": "x", "y": { "bdata": "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", "dtype": "f8" }, "yaxis": "y" }, { "line": { "color": "#00ff88", "dash": "dash", "width": 1.5 }, "mode": "lines", "name": "1σ Uncertainty", "type": "scatter", "x": [ 0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7000000000000001, 0.8, 0.9, 1, 1.1, 1.2, 1.3, 1.4000000000000001, 1.5, 1.6, 1.7, 1.8, 1.9000000000000001, 2, 2.1, 2.2, 2.3000000000000003, 2.4, 2.5, 2.6, 2.7, 2.8000000000000003, 2.9, 3, 3.1, 3.2, 3.3000000000000003, 3.4, 3.5, 3.6, 3.7, 3.8000000000000003, 3.9, 4, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6000000000000005, 4.7, 4.8, 4.9, 5, 5.1000000000000005, 5.2, 5.3, 5.4, 5.5, 5.6000000000000005, 5.7, 5.8, 5.9, 6, 6.1000000000000005, 6.2, 6.3, 6.4, 6.5, 6.6000000000000005, 6.7, 6.8, 6.9, 7, 7.1000000000000005, 7.2, 7.3, 7.4, 7.5, 7.6000000000000005, 7.7, 7.8, 7.9, 8, 8.1, 8.2, 8.3, 8.4, 8.5, 8.6, 8.700000000000001, 8.8, 8.9, 9, 9.1, 9.200000000000001, 9.3, 9.4, 9.5, 9.6, 9.700000000000001, 9.8, 9.9, 10, 10.1, 10.200000000000001, 10.3, 10.4, 10.5, 10.6, 10.700000000000001, 10.8, 10.9, 11, 11.1, 11.200000000000001, 11.3, 11.4, 11.5, 11.6, 11.700000000000001, 11.8, 11.9, 12, 12.1, 12.200000000000001, 12.3, 12.4, 12.5, 12.6, 12.700000000000001, 12.8, 12.9, 13, 13.1, 13.200000000000001, 13.3, 13.4, 13.5, 13.6, 13.700000000000001, 13.8, 13.9, 14, 14.1, 14.200000000000001, 14.3, 14.4, 14.5, 14.6, 14.700000000000001, 14.8, 14.9, 15, 15.1, 15.200000000000001, 15.3, 15.4, 15.5, 15.6, 15.700000000000001, 15.8, 15.9, 16, 16.1, 16.2, 16.3, 16.4, 16.5, 16.6, 16.7, 16.8, 16.9, 17, 17.1, 17.2, 17.3, 17.400000000000002, 17.5, 17.6, 17.7, 17.8, 17.900000000000002, 18, 18.1, 18.2, 18.3, 18.400000000000002, 18.5, 18.6, 18.7, 18.8, 18.900000000000002, 19, 19.1, 19.2, 19.3, 19.400000000000002, 19.5, 19.6, 19.7, 19.8, 19.900000000000002, 20, 20.1, 20.2, 20.3, 20.400000000000002, 20.5, 20.6, 20.7, 20.8, 20.900000000000002, 21, 21.1, 21.2, 21.3, 21.400000000000002, 21.5, 21.6, 21.7, 21.8, 21.900000000000002, 22, 22.1, 22.2, 22.3, 22.400000000000002, 22.5, 22.6, 22.7, 22.8, 22.900000000000002, 23, 23.1, 23.2, 23.3, 23.400000000000002, 23.5, 23.6, 23.7, 23.8, 23.900000000000002, 24, 24.1, 24.2, 24.3, 24.400000000000002, 24.5, 24.6, 24.7, 24.8, 24.900000000000002, 25, 25.1, 25.2, 25.3, 25.400000000000002, 25.5, 25.6, 25.7, 25.8, 25.900000000000002, 26, 26.1, 26.2, 26.3, 26.400000000000002, 26.5, 26.6, 26.7, 26.8, 26.900000000000002, 27, 27.1, 27.2, 27.3, 27.400000000000002, 27.5, 27.6, 27.7, 27.8, 27.900000000000002, 28, 28.1, 28.2, 28.3, 28.400000000000002, 28.5, 28.6, 28.7, 28.8, 28.900000000000002, 29, 29.1, 29.2, 29.3, 29.400000000000002, 29.5, 29.6, 29.7, 29.8, 29.900000000000002, 30, 30.1, 30.2, 30.3, 30.400000000000002, 30.5, 30.6, 30.7, 30.8, 30.900000000000002, 31, 31.1, 31.2, 31.3, 31.400000000000002, 31.5, 31.6, 31.7, 31.8, 31.900000000000002, 32, 32.1, 32.2, 32.3, 32.4, 32.5, 32.6, 32.7, 32.8, 32.9, 33, 33.1, 33.2, 33.3, 33.4, 33.5, 33.6, 33.7, 33.8, 33.9, 34, 34.1, 34.2, 34.300000000000004, 34.4, 34.5, 34.6, 34.7, 34.800000000000004, 34.9, 35, 35.1, 35.2, 35.300000000000004, 35.4, 35.5, 35.6, 35.7, 35.800000000000004, 35.9, 36, 36.1, 36.2, 36.300000000000004, 36.4, 36.5, 36.6, 36.7, 36.800000000000004, 36.9, 37, 37.1, 37.2, 37.300000000000004, 37.4, 37.5, 37.6, 37.7, 37.800000000000004, 37.9, 38, 38.1, 38.2, 38.300000000000004, 38.4, 38.5, 38.6, 38.7, 38.800000000000004, 38.9, 39, 39.1, 39.2, 39.300000000000004, 39.4, 39.5, 39.6, 39.7, 39.800000000000004, 39.9, 40, 40.1, 40.2, 40.300000000000004, 40.4, 40.5, 40.6, 40.7, 40.800000000000004, 40.9, 41, 41.1, 41.2, 41.300000000000004, 41.4, 41.5, 41.6, 41.7, 41.800000000000004, 41.9, 42, 42.1, 42.2, 42.300000000000004, 42.4, 42.5, 42.6, 42.7, 42.800000000000004, 42.9, 43, 43.1, 43.2, 43.300000000000004, 43.4, 43.5, 43.6, 43.7, 43.800000000000004, 43.9, 44, 44.1, 44.2, 44.300000000000004, 44.4, 44.5, 44.6, 44.7, 44.800000000000004, 44.9, 45, 45.1, 45.2, 45.300000000000004, 45.4, 45.5, 45.6, 45.7, 45.800000000000004, 45.9, 46, 46.1, 46.2, 46.300000000000004, 46.4, 46.5, 46.6, 46.7, 46.800000000000004, 46.9, 47, 47.1, 47.2, 47.300000000000004, 47.4, 47.5, 47.6, 47.7, 47.800000000000004, 47.9, 48, 48.1, 48.2, 48.300000000000004, 48.4, 48.5, 48.6, 48.7, 48.800000000000004, 48.9, 49, 49.1, 49.2, 49.300000000000004, 49.4, 49.5, 49.6, 49.7, 49.800000000000004, 49.9, 50, 50.1, 50.2, 50.300000000000004, 50.4, 50.5, 50.6, 50.7, 50.800000000000004, 50.9, 51, 51.1, 51.2, 51.300000000000004, 51.4, 51.5, 51.6, 51.7, 51.800000000000004, 51.9, 52, 52.1, 52.2, 52.300000000000004, 52.4, 52.5, 52.6, 52.7, 52.800000000000004, 52.9, 53, 53.1, 53.2, 53.300000000000004, 53.4, 53.5, 53.6, 53.7, 53.800000000000004, 53.9, 54, 54.1, 54.2, 54.300000000000004, 54.4, 54.5, 54.6, 54.7, 54.800000000000004, 54.9, 55, 55.1, 55.2, 55.300000000000004, 55.4, 55.5, 55.6, 55.7, 55.800000000000004, 55.9, 56, 56.1, 56.2, 56.300000000000004, 56.4, 56.5, 56.6, 56.7, 56.800000000000004, 56.9, 57, 57.1, 57.2, 57.300000000000004, 57.4, 57.5, 57.6, 57.7, 57.800000000000004, 57.9, 58, 58.1, 58.2, 58.300000000000004, 58.4, 58.5, 58.6, 58.7, 58.800000000000004, 58.9, 59, 59.1, 59.2, 59.300000000000004, 59.4, 59.5, 59.6, 59.7, 59.800000000000004, 59.9, 60, 60.1, 60.2, 60.300000000000004, 60.4, 60.5, 60.6, 60.7, 60.800000000000004, 60.9, 61, 61.1, 61.2, 61.300000000000004, 61.4, 61.5, 61.6, 61.7, 61.800000000000004, 61.9, 62, 62.1, 62.2, 62.300000000000004, 62.4, 62.5, 62.6, 62.7, 62.800000000000004, 62.9, 63, 63.1, 63.2, 63.300000000000004, 63.4, 63.5, 63.6, 63.7, 63.800000000000004, 63.9, 64, 64.1, 64.2, 64.3, 64.4, 64.5, 64.6, 64.7, 64.8, 64.9, 65, 65.1, 65.2, 65.3, 65.4, 65.5, 65.6, 65.7, 65.8, 65.9, 66, 66.1, 66.2, 66.3, 66.4, 66.5, 66.6, 66.7, 66.8, 66.9, 67, 67.1, 67.2, 67.3, 67.4, 67.5, 67.6, 67.7, 67.8, 67.9, 68, 68.1, 68.2, 68.3, 68.4, 68.5, 68.60000000000001, 68.7, 68.8, 68.9, 69, 69.10000000000001, 69.2, 69.3, 69.4, 69.5, 69.60000000000001, 69.7, 69.8, 69.9, 70, 70.10000000000001, 70.2, 70.3, 70.4, 70.5, 70.60000000000001, 70.7, 70.8, 70.9, 71, 71.10000000000001, 71.2, 71.3, 71.4, 71.5, 71.60000000000001, 71.7, 71.8, 71.9, 72, 72.10000000000001, 72.2, 72.3, 72.4, 72.5, 72.60000000000001, 72.7, 72.8, 72.9, 73, 73.10000000000001, 73.2, 73.3, 73.4, 73.5, 73.60000000000001, 73.7, 73.8, 73.9, 74, 74.10000000000001, 74.2, 74.3, 74.4, 74.5, 74.60000000000001, 74.7, 74.8, 74.9, 75, 75.10000000000001, 75.2, 75.3, 75.4, 75.5, 75.60000000000001, 75.7, 75.8, 75.9, 76, 76.10000000000001, 76.2, 76.3, 76.4, 76.5, 76.60000000000001, 76.7, 76.8, 76.9, 77, 77.10000000000001, 77.2, 77.3, 77.4, 77.5, 77.60000000000001, 77.7, 77.8, 77.9, 78, 78.10000000000001, 78.2, 78.3, 78.4, 78.5, 78.60000000000001, 78.7, 78.8, 78.9, 79, 79.10000000000001, 79.2, 79.3, 79.4, 79.5, 79.60000000000001, 79.7, 79.8, 79.9, 80, 80.10000000000001, 80.2, 80.3, 80.4, 80.5, 80.60000000000001, 80.7, 80.8, 80.9, 81, 81.10000000000001, 81.2, 81.3, 81.4, 81.5, 81.60000000000001, 81.7, 81.8, 81.9, 82, 82.10000000000001, 82.2, 82.3, 82.4, 82.5, 82.60000000000001, 82.7, 82.8, 82.9, 83, 83.10000000000001, 83.2, 83.3, 83.4, 83.5, 83.60000000000001, 83.7, 83.8, 83.9, 84, 84.10000000000001, 84.2, 84.3, 84.4, 84.5, 84.60000000000001, 84.7, 84.8, 84.9, 85, 85.10000000000001, 85.2, 85.3, 85.4, 85.5, 85.60000000000001, 85.7, 85.8, 85.9, 86, 86.10000000000001, 86.2, 86.3, 86.4, 86.5, 86.60000000000001, 86.7, 86.8, 86.9, 87, 87.10000000000001, 87.2, 87.3, 87.4, 87.5, 87.60000000000001, 87.7, 87.8, 87.9, 88, 88.10000000000001, 88.2, 88.3, 88.4, 88.5, 88.60000000000001, 88.7, 88.8, 88.9, 89, 89.10000000000001, 89.2, 89.3, 89.4, 89.5, 89.60000000000001, 89.7, 89.8, 89.9, 90, 90.10000000000001, 90.2, 90.3, 90.4, 90.5, 90.60000000000001, 90.7, 90.8, 90.9, 91, 91.10000000000001, 91.2, 91.3, 91.4, 91.5, 91.60000000000001, 91.7, 91.8, 91.9, 92, 92.10000000000001, 92.2, 92.3, 92.4, 92.5, 92.60000000000001, 92.7, 92.8, 92.9, 93, 93.10000000000001, 93.2, 93.3, 93.4, 93.5, 93.60000000000001, 93.7, 93.8, 93.9, 94, 94.10000000000001, 94.2, 94.3, 94.4, 94.5, 94.60000000000001, 94.7, 94.8, 94.9, 95, 95.10000000000001, 95.2, 95.3, 95.4, 95.5, 95.60000000000001, 95.7, 95.8, 95.9, 96, 96.10000000000001, 96.2, 96.3, 96.4, 96.5, 96.60000000000001, 96.7, 96.8, 96.9, 97, 97.10000000000001, 97.2, 97.3, 97.4, 97.5, 97.60000000000001, 97.7, 97.8, 97.9, 98, 98.10000000000001, 98.2, 98.3, 98.4, 98.5, 98.60000000000001, 98.7, 98.8, 98.9, 99, 99.10000000000001, 99.2, 99.3, 99.4, 99.5, 99.60000000000001, 99.7, 99.8, 99.9, 100, 100.10000000000001, 100.2, 100.3, 100.4, 100.5, 100.60000000000001, 100.7, 100.8, 100.9, 101, 101.10000000000001, 101.2, 101.3, 101.4, 101.5, 101.60000000000001, 101.7, 101.8, 101.9, 102, 102.10000000000001, 102.2, 102.3, 102.4, 102.5, 102.60000000000001, 102.7, 102.8, 102.9, 103, 103.10000000000001, 103.2, 103.3, 103.4, 103.5, 103.60000000000001, 103.7, 103.8, 103.9, 104, 104.10000000000001, 104.2, 104.3, 104.4, 104.5, 104.60000000000001, 104.7, 104.8, 104.9, 105, 105.10000000000001, 105.2, 105.3, 105.4, 105.5, 105.60000000000001, 105.7, 105.8, 105.9, 106, 106.10000000000001, 106.2, 106.3, 106.4, 106.5, 106.60000000000001, 106.7, 106.8, 106.9, 107, 107.10000000000001, 107.2, 107.3, 107.4, 107.5, 107.60000000000001, 107.7, 107.8, 107.9, 108, 108.10000000000001, 108.2, 108.3, 108.4, 108.5, 108.60000000000001, 108.7, 108.8, 108.9, 109, 109.10000000000001, 109.2, 109.3, 109.4, 109.5, 109.60000000000001, 109.7, 109.8, 109.9, 110, 110.10000000000001, 110.2, 110.3, 110.4, 110.5, 110.60000000000001, 110.7, 110.8, 110.9, 111, 111.10000000000001, 111.2, 111.3, 111.4, 111.5, 111.60000000000001, 111.7, 111.8, 111.9, 112, 112.10000000000001, 112.2, 112.3, 112.4, 112.5, 112.60000000000001, 112.7, 112.8, 112.9, 113, 113.10000000000001, 113.2, 113.3, 113.4, 113.5, 113.60000000000001, 113.7, 113.8, 113.9, 114, 114.10000000000001, 114.2, 114.3, 114.4, 114.5, 114.60000000000001, 114.7, 114.8, 114.9, 115, 115.10000000000001, 115.2, 115.3, 115.4, 115.5, 115.60000000000001, 115.7, 115.8, 115.9, 116, 116.10000000000001, 116.2, 116.3, 116.4, 116.5, 116.60000000000001, 116.7, 116.8, 116.9, 117, 117.10000000000001, 117.2, 117.3, 117.4, 117.5, 117.60000000000001, 117.7, 117.8, 117.9, 118, 118.10000000000001, 118.2, 118.3, 118.4, 118.5, 118.60000000000001, 118.7, 118.8, 118.9, 119, 119.10000000000001, 119.2, 119.3, 119.4, 119.5, 119.60000000000001, 119.7, 119.8, 119.9 ], "xaxis": "x", "y": [ 10.000000000202288, 10.000000002225157, 10.000000004248028, 10.000000006270898, 10.000000008293767, 10.000000010316638, 10.000000012339509, 10.000000014362378, 10.000000016385247, 10.00000001840812, 2.8734788561482, 2.8734788631879944, 2.8734788702277885, 2.873478877267583, 2.8734788843073775, 2.873478891347172, 2.873478898386966, 2.8734789054267607, 2.873478912466555, 2.8734789195063493, 2.075143418295103, 2.075143428043201, 2.0751434377912985, 2.075143447539396, 2.0751434572874934, 2.075143467035591, 2.0751434767836883, 2.0751434865317857, 2.0751434962798827, 2.0751435060279797, 1.7066404410415106, 1.7066404528944465, 1.706640464747383, 1.7066404766003191, 1.7066404884532551, 1.7066405003061913, 1.706640512159127, 1.706640524012063, 1.7066405358649988, 1.7066405477179345, 1.4834046524986966, 1.483404666135368, 1.483404679772039, 1.4834046934087104, 1.4834047070453813, 1.4834047206820522, 1.4834047343187229, 1.4834047479553933, 1.483404761592064, 1.4834047752287343, 1.3297268084947913, 1.3297268237074662, 1.329726838920141, 1.3297268541328156, 1.32972686934549, 1.3297268845581645, 1.3297268997708385, 1.3297269149835123, 1.329726930196186, 1.3297269454088598, 1.2156616068068946, 1.2156616234469708, 1.2156616400870466, 1.2156616567271223, 1.2156616733671979, 1.2156616900072732, 1.215661706647348, 1.215661723287423, 1.2156617399274976, 1.215661756567572, 1.1266739880133307, 1.126674005967683, 1.126674023922035, 1.1266740418763868, 1.126674059830738, 1.1266740777850892, 1.12667409573944, 1.1266741136937908, 1.126674131648141, 1.126674149602491, 1.0547442561142324, 1.0547442752930056, 1.0547442944717789, 1.0547443136505514, 1.0547443328293238, 1.0547443520080957, 1.0547443711868674, 1.0547443903656386, 1.0547444095444096, 1.05474442872318, 0.9950377082485443, 0.9950377285781267, 0.9950377489077086, 0.9950377692372901, 0.9950377895668711, 0.995037809896452, 0.9950378302260321, 0.9950378505556119, 0.9950378708851914, 0.9950378912147703, 0.9444434418326605, 0.944443463251308, 0.9444434846699548, 0.9444435060886011, 0.9444435275072469, 0.9444435489258923, 0.9444435703445373, 0.9444435917631817, 0.9444436131818257, 0.944443634600469, 0.9008569414716968, 0.9008569639266505, 0.9008569863816036, 0.9008570088365563, 0.9008570312915084, 0.90085705374646, 0.9008570762014109, 0.9008570986563613, 0.9008571211113111, 0.9008571435662605, 0.8627967936549357, 0.8627968171004342, 0.8627968405459321, 0.8627968639914293, 0.8627968874369261, 0.8627969108824218, 0.8627969343279173, 0.8627969577734119, 0.862796981218906, 0.8627970046643993, 0.8291859348177868, 0.829185959213643, 0.8291859836094987, 0.8291860080053536, 0.8291860324012077, 0.829186056797061, 0.8291860811929138, 0.8291861055887658, 0.829186129984617, 0.8291861543804678, 0.7992199883499943, 0.7992200136605486, 0.799220038971102, 0.7992200642816547, 0.7992200895922067, 0.7992201149027577, 0.799220140213308, 0.7992201655238576, 0.7992201908344062, 0.7992202161449541, 0.7722844737145969, 0.7722844999079255, 0.772284526101253, 0.7722845522945797, 0.7722845784879055, 0.7722846046812304, 0.7722846308745543, 0.7722846570678775, 0.7722846832611997, 0.7722847094545211, 0.7479008006070571, 0.7479008276543618, 0.7479008547016656, 0.7479008817489684, 0.7479009087962701, 0.747900935843571, 0.7479009628908708, 0.7479009899381697, 0.7479010169854675, 0.7479010440327645, 0.7256899220378304, 0.7256899499129602, 0.7256899777880891, 0.7256900056632168, 0.7256900335383435, 0.7256900614134691, 0.7256900892885937, 0.7256901171637171, 0.7256901450388396, 0.7256901729139608, 0.7053472044437427, 0.7053472331228112, 0.7053472618018786, 0.7053472904809448, 0.7053473191600098, 0.7053473478390737, 0.7053473765181364, 0.705347405197198, 0.7053474338762583, 0.7053474625553176, 0.6866246406491734, 0.6866246701102495, 0.6866246995713243, 0.6866247290323979, 0.6866247584934703, 0.6866247879545413, 0.6866248174156111, 0.6866248468766796, 0.6866248763377468, 0.6866249057988129, 0.6693179976885189, 0.6693180279113738, 0.6693180581342275, 0.6693180883570797, 0.6693181185799305, 0.6693181488027801, 0.6693181790256282, 0.669318209248475, 0.6693182394713203, 0.6693182696941644, 0.6532573589768339, 0.653257389942732, 0.6532574209086285, 0.6532574518745236, 0.6532574828404172, 0.6532575138063093, 0.6532575447721999, 0.6532575757380892, 0.6532576067039768, 0.6532576376698631, 0.63830004981953, 0.6383000815110531, 0.6383001132025746, 0.6383001448940945, 0.6383001765856128, 0.6383002082771294, 0.6383002399686446, 0.6383002716601582, 0.6383003033516702, 0.6383003350431806, 0.6243252675117996, 0.6243252999126998, 0.6243253323135983, 0.6243253647144952, 0.6243253971153904, 0.6243254295162838, 0.6243254619171758, 0.6243254943180658, 0.6243255267189542, 0.6243255591198411, 0.6112299509710385, 0.6112299840661127, 0.6112300171611854, 0.6112300502562561, 0.6112300833513251, 0.6112301164463922, 0.6112301495414577, 0.6112301826365213, 0.6112302157315831, 0.6112302488266432, 0.59892556535723, 0.5989255991322128, 0.5989256329071936, 0.5989256666821726, 0.5989257004571497, 0.5989257342321248, 0.5989257680070981, 0.5989258017820694, 0.5989258355570388, 0.5989258693320063, 0.587335571393745, 0.5873356058352153, 0.5873356402766836, 0.5873356747181498, 0.5873357091596141, 0.5873357436010762, 0.5873357780425366, 0.5873358124839947, 0.5873358469254508, 0.587335881366905, 0.5763934134882357, 0.5763934485835372, 0.5763934836788365, 0.5763935187741337, 0.5763935538694288, 0.5763935889647217, 0.5763936240600125, 0.5763936591553012, 0.5763936942505876, 0.5763937293458721, 0.5660409054700796, 0.5660409412072505, 0.5660409769444191, 0.5660410126815856, 0.5660410484187496, 0.5660410841559116, 0.5660411198930713, 0.5660411556302286, 0.5660411913673837, 0.5660412271045366, 0.5562269242908225, 0.5562269606585345, 0.5562269970262441, 0.5562270333939514, 0.5562270697616561, 0.5562271061293587, 0.5562271424970586, 0.5562271788647564, 0.5562272152324517, 0.5562272516001446, 0.5562272879678352, 0.5562273243355234, 0.5562273607032091, 0.5562273970708925, 0.5562274334385736, 0.5562274698062523, 0.5562275061739285, 0.5562275425416024, 0.556227578909274, 0.5562276152769431, 0.55622765164461, 0.5562276880122743, 0.5562277243799363, 0.556227760747596, 0.5562277971152532, 0.5562278334829082, 0.5562278698505606, 0.5562279062182107, 0.5562279425858585, 0.5562279789535038, 0.5562280153211469, 0.5562280516887875, 0.5562280880564257, 0.5562281244240616, 0.556228160791695, 0.5562281971593261, 0.5562282335269549, 0.5562282698945813, 0.5562283062622052, 0.5562283426298268, 0.556228378997446, 0.5562284153650628, 0.5562284517326774, 0.5562284881002895, 0.5562285244678992, 0.5562285608355064, 0.5562285972031115, 0.5562286335707141, 0.5562286699383142, 0.556228706305912, 0.5562287426735075, 0.5562287790411006, 0.5562288154086913, 0.5562288517762796, 0.5562288881438655, 0.556228924511449, 0.5562289608790302, 0.556228997246609, 0.5562290336141854, 0.5562290699817595, 0.5562291063493311, 0.5562291427169004, 0.5562291790844673, 0.5562292154520319, 0.556229251819594, 0.5562292881871538, 0.5562293245547112, 0.5562293609222662, 0.5562293972898188, 0.5562294336573691, 0.556229470024917, 0.5562295063924625, 0.5562295427600056, 0.5562295791275463, 0.5562296154950848, 0.5562296518626207, 0.5562296882301544, 0.5562297245976856, 0.5562297609652145, 0.5562297973327409, 0.556229833700265, 0.5562298700677868, 0.5562299064353061, 0.5562299428028231, 0.5562299791703377, 0.5562300155378499, 0.5562300519053598, 0.5562300882728672, 0.5562301246403722, 0.556230161007875, 0.5562301973753753, 0.5562302337428733, 0.5562302701103689, 0.5562303064778621, 0.5562303428453529, 0.5562303792128412, 0.5562304155803274, 0.5562304519478111, 0.5562304883152924, 0.5562305246827713, 0.5562305610502478, 0.5562305974177221, 0.5562306337851939, 0.5562306701526633, 0.5562307065201303, 0.556230742887595, 0.5562307792550572, 0.5562308156225172, 0.5562308519899747, 0.5562308883574298, 0.5562309247248826, 0.556230961092333, 0.556230997459781, 0.5562310338272267, 0.5562310701946699, 0.5562311065621108, 0.5562311429295493, 0.5562311792969854, 0.5562312156644191, 0.5562312520318505, 0.5562312883992796, 0.5562313247667062, 0.5562313611341304, 0.5562313975015523, 0.5562314338689718, 0.5562314702363889, 0.5562315066038036, 0.5562315429712159, 0.5562315793386259, 0.5562316157060335, 0.5562316520734387, 0.5562316884408416, 0.556231724808242, 0.5562317611756401, 0.5562317975430358, 0.5562318339104292, 0.5562318702778201, 0.5562319066452087, 0.5562319430125949, 0.5562319793799787, 0.5562320157473601, 0.5562320521147393, 0.5562320884821159, 0.5562321248494903, 0.5562321612168621, 0.5562321975842317, 0.5562322339515988, 0.5562322703189637, 0.5562323066863261, 0.5562323430536862, 0.5562323794210439, 0.5562324157883991, 0.5562324521557519, 0.5562324885231026, 0.5562325248904506, 0.5562325612577964, 0.5562325976251398, 0.5562326339924808, 0.5562326703598195, 0.5562327067271557, 0.5562327430944897, 0.5562327794618211, 0.5562328158291503, 0.5562328521964771, 0.5562328885638014, 0.5562329249311234, 0.556232961298443, 0.5562329976657603, 0.5562330340330751, 0.5562330704003876, 0.5562331067676978, 0.5562331431350055, 0.5562331795023108, 0.5562332158696137, 0.5562332522369143, 0.5562332886042126, 0.5562333249715085, 0.5562333613388019, 0.5562333977060929, 0.5562334340733817, 0.556233470440668, 0.556233506807952, 0.5562335431752335, 0.5562335795425127, 0.5562336159097896, 0.556233652277064, 0.5562336886443361, 0.5562337250116058, 0.556233761378873, 0.556233797746138, 0.5562338341134005, 0.5562338704806608, 0.5562339068479185, 0.5562339432151739, 0.556233979582427, 0.5562340159496776, 0.5562340523169259, 0.5562340886841718, 0.5562341250514153, 0.5562341614186566, 0.5562341977858953, 0.5562342341531318, 0.5562342705203658, 0.5562343068875975, 0.5562343432548267, 0.5562343796220535, 0.556234415989278, 0.5562344523565002, 0.5562344887237199, 0.5562345250909373, 0.5562345614581523, 0.5562345978253649, 0.5562346341925752, 0.556234670559783, 0.5562347069269885, 0.5562347432941916, 0.5562347796613923, 0.5562348160285907, 0.5562348523957867, 0.5562348887629803, 0.5562349251301716, 0.5562349614973604, 0.5562349978645468, 0.5562350342317309, 0.5562350705989126, 0.5562351069660919, 0.5562351433332688, 0.5562351797004434, 0.5562352160676157, 0.5562352524347854, 0.5562352888019529, 0.556235325169118, 0.5562353615362807, 0.5562353979034411, 0.556235434270599, 0.5562354706377546, 0.5562355070049076, 0.5562355433720585, 0.5562355797392069, 0.556235616106353, 0.5562356524734966, 0.5562356888406379, 0.5562357252077768, 0.5562357615749133, 0.5562357979420475, 0.5562358343091793, 0.5562358706763088, 0.5562359070434357, 0.5562359434105604, 0.5562359797776826, 0.5562360161448026, 0.5562360525119201, 0.5562360888790352, 0.556236125246148, 0.5562361616132583, 0.5562361979803663, 0.5562362343474719, 0.5562362707145753, 0.556236307081676, 0.5562363434487745, 0.5562363798158707, 0.5562364161829644, 0.5562364525500557, 0.5562364889171447, 0.5562365252842314, 0.5562365616513155, 0.5562365980183974, 0.5562366343854769, 0.556236670752554, 0.5562367071196287, 0.556236743486701, 0.556236779853771, 0.5562368162208385, 0.5562368525879037, 0.5562368889549666, 0.5562369253220271, 0.5562369616890851, 0.5562369980561408, 0.556237034423194, 0.556237070790245, 0.5562371071572936, 0.5562371435243398, 0.5562371798913835, 0.5562372162584249, 0.556237252625464, 0.5562372889925007, 0.5562373253595351, 0.5562373617265669, 0.5562373980935965, 0.5562374344606237, 0.5562374708276484, 0.5562375071946708, 0.5562375435616909, 0.5562375799287085, 0.5562376162957238, 0.5562376526627367, 0.5562376890297472, 0.5562377253967553, 0.556237761763761, 0.5562377981307645, 0.5562378344977654, 0.5562378708647641, 0.5562379072317604, 0.5562379435987542, 0.5562379799657456, 0.5562380163327348, 0.5562380526997216, 0.5562380890667059, 0.5562381254336879, 0.5562381618006675, 0.5469167154264917, 0.5469167524132941, 0.5469167894000941, 0.5469168263868917, 0.5469168633736866, 0.5469169003604791, 0.5469169373472691, 0.5469169743340566, 0.5469170113208416, 0.5469170483076241, 0.5380490377686158, 0.538049075365004, 0.5380491129613896, 0.5380491505577726, 0.5380491881541529, 0.5380492257505307, 0.5380492633469058, 0.5380493009432783, 0.5380493385396481, 0.5380493761360153, 0.5295991919787948, 0.5295992301750397, 0.529599268371282, 0.5295993065675215, 0.5295993447637583, 0.5295993829599922, 0.5295994211562235, 0.5295994593524519, 0.5295994975486777, 0.5295995357449007, 0.5215353645093805, 0.5215354032962046, 0.5215354420830259, 0.5215354808698442, 0.5215355196566598, 0.5215355584434724, 0.5215355972302822, 0.5215356360170891, 0.521535674803893, 0.5215357135906941, 0.5138290328981546, 0.5138290722666977, 0.5138291116352378, 0.5138291510037749, 0.513829190372309, 0.5138292297408402, 0.5138292691093682, 0.5138293084778932, 0.5138293478464153, 0.5138293872149343, 0.5064545405857624, 0.5064545805275515, 0.5064546204693374, 0.5064546604111202, 0.5064547003528999, 0.5064547402946763, 0.5064547802364495, 0.5064548201782196, 0.5064548601199867, 0.5064549000617505, 0.4993887369986006, 0.4993887775055222, 0.49938881801244045, 0.4993888585193555, 0.4993888990262672, 0.49938893953317554, 0.4993889800400807, 0.4993890205469826, 0.4993890610538812, 0.4993891015607765, 0.49261067137853165, 0.4926107124428073, 0.4926107535070795, 0.4926107945713483, 0.4926108356356136, 0.4926108766998755, 0.49261091776413407, 0.4926109588283891, 0.49261099989264073, 0.492611040956889, 0.4861013311245299, 0.4861013727386936, 0.48610141435285364, 0.4861014559670102, 0.4861014975811632, 0.4861015391953127, 0.48610158080945853, 0.48610162242360083, 0.4861016640377396, 0.48610170565187477, 0.4798434171951319, 0.4798434593520097, 0.47984350150888394, 0.4798435436657544, 0.4798435858226212, 0.4798436279794842, 0.4798436701363436, 0.4798437122931993, 0.4798437544500512, 0.47984379660689946, 0.47382115052365487, 0.4738211932163466, 0.47382123590903447, 0.47382127860171847, 0.47382132129439863, 0.473821363987075, 0.47382140667974754, 0.4738214493724161, 0.4738214920650809, 0.4738215347577419, 0.4680201045091142, 0.468020147730976, 0.4680201909528338, 0.46802023417468763, 0.4680202773965375, 0.46802032061838333, 0.4680203638402252, 0.46802040706206316, 0.46802045028389705, 0.4680204935057269, 0.46242705953098956, 0.46242710327561876, 0.46242714702024384, 0.4624271907648648, 0.46242723450948164, 0.46242727825409435, 0.46242732199870284, 0.46242736574330734, 0.46242740948790756, 0.4624274532325037, 0.45702987614551166, 0.45702992040673246, 0.45702996466794893, 0.45703000892916107, 0.45703005319036905, 0.45703009745157264, 0.457030141712772, 0.45703018597396705, 0.4570302302351578, 0.4570302744963443, 0.4518173841930684, 0.4518174289649186, 0.4518174737367643, 0.4518175185086055, 0.4518175632804424, 0.45181760805227483, 0.4518176528241028, 0.4518176975959264, 0.45181774236774547, 0.4518177871395601, 0.44677928550981094, 0.4467793307865301, 0.4467793760632445, 0.44677942133995446, 0.4467794666166598, 0.44677951189336046, 0.4467795571700566, 0.4467796024467482, 0.44677964772343515, 0.44677969300011755, 0.44190606831406054, 0.44190611409007857, 0.44190615986609194, 0.44190620564210054, 0.4419062514181044, 0.4419062971941035, 0.4419063429700979, 0.4419063887460875, 0.4419064345220725, 0.4419064802980526, 0.4371889316471122, 0.4371889779170396, 0.4371890241869622, 0.4371890704568799, 0.43718911672679267, 0.4371891629967005, 0.4371892092666035, 0.4371892555365016, 0.43718930180639476, 0.437189348076283, 0.4326197185021168, 0.4326197652607347, 0.4326198120193477, 0.4326198587779555, 0.43261990553655827, 0.432619952295156, 0.43261999905374865, 0.43262004581233626, 0.4326200925709188, 0.43262013932949633, 0.42819085648457533, 0.4281909037268268, 0.42819095096907295, 0.42819099821131396, 0.42819104545354986, 0.4281910926957804, 0.42819113993800584, 0.4281911871802259, 0.42819123442244095, 0.4281912816646507, 0.4238953050220379, 0.42389535274301954, 0.42389540046399593, 0.4238954481849668, 0.42389549590593234, 0.4238955436268926, 0.42389559134784743, 0.42389563906879685, 0.42389568678974093, 0.4238957345106797, 0.4197265082855522, 0.4197265564805069, 0.4197266046754561, 0.4197266528703997, 0.4197267010653378, 0.4197267492602704, 0.4197267974551975, 0.41972684565011903, 0.41972689384503503, 0.4197269420399455, 0.41567835310658224, 0.41567840177089177, 0.4156784504351956, 0.4156784990994938, 0.41567854776378615, 0.41567859642807287, 0.41567864509235397, 0.41567869375662936, 0.415678742420899, 0.4156787910851629, 0.41174513127480644, 0.41174518040398483, 0.4117452295331574, 0.4117452786623241, 0.4117453277914849, 0.41174537692063995, 0.41174542604978903, 0.4117454751789323, 0.4117455243080697, 0.4117455734372012, 0.40792150568782504, 0.40792155527751256, 0.40792160486719403, 0.4079216544568695, 0.40792170404653894, 0.4079217536362023, 0.4079218032258597, 0.407921852815511, 0.40792190240515636, 0.40792195199479553, 0.4042024798961656, 0.4042025299421227, 0.40420257998807363, 0.40420263003401835, 0.4042026800799569, 0.40420273012588925, 0.4042027801718153, 0.4042028302177353, 0.40420288026364903, 0.40420293030955656, 0.4005833706483089, 0.40058342114641093, 0.4005834716445067, 0.40058352214259607, 0.4005835726406791, 0.4005836231387557, 0.400583673636826, 0.40058372413488985, 0.40058377463294736, 0.4005838251309986, 0.3970597830926224, 0.39705983403885464, 0.3970598849850804, 0.3970599359312995, 0.3970599868775122, 0.39706003782371824, 0.39706008876991783, 0.39706013971611087, 0.39706019066229736, 0.39706024160847736, 0.39362758833758643, 0.393627639728039, 0.39362769111848483, 0.39362774250892396, 0.39362779389935637, 0.3936278452897821, 0.3936278966802011, 0.39362794807061346, 0.39362799946101906, 0.3936280508514179, 0.39028290310976327, 0.3902829549406268, 0.3902830067714834, 0.3902830586023332, 0.390283110433176, 0.390283162264012, 0.3902832140948411, 0.3902832659256633, 0.3902833177564787, 0.39028336958728704, 0.3870220712816222, 0.3870221235491835, 0.3870221758167378, 0.3870222280842851, 0.3870222803518253, 0.38702233261935837, 0.38702238488688445, 0.3870224371544035, 0.3870224894219154, 0.3870225416894203, 0.38384164706942653, 0.3838416997700649, 0.3838417524706961, 0.38384180517131994, 0.38384185787193664, 0.38384191057254613, 0.38384196327314823, 0.38384201597374323, 0.38384206867433096, 0.38384212137491147, 0.38073837972562563, 0.38073843285580866, 0.3807384859859843, 0.3807385391161526, 0.3807385922463134, 0.38073864537646684, 0.3807386985066128, 0.38073875163675136, 0.3807388047668825, 0.3807388578970063, 0.3777091995711472, 0.37770925312742754, 0.37770930668370034, 0.37770936023996554, 0.37770941379622314, 0.3777094673524731, 0.3777095209087155, 0.37770957446495035, 0.3777096280211775, 0.37770968157739715, 0.374751205231153, 0.3747512592101649, 0.37475131318916904, 0.3747513671681654, 0.37475142114715393, 0.3747514751261347, 0.3747515291051078, 0.374751583084073, 0.3747516370630305, 0.3747516910419802, 0.37186165195360216, 0.37186170635205823, 0.37186176075050636, 0.37186181514894656, 0.37186186954737876, 0.37186192394580303, 0.3718619783442193, 0.3718620327426277, 0.3718620871410281, 0.3718621415394205, 0.36903794090371356, 0.36903799571840185, 0.36903805053308214, 0.3690381053477542, 0.3690381601624181, 0.3690382149770739, 0.36903826979172155, 0.36903832460636105, 0.3690383794209924, 0.36903843423561566, 0.3662776093394148, 0.36627766456719607, 0.36627771979496904, 0.3662777750227336, 0.36627783025048993, 0.3662778854782379, 0.36627794070597763, 0.3662779959337089, 0.3662780511614319, 0.36627810638914665, 0.36357832158336006, 0.3635783772211649, 0.36357843285896113, 0.3635784884967489, 0.3635785441345281, 0.36357859977229884, 0.363578655410061, 0.3635787110478147, 0.3635787666855599, 0.3635788223232966, 0.3609378607162969, 0.360937916761123, 0.3609379728059405, 0.3609380288507492, 0.36093808489554924, 0.3609381409403406, 0.36093819698512325, 0.3609382530298972, 0.3609383090746624, 0.36093836511941896, 0.3583541209246401, 0.35835417737355035, 0.3583542338224518, 0.35835429027134436, 0.3583543467202279, 0.3583544031691027, 0.3583544596179685, 0.3583545160668255, 0.3583545725156736, 0.35835462896451276, 0.355825100442221, 0.3558251572923409, 0.35582521414245166, 0.35582527099255334, 0.355825327842646, 0.35582538469272945, 0.35582544154280393, 0.3558254983928693, 0.3558255552429256, 0.35582561209297275, 0.3533488950324474, 0.3533489522809626, 0.3533490095294685, 0.3533490667779651, 0.3533491240264525, 0.3533491812749306, 0.3533492385233994, 0.353349295771859, 0.35334935302030923, 0.3533494102687502, 0.35092369196264506, 0.3509237496067997, 0.35092380725094485, 0.35092386489508054, 0.3509239225392068, 0.35092398018332355, 0.3509240378274308, 0.35092409547152864, 0.350924153115617, 0.3509242107596959, 0.34854776442725355, 0.34854782246434807, 0.3485478805014329, 0.3485479385385081, 0.34854799657557356, 0.34854805461262944, 0.3485481126496756, 0.34854817068671207, 0.3485482287237389, 0.34854828676075617, 0.3462194663808877, 0.3462195248082769, 0.34621958323565627, 0.34621964166302577, 0.3462197000903854, 0.3462197585177352, 0.34621981694507514, 0.3462198753724052, 0.3462199337997254, 0.3462199922270357, 0.3439372277461352, 0.34393728656122663, 0.343937345376308, 0.34393740419137936, 0.34393746300644057, 0.3439375218214918, 0.3439375806365329, 0.343937639451564, 0.343937698266585, 0.34393775708159596, 0.3416995499643885, 0.34169960916464054, 0.3416996683648823, 0.3416997275651138, 0.341699786765335, 0.34169984596554603, 0.3416999051657468, 0.34169996436593725, 0.34170002356611745, 0.34170008276628744, 0.3395050018610634, 0.3395050614439836, 0.33950512102689345, 0.3395051806097928, 0.33950524019268163, 0.3395052997755601, 0.33950535935842807, 0.33950541894128555, 0.3395054785241326, 0.3395055381069692, 0.3373522157992838, 0.3373522757624276, 0.3373523357255608, 0.33735239568868325, 0.33735245565179506, 0.33735251561489626, 0.33735257557798676, 0.3373526355410666, 0.33735269550413577, 0.33735275546719434, 0.33523988409854566, 0.33523994443951455, 0.3352400047804725, 0.33524006512141963, 0.3352401254623559, 0.33524018580328135, 0.33524024614419584, 0.33524030648509956, 0.3352403668259924, 0.33524042716687436, 0.33316675569705295, 0.3331668164134931, 0.3331668771299222, 0.3331669378463402, 0.3331669985627472, 0.3331670592791431, 0.3331671199955279, 0.33316718071190166, 0.33316724142826437, 0.333167302144616, 0.33113163303837173, 0.3311316941279728, 0.33113175521756255, 0.33113181630714106, 0.3311318773967083, 0.3311319384862643, 0.331131999575809, 0.3311320606653424, 0.3311321217548646, 0.33113218284437546, 0.32913336916479924, 0.3291334306252929, 0.32913349208577497, 0.3291335535462457, 0.32913361500670485, 0.3291336764671526, 0.32913373792758877, 0.32913379938801357, 0.32913386084842683, 0.32913392230882865, 0.327170865001422, 0.32717092683058063, 0.3271709886597276, 0.32717105048886286, 0.32717111231798646, 0.3271711741470984, 0.32717123597619857, 0.32717129780528714, 0.32717135963436395, 0.3271714214634291, 0.32524306681625154, 0.32524312901188723, 0.325243191207511, 0.32524325340312293, 0.32524331559872294, 0.325243377794311, 0.32524343998988725, 0.3252435021854515, 0.325243564381004, 0.32524362657654454, 0.3233489638431041, 0.32334902640306723, 0.3233490889630183, 0.32334915152295723, 0.3233492140828841, 0.32334927664279883, 0.3233493392027015, 0.323349401762592, 0.3233494643224705, 0.3233495268823368, 0.32148758605504235, 0.32148764897722076, 0.32148771189938685, 0.3214877748215406, 0.3214878377436821, 0.32148790066581123, 0.3214879635879281, 0.32148802651003255, 0.3214880894321248, 0.3214881523542047, 0.31965800207723793, 0.31965806535955554, 0.31965812864186066, 0.3196581919241533, 0.3196582552064333, 0.31965831848870085, 0.31965838177095585, 0.3196584450531983, 0.31965850833542825, 0.31965857161764566, 0.3178593172290518, 0.31785938086946786, 0.31785944450987114, 0.31785950815026176, 0.3178595717906396, 0.3178596354310047, 0.317859699071357, 0.3178597627116967, 0.3178598263520236, 0.3178598899923377 ], "yaxis": "y" }, { "line": { "color": "#00ff88", "width": 2 }, "mode": "lines", "name": "True", "type": "scatter", "x": { "bdata": "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", "dtype": "f8" }, "xaxis": "x2", "y": { "bdata": "AAAAAAAAAABnZmZmZmbmP2dmZmZmZvY/zczMzMzMAEBnZmZmZmYGQAAAAAAAAAxAzczMzMzMEECamZmZmZkTQGdmZmZmZhZAMzMzMzMzGUAAAAAAAAAcQM7MzMzMzB5AzczMzMzMIEAzMzMzMzMiQJqZmZmZmSNAAAAAAAAAJUBnZmZmZmYmQM3MzMzMzCdAMzMzMzMzKUCamZmZmZkqQAAAAAAAACxAZ2ZmZmZmLUDOzMzMzMwuQJqZmZmZGTBAzczMzMzMMEAAAAAAAIAxQDMzMzMzMzJAZ2ZmZmbmMkCamZmZmZkzQM3MzMzMTDRAAAAAAAAANUAzMzMzM7M1QGdmZmZmZjZAmpmZmZkZN0DNzMzMzMw3QAAAAAAAgDhAMzMzMzMzOUBnZmZmZuY5QJqZmZmZmTpAzczMzMxMO0AAAAAAAAA8QDIzMzMzszxAZ2ZmZmZmPUCZmZmZmRk+QM7MzMzMzD5AAAAAAACAP0CamZmZmRlAQDMzMzMzc0BAzczMzMzMQEBnZmZmZiZBQAAAAAAAgEFAmpmZmZnZQUAzMzMzMzNCQM3MzMzMjEJAZ2ZmZmbmQkAAAAAAAEBDQJqZmZmZmUNAMzMzMzPzQ0DNzMzMzExEQGdmZmZmpkRAAAAAAAAARUCamZmZmVlFQDMzMzMzs0VAzczMzMwMRkBnZmZmZmZGQAAAAAAAwEZAmpmZmZkZR0AzMzMzM3NHQM3MzMzMzEdAZ2ZmZmYmSEAAAAAAAIBIQJqZmZmZ2UhAMzMzMzMzSUDNzMzMzIxJQGdmZmZm5klAAAAAAABASkCamZmZmZlKQDMzMzMz80pAzczMzMxMS0BnZmZmZqZLQAAAAAAAAExAmZmZmZlZTEAyMzMzM7NMQM7MzMzMDE1AZ2ZmZmZmTUAAAAAAAMBNQJmZmZmZGU5ANDMzMzNzTkDOzMzMzMxOQGdmZmZmJk9AAAAAAACAT0CZmZmZmdlPQJqZmZmZGVBAZ2ZmZmZGUEAzMzMzM3NQQAAAAAAAoFBAzczMzMzMUECamZmZmflQQGdmZmZmJlFAMzMzMzNTUUAAAAAAAIBRQM3MzMzMrFFAmpmZmZnZUUBnZmZmZgZSQDMzMzMzM1JAAAAAAABgUkDNzMzMzIxSQJqZmZmZuVJAZ2ZmZmbmUkAzMzMzMxNTQAAAAAAAQFNAzczMzMxsU0CamZmZmZlTQGdmZmZmxlNAMzMzMzPzU0AAAAAAACBUQM3MzMzMTFRAmpmZmZl5VEBnZmZmZqZUQDMzMzMz01RAAAAAAAAAVUDNzMzMzCxVQJqZmZmZWVVAZ2ZmZmaGVUAzMzMzM7NVQAAAAAAA4FVAzczMzMwMVkCamZmZmTlWQGdmZmZmZlZAMzMzMzOTVkAAAAAAAMBWQM3MzMzM7FZAmpmZmZkZV0BnZmZmZkZXQDMzMzMzc1dAAAAAAACgV0DNzMzMzMxXQJqZmZmZ+VdAZ2ZmZmYmWEAzMzMzM1NYQAAAAAAAgFhAzczMzMysWECamZmZmdlYQGdmZmZmBllAMzMzMzMzWUAAAAAAAGBZQM3MzMzMjFlAmpmZmZm5WUBnZmZmZuZZQDMzMzMzE1pAAAAAAABAWkDNzMzMzGxaQJqZmZmZmVpAZ2ZmZmbGWkAzMzMzM/NaQAAAAAAAIFtAzczMzMxMW0CamZmZmXlbQGdmZmZmpltAMzMzMzPTW0AAAAAAAABcQM7MzMzMLFxAmZmZmZlZXEBnZmZmZoZcQDIzMzMzs1xAAAAAAADgXEDOzMzMzAxdQJmZmZmZOV1AZ2ZmZmZmXUAyMzMzM5NdQAAAAAAAwF1AzszMzMzsXUCZmZmZmRleQGdmZmZmRl5ANDMzMzNzXkAAAAAAAKBeQM7MzMzMzF5AmZmZmZn5XkBnZmZmZiZfQDQzMzMzU19AAAAAAACAX0DOzMzMzKxfQJmZmZmZ2V9AMzMzMzMDYECamZmZmRlgQAAAAAAAMGBAZ2ZmZmZGYEDNzMzMzFxgQDMzMzMzc2BAmpmZmZmJYEAAAAAAAKBgQGdmZmZmtmBAzczMzMzMYEAzMzMzM+NgQJqZmZmZ+WBAAAAAAAAQYUBnZmZmZiZhQM3MzMzMPGFAMzMzMzNTYUCamZmZmWlhQAAAAAAAgGFAZ2ZmZmaWYUDNzMzMzKxhQDMzMzMzw2FAmpmZmZnZYUAAAAAAAPBhQGdmZmZmBmJAzczMzMwcYkAzMzMzMzNiQJqZmZmZSWJAAAAAAABgYkBnZmZmZnZiQM3MzMzMjGJAMzMzMzOjYkCamZmZmbliQAAAAAAA0GJAZ2ZmZmbmYkDNzMzMzPxiQDMzMzMzE2NAmpmZmZkpY0AAAAAAAEBjQGdmZmZmVmNAzczMzMxsY0AzMzMzM4NjQJqZmZmZmWNAAAAAAACwY0BnZmZmZsZjQM3MzMzM3GNAMzMzMzPzY0CamZmZmQlkQAAAAAAAIGRAZ2ZmZmY2ZEDNzMzMzExkQDMzMzMzY2RAmpmZmZl5ZEAAAAAAAJBkQGdmZmZmpmRAzczMzMy8ZEAzMzMzM9NkQJqZmZmZ6WRAAAAAAAAAZUBnZmZmZhZlQM3MzMzMLGVAMzMzMzNDZUCamZmZmVllQAAAAAAAcGVAZ2ZmZmaGZUDNzMzMzJxlQDMzMzMzs2VAmpmZmZnJZUAAAAAAAOBlQGdmZmZm9mVAzczMzMwMZkAzMzMzMyNmQJqZmZmZOWZAAAAAAABQZkBnZmZmZmZmQM3MzMzMfGZAMzMzMzOTZkCamZmZmalmQAAAAAAAwGZAZ2ZmZmbWZkDNzMzMzOxmQDMzMzMzA2dAmpmZmZkZZ0AAAAAAADBnQGdmZmZmRmdAzczMzMxcZ0AzMzMzM3NnQJqZmZmZiWdAAAAAAACgZ0BnZmZmZrZnQM3MzMzMzGdAMzMzMzPjZ0CamZmZmflnQAAAAAAAEGhAZ2ZmZmYmaEDNzMzMzDxoQDMzMzMzU2hAmpmZmZlpaEAAAAAAAIBoQGdmZmZmlmhAzczMzMysaEAzMzMzM8NoQJqZmZmZ2WhAAAAAAADwaEBnZmZmZgZpQM3MzMzMHGlAMzMzMzMzaUCamZmZmUlpQAAAAAAAYGlAZ2ZmZmZ2aUDNzMzMzIxpQDMzMzMzo2lAmpmZmZm5aUAAAAAAANBpQGdmZmZm5mlAzczMzMz8aUAzMzMzMxNqQJqZmZmZKWpAAAAAAABAakBnZmZmZlZqQM3MzMzMbGpAMzMzMzODakCamZmZmZlqQAAAAAAAsGpAZ2ZmZmbGakDNzMzMzNxqQDMzMzMz82pAmpmZmZkJa0AAAAAAACBrQGdmZmZmNmtAzczMzMxMa0AzMzMzM2NrQJqZmZmZeWtAAAAAAACQa0BnZmZmZqZrQM3MzMzMvGtAMzMzMzPTa0CamZmZmelrQAAAAAAAAGxAZ2ZmZmYWbEDOzMzMzCxsQDIzMzMzQ2xAmZmZmZlZbEAAAAAAAHBsQGdmZmZmhmxAzszMzMycbEAyMzMzM7NsQJmZmZmZyWxAAAAAAADgbEBnZmZmZvZsQM7MzMzMDG1AMjMzMzMjbUCZmZmZmTltQAAAAAAAUG1AZ2ZmZmZmbUDOzMzMzHxtQDIzMzMzk21AmZmZmZmpbUAAAAAAAMBtQGdmZmZm1m1AzszMzMzsbUA0MzMzMwNuQJmZmZmZGW5AAAAAAAAwbkBnZmZmZkZuQM7MzMzMXG5ANDMzMzNzbkCZmZmZmYluQAAAAAAAoG5AZ2ZmZma2bkDOzMzMzMxuQDQzMzMz425AmZmZmZn5bkAAAAAAABBvQGdmZmZmJm9AzszMzMw8b0A0MzMzM1NvQJmZmZmZaW9AAAAAAACAb0BnZmZmZpZvQM7MzMzMrG9ANDMzMzPDb0CZmZmZmdlvQAAAAAAA8G9AMzMzMzMDcEBnZmZmZg5wQJqZmZmZGXBAzczMzMwkcEAAAAAAADBwQDMzMzMzO3BAZ2ZmZmZGcECamZmZmVFwQM3MzMzMXHBAAAAAAABocEAzMzMzM3NwQGdmZmZmfnBAmpmZmZmJcEDNzMzMzJRwQAAAAAAAoHBAMzMzMzOrcEBnZmZmZrZwQJqZmZmZwXBAzczMzMzMcEAAAAAAANhwQDMzMzMz43BAZ2ZmZmbucECamZmZmflwQM3MzMzMBHFAAAAAAAAQcUAzMzMzMxtxQGdmZmZmJnFAmpmZmZkxcUDNzMzMzDxxQAAAAAAASHFAMzMzMzNTcUBnZmZmZl5xQJqZmZmZaXFAzczMzMx0cUAAAAAAAIBxQDMzMzMzi3FAZ2ZmZmaWcUCamZmZmaFxQM3MzMzMrHFAAAAAAAC4cUAzMzMzM8NxQGdmZmZmznFAmpmZmZnZcUDNzMzMzORxQAAAAAAA8HFAMzMzMzP7cUBnZmZmZgZyQJqZmZmZEXJAzczMzMwcckAAAAAAAChyQDMzMzMzM3JAZ2ZmZmY+ckCamZmZmUlyQM3MzMzMVHJAAAAAAABgckAzMzMzM2tyQGdmZmZmdnJAmpmZmZmBckDNzMzMzIxyQAAAAAAAmHJAMzMzMzOjckBnZmZmZq5yQJqZmZmZuXJAzczMzMzEckAAAAAAANByQDMzMzMz23JAZ2ZmZmbmckCamZmZmfFyQM3MzMzM/HJAAAAAAAAIc0AzMzMzMxNzQGdmZmZmHnNAmpmZmZkpc0DNzMzMzDRzQAAAAAAAQHNAMzMzMzNLc0BnZmZmZlZzQJqZmZmZYXNAzczMzMxsc0AAAAAAAHhzQDMzMzMzg3NAZ2ZmZmaOc0CamZmZmZlzQM3MzMzMpHNAAAAAAACwc0AzMzMzM7tzQGdmZmZmxnNAmpmZmZnRc0DNzMzMzNxzQAAAAAAA6HNAMzMzMzPzc0BnZmZmZv5zQJqZmZmZCXRAzczMzMwUdEAAAAAAACB0QDMzMzMzK3RAZ2ZmZmY2dECamZmZmUF0QM3MzMzMTHRAAAAAAABYdEAzMzMzM2N0QGdmZmZmbnRAmpmZmZl5dEDNzMzMzIR0QAAAAAAAkHRAMzMzMzObdEBnZmZmZqZ0QJqZmZmZsXRAzczMzMy8dEAAAAAAAMh0QDMzMzMz03RAZ2ZmZmbedECamZmZmel0QM3MzMzM9HRAAAAAAAAAdUAzMzMzMwt1QGdmZmZmFnVAmpmZmZkhdUDNzMzMzCx1QAAAAAAAOHVAMzMzMzNDdUBnZmZmZk51QJqZmZmZWXVAzczMzMxkdUAAAAAAAHB1QDMzMzMze3VAZ2ZmZmaGdUCamZmZmZF1QM3MzMzMnHVAAAAAAACodUAzMzMzM7N1QGdmZmZmvnVAmpmZmZnJdUDNzMzMzNR1QAAAAAAA4HVAMzMzMzPrdUBnZmZmZvZ1QJqZmZmZAXZAzczMzMwMdkAAAAAAABh2QDMzMzMzI3ZAZ2ZmZmYudkCamZmZmTl2QM3MzMzMRHZAAAAAAABQdkAzMzMzM1t2QGdmZmZmZnZAmpmZmZlxdkDNzMzMzHx2QAAAAAAAiHZAMzMzMzOTdkBnZmZmZp52QJqZmZmZqXZAzczMzMy0dkAAAAAAAMB2QDMzMzMzy3ZAZ2ZmZmbWdkCamZmZmeF2QM3MzMzM7HZAAAAAAAD4dkAzMzMzMwN3QGdmZmZmDndAmpmZmZkZd0DNzMzMzCR3QAAAAAAAMHdAMzMzMzM7d0BnZmZmZkZ3QJqZmZmZUXdAzczMzMxcd0AAAAAAAGh3QDMzMzMzc3dAZ2ZmZmZ+d0CamZmZmYl3QM3MzMzMlHdAAAAAAACgd0AzMzMzM6t3QGdmZmZmtndAmpmZmZnBd0DNzMzMzMx3QAAAAAAA2HdAMzMzMzPjd0BnZmZmZu53QJqZmZmZ+XdAzczMzMwEeEAAAAAAABB4QDMzMzMzG3hAZ2ZmZmYmeECamZmZmTF4QM3MzMzMPHhAAAAAAABIeEAzMzMzM1N4QGdmZmZmXnhAmpmZmZlpeEDNzMzMzHR4QAAAAAAAgHhAMzMzMzOLeEBnZmZmZpZ4QJqZmZmZoXhAzczMzMyseEAAAAAAALh4QDMzMzMzw3hAZ2ZmZmbOeECamZmZmdl4QM3MzMzM5HhAAAAAAADweEAzMzMzM/t4QGdmZmZmBnlAmpmZmZkReUDNzMzMzBx5QAAAAAAAKHlAMzMzMzMzeUBnZmZmZj55QJqZmZmZSXlAzczMzMxUeUAAAAAAAGB5QDMzMzMza3lAZ2ZmZmZ2eUCamZmZmYF5QM3MzMzMjHlAAAAAAACYeUAzMzMzM6N5QGdmZmZmrnlAmpmZmZm5eUDNzMzMzMR5QAAAAAAA0HlAMzMzMzPbeUBnZmZmZuZ5QJqZmZmZ8XlAzczMzMz8eUAAAAAAAAh6QDMzMzMzE3pAZ2ZmZmYeekCamZmZmSl6QM3MzMzMNHpAAAAAAABAekAzMzMzM0t6QGdmZmZmVnpAmpmZmZlhekDNzMzMzGx6QAAAAAAAeHpAMzMzMzODekBnZmZmZo56QJqZmZmZmXpAzczMzMykekAAAAAAALB6QDMzMzMzu3pAZ2ZmZmbGekCamZmZmdF6QM3MzMzM3HpAAAAAAADoekAzMzMzM/N6QGdmZmZm/npAmpmZmZkJe0DNzMzMzBR7QAAAAAAAIHtAMzMzMzMre0BnZmZmZjZ7QJqZmZmZQXtAzczMzMxMe0AAAAAAAFh7QDMzMzMzY3tAZ2ZmZmZue0CamZmZmXl7QM3MzMzMhHtAAAAAAACQe0AzMzMzM5t7QGdmZmZmpntAmpmZmZmxe0DNzMzMzLx7QAAAAAAAyHtAMzMzMzPTe0BnZmZmZt57QJqZmZmZ6XtAzczMzMz0e0AAAAAAAAB8QDIzMzMzC3xAZ2ZmZmYWfECZmZmZmSF8QM7MzMzMLHxAAAAAAAA4fEAyMzMzM0N8QGdmZmZmTnxAmZmZmZlZfEDOzMzMzGR8QAAAAAAAcHxAMjMzMzN7fEBnZmZmZoZ8QJmZmZmZkXxAzszMzMycfEAAAAAAAKh8QDIzMzMzs3xAZ2ZmZma+fECZmZmZmcl8QM7MzMzM1HxAAAAAAADgfEAyMzMzM+t8QGdmZmZm9nxAmZmZmZkBfUDOzMzMzAx9QAAAAAAAGH1AMjMzMzMjfUBnZmZmZi59QJmZmZmZOX1AzszMzMxEfUAAAAAAAFB9QDIzMzMzW31AZ2ZmZmZmfUCZmZmZmXF9QM7MzMzMfH1AAAAAAACIfUAyMzMzM5N9QGdmZmZmnn1AmZmZmZmpfUDOzMzMzLR9QAAAAAAAwH1AMjMzMzPLfUBnZmZmZtZ9QJmZmZmZ4X1AzszMzMzsfUAAAAAAAPh9QDQzMzMzA35AZ2ZmZmYOfkCZmZmZmRl+QM7MzMzMJH5AAAAAAAAwfkA0MzMzMzt+QGdmZmZmRn5AmZmZmZlRfkDOzMzMzFx+QAAAAAAAaH5ANDMzMzNzfkBnZmZmZn5+QJmZmZmZiX5AzszMzMyUfkAAAAAAAKB+QDQzMzMzq35AZ2ZmZma2fkCZmZmZmcF+QM7MzMzMzH5AAAAAAADYfkA0MzMzM+N+QGdmZmZm7n5AmZmZmZn5fkDOzMzMzAR/QAAAAAAAEH9ANDMzMzMbf0BnZmZmZiZ/QJmZmZmZMX9AzszMzMw8f0AAAAAAAEh/QDQzMzMzU39AZ2ZmZmZef0CZmZmZmWl/QM7MzMzMdH9AAAAAAACAf0A0MzMzM4t/QGdmZmZmln9AmZmZmZmhf0DOzMzMzKx/QAAAAAAAuH9ANDMzMzPDf0BnZmZmZs5/QJmZmZmZ2X9AzszMzMzkf0AAAAAAAPB/QDQzMzMz+39AMzMzMzMDgEDNzMzMzAiAQGdmZmZmDoBAAAAAAAAUgECamZmZmRmAQDMzMzMzH4BAzczMzMwkgEBnZmZmZiqAQAAAAAAAMIBAmpmZmZk1gEAzMzMzMzuAQM3MzMzMQIBAZ2ZmZmZGgEAAAAAAAEyAQJqZmZmZUYBAMzMzMzNXgEDNzMzMzFyAQGdmZmZmYoBAAAAAAABogECamZmZmW2AQDMzMzMzc4BAzczMzMx4gEBnZmZmZn6AQAAAAAAAhIBAmpmZmZmJgEAzMzMzM4+AQM3MzMzMlIBAZ2ZmZmaagEAAAAAAAKCAQJqZmZmZpYBAMzMzMzOrgEDNzMzMzLCAQGdmZmZmtoBAAAAAAAC8gECamZmZmcGAQDMzMzMzx4BAzczMzMzMgEBnZmZmZtKAQAAAAAAA2IBAmpmZmZndgEAzMzMzM+OAQM3MzMzM6IBAZ2ZmZmbugEAAAAAAAPSAQJqZmZmZ+YBAMzMzMzP/gEDNzMzMzASBQGdmZmZmCoFAAAAAAAAQgUCamZmZmRWBQDMzMzMzG4FAzczMzMwggUBnZmZmZiaBQAAAAAAALIFAmpmZmZkxgUAzMzMzMzeBQM3MzMzMPIFAZ2ZmZmZCgUAAAAAAAEiBQJqZmZmZTYFAMzMzMzNTgUDNzMzMzFiBQGdmZmZmXoFAAAAAAABkgUCamZmZmWmBQDMzMzMzb4FAzczMzMx0gUBnZmZmZnqBQAAAAAAAgIFAmpmZmZmFgUAzMzMzM4uBQM3MzMzMkIFAZ2ZmZmaWgUAAAAAAAJyBQJqZmZmZoYFAMzMzMzOngUDNzMzMzKyBQGdmZmZmsoFAAAAAAAC4gUCamZmZmb2BQDMzMzMzw4FAzczMzMzIgUBnZmZmZs6BQAAAAAAA1IFAmpmZmZnZgUAzMzMzM9+BQM3MzMzM5IFAZ2ZmZmbqgUAAAAAAAPCBQJqZmZmZ9YFAMzMzMzP7gUDNzMzMzACCQGdmZmZmBoJAAAAAAAAMgkCamZmZmRGCQDMzMzMzF4JAzczMzMwcgkBnZmZmZiKCQAAAAAAAKIJAmpmZmZktgkAzMzMzMzOCQM3MzMzMOIJAZ2ZmZmY+gkAAAAAAAESCQJqZmZmZSYJAMzMzMzNPgkDNzMzMzFSCQGdmZmZmWoJAAAAAAABggkCamZmZmWWCQDMzMzMza4JAzczMzMxwgkBnZmZmZnaCQAAAAAAAfIJAmpmZmZmBgkAzMzMzM4eCQM3MzMzMjIJAZ2ZmZmaSgkAAAAAAAJiCQJqZmZmZnYJAMzMzMzOjgkDNzMzMzKiCQGdmZmZmroJAAAAAAAC0gkCamZmZmbmCQDMzMzMzv4JAzczMzMzEgkBnZmZmZsqCQAAAAAAA0IJAmpmZmZnVgkAzMzMzM9uCQM3MzMzM4IJAZ2ZmZmbmgkAAAAAAAOyCQJqZmZmZ8YJAMzMzMzP3gkDNzMzMzPyCQGdmZmZmAoNAAAAAAAAIg0CamZmZmQ2DQDMzMzMzE4NAzczMzMwYg0BnZmZmZh6DQAAAAAAAJINAmpmZmZkpg0AzMzMzMy+DQM3MzMzMNINAZ2ZmZmY6g0AAAAAAAECDQJqZmZmZRYNAMzMzMzNLg0DNzMzMzFCDQGdmZmZmVoNAAAAAAABcg0CamZmZmWGDQDMzMzMzZ4NAzczMzMxsg0BnZmZmZnKDQAAAAAAAeINAmpmZmZl9g0AzMzMzM4ODQM3MzMzMiINAZ2ZmZmaOg0AAAAAAAJSDQJqZmZmZmYNAMzMzMzOfg0DNzMzMzKSDQGdmZmZmqoNAAAAAAACwg0CamZmZmbWDQDMzMzMzu4NAzczMzMzAg0BnZmZmZsaDQAAAAAAAzINAmpmZmZnRg0AzMzMzM9eDQM3MzMzM3INAZ2ZmZmbig0AAAAAAAOiDQJqZmZmZ7YNAMzMzMzPzg0DNzMzMzPiDQGdmZmZm/oNAAAAAAAAEhECamZmZmQmEQDMzMzMzD4RAzczMzMwUhEBnZmZmZhqEQAAAAAAAIIRAmpmZmZklhEAzMzMzMyuEQM3MzMzMMIRAZ2ZmZmY2hEAAAAAAADyEQJqZmZmZQYRAMzMzMzNHhEDNzMzMzEyEQGdmZmZmUoRAAAAAAABYhECamZmZmV2EQDMzMzMzY4RAzczMzMxohEBnZmZmZm6EQAAAAAAAdIRAmpmZmZl5hEAzMzMzM3+EQM3MzMzMhIRAZ2ZmZmaKhEAAAAAAAJCEQJqZmZmZlYRAMzMzMzObhEDNzMzMzKCEQGdmZmZmpoRAAAAAAACshECamZmZmbGEQDMzMzMzt4RAzczMzMy8hEBnZmZmZsKEQAAAAAAAyIRAmpmZmZnNhEAzMzMzM9OEQM3MzMzM2IRAZ2ZmZmbehEAAAAAAAOSEQJqZmZmZ6YRAMzMzMzPvhEDNzMzMzPSEQGdmZmZm+oRAAAAAAAAAhUCamZmZmQWFQDMzMzMzC4VAzczMzMwQhUBnZmZmZhaFQAAAAAAAHIVAmpmZmZkhhUAzMzMzMyeFQM3MzMzMLIVAZ2ZmZmYyhUAAAAAAADiFQJqZmZmZPYVAMzMzMzNDhUDNzMzMzEiFQGdmZmZmToVAAAAAAABUhUCamZmZmVmFQDMzMzMzX4VAzczMzMxkhUBnZmZmZmqFQAAAAAAAcIVAmpmZmZl1hUAzMzMzM3uFQM3MzMzMgIVAZ2ZmZmaGhUAAAAAAAIyFQJqZmZmZkYVAMzMzMzOXhUDNzMzMzJyFQGdmZmZmooVAAAAAAACohUCamZmZma2FQDMzMzMzs4VAzczMzMy4hUBnZmZmZr6FQAAAAAAAxIVAmpmZmZnJhUAzMzMzM8+FQM3MzMzM1IVAZ2ZmZmbahUAAAAAAAOCFQJqZmZmZ5YVAMzMzMzPrhUDNzMzMzPCFQGdmZmZm9oVAAAAAAAD8hUCamZmZmQGGQDMzMzMzB4ZAzczMzMwMhkBnZmZmZhKGQAAAAAAAGIZAmpmZmZkdhkAzMzMzMyOGQM3MzMzMKIZAZ2ZmZmYuhkAAAAAAADSGQJqZmZmZOYZAMzMzMzM/hkDNzMzMzESGQGdmZmZmSoZAAAAAAABQhkCamZmZmVWGQDMzMzMzW4ZAzczMzMxghkBnZmZmZmaGQAAAAAAAbIZAmpmZmZlxhkAzMzMzM3eGQM3MzMzMfIZAZ2ZmZmaChkAAAAAAAIiGQJqZmZmZjYZAMzMzMzOThkDNzMzMzJiGQGdmZmZmnoZAAAAAAACkhkCamZmZmamGQDMzMzMzr4ZAzczMzMy0hkBnZmZmZrqGQAAAAAAAwIZAmpmZmZnFhkAzMzMzM8uGQM3MzMzM0IZAZ2ZmZmbWhkAAAAAAANyGQJqZmZmZ4YZAMzMzMzPnhkDNzMzMzOyGQGdmZmZm8oZAAAAAAAD4hkCamZmZmf2GQDMzMzMzA4dAzczMzMwIh0BnZmZmZg6HQAAAAAAAFIdAmpmZmZkZh0AzMzMzMx+HQM3MzMzMJIdAZ2ZmZmYqh0AAAAAAADCHQJqZmZmZNYdAMzMzMzM7h0DNzMzMzECHQGdmZmZmRodAAAAAAABMh0CamZmZmVGHQDMzMzMzV4dAzczMzMxch0BnZmZmZmKHQAAAAAAAaIdAmpmZmZlth0AzMzMzM3OHQM3MzMzMeIdAZ2ZmZmZ+h0AAAAAAAISHQJqZmZmZiYdAMzMzMzOPh0DNzMzMzJSHQGdmZmZmmodAAAAAAACgh0CamZmZmaWHQDMzMzMzq4dAzczMzMywh0BnZmZmZraHQAAAAAAAvIdAmpmZmZnBh0AzMzMzM8eHQM3MzMzMzIdAZ2ZmZmbSh0AAAAAAANiHQJqZmZmZ3YdAMzMzMzPjh0DNzMzMzOiHQGdmZmZm7odAAAAAAAD0h0CamZmZmfmHQDMzMzMz/4dAzczMzMwEiEBnZmZmZgqIQAAAAAAAEIhAmpmZmZkViEAzMzMzMxuIQM3MzMzMIIhAZ2ZmZmYmiEAAAAAAACyIQJqZmZmZMYhAMzMzMzM3iEDNzMzMzDyIQGdmZmZmQohAAAAAAABIiECamZmZmU2IQDMzMzMzU4hAzczMzMxYiEBnZmZmZl6IQAAAAAAAZIhAmpmZmZlpiEAzMzMzM2+IQM3MzMzMdIhAZ2ZmZmZ6iEAAAAAAAICIQJqZmZmZhYhAMzMzMzOLiEDNzMzMzJCIQGdmZmZmlohAAAAAAACciECamZmZmaGIQDMzMzMzp4hAzczMzMysiEBnZmZmZrKIQAAAAAAAuIhAmpmZmZm9iEAzMzMzM8OIQM3MzMzMyIhAZ2ZmZmbOiEAAAAAAANSIQJqZmZmZ2YhAMzMzMzPfiEDNzMzMzOSIQGdmZmZm6ohAAAAAAADwiECamZmZmfWIQDMzMzMz+4hAzczMzMwAiUBnZmZmZgaJQAAAAAAADIlAmpmZmZkRiUAzMzMzMxeJQM3MzMzMHIlAZ2ZmZmYiiUAAAAAAACiJQJqZmZmZLYlAMzMzMzMziUDNzMzMzDiJQGdmZmZmPolAAAAAAABEiUCamZmZmUmJQDMzMzMzT4lAzczMzMxUiUBnZmZmZlqJQAAAAAAAYIlAmpmZmZlliUAzMzMzM2uJQM3MzMzMcIlAZ2ZmZmZ2iUAAAAAAAHyJQJqZmZmZgYlAMzMzMzOHiUDNzMzMzIyJQGdmZmZmkolAAAAAAACYiUCamZmZmZ2JQDMzMzMzo4lAzczMzMyoiUBnZmZmZq6JQAAAAAAAtIlAmpmZmZm5iUAzMzMzM7+JQM3MzMzMxIlAZ2ZmZmbKiUAAAAAAANCJQJqZmZmZ1YlAMzMzMzPbiUDNzMzMzOCJQGdmZmZm5olAAAAAAADsiUCamZmZmfGJQDMzMzMz94lAzczMzMz8iUBnZmZmZgKKQAAAAAAACIpAmpmZmZkNikAzMzMzMxOKQM3MzMzMGIpAZ2ZmZmYeikAAAAAAACSKQJqZmZmZKYpAMzMzMzMvikDNzMzMzDSKQGdmZmZmOopA", "dtype": "f8" }, "yaxis": "y2" }, { "marker": { "color": "#00d4ff", "size": 3 }, "mode": "markers", "name": "GNSS Available", "type": "scatter", "x": [ 0.07000009668881138, 0.770007423895686, 1.4700249179004827, 2.1700534947303702, 2.8700993657117384, 3.5701719670280685, 4.270269914705785, 4.970397208362305, 5.670554875493165, 6.370747490715971, 2.2327016114442406, 2.9298537393568376, 3.6270359913195085, 4.324255273956375, 5.021511868697469, 5.718809382261811, 6.416147245167451, 7.113533533904532, 7.8109737766418315, 8.508465169011838, 12.545074616449979, 13.247442396677473, 13.949862325338383, 14.652341258289058, 15.35487741865752, 16.05748034968103, 16.760147017433457, 17.462882436887636, 18.1656895647144, 18.86857191492639, 19.409976210094392, 20.11452414601917, 20.81914708359975, 21.523851066408138, 22.228638365750264, 22.93351262145455, 23.638470373587065, 24.343513813991123, 25.048644609173987, 25.753871424973394, 26.984354878545858, 27.691442978777932, 28.398623695978618, 29.10590276690601, 29.81328370336547, 30.52076760127866, 31.22835769102091, 31.936058636605246, 32.64387500382009, 33.35180484693545, 33.79764665833564, 34.505935970377536, 35.21433988955832, 35.92286247288506, 36.631501543965506, 37.34026342228346, 38.04915326297497, 38.75817492659789, 39.46733541358636, 40.176640449662, 41.198397064204734, 41.90506511741962, 42.611869231571134, 43.318811417504456, 44.02589620458767, 44.73312774805243, 45.44051041282339, 46.14804642054235, 46.85573978848507, 47.56359616842882, 47.409231733157725, 48.11543885033065, 48.82180662321784, 49.52834378718683, 50.23505453830423, 50.941937000369826, 51.64899339061082, 52.35623487904042, 53.06365755985122, 53.7712652980157, 54.753494265289206, 55.458409049125635, 56.16350400557327, 56.86878607546929, 57.57425573117469, 58.27991422532903, 58.98577369915507, 59.691829639839426, 60.39808264997349, 61.10454556497406, 62.24708447717194, 62.95397754418338, 63.66106936370649, 64.36836766458254, 65.0758798644243, 65.78360627004567, 66.49155595673753, 67.19972521734894, 67.90811707145865, 68.61673705275362, 68.78692269209886, 69.49555348803266, 70.20441139910727, 70.91348966217274, 71.62279732051411, 72.33233828766434, 73.04212110143808, 73.75214416265057, 74.46241201391362, 75.172930790402, 75.91082026002596, 76.62200440112545, 77.33343972018548, 78.04512400108247, 78.75706490974979, 79.46926757373232, 80.18173702676489, 80.89447636016327, 81.60748364695947, 82.32076019387175, 82.76577822866126, 83.47857220473571, 84.19163696064842, 84.90497324136129, 85.61858933195373, 86.33248723444176, 87.04667172982502, 87.76114288101141, 88.47590755158278, 89.19097071346975, 89.92098491432145, 90.63535605079211, 91.35002263140846, 92.06498548500954, 92.7802498627487, 93.49581604053773, 94.2116906501926, 94.9278791569742, 95.64438236544132, 96.36120571216004, 96.87920189983429, 97.59530443581066, 98.31171860754066, 99.0284486784134, 99.74549728173108, 100.4628683542032, 101.18056853537126, 101.89860283910451, 102.61697380379142, 103.33568731187157, 104.18975271292584, 104.90712806865271, 105.62484349891403, 106.34289902026451, 107.06129361845238, 107.78003104477443, 108.4991162082534, 109.21855910241455, 109.93835801219018, 110.65851584569063, 111.23822200471699, 111.95871759288548, 112.67957256168876, 113.40078813838244, 114.1223663978233, 114.84430838626885, 115.566621248731, 116.289306595431, 117.01236798342374, 117.73580980743235, 118.29224824399127, 119.01411734316174, 119.73636834619884, 120.45900496135712, 121.1820277757769, 121.90543784454489, 122.62923716415885, 123.35342886676955, 124.07802120655428, 124.80301160539321, 125.6295956561263, 126.35408074899526, 127.078963339162, 127.80424475541773, 128.52993133711198, 129.25602672296944, 129.98253112047584, 130.7094469179237, 131.43678254717756, 132.1645435132296, 132.84056972263215, 133.568801644739, 134.2974535851682, 135.02653335663823, 135.75603753894646, 136.4859715852136, 137.2163382026863, 137.9471388205876, 138.6783785399749, 139.41005982308496, 140.50035332770005, 141.23139493027642, 141.9628765923045, 142.69480267208704, 143.42717718689983, 144.16000068856644, 144.89327094440858, 145.62699867304784, 146.3611892238621, 147.09583816129333, 148.04937597454247, 148.78423594256034, 149.51955510285765, 150.2553321851364, 150.9915746500517, 151.7282911844105, 152.46547864061105, 153.20314288564182, 153.9412887578921, 154.67991763692086, 155.42046813567055, 156.1586131956365, 156.89724147979945, 157.63635948753765, 158.37596423348552, 159.116061877098, 159.85666102682316, 160.59776007023248, 161.33936134705803, 162.08146702265554, 162.9626419773653, 163.70357123900175, 164.44500581433368, 165.18694682135575, 165.92939560762113, 166.67236301425623, 167.41584826098241, 168.15985661661145, 168.9043967745722, 169.64946642051655, 170.26851672891195, 171.0123877533064, 171.75678248367683, 172.50170399147333, 173.24715534593875, 173.99314347356284, 174.73967307808996, 175.48674529848398, 176.23435948911134, 176.98252170568412, 177.48256833657877, 178.22970830545927, 178.97739020042715, 179.72562037628302, 180.47440436671383, 181.22374322239173, 181.97363905790473, 182.72409767291882, 183.47511812602295, 184.2267064696183, 184.96694362968677, 185.71691017918621, 186.46743970463598, 187.2185373788304, 187.97020896832606, 188.72246133670487, 189.4752911255684, 190.228701486933, 190.98269723821872, 191.73728574847783, 192.26194978620268, 193.01574310652063, 193.77012935908462, 194.52510427719452, 195.2806757773117, 196.0368503168758, 196.79362635188448, 197.5510053225973, 198.3089947945157, 199.06759343664126, 199.68695898199107, 200.44492891825055, 201.2035083591223, 201.9627008936669, 202.7225090095051, 203.48293849195554, 204.24399571678808, 205.00568036615218, 205.76799306581594, 206.53093694682636, 207.3295759134507, 208.09184283162168, 208.85474163636988, 209.61827918575898, 210.38244817805912, 211.14725850526014, 211.9127120523914, 212.6788159876414, 213.4455714863944, 214.21297670887054, 487.6495088985519, 488.74802812627547, 489.84815338359857, 490.94988645070396, 492.0532295668918, 493.1581894357152, 494.2647649733926, 495.37296338563647, 496.48278659941485, 497.59423566098525, 496.1355504630283, 497.236068031611, 498.3381860641004, 499.4419106084829, 500.54724314585326, 501.65418882362184, 502.76275132576313, 503.8729335570763, 504.9847357106998, 506.09816392622287, 505.01057223491176, 506.11269467978263, 507.21641761835855, 508.32174136297164, 509.42867238540924, 510.53721246143954, 511.64736207225275, 512.7591310425162, 513.8725196393124, 514.9875297233905, 514.0041494137092, 515.109023444165, 516.2154907780646, 517.3235588219841, 518.433232835906, 519.5445168624901, 520.6574144885897, 521.7719285307124, 522.8880652564707, 524.0058235887049, 522.8685724786534, 523.9761833698334, 525.0853990114858, 526.1962132894051, 527.3086348815691, 528.4226653220476, 529.5383096313313, 530.6555708764562, 531.7744521432196, 532.8949555362766, 531.6625645874599, 532.7732765208643, 533.8855888331944, 534.9995028841438, 536.1150236268808, 537.2321553777698, 538.3509047311026, 539.4712747274273, 540.5932665090187, 541.7168858634027, 540.5740818099001, 541.6880374242025, 542.8036052209377, 543.9207864792323, 545.0395865495682, 546.1600072783469, 547.2820464836582, 548.4057145806204, 549.5310108474482, 550.6579351892283, 549.5044306934846, 550.621739687905, 551.7406653422548, 552.8612109531277, 553.983384557283, 555.1071870111506, 556.2326249851741, 557.3596923861176, 558.4883930966117, 559.6187344912271, 558.4730404382269, 559.5942882225522, 560.7171530155591, 561.8416455358692, 562.9677675195196, 564.09552283369, 565.22490969599, 566.3559323554616, 567.4885908595614, 568.6228905521493, 567.5835953326877, 568.7092790823189, 569.8365876809413, 570.9655251237579, 572.0960918621603, 573.2282918659675, 574.3621335118618, 575.49761760992, 576.6347452052961, 577.7735241537509, 576.6305940615317, 577.7608214008318, 578.8926866783789, 580.0261941752204, 581.1613435271529, 582.2981422367698, 583.4365912112692, 584.576696597966, 585.7184590380791, 586.8618825367441, 585.896385865203, 587.0313601135758, 588.1679794937679, 589.3062506188335, 590.4461737503367, 591.5877543347767, 592.7309955197551, 593.8758982952434, 595.0224629757811, 596.1706944836346, 595.1777181084138, 596.3175962629832, 597.4591267981267, 598.6023129199394, 599.7471568875872, 600.8936620031823, 602.0418279091433, 603.1916581084461, 604.3431585420236, 605.4963354730738, 604.4456800290076, 605.5906103923647, 606.7372012205117, 607.8854554138333, 609.0353772302003, 610.1869683824733, 611.3402322610565, 612.4951741016521, 613.6517972229271, 614.8101041378862, 613.8231269989676, 614.9728290151675, 616.1242001542694, 617.2772428111876, 618.4319593731113, 619.5883550945045, 620.7464345709543, 621.906200234899, 623.0676541634025, 624.2308017875127, 623.0230546911203, 624.177756328423, 625.3341444975584, 626.4922163588426, 627.6519727996076, 628.8134179210065, 629.9765570095094, 631.1413918850304, 632.3079226259287, 633.4761533377714, 632.3505400538062, 633.5111753464877, 634.6734991906762, 635.8375205248108, 637.0032382033052, 638.1706568901726, 639.3397829700122, 640.5106199524217, 641.683170444216, 642.8574388555693, 641.7386628778517, 642.9054009145943, 644.0738427773214, 645.2439910055249, 646.415853184572, 647.5894309048184, 648.7647290730795, 649.9417561532254, 651.120508633451, 652.3009868029117, 651.3718866498893, 652.5443863010722, 653.7186002286746, 654.8945336783315, 656.0721939837789, 657.2515804353712, 658.4326923654021, 659.6155303852921, 660.8001035206679, 661.9864125429789, 660.9524561439623, 662.1312982668272, 663.3118716037852, 664.4941722148158, 665.6782064525121, 666.8639723292055, 668.0514744338611, 669.2407188475748, 670.4317081297046, 671.6244464696953, 670.5450218393337, 671.7299642120172, 672.9166371597821, 674.1050482779282, 675.2952065192416, 676.4871138537325, 677.6807688411411, 678.8761823225941, 680.0733579787548, 681.2722949344308, 680.284510665212, 681.4760967246947, 682.6694301766345, 683.8645142238156, 685.0613488011229, 686.2599416131172, 687.460297407689, 688.6624170214027, 689.8663001993159, 691.0719557772279, 690.0334342784587, 691.2319564592401, 692.4322376638165, 693.6342843430057, 694.8380965906175, 696.0436830636606, 697.2510505683274, 698.4601959492903, 699.6711239952746, 700.8838351753303, 699.8309511232478, 701.0362536720147, 702.2433333719815, 703.4521897629276, 704.6628259416867, 705.8752441740467, 707.0894514383687, 708.3054557217475, 709.5232556490387, 710.7428517212978, 709.6280223362706, 710.8403734459121, 712.0545121439451, 713.2704424377125, 714.4881715715546, 715.7077014470553, 716.9290343322098, 718.1521709984673, 719.3771156485165, 720.6038750499218, 719.4935898030761, 720.7131432789685, 721.9344973221432, 723.1576540184936, 724.3826167451801, 725.6093876609366, 726.8379694983934, 728.0683632596623, 729.3005711277574, 730.534603853306, 729.3996030467672, 730.6265153496616, 731.8552419304476, 733.0857870348558, 734.3181529860635, 735.5523422076801, 736.7883591474039, 738.0262033759157, 739.2658822854446, 740.5073995897636, 739.3634374097338, 740.5980577678146, 741.834508419915, 743.072785307924, 744.312893856268, 745.554838124161, 746.7986207206252, 748.0442452876962, 749.2917108254697, 750.5410252967602, 749.4870185827492, 750.7291859573365, 751.9731940167816, 753.2190434309985, 754.4667386885202, 755.7162850945787, 756.9676834934642, 758.2209347714053, 759.476043505227, 760.7330145035202, 759.6510515883624, 760.900993938887, 762.1527931371828, 763.406450904939, 764.6619716788176, 765.9193554113615, 767.1786079265172, 768.4397327073951, 769.7027338165205, 770.9676158130601, 769.8715425489414, 771.1296619230387, 772.3896405530651, 773.6514879005881, 774.9152025761156, 776.1807920954853, 777.448269775304, 778.7176342801588, 779.9888869200786, 781.262030355957, 780.1213193527971, 781.3876436959175, 782.6558530143611, 783.9259515637917, 785.1979422203136, 786.4718252786008, 787.7476044634624, 789.0252859531154, 790.3048690290857, 791.5863592427183, 790.4967821486042, 791.771299848172, 793.0477151730671, 794.3260285239136, 795.6062411136196, 796.8883601931472, 798.1723916493505, 799.4583394012808, 800.7462035151567, 802.0359882940987, 800.9357849493223, 802.2187151642856, 803.5035515644639, 804.7903030772594, 806.078971198114, 807.3695555352327, 808.6620676835332, 809.9565114031412, 811.2528897710255, 812.5512051390579, 811.3734089503612, 812.6649989197638, 813.9585180136881, 815.2539700882777, 816.5513558046171, 817.8506812956738, 819.1519465327527, 820.4551506980516, 821.7603007699314, 823.0673995483453, 821.9921584913171, 823.2924429855638, 824.5946701538088, 825.8988442925507, 827.2049648797646, 828.5130349085414, 829.823062098893, 831.1350497043719, 832.4490036526669, 833.7649245430581, 832.6575631809898, 833.9663647336121, 835.277125585574, 836.5898542062645, 837.9045534320563, 839.2212222343504, 840.5398618988959, 841.8604764992542, 843.1830712049093, 844.5076496247873, 843.4124310868575, 844.730220664947, 846.0499891343209, 847.3717400255468, 848.6954753395371, 850.0211956601212, 851.3489055277036, 852.6786085258265, 854.0103078120246, 855.3440077346683, 854.1883228591868, 855.5152039892643, 856.84408263688, 858.1749590569766, 859.5078328919723, 860.8427119104393, 862.1795988935692, 863.518496164539, 864.8594068632248, 866.2023359626611, 865.0387134248173, 866.3746284424207, 867.712550563842, 869.0524847201767, 870.39443439895, 871.7384002446915, 873.0843934483843, 874.4324105169846, 875.7824587665699, 877.1345352768896, 875.9379529425624, 877.2831037489092, 878.6302744680028, 879.9794740747026, 881.3307068842687, 882.6839718890717, 884.0392698881518, 885.3966050135641, 886.755985094582, 888.1174172640772, 886.932179509052, 888.2867309382644, 889.6433211801819, 891.0019519785673, 892.3626289940266, 893.7253628977251, 895.0901496470026, 896.4569930748263, 897.8258953244787, 899.1968621459615, 897.9191751248286, 899.2830318858009, 900.6489453893306, 902.0169182996223, 903.3869594072253, 904.759063541553, 906.133234760716, 907.5094833727791, 908.8878112892592, 910.2682239875571, 909.0336998277801, 910.4073116446024, 911.7830005762057, 913.1607700185123, 914.5406203346222, 915.9225585492497, 917.3065835973756, 918.6926941965612, 920.080901270707, 921.4712062821454, 920.2627151443409, 921.645975659637, 923.0313298565624, 924.4187799788313, 925.8083251479404, 927.1999669763189, 928.5937083764915, 929.9895552187572, 931.3875119761987, 932.7875807004956, 931.5161951571736, 932.9093967855779, 934.3046975134154, 935.702099685936, 937.1016151861091, 938.5032432347601, 939.9069875103446, 941.3128530543235, 942.720843706285, 944.1309630354241, 942.9605261372614, 944.3638038493069, 945.7692051529241, 947.1767355255137, 948.5863945410678, 949.9981850072652, 951.4121112139823, 952.8281781872283, 954.2463910711032, 955.6667503942533, 954.4018060361295, 955.8155171309725, 957.2313635701261, 958.649349864196, 960.0694782193732, 961.4917501873855, 962.9161730346459, 964.3427487620672, 965.7714850079911, 967.2023850138298, 965.9623464687236, 967.3859150312541, 968.811639793716, 970.2395231267436, 971.6695628395969, 973.1017678696111, 974.5361388712488, 975.9726764691744, 977.4113847016331, 978.852266780238, 977.5305357999109, 978.9642963146905, 980.4002264155381, 981.8383293615241, 983.2786107680053, 984.7210748012498, 986.1657238959034, 987.612559699711, 989.0615889780307, 990.5128140485207, 989.2309518086637, 990.6749224229629, 992.1210808379235, 993.5694290599761, 995.0199707234309, 996.4727098841912, 997.927651719466, 999.3847983294961, 1000.844151998831, 1002.3057160814546, 1000.9863873514746, 1002.4407714487088, 1003.8973646205076, 1005.356162915814, 1006.8171725260889, 1008.2803991329081, 1009.7458460946697, 1011.2135176052332, 1012.6834183584102, 1014.1555503959478, 1012.8371110908242, 1014.3019351143801, 1015.7689842175922, 1017.2382582128403, 1018.7097640210962, 1020.183500979068, 1021.6594782072957, 1023.1376956892249, 1024.6181582952504, 1026.1008702446156, 1024.7594165470973, 1026.235202296952, 1027.71323571481, 1029.1935187430904, 1030.6760557312664, 1032.1608493192625, 1033.6479020840948, 1035.1372160388157, 1036.6287962293002, 1038.1226486847727, 1036.7959694437723, 1038.2827082088386, 1039.7717034103853, 1041.2629624582992, 1042.756491150039, 1044.2522942235626, 1045.7503751995043, 1047.2507320824698, 1048.7533714071542, 1050.2583001298458, 1048.8364883198042, 1050.3341956471602, 1051.8341836890272, 1053.336455927412, 1054.8410197777205, 1056.3478801478714, 1057.8570364165114, 1059.3684915965976, 1060.8822469562203, 1062.398306812847, 1061.0268683378044, 1062.535695861952, 1064.046825452873, 1065.560260755914, 1067.0760040589355, 1068.5940538013804, 1070.1144193499024, 1071.637103878591, 1073.1621096852396, 1074.689442059629, 1073.288239176711, 1074.8083536046622, 1076.3307844015508, 1077.855537975152, 1079.3826125044482, 1080.9120172832525, 1082.4437566179959, 1083.9778319787367, 1085.5142448719535, 1087.0529974243736, 1085.6276250708072, 1087.159010834515, 1088.6927317865516, 1090.2287939395871, 1091.7671994126244, 1093.307950033303, 1094.8510519169324, 1096.3965046143276, 1097.9443168487162, 1099.4944912335347, 1098.0321335910571, 1099.574849456423, 1101.1199162657852, 1102.6673390694332, 1104.2171250421777, 1105.769274288865, 1107.323786322787, 1108.880670118802, 1110.4399301367491, 1112.0015677837778 ], "xaxis": "x2", "y": [ 0.06999995374364291, 0.7699988400811497, 1.4699944257284578, 2.1699899718296276, 2.8699795217475548, 3.569967519479548, 4.269954605531813, 4.969937614800913, 5.6699192703209516, 6.3698959868107705, 6.113739446151033, 6.815381190656406, 7.517020729758379, 8.218654479588155, 8.920282108946823, 9.621903374908108, 10.323519900982225, 11.025130231023866, 11.726734567706988, 12.428329325044249, 14.91294455395172, 15.613529444855331, 16.314104339060084, 17.01466454540531, 17.715212736080076, 18.415751930714524, 19.11628238000293, 19.8168039455338, 20.51731736950342, 21.217817253863885, 21.568323268236398, 22.26830076576245, 22.968263961003824, 23.66821290409937, 24.368144800690704, 25.06806093390878, 25.767960435150908, 26.467844411708974, 27.16770845206999, 27.867552167128206, 28.62266228366243, 29.319672541910776, 30.01665858944822, 30.713623939525448, 31.410564210289092, 32.107485071666744, 32.80438960684485, 33.50128090677783, 34.1981525226204, 34.895007462703795, 35.20107048577405, 35.8978024324236, 36.5945139104156, 37.29120336685792, 37.98786922343595, 38.68451062002116, 39.381126736031185, 40.077718071442206, 40.77428900316433, 41.470834447400215, 42.47636106451499, 43.17372189433744, 43.87105549028794, 44.56836709152364, 45.26565145818122, 45.962908773161544, 46.660141678994094, 47.357350698959024, 48.054529710466674, 48.75167891760338, 50.127776467405646, 50.82454804422919, 51.5212944464047, 52.218011744740856, 52.91469876132768, 53.611352333180264, 54.30797293908937, 55.00456318203831, 55.70112121536367, 56.397646426806475, 56.48968705360172, 57.186931339541786, 57.88414714308182, 58.581327062032116, 59.27847184141367, 59.97558037464079, 60.67265502600762, 61.36969596711614, 62.06670534616908, 62.763680201443165, 63.44444385733693, 64.14317062631747, 64.84186792141978, 65.54052651003289, 66.23914495578458, 66.93772575502483, 67.63627019088459, 68.33477457568645, 69.03323910998583, 69.73166630637488, 70.47160832849181, 71.17076847866036, 71.86988255969617, 72.56895104403432, 73.2679757783383, 73.96695703872484, 74.6658921042784, 75.3647852848219, 76.06363370054903, 76.76243325419739, 77.29008149683312, 77.9890780184982, 78.68802667733068, 79.38692855731847, 80.0857770366019, 80.7845787561075, 81.4833398631413, 82.18205655562451, 82.88072073436679, 83.57933369662267, 84.0509399214875, 84.74895793892526, 85.44692098934912, 86.14483337763872, 86.84269525915388, 87.54050380069629, 88.23826250845477, 88.93596894539859, 89.63362356277742, 90.33122295044298, 90.70491613409055, 91.40242515529886, 92.09987187792166, 92.79725993596661, 93.4945921237921, 94.19186934389751, 94.88908868893549, 95.58625251825687, 96.28336132830697, 96.98041385572787, 97.77727910574971, 98.4745578730978, 99.17177717152781, 99.86893813587271, 100.5660408219208, 101.26308337453445, 101.96006570544105, 102.65698925171904, 103.35385411929555, 104.05066207574176, 104.35293152390447, 105.04992429781636, 105.74685475972531, 106.44372554298042, 107.14053211813649, 107.83727429946791, 108.53394992252977, 109.2305600783718, 109.92710407564272, 110.62358684984187, 111.36589087947914, 112.0626457212243, 112.759333010397, 113.45595077110268, 114.1525028823938, 114.84898955329996, 115.54540714557642, 116.24175458582799, 116.93803485766958, 117.63424527761323, 118.18221263196156, 118.87931794994638, 119.57635372675293, 120.27331721392457, 120.97020989232294, 121.66703010383497, 122.36377783433703, 123.06045628212307, 123.75706987636059, 124.45360893248275, 125.07331850078631, 125.77059329939692, 126.46779317361114, 127.16491750763913, 127.86196601900843, 128.55894513326038, 129.2558507029937, 129.95268185607483, 130.64944010090645, 131.34612197084584, 131.9685225006297, 132.66607575066297, 133.36355143588892, 134.06095074057316, 134.75827542098799, 135.45552154794203, 136.15269018000072, 136.84978037653084, 137.54679034171406, 138.24371847816883, 138.7897300316321, 139.4870528731515, 140.1842938979475, 140.88145204674856, 141.5785263746845, 142.27552118592868, 142.9724342927323, 143.66926357725836, 144.36600603541277, 145.06266547068654, 145.8673387244078, 146.56420775562776, 147.26098821620883, 147.95768452966908, 148.6542947716652, 149.35081827556223, 150.04725621644548, 150.74360317578774, 151.43985677022806, 152.13602176860695, 152.94144842993546, 153.63706343050734, 154.33258800530274, 155.02802017983947, 155.7233564599337, 156.41860037931542, 157.11374945858296, 157.80880500275887, 158.50376857038475, 159.19863779292936, 159.84306376908916, 160.5378198190597, 161.23248217646025, 161.9270521540814, 162.62152699711083, 163.31590516254306, 164.0101911275658, 164.7043782632577, 165.39846892332008, 166.09246310845919, 166.80136236664873, 167.49493357476516, 168.18840483142898, 168.88177755747648, 169.57505391876495, 170.26822644178037, 170.96129753389394, 171.65426850930857, 172.34714001629845, 173.03991022444234, 173.92101125489546, 174.61413979766166, 175.30716486583808, 176.00008532106082, 176.69289888660225, 177.38561113988024, 178.07822006404172, 178.77072409560185, 179.46312481005057, 180.15541473104915, 180.8707384748153, 181.56367697155136, 182.25650810970188, 182.94923402193362, 183.6418532577507, 184.3343667344823, 185.0267727657681, 185.7190716489103, 186.41126053023132, 187.1033401194431, 187.87055597064884, 188.5627925495561, 189.2549171959432, 189.94693157780975, 190.6388361301633, 191.33063087560163, 192.0223163395234, 192.71388769800598, 193.40534722212755, 194.09669443027263, 194.78745266789127, 195.47921110008795, 196.17085726220995, 196.8623920751173, 197.55382103713566, 198.24513849952282, 198.93634480407044, 199.62743776232347, 200.31842327936775, 201.00929703831858, 201.6491867051839, 202.3404043573547, 203.03150483926055, 203.72248309252663, 204.4133422356484, 205.10408385823942, 205.7947032726699, 206.4852029103212, 207.17558242233983, 207.86584184685964, 409.0746371846017, 409.714552423695, 410.3542335185767, 410.99367805975703, 411.6328830791571, 412.2718500110307, 412.9105796837281, 413.54907135434684, 414.1873272466511, 414.82534877653376, 415.9818211193193, 416.62214219783374, 417.26222503416795, 417.9020702610602, 418.54167150381414, 419.18103657067365, 419.82016205784606, 420.4590467732978, 421.09768940494445, 421.7360868032186, 422.87294543076825, 423.51359474999975, 424.15400065286263, 424.79416407504664, 425.4340847665637, 426.0737605721494, 426.7131900935651, 427.3523737940657, 427.99131110235066, 428.6300051609257, 429.7240630480252, 430.3640426216239, 431.0037714719987, 431.6432565543266, 432.2824979872461, 432.9214988200468, 433.5602550811667, 434.19876094037494, 434.8370159379478, 435.47502133865544, 436.344311407116, 436.9837508701484, 437.6229399757587, 438.26188282191544, 438.90057772932005, 439.53902082033244, 440.17721698525634, 440.8151605972412, 441.45285030536263, 442.0902913579582, 443.2597756747241, 443.8987174185322, 444.53740396899036, 445.17583260094585, 445.81400672595936, 446.45192693086733, 447.0895925243185, 447.72699766831425, 448.36414195397566, 449.001027055658, 449.84706637948267, 450.4852772492144, 451.1232294893193, 451.7609239330908, 452.3983578490208, 453.0355322610717, 453.67244486426864, 454.3090934376722, 454.94548078340875, 455.58160394399215, 456.58809969643033, 457.2254638226063, 457.86256057592783, 458.4993922048754, 459.1359613286744, 459.7722720226958, 460.4083210328572, 461.04410485155745, 461.67962133765553, 462.3148748821853, 463.24172732465274, 463.87807376767705, 464.51415614277425, 465.1499791481668, 465.78554182203607, 466.4208394463866, 467.0558763232732, 467.69064857364344, 468.3251543713132, 468.95939409267686, 469.9832702931659, 470.6186888001751, 471.2538407196032, 471.8887237168156, 472.52333990046907, 473.1576921503697, 473.7917761531638, 474.4255913481436, 475.05913588511476, 475.69241181270843, 476.67726955440764, 477.31182187457836, 477.94610131933194, 478.5801067933816, 479.21384063348046, 479.84730069989985, 480.48048739516304, 481.11339829636285, 481.74603464355323, 482.37839446083956, 483.4183076175981, 484.0517314442187, 484.68488203173894, 485.3177588943063, 485.95035796996734, 486.5826800397583, 487.21472483321196, 487.8464931285397, 488.47798192941536, 489.109192538743, 490.03755228439604, 490.66989752186856, 491.3019588004125, 491.93373766232713, 492.56523213171806, 493.1964456031975, 493.8273760408455, 494.45802441001155, 495.0883942606677, 495.71848431180166, 496.6928047801181, 497.32450120740094, 497.9559125133813, 498.5870365583304, 499.2178700705116, 499.84841251110873, 500.4786687873738, 501.10863782661795, 501.7383156247945, 502.3677013945117, 503.33655256479307, 503.9667621130585, 504.5966778617625, 505.2262995595046, 505.8556246216622, 506.4846550559079, 507.1133931382634, 507.74183874797154, 508.3699909154459, 508.99784758499334, 509.96704258352605, 510.5962704638731, 511.2252010886087, 511.8538329302632, 512.4821647720867, 513.1102005192603, 513.7379418553197, 514.3653861094882, 514.9925349031574, 515.6193841906161, 516.516449681499, 517.1441803386887, 517.7716124048785, 518.3987456025394, 519.0255773512857, 519.6521079710176, 520.2783364956791, 520.9042598074814, 521.5298795934906, 522.1551972067497, 523.1252519948268, 523.7520581621649, 524.3785650718681, 525.0047682446303, 525.6306665484432, 526.2562590045399, 526.8815503612816, 527.5065392112496, 528.1312292287038, 528.7556160543887, 529.6611859155107, 530.2870426429147, 530.9125913779305, 531.5378300987619, 532.1627577828589, 532.7873790309907, 533.4116934498147, 534.0356997434885, 534.6593949163923, 535.2827787658521, 536.3202195721836, 536.9449234519718, 537.5693191324609, 538.1934095937348, 538.8171916918757, 539.440662898049, 540.0638222871578, 540.6866676312007, 541.3092064792534, 541.9314366463913, 542.8718486652799, 543.4954023456313, 544.1186401314286, 544.7415675937343, 545.3641778712932, 545.9864725897343, 546.6084541606656, 547.2301222069865, 547.851475336108, 548.4725134936542, 549.5098782725347, 550.1322147411053, 550.7542349655621, 551.3759362440568, 551.9973199317507, 552.618386868293, 553.2391367641495, 553.8595631309288, 554.4796692551976, 555.0994540840396, 556.0825824377953, 556.7033509330482, 557.3237991787286, 557.9439244899362, 558.5637266364561, 559.1832036819397, 559.8023586530791, 560.4211925653626, 561.039704864438, 561.6578931443465, 562.6286600185533, 563.2481890721523, 563.8673960584688, 564.4862747920631, 565.1048246811555, 565.7230492439398, 566.3409403692208, 566.958503375954, 567.575736952055, 568.1926412401723, 569.201915679431, 569.8199369235125, 570.4376299092224, 571.0549909905479, 571.672018369552, 572.2887067950727, 572.9050593178118, 573.5210803217414, 574.136762105251, 574.7521089520347, 575.724917945048, 576.3412979467039, 576.9573430257576, 577.573052354565, 578.1884261654595, 578.8034630955119, 579.4181613347802, 580.032520633276, 580.6465346092415, 581.2602012797201, 582.2329499288569, 582.8475529184259, 583.4618135281208, 584.0757320700739, 584.6893095181086, 585.3025499221733, 585.9154518070557, 586.5280125097472, 587.1402332180443, 587.7521097880766, 588.7820153905645, 589.3950895024108, 590.0078206885051, 590.6202077165617, 591.232249145971, 591.8439453517152, 592.455292108007, 593.0662885059915, 593.676936061133, 594.2872366949501, 595.2092916294096, 595.8207941282811, 596.4319493944026, 597.0427595660901, 597.6532220354171, 598.2633320610842, 598.8730954542548, 599.4825035677425, 600.0915548585414, 600.7002489001181, 601.7370283184696, 602.3469866176084, 602.9565874690883, 603.5658330945548, 604.1747257361328, 604.7832673598302, 605.3914544326234, 605.9992848451495, 606.606758462528, 607.2138740263441, 608.2465230666257, 608.8546840686272, 609.4624911171534, 610.0699403423324, 610.6770285670557, 611.2837546254183, 611.8901254846024, 612.4961354436085, 613.1017857290731, 613.7070802715997, 614.6940498914935, 615.3002879307345, 615.9061668995126, 616.5116885166724, 617.1168482005113, 617.7216487573927, 618.3260939865706, 618.9301791029625, 619.5339064256666, 620.1372735451935, 621.225071590002, 621.8295700129734, 622.433703332577, 623.0374706773856, 623.6408705778365, 624.2439042499733, 624.8465724592965, 625.4488706961336, 626.0508030422112, 626.6523694721069, 627.6538552429031, 628.256113189287, 628.8580041058414, 629.4595292764034, 630.0606846256022, 630.6614701604997, 631.2618859460644, 631.8619376359819, 632.4616160548418, 633.0609286450862, 634.0575036865738, 634.6576883461447, 635.2575020791791, 635.856941452931, 636.4560043778106, 637.0546978661956, 637.6530237845228, 638.2509776782018, 638.8485567069727, 639.4457663437385, 640.3699225128317, 640.9685490948001, 641.5667967329584, 642.1646665042331, 642.7621559765363, 643.3592676123216, 643.9560006658616, 644.5523600493517, 645.1483405031556, 645.7439460171961, 646.7129644478701, 647.309791575318, 647.9062382449036, 648.502305703743, 649.0979928636111, 649.6932962804628, 650.2882176102929, 650.8827578784762, 651.4769160186792, 652.0706962213803, 653.1425115651027, 653.7373631440187, 654.3318304559322, 654.9259151737858, 655.5196182262079, 656.112939752316, 656.7058819306786, 657.2984411223449, 657.8906119003135, 658.4823988130964, 659.4532999888141, 660.0462797395392, 660.6388729408845, 661.2310817488209, 661.8229048505576, 662.4143365062553, 663.0053822770894, 663.5960399647188, 664.1863089808943, 664.7761850878236, 665.7250488940047, 666.3159455109283, 666.9064483980234, 667.4965596046272, 668.0862784704606, 668.6756105228026, 669.2645555264947, 669.8531110233209, 670.4412749342843, 671.0290496886474, 672.0162347926249, 672.6048338685896, 673.1930436297695, 673.7808624992624, 674.3682924769731, 674.9553325050424, 675.5419797947611, 676.1282359166762, 676.7141008178239, 677.2995720117408, 678.3134675500396, 678.8999589065097, 679.4860535142274, 680.071754191561, 680.6570555616481, 681.2419608792773, 681.8264732290471, 682.4105905425535, 682.9943103093226, 683.5776406391378, 684.5984969962169, 685.1827847472243, 685.7666717765047, 686.3501633253336, 686.933257965813, 687.5159540716081, 688.0982526921038, 688.6801509015919, 689.2616486944232, 689.8427514905371, 690.8485981354835, 691.4307232564771, 692.0124496422308, 692.593778623896, 693.1747077602047, 693.7552374642729, 694.3353662834862, 694.9150968363639, 695.4944284520338, 696.0733598459531, 697.0972495846388, 697.6772415304298, 698.2568355848673, 698.8360267015817, 699.4148119110814, 699.99319285665, 700.5711698708986, 701.1487430173836, 701.7259111718647, 702.3026739897256, 703.3008791032671, 703.8789182416745, 704.4565433136515, 705.0337660940611, 705.6105809560526, 706.1869883600559, 706.762985890932, 707.338574196955, 707.9137462473865, 708.4885021771071, 709.4316681113976, 710.0077254522772, 710.5833700105636, 711.1586003534155, 711.7334168303927, 712.3078237859206, 712.8818194609025, 713.4554015178791, 714.0285696390689, 714.6013226402063, 715.5895344226695, 716.1633103263426, 716.7366684285939, 717.3096067867193, 717.8821249876029, 718.4542290118919, 719.0259156612925, 719.5971870246881, 720.1680407173054, 720.7384719180463, 721.8056812050911, 722.3771490047492, 722.9481957072384, 723.5188186156535, 724.0890195349932, 724.6587960013918, 725.2281470332576, 725.7970675891643, 726.3655645925106, 726.9336343210165, 728.0014438499435, 728.57044583488, 729.1390215943612, 729.7071689928953, 730.2748885954273, 730.8421829371472, 731.409050797774, 731.9754861867739, 732.5414849136686, 733.1070521766569, 734.1682959929788, 734.735036972645, 735.3013526865559, 735.8672345157715, 736.4326816841992, 736.9976962454133, 737.562277295502, 738.1264206044409, 738.6901289552895, 739.2534032851502, 740.3055088949062, 740.8701127722971, 741.4342795659929, 741.9980047959808, 742.5612904063775, 743.1241399485671, 743.6865525461792, 744.2485252085371, 744.8100577951107, 745.3711549674009, 746.4260072824503, 746.9883249622684, 747.5502066748635, 748.1116571212826, 748.6726675808965, 749.2332348921321, 749.7933536993128, 750.3530306412463, 750.9122669247962, 751.471060636918, 752.534339203047, 753.0942285494087, 753.653675798896, 754.2126741933562, 754.7712228013365, 755.3293255273121, 755.8869777789874, 756.4441810139202, 757.0009304392598, 757.5572258007809, 758.655821998492, 759.2134510492954, 759.7706280778497, 760.3273532006747, 760.8836238402099, 761.439437952061, 761.9947957848036, 762.5496965178556, 763.1041421595958, 763.6581384696366, 764.6713837006419, 765.2266316473771, 765.7814227189871, 766.3357544671424, 766.8896284390853, 767.4430433608655, 767.9959966577469, 768.5484918443925, 769.100531942551, 769.6521130887058, 770.6851593798347, 771.2382090146402, 771.7907972745351, 772.3429248431023, 772.8945897500969, 773.4457950116181, 773.9965362733536, 774.5468159447931, 775.0966343458366, 775.6459921141657, 776.7244775595873, 777.2751121562071, 777.8252816690532, 778.37498524859, 778.9242258452416, 779.4729979896362, 780.0213049160826, 780.5691456479327, 781.1165224880427, 781.6634377244394, 782.7488928667497, 783.2970147080878, 783.8446655542108, 784.3918440591377, 784.938551544133, 785.484792374102, 786.0305618529405, 786.5758595117445, 787.1206872105947, 787.6650442708514, 788.6866926318627, 789.2323241970743, 789.7774804854951, 790.3221634532466, 790.8663723228235, 791.4101063223698, 791.9533666389759, 792.4961484084669, 793.0384546624779, 793.5802868719838 ], "yaxis": "y2" }, { "marker": { "color": "#ff4757", "size": 3 }, "mode": "markers", "name": "GNSS Outage", "type": "scatter", "x": [ 214.98103605310388, 215.74975101674366, 216.5191284346769, 217.2891703354072, 218.05988283534722, 218.83127093291515, 219.6033361941863, 220.37608209344208, 221.14951071767928, 221.92362395192734, 222.698425832224, 223.4739202014688, 224.25010972607336, 225.02699929188375, 225.80458732951374, 226.5828788440033, 227.3618787388569, 228.14159154013166, 228.92201761534207, 229.70315947528556, 230.4850214330153, 231.26760506785044, 232.05091359140428, 232.83495596198117, 233.61973746715464, 234.40525673950592, 235.1915196338833, 235.97853122485662, 236.76629293281985, 237.55480839318673, 238.34408113100645, 239.13411514920733, 239.92491167725245, 240.7164749023791, 241.50880876902244, 242.30191282799802, 243.0957918625128, 243.8904500774626, 244.68588868244464, 245.4821161291892, 246.27912896659143, 247.07693173505598, 247.87552675665648, 248.67491804315046, 249.47510628100648, 250.27610150237754, 251.07790564195713, 251.88052070507217, 252.6839482655236, 253.48819090694948, 254.29324896927315, 255.09912663421383, 255.90583157984497, 256.71336578942066, 257.52173670041924, 258.33094356898255, 259.14099018613865, 259.9518776754004, 260.7636109435833, 261.57619202360524, 262.3896278861021, 263.20392019537377, 264.019065508041, 264.8350702561597, 265.6519448095988, 266.4696877755555, 267.2883014639634, 268.10778755346996, 268.9281513393743, 269.7493957639999, 270.5715223945258, 271.3945345694846, 272.2184407074973, 273.0432420446485, 273.8689386063222, 274.695535048806, 275.5230398436956, 276.3514546144561, 277.18077666487727, 278.01100769457594, 278.84215303858264, 279.6742149980016, 280.50719995301745, 281.34110804379316, 282.17594603016795, 283.01171889179784, 283.84842910085257, 284.6860773636664, 285.5246683839835, 286.36420329635337, 287.20468600327234, 288.0461165544046, 288.8885045967303, 289.7318493102394, 290.57615035059416, 291.42141702154026, 292.2676504355542, 293.1148581161987, 293.9630413359792, 294.8122024931209, 295.66234410283573, 296.51346736258097, 297.36557819342374, 298.2186799791464, 299.07277029834694, 299.92786237823697, 300.78395796368267, 301.6410558594342, 302.49915887868815, 303.3582686007638, 304.2183854704308, 305.07951649915987, 305.94166352673085, 306.804832489662, 307.6690246107943, 308.53424981301976, 309.40050556236434, 310.26779718171855, 311.136126329864, 312.005496149988, 312.87590796977804, 313.7473660007518, 314.61987547088614, 315.49344009505734, 316.3680630418366, 317.2437481011483, 318.1204949628676, 318.99830834398267, 319.87719205869814, 320.75714748988383, 321.6381763912354, 322.5202913697144, 323.4034934528166, 324.28778647792313, 325.17317303308675, 326.0596561842393, 326.94723668406823, 327.83591969653867, 328.72570792006803, 329.6166072216448, 330.50861989464784, 331.40174786494146, 332.2959937757607, 333.1913629488923, 334.08786055050876, 334.9854855851204, 335.8842411650122, 336.7841339208965, 337.685163572447, 338.58733454308145, 339.49064823001737, 340.3951080015859, 341.30071900850857, 342.20748583423205, 343.11541405769293, 344.0245010952532, 344.93475474638745, 345.8461756456929, 346.7587648924021, 347.6725324403091, 348.5874822316417, 349.50361259658155, 350.4209259554271, 351.33942876782527, 352.2591244230766, 353.18001819661475, 354.10210586919635, 355.025393839768, 355.9498818677344, 356.8755756953721, 357.80247723419785, 358.73059414573055, 359.6599274398073, 360.5904829127833, 361.52226215170305, 362.45526870368866, 363.38950617656286, 364.3249749588095, 365.26168072538223, 366.1996225613577, 367.1388019378976, 368.07922852184765, 369.02090607554106, 369.9638349046882, 370.90802258582704, 371.8534701961171, 372.80018308714375, 373.7481611375058, 374.6974130715342, 375.6479390889891, 376.599738656809, 377.55281525037884, 378.5071761659102, 379.46282511827957, 380.41975833963534, 381.3779864569964, 382.33751025615953, 383.29833275339246, 384.26045787216106, 385.2238898626106, 386.1886312907207, 387.15469039411414, 388.122061647933, 389.09074717669813, 390.06074829043877, 391.0320735722192, 392.0047235915212, 392.9787062537697, 393.9540260684671, 394.9306846789441, 395.90869089009794, 396.8880449359019, 397.8687511879024, 398.8508135386632, 399.83423217801146, 400.8190094103626, 401.8051452268875, 402.79264790494005, 403.7815203780144, 404.77176544716724, 405.7633889937344, 406.7563903202108, 407.7507758729998, 408.7465501042141, 409.7437127368383, 410.74226406333884, 411.7422108369328, 412.74355263050893, 413.7462966089447, 414.7504470168672, 415.7560043387774, 416.7629723072104, 417.77135663133294, 418.78115348590387, 419.79236819712446, 420.8050023233447, 421.8190630437894, 422.8345499147926, 423.8514674304055, 424.8698184016175, 425.88960664594424, 426.91083900820564, 427.9335160148414, 428.9576449157099, 429.98322710251034, 431.01026394707606, 432.0387587669705, 433.068716895017, 434.10014100314527, 435.133039373124, 436.1674157076894, 437.2032681725798, 438.2406017529697, 439.27942271978236, 440.3197314868854, 441.3615300496731, 442.40482420229307, 443.44961413678004, 444.4959033770794, 445.5436939759749, 446.59299177396764, 447.64380140968666, 448.6961255230559, 449.74996468355766, 450.8053260262706, 451.86220755138635, 452.9206147881772, 453.9805535661076, 455.04202422730816, 456.1050281756182, 457.16956999448445, 458.2356526869309, 459.30328417383356, 460.37246499377204, 461.443197322035, 462.5154844761862, 463.5893319832904, 464.66474044704273, 465.74171263428667, 466.820247038544, 467.90034560223353, 468.9820107489647, 470.0652500000929, 471.15006982409443, 472.23647150892555, 473.32445889858946, 474.41403500714665, 475.50520320182454, 476.5979710922707, 477.69233774479954, 478.7883074283184, 479.88588726024796, 480.98507615901406, 482.0858768991856, 483.1882955552369, 484.2923373750102, 485.39800304828515, 486.5052974796697, 487.6142243299617, 488.72478700391264 ], "xaxis": "x2", "y": [ 208.55598225162632, 209.24600010997176, 209.93589564575535, 210.62567234892379, 211.31533354276507, 212.00487291119595, 212.69429000579146, 213.38358292833698, 214.07274917330213, 214.7617965679976, 215.45072111332016, 216.13952163065366, 216.8281956787302, 217.51674828838352, 218.20517566530293, 218.8934820967135, 219.58166739406494, 220.269728026452, 220.95766115926392, 221.64546669222307, 222.33314730811122, 223.02070328163276, 223.70813411139918, 224.39543955801508, 225.08261520996754, 225.76966242100553, 226.4565781566692, 227.14336574095265, 227.8300294017618, 228.51656438791062, 229.20296616783534, 229.88923924979574, 230.57537893698168, 231.2613843388989, 231.94725971593758, 232.63300637312037, 233.3186226375043, 234.00410779372802, 234.68946066176298, 235.37467819585038, 236.05976111064538, 236.74471237775782, 237.42953436995606, 238.11422681959743, 238.79878645776992, 239.4832087274872, 240.16749566608166, 240.85164487253766, 241.53565831074476, 242.2195395278503, 242.90328938257042, 243.58690634107995, 244.27038677502063, 244.95373419834934, 245.63694468823041, 246.3200149630405, 247.0029514137181, 247.68575280868342, 248.36841892760802, 249.05094960736403, 249.73334005933782, 250.41559131243517, 251.09770170713062, 251.7796681658872, 252.4614947598386, 253.14318486099933, 253.82473544832683, 254.50614530507124, 255.1874182763883, 255.86855043520524, 256.5495446712149, 257.23040228802745, 257.91112204911985, 258.59169862211917, 259.272137384594, 259.95243708730993, 260.63259084500197, 261.3126015854967, 261.9924687247823, 262.6721930191788, 263.35176688500786, 264.03119023611544, 264.71046361484855, 265.38958607633697, 266.06856196712505, 266.74739184792054, 267.42607338832596, 268.104609543709, 268.7829970225598, 269.4612346123655, 270.139323868843, 270.8172687282454, 271.49506254399665, 272.1727067185724, 272.85019779239167, 273.52753847012787, 274.2047254835751, 274.8817577113179, 275.5586386284732, 276.2353677216473, 276.9119446885949, 277.58836133337854, 278.26461916440115, 278.9407215141309, 279.6166687575501, 280.29245862216806, 280.9680908791821, 281.64356139390225, 282.3188716330665, 282.9940242780443, 283.6690172046431, 284.34384975470215, 285.01852565191405, 285.6930405638581, 286.3673978159409, 287.04159665678577, 287.7156399520754, 288.3895252442997, 289.0632523872793, 289.73681741933854, 290.4102241206644, 291.0834745716664, 291.75656505995073, 292.4294906019977, 293.10225293289426, 293.77485423897684, 294.4472924299495, 295.1195661132234, 295.7916734195372, 296.4636173565159, 297.13539563401446, 297.80700791377217, 298.4784542953605, 299.14973339042757, 299.8208428939985, 300.49178444017605, 301.16256022871437, 301.833172513037, 302.50361572208186, 303.1738852593164, 303.84398038395676, 304.5139027505851, 305.1836519686833, 305.85322901984307, 306.5226390295264, 307.19187440911173, 307.86093532102075, 308.52982244248113, 309.19853391835517, 309.8670680728753, 310.5354274504118, 311.20360497785543, 311.8716017229518, 312.53942293615705, 313.20706545166155, 313.8745251390123, 314.5418056498716, 315.2089122544685, 315.8758432113605, 316.54260097593925, 317.20917659453517, 317.8755673455265, 318.54178079493704, 319.2078212130435, 319.8736840831119, 320.53936892493925, 321.2048754518159, 321.87019758634784, 322.53533530805583, 323.2002882122982, 323.8650560632103, 324.52964262332495, 325.1940459280463, 325.8582665006546, 326.5223034174651, 327.1861505975527, 327.84980973080866, 328.51328282984906, 329.1765702131614, 329.8396740240053, 330.50259307529035, 331.165321786774, 331.8278625425233, 332.4902184229001, 333.152382705767, 333.8143609593616, 334.47615340048134, 335.1377577707594, 335.79916938609676, 336.4603876766055, 337.121415273516, 337.7822517601815, 338.4428996823848, 339.1033591672383, 339.76362711955056, 340.4237062842474, 341.0835975899567, 341.7432990982116, 342.4028087582623, 343.0621206749096, 343.72123872367484, 344.38016348574524, 345.03889503456344, 345.697429775668, 346.35577084732756, 347.013913502593, 347.67185823226026, 348.329602998997, 348.9871474475941, 349.64449549947494, 350.30164741592654, 350.9586006864752, 351.61535570022676, 352.2719103873645, 352.928269820387, 353.58443222819204, 354.2403942479456, 354.8961532922002, 355.55171079026644, 356.20706659949565, 356.86222255878334, 357.5171785388983, 358.1719364175759, 358.826491793896, 359.48084694317384, 360.13500214152623, 360.7889572568973, 361.44270589340533, 362.09625189761846, 362.74959910127507, 363.402744633043, 364.05568697039604, 364.70842539656024, 365.3609620908104, 366.0132924559079, 366.6654188886313, 367.31734565643245, 367.9690692877255, 368.6205904597381, 369.2719094238705, 369.92302387726653, 370.5739337563698, 371.2246383295767, 371.8751375248569, 372.525430428412, 373.17551974138456, 373.8254020529201, 374.475078499264, 375.12454554880475, 375.7738004290756, 376.4228455877001, 377.07167887788785, 377.7202968125169, 378.368699441726, 379.01688631779643, 379.66486277804455, 380.312631224192, 380.96018381480457, 381.60751824843817, 382.2546380425806, 382.9015395307399, 383.5482228329668, 384.19469198155514, 384.8409450055536, 385.48697634378635, 386.1327852526449, 386.7783767530764, 387.4237481969019, 388.0688970129163, 388.71382507673644, 389.35853147244546, 390.0030169090491, 390.6472779806363, 391.29131927597143, 391.9351386023623, 392.5787355996566, 393.2221108313869, 393.8652586191513, 394.50818068391305, 395.15087614294583, 395.7933451798568, 396.4355862756504, 397.0776041299615, 397.7193960296426, 398.36096481566005, 399.0023104173957, 399.64343034273656, 400.2843288358309, 400.92500344481795, 401.5654509996511, 402.2056716048452, 402.84566523356517, 403.48543360536206, 404.1249743171017, 404.76428393956894, 405.40336500159805, 406.0422149651744, 406.68083922552125, 407.31923358086124, 407.95739141851516 ], "yaxis": "y2" } ], "layout": { "annotations": [ { "font": { "size": 16 }, "showarrow": false, "text": "Navigation Error During GNSS Outage", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 1, "yanchor": "bottom", "yref": "paper" }, { "font": { "size": 16 }, "showarrow": false, "text": "Trajectory During GNSS Outage", "x": 0.5, "xanchor": "center", "xref": "paper", "y": 0.44, "yanchor": "bottom", "yref": "paper" } ], "height": 700, "template": { "layout": { "font": { "color": "#e6edf3" }, "paper_bgcolor": "#0d1117", "plot_bgcolor": "#0d1117", "xaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" }, "yaxis": { "gridcolor": "#30363d", "zerolinecolor": "#30363d" } } }, "xaxis": { "anchor": "y", "domain": [ 0, 1 ], "range": [ 0, 120 ], "title": { "text": "Time (s)" } }, "xaxis2": { "anchor": "y2", "domain": [ 0, 1 ], "title": { "text": "East (m)" } }, "yaxis": { "anchor": "x", "domain": [ 0.56, 1 ], "title": { "text": "Error (m)" } }, "yaxis2": { "anchor": "x2", "domain": [ 0, 0.44 ], "scaleanchor": "x2", "scaleratio": 1, "title": { "text": "North (m)" } } } } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Max error during 30s outage: 70.3 m\n", "Error growth rate: 2.34 m/s\n" ] } ], "source": [ "# Visualize outage behavior\n", "fig = make_subplots(rows=2, cols=1, \n", " subplot_titles=['Navigation Error During GNSS Outage', \n", " 'Trajectory During GNSS Outage'],\n", " vertical_spacing=0.12)\n", "\n", "# Position error during outage\n", "outage_north = (outage_positions[:, 0] - lat0) * (R_M + alt0)\n", "outage_east = (outage_positions[:, 1] - lon0) * (R_N + alt0) * np.cos(lat0)\n", "true_north = np.array(outage_times) * v_north\n", "true_east = np.array(outage_times) * v_east\n", "\n", "error_north = outage_north - true_north\n", "error_east = outage_east - true_east\n", "total_error = np.sqrt(error_north**2 + error_east**2)\n", "\n", "# Outage shading\n", "outage_times_arr = np.array(outage_times)\n", "gnss_available_arr = np.array(gnss_available)\n", "outage_mask = ~gnss_available_arr\n", "if np.any(outage_mask):\n", " # Find outage start and end indices\n", " outage_indices = np.where(outage_mask)[0]\n", " if len(outage_indices) > 0:\n", " fig.add_vrect(x0=outage_times_arr[outage_indices[0]], \n", " x1=outage_times_arr[outage_indices[-1]],\n", " fillcolor='rgba(255, 71, 87, 0.2)', line_width=0,\n", " row=1, col=1)\n", "\n", "fig.add_trace(\n", " go.Scatter(x=outage_times, y=total_error, mode='lines', name='Position Error',\n", " line=dict(color='#00d4ff', width=2)),\n", " row=1, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=outage_times, y=outage_cov, mode='lines', name='1σ Uncertainty',\n", " line=dict(color='#00ff88', width=1.5, dash='dash')),\n", " row=1, col=1\n", ")\n", "\n", "# Trajectory with color-coded GNSS availability\n", "fig.add_trace(\n", " go.Scatter(x=true_east, y=true_north, mode='lines', name='True',\n", " line=dict(color='#00ff88', width=2)),\n", " row=2, col=1\n", ")\n", "\n", "# Split trajectory by GNSS availability\n", "gnss_avail_x, gnss_avail_y = [], []\n", "gnss_outage_x, gnss_outage_y = [], []\n", "\n", "for i in range(len(outage_times)):\n", " if gnss_available[i]:\n", " gnss_avail_x.append(outage_east[i])\n", " gnss_avail_y.append(outage_north[i])\n", " else:\n", " gnss_outage_x.append(outage_east[i])\n", " gnss_outage_y.append(outage_north[i])\n", "\n", "fig.add_trace(\n", " go.Scatter(x=gnss_avail_x, y=gnss_avail_y, mode='markers', name='GNSS Available',\n", " marker=dict(color='#00d4ff', size=3)),\n", " row=2, col=1\n", ")\n", "fig.add_trace(\n", " go.Scatter(x=gnss_outage_x, y=gnss_outage_y, mode='markers', name='GNSS Outage',\n", " marker=dict(color='#ff4757', size=3)),\n", " row=2, col=1\n", ")\n", "\n", "fig.update_xaxes(title_text='Time (s)', row=1, col=1, range=[0, duration])\n", "fig.update_yaxes(title_text='Error (m)', row=1, col=1)\n", "fig.update_xaxes(title_text='East (m)', row=2, col=1)\n", "fig.update_yaxes(title_text='North (m)', row=2, col=1, scaleanchor='x2', scaleratio=1)\n", "\n", "fig.update_layout(template=dark_template, height=700)\n", "fig.show()\n", "\n", "# Find max error during outage\n", "max_outage_error = np.max(total_error[outage_mask])\n", "print(f\"\\nMax error during {outage_duration:.0f}s outage: {max_outage_error:.1f} m\")\n", "print(f\"Error growth rate: {max_outage_error/outage_duration:.2f} m/s\")" ] }, { "cell_type": "markdown", "id": "cell-18", "metadata": {}, "source": [ "## Summary & Learning Path\n", "\n", "### INS/GNSS Integration Overview\n", "\n", "**Core Disciplines:**\n", "1. **Inertial Navigation** - Physics of accelerometer & gyro integration\n", "2. **GNSS Positioning** - Satellite pseudorange equations and DOP\n", "3. **Kalman Filtering** - Optimal state estimation\n", "4. **Error Modeling** - IMU biases, noise, GNSS multipath\n", "5. **Sensor Fusion** - Loosely-coupled vs Tightly-coupled vs Ultra-tight\n", "\n", "### Integration Architecture Comparison\n", "\n", "| Aspect | Loosely-Coupled | Tightly-Coupled | Ultra-Tight |\n", "|--------|----------------|-----------------|------------|\n", "| Implementation | Simpler | Complex | Very Complex |\n", "| Min satellites | 4 | 1 | 0.5 (predicted) |\n", "| Update rate | 1-10 Hz | 1000+ Hz | Continuous |\n", "| Outage performance | Good (2-3 min) | Excellent (5-10 min) | Best (>30 min) |\n", "| Urban canyon | Poor | Better | Best |\n", "| Computation | 2-3 ms | 50-100 ms | 100+ ms |\n", "\n", "### 4-Week Learning Curriculum\n", "\n", "**Week 1: INS Fundamentals**\n", "- Day 1-2: Coordinate frames (ECEF, NED, body), direction cosine matrices\n", "- Day 3-4: Coriolis effect, transport rate, gravity anomaly modeling\n", "- Day 5: IMU mechanization, specific force decomposition, attitude propagation\n", "\n", "**Week 2: GNSS & Sensor Fusion**\n", "- Day 1-2: GNSS pseudorange equations, dilution of precision (DOP)\n", "- Day 3-4: Kalman filter architecture, measurement equation design\n", "- Day 5: Loosely-coupled architecture: position/velocity measurement model\n", "\n", "**Week 3: Error Modeling & Tightly-Coupled**\n", "- Day 1-2: IMU bias modeling, Allan variance, random walk processes\n", "- Day 3-4: Receiver clock bias, atmospheric delays\n", "- Day 5: Tightly-coupled architecture: pseudorange residuals as measurements\n", "\n", "**Week 4: Advanced Integration & Applications**\n", "- Day 1-2: GNSS denial/outage scenarios, INS mechanization during outage\n", "- Day 3-4: Multi-frequency GNSS, integer ambiguity resolution\n", "- Day 5: Real-world tuning, filter divergence detection, adaptive filtering\n", "\n", "### Advanced Topics\n", "\n", "**Tightly-Coupled Integration**\n", "- Uses raw pseudoranges (z) = ρ + dt·c + troposphere + ionosphere + multipath\n", "- Kalman state includes: [position, velocity, attitude, gyro_bias, accel_bias, clock_bias]\n", "- Advantages: Works with 1 satellite (clock aiding), better in urban canyons\n", "- Challenges: Nonlinear pseudorange equations, receiver implementation complexity\n", "\n", "**Ultra-Tight Integration**\n", "- Carrier phase tracking loop uses INS-predicted satellite position\n", "- Achieves tight integration without explicit pseudorange computation\n", "- Can navigate with 0-1 satellites (clock prediction by INS)\n", "- Used in high-dynamics applications (aircraft, missiles)\n", "\n", "**Adaptive Filtering for GNSS Multipath**\n", "- Multipath causes pseudorange errors correlated with antenna placement\n", "- Variance adaptation: monitor innovation sequence for consistency\n", "- Hypothesis testing: detect and exclude outlier measurements\n", "- Residual monitoring: chi-square test for filter consistency\n", "\n", "**INS/GNSS Initialization & Alignment**\n", "- Coarse alignment: use GNSS position + local gravity\n", "- Fine alignment: compute attitudes from initial motion vector\n", "- Gyro bias convergence: typically 20-30 seconds\n", "- Accel bias convergence: depends on maneuvers\n", "\n", "**RAIM (Receiver Autonomous Integrity Monitoring)**\n", "- Detects faulty GNSS measurements using redundant satellites\n", "- Chi-square test: residuals from least-squares fit\n", "- Excludes measurements with largest residuals iteratively\n", "- Safety-critical applications (aviation, maritime)\n", "\n", "## Progressive Exercises\n", "\n", "**Exercise 1: Compare Integration Techniques** ⭐\n", "- Implement INS-only, loosely-coupled, and loosely-coupled+RAIM\n", "- Disable GNSS: observe INS drift rates (typical: 1-10 m/min)\n", "- Calculate: Position uncertainty growth during 30-minute outage\n", "- Expected: INS-only unbounded growth, integrated bounded\n", "\n", "**Exercise 2: Optimal Fusion Tuning** ⭐⭐\n", "- Sweep process noise Q: observe state covariance P convergence\n", "- Sweep measurement noise R: analyze innovation sequence\n", "- Use `check_innovation_chi2()`: verify filter consistency\n", "- Goal: Minimize covariance while keeping innovations whitened\n", "\n", "**Exercise 3: IMU Grade Comparison** ⭐⭐\n", "- Model consumer (0.1 °/hr gyro), tactical (0.01 °/hr), nav-grade (0.0001 °/hr)\n", "- Compare position error after 10-minute GNSS outage\n", "- Plot: Position uncertainty vs IMU grade\n", "- Key: Demonstrate why navigation-grade IMUs worth $100k cost\n", "\n", "**Exercise 4: Urban Canyon Simulation** ⭐⭐⭐\n", "- Add GNSS outage intervals: [60-90s], [120-150s], [180-210s]\n", "- Model multipath: add ±5m bias to 50% of measurements randomly\n", "- Compare: Loosely-coupled vs tightly-coupled recovery speed\n", "- Analyze: Covariance reductions during re-acquisition\n", "\n", "**Exercise 5: Receiver Clock Dynamics** ⭐⭐⭐\n", "- Modify receiver clock model: linear drift + random walk\n", "- Observe: Clock bias convergence time without GNSS\n", "- Track: Frequency stability (Allan variance concept)\n", "- Compare: White noise vs frequency random walk models\n", "\n", "**Exercise 6: GNSS/INS Misalignment Detection** ⭐⭐⭐⭐\n", "- Introduce 5° pitch error in initial attitude\n", "- Implement: Residual monitoring chi-square test\n", "- Detect: Time to identify misalignment from innovation sequence\n", "- Recovery: Reset covariance sub-blocks and re-process measurements\n", "\n", "**Exercise 7: Multi-Constellation GNSS** ⭐⭐⭐⭐\n", "- Extend code to fuse GPS + GLONASS + Galileo\n", "- Implement: Constellation-specific atmospheric models\n", "- Compare: Single-constellation vs multi-constellation position accuracy\n", "- Factor: Geometry improvement with more satellites\n", "\n", "## Core References\n", "\n", "1. **Groves, P. D. (2013).** *Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems* (2nd ed.). Artech House. — Definitive integrated navigation reference\n", "2. **Titterton, D., & Weston, J. (2004).** *Strapdown Inertial Navigation Technology* (2nd ed.). The Institution of Electrical Engineers. — Comprehensive INS theory\n", "3. **Kaplan, E. D., & Hegarty, C. J. (2017).** *Understanding GPS/GNSS: Principles and Applications* (3rd ed.). Artech House. — GNSS fundamentals\n", "\n", "## Advanced References\n", "\n", "4. **Noureldin, A., Karamat, T. B., & Georgy, J. (2013).** *Fundamentals of Inertial Navigation, Satellite-Based Positioning, and Their Integration*. Springer. — Integration architecture details\n", "5. **Parkinson, B. W., & Spilker Jr, J. J. (Eds.). (1996).** *Global positioning system: theory and applications* (Vol. 163). American Institute of Aeronautics and Astronautics. — GPS foundations\n", "6. **Brown, R. G., & Hwang, P. Y. (2012).** *Introduction to Random Signals and Applied Kalman Filtering* (4th ed.). John Wiley & Sons. — Kalman filter for navigation\n", "\n", "## PyTCL API Documentation\n", "\n", "- [`initialize_ins_state()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): Create INS state vector\n", "- [`mechanize_ins_ned()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): INS propagation equation\n", "- [`gravity_ned()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): Gravity model computation\n", "- [`radii_of_curvature()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): Earth curvature at location\n", "- [`earth_rate_ned()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): Rotation rate compensation\n", "- [`transport_rate_ned()`](https://github.com/nrl-ai/nrl-tracker/tree/main/pytcl/navigation): Transport rate due to curvature" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.0" } }, "nbformat": 4, "nbformat_minor": 5 }