Skip to content

Alex-iono/amrex_testsim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Repo for code snippets

This repository contains my attempt of an example setup for a cross-platform scientific c++ project. It uses Cmake for cross platfrom copatibility on Linux and Mac.

Prerequisits

This project is tested with the g++ compiler on Linux at the default system location '/usr/bin/g++'. Check if your systems has g++ installed in this location by executing:

which g++

Further check that you have cmake installed on your machine:

cmake --version

Ther required cmake version, as of now, is 3.15 or higher (should be pre-installed on horizon machines).

Setup on Mac

If you want to build the project on Mac those dependencies can be installed with the homebrew package manager:

brew install g++
brew install cmake
brew install open-mpi

Compiling the project using CMake

If you are planning to compile this project in a different environment or you experience problems with the build automation of VS codium from above, you can also compile the project with cmake in the terminal (make sure cmake is installed on your machine first):

cmake -B build
cmake --build build --clean-first

This should initialize the build directory and compile the project accoring to the specifications made in the top level CMakeLists.txt. The default name of the compiled project executable is main.

This repository uses a gitlab CICD pipeline in combination with doxygen and GitlabPages in order to automatically host a Code Documentation Website .When you have access to this repository, you should also be able to access this page.

The very same documentation can be locally build when in the top level directory using:

doxygen docs/Doxyfile

Which should result in the generation of a latex and html version of the documentation in respective folders within the docs folder.

Development setup in VS Codium

This repo should enable a out of the box development automization using VSCodium with the following extensions:

When installing those extensions on the horizon linux machine you will most likely encounter a weird behaviour of clangd, marking stdlib headers as mssing:

This error results from the installation path of the clangd extension under VScodium somewhere on your system, where it cannot detect any library files. It can be resolved by providing the system compiler path as query driver for clangd:

    "clangd.arguments": [
        "--query-driver=/usr/bin/g++"
    ],

In your codium settings.json, which you can access easily by pressing CTRL+SHIFT+P and entering "settings" in the search bar.

About

Test setup for an amrex base simulation framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published