{
  "schema": "nomac-traffic-study",
  "schemaVersion": 1,
  "name": "Imperfect detection at a crossing",
  "seed": "traffic-1",
  "reference": {
    "schema": "nomac-trajectory-scenario",
    "schemaVersion": 1,
    "name": "Crossing reference",
    "seed": "reference-1",
    "coordinateFrame": {
      "type": "local-metres",
      "altitudeReference": "AGL-flat",
      "groundElevationMetres": 0
    },
    "durationSeconds": 180,
    "traceIntervalSeconds": 2,
    "airspace": {
      "bounds": [
        -1500,
        -1500,
        0,
        1500,
        1500,
        300
      ],
      "tlsTargets": {
        "cs25Intruders": null,
        "otherIntruders": null
      }
    },
    "geofences": [],
    "profiles": [
      {
        "id": "multirotor",
        "cruiseSpeedMetresPerSecond": 12,
        "maxSpeedMetresPerSecond": 18,
        "accelerationMetresPerSecondSquared": 3,
        "climbMetresPerSecond": 4,
        "yawDegreesPerSecond": 60,
        "bodyRadiusMetres": 0.5,
        "protectiveRadiusMetres": 50,
        "protectiveHalfHeightMetres": 15,
        "speedExpansionSeconds": 0
      }
    ],
    "nmac": {
      "horizontalMetres": 20,
      "verticalMetres": 5
    },
    "daa": {
      "enabled": true,
      "detectionRangeMetres": 500,
      "scanIntervalSeconds": 0.5,
      "latencySeconds": 2,
      "lookaheadSeconds": 90,
      "clearanceMarginMetres": 10,
      "clearHoldSeconds": 2
    },
    "missions": []
  },
  "network": {
    "nodes": [
      {
        "id": "west",
        "position": [
          -600,
          0
        ]
      },
      {
        "id": "east",
        "position": [
          600,
          0
        ]
      },
      {
        "id": "south",
        "position": [
          0,
          -600
        ]
      },
      {
        "id": "north",
        "position": [
          0,
          600
        ]
      }
    ],
    "layers": [
      {
        "id": "lower",
        "altitudeMetres": 120,
        "minAltitudeMetres": 90,
        "maxAltitudeMetres": 150,
        "capacity": 6
      }
    ],
    "corridors": [
      {
        "id": "lower-west",
        "from": "west",
        "to": "east",
        "layerId": "lower",
        "widthMetres": 120,
        "capacity": 3,
        "headwaySeconds": 12,
        "minSensorRangeMetres": 150,
        "allowedProfileIds": []
      },
      {
        "id": "lower-south",
        "from": "south",
        "to": "north",
        "layerId": "lower",
        "widthMetres": 120,
        "capacity": 3,
        "headwaySeconds": 12,
        "minSensorRangeMetres": 150,
        "allowedProfileIds": []
      }
    ]
  },
  "demand": {
    "mode": "schedule",
    "ratePerHour": 90,
    "generationSeconds": 60,
    "maxFlights": 500,
    "odPairs": [
      {
        "from": "west",
        "to": "east",
        "weight": 1
      },
      {
        "from": "south",
        "to": "north",
        "weight": 1
      }
    ],
    "fleet": [
      {
        "profileId": "multirotor",
        "sensorId": "standard",
        "weight": 1
      }
    ],
    "schedule": [
      {
        "id": "a",
        "from": "west",
        "to": "east",
        "requestedSeconds": 0,
        "profileId": "multirotor",
        "sensorId": "standard"
      },
      {
        "id": "b",
        "from": "south",
        "to": "north",
        "requestedSeconds": 0,
        "profileId": "multirotor",
        "sensorId": "standard"
      }
    ]
  },
  "dcb": {
    "enabled": false,
    "maxDelaySeconds": 120,
    "slotSeconds": 2,
    "maxRouteAlternatives": 8,
    "maxSearchStates": 5000
  },
  "sensors": [
    {
      "id": "standard",
      "enabled": true,
      "detectionRangeMetres": 500,
      "scanIntervalSeconds": 0.5,
      "latencySeconds": 4,
      "lookaheadSeconds": 90,
      "clearanceMarginMetres": 10,
      "clearHoldSeconds": 2,
      "fovDegrees": 360,
      "pd": 0.6,
      "observationAgeSeconds": 2,
      "positionErrorMetres": 2,
      "falseAlertsPerFlightHour": 0,
      "geofencePolicy": "respect"
    }
  ],
  "disturbances": {
    "navigationVerticalMetres": 0,
    "navigationCorrelationSeconds": 30,
    "failuresPerFlightHour": 0,
    "contingencyHoldSeconds": 20,
    "hoverCageScale": 1.5,
    "maxReplanAttempts": 10,
    "replanStepSeconds": 5,
    "urgentGeofences": {
      "ratePerHour": 0,
      "lifetimeSeconds": 60,
      "noticeSeconds": 10,
      "halfWidthMetres": 80,
      "minAltitudeMetres": 90,
      "maxAltitudeMetres": 150
    }
  },
  "obstacles": [],
  "intruders": [],
  "acceptance": {
    "minCompletionFraction": 0.95,
    "maxRejectionFraction": 0.05,
    "maxMeanDelaySeconds": 30,
    "maxP95DelaySeconds": 90,
    "maxCollisions": 0,
    "maxNmacIntervals": 0,
    "maxBoundaryBreaches": 0,
    "allowMultiEncounters": false,
    "collisionRateTarget": 1e-7
  },
  "experiment": {
    "rates": [
      30,
      90,
      180
    ],
    "replicates": 5,
    "confirmationReplicates": 5,
    "refinementRounds": 1,
    "bootstrapSamples": 500
  }
}
