{
 "ocl_version": "0.1.0",
 "name": "Berggasse",
 "slug": "berggasse",
 "confidence": "A",
 "reported_claims": [],
 "ladder": [
  {
   "window_m": 2.0,
   "max_gradient_pct": 39.006834249011035,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 324.0,
   "end_distance_m": 326.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 809.569636072435,
   "min_gradient_pct": -2.861450852321923
  },
  {
   "window_m": 3.0,
   "max_gradient_pct": 39.550742618507684,
   "diagnostic": true,
   "flags": [],
   "start_distance_m": 324.0,
   "end_distance_m": 327.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 809.97602166601,
   "min_gradient_pct": -1.981170852809555
  },
  {
   "window_m": 5.0,
   "max_gradient_pct": 34.33209822971094,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 324.0,
   "end_distance_m": 329.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 810.5061042989403,
   "min_gradient_pct": -1.54297746089469
  },
  {
   "window_m": 10.0,
   "max_gradient_pct": 30.56601253347253,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 324.0,
   "end_distance_m": 334.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 811.846100640802,
   "min_gradient_pct": 3.133290810743574
  },
  {
   "window_m": 20.0,
   "max_gradient_pct": 24.94678584322685,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 314.0,
   "end_distance_m": 334.0,
   "start_elevation_m": 806.8567434721566,
   "end_elevation_m": 811.846100640802,
   "min_gradient_pct": 9.141276392562077
  },
  {
   "window_m": 25.0,
   "max_gradient_pct": 23.769325875303366,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 309.0,
   "end_distance_m": 334.0,
   "start_elevation_m": 805.9037691719761,
   "end_elevation_m": 811.846100640802,
   "min_gradient_pct": 9.354428050037313
  },
  {
   "window_m": 50.0,
   "max_gradient_pct": 20.87384456361542,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 284.0,
   "end_distance_m": 334.0,
   "start_elevation_m": 801.4091783589943,
   "end_elevation_m": 811.846100640802,
   "min_gradient_pct": 9.545710311147559
  },
  {
   "window_m": 100.0,
   "max_gradient_pct": 17.850644969736095,
   "diagnostic": false,
   "flags": [],
   "start_distance_m": 234.0,
   "end_distance_m": 334.0,
   "start_elevation_m": 793.9954556710659,
   "end_elevation_m": 811.846100640802,
   "min_gradient_pct": 10.02454160687114
  }
 ],
 "shape": {
  "ascent_concentration": 0.359,
  "concentration_window_frac": 0.25,
  "longest_pitch_10pct_m": 156.0,
  "shape_class": "sustained"
 },
 "length_m": 344.4877984412778,
 "start_elevation_m": 767.3825056788356,
 "end_elevation_m": 812.1577687988545,
 "endpoint_gain_m": 44.77526312001885,
 "overall_gradient_pct": 12.997633972122047,
 "accumulated_ascent_m": 44.85744256815826,
 "window_maxima": {
  "max_5m": {
   "gradient_pct": 34.33209822971094,
   "start_distance_m": 324.0,
   "end_distance_m": 329.0,
   "midpoint_distance_m": 326.5,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 810.5061042989403,
   "start_xy": [
    2602964.911675348,
    1184680.8514196728
   ],
   "end_xy": [
    2602963.5372828175,
    1184685.6588142894
   ]
  },
  "max_10m": {
   "gradient_pct": 30.56601253347253,
   "start_distance_m": 324.0,
   "end_distance_m": 334.0,
   "midpoint_distance_m": 329.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 811.846100640802,
   "start_xy": [
    2602964.911675348,
    1184680.8514196728
   ],
   "end_xy": [
    2602962.1633097515,
    1184690.4663284684
   ]
  },
  "max_20m": {
   "gradient_pct": 24.94678584322685,
   "start_distance_m": 314.0,
   "end_distance_m": 334.0,
   "midpoint_distance_m": 324.0,
   "start_elevation_m": 806.8567434721566,
   "end_elevation_m": 811.846100640802,
   "start_xy": [
    2602967.7176475795,
    1184671.256107863
   ],
   "end_xy": [
    2602962.1633097515,
    1184690.4663284684
   ]
  },
  "max_25m": {
   "gradient_pct": 23.769325875303366,
   "start_distance_m": 309.0,
   "end_distance_m": 334.0,
   "midpoint_distance_m": 321.5,
   "start_elevation_m": 805.9037691719761,
   "end_elevation_m": 811.846100640802,
   "start_xy": [
    2602969.790419237,
    1184666.7065548166
   ],
   "end_xy": [
    2602962.1633097515,
    1184690.4663284684
   ]
  },
  "max_50m": {
   "gradient_pct": 20.87384456361542,
   "start_distance_m": 284.0,
   "end_distance_m": 334.0,
   "midpoint_distance_m": 309.0,
   "start_elevation_m": 801.4091783589943,
   "end_elevation_m": 811.846100640802,
   "start_xy": [
    2602981.5638311943,
    1184644.7052941592
   ],
   "end_xy": [
    2602962.1633097515,
    1184690.4663284684
   ]
  },
  "max_100m": {
   "gradient_pct": 17.850644969736095,
   "start_distance_m": 234.0,
   "end_distance_m": 334.0,
   "midpoint_distance_m": 284.0,
   "start_elevation_m": 793.9954556710659,
   "end_elevation_m": 811.846100640802,
   "start_xy": [
    2603009.188027421,
    1184603.1654307663
   ],
   "end_xy": [
    2602962.1633097515,
    1184690.4663284684
   ]
  }
 },
 "window_minima": {
  "min_5m": {
   "gradient_pct": -1.54297746089469,
   "start_distance_m": 339.0,
   "end_distance_m": 344.0,
   "midpoint_distance_m": 341.5,
   "start_elevation_m": 812.2365785949211,
   "end_elevation_m": 812.1594297218763,
   "start_xy": [
    2602960.788354812,
    1184695.2735624386
   ],
   "end_xy": [
    2602959.414301701,
    1184700.0810539771
   ]
  },
  "min_10m": {
   "gradient_pct": 3.133290810743574,
   "start_distance_m": 334.0,
   "end_distance_m": 344.0,
   "midpoint_distance_m": 339.0,
   "start_elevation_m": 811.846100640802,
   "end_elevation_m": 812.1594297218763,
   "start_xy": [
    2602962.1633097515,
    1184690.4663284684
   ],
   "end_xy": [
    2602959.414301701,
    1184700.0810539771
   ]
  },
  "min_20m": {
   "gradient_pct": 9.141276392562077,
   "start_distance_m": 171.0,
   "end_distance_m": 191.0,
   "midpoint_distance_m": 181.0,
   "start_elevation_m": 786.7018846880262,
   "end_elevation_m": 788.5301399665386,
   "start_xy": [
    2603050.2845384097,
    1184556.379586815
   ],
   "end_xy": [
    2603035.145569087,
    1184569.4463116582
   ]
  },
  "min_25m": {
   "gradient_pct": 9.354428050037313,
   "start_distance_m": 40.0,
   "end_distance_m": 65.0,
   "midpoint_distance_m": 52.5,
   "start_elevation_m": 771.3223380282986,
   "end_elevation_m": 773.660945040808,
   "start_xy": [
    2603028.4551329194,
    1184454.3029151766
   ],
   "end_xy": [
    2603043.7440808443,
    1184473.4936085015
   ]
  },
  "min_50m": {
   "gradient_pct": 9.545710311147559,
   "start_distance_m": 29.0,
   "end_distance_m": 79.0,
   "midpoint_distance_m": 54.0,
   "start_elevation_m": 770.2685699499635,
   "end_elevation_m": 775.0414251055373,
   "start_xy": [
    2603026.233550543,
    1184443.6252479116
   ],
   "end_xy": [
    2603056.4868204575,
    1184479.1187131647
   ]
  },
  "min_100m": {
   "gradient_pct": 10.02454160687114,
   "start_distance_m": 0.0,
   "end_distance_m": 100.0,
   "midpoint_distance_m": 50.0,
   "start_elevation_m": 767.3825056788356,
   "end_elevation_m": 777.4070472857068,
   "start_xy": [
    2603036.1569376187,
    1184419.6232381267
   ],
   "end_xy": [
    2603071.9879202545,
    1184491.8553856357
   ]
  }
 },
 "diagnostic_window_maxima": {
  "max_2m": {
   "gradient_pct": 39.006834249011035,
   "start_distance_m": 324.0,
   "end_distance_m": 326.0,
   "midpoint_distance_m": 325.0,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 809.569636072435,
   "start_xy": [
    2602964.911675348,
    1184680.8514196728
   ],
   "end_xy": [
    2602964.362267198,
    1184682.7744771729
   ]
  },
  "max_3m": {
   "gradient_pct": 39.550742618507684,
   "start_distance_m": 324.0,
   "end_distance_m": 327.0,
   "midpoint_distance_m": 325.5,
   "start_elevation_m": 808.7894993874547,
   "end_elevation_m": 809.97602166601,
   "start_xy": [
    2602964.911675348,
    1184680.8514196728
   ],
   "end_xy": [
    2602964.087253335,
    1184683.735917424
   ]
  }
 },
 "diagnostic_note": "Windows <=3 m are at raster-noise scale (1-sigma raster noise alone is roughly +/-7 pp at 2 m and +/-5 pp at 3 m on a 1 m DTM). Diagnostic use only: never a headline or ranking value.",
 "quality_summary": {
  "review": [],
  "extent": [
   "may_start_earlier",
   "may_continue_beyond_end"
  ]
 },
 "provenance": {
  "analysis_version": "0.1.0",
  "sample_interval_m": 1.0,
  "interpolation": "bilinear",
  "smoothing": "none",
  "gradient_windows_m": [
   5.0,
   10.0,
   20.0,
   25.0,
   50.0,
   100.0
  ],
  "diagnostic_windows_m": [
   2.0,
   3.0
  ],
  "elevation_crs": "EPSG:2056",
  "elevation_resolution_m": 0.5,
  "elevation_tiles": [
   "data/cache/ch/swissalti3d_2025_2602-1184_0.5_2056_5728.tif",
   "data/cache/ch/swissalti3d_2025_2603-1184_0.5_2056_5728.tif"
  ],
  "calculated_at": "2026-09-11T06:43:32+00:00",
  "road_source": "OpenStreetMap (local PBF extract)",
  "road_attribution": "\u00a9 OpenStreetMap contributors, ODbL",
  "osm_pbf_path": "data/cache/pbf/switzerland-2026-09-10-batch.osm.pbf",
  "osm_snapshot": "",
  "run_id": "ch-run7-extent-260911",
  "elevation_provider": "swisstopo swissALTI3D",
  "elevation_licence": "swisstopo open government data (OGD): free use, attribution '\u00a9 swisstopo' \u2014 https://www.swisstopo.admin.ch/en/terms-and-conditions",
  "elevation_dataset": "swissALTI3D 0.5 m DTM (Federal Office of Topography swisstopo)",
  "elevation_tile_ids": [
   "2602-1184",
   "2603-1184"
  ],
  "route_base_cut_m": 91.2,
  "climb_origin": "discovered",
  "canopy_check": "unavailable \u2014 no surface model (DSM or point cloud) registered for this coverage",
  "license": "ODbL-1.0",
  "license_url": "https://howsteep.org/licensing"
 },
 "area": {
  "place": "Riggisberg",
  "county": "Bern/Berne",
  "source": "OpenStreetMap administrative boundaries (\u00a9 OpenStreetMap contributors, ODbL)"
 }
}