Skip to content

Commit e6872db

Browse files
authored
Merge pull request #944 from cal-itp/more-conveyal-export
Scripts and process for updating Conveyal
2 parents f316c4c + 3c2edcf commit e6872db

File tree

8 files changed

+197
-2531
lines changed

8 files changed

+197
-2531
lines changed

conveyal_update/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
stage_conveyal_update:
2+
python evaluate_feeds.py
3+
python match_feeds_regions.py
4+
python download_data.py

conveyal_update/README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Updating GTFS/Network Bundles in Conveyal Analysis
2+
3+
## General Notes
4+
5+
* Conveyal is set up to ingest individual GTFS feeds (zipped feeds consisting of textfiles), while our warehouse extracts and transforms these. Potential approaches are:
6+
* synthesize something that looks like a GTFS feed from our warehouse data (not attempted here)
7+
* use our warehouse as a guide, but download and supply the raw individual feeds from when we archived them in GCS (this approach)
8+
9+
## Scripts
10+
11+
* Set target date in `conveyal_vars.py`. Region boundaries are also set here, but these should remain static unless the decision is made to use entirely different regions in Conveyal. Target date should be a mid-week day.
12+
* `evaluate_feeds.py` includes functions to check to see which feeds have service defined on the target date, and show feeds without any apparent service, including if that service is apparently captured in another feed. This helps check for potential coverage gaps, likely due to GTFS feed expirations and/or the [publishing future service issue](https://github.com/MobilityData/GTFS_Schedule_Best-Practices/issues/48(https://github.com/MobilityData/GTFS_Schedule_Best-Practices/issues/48). You may have to shift the target date around to find the best overall coverage, and/or manually edit important but missing feeds to define service if reasonable.
13+
* `match_feeds_regions.py` matches feeds to Conveyal regions, based on if the feed contains _any_ stops within each region.
14+
* `download_data.py` downloads and zips original GTFS feeds, and additionally generates a shell script that can be used to download, crop, and filter OSM data for each region using Osmosis (not currently able to do so via hub, use other platform).
15+
16+
## Workflow
17+
18+
* `make stage_conveyal_update` to run all scripts
19+
* using generated `crop_filter_osm.sh` or other means, [update Conveyal network bundle](https://docs.conveyal.com/prepare-inputs#creating-a-network-bundle) for each region with cropped and filtered OSM data and feeds.

0 commit comments

Comments
 (0)