Coder Social home page Coder Social logo

hudsonshi / matsim-example-project Goto Github PK

View Code? Open in Web Editor NEW

This project forked from matsim-org/matsim-example-project

0.0 0.0 0.0 190 KB

A small example of how to use MATSim as a library.

License: GNU General Public License v2.0

Java 100.00%

matsim-example-project's Introduction

matsim-example-project

A small example of how to use MATSim as a library.

By default, this project uses the latest (pre-)release. In order to use a different version, edit pom.xml.

A recommended directory structure is as follows:

  • src for sources
  • original-input-data for original input data (typically not in MATSim format)
  • scenarios for MATSim scenarios, i.e. MATSim input and output data. A good way is the following:
    • One subdirectory for each scenario, e.g. scenarios/mySpecialScenario01.
    • This minimally contains a config file, a network file, and a population file.
    • Output goes one level down, e.g. scenarios/mySpecialScenario01/output-from-a-good-run/....

Import into eclipse

  1. download a modern version of eclipse. This should have maven and git included by default.
  2. file->import->git->projects from git->clone URI and clone as specified above. It will go through a sequence of windows; it is important that you import as 'general project'.
  3. file->import->maven->existing maven projects

Sometimes, step 3 does not work, in particular after previously failed attempts. Sometimes, it is possible to right-click to configure->convert to maven project. If that fails, the best thing seems to remove all pieces of the failed attempt in the directory and start over.

Import into IntelliJ

File -> New -> Project from Version Control paste the repository url and hit 'clone'. IntelliJ usually figures out that the project is a maven project. If not: Right click on pom.xml -> import as maven project.

Java Version

The project uses Java 11. Usually a suitable SDK is packaged within IntelliJ or Eclipse. Otherwise, one must install a suitable sdk manually, which is available here

Building and Running it locally

You can build an executable jar-file by executing the following command:

./mvnw clean package

or on Windows:

mvnw.cmd clean package

This will download all necessary dependencies (it might take a while the first time it is run) and create a file matsim-example-project-0.0.1-SNAPSHOT.jar in the top directory. This jar-file can either be double-clicked to start the MATSim GUI, or executed with Java on the command line:

java -jar matsim-example-project-0.0.1-SNAPSHOT.jar

Licenses

(The following paragraphs need to be adjusted according to the specifications of your project.)

The MATSim program code in this repository is distributed under the terms of the GNU General Public License as published by the Free Software Foundation (version 2). The MATSim program code are files that reside in the src directory hierarchy and typically end with *.java.

The MATSim input files, output files, analysis data and visualizations are licensed under a Creative Commons Attribution 4.0 International License. Creative Commons License
MATSim input files are those that are used as input to run MATSim. They often, but not always, have a header pointing to matsim.org. They typically reside in the scenarios directory hierarchy. MATSim output files, analysis data, and visualizations are files generated by MATSim runs, or by postprocessing. They typically reside in a directory hierarchy starting with output.

Other data files, in particular in original-input-data, have their own individual licenses that need to be individually clarified with the copyright holders.

matsim-example-project's People

Contributors

kainagel avatar mrieser avatar michalmac avatar dependabot[bot] avatar michaz avatar rakow avatar janekdererste avatar diegofad avatar dziemke avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.