-
Notifications
You must be signed in to change notification settings - Fork 7
Getting started user
Erwin Lambert edited this page Oct 20, 2025
·
1 revision
Here is a step-by-step guide to set up the UFEMISM and LADDIE models on your local machine (mac or linux) and do a test run.
NOTE we have no general guideline for HPC configurations. The same packages as below are required, though these are usually maintained by HPC support. To load or install required packages, look at the HPC manual or contact the HPC support.
- Download & install Homebrew (https://brew.sh/) This is a library manager that will help you to quickly and easily install all the external libraries that UPSY depends on. For me, the last few lines of output from the homebrew installer gave some additional instructions to follow, probably you’ll need to do the same:
- Run these two commands in your terminal to add Homebrew to your PATH:
(echo; echo 'eval "$(/opt/homebrew/bin/brew shellenv)"') >> /Users/Beren017/.zprofileeval "$(/opt/homebrew/bin/brew shellenv)" - Use Homebrew from the terminal to install the required external libraries:
-
brew install gitGit is a version control system. When you write some new code, git stores the changes on a remote server (so you basically have a back-up with a long-term “undo” function). When multiple people work on the same code simultaneously, git helps them detect and resolve conflicts. Git also helps us manage the automated tests for UPSY. -
brew install gccgcc stands for “GNU Compiler Collection”, the compiler that lets you compile and run your code -
brew install open-mpiOpenMPI is an implementation of the Message Passing Interface (MPI), which is what UPSY uses to be able to run on multiple cores in parallel. -
brew install petscThe Portable, Extensible Toolkit for Scientific Computation (PETSc, pronounced “Petsy”) is a library containing routines for solving matrix equations. -
brew install netcdfNetCDF is the binary file format used for in- and output files by most geoscientific models, including UPSY. -
brew install netcdf-fortranThe Fortran interface for NetCDF has to be installed separately. -
brew install cmakeCMake is a program that helps you compile large projects like UPSY, by automatically creating a Makefile for you. -
brew install ninjaNinja is a small helper tool for CMake to quickly analyse the interdependencies of your source code files.
-
- In your terminal, go to the directory where you want to install the models
-
git clone git@github.com:UPSY-group/UPSY-models.gitAlternatively you can use the Github Desktop Client (https://github.com/apps/desktop) -
git submodule initThis is needed only once, to link to an external repository which contains useful data -
git submodule update --recursive --remoteGet the external data. - In the terminal, go to the main repository directory
-
./compile_LADDIE.csh perf cleanor./compile_UFEMISM.csh perf cleanThis should compile the required model. When integrating latest model changes, you can try replacingcleanwithchangedfor a faster compilation.
-
mpirun -n 2 LADDIE_program src/LADDIE/validation/integrated_tests/Antarctica/test_coarse.cfgThis will perform a coarse pan-Antarctic simulation on 2 cores. - Check output in src/LADDIE/validation/integrated_tests/Antarctica/results/
-
mpirun -n 2 UFEMISM_program automated_testing/integrated_tests/realistic/Antarctica/initialisation/Ant_init_20kyr_invBMB_invfric_40km/config.cfgThis will perform a pan-Antarctic spinup with inverted basal mass balance - Check output in automated_testing/integrated_tests/realistic/Antarctica/initialisation/Ant_init_20kyr_invBMB_invfric_40km/results/