From ef515380ba6d5acb89ddf71864bfcc60b36104d4 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Thu, 1 May 2025 13:52:25 +1000 Subject: [PATCH 01/27] added draft of access-issm configuration for alpha release --- docs/models/access-issm.md | 40 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 docs/models/access-issm.md diff --git a/docs/models/access-issm.md b/docs/models/access-issm.md new file mode 100644 index 000000000..c75956444 --- /dev/null +++ b/docs/models/access-issm.md @@ -0,0 +1,40 @@ +# ACCESS‑ISSM (ALPHA RELEASE) + +![ACCESS‑ISSM model](/assets/model-config-logos/configurations-without-titles/access-issm.png){: .img-contain .white-background .round-edges .with-padding .intro-img loading="lazy"} + +The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcings. This suite is in **alpha**: we welcome feedback and contributions via our GitHub repository. + +## Configurations & Resolutions + +ACCESS‑ISSM alpha provides **three horizontal resolutions**: + +- 20 km resolution, 20 vertical layers +- 5 km resolution, 40 vertical layers +- 1 km resolution, 60 vertical layers + +For each grid, you may choose from two surface mass‑balance forcing datasets: + +- **ERA5**: 1950–present, monthly fields +- **JRA55‑do**: 1958–2018, daily fields + +An optional **bedrock deformation** component can be enabled to simulate glacial isostatic adjustment (GIA). + +> **Warning** +> ACCESS‑ISSM is in alpha. Expect API changes and incomplete documentation. Use for testing and development only. + +### Model Components +
+ + + +
+ +- **Ice dynamics**: Full-Stokes solver (via ISSM), adaptive timestep.
+- **Surface mass balance**: ERA5 or JRA55‑do interpolation onto mesh.
+- **Basal hydrology**: Shreve channel or prescribed meltwater flux.
+- **Ice–ocean coupling** (optional): parameterized sub‑ice‑shelf melt.
+- **Bedrock deformation** (optional): elastic lithosphere + viscous mantle GIA. + +More details, examples and forcing files are available on the [ACCESS‑ISSM GitHub](https://github.com/ACCESS-NRI/access-issm). + +[Run ACCESS‑ISSM](/models/run-a-model/run-access-issm){: .text-card } \ No newline at end of file From 2114ed4a821398eb8bff07020f0117577f5a94b6 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Tue, 6 May 2025 15:37:55 +1000 Subject: [PATCH 02/27] added index.md modification to include access-issm --- docs/models/configurations/index.md | 61 +++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 docs/models/configurations/index.md diff --git a/docs/models/configurations/index.md b/docs/models/configurations/index.md new file mode 100644 index 000000000..fde1b0a65 --- /dev/null +++ b/docs/models/configurations/index.md @@ -0,0 +1,61 @@ + + \ No newline at end of file From 50008ec91fa4d331aa72f38e6f2b55fe121d339d Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Tue, 6 May 2025 15:51:09 +1000 Subject: [PATCH 03/27] added run access issm markdown and indexing --- docs/models/run_a_model/index.md | 9 ++ docs/models/run_a_model/run-access-issm.md | 127 +++++++++++++++++++++ 2 files changed, 136 insertions(+) create mode 100644 docs/models/run_a_model/run-access-issm.md diff --git a/docs/models/run_a_model/index.md b/docs/models/run_a_model/index.md index 2fc9cd1fc..dde496a86 100644 --- a/docs/models/run_a_model/index.md +++ b/docs/models/run_a_model/index.md @@ -49,4 +49,13 @@ If you are unsure which ACCESS model is the best fit for your application, you c Run ACCESS-rAM + + +
+ ACCESS-ISSM +
+
+ Run ACCESS-ISSM +
+
\ No newline at end of file diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md new file mode 100644 index 000000000..f1177645c --- /dev/null +++ b/docs/models/run_a_model/run-access-issm.md @@ -0,0 +1,127 @@ +{% set model = "ACCESS-ISSM" %} +{% set pps_id = "u-ppppp" %} {# Pre‑Processing Suite ID (placeholder) #} +{% set run_id = "u-rrrrr" %} {# Main Run Suite ID (placeholder) #} +{% set branch = "access_rel_1" %} +{% set pps_config = "https://code.metoffice.gov.uk/trac/roses-u/browser/p/p/p/p/p/trunk" %} +{% set run_config = "https://code.metoffice.gov.uk/trac/roses-u/browser/r/r/r/r/r/trunk" %} +{% set model_configurations = "/models/configurations/access-issm" %} +{% set release_notes = "https://forum.access-hive.org.au/t/access-issm-release-information/XXXX" %} +[PBS job]: https://opus.nci.org.au/display/Help/4.+PBS+Jobs +[model components]: {{ model_configurations }}/#model-components +[gadi]: https://opus.nci.org.au/display/Help/0.+Welcome+to+Gadi#id-0.WelcometoGadi-Overview +[default project]: /getting_started/set_up_nci_account#change-default-project-on-gadi + +
+ +[![Met Office](/assets/met_office_logo.png){: class="icon-before-text white-background"} Pre‑processing configuration]({{pps_config}}){: class="text-card"} +[![Met Office](/assets/met_office_logo.png){: class="icon-before-text white-background"} Run configuration]({{run_config}}){: class="text-card"} +[:notepad_spiral:{: class="twemoji icon-before-text"} Release notes]({{release_notes}}){: class="text-card"} +
+ +# Run {{ model }} + +## About + +{{ model }} couples the **Ice Sheet System Model (ISSM)** to the ACCESS infrastructure, allowing fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. +It is maintained and supported by **ACCESS‑NRI**. +A high‑level description of model components, including the ISSM core, preprocessing utilities, climate forcings and coupling hooks, is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). + +A typical workflow is split into two Rose/Cylc suites: + +* **Pre‑Processing Suite (PPS)** – meshes the domain, downloads & interpolates datasets, and writes ISSM‐ready NetCDF/HDF5 input files. +* **Run Suite (RUN)** – compiles ISSM if necessary and executes the transient simulation, handling restart cycles and post‑processing. + +The example below reproduces the *MISMIP+* Antarctic benchmark. Adapt the variables to your experiment as needed. + +All configurations are hosted on MOSRS; direct links are provided above. + +## Prerequisites + +* **NCI account & Gadi access** – see [Set Up your NCI Account](/getting_started/set_up_nci_account). +* **MOSRS account** – request via your institutional sponsor if you do not already have one. +* **Project membership** – minimum projects: + * [access](https://my.nci.org.au/mancini/project/access/join) + * [ki32](https://my.nci.org.au/mancini/project/ki32/join) / [ki32_mosrs](https://my.nci.org.au/mancini/project/ki32_mosrs/join) + * [vk83](https://my.nci.org.au/mancini/project/vk83/join) (build & binary cache) +* **Rose/Cylc 7 ≥ 24.03** modules (loaded below). +* Optional: [ARE VDI Desktop](/getting_started/are). + +## Quick‑start + +```bash +# 1. (Optional) launch an ARE VDI or login to Gadi + +# 2. Start a persistent session (replace ) +persistent-sessions start + +# 3. Register the session for Cylc +echo ".${USER}..ps.gadi.nci.org.au" > ~/.persistent-sessions/cylc-session + +# 4. Load Rose/Cylc and MOSRS helpers +module use /g/data/hr22/modulefiles +module load cylc7 # pulls in mosrs-setup +mosrs-auth # enter MOSRS credentials + +# 5. Check out the ISSM suites (edit branch/IDs if needed) +rosie checkout {{ pps_id }}/{{ branch }} # Pre‑processing +rosie checkout {{ run_id }}/{{ branch }} # Model run + +# 6. Run suites +cd ~/roses/{{ pps_id }} && rose suite-run # generates inputs +# after PPS succeeds, run ISSM +cd ~/roses/{{ run_id }} && rose suite-run +``` + +For GUI monitoring use `rose suite-gcontrol &` from each suite directory. + +## Detailed guide + +### Persistent sessions +(identical to ACCESS‑rAM guide – omitted for brevity) + +### Rose/Cylc/MOSRS setup +(as above) + +### {{ model }} configuration + +Key configurable groups (edit via **`rose edit`**): + +| Suite | Section | Purpose | +|-------|---------|---------| +| **PPS** | `Domain setup` | Projection, bounds, resolution, MUA/SSA blend law, etc. | +| | `Datasets` | Surface mass‑balance, basal friction, geothermal heat, geometry DEMs | +| **RUN** | `Time‑stepping` | `INITIAL_CYCLE_POINT`, `FINAL_CYCLE_POINT`, ∆t, adaptive settings | +| | `Physics options` | Flow law, calving, melting parameterisations | +| | `Resources` | MPI tasks, OpenMP threads, walltime | + +After editing, **reload** a running suite with `rose suite-run --reload`. + +### Output locations + +* **PPS products** – `/scratch/$PROJECT/$USER/cylc-run//share/inputs/` (meshes, datasets). +* **ISSM outputs** – `/scratch/$PROJECT/$USER/cylc-run//share/cycle///results/`. + NetCDF visualisation files (`*.nc`) and checkpoint dumps (`*.bin`) are produced each cycle. + +### Common modifications + +* **Change experiment length** – edit `INITIAL_CYCLE_POINT` / `FINAL_CYCLE_POINT` in Run suite. +* **Switch domain (Antarctica vs Greenland)** – change geometry DEM & mask in the PPS, update domain meta in RUN. +* **Enable coupling to ACCESS‑OM3** – set `coupler=true` and supply ocean forcing path. + +### Troubleshooting + +* **NaNs in solver residual** – try smaller time‑step (`dt`), or increase Picard iterations in `StressbalanceAnalysis`. +* **PETSc convergence error** – ensure `md.stressbalance.reltol` not `NaN`; hardware‑specific builds of PETSc ≥ 3.20 via Spack recommended. +* **Suite hangs in submitted** – mark failed, set waiting, or `rose suite-run --reload`. + +## Get help + +Ask questions in the [ACCESS‑ISSM category](https://forum.access-hive.org.au/c/cryosphere/access-issm/???) on ACCESS‑Hive, or email **support@access‑nri.org.au** with suite ID and log excerpt. + +--- + + +- ISSM User Guide: https://issm.jpl.nasa.gov/documentation +- ACCESS‑NRI ISSM build recipe: https://github.com/ACCESS-NRI/access-issm +- NCI Cylc docs: https://opus.nci.org.au/display/DAE/Run+Cylc7+Suites + \ No newline at end of file From e216f996f62fb4911e4e164e51f6cc5ac3a0536e Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Tue, 6 May 2025 15:51:56 +1000 Subject: [PATCH 04/27] added navigation for issm --- .../models/{ => access_models}/access-issm.md | 0 docs/models/configurations/index.md | 61 ------------------- mkdocs.yml | 16 +++++ 3 files changed, 16 insertions(+), 61 deletions(-) rename docs/models/{ => access_models}/access-issm.md (100%) delete mode 100644 docs/models/configurations/index.md diff --git a/docs/models/access-issm.md b/docs/models/access_models/access-issm.md similarity index 100% rename from docs/models/access-issm.md rename to docs/models/access_models/access-issm.md diff --git a/docs/models/configurations/index.md b/docs/models/configurations/index.md deleted file mode 100644 index fde1b0a65..000000000 --- a/docs/models/configurations/index.md +++ /dev/null @@ -1,61 +0,0 @@ - - \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index 7c734af8e..8a5dd4c62 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -111,6 +111,7 @@ nav: - ACCESS-ESM: models/access_models/access-esm.md - ACCESS-OM: models/access_models/access-om.md - ACCESS-rAM: models/access_models/access-ram.md + - ACCESS-ISSM: models/access_models/access-issm.md - Model Components: - models/model_components/index.md - Atmosphere: models/model_components/atmosphere.md @@ -121,6 +122,7 @@ nav: - Biogeochemistry Land: models/model_components/bgc_land.md - Biogeochemistry Ocean: models/model_components/bgc_ocean.md - Coupler: models/model_components/coupler.md +<<<<<<< HEAD - Run a Model: - models/run_a_model/index.md - Run ACCESS-CM2: models/run_a_model/run_access-cm2.md @@ -132,6 +134,20 @@ nav: - models/build_a_model/index.md - Modify and build an ACCESS model's source code: models/build_a_model/build_source_code.md - Create Prereleases and Releases for an ACCESS Model: models/build_a_model/create_a_prerelease.md +======= + + - Run a Model: + - models/run-a-model/index.md + # - Run ACCESS-AM: models/run-a-model/run-access-am.md + - Run ACCESS-CM2: models/run-a-model/run-access-cm2.md + - Run ACCESS-ESM: models/run-a-model/run-access-esm.md + - Run ACCESS-OM2: models/run-a-model/run-access-om2.md + - Run ACCESS-OM3: models/run-a-model/run-access-om3.md + - Run ACCESS-rAM: models/run-a-model/run-access-ram.md + - Run ACCESS-ISSM: models/run-a-model/run-access-issm.md + - Modify and build an ACCESS model's source code: models/run-a-model/build_a_model.md + - Create Prereleases and Releases for an ACCESS Model: models/run-a-model/create-a-prerelease.md +>>>>>>> 0af0488e (added navigation for issm) - Data and Model Evaluation: - model_evaluation/index.md From 07353361f41c682ea364188ba69bdddd1cd12447 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 2 Jul 2025 12:01:31 +1000 Subject: [PATCH 05/27] updates to run a model --- docs/models/run_a_model/run-access-issm.md | 125 +++++++++++---------- 1 file changed, 66 insertions(+), 59 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index f1177645c..730a3901b 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -2,36 +2,30 @@ {% set pps_id = "u-ppppp" %} {# Pre‑Processing Suite ID (placeholder) #} {% set run_id = "u-rrrrr" %} {# Main Run Suite ID (placeholder) #} {% set branch = "access_rel_1" %} -{% set pps_config = "https://code.metoffice.gov.uk/trac/roses-u/browser/p/p/p/p/p/trunk" %} -{% set run_config = "https://code.metoffice.gov.uk/trac/roses-u/browser/r/r/r/r/r/trunk" %} +{% set pps_config = "https://github.com/ACCESS-NRI/access-issm/tree/main/pps" %} +{% set run_config = "https://github.com/ACCESS-NRI/access-issm/tree/main/run" %} {% set model_configurations = "/models/configurations/access-issm" %} {% set release_notes = "https://forum.access-hive.org.au/t/access-issm-release-information/XXXX" %} -[PBS job]: https://opus.nci.org.au/display/Help/4.+PBS+Jobs +[Cluster job guide]: https://opus.nci.org.au/display/Help/4.+PBS+Jobs [model components]: {{ model_configurations }}/#model-components [gadi]: https://opus.nci.org.au/display/Help/0.+Welcome+to+Gadi#id-0.WelcometoGadi-Overview [default project]: /getting_started/set_up_nci_account#change-default-project-on-gadi -
- -[![Met Office](/assets/met_office_logo.png){: class="icon-before-text white-background"} Pre‑processing configuration]({{pps_config}}){: class="text-card"} -[![Met Office](/assets/met_office_logo.png){: class="icon-before-text white-background"} Run configuration]({{run_config}}){: class="text-card"} -[:notepad_spiral:{: class="twemoji icon-before-text"} Release notes]({{release_notes}}){: class="text-card"} -
- # Run {{ model }} ## About -{{ model }} couples the **Ice Sheet System Model (ISSM)** to the ACCESS infrastructure, allowing fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. -It is maintained and supported by **ACCESS‑NRI**. -A high‑level description of model components, including the ISSM core, preprocessing utilities, climate forcings and coupling hooks, is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). +{{ model }} couples the **Ice Sheet System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. + +It is maintained and supported by **ACCESS‑NRI**. +A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). -A typical workflow is split into two Rose/Cylc suites: +A typical workflow is split into two suites: -* **Pre‑Processing Suite (PPS)** – meshes the domain, downloads & interpolates datasets, and writes ISSM‐ready NetCDF/HDF5 input files. -* **Run Suite (RUN)** – compiles ISSM if necessary and executes the transient simulation, handling restart cycles and post‑processing. +* **Pre‑Processing Suite (PPS)** – meshes the domain, downloads & interpolates datasets, and creates ISSM‑ready NetCDF/HDF5 input files. +* **Run Suite (RUN)** – compiles the ISSM code (if needed) and executes the transient simulation, handling restart cycles and post‑processing. -The example below reproduces the *MISMIP+* Antarctic benchmark. Adapt the variables to your experiment as needed. +The example below reproduces the *MISMIP+* Antarctic benchmark. Adjust the variables to suit your experiment. All configurations are hosted on MOSRS; direct links are provided above. @@ -43,7 +37,7 @@ All configurations are hosted on MOSRS; direct links are provided above. * [access](https://my.nci.org.au/mancini/project/access/join) * [ki32](https://my.nci.org.au/mancini/project/ki32/join) / [ki32_mosrs](https://my.nci.org.au/mancini/project/ki32_mosrs/join) * [vk83](https://my.nci.org.au/mancini/project/vk83/join) (build & binary cache) -* **Rose/Cylc 7 ≥ 24.03** modules (loaded below). +* **Modules for Cylc 7 and dependencies** – load these as needed. * Optional: [ARE VDI Desktop](/getting_started/are). ## Quick‑start @@ -51,72 +45,85 @@ All configurations are hosted on MOSRS; direct links are provided above. ```bash # 1. (Optional) launch an ARE VDI or login to Gadi -# 2. Start a persistent session (replace ) +# 2. Start a persistent session (replace with your session name) persistent-sessions start -# 3. Register the session for Cylc +# 3. Register the session for job submission (adjust hostname as needed) echo ".${USER}..ps.gadi.nci.org.au" > ~/.persistent-sessions/cylc-session -# 4. Load Rose/Cylc and MOSRS helpers +# 4. Load required modules (e.g., for Python, MPI, etc.) module use /g/data/hr22/modulefiles -module load cylc7 # pulls in mosrs-setup -mosrs-auth # enter MOSRS credentials - -# 5. Check out the ISSM suites (edit branch/IDs if needed) -rosie checkout {{ pps_id }}/{{ branch }} # Pre‑processing -rosie checkout {{ run_id }}/{{ branch }} # Model run - -# 6. Run suites -cd ~/roses/{{ pps_id }} && rose suite-run # generates inputs -# after PPS succeeds, run ISSM -cd ~/roses/{{ run_id }} && rose suite-run +module load cylc7 +module load python/3.9 # or your preferred Python module + +# 5. Authenticate with MOSRS (if required) +mosrs-auth + +# 6. Check out the ISSM suites (edit branch/IDs if needed) +git clone --branch {{ branch }} https://github.com/ACCESS-NRI/access-issm.git +# Copy or link the PPS and RUN configurations into separate directories: +mkdir ~/access-issm-pps +mkdir ~/access-issm-run +cp -r access-issm/pps/* ~/access-issm-pps/ +cp -r access-issm/run/* ~/access-issm-run/ + +# 7. Run the Pre‑Processing Suite (PPS) +cd ~/access-issm-pps +./run_pps.sh # Use the provided script or your own batch submission script. + +# 8. Once PPS completes successfully, run the Run Suite (RUN) +cd ~/access-issm-run +./run_model.sh # This submits the ISSM simulation. ``` -For GUI monitoring use `rose suite-gcontrol &` from each suite directory. +For monitoring job progress, you can use standard NCI commands (e.g., `qstat`, `squeue`) depending on your scheduler and check log files in your working directories. ## Detailed guide ### Persistent sessions -(identical to ACCESS‑rAM guide – omitted for brevity) -### Rose/Cylc/MOSRS setup -(as above) +Use persistent sessions to reserve compute nodes. This prevents requeueing and improves interactive performance. Instructions vary slightly based on whether you’re using PBS, SLURM, or another scheduler—refer to the NCI documentation. -### {{ model }} configuration +### Job submission + +The PPS and RUN suites now come with simplified submission scripts (e.g., `run_pps.sh` and `run_model.sh`) that do not require Rose. These scripts: +- Set up the environment (load modules, source configuration files). +- Launch Python or compiled ISSM executables. +- Monitor execution and save outputs to NetCDF or binary files. -Key configurable groups (edit via **`rose edit`**): +### {{ model }} configuration -| Suite | Section | Purpose | -|-------|---------|---------| -| **PPS** | `Domain setup` | Projection, bounds, resolution, MUA/SSA blend law, etc. | -| | `Datasets` | Surface mass‑balance, basal friction, geothermal heat, geometry DEMs | -| **RUN** | `Time‑stepping` | `INITIAL_CYCLE_POINT`, `FINAL_CYCLE_POINT`, ∆t, adaptive settings | -| | `Physics options` | Flow law, calving, melting parameterisations | -| | `Resources` | MPI tasks, OpenMP threads, walltime | +Key configurable groups (edit the configuration files as needed): + +| Suite | Section | Purpose | +|-------|--------------------|----------------------------------------------------------------------| +| **PPS** | Domain setup | Projection, bounds, resolution, MUA/SSA blend law, etc. | +| | Datasets | Surface mass balance, basal friction, geothermal heat, geometry DEMs | +| **RUN** | Time-stepping | `INITIAL_CYCLE_POINT`, `FINAL_CYCLE_POINT`, dt, adaptive settings | +| | Physics options | Flow law, calving, melting parameterisations | +| | Resources | MPI tasks, OpenMP threads, walltime | -After editing, **reload** a running suite with `rose suite-run --reload`. +After editing configurations, simply re-run the corresponding suite’s script. ### Output locations -* **PPS products** – `/scratch/$PROJECT/$USER/cylc-run//share/inputs/` (meshes, datasets). -* **ISSM outputs** – `/scratch/$PROJECT/$USER/cylc-run//share/cycle///results/`. - NetCDF visualisation files (`*.nc`) and checkpoint dumps (`*.bin`) are produced each cycle. - -### Common modifications +* **PPS products** – typically located at + `/scratch/$PROJECT/$USER/access-issm-pps/inputs/` + (meshes, datasets, etc.). -* **Change experiment length** – edit `INITIAL_CYCLE_POINT` / `FINAL_CYCLE_POINT` in Run suite. -* **Switch domain (Antarctica vs Greenland)** – change geometry DEM & mask in the PPS, update domain meta in RUN. -* **Enable coupling to ACCESS‑OM3** – set `coupler=true` and supply ocean forcing path. +* **ISSM outputs** – typically located at + `/scratch/$PROJECT/$USER/access-issm-run/results/` + (NetCDF visualisation files and checkpoint dumps). -### Troubleshooting +## Troubleshooting -* **NaNs in solver residual** – try smaller time‑step (`dt`), or increase Picard iterations in `StressbalanceAnalysis`. -* **PETSc convergence error** – ensure `md.stressbalance.reltol` not `NaN`; hardware‑specific builds of PETSc ≥ 3.20 via Spack recommended. -* **Suite hangs in submitted** – mark failed, set waiting, or `rose suite-run --reload`. +* **NaNs in solver residuals** – try a smaller time‑step (`dt`) or increase the number of Picard iterations in the StressbalanceAnalysis. +* **PETSc convergence errors** – confirm that `md.stressbalance.reltol` is properly set and not `NaN`; consider using hardware‑specific builds of PETSc ≥ 3.20. +* **Job submission hangs** – check the log files for errors, verify that your module paths and environment variables (e.g., ISSM_DIR) are correctly set, and ensure proper resource allocation in your job scripts. ## Get help -Ask questions in the [ACCESS‑ISSM category](https://forum.access-hive.org.au/c/cryosphere/access-issm/???) on ACCESS‑Hive, or email **support@access‑nri.org.au** with suite ID and log excerpt. +Ask questions in the [ACCESS‑ISSM category](https://forum.access-hive.org.au/c/cryosphere/access-issm/) on ACCESS‑Hive, or email **support@access‑nri.org.au** with your suite ID and a log excerpt. --- From 825547651ad510a97f4a4bbafe8d9ddf92d70835 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 2 Jul 2025 12:24:53 +1000 Subject: [PATCH 06/27] removed mosrs mentions --- docs/models/run_a_model/run-access-issm.md | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 730a3901b..6b5d21157 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -32,10 +32,8 @@ All configurations are hosted on MOSRS; direct links are provided above. ## Prerequisites * **NCI account & Gadi access** – see [Set Up your NCI Account](/getting_started/set_up_nci_account). -* **MOSRS account** – request via your institutional sponsor if you do not already have one. * **Project membership** – minimum projects: * [access](https://my.nci.org.au/mancini/project/access/join) - * [ki32](https://my.nci.org.au/mancini/project/ki32/join) / [ki32_mosrs](https://my.nci.org.au/mancini/project/ki32_mosrs/join) * [vk83](https://my.nci.org.au/mancini/project/vk83/join) (build & binary cache) * **Modules for Cylc 7 and dependencies** – load these as needed. * Optional: [ARE VDI Desktop](/getting_started/are). @@ -56,10 +54,7 @@ module use /g/data/hr22/modulefiles module load cylc7 module load python/3.9 # or your preferred Python module -# 5. Authenticate with MOSRS (if required) -mosrs-auth - -# 6. Check out the ISSM suites (edit branch/IDs if needed) +# 5. Check out the ISSM suites (edit branch/IDs if needed) git clone --branch {{ branch }} https://github.com/ACCESS-NRI/access-issm.git # Copy or link the PPS and RUN configurations into separate directories: mkdir ~/access-issm-pps @@ -67,11 +62,11 @@ mkdir ~/access-issm-run cp -r access-issm/pps/* ~/access-issm-pps/ cp -r access-issm/run/* ~/access-issm-run/ -# 7. Run the Pre‑Processing Suite (PPS) +# 6. Run the Pre‑Processing Suite (PPS) cd ~/access-issm-pps ./run_pps.sh # Use the provided script or your own batch submission script. -# 8. Once PPS completes successfully, run the Run Suite (RUN) +# 7. Once PPS completes successfully, run the Run Suite (RUN) cd ~/access-issm-run ./run_model.sh # This submits the ISSM simulation. ``` From d630b5135469095ef2b32ff26a9f0d24dedaf4e4 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Fri, 11 Jul 2025 15:53:10 +1000 Subject: [PATCH 07/27] minor fixes --- docs/models/run_a_model/run-access-issm.md | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 6b5d21157..ae19da4cc 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -27,8 +27,6 @@ A typical workflow is split into two suites: The example below reproduces the *MISMIP+* Antarctic benchmark. Adjust the variables to suit your experiment. -All configurations are hosted on MOSRS; direct links are provided above. - ## Prerequisites * **NCI account & Gadi access** – see [Set Up your NCI Account](/getting_started/set_up_nci_account). @@ -81,7 +79,7 @@ Use persistent sessions to reserve compute nodes. This prevents requeueing and i ### Job submission -The PPS and RUN suites now come with simplified submission scripts (e.g., `run_pps.sh` and `run_model.sh`) that do not require Rose. These scripts: +The PPS and RUN suites now come with simplified submission scripts (e.g., `run_pps.sh` and `run_model.sh`). These scripts: - Set up the environment (load modules, source configuration files). - Launch Python or compiled ISSM executables. - Monitor execution and save outputs to NetCDF or binary files. From 97111411ab13769c228f0ced69c94eeb66fb39eb Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Mon, 14 Jul 2025 15:39:13 +1000 Subject: [PATCH 08/27] mismip driver details --- docs/models/access_models/access-issm.md | 59 +++++++++++++++--------- 1 file changed, 38 insertions(+), 21 deletions(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index c75956444..a675fc664 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -6,35 +6,52 @@ The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑shee ## Configurations & Resolutions -ACCESS‑ISSM alpha provides **three horizontal resolutions**: +ACCESS‑ISSM alpha provides the **MISMIP suite** which reproduces the Marine Ice‑Sheet Model Intercomparison Project benchmark in ACCESS‑ISSM. It is intended for code regression tests, parameter experiments and numerical‑scheme development -- 20 km resolution, 20 vertical layers -- 5 km resolution, 40 vertical layers -- 1 km resolution, 60 vertical layers +### 1.1 Domain & Physics -For each grid, you may choose from two surface mass‑balance forcing datasets: +- **Geometry**: 800 km × 80 km Cartesian slab; flat bed at –1500 m; ocean at the downstream end. +- **Boundary conditions**: Marine ice sheet with grounding line migration; zero inflow at upstream wall; periodic lateral boundaries (y‑direction). +- **Flow law**: Glen’s \(n = 3\) unless stated otherwise. +- **Thermodynamics**: Isothermal (268 K) in the benchmark script. +- **Available solvers**: + - **SSA**: default transient spin‑up. + - **HO / FS**: optional higher‑order checks (after 3‑D extrusion). -- **ERA5**: 1950–present, monthly fields -- **JRA55‑do**: 1958–2018, daily fields +### 1.2 Mesh Options -An optional **bedrock deformation** component can be enabled to simulate glacial isostatic adjustment (GIA). +| Nominal Δx (m) | Label in driver | Typical vertex count | Use‑case | +| -------------- | -------------------------------- | -------------------- | ------------------------- | +| 2000 | `2km_viscous` or `2km_coulomb` |  ≈ 160 × 16 k | Fast test runs | +| 1000 | `1km_viscous` or `1km_coulomb` |  ≈ 320 × 32 k | Standard benchmark | +| 500 | `500m_viscous` or `500m_coulomb` |  ≈ 640 × 64 k | Convergence studies | +| 200 | `200m_viscous` or `200m_coulomb` |  ≈ 1600 × 160 k | High‑resolution reference | +**Basal friction law** options: + +- **Viscous** (power‑law, \(m = 3\)): `*_viscous` labels. +- **Coulomb** (plastic till): `*_coulomb` labels, using \(\tau\_b = C_0 + C\_c |\sigma\_n|\). + +### 1.3 Workflow Steps + +The driver script (see `mismip_driver.py`) is orchestrated by an *organizer* object. Key stages: + +1. **Mesh\_generation** → BAMG generates unstructured triangular mesh at chosen resolution. +2. **Parameterization** → masks & initial geometry via `Mismip.py`. +3. **Transient\_Steadystate** → 200 kyr relaxation with SSA. +4. *(optional)* **Transient\_extrude** → extrude to 3‑D and switch to HO. +5. **GlenSSA / GlenMOLHO / GlenHO** → Glen‐law transient experiments. +6. **ESTARSSA / ESTARHO** → dual‐E (star) rheology experiments. +7. **analyse** → automatic velocity‑field comparison and summary plots. + +To **run only the first comparison plot** on Gadi, adapt the example job script below (full listing in docs): + +```bash +qsub run_mismip_first.sh # runs steps 1–7 and stops +``` > **Warning** > ACCESS‑ISSM is in alpha. Expect API changes and incomplete documentation. Use for testing and development only. -### Model Components -
- - - -
- -- **Ice dynamics**: Full-Stokes solver (via ISSM), adaptive timestep.
-- **Surface mass balance**: ERA5 or JRA55‑do interpolation onto mesh.
-- **Basal hydrology**: Shreve channel or prescribed meltwater flux.
-- **Ice–ocean coupling** (optional): parameterized sub‑ice‑shelf melt.
-- **Bedrock deformation** (optional): elastic lithosphere + viscous mantle GIA. - More details, examples and forcing files are available on the [ACCESS‑ISSM GitHub](https://github.com/ACCESS-NRI/access-issm). [Run ACCESS‑ISSM](/models/run-a-model/run-access-issm){: .text-card } \ No newline at end of file From ce160b2589a7bc8354e2befb79f0f5fb61aea4e8 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Mon, 14 Jul 2025 16:13:55 +1000 Subject: [PATCH 09/27] full changes to run a modle --- docs/models/run_a_model/run-access-issm.md | 127 +++++++++++---------- 1 file changed, 64 insertions(+), 63 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index ae19da4cc..c8b376105 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -13,76 +13,87 @@ # Run {{ model }} -## About +## 1 About {{ model }} couples the **Ice Sheet System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. It is maintained and supported by **ACCESS‑NRI**. -A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). - -A typical workflow is split into two suites: - -* **Pre‑Processing Suite (PPS)** – meshes the domain, downloads & interpolates datasets, and creates ISSM‑ready NetCDF/HDF5 input files. -* **Run Suite (RUN)** – compiles the ISSM code (if needed) and executes the transient simulation, handling restart cycles and post‑processing. +A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}).ng. The example below reproduces the *MISMIP+* Antarctic benchmark. Adjust the variables to suit your experiment. -## Prerequisites +## 2 Prerequisites + +1. **NCI login + Gadi project** – request `access` and `vk83` memberships if you do not already have them. +2. **Spack ISSM environment** – follow the build recipe in [https://github.com/ACCESS-NRI/access-issm](https://github.com/ACCESS-NRI/access-issm). You should end up with `ISSM_DIR` and a Spack `issm-env`. +3. **Modules** – at minimum: + ```bash + module load python3/3.10.4 # matches the version used for ISSM Python API + module load git + ``` -* **NCI account & Gadi access** – see [Set Up your NCI Account](/getting_started/set_up_nci_account). -* **Project membership** – minimum projects: - * [access](https://my.nci.org.au/mancini/project/access/join) - * [vk83](https://my.nci.org.au/mancini/project/vk83/join) (build & binary cache) -* **Modules for Cylc 7 and dependencies** – load these as needed. -* Optional: [ARE VDI Desktop](/getting_started/are). +--- -## Quick‑start +## 3  Quick‑start (Gadi login node) ```bash -# 1. (Optional) launch an ARE VDI or login to Gadi - -# 2. Start a persistent session (replace with your session name) -persistent-sessions start - -# 3. Register the session for job submission (adjust hostname as needed) -echo ".${USER}..ps.gadi.nci.org.au" > ~/.persistent-sessions/cylc-session - -# 4. Load required modules (e.g., for Python, MPI, etc.) -module use /g/data/hr22/modulefiles -module load cylc7 -module load python/3.9 # or your preferred Python module - -# 5. Check out the ISSM suites (edit branch/IDs if needed) -git clone --branch {{ branch }} https://github.com/ACCESS-NRI/access-issm.git -# Copy or link the PPS and RUN configurations into separate directories: -mkdir ~/access-issm-pps -mkdir ~/access-issm-run -cp -r access-issm/pps/* ~/access-issm-pps/ -cp -r access-issm/run/* ~/access-issm-run/ - -# 6. Run the Pre‑Processing Suite (PPS) -cd ~/access-issm-pps -./run_pps.sh # Use the provided script or your own batch submission script. - -# 7. Once PPS completes successfully, run the Run Suite (RUN) -cd ~/access-issm-run -./run_model.sh # This submits the ISSM simulation. +# 0. Choose a working directory for this test +$ mkdir -p ~/experiments/mismip && cd ~/experiments/mismip + +# 1. Clone the ACCESS‑ISSM repository (alpha branch) +$ git clone --branch access_rel_1 \ + https://github.com/ACCESS-NRI/access-issm.git + +# 2. Activate ISSM Spack environment and point ISSM_DIR +$ source /g/data/au88/$USER/spack/share/spack/setup-env.sh +$ spack env activate issm-env +$ export ISSM_DIR=$(spack location -i issm) + +# 3. Pre‑process (mesh + inputs) +$ cp access-issm/examples/mismip/run_pps.sh ./ +$ qsub run_pps.sh # or `bash run_pps.sh` inside a pInteractive job + +# 4. When PPS finishes, run the first experiment bundle +$ cp access-issm/examples/mismip/run_mismip_first.sh ./ +$ qsub run_mismip_first.sh # generates SSA vs ESTAR comparison plot ``` -For monitoring job progress, you can use standard NCI commands (e.g., `qstat`, `squeue`) depending on your scheduler and check log files in your working directories. +Outputs: -## Detailed guide +- Mesh + forcing NetCDF/HDF5 → `scratch/$PROJECT/$USER/mismip_pps/inputs/` +- ISSM state & plots → `scratch/$PROJECT/$USER/mismip_run/Models_*/*` -### Persistent sessions +--- -Use persistent sessions to reserve compute nodes. This prevents requeueing and improves interactive performance. Instructions vary slightly based on whether you’re using PBS, SLURM, or another scheduler—refer to the NCI documentation. +## 4  File structure -### Job submission +``` +experiments/mismip/ +├── access-issm/ # git clone (alpha branch) +│ └── examples/mismip/ +│ ├── mismip_driver.py # full driver script (all steps) +│ ├── run_pps.sh # helper: submits PPS job +│ └── run_mismip_first.sh # helper: submits early RUN job (steps 1‑7) +├── run_pps.sh # copied helper – edit walltime/resources here +└── run_mismip_first.sh # copied helper – edit nodes/time as needed +``` +--- + +## 5  Editing job scripts + +Both helper scripts are standard PBS batch files. Typical tweaks: + +| Directive | Default | Change when… | +| ------------------ | ---------- | ------------------------------------------------------------------ | +| `#PBS -P` | `au88` | Running under a different project code | +| `#PBS -l ncpus` | `32` | Mesh resolution < 1 km → reduce to 8–16 ; very high‑res → increase | +| `#PBS -l walltime` | `48:00:00` | Convergence problems: extend | + +For quick interactive debugging you can run the driver directly inside an *ARE* Desktop or `qsub -I` session: -The PPS and RUN suites now come with simplified submission scripts (e.g., `run_pps.sh` and `run_model.sh`). These scripts: -- Set up the environment (load modules, source configuration files). -- Launch Python or compiled ISSM executables. -- Monitor execution and save outputs to NetCDF or binary files. +```bash +$ python mismip_driver.py # uses default steps list +``` ### {{ model }} configuration @@ -98,17 +109,7 @@ Key configurable groups (edit the configuration files as needed): After editing configurations, simply re-run the corresponding suite’s script. -### Output locations - -* **PPS products** – typically located at - `/scratch/$PROJECT/$USER/access-issm-pps/inputs/` - (meshes, datasets, etc.). - -* **ISSM outputs** – typically located at - `/scratch/$PROJECT/$USER/access-issm-run/results/` - (NetCDF visualisation files and checkpoint dumps). - -## Troubleshooting +## 6 Troubleshooting * **NaNs in solver residuals** – try a smaller time‑step (`dt`) or increase the number of Picard iterations in the StressbalanceAnalysis. * **PETSc convergence errors** – confirm that `md.stressbalance.reltol` is properly set and not `NaN`; consider using hardware‑specific builds of PETSc ≥ 3.20. From d2dab864f59b1b7530fbcdf76ba689247a6c474a Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Mon, 14 Jul 2025 17:06:30 +1000 Subject: [PATCH 10/27] full changes to run a model vdi are --- docs/models/run_a_model/run-access-issm.md | 33 ++++++++++++++++++++-- 1 file changed, 30 insertions(+), 3 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index c8b376105..f08d0d2d7 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -65,7 +65,34 @@ Outputs: --- -## 4  File structure +## 4  Running from ARE Desktop + +> ARE provides a GUI VDI plus a terminal already SSH‑tunnelled to *gadi-login*. + +1. **Launch VDI** – open [https://are.nci.org.au](https://are.nci.org.au), choose **Gadi Desktop (x64)**, click **Launch**. +2. **Gadi Terminal** – inside the desktop, open **Gadi Remote Terminal**. +3. **Reserve nodes** (optional but recommended): + ```bash + persistent-sessions start issm + echo "issm.${USER}.au88.ps.gadi.nci.org.au" > \ + ~/.persistent-sessions/cylc-session + ``` +4. **Load env + clone** – as in Quick‑start (`module …`, `git clone …`). +5. **Pre‑process & Run** – submit the same `run_pps.sh` / `run_mismip_first.sh` with `qsub`. +6. **Monitor** – `qstat -u $USER`, or `tail -f pps.o` in a terminal; use ARE’s Paraview for quick looks. +7. **Release nodes** when finished: + ```bash + persistent-sessions stop issm + ``` + +*Tips* + +- Heavy solves **must** run on the reserved nodes, not on the VDI itself. +- VDI sessions expire after 12 h; jobs keep running. + +--- + +## 5  File structure ``` experiments/mismip/ @@ -79,7 +106,7 @@ experiments/mismip/ ``` --- -## 5  Editing job scripts +## 6  Editing job scripts Both helper scripts are standard PBS batch files. Typical tweaks: @@ -109,7 +136,7 @@ Key configurable groups (edit the configuration files as needed): After editing configurations, simply re-run the corresponding suite’s script. -## 6 Troubleshooting +## 7 Troubleshooting * **NaNs in solver residuals** – try a smaller time‑step (`dt`) or increase the number of Picard iterations in the StressbalanceAnalysis. * **PETSc convergence errors** – confirm that `md.stressbalance.reltol` is properly set and not `NaN`; consider using hardware‑specific builds of PETSc ≥ 3.20. From eb07a445a8542a4c8c46fccd3a39ad9519343c72 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Mon, 21 Jul 2025 17:23:38 +1000 Subject: [PATCH 11/27] updates --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index f08d0d2d7..fc7a97cf5 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -20,7 +20,7 @@ It is maintained and supported by **ACCESS‑NRI**. A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}).ng. -The example below reproduces the *MISMIP+* Antarctic benchmark. Adjust the variables to suit your experiment. +The example below reproduces the *MISMIP+* benchmark. Adjust the variables to suit your experiment. ## 2 Prerequisites From 08014ccdeefc7ea8d4db7b87f45988f438070115 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew <94345578+justinh2002@users.noreply.github.com> Date: Wed, 20 Aug 2025 13:38:35 +1000 Subject: [PATCH 12/27] Update docs/models/configurations/access-issm.md Co-authored-by: Davide Marchegiani --- docs/models/access_models/access-issm.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index a675fc664..cf137b1ea 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -4,9 +4,13 @@ The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcings. This suite is in **alpha**: we welcome feedback and contributions via our GitHub repository. -## Configurations & Resolutions +## Configurations +ACCESS-ISSM provides the following released configurations: -ACCESS‑ISSM alpha provides the **MISMIP suite** which reproduces the Marine Ice‑Sheet Model Intercomparison Project benchmark in ACCESS‑ISSM. It is intended for code regression tests, parameter experiments and numerical‑scheme development +- [Marine Ice-Sheet Model Intercomparison Project (MISMIP)](#mismip) + +### Marine Ice-Sheet Model Intercomparison Project (MISMIP) {: #mismip } +The _MISMIP_ configuration reproduces the Marine Ice‑Sheet Model Intercomparison Project benchmark in ACCESS‑ISSM. It is intended for code regression tests, parameter experiments and numerical‑scheme development. ### 1.1 Domain & Physics From 9909cb29ff6588e675c22befd23a6d090ba3587b Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew <94345578+justinh2002@users.noreply.github.com> Date: Wed, 20 Aug 2025 13:38:54 +1000 Subject: [PATCH 13/27] Update docs/models/run-a-model/run-access-issm.md Co-authored-by: Davide Marchegiani --- docs/models/run_a_model/run-access-issm.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index fc7a97cf5..b23c8c097 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -104,6 +104,7 @@ experiments/mismip/ ├── run_pps.sh # copied helper – edit walltime/resources here └── run_mismip_first.sh # copied helper – edit nodes/time as needed ``` + --- ## 6  Editing job scripts From 73cdc1ffe6e702e73c394e13519d61302edb725b Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew <94345578+justinh2002@users.noreply.github.com> Date: Wed, 20 Aug 2025 13:49:16 +1000 Subject: [PATCH 14/27] Update docs/models/configurations/access-issm.md Co-authored-by: Davide Marchegiani --- docs/models/access_models/access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index cf137b1ea..7bedae24c 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -2,7 +2,7 @@ ![ACCESS‑ISSM model](/assets/model-config-logos/configurations-without-titles/access-issm.png){: .img-contain .white-background .round-edges .with-padding .intro-img loading="lazy"} -The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcings. This suite is in **alpha**: we welcome feedback and contributions via our GitHub repository. +The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcing. ## Configurations ACCESS-ISSM provides the following released configurations: From 6b1aac1b997593f70ef1f5f65dbe16a333c890ce Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew <94345578+justinh2002@users.noreply.github.com> Date: Wed, 20 Aug 2025 13:55:43 +1000 Subject: [PATCH 15/27] Update docs/models/configurations/access-issm.md Co-authored-by: Davide Marchegiani --- docs/models/access_models/access-issm.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index 7bedae24c..d6e1f3efa 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -1,4 +1,9 @@ -# ACCESS‑ISSM (ALPHA RELEASE) +!!! release + This is a Beta Release. + Any model configuration and related source code mentioned in this page might change before the full release. + Limited support is currently provided for this model. Its usage is only recommended for testing by experienced users and collaborators. + +# ACCESS‑ISSM ![ACCESS‑ISSM model](/assets/model-config-logos/configurations-without-titles/access-issm.png){: .img-contain .white-background .round-edges .with-padding .intro-img loading="lazy"} From 04bfe14b27b417d299eca38e356009d935e472c8 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew <94345578+justinh2002@users.noreply.github.com> Date: Wed, 20 Aug 2025 14:42:04 +1000 Subject: [PATCH 16/27] Update docs/models/run-a-model/run-access-issm.md Co-authored-by: Davide Marchegiani --- docs/models/run_a_model/run-access-issm.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index b23c8c097..5ff90749a 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -11,6 +11,11 @@ [gadi]: https://opus.nci.org.au/display/Help/0.+Welcome+to+Gadi#id-0.WelcometoGadi-Overview [default project]: /getting_started/set_up_nci_account#change-default-project-on-gadi +!!! release + This is a Beta Release. + Any model configuration and related source code mentioned in this page might change before the full release. + Limited support is currently provided for this model. Its usage is only recommended for testing by experienced users and collaborators. + # Run {{ model }} ## 1 About From 33bfb77baff68f6ca589476518cf322d1d11d18c Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Tue, 7 Oct 2025 16:34:51 +1100 Subject: [PATCH 17/27] amend to use vk83 build --- docs/models/run_a_model/run-access-issm.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 5ff90749a..185b22b8f 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -45,16 +45,16 @@ The example below reproduces the *MISMIP+* benchmark. Adjust the variables to su # 0. Choose a working directory for this test $ mkdir -p ~/experiments/mismip && cd ~/experiments/mismip -# 1. Clone the ACCESS‑ISSM repository (alpha branch) -$ git clone --branch access_rel_1 \ +# 1. Clone the ACCESS-ISSM repository (alpha branch) +$ git clone --branch justinh2002/configuration \ https://github.com/ACCESS-NRI/access-issm.git -# 2. Activate ISSM Spack environment and point ISSM_DIR -$ source /g/data/au88/$USER/spack/share/spack/setup-env.sh -$ spack env activate issm-env -$ export ISSM_DIR=$(spack location -i issm) +# 2. Load the ACCESS-ISSM module (vk83 deployment) +$ module use /g/data/vk83/modules +$ module avail access-issm +$ module load access-issm -# 3. Pre‑process (mesh + inputs) +# 3. Pre-process (mesh + inputs) $ cp access-issm/examples/mismip/run_pps.sh ./ $ qsub run_pps.sh # or `bash run_pps.sh` inside a pInteractive job From f0ccb4816012f96e14068760dc0d5dd01f88af2f Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Tue, 7 Oct 2025 16:36:21 +1100 Subject: [PATCH 18/27] fix name --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 185b22b8f..41803c8f4 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -20,7 +20,7 @@ ## 1 About -{{ model }} couples the **Ice Sheet System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. +{{ model }} couples the **Ice Sheet Sea-Level Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. It is maintained and supported by **ACCESS‑NRI**. A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}).ng. From 38752597aff355e85a2760ed72b262e511f2d8c8 Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 8 Oct 2025 14:19:21 +1100 Subject: [PATCH 19/27] fix name --- docs/models/access_models/access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index d6e1f3efa..6e9f2c984 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -7,7 +7,7 @@ ![ACCESS‑ISSM model](/assets/model-config-logos/configurations-without-titles/access-issm.png){: .img-contain .white-background .round-edges .with-padding .intro-img loading="lazy"} -The ACCESS Ice Sheet–Shelf System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcing. +The ACCESS Ice Sheet Sea-Level Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcing. ## Configurations ACCESS-ISSM provides the following released configurations: From d3e4a48ad48177a94371cb40959b60f366cd07ec Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 8 Oct 2025 14:25:31 +1100 Subject: [PATCH 20/27] fix name --- docs/models/access_models/access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index 6e9f2c984..6f288b35f 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -7,7 +7,7 @@ ![ACCESS‑ISSM model](/assets/model-config-logos/configurations-without-titles/access-issm.png){: .img-contain .white-background .round-edges .with-padding .intro-img loading="lazy"} -The ACCESS Ice Sheet Sea-Level Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcing. +The ACCESS Ice-Sheet and Sea-Level System Model (ACCESS‑ISSM) is a global ice‑sheet and ice‑shelf model based on the [ISSM](/models/model_components/ice-sheet) framework. It supports standalone ice dynamics and optional coupling to ocean and atmospheric forcing. ## Configurations ACCESS-ISSM provides the following released configurations: From 6ffbf7b3b108e0f1e9501b5e07379f3f059fd49a Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 8 Oct 2025 14:38:28 +1100 Subject: [PATCH 21/27] amend name --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 41803c8f4..2fa808a83 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -20,7 +20,7 @@ ## 1 About -{{ model }} couples the **Ice Sheet Sea-Level Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. +{{ model }} couples the **Ice-Sheet and Sea-Level System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. It is maintained and supported by **ACCESS‑NRI**. A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}).ng. From 3597d397315e0ccc5fae5ea3df92d85f7c7721fd Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Wed, 8 Oct 2025 14:40:30 +1100 Subject: [PATCH 22/27] spelling errors --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 2fa808a83..f7df05991 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -23,7 +23,7 @@ {{ model }} couples the **Ice-Sheet and Sea-Level System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. It is maintained and supported by **ACCESS‑NRI**. -A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}).ng. +A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). The example below reproduces the *MISMIP+* benchmark. Adjust the variables to suit your experiment. From 660c578b7641ca268fbf51c049c8acd427cf677b Mon Sep 17 00:00:00 2001 From: Mike Tetley Date: Fri, 10 Oct 2025 12:15:33 +1100 Subject: [PATCH 23/27] Update run-access-issm.md - Updated ISSM description - Updated required python version - Added more information about required projects - --- docs/models/run_a_model/run-access-issm.md | 42 +++++++++++++++------- 1 file changed, 30 insertions(+), 12 deletions(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index f7df05991..49843384b 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -20,20 +20,35 @@ ## 1 About -{{ model }} couples the **Ice-Sheet and Sea-Level System Model (ISSM)** to the ACCESS infrastructure, enabling fully parallel Antarctic and Greenland ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. +{{ model }} integrates the **Ice-sheet and Sea-level System Model (ISSM)** to the ACCESS climate modelling framework, enabling fully parallel ice‑sheet simulations on the [NCI _Gadi_ supercomputer][gadi]. It is maintained and supported by **ACCESS‑NRI**. -A high‑level description of model components—including the ISSM core, pre‑processing utilities, climate forcings, and coupling hooks—is available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). +A high‑level description of model components including the ISSM core, pre‑processing utilities and forcing data are available in the [{{ model }} overview]({{ model_configurations }}/#{{ model }}). -The example below reproduces the *MISMIP+* benchmark. Adjust the variables to suit your experiment. +The example below reproduces the ISSM controbution to the third [Marine Ice Sheet Model Intercomparison Project](https://tc.copernicus.org/articles/14/2283/2020/) (MISMIP+) benchmark for ice flow models. ## 2 Prerequisites -1. **NCI login + Gadi project** – request `access` and `vk83` memberships if you do not already have them. -2. **Spack ISSM environment** – follow the build recipe in [https://github.com/ACCESS-NRI/access-issm](https://github.com/ACCESS-NRI/access-issm). You should end up with `ISSM_DIR` and a Spack `issm-env`. -3. **Modules** – at minimum: +!!! warning + To run {{ model }}, you need to be a member of a project with allocated _Service Units (SU)_. For more information, check [how to join relevant NCI projects](/getting_started/set_up_nci_account#join-relevant-nci-projects). + +- **NCI Account**
+ Before running {{ model }}, you need to [Set Up your NCI Account](/getting_started/set_up_nci_account). + +- **Join NCI projects**
+ Join the following projects by requesting membership on their respective NCI project pages: + + - [vk83](https://my.nci.org.au/mancini/project/vk83/join) + - [xp65](https://my.nci.org.au/mancini/project/xp65/join) + + For more information on joining specific NCI projects, refer to [How to connect to a project](https://opus.nci.org.au/display/Help/How+to+connect+to+a+project). + +- **Modules** + + Load the following modules: + ```bash - module load python3/3.10.4 # matches the version used for ISSM Python API + module load python3/3.9.2 #3.10.4 module load git ``` @@ -41,6 +56,8 @@ The example below reproduces the *MISMIP+* benchmark. Adjust the variables to su ## 3  Quick‑start (Gadi login node) +To run he model, a NCI project code with available compute allocation is required. + ```bash # 0. Choose a working directory for this test $ mkdir -p ~/experiments/mismip && cd ~/experiments/mismip @@ -51,12 +68,13 @@ $ git clone --branch justinh2002/configuration \ # 2. Load the ACCESS-ISSM module (vk83 deployment) $ module use /g/data/vk83/modules -$ module avail access-issm $ module load access-issm # 3. Pre-process (mesh + inputs) -$ cp access-issm/examples/mismip/run_pps.sh ./ -$ qsub run_pps.sh # or `bash run_pps.sh` inside a pInteractive job +$ cp access-issm/test/run_pps.sh ./ +$ qsub -P run_pps.sh +# Alternatively use `bash run_pps.sh` inside a pInteractive job. +# Replace "" with your active project code. # 4. When PPS finishes, run the first experiment bundle $ cp access-issm/examples/mismip/run_mismip_first.sh ./ @@ -131,7 +149,7 @@ $ python mismip_driver.py # uses default steps list ### {{ model }} configuration Key configurable groups (edit the configuration files as needed): - + | Suite | Section | Purpose | |-------|--------------------|----------------------------------------------------------------------| | **PPS** | Domain setup | Projection, bounds, resolution, MUA/SSA blend law, etc. | @@ -158,4 +176,4 @@ Ask questions in the [ACCESS‑ISSM category](https://forum.access-hive.org.au/c - ISSM User Guide: https://issm.jpl.nasa.gov/documentation - ACCESS‑NRI ISSM build recipe: https://github.com/ACCESS-NRI/access-issm - NCI Cylc docs: https://opus.nci.org.au/display/DAE/Run+Cylc7+Suites - \ No newline at end of file + From fcd2376b25c0effe56ca42498d9c03d0fa1748af Mon Sep 17 00:00:00 2001 From: Justin Kin Jun Hew Date: Fri, 10 Oct 2025 14:55:52 +1100 Subject: [PATCH 24/27] change to dev branch --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 49843384b..3e822ed6a 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -63,7 +63,7 @@ To run he model, a NCI project code with available compute allocation is require $ mkdir -p ~/experiments/mismip && cd ~/experiments/mismip # 1. Clone the ACCESS-ISSM repository (alpha branch) -$ git clone --branch justinh2002/configuration \ +$ git clone --branch development \ https://github.com/ACCESS-NRI/access-issm.git # 2. Load the ACCESS-ISSM module (vk83 deployment) From a352d142b61a80dc876b053f1ca138e916715e04 Mon Sep 17 00:00:00 2001 From: Davide Marchegiani Date: Fri, 10 Oct 2025 15:30:42 +1100 Subject: [PATCH 25/27] Fixes after rebasing to development --- docs/models/run_a_model/run-access-issm.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run-access-issm.md index 3e822ed6a..ca1e1ae22 100644 --- a/docs/models/run_a_model/run-access-issm.md +++ b/docs/models/run_a_model/run-access-issm.md @@ -4,7 +4,7 @@ {% set branch = "access_rel_1" %} {% set pps_config = "https://github.com/ACCESS-NRI/access-issm/tree/main/pps" %} {% set run_config = "https://github.com/ACCESS-NRI/access-issm/tree/main/run" %} -{% set model_configurations = "/models/configurations/access-issm" %} +{% set model_configurations = "/models/access-issm" %} {% set release_notes = "https://forum.access-hive.org.au/t/access-issm-release-information/XXXX" %} [Cluster job guide]: https://opus.nci.org.au/display/Help/4.+PBS+Jobs [model components]: {{ model_configurations }}/#model-components From 1ec0698525df843cfeb860dac15fc1f688bfc062 Mon Sep 17 00:00:00 2001 From: Davide Marchegiani Date: Fri, 31 Oct 2025 15:32:48 +1100 Subject: [PATCH 26/27] Changed filename --- docs/models/access_models/access-issm.md | 2 +- docs/models/run_a_model/index.md | 2 +- .../run_a_model/{run-access-issm.md => run_access-issm.md} | 0 mkdocs.yml | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) rename docs/models/run_a_model/{run-access-issm.md => run_access-issm.md} (100%) diff --git a/docs/models/access_models/access-issm.md b/docs/models/access_models/access-issm.md index 6f288b35f..20c2abfb8 100644 --- a/docs/models/access_models/access-issm.md +++ b/docs/models/access_models/access-issm.md @@ -63,4 +63,4 @@ qsub run_mismip_first.sh # runs steps 1–7 and stops More details, examples and forcing files are available on the [ACCESS‑ISSM GitHub](https://github.com/ACCESS-NRI/access-issm). -[Run ACCESS‑ISSM](/models/run-a-model/run-access-issm){: .text-card } \ No newline at end of file +[Run ACCESS‑ISSM](/models/run-a-model/run_access-issm){: .text-card } \ No newline at end of file diff --git a/docs/models/run_a_model/index.md b/docs/models/run_a_model/index.md index dde496a86..f75f582be 100644 --- a/docs/models/run_a_model/index.md +++ b/docs/models/run_a_model/index.md @@ -50,7 +50,7 @@ If you are unsure which ACCESS model is the best fit for your application, you c - +
ACCESS-ISSM
diff --git a/docs/models/run_a_model/run-access-issm.md b/docs/models/run_a_model/run_access-issm.md similarity index 100% rename from docs/models/run_a_model/run-access-issm.md rename to docs/models/run_a_model/run_access-issm.md diff --git a/mkdocs.yml b/mkdocs.yml index 8a5dd4c62..f68cb294a 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -144,7 +144,7 @@ nav: - Run ACCESS-OM2: models/run-a-model/run-access-om2.md - Run ACCESS-OM3: models/run-a-model/run-access-om3.md - Run ACCESS-rAM: models/run-a-model/run-access-ram.md - - Run ACCESS-ISSM: models/run-a-model/run-access-issm.md + - Run ACCESS-ISSM: models/run-a-model/run_access-issm.md - Modify and build an ACCESS model's source code: models/run-a-model/build_a_model.md - Create Prereleases and Releases for an ACCESS Model: models/run-a-model/create-a-prerelease.md >>>>>>> 0af0488e (added navigation for issm) From d46cfadc634a0483c023a732faf723c50c01277e Mon Sep 17 00:00:00 2001 From: Claire Carouge Date: Mon, 3 Nov 2025 16:45:08 +1100 Subject: [PATCH 27/27] Remove git conflict info wrongly committed --- mkdocs.yml | 16 +--------------- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/mkdocs.yml b/mkdocs.yml index f68cb294a..9084f9fb0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -122,7 +122,6 @@ nav: - Biogeochemistry Land: models/model_components/bgc_land.md - Biogeochemistry Ocean: models/model_components/bgc_ocean.md - Coupler: models/model_components/coupler.md -<<<<<<< HEAD - Run a Model: - models/run_a_model/index.md - Run ACCESS-CM2: models/run_a_model/run_access-cm2.md @@ -130,24 +129,11 @@ nav: - Run ACCESS-OM2: models/run_a_model/run_access-om2.md - Run ACCESS-OM3: models/run_a_model/run_access-om3.md - Run ACCESS-rAM: models/run_a_model/run_access-ram.md + - Run ACCESS-ISSM: models/run_a_model/run_access-issm.md - Build a Model: - models/build_a_model/index.md - Modify and build an ACCESS model's source code: models/build_a_model/build_source_code.md - Create Prereleases and Releases for an ACCESS Model: models/build_a_model/create_a_prerelease.md -======= - - - Run a Model: - - models/run-a-model/index.md - # - Run ACCESS-AM: models/run-a-model/run-access-am.md - - Run ACCESS-CM2: models/run-a-model/run-access-cm2.md - - Run ACCESS-ESM: models/run-a-model/run-access-esm.md - - Run ACCESS-OM2: models/run-a-model/run-access-om2.md - - Run ACCESS-OM3: models/run-a-model/run-access-om3.md - - Run ACCESS-rAM: models/run-a-model/run-access-ram.md - - Run ACCESS-ISSM: models/run-a-model/run_access-issm.md - - Modify and build an ACCESS model's source code: models/run-a-model/build_a_model.md - - Create Prereleases and Releases for an ACCESS Model: models/run-a-model/create-a-prerelease.md ->>>>>>> 0af0488e (added navigation for issm) - Data and Model Evaluation: - model_evaluation/index.md