diff --git a/README.md b/README.md index 8644b45b772134f06735b3a098f7450bad4e9bc0..1ebcf8351a7210bde3e3b589a78bf613ab6e3711 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,66 @@ -# Climate Modelling Lab, MSc Meteorology, elective class, S2023 (280351 VU) +# Climate Modelling Lab, MSc Meteorology, elective class, S2024 (280351 VU) -General tools and tipps can be found at the [project wiki](https://gitlab.phaidra.org/climate/msc-climmodlab-w2023/-/wikis/home). +General tools and tipps can be found at the [project wiki](https://gitlab.phaidra.org/climate/msc-climmodlab-s2024/-/wikis/home). -The recipe for students on how to get, configure and compile ICON on VSC can be found in [this issue](https://gitlab.phaidra.org/climate/msc-climmodlab-w2023/-/issues/2). +## Recipe for lecturer: generate a tarball with the icon model code for distribution to students + +Get model code from branch climmodlab_s2023: + +``` +git clone https://gitlab.phaidra.org/climate/icon-esm-univie.git +git checkout origin/climmodlab_s2023 +``` + +Configure following the recipe for the students. Then create a distribution tarball: + +``` +make dist +``` +This leads to the file `icon-2.6.0.tar.bz2`, which can then be distributed to the students. + +## Recipe for students: how to get, configure and compile ICON on VSC4 + +Untar the tarball and enter the model code directory: + +``` +tar xfv icon-2.6.0.tar.bz2 +mv icon-2.6.0 icon-esm-univie +cd icon-esm-univie/ +``` + +Configure the model, using MPI parallel communication (this step typically takes several minutes): + +``` +config/vsc/vsc4.intel-intelmpi_spack --enable-mpi +``` + +You can check for a successful configure step by looking at the last line of the file `config.log`. This line should read `configure: exit 0`. + +Load the libraries that are needed for compilation of the model: + +``` +spack load /xg435ds # intel-oneapi-compilers@2022.2.1 linux-almalinux8-skylake_avx512 / gcc@9.5.0 +spack load /p7jisxw # intel-oneapi-mkl@2022.2.1 linux-almalinux8-skylake_avx512 / intel@2021.7.1 +spack load /6a7vghr # netcdf-fortran@4.6.0 linux-almalinux8-skylake_avx512 / intel@2021.7.1 +spack load /kqslczm # libxml2@2.10.1 linux-almalinux8-skylake_avx512 / intel@2021.7.1 +spack load /tlvfj62 # eccodes@2.25.0 linux-almalinux8-skylake_avx512 / intel@2021.7.1 +``` + +Compile the model, using 8 cores for faster compilation (this step typically takes several minutes): + +``` +make -j 8 +``` + +A successful compilation should end with the following lines printed to screen + +> FCLD bin/icon +> +> support/util_file.o: In function `util_tmpnam': +> +> /home/fs72044/avoigt_teach/climlab_s2024/icon-esm-univie/support/util_file.c:63: warning: the use of `tmpnam' is dangerous, better use `mkstemp' +> +> make[1]: Leaving directory '/home/fs72044/avoigt_teach/climlab_s2024/icon-esm-univie' + +The compilation leads to the binary `bin/icon`.