private void loadNetwork() { Config config = ConfigUtils.createConfig(); config.network().setInputFile(networkFile); this.network = ScenarioUtils.loadScenario(config).getNetwork(); }
public static final void setUpScenarioConfig(final Config config) { config.network().setInputFile(studyfolder + "network.xml"); config.facilities().setInputFile(studyfolder + "facilities.xml"); }
public static void main(String[] args) { Config config; if (args.length == 1) { LOG.info("A user-specified config.xml file was provided. Using it..."); config = ConfigUtils.loadConfig(args[0], new BicycleConfigGroup()); fillConfigWithBicycleStandardValues(config); } else if (args.length == 0) { LOG.info("No config.xml file was provided. Using 'standard' example files given in this contrib's resources folder."); // Setting the context like this works when the data is stored under "/matsim/contribs/bicycle/src/main/resources/bicycle_example" config = ConfigUtils.createConfig("bicycle_example/"); config.addModule(new BicycleConfigGroup()); fillConfigWithBicycleStandardValues(config); config.network().setInputFile("network_lane.xml"); // Modify this config.plans().setInputFile("population_1200.xml"); } else { throw new RuntimeException("More than one argument was provided. There is no procedure for this situation. Thus aborting!" + " Provide either (1) only a suitable config file or (2) no argument at all to run example with given example of resources folder."); } config.controler().setLastIteration(100); // Modify if motorized interaction is used boolean considerMotorizedInteraction = false; new RunBicycleExample().run(config, considerMotorizedInteraction); }
public static void calculateMissingCapacitiesForLanes20(String networkInputFilename, String lanes20InputFilename, String lanes20OutputFilename){ Config config = ConfigUtils.createConfig(); config.network().setInputFile(networkInputFilename); config.qsim().setUseLanes(true); config.network().setLaneDefinitionsFile(lanes20InputFilename); Scenario scenario = ScenarioUtils.loadScenario(config); Network network = scenario.getNetwork(); Lanes lanes = scenario.getLanes(); for (LanesToLinkAssignment l2l : lanes.getLanesToLinkAssignments().values()){ Link link = network.getLinks().get(l2l.getLinkId()); for (Lane lane : l2l.getLanes().values()){ if (lane.getToLaneIds() == null || lane.getToLaneIds().isEmpty()){ calculateAndSetCapacity(lane, true, link, network); } else { calculateAndSetCapacity(lane, false, link, network); } } } LanesWriter writerDelegate = new LanesWriter(lanes); writerDelegate.write(lanes20OutputFilename); }
@Test public final void testHttpFromSvn() { Config config = ConfigUtils.createConfig(); System.out.println(utils.getInputDirectory() + "../../"); config.network().setInputFile("http://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/atlantis/minibus/input/network.xml"); // See whether the file can be downloaded and read Scenario scenario = ScenarioUtils.loadScenario(config); // Check whether all nodes and links were read Network network = scenario.getNetwork(); // 3 pt nodes and 4 x 4 car nodes Assert.assertEquals(3 + 4 * 4, network.getNodes().size()); // 6 pt links and 3 links * 2 directions * 4 times in parallel * 2 (horizontally and vertically) Assert.assertEquals(6 + 3 * 2 * 4 * 2, network.getLinks().size()); }
@Test public final void testHttpsFromSvn() { Config config = ConfigUtils.createConfig(); System.out.println(utils.getInputDirectory() + "../../"); config.network().setInputFile("https://svn.vsp.tu-berlin.de/repos/public-svn/matsim/scenarios/countries/atlantis/minibus/input/network.xml"); // See whether the file can be downloaded and read Scenario scenario = ScenarioUtils.loadScenario(config); // Check whether all nodes and links were read Network network = scenario.getNetwork(); // 3 pt nodes and 4 x 4 car nodes Assert.assertEquals(3 + 4 * 4, network.getNodes().size()); // 6 pt links and 3 links * 2 directions * 4 times in parallel * 2 (horizontally and vertically) Assert.assertEquals(6 + 3 * 2 * 4 * 2, network.getLinks().size()); }
/** * Test method for {@link org.matsim.core.network.NetworkUtils#isMultimodal(org.matsim.api.core.v01.network.Network)}. */ @Test public final void testIsMultimodal() { Config config = utils.createConfigWithInputResourcePathAsContext(); config.network().setInputFile("network.xml" ); Scenario scenario = ScenarioUtils.loadScenario(config) ; Network network = scenario.getNetwork() ; Assert.assertTrue( NetworkUtils.isMultimodal( network ) ); }
private void evaluate() throws MalformedURLException { Config config = utils.loadConfig(IOUtils.newUrl(utils.classInputResourcePath(), "config.xml")); config.network().setInputFile(IOUtils.newUrl(ExamplesUtils.getTestScenarioURL("berlin"), "network.xml.gz").toString()); config.plans().setInputFile(IOUtils.newUrl(utils.classInputResourcePath(), "plans.xml.gz").toString()); Scenario referenceScenario = ScenarioUtils.loadScenario(config); config.plans().setInputFile(new File(utils.getOutputDirectory() + "ITERS/it.1/1.plans.xml.gz").toURI().toURL().toString()); Scenario scenario = ScenarioUtils.loadScenario(config); final boolean isEqual = PopulationUtils.equalPopulation(referenceScenario.getPopulation(), scenario.getPopulation()); if ( !isEqual ) { new PopulationWriter(referenceScenario.getPopulation(), scenario.getNetwork()).write(utils.getOutputDirectory() + "/reference_population.xml.gz"); new PopulationWriter(scenario.getPopulation(), scenario.getNetwork()).write(utils.getOutputDirectory() + "/output_population.xml.gz"); } Assert.assertTrue("different plans files.", isEqual); }
config.network().setInputFile(getAbsolutePath(prefix, config.network().getInputFile())); config.plans().setInputFile(getAbsolutePath(prefix, config.plans().getInputFile())); config.facilities().setInputFile(getAbsolutePath(prefix, config.facilities().getInputFile()));
config.network().setInputFile(runDirectory + runId + ".output_network.xml.gz"); config.plans().setInputFile(runDirectory + runId + ".output_plans.xml.gz"); config.controler().setOutputDirectory(runDirectory);
@Test public void testReset_CorrectlyExecuted() throws IOException { Config config = this.util.createConfig(ExamplesUtils.getTestScenarioURL("triangle")); config.network().setInputFile("network.xml"); // network file which is used by the counts file
config.network().setInputFile(NETWORK_FILE); config.plans().setInputFile(PLANS_FILE_TESTINPUT); new ConfigWriter(config).write(CONFIG_FILE);
private Scenario loadScenario() { Config config = utils.loadConfig(IOUtils.newUrl(utils.classInputResourcePath(), "config.xml")); config.network().setInputFile(IOUtils.newUrl(ExamplesUtils.getTestScenarioURL("berlin"), "network.xml.gz").toString()); config.plans().setInputFile(IOUtils.newUrl(ExamplesUtils.getTestScenarioURL("berlin"), "plans_hwh_1pct.xml.gz").toString()); config.qsim().setTimeStepSize(10.0); config.qsim().setStuckTime(100.0); config.qsim().setRemoveStuckVehicles(true); config.controler().setEventsFileFormats(EnumSet.of(EventsFileFormat.xml)); config.controler().setLastIteration(1); /* linear interpolate the into time bins aggregated travel time data to avoid artifacts at the boundaries of time bins: * e.g. a first time bin with aggregated travel time of 90 seconds and a second time bin with 45 seconds; time bin size 60; * i.e. consolidateData-method in TravelTimeCalculator will accept this difference; imagine an requested route starting 2 * seconds before the end of the first time bin, another route starts 2 seconds after the start of the second time bin; then * the second one will arrive 41 seconds earlier than the first. Depending on the algorithm, some routers will detect this, * some not (see MATSim-730), which is why we decided to test the linear interpolated travel time data here (which does not * contain this artifacts). theresa, sep'17 * */ config.travelTimeCalculator().setTravelTimeGetterType("linearinterpolation"); /* * The input plans file is not sorted. After switching from TreeMap to LinkedHashMap * to store the persons in the population, we have to sort the population manually. * cdobler, oct'11 */ Scenario scenario = ScenarioUtils.loadScenario(config); PopulationUtils.sortPersons(scenario.getPopulation()); return scenario; }
config.network().setInputFile(NETWORK_FILE); config.plans().setInputFile(PLANS_FILE_TESTINPUT); new ConfigWriter(config).write(CONFIG_FILE);
public static void run(String netFile, boolean otfvis) { OTFVisConfigGroup otfvisConfig = new OTFVisConfigGroup(); otfvisConfig.setColoringScheme(ColoringScheme.byId); otfvisConfig.setDrawNonMovingItems(true); Config config = ConfigUtils.createConfig(otfvisConfig); config.qsim().setSimStarttimeInterpretation(StarttimeInterpretation.onlyUseStarttime); config.qsim().setSnapshotStyle(SnapshotStyle.queue); config.network().setInputFile(netFile); config.controler().setOutputDirectory("./test/output/"); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); config.controler().setLastIteration(0); config.addConfigConsistencyChecker(new DynQSimConfigConsistencyChecker()); config.checkConsistency(); Scenario scenario = ScenarioUtils.loadScenario(config); Controler controler = new Controler(scenario); controler.addOverridingQSimModule(new DynQSimModule(RandomDynAgentSource.class)); controler.configureQSimComponents(DynQSimModule::configureComponents); if (otfvis) { controler.addOverridingModule(new OTFVisLiveModule()); } controler.run(); }
config.network().setInputFile( networkFile );
config.controler().setWriteEventsInterval(0); config.controler().setWritePlansInterval(0); config.network().setInputFile("dummy/non-existing/network.xml");
config.controler().setFirstIteration(0); config.controler().setLastIteration(2); config.network().setInputFile(NETWORK_FILENAME); config.plans().setInputFile(PLANS_FILENAME);
@Test public void testFilterAnalyzedModes() throws IOException { Config config = util.createConfig(ExamplesUtils.getTestScenarioURL("triangle")); config.network().setInputFile("network.xml"); // network file which is used by the counts file
config.network().setInputFile( netFile );