#acl ClamsUserGroup:read,write,delete,revert All:read = CLaMS Installation = == Download Source Code == The CLaMS source code can be downloaded from the GitLab server https://jugit.fz-juelich.de. To get full read and write access to the complete CLaMS code on the gitlab server, one needs to be registered by the server (login once) and then given access by the maintainer Nicole Thomas (n.thomas@fz-juelich.de). Access to ''Jugit'' via ssh or https, see [[ AccessJugit | Access to Jugit and Gitlab ]] For registered users CLaMS is available here: {{{ git clone git@jugit.fz-juelich.de:clams/clams-git.git [target-directory] }}} Without any registration CLaMS can be downloaded with: {{{ git clone https://jugit.fz-juelich.de/clams/clams-git.git [target-directory] }}} This version contains all modules, libraries and programs needed for a ''classical'' CLaMS simulation employing a ksh-script. It does not include supplementary programs e.g. needed for the conversion of the meteorological data. Example input data can be downloaded by: {{{ git clone https://jugit.fz-juelich.de/clams/clams-test-data.git [target-directory] }}} Some additional CLaMS packages can be downloaded by registered users as follows: {{{ git clone git@jugit.fz-juelich.de:clams/clams-support.git [target-directory] }}} '''At the moment ssh agent forwarding to JURECA/JUWELS is not allowed and outgoing ssh communication from these systems is blocked. The source code can only be downloaded via https to JURECA or JUWELS: ''' {{{ git clone https://jugit.fz-juelich.de/clams/clams-git.git [target-directory] git clone https://jugit.fz-juelich.de/clams/clams-support.git [target-directory] }}} == Compilation == Requirements are a Fortran compiler and a NetCDF library with a Fortran interface and optionally an MPI library. <
> The Intel compiler and the MPICH library are used by default in the ICE4 cluster. <
> On JUWELS, the Intel compiler is used with the ParaStationMPI library. <
> For other computer systems or other compilers, adjustments may need to be made in the makefiles under '''''mkincl'''''. For compilation of all CLaMS programs, go to the target directory and simply type: {{{ make all }}} For compilation of a specific program ''progname'' in package ''package-name'': {{{ cd target-directory make libs cd package-name make progname }}} The source code is compiled with MPI by default. The created executables can be run serially or in parallel. Please make sure, that '''''mpif90''''' can be used or switch it off (see below) On '''ICE-4 workstations''' the bin subdirectory of the installation directory of '''MPICH''' library must be added to your path: {{{ PATH=/usr/nfs/software/icg1/local/mpich-3.3.2-ifort-19.0.8/bin:$PATH export PATH }}} For compilation and execution on the supercomputers '''JURECA/JUWELS''' see: https://clams.icg.kfa-juelich.de/CLaMS/Jureca/CompileExecute It is possible to compile without MPI or switch to gfortran compiler with: {{{ make [noMPI=true] [useComp=gfortran] [isDebug=true] [useSHM=true] all|libs|package-name }}} || '''Option''' || '''Default''' || || || '''''noMPI''''' ||''false'' || switch to ''true'' to compile without MPI || || '''''useComp''''' || ''ifc'' (intel fortran compiler) || switch to ''gfortran'' to compile with gfortran compiler || || '''''isDebug''''' || ''false'' || switch to ''true'' to use debug options for compiling || || '''''useSHM''''' || ''false'' || switch to ''true'' to use MPI3 Shared Memory and Parallel IO <
> (only implemented for intel compiler on JUWELS) <
> (only used for meteorological data in '''traj''') ||