Skip to content
This repository has been archived by the owner on Nov 27, 2020. It is now read-only.

Latest commit

 

History

History
44 lines (34 loc) · 2.35 KB

README.md

File metadata and controls

44 lines (34 loc) · 2.35 KB

PHAS0100Assignment2

Build Status Build Status

Purpose

Extended version of CMakeCatch2 for PHAS0100 Assignment 2 that includes vec2d, pos2d and dir2d classes with wrapping functionality for periodic boundary conditions. As with CMakeCatch2 this can be used a starting point for a reasonable folder structure for CMake based projects, that use CTest to run unit tests via Catch.

Now includes a Visualisation Toolkit (VTK) based visualiser class Code/Lib/sfmVisualiser that can be used to plot pedestrian positions and velocities as they are simulated. This requires VTK 7 to be installed, see below. An example of its use in application given in Code/CommandLineApps/sfmVisualiserDemo.cpp.

Credits

This project was developed as a teaching aid for UCL's "Research Computing with C++" course developed by Dr. James Hetherington and Dr. Matt Clarkson and then extended by Dr. Jim Dobson based on code by Dr Tim Spain.

Build Instructions

If you want to use the VTK visualiser you need the VTK development libraries. On Ubuntu these can be installed with:

apt-get install libvtk7-dev

This project itself can be built if you just want to test it. In Linux terms that would be:

git clone https://github.com/MattClarkson/PHAS0100Assignment2
mkdir PHAS0100Assignment2-Build
cd PHAS0100Assignment2-Build
cmake ../PHAS0100Assignment2
make

You can either use this project with the current naming convention or you can use it as a template to create your own project with a different naming convention. To do so, please refer to the CMakeTemplateRenamer which will show you how to clone this repository, and rename all the variables to names of your choice. Then you would simply build your new project, using cmake, as shown above.