diff --git a/.gitignore b/.gitignore
index d3aacd0..e9a6a7b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,3 +13,6 @@ docs/source/module_index.rst
# the ERSEM setups repo should be cloned each time
docs/source/ersem-setups
+
+# removing vscode files
+.vscode
diff --git a/docs/images/NEMO_N1_p.gif b/docs/images/NEMO_N1_p.gif
new file mode 100644
index 0000000..9f0d085
Binary files /dev/null and b/docs/images/NEMO_N1_p.gif differ
diff --git a/docs/images/NEMO_N3_n.gif b/docs/images/NEMO_N3_n.gif
new file mode 100644
index 0000000..0e511a7
Binary files /dev/null and b/docs/images/NEMO_N3_n.gif differ
diff --git a/docs/images/NEMO_O2_o.gif b/docs/images/NEMO_O2_o.gif
new file mode 100644
index 0000000..d2bd632
Binary files /dev/null and b/docs/images/NEMO_O2_o.gif differ
diff --git a/docs/images/NEMO_O3_c.gif b/docs/images/NEMO_O3_c.gif
new file mode 100644
index 0000000..ac9109b
Binary files /dev/null and b/docs/images/NEMO_O3_c.gif differ
diff --git a/docs/images/NEMO_P1_Chl.gif b/docs/images/NEMO_P1_Chl.gif
new file mode 100644
index 0000000..bf5d44d
Binary files /dev/null and b/docs/images/NEMO_P1_Chl.gif differ
diff --git a/docs/images/NEMO_R6_c.gif b/docs/images/NEMO_R6_c.gif
new file mode 100644
index 0000000..5eff5c1
Binary files /dev/null and b/docs/images/NEMO_R6_c.gif differ
diff --git a/docs/images/NEMO_sal.gif b/docs/images/NEMO_sal.gif
new file mode 100644
index 0000000..7906aea
Binary files /dev/null and b/docs/images/NEMO_sal.gif differ
diff --git a/docs/images/NEMO_temp.gif b/docs/images/NEMO_temp.gif
new file mode 100644
index 0000000..18067d9
Binary files /dev/null and b/docs/images/NEMO_temp.gif differ
diff --git a/docs/source/tutorials/nemo.rst b/docs/source/tutorials/nemo.rst
index e363ad8..2381d3a 100644
--- a/docs/source/tutorials/nemo.rst
+++ b/docs/source/tutorials/nemo.rst
@@ -1,8 +1,138 @@
.. _nemo:
-NEMO + FABM + ERSEM
-~~~~~~~~~~~~~~~~~~~
+#############################
+NEMO: Atlantic Margin Model 7
+#############################
+
+This tutorial gives an end to end example how to install and then use
+NEMO-ERSEM on the Atlantic Margin Model 7 (AMM7) using a high performance computing
+(HPC) machine. We have used
+`ARCHER2 `__ together with a
+`singularity container `__ with
+NEMO-ERSEM install on it.
+
+This tutorial is based on utilising the
+`container `_ with the configuration
+scripts container `here `_. You will
+also need access to the shared folder within the ARCHER2 project id `n01` to obtain the forcing
+files.
+
+.. note::
+ You will need to get access to the
+ `NEMO-ERSEM code `_.
+
+Obtain NEMO-ERSEM container
+###########################
+
+The key packages for that are installed into
+`NEMO-ERSEM container `_ are:
+
+* `NEMO `__ (UK version -- see note)
+* `XIOS `__
+* `FABM `__
+* `ERSEM `__
+
+ERSEM and FABM are freely available on GitHub and XIOS is available through the NEMO consotium
+svn server, however, for NEMO you will have to register for the code -- see note above. Full instructions
+how to build the container can be found `here `__.
+
+Running the container on ARCHER2
+################################
+
+To generate the `slurm `__ scheduling scripts to
+run the model follow the instructions
+`here `__.
+
+The slurm script schedulers,
+`mkslurm `__,
+requires two executables, namely `xios_server.exe` and `nemo`. The script below shows an example how
+you set up the singulartiy container, `nemo.sif`, to be used as an executable.
+
+.. code-block:: bash
+ :caption: Example script to run container, user is required to change `[RUNING-DIR]` and
+ `[INPUT-DIR]` to the coresponding directories and `[NEMO-XIOS]` to either `nemo`
+ or `xios`.
+
+ #! /bin/bash
+ BIND_OPTS="-B [RUNING-DIR],"
+ BIND_OPTS="${BIND_OPTS}[INPUT-DIR],"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/liblustreapi.so:/opt/lib64/liblustreapi.so,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/liblustreapi.so.1:/opt/lib64/liblustreapi.so.1,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/liblustreapi.so.1.0.0:/opt/lib64/liblustreapi.so.1.0.0,"
+ BIND_OPTS="${BIND_OPTS}/opt/cray/libfabric/1.11.0.4.71/lib64/:/opt/fabric,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/libpals.a:/opt/lib64/libpals.a,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/libpals.so:/opt/lib64/libpals.so,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/libpals.so.0:/opt/lib64/libpals.so.0,"
+ BIND_OPTS="${BIND_OPTS}/usr/lib64/libpals.so.0.0.0:/opt/lib64/libpals.so.0.0.0,"
+ BIND_OPTS="${BIND_OPTS}/opt/cray/pe/mpich/8.1.9/ofi/gnu/9.1:/opt/mpi/install/,"
+ BIND_OPTS="${BIND_OPTS}/opt/cray/pe/pmi/6.0.13/lib,"
+ BIND_OPTS="${BIND_OPTS}/var/spool/slurmd/mpi_cray_shasta"
+
+ export SINGULARITYENV_LD_LIBRARY_PATH=/opt/hdf5/install/lib:$SINGULARITYENV_LD_LIBRARY_PATH
+ export SINGULARITYENV_LD_LIBRARY_PATH=/opt/mpi/install/lib-abi-mpich:$SINGULARITYENV_LD_LIBRARY_PATH
+ export SINGULARITYENV_LD_LIBRARY_PATH=/.singularity.d/libs:$SINGULARITYENV_LD_LIBRARY_PATH
+ export SINGULARITYENV_LD_LIBRARY_PATH=/opt/cray/pe/pmi/6.0.13/lib:$SINGULARITYENV_LD_LIBRARY_PATH
+ export SINGULARITYENV_LD_LIBRARY_PATH=/opt/lib64:$SINGULARITYENV_LD_LIBRARY_PATH
+ export SINGULARITYENV_LD_LIBRARY_PATH=/opt/fabric:$SINGULARITYENV_LD_LIBRARY_PATH
+ export LD_LIBRARY_PATH=/opt/hdf5/install/lib
+ export OMP_NUM_THREADS=1
+
+ singularity run ${BIND_OPTS} --home [RUNING-DIR] nemo.sif [NEMO-XIOS]
+
+The CoNES `documentation `__ gives additional
+information how to run NEMO singularity containers.
+
+
+Example output from NEMO-ERSEM
+##############################
+
+To visualise NEMO output, we recomend using `nctoolkit `__.
+A basic example of how to use `nctoolkit` is given below. Within the
+`documentation `__ of `nctoolkit` one will find additional
+example uses.
+
+.. code-block:: python
+ :caption: Example plotting script using `nctoolkit`, user is required to change `[PATH_TO_NETCDF_FILE]` and
+ `[VARIABLE]` to the exact location of the NEMO output and the variable to be plotted, respectively.
+
+ import nctoolkit as nc
+
+ ff = [PATH_TO_NETCDF_FILE]
+ ds = nc.open_data(ff)
+ plot = ds.plot([VARIABLE])
+
+The following plots represent a months output of a NEMO-ERSEM simulation on the AMM7 domain.
+
+.. dropdown:: Potential temperature
+
+ .. image:: ../../images/NEMO_temp.gif
+
+.. dropdown:: Salinity
+
+ .. image:: ../../images/NEMO_sal.gif
+
+.. dropdown:: Phosphate phosphorus
+
+ .. image:: ../../images/NEMO_N1_p.gif
+
+.. dropdown:: Nitrate nitrogen
+
+ .. image:: ../../images/NEMO_N3_n.gif
+
+.. dropdown:: Carbonate total dissolved inorganic carbon
+
+ .. image:: ../../images/NEMO_O3_c.gif
+
+.. dropdown:: Diatoms chlorophyll
+
+ .. image:: ../../images/NEMO_P1_Chl.gif
+
+.. dropdown:: Medium-sized POM carbon
+
+ .. image:: ../../images/NEMO_R6_c.gif
+
+.. dropdown:: Oxygen
+
+ .. image:: ../../images/NEMO_O2_o.gif
-.. warning::
- Tutorial under construction