20 package org.matsim.core.config.consistency;
22 import org.apache.logging.log4j.LogManager;
23 import org.apache.logging.log4j.Logger;
52 checkPlanCalcScore(config);
54 checkConsistencyBetweenRouterAndTravelTimeCalculator( config );
57 static boolean checkConsistencyBetweenRouterAndTravelTimeCalculator(
final Config config ) {
58 boolean problem = false ;
70 static void checkPlanCalcScore(
final Config c) {
74 "Typically, this should be a disutility, i.e. have a negative value.");
79 "Typically, this should be a disutility, i.e. have a negative value.");
84 "Typically, this should be a disutility, i.e. have a negative value.");
89 "Typically, this should be a disutility, i.e. have a negative value.");
94 if ( ptAct != null ) {
104 " If you need this anyway (for backwards compatibility reasons), you can allow this by a parameter in VspExperimentalConfigGroup.") ;
114 log.error(
"Xml events are not enabled, but lanes and possibly signal systems" +
115 "are enalbed. Events from this features will only be written to the xml format, consider" +
116 "to add xml events in the controler config module");
123 log.warn(
"The signal system implementation is only supported by the org.matsim.ptproject.qsim mobility simulation that is not activated. Please make sure you are using the correct" +
124 "mobility simulation. This warning can be ingored if a customized mobility simulation developed outside of org.matsim is used and set correctly.");
132 throw new IllegalStateException(
"LinkToLinkRouting is activated in config and" +
133 " link to link traveltime calculation is not enabled but required!");
139 log.warn(
"Config enables link travel time calculation and link to link " +
140 "travel time calculation. This requires at least twice as much memory as " +
141 "if only one method is used, however it might be necessary to enable " +
142 "a certain module configuration.");
146 log.warn(
"Link travel time calculation is switched off, be aware that this optimization" +
147 "might not work with all modules. ");
152 throw new IllegalStateException(
"Link to link travel time calculation is not" +
153 "available if using the remove stuck vehicles option!");
158 log.warn(
"We don't know if non-Dijkstra routing works together with LinkToLink routing.");
167 log.warn(
"Using lanes without enabling linktolinkrouting might not lead to expected simulation results");
Map< String, ModeParams > getModes()
boolean isCalculateLinkToLinkTravelTimes()
void checkConsistency(final Config config)
boolean isCalculateLinkTravelTimes()
Collection< ActivityParams > getActivityParams()
boolean isLinkToLinkRoutingEnabled()
boolean isRemoveStuckVehicles()
static final String TRANSIT_ACTIVITY_TYPE
Set< EventsFileFormat > getEventsFileFormats()
final ScoringConfigGroup scoring()
boolean isAbleToOverwritePtInteractionParams
static void checkTransit(final Config config)
static void checkEventsFormatLanesSignals(final Config c)
static final String GROUP_NAME
TravelTimeCalculatorConfigGroup travelTimeCalculator()
VspExperimentalConfigGroup vspExperimental()
static void checkTravelTimeCalculationRoutingConfiguration(final Config config)
ConfigConsistencyCheckerImpl()
boolean isScoringThisActivityAtAll()
static void checkScenarioFeaturesEnabled(final Config c)
double getMarginalUtilityOfTraveling()
RoutingAlgorithmType getRoutingAlgorithmType()
final ControllerConfigGroup controller()
static void checkLaneDefinitionRoutingConfiguration(final Config config)