Built off of Gael Forget's MITgcmTools! (https://github.com/gaelforget/MITgcmTools.jl)
Documentation for the darwin3 MITgcm fortran model can be found here
DAR1 is a tool for designing and running experiments simulating the marine microbiome within a single cube of water. The biogeochemical forcing is powered by the MIT Darwin Model, and DAR1 provides a Julia interface to build, configure, and run experiments with a simple, streamlined workflow. DAR1 is composed of two main parts:
- DAR1 - Julia interface for organizing experiments and setting up parameters for model runs
MITgcm_pathvariable should point to darwin3
- darwin3 - MITgcm source code set up to include all things Darwin
DAR1_config- folder for the base configuration files for DAR1, which lives in the darwin3/verification/ folder. (DAR1_config github)
DAR1 can be run in one of two ways.
- In a docker container using the DAR1_docker image, where all dependencies are handled for you
- On your local machine, where you have to set up the environment, download dependencies, etc
- this is more time consuming, and I strongly recommend using the docker image
- instructions for local setup are below
(1) Download and install docker desktop.
- Run the docker application, which will start up the docker "daemon"
- The docker daemon must be running in order to download the DAR1 image
(2) Get the DAR1_docker image.
-
using the command line, run
docker pull birdy1123/DAR1_docker -
If you go to the "Images" tab in the docker desktop UI, you should see "birdy1123/DAR1_docker"
(3) Run a container based on the DAR1_docker image
-
using the command line, run
docker run -it birdy1123/DAR1_docker -
this runs the container in interactive mode (
-i) with terminal access (-t) -
you should see the prompt change to
root@some-number:/DAR1_docker#- if the container is already running, you can connect to it with
docker exec -it [CONTAINER_ID] bash - Note: connecting with
bashrather thanshgives you more a powerful terminal (i.e. with tab completion)
- if the container is already running, you can connect to it with
You're now ready for the beginner tutorial!
See instructions in the documentation: https://barbara42.github.io/Dar_One/build/getting_started/#Setting-up-on-local-machine
We have three main branches: main, test, and dev.
All other branches are feature branches. Once a feature has been implemented, tested, and documented you can make a pull request to merge it into the dev branch.
main is the most stable version of the code. This branch is used for the docker image.