-
Notifications
You must be signed in to change notification settings - Fork 3
Running ELM for NGEE Arctic Field Sites using OLMT
In order to be able to run ELM for the NGEE Arctic Field Sites you will need to complete ALL of the homework activities for the NGEE Arctic Modex workshop listed in the Setting up your Docker desktop wiki page.
This demo illustrates how to execute a single-pixel ELM v2 simulation at each of the four NGEE-Arctic study site (Utqiagvik, Council, Kougarok, Teller). The simulation options include the number of Accelerated Decomposition (AD) spin-up years, standard spin-up years, and finally how many transient years to run each simulation. The default is 200, 600, and 165 years, respectively. The simulations are controlled by a wrapper script that utilizes the Offline Land Model Testbed, developed and maintained by Dan Ricciuto (ricciutodm@ornl.gov). OLMT controls the creation, configuration, and execution each simulation, and at the completion of each simulation the wrapper calls the "nrcat" in the NCO library to concatenate all transient simulation years and model variables into a new output file called "ELM_output.nc". For each simulation set, we will use the "ELM_output.nc" file to analyze the model output in Jupyter-Lab notebooks.
When getting geared up to look at a suite of output variables, getting a feel for initial differences across sites, or just figuring out how changes to the model settings/ inputs/ parameters will broadly impact model output it can be extremely useful to do run a "quick" version of a simulation that only takes about 10 minutes to complete but still produces all the output variables. These output values will be somewhat reasonable but should not be considered fully trustworthy, because the shorter simulation length does not allow enough time for slower model pools (like soil organic matter) to reach a steady state, and the shorter simulation only includes a few years of the transient (historical) part of the simulation starting in 1850.
If you are wanting to do a more serious model run to generate robust model output for in depth analysis, you will need to to perform a "long" run that includes a more extensive spinup period and includes more years of post-spinup data. The longer spinup period allows model pools to reach a steady state prior to the transient (historical) part of the simulation, which is the standard for robust model simulations. The long run also includes a transient simulation that covers the historical period from the starting point of 1850 through 2015.
- To perform a quick run for a single site, you can copy and paste the following code in your terminal window
- Note that this code currently specifies a quick but short (i.e. not good for data comparison) run for the beo site (Utqiavgik)
docker run -t -i --hostname=docker --user modeluser -v elmdata:/inputdata -v elmoutput:/output fasstsimulation/elm-builds:elm_v2-for-ngee_multiarch /scripts/OLMT_docker_example.sh --site_name=beo --ad_spinup_years=20 --final_spinup_years=30 --transient_years=5
This code is broken down by color below to show what each part is doing and some of the options you can edit
-
When ELM is performing a quick run, you will see code moving through your terminal window with a few stops and starts. When the run is complete the terminal window will say the following:
-
If you want to do quick runs for a site other than beo (Utqiagvik), you need need to edit the above code to inlude one of the following:
--site_name=council
--site_name=kougarok
--site_name=teller
docker run -t -i --hostname=docker --user modeluser -v elmdata:/inputdata -v elmoutput:/output fasstsimulation/elm-builds:elm_v2-for-ngee_multiarch /scripts/OLMT_docker_example.sh --site_name=beo --ad_spinup_years=200 --final_spinup_years=600
This slightly modified version of the code is broken down by color below to show what each part is doing and highlight changes made here to make the run longer and output more robust.
- When ELM is performing a long run, you will see code moving through your terminal window with a few stops and starts. Similar to the quick run above, when the run is complete the terminal window will say:
Next you will want to look at model output from the short or long runs using Jupyter notebooks
Click here to open the tutorial on using Jupyter notebooks with ELM output (!!THIS IS DRAFT!!)