diff --git a/configs/components/oasis3mct/oasis3mct.env.yaml b/configs/components/oasis3mct/oasis3mct.env.yaml index ba742858b..cecf159a9 100644 --- a/configs/components/oasis3mct/oasis3mct.env.yaml +++ b/configs/components/oasis3mct/oasis3mct.env.yaml @@ -1,18 +1,19 @@ add_compiletime_environment_changes: - choose_computer.fc: - ftn: - add_export_vars: - - 'OASIS_FFLAGS=-emf' - choose_computer.name: - levante: - add_export_vars: - OASIS_FFLAGS: '"-march=core-avx2 -mtune=core-avx2"' - albedo: - choose_computer.compiler_suite: - gcc: - add_export_vars: - FFLAGS: "'-fallow-argument-mismatch -w'" - FCFLAGS: "'-fallow-argument-mismatch -w'" - intel-oneapi: - add_export_vars: - OASIS_FFLAGS: '"-march=core-avx2"' + choose_computer.name: + aleph: + choose_computer.useMPI: + cray_mpich: + add_export_vars: + OASIS_FFLAGS: '"-emf"' + levante: + add_export_vars: + OASIS_FFLAGS: '"-march=core-avx2 -mtune=core-avx2"' + albedo: + choose_computer.compiler_suite: + gcc: + add_export_vars: + FFLAGS: "'-fallow-argument-mismatch -w'" + FCFLAGS: "'-fallow-argument-mismatch -w'" + intel-oneapi: + add_export_vars: + OASIS_FFLAGS: '"-march=core-avx2"' diff --git a/configs/components/oifs/oifs.env.yaml b/configs/components/oifs/oifs.env.yaml index 9e64a6b0f..e0d28ffc2 100644 --- a/configs/components/oifs/oifs.env.yaml +++ b/configs/components/oifs/oifs.env.yaml @@ -450,17 +450,33 @@ compiletime_environment_changes: OIFS_NETCDFF_INCLUDE: '-I$NETCDF_DIR/include' OIFS_NETCDFF_LIB: '"-L$NETCDF_DIR/lib -lnetcdff"' OIFS_FC: '${computer.fc}' - OIFS_FFLAGS: '"-O2 -emf -hthread1 -hflex_mp=conservative -hfp1 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN"' #TODO: Test: -O3 -hfp3 - #OIFS_FFLAGS: '"-O3 -emf -hthread3 -hflex_mp=conservative -hfp3 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN"' #TODO: Test: -O3 -hfp3 - OIFS_FFIXED: '"-s real64"' OIFS_FCDEFS: '"BLAS LITTLE LINUX INTEGER_IS_INT"' - OIFS_LFLAGS: '"-dynamic -hbyteswapio"' OIFS_CC: '${computer.cc}' - OIFS_CFLAGS: '"-emf -O2 -hcpu=x86-skylake"' - #OIFS_CFLAGS: '"-emf -O3 -hcpu=x86-skylake"' OIFS_CCDEFS: '"LINUX LITTLE INTEGER_IS_INT _ABI64 BLAS"' - OIFS_XIOS_LIB_NAME: '${computer.c++_lib}' - + choose_computer.useMPI: + cray_mpich: + add_export_vars: + OIFS_FFLAGS: '"-emf -hthread1 -hflex_mp=conservative -hfp1 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN -g -O3 -eZ"' + #OIFS_FFLAGS: '"-emf -hthread1 -hflex_mp=conservative -hfp1 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN -g -O1 -eZ"' + #OIFS_FFLAGS: '"-O1 -emf -hthread1 -hflex_mp=conservative -hfp1 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN"' #TODO: Test: -O3 -hfp3 + #OIFS_FFLAGS: '"-O2 -emf -hthread1 -hflex_mp=conservative -hfp1 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN"' #TODO: Test: -O3 -hfp3 + #OIFS_FFLAGS: '"-O3 -emf -hthread3 -hflex_mp=conservative -hfp3 -hadd_paren -hbyteswapio -J./ -hcpu=x86-skylake -U_CRAYFTN"' #TODO: Test: -O3 -hfp3 + OIFS_CFLAGS: '"-emf -O2 -hcpu=x86-skylake"' + OIFS_LFLAGS: '"-dynamic -hbyteswapio"' + OIFS_FFIXED: '"-s real64"' + OIFS_XIOS_LIB_NAME: '${computer.c++_lib}' + intelopenmpi: + add_export_vars: + OIFS_FFLAGS: '"-r8 -fp-model precise -align array32byte -O3 -qopenmp -xCORE_AVX512 -g -traceback -convert big_endian -fpe0"' + OIFS_CFLAGS: '"-fp-model precise -O3 -xCORE_AVX512 -g -traceback -qopt-report=0 -fpe0 -qopenmp"' + OIFS_LFLAGS: '"$OIFS_MPI_LIB -qopenmp"' + OIFS_FFIXED: '""' + intel_mpich: + add_export_vars: + OIFS_FFLAGS: '"-r8 -fp-model precise -align array32byte -O0 -qopenmp -xCORE_AVX512 -g -traceback -convert big_endian -fpe0"' + OIFS_CFLAGS: '"-fp-model precise -O3 -xCORE_AVX512 -g -traceback -qopt-report=0 -fpe0 -qopenmp"' + OIFS_LFLAGS: '"$OIFS_MPI_LIB -qopenmp"' + OIFS_FFIXED: '""' nesh: compiler_mpi: intel2020_impi2020 add_export_vars: diff --git a/configs/components/xios/xios.yaml b/configs/components/xios/xios.yaml index f10aa2a30..66ce03017 100644 --- a/configs/components/xios/xios.yaml +++ b/configs/components/xios/xios.yaml @@ -68,6 +68,10 @@ choose_version: archfile: ESMTOOLS_generic_oasis_intel parastationmpi: archfile: ESMTOOLS_generic_oasis_intel + intelopenmpi: + archfile: ESMTOOLS_generic_oasis_intel + intel_mpich: + archfile: ESMTOOLS_generic_oasis_intel "*": foo: bar # MA: yet another block, this time for albedo. We cannot fix this now, but in the diff --git a/configs/machines/aleph.yaml b/configs/machines/aleph.yaml index 9970ffe78..3cb9a27dc 100644 --- a/configs/machines/aleph.yaml +++ b/configs/machines/aleph.yaml @@ -46,53 +46,135 @@ hyper_flag: "" # # -useMPI: cray_mpich - -fc: ftn -f77: ftn -mpifc: ftn -mpicc: cc -cc: cc -cxx: CC - -module_actions: - - "unload craype" - - "load craype/2.6.2" - - "load PrgEnv-cray/6.0.4" - - "load pbs" - - "load cray-mpich/7.7.3" - - "load craype-x86-skylake" - - "load cmake/3.14.0" - - "load cray-hdf5-parallel/1.10.2.0" - - "load cray-netcdf-hdf5parallel/4.6.1.3" - - "load cdo/1.9.5" - - "load fftw/2.1.5.9" - - "load nco/4.9.4" - - "load proj4/5.1.0" - - "load python/3.9.1" - - "list" - +useMPI: cray_mpich #intel_mpich #intelopenmpi #cray_mpich + +choose_useMPI: + cray_mpich: + fc: ftn + f77: ftn + mpifc: ftn + mpicc: cc + cc: cc + cxx: CC + module_actions: + - "unload craype" + - "load craype/2.6.2" + - "load PrgEnv-cray/6.0.4" + - "load pbs" + - "load cray-mpich/7.7.3" + - "load craype-x86-skylake" + - "load cmake/3.14.0" + - "load cray-hdf5-parallel/1.10.2.0" + - "load cray-netcdf-hdf5parallel/4.6.1.3" + - "load cdo/1.9.5" + - "load fftw/2.1.5.9" + - "load nco/4.9.4" + - "load proj4/5.1.0" + - "load python/3.9.1" + - "list" + add_export_vars: + ECCODESROOT: /proj/awiiccp/software/ecmwf/eccodes_cce_mpich + HDF5ROOT: $HDF5_ROOT + + NETCDFFROOT: $NETCDF_DIR + NETCDFROOT: $NETCDF_DIR + NETCDF_Fortran_INCLUDE_DIRECTORIES: $NETCDFROOT/include + NETCDF_CXX_INCLUDE_DIRECTORIES: $NETCDFROOT/include + NETCDF_CXX_LIBRARIES: $NETCDFROOT/lib + ZLIBROOT: /usr + + intelopenmpi: + warning: + "Configuration does not run": + message: "The intelopenmpi configuration on aleph is experimental. From past experiance it can compile AWI-CM3, but crashes on runtime. Use as your own disgression. Contact jan.streffing@awi.de for further questions" + ask_user_to_continue: True + fc: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpifort + f77: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpifort + mpifc: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpifort + mpicc: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpicc + cc: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpicc + cxx: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpicxx + module_actions: + - "unload PrgEnv-cray" + - "load PrgEnv-intel/6.0.5" + - "load craype-x86-skylake" + - "load cray-mpich/7.7.3" + - "load gcc/7.3.0" + - "load pbs" + - "load cmake/3.14.0" + - "load cdo/1.9.5" + - "load fftw/2.1.5.9" + - "load nco/4.9.4" + - "load proj4/5.1.0" + - "load python/3.9.1" + - "list" + add_export_vars: + CMAKE_C_COMPILER: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpicc + CMAKE_CXX_COMPILER: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717/bin/mpicxx + IO_LIB_ROOT: /home/awiiccp2/software/HPC_libraries/intel-18.0.3.222_ompi_20230717 + LD_LIBRARY_PATH: $IO_LIB_ROOT/lib:$LD_LIBRARY_PATH + + SZIPROOT: $IO_LIB_ROOT + HDF5ROOT: $IO_LIB_ROOT + HDF5_ROOT: $HDF5ROOT + NETCDFROOT: $IO_LIB_ROOT + NETCDFFROOT: $IO_LIB_ROOT + ECCODESROOT: $IO_LIB_ROOT + + HDF5_C_INCLUDE_DIRECTORIES: $HDF5_ROOT/include + NETCDF_Fortran_INCLUDE_DIRECTORIES: $NETCDFFROOT/include + NETCDF_C_INCLUDE_DIRECTORIES: $NETCDFROOT/include + NETCDF_CXX_INCLUDE_DIRECTORIES: $NETCDFROOT/include + OASIS3MCT_FC_LIB: '"-L$NETCDFFROOT/lib -lnetcdff"' + PATH: $IO_LIB_ROOT/bin:$PATH + MPIFC: ftn + + intel_mpich: + warning: + Configuration does not run: + message: "The intel_mpich configuration on aleph is experimental. From past experiance it can compile AWI-CM3, but crashes on runtime. Use as your own disgression. Contact jan.streffing@awi.de for further questions" + ask_user_to_continue: True + fc: ftn + f77: ftn + mpifc: ftn + mpicc: cc + cc: cc + cxx: CC + module_actions: + - "unload PrgEnv-cray" + - "load PrgEnv-intel/6.0.5" + - "load craype-x86-skylake" + - "load cray-mpich/7.7.3" + - "load gcc/7.3.0" + - "load pbs" + - "load cmake/3.14.0" + - "load cdo/1.9.5" + - "load fftw/2.1.5.9" + - "load nco/4.9.4" + - "load proj4/5.1.0" + - "load python/3.9.1" + - "load cray-netcdf-hdf5parallel/4.6.1.3" + - "load cray-hdf5-parallel/1.10.2.0" + - "list" + add_export_vars: + ECCODESROOT: /home/awiiccp2/software/HPC_libraries/eccodes_intel_mpich/ + + HDF5_C_INCLUDE_DIRECTORIES: $HDF5_ROOT/include + NETCDF_Fortran_INCLUDE_DIRECTORIES: $NETCDFFROOT/include + NETCDF_C_INCLUDE_DIRECTORIES: $NETCDFROOT/include + NETCDF_CXX_INCLUDE_DIRECTORIES: $NETCDFROOT/include + OASIS3MCT_FC_LIB: '"-L$NETCDFFROOT/lib -lnetcdff"' + PATH: $IO_LIB_ROOT/bin:$PATH + MPIFC: ftn export_vars: LC_ALL: en_US.UTF-8 - HDF5ROOT: $HDF5_ROOT - - NETCDFFROOT: $NETCDF_DIR - NETCDFROOT: $NETCDF_DIR - NETCDF_Fortran_INCLUDE_DIRECTORIES: $NETCDFROOT/include - NETCDF_CXX_INCLUDE_DIRECTORIES: $NETCDFROOT/include - NETCDF_CXX_LIBRARIES: $NETCDFROOT/lib - PERL5LIB: /usr/lib64/perl5 - #LAPACK_LIB: '"-lmkl_intel_lp64 -lmkl_core -mkl=sequential -lpthread -lm -ldl"' - #LAPACK_LIB_DEFAULT: '"-L/global/AWIsoft/intel/2018/compilers_and_libraries_2018.5.274/linux/mkl/lib/intel64 -lmkl_intel_lp64 -lmkl_core -lmkl_sequential"' XML2ROOT: /usr - ZLIBROOT: /usr TMPDIR: /tmp # Prepend labels to the stdout/sterr lines PMI_LABEL_ERROUT: 1 - ECCODESROOT: /proj/awiiccp/software/ecmwf/eccodes_cce_mpich # enable full MPI thread support level (MPI_THREAD_MULTIPLE) MPICH_MAX_THREAD_SAFETY: multiple # to also switch to an alternative (probably with faster locking) multi threading implementation of the cray-mpich library, use the compiler flag -craympich-mt @@ -108,7 +190,7 @@ export_vars: # Important for eccodes to work CRAYPE_LINK_TYPE: dynamic -label_format: '"[@MODEL@]%l:"' +label_format: '"[@MODEL@]%r:"' launcher_flags_per_component: "-n @nproc@ -N @nproc_per_node@ -d @cpus_per_proc@ env OMP_NUM_THREADS=@omp_num_threads@ env PMI_LABEL_ERROUT_FORMAT=${label_format}" diff --git a/namelists/fesom2/2.0/awicm3/DART/namelist.io b/namelists/fesom2/2.0/awicm3/DART/namelist.io index 6c834f1b7..9df96b523 100644 --- a/namelists/fesom2/2.0/awicm3/DART/namelist.io +++ b/namelists/fesom2/2.0/awicm3/DART/namelist.io @@ -4,11 +4,15 @@ lcurt_stress_surf=.false. ldiag_curl_vel3 =.false. ldiag_energy =.true. ldiag_salt3D =.false. -ldiag_dMOC =.false. +ldiag_dMOC =.true. ldiag_DVD =.false. ldiag_forc =.true. / +&nml_output_settings + keep_nth_level = 1 +/ + &nml_listsize io_listsize=100 !number of streams to allocate. shallbe large or equal to the number of streams in &nml_list / @@ -38,14 +42,12 @@ io_list = 'sst ',90,'s', 4, 'u ',1, 'm', 4, 'v ',1, 'm', 4, 'w ',1, 'm', 4, + 'sigma0 ',1, 'm', 4, 'temp1-31 ',1, 'd', 4, 'salt1-31 ',1, 'd', 4, 'u1-31 ',1, 'd', 4, 'v1-31 ',1, 'd', 4, 'w1-31 ',1, 'd', 4, - 'bolus_u ',1, 'y', 4, - 'bolus_v ',1, 'y', 4, - 'bolus_w ',1, 'y', 4, 'snow ',1, 'm', 4, 'subli ',1, 'm', 4, 'thdgrsn ',1, 'm', 4, diff --git a/namelists/fesom2/2.0/awicm3/frontiers/namelist.io b/namelists/fesom2/2.0/awicm3/frontiers/namelist.io index 2c328e47c..45cf58d67 100644 --- a/namelists/fesom2/2.0/awicm3/frontiers/namelist.io +++ b/namelists/fesom2/2.0/awicm3/frontiers/namelist.io @@ -4,7 +4,7 @@ lcurt_stress_surf=.false. ldiag_curl_vel3 =.false. ldiag_energy =.false. ldiag_salt3D =.false. -ldiag_dMOC =.false. +ldiag_dMOC =.true. ldiag_DVD =.false. ldiag_forc =.true. / @@ -37,6 +37,7 @@ io_list = 'sst ',1, 'm', 4, 'ty_sur ',1, 'm', 4, 'temp ',1, 'm', 4, 'salt ',1, 'm', 4, + 'sigma0' ',1, 'm', 4, 'N2 ',1, 'y', 4, 'Kv ',1, 'y', 4, 'u ',1, 'y', 4, diff --git a/namelists/oifs/43r3/xios/TCO1279_DART/axis_def.xml b/namelists/oifs/43r3/xios/TCO1279_DART/axis_def.xml index 334b9bb8b..8139fbb3d 100644 --- a/namelists/oifs/43r3/xios/TCO1279_DART/axis_def.xml +++ b/namelists/oifs/43r3/xios/TCO1279_DART/axis_def.xml @@ -9,8 +9,7 @@ - - + diff --git a/namelists/oifs/43r3/xios/TCO1279_DART/file_def.xml b/namelists/oifs/43r3/xios/TCO1279_DART/file_def.xml index ec82f96fa..af45eb15d 100644 --- a/namelists/oifs/43r3/xios/TCO1279_DART/file_def.xml +++ b/namelists/oifs/43r3/xios/TCO1279_DART/file_def.xml @@ -4,23 +4,22 @@ - + split_freq="1mo"> - + @@ -28,17 +27,24 @@ + + + + + + + - + @@ -46,17 +52,20 @@ + + + - + @@ -118,35 +127,16 @@ - - - - - - - - - - - - - - - + @@ -155,161 +145,22 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + diff --git a/namelists/oifs/43r3/xios/TCO1279_DART/grid_def.xml b/namelists/oifs/43r3/xios/TCO1279_DART/grid_def.xml index 4e314a0c8..5c4dc3af6 100644 --- a/namelists/oifs/43r3/xios/TCO1279_DART/grid_def.xml +++ b/namelists/oifs/43r3/xios/TCO1279_DART/grid_def.xml @@ -31,6 +31,10 @@ + + + + diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/TCo95-CORE2-1Y.yaml b/namelists/oifs/43r3/xios/TCO95_CORE2/TCo95-CORE2-1Y.yaml new file mode 100644 index 000000000..66d015611 --- /dev/null +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/TCo95-CORE2-1Y.yaml @@ -0,0 +1,68 @@ +general: + setup_name: "awicm3" + version: "frontiers-xios" + account: "awiiccp" + compute_time: "24:00:00" + initial_date: "1950-01-01" + final_date: "1951-01-01" + base_dir: "/scratch/awiiccp2/" + nday: 0 + nmonth: 2 + nyear: 0 + runtime_environment_changes: + add_export_vars: + - "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/awiiccp2/software/ecmwf/skylake/lib64/" + +awicm3: + postprocessing: false + model_dir: /home/awiiccp2/model_codes/awicm3-frontiers-xios/ + +fesom: + resolution: "CORE2" + mesh_dir: /proj/awi/input/fesom2/core2/ + lresume: false # don't forget to check! + restart_rate: 2 + restart_unit: "m" + restart_first: 2 + add_file_movements: + outdata: + all_directions: move + add_namelist_changes: + namelist.io: + nml_listsize: + filesplit_freq: 'm' + + time_step: 1800 + nproc: 320 + + +oifs: + resolution: "TCO95" + levels: "L91" + prepifs_expid: aack + input_expid: awi3 + wam: false + lresume: false + time_step: 3600 + nproc: 40 + omp_num_threads: 8 + namelist_changes: + fort.4: + naerad: + NCMIPFIXYR: 1950 + namcumf: + RPRCON: 1.0E-3 + ENTRORG: 1.25E-3 + namgwwms: + GGAUSSB: -0.45 + + +oasis3mct: + lresume: true # Set to false to generate the rst files for first leg + time_step: 3600 + +xios: + with_model: oifs + nproc: 2 + omp_num_threads: 40 + diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/axis_def.xml b/namelists/oifs/43r3/xios/TCO95_CORE2/axis_def.xml index 498f23766..8139fbb3d 100644 --- a/namelists/oifs/43r3/xios/TCO95_CORE2/axis_def.xml +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/axis_def.xml @@ -9,7 +9,7 @@ - + diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/context_ifs.xml b/namelists/oifs/43r3/xios/TCO95_CORE2/context_ifs.xml index e3724c1c0..df526436e 100644 --- a/namelists/oifs/43r3/xios/TCO95_CORE2/context_ifs.xml +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/context_ifs.xml @@ -18,8 +18,8 @@ - -6 - -6 + -3 + -3 diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/domain_def.xml b/namelists/oifs/43r3/xios/TCO95_CORE2/domain_def.xml index 534ded4ee..38d74ca9b 100644 --- a/namelists/oifs/43r3/xios/TCO95_CORE2/domain_def.xml +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/domain_def.xml @@ -4,7 +4,7 @@ - + diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/file_def.xml b/namelists/oifs/43r3/xios/TCO95_CORE2/file_def.xml index 12e514a58..b923f449a 100644 --- a/namelists/oifs/43r3/xios/TCO95_CORE2/file_def.xml +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/file_def.xml @@ -9,171 +9,18 @@ type="multiple_file" format="netcdf4" par_access="collective" - name="atm" - split_freq="1y"> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + name="atm_reduced" + compression_level="1" + split_freq="1mo"> + timeseries="only" + output_freq="3h" + name_suffix="_3h" + description="ECE4/OIFS 3hourly surface fields"> - + @@ -186,12 +33,12 @@ - + @@ -204,16 +51,12 @@ - - - - - + @@ -223,8 +66,6 @@ - - @@ -271,42 +112,23 @@ - - - - - - - - - - - - - - - + + timeseries="only" + output_freq="3h" + name_suffix="_3h_pl" + description="ECE4/OIFS 3hourly pressure level fields"> - + + + - - diff --git a/namelists/oifs/43r3/xios/TCO95_CORE2/iodef.xml b/namelists/oifs/43r3/xios/TCO95_CORE2/iodef.xml index c3f767033..d34b854b0 100644 --- a/namelists/oifs/43r3/xios/TCO95_CORE2/iodef.xml +++ b/namelists/oifs/43r3/xios/TCO95_CORE2/iodef.xml @@ -6,8 +6,8 @@ true - 50 - 1 + 50 + 1 false 0.5 diff --git a/runscripts/awicm3/frontiers-xios/TCo1279-DART-1950.yaml b/runscripts/awicm3/frontiers-xios/TCo1279-DART-1950.yaml new file mode 100644 index 000000000..42a1c9567 --- /dev/null +++ b/runscripts/awicm3/frontiers-xios/TCo1279-DART-1950.yaml @@ -0,0 +1,128 @@ +general: + setup_name: "awicm3" + version: "frontiers-xios" + account: "awiiccp" + compute_time: "12:00:00" + initial_date: "1950-01-01" + final_date: "1960-01-01" + base_dir: "/scratch/awiiccp2/" + nday: 0 + nmonth: 2 + nyear: 0 + runtime_environment_changes: + add_export_vars: + - "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/awiiccp2/software/ecmwf/skylake/lib64/" + install_esm_tools_branch: feat/aleph_intel_openmpi + +computer: + mail_type: abe + mail_user: "jan.streffing@awi.de" + + +awicm3: + postprocessing: false + model_dir: /home/awiiccp2/model_codes/awicm3-frontiers-xios/ + +fesom: + #setup_dir: "/proj/awiiccp5/awicm3-frontiers-xios/fesom-2.0/" + ini_parent_exp_id: "sp1950d" + ini_parent_date: "1949-12-31" + ini_parent_dir: "/scratch/awiiccp5/ctl1950d/" + resolution: "DART" + mesh_dir: /proj/awi/input/fesom2/dart/ + lresume: true # don't forget to check! + restart_rate: 2 + restart_unit: "m" + restart_first: 2 + choose_general.run_number: + 1: + lasttime: '86160' + restart_in_sources: + par_oce_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.oce.restart/*.nc + par_ice_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.ice.restart/*.nc + namelist_changes: + namelist.config: + machine: + n_levels: 2 + n_part: [10, 72] + restart_log: + raw_restart_length: 2 + raw_restart_length_unit: "m" + namelist.io: + nml_listsize: + filesplit_freq: 'm' + namelist_dir: /proj/awiiccp5/esm_tools/namelists/fesom2/2.0/awicm3/DART_niko_kpp/ + add_file_movements: + outdata: + all_directions: move + + time_step: 240 + nproc: 1280 + + +oifs: + resolution: "TCO1279" + levels: "L137" + prepifs_expid: hf05 + input_expid: awi3 + wam: true + lresume: false + time_step: 450 + nproc: 1320 + omp_num_threads: 8 + namelist_changes: + fort.4: + naerad: + NCMIPFIXYR: 1950 + namcumf: + RPRCON: 1.0E-3 + ENTRORG: 1.25E-3 + namgwwms: + GGAUSSB: -0.45 + input: + exp_to_run: copy + init_to_exp: copy + run_to_work: copy + work_to_run: copy + +oasis3mct: + lresume: true # Set to false to generate the rst files for first leg + time_step: 3600 + coupling_methods: + gauswgt_c: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: glbpos + algorithm: opt + gauswgt_gss: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: gsspos + algorithm: opt + gauswgt_i: + time_transformation: instant + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" +xios: + with_model: oifs + nproc: 10 + omp_num_threads: 40 + diff --git a/runscripts/awicm3/frontiers-xios/TCo1279-DART-1D.yaml b/runscripts/awicm3/frontiers-xios/TCo1279-DART-1D.yaml new file mode 100644 index 000000000..7704dedc8 --- /dev/null +++ b/runscripts/awicm3/frontiers-xios/TCo1279-DART-1D.yaml @@ -0,0 +1,126 @@ +general: + setup_name: "awicm3" + version: "frontiers-xios" + account: "awiiccp" + compute_time: "12:00:00" + initial_date: "1950-01-01" + final_date: "1950-01-02" + base_dir: "/scratch/awiiccp2/" + nday: 1 + nmonth: 0 + nyear: 0 + runtime_environment_changes: + add_export_vars: + - "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/awiiccp2/software/ecmwf/skylake/lib64/" + install_esm_tools_branch: feat/aleph_intel_openmpi + +awicm3: + postprocessing: false + model_dir: /home/awiiccp2/model_codes/awicm3-frontiers-xios/ + +fesom: + #setup_dir: "/proj/awiiccp5/awicm3-frontiers-xios/fesom-2.0/" + ini_parent_exp_id: "sp1950d" + ini_parent_date: "1949-12-31" + ini_parent_dir: "/scratch/awiiccp5/ctl1950d/" + resolution: "DART" + mesh_dir: /proj/awi/input/fesom2/dart/ + lresume: true # don't forget to check! + restart_rate: 1 + restart_unit: "d" + restart_first: 1 + choose_general.run_number: + 1: + lasttime: '86160' + restart_in_sources: + par_oce_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.oce.restart/*.nc + par_ice_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.ice.restart/*.nc + "*": + remove_restart_in_files: [par_oce_restart, par_ice_restart] + remove_restart_out_files: [par_oce_restart, par_ice_restart] + add_ignore_sources: + par_oce_restart: fesom.*.oce.restart/* + par_ice_restart: fesom.*.ice.restart/* + namelist_changes: + namelist.config: + machine: + n_levels: 2 + n_part: [10, 72] + restart_log: + raw_restart_length: 1 + raw_restart_length_unit: "m" + namelist.io: + nml_listsize: + filesplit_freq: 'm' + diag_list: + ldiag_dMOC: true + namelist_dir: /proj/awiiccp5/esm_tools/namelists/fesom2/2.0/awicm3/DART_niko_kpp/ + add_file_movements: + outdata: + all_directions: move + + time_step: 240 + nproc: 1280 + + +oifs: + resolution: "TCO1279" + levels: "L137" + prepifs_expid: hf05 + input_expid: awi3 + wam: true + lresume: false + time_step: 450 + nproc: 1320 + omp_num_threads: 8 + namelist_changes: + fort.4: + naerad: + NCMIPFIXYR: 1950 + namcumf: + RPRCON: 1.0E-3 + ENTRORG: 1.25E-3 + namgwwms: + GGAUSSB: -0.45 + +oasis3mct: + lresume: true # Set to false to generate the rst files for first leg + time_step: 3600 + coupling_methods: + gauswgt_c: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: glbpos + algorithm: opt + gauswgt_gss: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: gsspos + algorithm: opt + gauswgt_i: + time_transformation: instant + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" +xios: + with_model: oifs + nproc: 10 + omp_num_threads: 40 + diff --git a/runscripts/awicm3/frontiers-xios/TCo1279-DART-CTRL.yaml b/runscripts/awicm3/frontiers-xios/TCo1279-DART-CTRL.yaml new file mode 100644 index 000000000..2e6115140 --- /dev/null +++ b/runscripts/awicm3/frontiers-xios/TCo1279-DART-CTRL.yaml @@ -0,0 +1,134 @@ +general: + setup_name: "awicm3" + version: "frontiers-xios" + account: "awiiccp" + compute_time: "12:00:00" + initial_date: "1950-01-01" + final_date: "1960-01-01" + base_dir: "/scratch/awiiccp2/" + nday: 0 + nmonth: 2 + nyear: 0 + runtime_environment_changes: + add_export_vars: + - "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/awiiccp2/software/ecmwf/skylake/lib64/" + install_esm_tools_branch: feat/aleph_intel_openmpi + +computer: + mail_type: abe + mail_user: "jan.streffing@awi.de" + + +awicm3: + postprocessing: false + model_dir: /home/awiiccp2/model_codes/awicm3-frontiers-xios/ + +fesom: + #setup_dir: "/proj/awiiccp5/awicm3-frontiers-xios/fesom-2.0/" + ini_parent_exp_id: "sp1950d" + ini_parent_date: "1949-12-31" + ini_parent_dir: "/scratch/awiiccp5/ctl1950d/" + resolution: "DART" + mesh_dir: /proj/awi/input/fesom2/dart/ + lresume: true # don't forget to check! + restart_rate: 2 + restart_unit: "m" + restart_first: 2 + choose_general.run_number: + 1: + lasttime: '86160' + restart_in_sources: + par_oce_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.oce.restart/*.nc + par_ice_restart: /scratch/awiiccp5/ctl1950d/run_19490101-19491231/work/fesom.1949.ice.restart/*.nc + "*": + remove_restart_in_files: [par_oce_restart, par_ice_restart] + remove_restart_out_files: [par_oce_restart, par_ice_restart] + add_ignore_sources: + par_oce_restart: fesom.*.oce.restart/* + par_ice_restart: fesom.*.ice.restart/* + namelist_changes: + namelist.config: + machine: + n_levels: 2 + n_part: [10, 72] + restart_log: + raw_restart_length: 1 + raw_restart_length_unit: "m" + namelist.io: + nml_listsize: + filesplit_freq: 'm' + namelist_dir: /proj/awiiccp5/esm_tools/namelists/fesom2/2.0/awicm3/DART_niko_kpp/ + add_file_movements: + outdata: + all_directions: move + + time_step: 240 + nproc: 1280 + + +oifs: + resolution: "TCO1279" + levels: "L137" + prepifs_expid: hf05 + input_expid: awi3 + wam: true + lresume: false + time_step: 450 + nproc: 1320 + omp_num_threads: 8 + namelist_changes: + fort.4: + naerad: + NCMIPFIXYR: 1950 + namcumf: + RPRCON: 1.0E-3 + ENTRORG: 1.25E-3 + namgwwms: + GGAUSSB: -0.45 + input: + exp_to_run: copy + init_to_exp: copy + run_to_work: copy + work_to_run: copy + +oasis3mct: + lresume: true # Set to false to generate the rst files for first leg + time_step: 3600 + coupling_methods: + gauswgt_c: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: glbpos + algorithm: opt + gauswgt_gss: + time_transformation: conserv + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" + postprocessing: + conserv: + method: gsspos + algorithm: opt + gauswgt_i: + time_transformation: instant + remapping: + gauswgt: + search_bin: latitude + nb_of_search_bins: 1 + nb_of_neighbours: 9 + weight: "2" +xios: + with_model: oifs + nproc: 10 + omp_num_threads: 40 + diff --git a/runscripts/awicm3/frontiers-xios/TCo95-CORE2-1Y.yaml b/runscripts/awicm3/frontiers-xios/TCo95-CORE2-1Y.yaml new file mode 100644 index 000000000..0d1480ab5 --- /dev/null +++ b/runscripts/awicm3/frontiers-xios/TCo95-CORE2-1Y.yaml @@ -0,0 +1,70 @@ +general: + setup_name: "awicm3" + version: "frontiers-xios" + account: "awiiccp" + compute_time: "00:00:00" + initial_date: "1950-01-01" + final_date: "1951-01-01" + base_dir: "/scratch/awiiccp2/" + nday: 0 + nmonth: 2 + nyear: 0 + runtime_environment_changes: + add_export_vars: + - "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/awiiccp2/software/ecmwf/skylake/lib64/" + +awicm3: + mail_type: FAIL + mail_user: "jan.streffing@awi.de" + postprocessing: false + model_dir: /home/awiiccp2/model_codes/awicm3-frontiers-xios/ + +fesom: + resolution: "CORE2" + mesh_dir: /proj/awi/input/fesom2/core2/ + lresume: false # don't forget to check! + restart_rate: 2 + restart_unit: "m" + restart_first: 2 + add_file_movements: + outdata: + all_directions: move + add_namelist_changes: + namelist.io: + nml_listsize: + filesplit_freq: 'm' + + time_step: 1800 + nproc: 40 + + +oifs: + resolution: "TCO95" + levels: "L91" + prepifs_expid: aack + input_expid: awi3 + wam: false + lresume: false + time_step: 3600 + nproc: 40 + omp_num_threads: 1 + namelist_changes: + fort.4: + naerad: + NCMIPFIXYR: 1950 + namcumf: + RPRCON: 1.0E-3 + ENTRORG: 1.25E-3 + namgwwms: + GGAUSSB: -0.45 + + +oasis3mct: + lresume: false # Set to false to generate the rst files for first leg + time_step: 3600 + +xios: + with_model: oifs + nproc: 2 + omp_num_threads: 20 + diff --git a/src/esm_runscripts/filelists.py b/src/esm_runscripts/filelists.py index 2eb14b84a..fa27f8520 100644 --- a/src/esm_runscripts/filelists.py +++ b/src/esm_runscripts/filelists.py @@ -892,7 +892,7 @@ def check_for_unknown_files(config): return config -def resolve_symlinks(file_source): +def resolve_symlinks(config, file_source): if os.path.islink(file_source): points_to = os.path.realpath(file_source) @@ -905,7 +905,7 @@ def resolve_symlinks(file_source): return file_source # recursively find the file that the link is pointing to - return resolve_symlinks(points_to) + return resolve_symlinks(config, points_to) else: return file_source @@ -956,7 +956,7 @@ def copy_files(config, filetypes, source, target): helpers.print_datetime(config) continue dest_dir = os.path.dirname(file_target) - file_source = resolve_symlinks(file_source) + file_source = resolve_symlinks(config, file_source) if not os.path.isdir(file_source): try: if not os.path.isdir(dest_dir): diff --git a/src/esm_runscripts/tidy.py b/src/esm_runscripts/tidy.py index aeeb5109a..ee2d8857b 100644 --- a/src/esm_runscripts/tidy.py +++ b/src/esm_runscripts/tidy.py @@ -362,12 +362,12 @@ def copy_all_results_to_exp(config): + destination ) else: - linkdest = resolve_symlinks(source) + linkdest = resolve_symlinks(config, source) # newlinkdest = ( # destination.rsplit("/", 1)[0] + "/" + linkdest.rsplit("/", 1)[-1] # ) if os.path.islink(destination): - destdest = resolve_symlinks(source) + destdest = resolve_symlinks(config, source) if linkdest == destdest: # both links are identical, skip continue