Comments (2)
I don't know about an established way but there's ScheduleTools.mergeSchedules which, together with ScheduleTools.createVehicles(), could be used to achieve this. Doing this before running PTMapper is the way to go. Combining xml files should work as well I think.
from matsim-code-examples.
Great, thanks for the hint! ScheduleTools does the job well:
static final String COORDINATE_SYTEM = "epsg:XXXXX";
static final List<String> GTFS_DIRS = Arrays.asList("a", "b", "c");
static final String TRANSIT_SCHEDULE_NOT_YET_MAPPED_TO_ROADS = "transit_schedule_not_yet_mapped_to_roads.xml";
static final String TRANSIT_VEHICLES = "transit_vehicles.xml";
public static void prepareTransitSchedules() {
TransitSchedule transitSchedule = prepareTransitSchedule(GTFS_DIRS.get(0));
for(String gtfsDir : GTFS_DIRS.subList(1, GTFS_DIRS.size())) {
TransitSchedule additionalSchedule = prepareTransitSchedule(gtfsDir);
ScheduleTools.mergeSchedules(transitSchedule, additionalSchedule);
}
Vehicles transitVehicles = VehicleUtils.createVehiclesContainer();
ScheduleTools.createVehicles(transitSchedule, transitVehicles);
ScheduleTools.writeTransitSchedule(transitSchedule, TRANSIT_SCHEDULE_NOT_YET_MAPPED_TO_ROADS);
ScheduleTools.writeVehicles(transitVehicles, TRANSIT_VEHICLES);
}
private static TransitSchedule prepareTransitSchedule(String gtfsDir) {
String param = GtfsConverter.DAY_WITH_MOST_TRIPS;
GtfsFeed gtfsFeed = new GtfsFeedImpl(gtfsDir);
GtfsConverter converter = new GtfsConverter(gtfsFeed);
converter.convert(param, COORDINATE_SYTEM);
return converter.getSchedule();
}
from matsim-code-examples.
Related Issues (20)
- Strange long walking behaviour in multimodal scenario! HOT 8
- MATSIM Beginner user HOT 3
- Snapping distance /tolerance to edge from origin/destination location HOT 11
- Route through resticted/private roads HOT 3
- Problem with Car availability attribute
- Score function calculation HOT 3
- The steps to apply DVRP extensions
- Pedestrian modeling and simulation HOT 1
- Integrate traffic volumes after 24 hours
- Creating synthetic population on MATSim HOT 7
- Unreasonably high travel speeds in simulation results HOT 8
- Unexpected Agent Behavior in MATSim Simulation Across Iterations HOT 4
- Any references for why we chose values for maxTravelTimeAlpha and Beta in DRT?
- Any previouos studies about DRT sensitiveity analysis?
- Vulkaneifel scenario keep failing to compile. HOT 5
- How to fix the insuffiencent memory HOT 4
- Estimate the total travel time for all the vehicles HOT 3
- OTFVis in windows
- Different roadPricing for cars and SAVs HOT 2
- Query regarding the 1st Homework Task HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from matsim-code-examples.