Difference between revisions of "ACCESS-ESM 1.5"

(7 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
{{Needs Update|Needs update for Gadi}}
 +
{{Stub}}
 +
This page describes the different configurations of ACCESS-ESM 1.5 currently available and how to access them.
 +
 +
ESM stands for Earth System Model. ACCESS-ESM is a coupled model with the following components:
 +
 +
{| class="wikitable"
 +
|-
 +
! Submodel !! Model !! Version !! Notes
 +
|-
 +
| Atmosphere || [[UM]] || 7.3 ||
 +
|-
 +
| Land Surface || [[CABLE]] || Part of UM ||
 +
|-
 +
| Sea Ice || CICE || ||
 +
|-
 +
| Ocean || [[MOM]] || 5 ||
 +
|-
 +
| Coupler || OASIS-MCT || 3 ||
 +
|}
  
{{Stub}}
+
__TOC__
This page describes the different configurations of ACCESS-ESM 1.5 currently available and how to access them. The description of how to run the model is available with the different configurations.
 
  
 
= Payu Experiments =
 
= Payu Experiments =
Line 9: Line 28:
 
Please contact [mailto:cws_help@nci.org.au the CMS team] if you would like a configuration that isn't currently available in payu or if you have any problems running a ACCESS-ESM 1.5 simulation with payu.
 
Please contact [mailto:cws_help@nci.org.au the CMS team] if you would like a configuration that isn't currently available in payu or if you have any problems running a ACCESS-ESM 1.5 simulation with payu.
  
== Configurations ==
+
== piControl ==
=== piControl ===
 
 
You can download the configuration by typing
 
You can download the configuration by typing
 
<syntaxhighlight lang="bash">$ git clone https://github.com/coecms/esm-pre-industrial.git
 
<syntaxhighlight lang="bash">$ git clone https://github.com/coecms/esm-pre-industrial.git
Line 19: Line 37:
 
Default configuration, based off CSIRO ksh scripts
 
Default configuration, based off CSIRO ksh scripts
  
=== PMIP4 Runs ===
+
== PMIP4 Runs ==
 
Main Page:[[ACCESS-ESM-PMIP4|ACCESS-ESM-PMIP4]]
 
Main Page:[[ACCESS-ESM-PMIP4|ACCESS-ESM-PMIP4]]
  
Line 26: Line 44:
 
Please refer to the main page to know where to download the configurations from.
 
Please refer to the main page to know where to download the configurations from.
  
==== ''Last Interglacial'' ====
+
=== ''Last Interglacial'' ===
 
Science Contacts: Nick Yeung, Laurie Menviel
 
Science Contacts: Nick Yeung, Laurie Menviel
  
 
Note: In addition to changed MMRs for certain gases, it also needs an updated UM build with different orbital parameters. This updated UM build is at
 
Note: In addition to changed MMRs for certain gases, it also needs an updated UM build with different orbital parameters. This updated UM build is at
<syntaxhighlight lang="unknown">/short/public/access-esm/payu/bin/coe/um_hg3.exe-20190412-pmip-r327
+
<syntaxhighlight lang="bash">/short/public/access-esm/payu/bin/coe/um_hg3.exe-20190412-pmip-r327
 
</syntaxhighlight>
 
</syntaxhighlight>
  
==== ''Mid-Holocene'' ====
+
=== ''Mid-Holocene'' ===
 
Science Contacts: Josephine Brown
 
Science Contacts: Josephine Brown
  
Line 40: Line 58:
  
 
= CSIRO KSH Scripts =
 
= CSIRO KSH Scripts =
There is some documentation on google drive, CMS > Coupled Models
 
 
&nbsp;
 
<syntaxhighlight lang="unknown">
 
git clone git@bitbucket.org:climate-cms/csiro-scripts.git
 
cd csiro-scripts/original/build
 
make
 
</syntaxhighlight>
 
 
Turns out I needed access to the CABLE repo, see [https://trac.nci.org.au/trac/cable/wiki/CableRegistration https://trac.nci.org.au/trac/cable/wiki/CableRegistration]
 
 
Other than that, compile worked fine.
 
 
=== Running first test ===
 
 
copy the scripts <code>PI-C2C-1p5r29*</code> from the <code>original</code> directory to a new experiment directory.
 
 
Rename the scripts with
 
 
&nbsp;
 
<syntaxhighlight lang="unknown">
 
rename PI-C2C-1p5r29 test1 PI-C2C-1p5r29*
 
</syntaxhighlight>
 
 
Make sure that the correct project is set in <code>test1</code>:
 
 
&nbsp;
 
<syntaxhighlight lang="unknown">
 
#PBS -P w35
 
</syntaxhighlight>
 
 
Change initial date and final date in <code>test1.init</code>:
 
 
&nbsp;
 
<syntaxhighlight lang="unknown">
 
#-- Initial and Final Date of the Experiment
 
iniyear=1;      finalyear=1;            typeset -Z4 iniyear  finalyear
 
inimonth=1;    finalmonth=1;          typeset -Z2 inimonth finalmonth
 
iniday=1;      finalday=5;            typeset -Z2 iniday  finalday
 
</syntaxhighlight>
 
 
Then run
 
 
&nbsp;
 
<syntaxhighlight lang="unknown">
 
qsub test1
 
</syntaxhighlight>
 
 
Link the <code>build</code> directory to the experiment directory.
 
 
==== Issues ====
 
 
The RUNID of <code>PI-C2C-1p5r29</code> was hardcoded in the script. I removed that hardcoded line and left the <code>export RUNID=`basename $PBS_O_WORKDIR`</code> in because the experiment directory has the same name as the scripts.
 
 
It didn't find the build directory in the experiment directory. I linked the build directory there.
 
 
The model failed asking for a restart dump that didn't exist. Deleting the <code>test1.date</code> file solved that.
 
 
Didn't find <code>create_rankfile.py</code> -- copied from <code>original</code> directory. (Had to delete <code>test1.date</code> again.)
 
 
I also pre-emptively linked the <code>runscripts</code> directory from <code>original</code> to my experiment directory.
 
 
== How ACCESS works ==
 
 
=== <RUNID> ===
 
 
The actual sumit script does not have an extension, and is a <code>ksh</code> script. It sets a whole lot of environment variables, most of them exported.
 
 
It then sources, if present, <code>runscripts/umprofile</code> which also sets some variables, however, many of these variables don't seem to refer to a path that exists on <code>raijin</code>. Then, again, if present, runs <code>runscripts/setglobalvars</code>, again, the contents of which seem to be outdated.
 
 
It sets a few more variables, then sources <code><RUNID>.init</code>.
 
 
Many more variable declarations, then it sources <code>UMScr_Toplevel</code>.
 
 
Finally, it sources <code><RUNID>.fin</code>
 
 
=== <RUNID>.init ===
 
 
This script is *sourced* by <code><RUNID></code>, so it's still a ksh script. It begins with a function declaration, which sets certain ancillary files depending on the year.
 
 
Then come many more variables, including:
 
 
*<code>CMIP5RUN</code>, which can be any of these: <code>picontrolv,historical,pi4xCO2,pi1pcntCO2,rcp45,rcp85,rcp26</code>.
 
*<code>nproc_ice</code> (12 currently)
 
*<code>oce_nx</code> and <code>oce_ny</code> for ocean decomposition (currently 12 and 4, respectively)
 
*<code>ntproc</code> as the total number of cores for this job (<code>UM_NPES</code> + <code>nproc_ice</code> + <code>(oce_nx * oce_ny)</code>)
 
*<code>iniyear</code>, <code>inimonth</code>, and <code>iniday</code> as the initial date of the model, which is then compressed into <code>inidate</code> (<code>YYYYMMDD</code>)
 
*<code>finalyear</code>, <code>finalmonth</code>, <code>finalday</code> as the final date of the model, compressed into <code>finaldate</code>.
 
 
Then it looks for <code><RUNID>.date</code>:
 
 
If it '''doesn't''' exist, then it assumes that it's a new run. It creates the file and dumps the initial dates in there. If the file '''does''' exist, it reads the date out of it (only last line).
 
 
It then uses <code>~access/bin/calendar_more</code> to calculate the times for this run (initial date, end date, first date of next run, et cetera).
 
 
From this, it gets, amongst other things, the <code>days_in_run</code>, which it then multiplies by 86,400 (secs per day) to get <code>runtime</code>.
 
 
Next, the script creates it work and run directories, copying files there as needed. (Apparently, for historical runs, it also needs to change the dates in the UM files, changing the reference date from the 16th of the month to the first.) This is also where it uses the function it declared at the beginning.
 
 
Finally, it makes several (currently obscure) changes to a lot of namelists, and then creates the <code>ACCESSRUNCMD</code>.
 
 
And it loads new modules, replacing others if they had been loaded before.
 
 
=== <RUNID>.fin ===
 
 
Check whether variable <code>FCODE</code> is 0 (presumably the return code of the Model run?), only then will it do anything.
 
 
It calculates the name of the restart file <code>restartfile="aiihca.da${umdate}"</code> where <code>umdate</code> has been created by <code>datetoum</code> or <code>datetoum2</code>.
 
 
Next, it moves what I think are the coupling restart files, <code>${cplrundir}/?2?.nc</code> to the archive <code>${archivedir}/restart/cpl/$resfile-${enddate}</code>
 
 
Then, it accesses <code>$atmrundir</code>: Validates the date of the restart file, moves it to <code>${archivedir}/restart/atm/${restartarch</code>} ((<code>restartarch</code> had been set to <code>"${RUNID}.astart-${nextdate}"</code>).
 
 
Next, it moves all UM output files (<code>aiihca.p*</code>) to the archive dir, renaming them in the process.
 
 
== Modifications ==
 
 
Created a new branch: <code>holger_testing</code>
 
 
=== MOM5 Version Control ===
 
 
MOM5 is under version control: <code>[https://github.com/OceansAus/ACCESS-ESM1.5-MOM5.git https://github.com/OceansAus/ACCESS-ESM1.5-MOM5.git]</code> - this was added to the <code>Makefile</code>.
 
 
=== ummodel_hg3 ===
 
 
<code>ummodel_hg3</code> was still copied from <code>/short/p66/txz599/ACCESSHOME/submodels/UM/ummodel_hg3/</code>. That directory itself is under version control, but with some non-checked-in.
 
 
=== umbase_hg3 ===
 
 
<code>umbase_hg3</code> was still copied. But there weren't any interesting changes in the directory compared the the repository. (Only <code>fcm_env.sh</code> and <code>parsed_bld.cfg</code>) So I've changed it to point to the svn repo.
 
 
=== bld-hadgem3-mct.cfg ===
 
  
The file <code>bld-hadgem3-mct.cfg</code> was missing from the <code>ummodel_hg3</code> repo. For now, I've made it part of the access-esm repo, and added a line in the <code>Makefile</code> to copy it over.
+
CSIRO is running the ACCESS-ESM model using ksh shell scripts. If you need to know, you can look [[ACCESS-ESM-CSIRO|here]].
  
= Additional information =
 
  
CSIRO documentation: [https://access-svn.nci.org.au/trac/cmip5/wiki https://access-svn.nci.org.au/trac/cmip5/wiki]
 
  
  
 
[[Category:ACCESS 1.5]] [[Category:Coupled Models]]
 
[[Category:ACCESS 1.5]] [[Category:Coupled Models]]

Revision as of 01:02, 12 December 2019

Template:Needs Update This page needs updating Needs update for Gadi
Template:Stub This is a stub page and needs expansion

This page describes the different configurations of ACCESS-ESM 1.5 currently available and how to access them.

ESM stands for Earth System Model. ACCESS-ESM is a coupled model with the following components:

Submodel Model Version Notes
Atmosphere UM 7.3
Land Surface CABLE Part of UM
Sea Ice CICE
Ocean MOM 5
Coupler OASIS-MCT 3

Payu Experiments

We strongly recommend that you run ACCESS-ESM 1.5 using the payu driver. CSIRO is running the CMIP6 submission runs using a setup based on KSH scripts. The CMS team is working to adapt those configurations to payu.

Please contact the CMS team if you would like a configuration that isn't currently available in payu or if you have any problems running a ACCESS-ESM 1.5 simulation with payu.

piControl

You can download the configuration by typing

$ git clone https://github.com/coecms/esm-pre-industrial.git

The website of the configuration also contains detailed instructions on how to run the model.

Default configuration, based off CSIRO ksh scripts

PMIP4 Runs

Main Page:ACCESS-ESM-PMIP4

Currently contains two models from the PMIP4 setting: Last Interglacial and Mid-Holocene.

Please refer to the main page to know where to download the configurations from.

Last Interglacial

Science Contacts: Nick Yeung, Laurie Menviel

Note: In addition to changed MMRs for certain gases, it also needs an updated UM build with different orbital parameters. This updated UM build is at

/short/public/access-esm/payu/bin/coe/um_hg3.exe-20190412-pmip-r327

Mid-Holocene

Science Contacts: Josephine Brown

Note: In addition to changed MMRs for certain trace gasses, it also needs and updated UM build with different orbital parameters. This updated UM build is at

/short/public/access-esm/payu/bin/coe/um_hg3.exe-20190717-pmip-mh-r335

CSIRO KSH Scripts

CSIRO is running the ACCESS-ESM model using ksh shell scripts. If you need to know, you can look here.