Skip to content

computationalgeography/soli3d

Repository files navigation

soli3d

Numerical simulation of solifluction processes

soli3d is a numerical simulation package based on the finite difference method (FDM) and the LUE library. It models solifluction as a multiphase process involving muddy soil movement and ice sheet expansion or dissipation. The model solves the mass conservation, momentum conservation, and heat transfer equations to simulate the coupled dynamics of soil and ice.

Features

  • Finite difference method (FDM) solver
  • Multiphase modeling: muddy soil and ice sheets
  • Mass, momentum, and heat conservation equations
  • Built using LUE

Dependencies

Before running the project, you will need to install the following dependencies:

  • Python (version >= 3.10)
  • LUE (version 0.3.9)
  • NumPy (version >= 2.2.3)

Create Environment and Install Dependencies

The recommended way to set up the environment is with Conda. A ready-to-use environment file is provided in environment/configuration/conda_environment.yml.

Download Package

Clone the repository from GitHub:

git clone https://github.com/computationalgeography/soli3d.git

Navigate to the repository

cd soli3d

Create the environment

conda env create -f environment/configuration/conda_environment.yml

Activate the environment

conda activate soli3d

Run

Activate the environment:

conda activate soli3d

On some systems, you may need to provide a path to libtcmalloc to run LUE:

export LD_PRELOAD="/usr/lib/x86_64-linux-gnu/libtcmalloc_minimal.so.4"

Set the path to the package directory:

export PYTHONPATH=/full/path/to/soli3d/source/package:$PYTHONPATH

Run the simulation with a parameter file and specify the number of threads:

python path/to/soli3d/source/script/run_simulation.py --hpx:threads=<nr_threads> <path/to/param.txt>

Test

PYTHONPATH=path/to/soli3d/source/package python -m unittest source.test.model_test -v

Generate documentation

sphinx-build path/to/soli3d/doc $HOME/tmp/documentation

Point your browser at $HOME/tmp/documentation/index.html.

License

This project is licensed under the MIT License.


About

Numerical simulation of solifluction processes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages