private void loadActivityFacilities() { if ((this.config.facilities() != null) && (this.config.facilities().getInputFile() != null)) { URL facilitiesFileName = this.config.facilities().getInputFileURL(config.getContext()); log.info("loading facilities from " + facilitiesFileName); final String inputCRS = config.facilities().getInputCRS(); final String internalCRS = config.global().getCoordinateSystem(); MatsimFacilitiesReader reader = new MatsimFacilitiesReader(inputCRS, internalCRS, this.scenario.getActivityFacilities()); reader.putAttributeConverters(attributeConverters); reader.parse(facilitiesFileName); log.info("loaded " + this.scenario.getActivityFacilities().getFacilities().size() + " facilities from " + facilitiesFileName); } else { log.info("no facilities file set in config, therefore not loading any facilities. This is not a problem except if you are using facilities"); } if ((this.config.facilities() != null) && (this.config.facilities().getInputFacilitiesAttributesFile() != null)) { URL facilitiesAttributesURL = ConfigGroup.getInputFileURL(this.config.getContext(), this.config.facilities().getInputFacilitiesAttributesFile()); log.info("loading facility attributes from " + facilitiesAttributesURL); ObjectAttributesXmlReader reader = new ObjectAttributesXmlReader(this.scenario.getActivityFacilities().getFacilityAttributes()); reader.putAttributeConverters( attributeConverters ); reader.parse(facilitiesAttributesURL); } else { log.info("no facility-attributes file set in config, not loading any facility attributes"); } }
this.modules.put(ParallelEventHandlingConfigGroup.GROUP_NAME, this.parallelEventHandling ); this.facilities = new FacilitiesConfigGroup(); this.modules.put(FacilitiesConfigGroup.GROUP_NAME, this.facilities);
public FacilitiesFromPopulation(final ActivityFacilities facilities, final FacilitiesConfigGroup facilityConfigGroup) { this(facilities); this.idPrefix = facilityConfigGroup.getIdPrefix(); this.removeLinksAndCoordinates = facilityConfigGroup.isRemovingLinksAndCoordinates(); this.addEmptyActivityOptions = facilityConfigGroup.isAddEmptyActivityOption(); if ( facilityConfigGroup.getFacilitiesSource()== FacilitiesConfigGroup.FacilitiesSource.onePerActivityLinkInPlansFile ) { oneFacilityPerLink = true; } else if ( facilityConfigGroup.getFacilitiesSource()== FacilitiesConfigGroup.FacilitiesSource.onePerActivityLocationInPlansFile ) { oneFacilityPerLink = false; } else { throw new RuntimeException( Gbl.INVALID ); } }
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.counts().setInputFile(getAbsolutePath(prefix, config.counts().getCountsFileName())); config.households().setInputFile(getAbsolutePath(prefix, config.households().getInputFile()));
public static final void setUpScenarioConfig(final Config config) { config.network().setInputFile(studyfolder + "network.xml"); config.facilities().setInputFile(studyfolder + "facilities.xml"); }
config.facilities().setInputFile( IOUtils.newUrl(ExamplesUtils.getTestScenarioURL("chessboard"), "facilities.xml").toString() ); config.facilities().setFacilitiesSource(FacilitiesConfigGroup.FacilitiesSource.fromFile); config.facilities().setInputCRS(TransformationFactory.CH1903_LV03_GT );
@Test public void testParserWriter1() { Config config = ConfigUtils.createConfig(); TriangleScenario.setUpScenarioConfig(config); Scenario scenario = ScenarioUtils.createScenario(config); ActivityFacilities facilities = scenario.getActivityFacilities(); new MatsimFacilitiesReader(scenario).readFile(config.facilities().getInputFile()); String outputFilename = this.utils.getOutputDirectory() + "output_facilities.xml"; TriangleScenario.writeFacilities(facilities, outputFilename); long checksum_ref = CRCChecksum.getCRCFromFile(config.facilities().getInputFile()); long checksum_run = CRCChecksum.getCRCFromFile(outputFilename); Assert.assertEquals(checksum_ref, checksum_run); }
case none: case setInScenario: config.facilities().setInputFile(null); // remove facility file if exists case onePerActivityLocationInPlansFile: config.facilities().setInputFile(null); // remove facility file if exists config.facilities().setInputFile(null); // remove facility file if exists config.facilities().setFacilitiesSource(facilitiesSource);
switch(this.facilitiesConfigGroup.getFacilitiesSource()){ case none: facilitiesFromPopulation.assignOpeningTimes(facilitiesConfigGroup.isAssigningOpeningTime(), scenario.getConfig().planCalcScore()); facilitiesFromPopulation.run(population); throw new RuntimeException("Facilities source '"+this.facilitiesConfigGroup.getFacilitiesSource()+"' is not implemented.");
@Test public void testSubTourMutationFacilitiesBased() { Config config = utils.loadConfig(CONFIGFILE); MutableScenario scenario = (MutableScenario) ScenarioUtils.createScenario(config); ActivityFacilitiesImpl facilities = (ActivityFacilitiesImpl) scenario.getActivityFacilities(); new MatsimFacilitiesReader(scenario).parse(config.facilities().getInputFileURL(config.getContext())); this.testSubTourMutationToCar(facilities); this.testSubTourMutationToPt(facilities); this.testUnknownModeDoesntMutate(facilities); }
/** * Creates a new reader for MATSim facilities files. * Converts the coordinates to the target CRS, given the CRS information in the container attributes, or, if absent, * from the config. * * @param targetCRS the CRS the coordinates should be expressed in * @param scenario The scenario containing the Facilities-object to store the facilities in. */ public MatsimFacilitiesReader( final String targetCRS, final Scenario scenario) { this(scenario.getConfig().facilities().getInputCRS(), targetCRS, scenario.getActivityFacilities()); }
@Test public void testLoadScenario_loadFacilitiesAttributes() { Config config = ConfigUtils.loadConfig(IOUtils.newUrl(this.util.classInputResourcePath(), "facilityAttributesConfig.xml")); config.facilities().addParam("inputFacilityAttributesFile", "facilityAttributes.xml"); Scenario scenario = ScenarioUtils.loadScenario(config); Assert.assertEquals("world", scenario.getActivityFacilities().getFacilityAttributes().getAttribute("1", "hello")); }
config.facilities().setInputFile("/Users/dominik/Workspace/nairobi/data/land_use/Nairobi_LU_2010/facilities.xml"); String runId = "ke_nairobi_landuse_hexagons_" + tileSize_m; config.controler().setOutputDirectory("/Users/dominik/Workspace/nairobi/data/nairobi/output/" + runId + "_3/");
public static void run(Scenario scenario) { DestinationChoiceContext dcContext = new DestinationChoiceContext(scenario); dcContext.init(); DCScoringFunctionFactory dcScoringFunctionFactory = new DCScoringFunctionFactory(scenario, dcContext); DestinationChoiceConfigGroup dccg = ConfigUtils.addOrGetModule( dcContext.getScenario().getConfig(), DestinationChoiceConfigGroup.class); if (dccg.getPrefsFile() == null && !scenario.getConfig().facilities().getInputFile().equals("null")) { dcScoringFunctionFactory.setUsingConfigParamsForScoring(false); } else { dcScoringFunctionFactory.setUsingConfigParamsForScoring(true); } Controler controler = new Controler(scenario); controler.addControlerListener(new DestinationChoiceInitializer(dcContext)); if (dccg.getRestraintFcnExp() > 0.0 && dccg.getRestraintFcnFactor() > 0.0) { controler.addControlerListener(new FacilitiesLoadCalculator(dcContext.getFacilityPenalties())); } controler.setScoringFunctionFactory(dcScoringFunctionFactory); controler.run(); }
private void dumpFacilities() { // dump facilities try { final String inputCRS = config.facilities().getInputCRS(); final String internalCRS = config.global().getCoordinateSystem(); new FacilitiesWriter(activityFacilities).write(controlerIO.getOutputFilename(Controler.OUTPUT_PREFIX + Controler.FILENAME_FACILITIES)); } catch ( Exception ee ) { log.error("Exception writing facilities.", ee); } }
config.controler().setWriteEventsInterval(0); config.controler().setWritePlansInterval(0); config.facilities().setInputFile("dummy/non-existing/network.xml");
config.facilities().setInputFile(utils.getOutputDirectory()+"/facilities.xml"); config.global().setCoordinateSystem( TARGET_CRS );