Skip to main content
Version: v0.3.0

Installation and Usage

Work In Progres

There are two forms to use DuneCopasi. The first and easiest one is using a Docker Container where the software is boundled such that no installation other than docker is required. On the second one, the compilation of the source code is compulsory.

Containerized Usage#

In this mode, there is no need to fullfil specific requirements other than those for docker installation.

Install Docker#

First, get and install Docker following the docker installation instructions.

Pull Container#

Then, you may get the latest stable DuneCopasi container by pulling it from the GitLab registry

docker pull registry.dune-project.org/copasi/dune-copasi/dune-copasi:latest

Run DuneCopasi#

Finally, run the dune_copasi_md executable from the container

# TODO

Manual Installation#

Locally building and installing DuneCopasi requires to first obtain the dependencies, then compile the dependent dune modules and finally installing on a final directory.

Dependencies#

The following list of software is required to install and use DuneCopasi:

info

Notice that some required dune modules are forks of original reopsitories and are placed under the COPASI namespace on the DUNE GitLab.

SoftwareVersion/Branch
CMake>= 3.1
C++ compiler>= C++17
libTIFF>= 3.6.1
muParser>= 2.2.5
dune-common== 2.7
dune-geometry== 2.7
dune-grid== 2.7
dune-uggrid== 2.7
dune-istl== 2.7
dune-localfunctions== 2.7
dune-functions== 2.7
COPASI/dune-loggingsupport/dune-copasi-latest
COPASI/dune-typetreesupport/dune-copasi-latest
COPASI/dune-pdelabsupport/dune-copasi-latest
COPASI/dune-multidomaingridsupport/dune-copasi-latest

Installation#

The first four can be obtained by your prefered package manager in unix-like operating systems. e.g.

The required DUNE modules (including DuneCopasi) can be obtained via internet by using git. For smooth installation, is better place all the dune modules within the same directory.

# prepare a folder to download and build dune modules
mkdir ~/dune-modules && cd ~/dune-modules
# fetch dependencies & dune-copasi in ~/dune-modules folder
git clone -b releases/2.7 https://gitlab.dune-project.org/core/dune-common
git clone -b releases/2.7 https://gitlab.dune-project.org/core/dune-geometry
git clone -b releases/2.7 https://gitlab.dune-project.org/core/dune-grid
git clone -b releases/2.7 https://gitlab.dune-project.org/staging/dune-uggrid
git clone -b releases/2.7 https://gitlab.dune-project.org/core/dune-istl
git clone -b releases/2.7 https://gitlab.dune-project.org/core/dune-localfunctions
git clone -b releases/2.7 https://gitlab.dune-project.org/staging/dune-functions
git clone -b support/dune-copasi-latest --recursive https://gitlab.dune-project.org/copasi/dune-logging
git clone -b support/dune-copasi-latest https://gitlab.dune-project.org/copasi/dune-typetree
git clone -b support/dune-copasi-latest https://gitlab.dune-project.org/copasi/dune-pdelab
git clone -b support/dune-copasi-latest https://gitlab.dune-project.org/copasi/dune-multidomaingrid
git clone -b latest https://gitlab.dune-project.org/copasi/dune-copasi

Then build and install the DUNE modules with the dunecontrol script:

# configure and build dune modules
./dune-common/bin/dunecontrol make all
# install dune-copasi (this operation may requiere sudo)
./dune-common/bin/dunecontrol bexec make install
# remove source and build files
cd .. && rm -r ~/dune-modules

For further info on dune module installation process, please check out the dune-project web page.

Custom installation path

If you don't want to install the DUNE modules system-wide, you can set the CMAKE_INSTALL_PREFIX to a custom directory. See CMake documentation here.

Run DuneCopasi#

In case you installed DuneCopasi system-wide, you should be able to call the program dune_copasi_md from your command line accompained with a configuration file. Otherwise, the executable will be under bin/ folder on the installed directory.

# TODO

To find out the appropiated contents on the configuration file, check out the Parameter Tree documentation.