public void setOverwriteFiles(final boolean overwriteFiles) { this.controler.getConfig().controler().setOverwriteFileSetting( overwriteFiles ? OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles : OutputDirectoryHierarchy.OverwriteFileSetting.failIfDirectoryExists ); }
public static void main(String[] args) { if (args.length==0 || args.length>1) { throw new RuntimeException("No config.xml file provided. The config file needs to reference a network file and a facilities file.") ; } Config config = ConfigUtils.loadConfig(args[0]); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); AccessibilityConfigGroup accConfig = ConfigUtils.addOrGetModule(config, AccessibilityConfigGroup.class ) ; accConfig.setComputingAccessibilityForMode(Modes4Accessibility.freespeed, true); Scenario scenario = ScenarioUtils.loadScenario( config ) ; run(scenario); // The run method is extracted so that a test can operate on it. }
public Config prepareConfig(){ final URL url = ExamplesUtils.getTestScenarioURL("freight-chessboard-9x9"); final URL configURL = IOUtils.newUrl(url, "config.xml"); config = ConfigUtils.loadConfig(configURL ); config.controler().setOverwriteFileSetting( OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles ); config.global().setRandomSeed(4177); config.controler().setOutputDirectory("./output/"); return config; }
public static void main(String[] args) { Config config = ConfigUtils.loadConfig("../../matsim/src/test/resources/test/scenarios/berlin/config_multimodal.xml", new MultiModalConfigGroup()); config.controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles); Scenario scenario = ScenarioUtils.loadScenario(config); PrepareMultiModalScenario.run(scenario); Controler controler = new Controler(scenario); controler.addOverridingModule(new MultiModalModule()); controler.run(); }
/** * @param args the path to your config file */ public static void main(String[] args) { Config config; if (args.length==0 || args.length>1) { // --- create a config for the example scenario config = ConfigUtils.loadConfig("./examples/tutorial/example90TrafficLights/useSignalInput/withLanes/config.xml"); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); config.controler().setLastIteration(0); config.controler().setOutputDirectory("output/runSignalSystemsExample/"); } else { // --- create a config from the arguments you provided config = ConfigUtils.loadConfig(args[0]); } run(config, true); // The run method is extracted so that a test can operate on it. }
/** * Test method for {@link org.matsim.core.mobsim.qsim.qnetsimengine.RunConfigurableQNetworkFactoryExample#main(java.lang.String[])}. */ @SuppressWarnings("static-method") @Test public final void testMain() { try { Config config = ConfigUtils.createConfig() ; config.controler().setOverwriteFileSetting( OverwriteFileSetting.deleteDirectoryIfExists ); config.controler().setLastIteration(5); RunConfigurableQNetworkFactoryExample.run(config); } catch ( Exception ee ) { throw new RuntimeException("something went wrong") ; } }
controler.getConfig().controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.failIfDirectoryExists); controler.run();
public static void run(boolean startOtfvis) throws IOException { // --- load the configuration file Config config = ConfigUtils.loadConfig(INPUT_DIR + "config.xml"); config.controler().setLastIteration(0); config.controler().setOverwriteFileSetting(OverwriteFileSetting.overwriteExistingFiles); // --- create the scenario Scenario scenario = ScenarioUtils.loadScenario(config); // load the information about signals data (i.e. fill the SignalsData object) and add it to the scenario as scenario element scenario.addScenarioElement(SignalsData.ELEMENT_NAME, new SignalsDataLoader(config).loadSignalsData()); // --- create the controler Controler c = new Controler(scenario); // add the signals module to the simulation such that SignalsData is not only // contained in the scenario but also used in the simulation // c.addOverridingModule(new SignalsModule()); Signals.configure( c ); if (startOtfvis) { // add the module that start the otfvis visualization with signals c.addOverridingModule(new OTFVisWithSignalsLiveModule()); } // --- run the simulation c.run(); }
public static void run(boolean startOtfvis) { // --- load the configuration file Config config = ConfigUtils.loadConfig(INPUT_DIR + "config.xml"); config.controler().setLastIteration(0); config.controler().setOverwriteFileSetting(OverwriteFileSetting.overwriteExistingFiles); // --- create the scenario Scenario scenario = ScenarioUtils.loadScenario(config); // load the information about signals data (i.e. fill the SignalsData object) and add it to the scenario as scenario element scenario.addScenarioElement(SignalsData.ELEMENT_NAME, new SignalsDataLoader(config).loadSignalsData()); // --- create the controler Controler c = new Controler(scenario); // add the signals module to the simulation such that SignalsData is not only // contained in the scenario but also used in the simulation // c.addOverridingModule(new SignalsModule()); Signals.configure( c ) ; if (startOtfvis) { // add the module that start the otfvis visualization with signals c.addOverridingModule(new OTFVisWithSignalsLiveModule()); } // --- run the simulation c.run(); }
public static void main(String[] args) { final Config config = ConfigUtils.createConfig(); config.controler().setLastIteration(1); config.controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles); Controler controler = new Controler(ScenarioUtils.createScenario(config)); controler.addOverridingModule(new AbstractModule() { @Override public void install() { bindCarTravelDisutilityFactory().to(InterestingTravelDisutilityFactory.class); bindNetworkTravelTime().to(InterestingTravelTime.class); addControlerListenerBinding().to(InterestingControlerListener.class); } }); controler.run(); }
config.controler().setOverwriteFileSetting( OverwriteFileSetting.deleteDirectoryIfExists );
public static void main(String[] args) throws IOException { Config config = ConfigUtils.loadConfig(configFile, new NoiseConfigGroup()); Scenario scenario = ScenarioUtils.loadScenario(config); Controler controler = new Controler(scenario); controler.addOverridingModule(new NoiseModule(scenario)); controler.getConfig().controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.deleteDirectoryIfExists); controler.run(); // optionally process the output data String workingDirectory = controler.getConfig().controler().getOutputDirectory() + "/ITERS/it." + controler.getConfig().controler().getLastIteration() + "/immissions/"; String receiverPointsFile = controler.getConfig().controler().getOutputDirectory() + "/receiverPoints/receiverPoints.csv"; NoiseConfigGroup noiseParameters = ConfigUtils.addOrGetModule(config, NoiseConfigGroup.class ) ; ProcessNoiseImmissions processNoiseImmissions = new ProcessNoiseImmissions(workingDirectory, receiverPointsFile, noiseParameters.getReceiverPointGap()); processNoiseImmissions.run(); }
@Test public void testOverrideAgentFactory() { Config config = ConfigUtils.createConfig(); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); config.controler().setLastIteration(0); Scenario scenario = ScenarioUtils.loadScenario(config); Person person = scenario.getPopulation().getFactory().createPerson(Id.createPersonId("person")); person.addPlan(scenario.getPopulation().getFactory().createPlan()); scenario.getPopulation().addPerson(person); AtomicLong value = new AtomicLong(0); Controler controler = new Controler(scenario); controler.addOverridingQSimModule(new TestQSimModule(value)); controler.run(); Assert.assertTrue(value.get() > 0); }
public void run(Config config, boolean considerMotorizedInteraction) { config.global().setNumberOfThreads(1); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); config.plansCalcRoute().setRoutingRandomness(3.); Scenario scenario = ScenarioUtils.loadScenario(config); VehicleType car = VehicleUtils.getFactory().createVehicleType(Id.create(TransportMode.car, VehicleType.class)); scenario.getVehicles().addVehicleType(car); VehicleType bicycle = VehicleUtils.getFactory().createVehicleType(Id.create("bicycle", VehicleType.class)); bicycle.setMaximumVelocity(20.0/3.6); bicycle.setPcuEquivalents(0.25); scenario.getVehicles().addVehicleType(bicycle); scenario.getConfig().qsim().setVehiclesSource(QSimConfigGroup.VehiclesSource.modeVehicleTypesFromVehiclesData); Controler controler = new Controler(scenario); BicycleModule bicycleModule = new BicycleModule(); if (considerMotorizedInteraction) { bicycleModule.setConsiderMotorizedInteraction(true); } controler.addOverridingModule(bicycleModule); controler.run(); }
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(); }
@Test public void testAddEngine() { Config config = ConfigUtils.createConfig(); config.controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); config.controler().setLastIteration(0); Scenario scenario = ScenarioUtils.loadScenario(config); TestEngine engine = new TestEngine(); Controler controler = new Controler(scenario); controler.addOverridingQSimModule(new AbstractQSimModule() { @Override protected void configureQSim() { addQSimComponentBinding("MyEngine").toInstance(engine); } }); controler.configureQSimComponents(components -> { components.addNamedComponent("MyEngine"); }); controler.run(); Assert.assertTrue(engine.called); }
private void createAndRunControler(Config config) { final Controler controler = new Controler(ScenarioUtils.loadScenario(config)); controler.addOverridingModule(new AbstractModule() { @Override public void install() { bind(Mobsim.class).to(DummyMobsim2.class); } }); controler.getConfig().controler().setCreateGraphs(false); controler.getConfig().controler().setDumpDataAtEnd(false); controler.getConfig().controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles); controler.getConfig().controler().setWriteEventsInterval(0); config.controler().setWritePlansInterval(0); controler.run(); }
public static void main(String[] args) { Config config = ConfigUtils.createConfig(); ConfigUtils.loadConfig(config, args[0]); final Controler controler = new Controler(ScenarioUtils.loadScenario(config)); controler.getConfig().controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles); final WaitTimeStuckCalculator waitTimeCalculator = new WaitTimeStuckCalculator(controler.getScenario().getPopulation(), controler.getScenario().getTransitSchedule(), controler.getConfig().travelTimeCalculator().getTraveltimeBinSize(), (int) (controler.getConfig().qsim().getEndTime()-controler.getConfig().qsim().getStartTime())); controler.getEvents().addHandler(waitTimeCalculator); final StopStopTimeCalculatorImpl stopStopTimeCalculator = new StopStopTimeCalculatorImpl(controler.getScenario().getTransitSchedule(), controler.getConfig().travelTimeCalculator().getTraveltimeBinSize(), (int) (controler.getConfig().qsim().getEndTime()-controler.getConfig().qsim().getStartTime())); controler.getEvents().addHandler(stopStopTimeCalculator); controler.addOverridingModule(new AbstractModule() { @Override public void install() { bind(TransitRouter.class).toProvider(new TransitRouterEventsWSFactory(controler.getScenario(), waitTimeCalculator.get(), stopStopTimeCalculator.get())); } }); controler.run(); }
controler.getConfig().controler().setOverwriteFileSetting(OutputDirectoryHierarchy.OverwriteFileSetting.overwriteExistingFiles); controler.getConfig().controler().setCreateGraphs(false); controler.getConfig().controler().setWriteEventsInterval(0);
public Fixture() { s.getConfig().controler().setOverwriteFileSetting(OverwriteFileSetting.deleteDirectoryIfExists); Network net = this.s.getNetwork(); NetworkFactory nf = net.getFactory(); Node n1 = nf.createNode(Id.create("1", Node.class), new Coord(0, 0)); Node n2 = nf.createNode(Id.create("2", Node.class), new Coord(0, 1000)); Node n3 = nf.createNode(Id.create("3", Node.class), new Coord(0, 2000)); Node n4 = nf.createNode(Id.create("4", Node.class), new Coord(0, 3000)); net.addNode(n1); net.addNode(n2); net.addNode(n3); net.addNode(n4); Link l1 = nf.createLink(Id.create("1", Link.class), n1, n2); Link l2 = nf.createLink(Id.create("2", Link.class), n2, n3); Link l3 = nf.createLink(Id.create("3", Link.class), n3, n4); l1.setFreespeed(10.0); l2.setFreespeed(10.0); l3.setFreespeed(10.0); l1.setLength(1000.0); l2.setLength(1000.0); l3.setLength(1000.0); net.addLink(l1); net.addLink(l2); net.addLink(l3); } }