Skip to main content

python modules for running the STEMMUS-SCOPE model

Project description

github repo badge build fair-software badge sonarcloud github license badge Documentation Status

This repository includes the python package PyStemmusScope for running the STEMMUS-SCOPE model.

The model source code, executable file and utility files are available in the STEMMUS_SCOPE repository.

The input datasets are available on Snellius and CRIB. First, make sure you have right access to the repository and data. Then, see the notebook run_model_in_notebook.ipynb which provides different options to run the model, see Run the model.

Run the model

  1. Using executable file: As a user, you don't need to have a MATLAB license to run the STEMMUS-SCOPE model. If PyStemmusScope and MATLAB Runtime are installed on a Unix-like system (e.g. your own machine, Snellius or WSL), you can run STEMMUS_SCOPE using the executable file.
  2. Using Matlab: If PyStemmusScope and Matlab are installed, you can run STEMMUS_SCOPE from the source code, for example on Snellius or CRIB.
  3. Using Octave: If PyStemmusScope and latest Octave including required packages are installed, you can run STEMMUS_SCOPE from its source code, for example on CRIB or your own machine.

See section Installations for required packages.

Installations

On Snellius

Snellius is the Dutch National supercomputer hosted at SURF. MATLAB and MATLAB Runtime are installed on Snellius, see the script run_jupyter_lab_snellius.sh on how to load the module. Also, use the same script to create a jupyter lab server for running notebooks interactively. The script activates the conda environment pystemmusscope. Make sure that you create the pystemmusscope conda environment before submitting the the bash script. See Create pystemmusscope conda environment.

On CRIB

CRIB is the ITC Geospatial Computing Platform. You can run the model using Matlab or Octave. Currently, running the exceutable file on CRIB is not supported because MATLAB Runtime can not be installed there. See Install PyStemmusScope.

On your own machine

Choose how do you want to run the model, see Run the model.

Install PyStemmusScope

Run the commands below in a terminal (On Windows, use python instead of python3):

# will be replaced by `pip install pystemmusscope`
python3 -m pip install git+https://github.com/EcoExtreML/STEMMUS_SCOPE_Processing.git@main

or

Open a jupyter notebook and run the code below in a cell:

!pip install git+https://github.com/EcoExtreML/STEMMUS_SCOPE_Processing.git@main

Install jupyterlab

Jupyterlab is needed to run notebooks. Run the commands below in a terminal:

python3 -m pip install jupyterlab

Open a terminal, make sure the environment is activated. Then, run jupyter lab:

jupyter lab

JupyterLab will open automatically in your browser. Now, you can run the notebook run_model_in_notebook.ipynb.

Install MATLAB Runtime

To run the STEMMUS_SCOPE, you need MATLAB Runtime version 2021a and a Unix-like system.

In a terminal:

# Download MATLAB Runtime for Linux
wget https://ssd.mathworks.com/supportfiles/downloads/R2021a/Release/6/deployment_files/installer/complete/glnxa64/MATLAB_Runtime_R2021a_Update_6_glnxa64.zip

# Unzip the file
unzip MATLAB_Runtime_R2021a_Update_6_glnxa64.zip -d MATLAB_Runtime

# Install it
cd MATLAB_Runtime
sudo -H ./install -mode silent -agreeToLicense yes

For more information on how to download and install MATLAB Runtime, see the links below:

Install WSL

As the STEMMUS-SCOPE executable only supports Unix-like systems, Windows users cannot run STEMMUS-SCOPE natively. However, users of Windows 10 and newer can use WSL (Windows Subsystem for Linux) to run the model. Check the Microsoft Guide for a compatibility information and for general WSL instructions. If no installation exists, a Ubuntu distribution can be installed using the following commands:

wsl --install

After installation, you can start up the WSL instance and update the default software:

sudo apt update && sudo apt upgrade

You can now set up a python environment using either python's venv, or use Conda/Mamba. Note that the command to run python and pip can be python3 and pip3 by default.

For the rest of the installation instructions simply follow the steps below. Note that it is possible to access files from the Windows filesystem from within WSL, by accessing, e.g., /mnt/c/ instead of C:\. This means that large input data files can be stored on your Windows installation instead of inside the WSL distro. However, WSL does not have write permission. Therefore, output data will be stored within WSL. Make sure that WorkDir in the model config file is set correctly.

Create pystemmusscope conda environment

If a conda environment is neeed, run the commands below in a terminal:

# Download and install Mamba on linux
wget https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-pypy3-Linux-x86_64.sh
bash Mambaforge-pypy3-Linux-x86_64.sh -b -p ~/mamba

# Update base environment
. ~/mamba/bin/activate
mamba update --name base mamba

# Download environment file
wget https://raw.githubusercontent.com/EcoExtreML/STEMMUS_SCOPE_Processing/main/environment.yml

# Create a conda environment called 'pystemmusscope' with all required dependencies
mamba env create -f environment.yml

# The environment can be activated with
. ~/mamba/bin/activate pystemmusscope

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

PyStemmusScope-0.1.0.tar.gz (25.6 kB view details)

Uploaded Source

Built Distribution

PyStemmusScope-0.1.0-py3-none-any.whl (24.7 kB view details)

Uploaded Python 3

File details

Details for the file PyStemmusScope-0.1.0.tar.gz.

File metadata

  • Download URL: PyStemmusScope-0.1.0.tar.gz
  • Upload date:
  • Size: 25.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.5

File hashes

Hashes for PyStemmusScope-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e872d65530a05967cb417cd3fda75a2bf883f7046213724eb37dd6166a38b3d3
MD5 70d97a9ffaec17818be26bfadf9928b5
BLAKE2b-256 bae5ba73b70f64a98496c294449db57c8f80c6d80e2b3571cfd38c3e98874da0

See more details on using hashes here.

Provenance

File details

Details for the file PyStemmusScope-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for PyStemmusScope-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 592202d773f59537fca4d6f2435020c0e512a53b1ce7876bbdf4188f8ba6af80
MD5 6ed860a71706a43f5b6229cc7733d5f0
BLAKE2b-256 cb61fb995f4ef26631a9cad569e61a78defa92aabbdec27160d8b56f0b33d38a

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page