@Override public void notifyIterationEnds(IterationEndsEvent event) { iterationNumber=event.getIteration(); }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (this.getWriteGexfStatsInterval > 0) { this.addValuesToGexf(event.getIteration(), this.globalPaxHandler); if ((event.getIteration() % this.getWriteGexfStatsInterval == 0) ) { this.write(this.outputFilename); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (this.getWriteGexfStatsInterval > 0) { this.addValuesToGexf(event.getIteration(), this.eventsHandler); if ((event.getIteration() % this.getWriteGexfStatsInterval == 0) ) { this.write(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), GexfPOperatorCount.FILENAME)); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (this.getWriteGexfStatsInterval > 0) { this.addValuesToGexf(event.getIteration(), this.eventsHandler); if ((event.getIteration() % this.getWriteGexfStatsInterval == 0) ) { this.write(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), GexfPPaxCount.FILENAME)); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (this.getWriteGexfStatsInterval > 0) { this.addValuesToGexf(event.getIteration()); if ((event.getIteration() % this.getWriteGexfStatsInterval == 0) ) { this.write(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), GexfPStatLight.FILENAME)); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { travelDistanceStats.addIteration(event.getIteration(), experiencedPlansService.getExperiencedPlans()); }
@Override public void notifyIterationEnds(final IterationEndsEvent event) { this.histogram.write(controlerIO.getIterationFilename(event.getIteration(), "courtesyHistogram.txt")); if (this.outputGraph) { for ( String type : histogram.getDataFrames().keySet() ) { writeGraphic( this.histogram, type, controlerIO.getIterationFilename(event.getIteration(), "courtesyHistogram_"+type+".png")); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (this.getWriteGexfStatsInterval > 0) { this.addValuesToGexf(event.getIteration(), this.globalPaxHandler, this.operatorHandler); if ((event.getIteration() % this.getWriteGexfStatsInterval == 0) ) { if (writeOperatorInDetail) { this.write(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), "pStat_detail.gexf.gz")); } else { this.write(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), GexfPStat.FILENAME)); } } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { MatsimServices controler = event.getServices(); ActivityFacilities facilities = controler.getScenario().getActivityFacilities(); if (event.getIteration() % 2 == 0) { printStatistics(facilities, event.getServices().getControlerIO().getIterationPath(event.getIteration()), event.getIteration(), this.eventsToFacilityLoad.getFacilityPenalties()); } }
@Override public void notifyIterationEnds(final IterationEndsEvent event) { this.histogram.write(controlerIO.getIterationFilename(event.getIteration(), "legHistogram.txt")); this.printStats(); if (controlerConfigGroup.isCreateGraphs()) { LegHistogramChart.writeGraphic(this.histogram, controlerIO.getIterationFilename(event.getIteration(), "legHistogram_all.png")); for (String legMode : this.histogram.getLegModes()) { LegHistogramChart.writeGraphic(this.histogram, controlerIO.getIterationFilename(event.getIteration(), "legHistogram_" + legMode + ".png"), legMode); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { // reset for (DistributionClass distributionClass : classes) { for (DistanceBin distanceBin : distributionClass.distributionBins) { distanceBin.count = 0; } } List<Plan> plans = new ArrayList<Plan>(); for (Person person : this.population.getPersons().values()) plans.add(person.getSelectedPlan()); this.analyzePlans(plans); for (DistributionClass distributionClass : classes) { writeDistanceDistributionClass(distributionClass, event.getIteration(), event.getServices().getControlerIO()); } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { if (event.getIteration() != scenario.getConfig().controler().getLastIteration()) return; try { delegate.writeSimulationResultsToTabSeparated(scenario.getConfig().controler().getOutputDirectory(),"output_"); } catch (IOException e) { log.error("Writing of traveldiaries failed."); e.printStackTrace(); } } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { // moved this to iteration end since I also want to analyze population scores. kai, mar'14 int iteration = event.getIteration() ; this.calcLegTimes.writeStats(event.getServices().getControlerIO().getIterationFilename(iteration, "stats_")); // trips are from "true" activity to "true" activity. legs may also go // from/to ptInteraction activity. This, in my opinion "legs" is the correct (matsim) term // kai, jul'11 }
@Override public void notifyIterationEnds(final IterationEndsEvent event) { if (this.writeAnalysisFile) { String analysisFilepath = null; if (isActiveInThisIteration(event.getIteration(), scenario.getConfig())) { analysisFilepath = controlerIO.getIterationFilename(event.getIteration(), FLOWANALYSIS_FILENAME); } this.calibrator.setFlowAnalysisFile(analysisFilepath); } this.calibrator.afterNetworkLoading(this.simResults); // write some output String filename = controlerIO.getIterationFilename(event.getIteration(), LINKOFFSET_FILENAME); try { new CadytsCostOffsetsXMLFileIO<>(new LinkLookUp(scenario), Link.class) .write(filename, this.calibrator.getLinkCostOffsets()); } catch (IOException e) { log.error("Could not write link cost offsets!", e); } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { int iteration = event.getIteration(); if (useVolumesOfIteration(iteration, controlerConfigGroup.getFirstIteration())) { this.iterationsUsed++; linkStats.addData(volumes, travelTime.get(TransportMode.car)); } if (createLinkStatsInIteration(iteration)) { linkStats.writeFile(this.controlerIO.getIterationFilename(iteration, Controler.FILENAME_LINKSTATS)); this.doReset = true; } }
private static void prepareFreightOutputDataAndStats(Scenario scenario, EventsManager eventsManager, MatsimServices controler, final Carriers carriers) { final LegHistogram freightOnly = new LegHistogram(900); freightOnly.setPopulation(scenario.getPopulation()); freightOnly.setInclPop(false); final LegHistogram withoutFreight = new LegHistogram(900); withoutFreight.setPopulation(scenario.getPopulation()); CarrierScoreStats scores = new CarrierScoreStats(carriers, "output/carrier_scores", true); eventsManager.addHandler(withoutFreight); eventsManager.addHandler(freightOnly); controler.addControlerListener(scores); controler.addControlerListener((IterationEndsListener) event -> { //write plans String dir = event.getServices().getControlerIO().getIterationPath(event.getIteration()); new CarrierPlanXmlWriterV2(carriers).write(dir + "/" + event.getIteration() + ".carrierPlans.xml"); //write stats freightOnly.writeGraphic(dir + "/" + event.getIteration() + ".legHistogram_freight.png"); freightOnly.reset(event.getIteration()); withoutFreight.writeGraphic(dir + "/" + event.getIteration() + ".legHistogram_withoutFreight.png"); withoutFreight.reset(event.getIteration()); }); }
@Override public void notifyIterationEnds(final IterationEndsEvent event) { if (cadytsConfig.isWriteAnalysisFile()) { String analysisFilepath = controlerIO.getIterationFilename(event.getIteration(), FLOWANALYSIS_FILENAME); this.calibrator.setFlowAnalysisFile(analysisFilepath); } this.calibrator.afterNetworkLoading(this.simResults); // write some output String filename = controlerIO.getIterationFilename(event.getIteration(), LINKOFFSET_FILENAME); try { new CadytsCostOffsetsXMLFileIO<>(new TransitStopFacilityLookUp(scenario), TransitStopFacility.class) .write(filename, this.calibrator.getLinkCostOffsets()); } catch (IOException e) { log.error("Could not write link cost offsets!", e); } generateAndWriteCountsComparisons(event); }
@Override public void notifyIterationEnds(final IterationEndsEvent event) { if (this.writeAnalysisFile) { String analysisFilepath = event.getServices().getControlerIO().getIterationFilename(event.getIteration(), ANALYSIS_FILENAME); this.calibrator.setFlowAnalysisFile(analysisFilepath); } // 3rd major Cadyts method "calibrator.afterNetworkLoading", dz 09/15 this.calibrator.afterNetworkLoading(this.measurementListener); // write some output String filename = event.getServices().getControlerIO().getIterationFilename(event.getIteration(), COSTOFFSET_FILENAME); try { new CadytsCostOffsetsXMLFileIO<Measurement>( this.measurements, Measurement.class) .write(filename, this.calibrator.getLinkCostOffsets()); } catch (IOException e) { log.error("Could not write link cost offsets!", e); } }
@Override public void notifyIterationEnds(IterationEndsEvent event) { log.error("Iteration: " + event.getIteration()); percent34 = this.testHandler.getCount34() / 3600.0 * 100.0 ; percent35 = this.testHandler.getCount35() / 3600.0 * 100.0 ; percent36 = this.testHandler.getCount36() / 3600.0 * 100.0; log.error("Count 34: " + this.testHandler.getCount34() + " or " + percent34+ " %"); log.error("Count 35: " + this.testHandler.getCount35() + " or " + percent35 + " %"); log.error("Count 36: " + this.testHandler.getCount36() + " or " + percent36 + " %"); }
@Override public void notifyIterationEnds(IterationEndsEvent event) { parsePopulation(event.getServices().getScenario().getPopulation()); String outNameIdentifier = "actsFromParatransitUsers.txt"; if (this.firstIteration) { // write it to main output writeResults(event.getServices().getControlerIO().getOutputFilename("0." + outNameIdentifier)); this.firstIteration = false; } else { // write it somewhere writeResults(event.getServices().getControlerIO().getIterationFilename(event.getIteration(), outNameIdentifier)); } }