RangeShifter / RangeShifter_batch

RangeShifter batch version with new structure using subtree for RS core files
GNU General Public License v3.0
0 stars 0 forks source link

RangeShifter Batch Mode

C++ code for the RangeShifter v2 batch mode application

RangeShifter is an eco-evolutionary modelling platform that is becoming increasingly used worldwide for both theoretical and applied purposes (Bocedi et al. 2014).

RangeShifter is a spatially-explicit, individual-based simulation platform that allows modelling species’ population and range dynamics, such as expansion and shifting, and patch connectivity by linking complex local population dynamics and dispersal behaviour, while also taking into account inter-individual variability and evolutionary processes. RangeShifter is highly flexible in terms of the spatial resolution and extent, and regarding the complexity of the considered ecological processes. Due to its modular structure, the level of detail in genetics, demographic and dispersal processes can be easily adapted to different research questions and available data.

This repo contains the source code for the Batch Mode interface of RangeShifter. In Batch Mode, RangeShifter can be run from the command line (e.g., ./rangeshifter.exe) within a project directory containing a set of input files. This allows the user to run large batches of simulations with different parameters, which would need to be specified individually in the GUI version. The Batch Mode also enables running RangeShifter on machines with a non-interactive interface, for example a high-performance cluster.

Building RangeShifter

The compiled software can be found in the Software and Documentation repo.

Building RangeShifter from the source code requires CMake. If you haven't done so yet, you will need to download and install it.

RangeShifter can then be configured and built (out-of-source) from CMakeLists.txt, with the usual CMake commands:

mkdir build && cd build
cmake ..
cmake --build .

If you use Visual Studio as your IDE, CMake should be recognised automatically when RangeShifter_batch_dev is opened as a new folder. Visual Studio will take care of the configuration, and you only need to select target RangeShifter.exe before pressing the build button.

Alternatively, RangeShifter can also be built directly with the GNU C++ compiler, in which case some #define macros must be passed to it:

g++ -o RangeShifter.exe ./src/*.cpp ./src/RScore/*.cpp -DRSDEBUG -DRSWIN64 -DLINUX_CLUSTER

Running RangeShifter

For instructions on how to setup the project directory and input files, please refer to section 3.3 of the User Manual, and to the documentation repository for examples.

Contributing

See CONTRIBUTING

See also

Maintainer

References