Skip to content

babrodtk/ocls-core

 
 

Repository files navigation

Open Conservation Law Solver Framework

Documentation

Doxygen documentation

Build Project

Note About C++11

At the moment the framework requires C++11 and the compiler argument 'std=c++11' is enabled by default. Fallback to support older compilers are planned. The C++11 featues currently required are:

Please check if your compiler supports these features: Compiler status.

Tested:

  • GCC 4.8.2 (Linux)
  • Clang++ 3.3 (OSx Xcode 5.0)
  • Clang++ 3.2 (Linux)

Untested but should work:

  • GCC 4.3.*
  • Clang 2.9
  • Microsoft Visual Studio 2013 (MSVC12)

Framework Dependencies:

  1. OpenCL
  2. GLEW (OpenGL Extension Wrangler Library)
  3. GLFW3 (OpenGL Window Manager Library)
  4. GLM (OpenGL Mathematics)

Unit-Testing Suit:

  1. Boost Test

Note:

We plan to make it possible to build the framework without visualization support which would remove the OpenGL related dependencies from the dependency list.

Linux (Ubuntu)

Installing libraries:

GLEW, GLM and Boost Test can be installed from apt-get, simply copy this command into your terminal:

sudo apt-get install build-essential xorg-dev libboost-filesystem-dev libboost-system-dev libboost-test-dev libglew-dev libglewmx-dev libglm-dev

At the moment for writing, only GLFW2 is available through Ubuntu package distribution and we need GLFW3. We must then instead download the latest version from GitHub. These commands will download the latest version of GLFW, build it and install it.

git clone git@github.com:glfw/glfw.git &&
mkdir glfw/build &&
cd glfw/build &&
cmake .. &&
make install 

Installing OpenCL libraries depends on what OpenCL capable device you want to run the framework on.

Building with CMake

  1. Clone the project to a desired location
  2. Create a build folder [Optional]
  3. cmake [path to project folder]
  4. make all
  5. ./bin/tests/ to run the unit tests or ./bin/demo to run the demo program

About

An easy-to-use framework for prototyping explicit finite volume methods for conservation laws.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 55.0%
  • C 28.1%
  • Python 7.8%
  • CMake 4.2%
  • Apex 2.9%
  • GLSL 2.0%