Skip to content

koengit/trainspotting

Repository files navigation

Railway performance analysis tools

This repository contains various code used around 2018 to demonstrate methods developed for my (Bjørnar Luteberget) Ph.D. thesis. It's is a somewhat complicated mix of Rust and Haskell code and shell scripts, so the project is a bit hard to build at this point, in 2024.

Check out the documentation with examples.

Contents

This repository contains the following programs:

  • docs - HTML documentation and examples with interactive visualizations (compile with mdbook)
  • rolling - a simple train simulator written in Rust
  • railperfcheck - performance specification checker for railways written in Haskell (based on the rolling simulator, minisat, and satplus)
  • gridvis - graph layout solver in railway style written in Haskell for the infrastructure format in rolling (based on minisat and satplus)
  • rollingrailml - convert railML 2.x files into rolling infrastructure model. Can also derive routes from infrastructure. (Rust)

Build instructions

  1. Install Rust tools version >= 1.24
  2. Install mdbook version 0.1.8 (cargo install mdbook --version 0.1.8)
  3. Install Haskell compiler and package tool
  4. Install Haskell packages cabal install megaparsec and cabal install cmdargs
  5. Put satplus in subfolder of railperfcheck and gridvis directories
  6. Run make.
  7. Open docs/book/index.html in web browser

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published