MATSIM
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
org.matsim.run.InitRoutes Class Reference

Public Member Functions

void run (final String[] args)
 

Static Public Member Functions

static void main (final String[] args)
 

Private Member Functions

void parseArguments (final String[] args)
 
void printUsage ()
 

Private Attributes

Config config
 
String configfile = null
 
String plansfile = null
 

Detailed Description

Assigns for each leg of each plan of each person an initial (freespeed) route. All given activities must have a link assigned already (use XY2Links).

Author
balmermi
mrieser

Definition at line 57 of file InitRoutes.java.

Member Function Documentation

◆ parseArguments()

void org.matsim.run.InitRoutes.parseArguments ( final String []  args)
private

Parses all arguments and sets the corresponding members.

Parameters
args

Definition at line 76 of file InitRoutes.java.

References org.matsim.core.utils.misc.ArgumentParser.iterator(), and org.matsim.run.InitRoutes.printUsage().

Referenced by org.matsim.run.InitRoutes.run().

76  {
77  if (args.length == 0) {
78  System.out.println("Too few arguments.");
79  printUsage();
80  System.exit(1);
81  }
82  Iterator<String> argIter = new ArgumentParser(args).iterator();
83  String arg = argIter.next();
84  if (arg.equals("-h") || arg.equals("--help")) {
85  printUsage();
86  System.exit(0);
87  } else {
88  this.configfile = arg;
89  this.plansfile = argIter.next();
90  if (argIter.hasNext()) {
91  System.out.println("Too many arguments.");
92  printUsage();
93  System.exit(1);
94  }
95  }
96  }
Here is the call graph for this function:

◆ printUsage()

void org.matsim.run.InitRoutes.printUsage ( )
private

Definition at line 102 of file InitRoutes.java.

Referenced by org.matsim.run.InitRoutes.parseArguments().

102  {
103  System.out.println();
104  System.out.println("InitRoutes");
105  System.out.println("Reads a plans-file and assignes each leg in each plan of each person");
106  System.out.println("a an initial route (freespeed) based on the given netowrk. The modified plans/");
107  System.out.println("persons are then written out to file again.");
108  System.out.println();
109  System.out.println("usage: InitRoutes [OPTIONS] configfile");
110  System.out.println(" The following parameters must be given in the config-file:");
111  System.out.println(" - network.inputNetworkFile");
112  System.out.println(" - plans.inputPlansFile");
113  System.out.println(" - plans.outputPlansFile");
114  System.out.println();
115  System.out.println("Options:");
116  System.out.println("-h, --help: Displays this message.");
117  System.out.println();
118  System.out.println("----------------");
119  System.out.println("2008, matsim.org");
120  System.out.println();
121  }

◆ run()

void org.matsim.run.InitRoutes.run ( final String []  args)

Definition at line 127 of file InitRoutes.java.

References org.matsim.core.population.io.StreamingPopulationReader.addAlgorithm(), org.matsim.core.gbl.Gbl.assertNotNull(), org.matsim.core.controler.Injector.createInjector(), org.matsim.core.scenario.ScenarioUtils.createMutableScenario(), org.matsim.core.scenario.MutableScenario.getConfig(), org.matsim.core.config.groups.NetworkConfigGroup.getInputFile(), org.matsim.core.config.groups.PlansConfigGroup.getInputFile(), org.matsim.core.scenario.MutableScenario.getNetwork(), org.matsim.core.config.groups.GlobalConfigGroup.getRandomSeed(), org.matsim.core.config.Config.global(), org.matsim.core.config.ConfigUtils.loadConfig(), org.matsim.core.config.Config.network(), org.matsim.core.controler.AbstractModule.override(), org.matsim.run.InitRoutes.parseArguments(), org.matsim.core.config.Config.plans(), org.matsim.core.population.PopulationUtils.printPlansCount(), org.matsim.core.population.io.StreamingPopulationReader.readFile(), org.matsim.core.gbl.MatsimRandom.reset(), and org.matsim.core.config.Config.scoring().

Referenced by org.matsim.run.InitRoutes.main().

127  {
128  parseArguments(args);
129  this.config = ConfigUtils.loadConfig(this.configfile);
130  MatsimRandom.reset(config.global().getRandomSeed());
131  final MutableScenario scenario = ScenarioUtils.createMutableScenario(config);
132 // final Population plans = PopulationUtils.createStreamingPopulation( config.plans(), null );
133  StreamingPopulationReader reader = new StreamingPopulationReader( scenario ) ;
134 
135  new MatsimNetworkReader(scenario.getNetwork()).readFile(config.network().getInputFile());
136 
137  final StreamingPopulationWriter plansWriter = new StreamingPopulationWriter();
138  Gbl.assertNotNull(this.plansfile);
139  plansWriter.startStreaming(this.plansfile);
140  final FreespeedTravelTimeAndDisutility timeCostCalc = new FreespeedTravelTimeAndDisutility(config.scoring());
141  com.google.inject.Injector injector = Injector.createInjector(scenario.getConfig(), new AbstractModule() {
142  @Override
143  public void install() {
144  install(AbstractModule.override(Arrays.asList(new TripRouterModule()), new AbstractModule() {
145  @Override
146  public void install() {
147  install(new ScenarioByInstanceModule(scenario));
148  install(new TimeInterpretationModule());
149  addTravelTimeBinding("car").toInstance(timeCostCalc);
150  addTravelDisutilityFactoryBinding("car").toInstance(new TravelDisutilityFactory() {
151  @Override
152  public TravelDisutility createTravelDisutility(TravelTime timeCalculator) {
153  return timeCostCalc;
154  }
155  });
156  }
157  }));
158  }
159  });
160  reader.addAlgorithm(new PlanRouter(injector.getInstance(TripRouter.class), null, injector.getInstance(TimeInterpretation.class)));
161  reader.addAlgorithm(plansWriter);
162  reader.readFile(this.config.plans().getInputFile());
163  PopulationUtils.printPlansCount(reader) ;
164  plansWriter.closeStreaming();
165 
166  System.out.println("done.");
167  }
final NetworkConfigGroup network()
Definition: Config.java:411
final ScoringConfigGroup scoring()
Definition: Config.java:407
void parseArguments(final String[] args)
Definition: InitRoutes.java:76
final PlansConfigGroup plans()
Definition: Config.java:415
final GlobalConfigGroup global()
Definition: Config.java:395
Here is the call graph for this function:

◆ main()

static void org.matsim.run.InitRoutes.main ( final String []  args)
static

Definition at line 173 of file InitRoutes.java.

References org.matsim.run.InitRoutes.run().

173  {
174  new InitRoutes().run(args);
175  }
Here is the call graph for this function:

Member Data Documentation

◆ config

Config org.matsim.run.InitRoutes.config
private

Definition at line 63 of file InitRoutes.java.

◆ configfile

String org.matsim.run.InitRoutes.configfile = null
private

Definition at line 64 of file InitRoutes.java.

◆ plansfile

String org.matsim.run.InitRoutes.plansfile = null
private

Definition at line 65 of file InitRoutes.java.


The documentation for this class was generated from the following file: