Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • hd-model/hd-couple
1 result
Show changes
Commits on Source (3)
......@@ -78,6 +78,7 @@ x 55037 as 55036, but irf_vel=0, using forcing from JSBACH run 25288, 1979-2009
55044 as 55037 but using 0.5 degree version (Reference Vs. 1.9): 1979-2009
x 55045 as 55044 but using HD parameter file Vs. 1.10, incl. Overland flow k * 2, Baseflow k * 4
same factors for consisteny and showing impact of resolution.
used as forcing for ICON-Coast
55046 as 55041, but with Vs. 03 correction of ARF_K - mainstream: hdpara_vs4d_v03_euro5min.nc, 1999-2009
55047 as 55041, but with Vs. 04 correction of ARF_K - mainstream: hdpara_vs4d_v04_euro5min.nc, 1999-2009
x 55048 as 55037, but using MPI-HM (55010) forcing: 1979-2009
......@@ -93,6 +94,7 @@ o 55050 as 55037, but using JSBACH3-PF run 25410 as input, 1979-2009
with the last commit and run 62008
55055 as 55041, but using code of Oct. commit also used for 55054
o 55056 as 55048 but using MPI-HM (55011) forcing driven by GWSP3, 1901-2014 , Nov. 2018
--> Fabian
55057 as 55056 but using ERA5 forcing
55058 as 55056 but using MPI-HM (55012, without lakes) forcing driven by ERA5, 1979-2018
55059 as 55056 but using MPI-HM (55013, with lakes) forcing driven by ERA5, 1979-2018
......@@ -142,6 +144,7 @@ x 55086 as 55073 but with repeated HydroPy run (55026) --> Provided to KSD
55103 as 55102 but using EOBS20 forcing (55042)
55104 as 55102 but with HydroPy + Frozen soil changes (55043)
55105 as 55104 but using EOBS20 forcing (55044)
***** all above are saved *****
HD Model version 5.0
55111 European simulation using HydroPy 1.0 with ERA5 forcing (55051), 1979-2018
......@@ -207,7 +210,7 @@ Levante 1 year of discharge simulation: MPI and OpenMPI are binary ide
57020 as 55201 G but global. Restart: Running year 1940: 10
55204 as 55192 Test simulation: 1979
55207 as 57020 G but using hdpara_vs5_2b.nc, Restart from 57020, Start: 1970
HydroPy-based derived from CCLM/ICON-CLM
55184 as 55183 but using HydroPy-CCLM-euro5min run 57007 with restart from 55183: 2020-2021
......@@ -270,7 +273,7 @@ cdo info -sellonlatbox,10.86,10.88,53.2,53.26 7055049_meanflow_1999.nc | more
62009 as 62007 Input from Ronnys OpenFred F17 run: CCLM at 0.0625 degree 2002-2007, restart from 62008
62016 as 62008 but using HD 0.5 degree, 1979-2013
62017 as 62009 but using Ha's CCLM data for 2014-2016
62018 as 62008 Input from CoastDat III, 0.11°, using 62008 restart file, 1979-2016
62018 as 62008 x Input from CoastDat III, 0.11°, using 62008 restart file, 1979-2016
62019 as 62017 but using Ha's CCLM_sn for Set/Oct 2013, using 62008 restart file of 1.1.2013
62020 as 62019 but using Ha's CCLM0
62021 as 62019 but using Ha's CCLM1
......@@ -280,11 +283,11 @@ cdo info -sellonlatbox,10.86,10.88,53.2,53.26 7055049_meanflow_1999.nc | more
62025 as 62019 but using Ha's CCLM5
62026 HD version 5b using Burkhardts CCLM 0.44 degree run over Europe, 1999-2009
62027 as 62026 but using Burkhardts ICON-CLM run interplated to 0.44 degree over Europe, 1999-2009
62028 as 62018 but using HD version 5.0: 1979-2016. Note that a 1979 test simulation yielded
62028 as 62018 x but using HD version 5.0: 1979-2016. Note that a 1979 test simulation yielded
binary identical results for srv- and nc-input formats.
HD Vs. 5.1
62029 as 62028 but using HD version 5.1: 1979-2018
62030 HD Model Vs. 5.1 using REA6 forcing (1995-2018)
62030 x HD Model Vs. 5.1 using REA6 forcing (1995-2018)
62031 as 62030 but using ICON2.6.4 standalone run inuk009 on NuKLEUS domain
62032 as 62031 but using Ha's CCML 6.0 exp. 002
......@@ -315,6 +318,7 @@ HD Vs. 5.1
62058 EUR-11 ICON-CLM COPAT2 run C2I200/C2I200c with ERA5 forcing, 1979-1984/2002-2008
62059 ICON-CLM standalone run 2008-2018, Nukleus grid
62060 GCOAST-AHOI 2.0 coupled simulation: 2010-2018 using ICON-CLM from 62059
62061 ICON-CLM UDAG evaluation run 1950-2023, Nukleus grid
Australia
......
......@@ -13,13 +13,13 @@
#
# ***** HD and forcing Experiment nos. and HD settings ********************************
#
EXPINP=62061 # Exp. no. of forcing - used for CCLM, HydroPy, Remo
EXPINP=57020 # Exp. no. of forcing - used for CCLM, HydroPy, Remo
# ERA5 (55053/54) & JSBACH forcing (25288,25410)
EXP=70${EXPINP}
##EXP=7055204
##EXP=70${EXPINP}
EXP=7055207
typeset -Z4 YYYY
YYYY=1950 # First year of simulation
YYYY=1970 # First year of simulation
#
# *** Restart or Cold Start
if [ -e ${HDMAIN}/log/${EXP}.year ] ; then
......@@ -31,11 +31,11 @@ else
INEU=1
cstart='Cold-Start'
fi
YEND=1950 # Last year of simulation
YEND=1970 # Last year of simulation
IFORCE=3 # Forcing: 1 = HydroPy, 2 = JSBACH-PF, 3 = CCLM, 4 = REMO, 5=WRF, 6=ICON
IFORCE=1 # Forcing: 1 = HydroPy, 2 = JSBACH-PF, 3 = CCLM, 4 = REMO, 5=WRF, 6=ICON
# Note that JSBACH forcing must be shifted by cdo remapnn,grid_0_5.txt
HDRES=2 # HD Resolution: 0=0.5 Grad, 1=5 Min, 2= Euro 5 Min with 0.5° or 5 Min. input
HDRES=1 # HD Resolution: 0=0.5 Grad, 1=5 Min, 2= Euro 5 Min with 0.5° or 5 Min. input
# 3 = Australia, 4=SEA=South East Asia
FORCE_RES=99 # Forcing data resolution (original, without cdo), 99= any non-HD, (for IFORCE=1)
CFORM=nc # Format of forcing files: 'srv' = Service Format (Default), 'nc' = NetCDCF
......@@ -113,13 +113,14 @@ case ${HDRES} in
ulimit -s 102400
DNPARA="5min/hdpara_vs5_1.nc"
## DNPARA="5min/hdpara_vs5_1.nc"
DNPARA="5min/hdpara_vs5_2b_5min.nc"
HDSTART="5min/hdstart_5min.nc"
nhd_diag=7 # Log output for Elbe river on 5 Min.
#
# *** Examples if restart files from previous runs are used for initialization.
if (( $YYYY > 1979 )) ; then
HDSTART="hdstart/7055116/7055116_hdrestart_${YYYY}01.nc"
if (( $YYYY > 1940 )) ; then
HDSTART="hdstart/7057020/7057020_hdrestart_${YYYY}01.nc"
IZIP_START=1
elif (( $YYYY == 1940 )) ; then
HDSTART="5min/7057020_hdrestart_194001.nc"
......
......@@ -104,8 +104,8 @@
! 4 As 3, but with both masks prescribed
CHARACTER (len=2) :: cin ! Command line input parameter for source mouth mask
INTEGER :: isrc = 2 ! Source data ID:
! 1 HD model Vs. 4
! 2 HD model Vs. 5
! 1 HD model Vs. 5 - Global 5 Min.
! 2 HD model Vs. 5 - Europe 5 Min.
! 3 HD model Vs. 1.11
! 4 mHm
! 5 Utes standard input
......@@ -355,7 +355,7 @@
CHARACTER (len=20), DIMENSION(isrcmax) :: cname_src ! Source model names
CHARACTER (len=20), DIMENSION(iocmax) :: cname_oc ! Ocean model names
!
DATA cname_src / 'hd_vs4', 'hd_vs5', 'hd_vs1_1x', 'mhm_vs2', 'ute', 'mpiom-bgc', 'mpiom' /
DATA cname_src / 'hd_vs5-glob', 'hd_vs5-euro', 'hd_vs1_1x', 'mhm_vs2', 'ute', 'mpiom-bgc', 'mpiom' /
DATA cname_oc / 'nemo', 'ecosmo3', 'SCHISM', 'ecosmo2', 'iconomip', &
'nsea', 'icon-coast', 'nemo_vs4', 'trim', 'nemo-med7km', &
'hd_vs4', 'hd_vs5', 'hd_vs1_11', 'mom', 'nemo_nss' /
......@@ -480,7 +480,8 @@
IX(6) = 262 ; IY(6) = 324 ; INEWX(6) = 50 ; INEWY(6) = 142 ! Maass -> Separation from Rhine
CALL define_separation(IX(6), IY(6), 250, 325) ! Separation of Maass from Rhine
mask_src%value(IX(6), IY(6)) = 1
ELSE IF (isrc.EQ.1 .OR. isrc.EQ.2) THEN ! HD Vs. 4 & 5 - Euro 5 Min. source
!1 ELSE IF (isrc.EQ.1 .OR. isrc.EQ.2) THEN ! HD Vs. 4 & 5 - Euro 5 Min. source
ELSE IF (isrc.EQ.2) THEN ! isrc=1 is now the global 5 Min. grid - Jan. 2025
NCORR=9
ALLOCATE(IX(NCORR)) ; ALLOCATE(IY(NCORR))
ALLOCATE(INEWX(NCORR)) ; ALLOCATE(INEWY(NCORR))
......@@ -498,11 +499,9 @@
IREMX(8) = 20 ; IREMY(8) = 167 ! French coast (too much runoff)
!
! *** Correction
IF (isrc.EQ.1) THEN
IX(1) = 251 ; IY(1) = 222 ; INEWX(1) = 78 ; INEWY(1) = 120 ! Elbe
ELSE IF (isrc.EQ.2) THEN
IX(1) = 246 ; IY(1) = 220 ; INEWX(1) = 78 ; INEWY(1) = 120 ! Elbe
ENDIF
!! IF (isrc.EQ.1) THEN ! Correction for Vs 4. Europe
!! IX(1) = 251 ; IY(1) = 222 ; INEWX(1) = 78 ; INEWY(1) = 120 ! Elbe
IX(1) = 246 ; IY(1) = 220 ; INEWX(1) = 78 ; INEWY(1) = 120 ! Elbe
IX(2) = 200 ; IY(2) = 233 ; INEWX(2) = 57 ; INEWY(2) = 128 ! Ijssel (before 54, 134)
IX(3) = 393 ; IY(3) = 75 ; INEWX(3) = 158 ; INEWY(3) = 7 ! Lule (before 161, 4)
IX(4) = 81 ; IY(4) = 175 ; INEWX(4) = 5 ; INEWY(4) = 83 ! Ness
......@@ -558,8 +557,8 @@
! ***********************************************************************************
INTEGER, INTENT(in) :: isrc ! Source data model ID:
! 1 HD model Vs. 4
! 2 HD model Vs. 5
! 1 HD model Vs. 5 - Global
! 2 HD model Vs. 5 - Europe
! 3 HD model Vs. 1.10
! 4 mHm
! 5 Utes standard input
......@@ -602,6 +601,10 @@
IF (iocean.EQ.3) map_char%dist_max=40000. ! Necessary in Northern Russia
IF (iocean.EQ.4) map_char%dist_max=100000. ! ECOSMO-10 km ocean coast very smooth --> 200 km
IF (iocean.EQ.6) map_char%dist_max=57000. ! N Sea model: Rhine are in, Baltc Sea out
IF (iocean.EQ.7) THEN
map_char%dist_max_prime=60000. !
map_char%dist_max=600000. !
ENDIF
IF (iocean.EQ.9) map_char%dist_max=200000. ! TRIM ocean coast is smooth --> 200 km
IF (iocean.EQ.10) map_char%dist_max=80000. ! Necessary in Greece
IF (iocean.EQ.14) map_char%dist_max=50000. !
......@@ -621,7 +624,7 @@
map_char%dist_max_prime=60000. ! 60 km for primary mask
map_char%dist_max=200000. ! 200 km for secondary mask (default if 1 mask)
ENDIF
WRITE(*,*) "Ocean model ", icocean, " Inflow resolution: ", res_src ! , ' =?', 0.5/6.
WRITE(*,*) "Ocean model ", iocean, " Inflow resolution: ", res_src ! , ' =?', 0.5/6.
WRITE(*,*) "Maximum distances: Primary = ", map_char%dist_max_prime
WRITE(*,*) " Secondary = ", map_char%dist_max
WRITE(*,*) " Boundary = ", map_char%deg_max_bound
......
......@@ -45,7 +45,7 @@ if [ "$IOCEAN" = "" ] && [ "$ISRC" = "" ]; then
echo " -i <7-digit ID>, ID = Source exp. no., Default: Last Exp. no. "
echo " -b <BGC mode>, 0=No data conversion, 1=Discharge only (Def.), 2=1 or more tracers"
echo " 3=Bias corrected discharge, 4=Bias corrected tracer flow (planned)"
echo " -s <Source>, 1=HD4, 2=HD5 (Def), 3=HD1.10, 4=mHm, 5=Ute, 6=MPIOM-BGC, 7=MPIOM"
echo " -s <Source>, 1=HD5-glob, 2=HD5-euro (Def), 3=HD1.10, 4=mHm, 5=Ute, 6=MPIOM-BGC, 7=MPIOM"
echo " -u <mouth file> optional: mouth mask on source grid"
echo " -o <Ocean target>, 1=NEMO3.6, 2=ECOSMO3, 3=SCHISM, 4=ECOSMO2, 5=ICON, 6=Nils, 7=ICON-C "
echo " 8=NEMO4.0, 9=TRIM,10=NEMO-med, 11=HD4, 12=HD5, 13=HD1.10, 14=MOM, 15=NEMO-NSS"
......@@ -120,8 +120,8 @@ if [ "$ISRC" = "" ]; then
ISRC=2 ; HDVS=vs5_1 ; CHD=hd5_1
else
case $ISRC in
1 ) echo "Source data: HD Model Vs. 4" ; CHD=hd4 ; HDVS=vs4 ;;
2 ) echo "Source data: HD Model Vs. 5" ; CHD=hd5_1 ; HDVS=vs5_1 ;;
1 ) echo "Source data: HD Model Vs. 5-glob" ; CHD=hd5-glob ; HDVS=vs5_1 ;;
2 ) echo "Source data: HD Model Vs. 5-euro" ; CHD=hd5-euro ; HDVS=vs5_1 ;;
3 ) echo "Source data: HD Model Vs. 1.11" ; CHD=hd1_11 ; HDVS=vs1_11 ;;
4 ) echo "Source data: mHm Vs. 2" ; CHD=mhm ; HDVS=mhm ;;
5 ) echo "Source data: Utes standard input" ; CHD=usid ; HDVS=ute ;;
......@@ -133,7 +133,8 @@ fi
#
# *** Is mask file for the mouths on the source grid provided.
if [ "$dn_src_mouth" = "" ]; then
echo " No mouth mask on source grid provided - defintion in script expected "
echo " No mouth mask on source grid provided "
echo " Mask is obtained from HD parameter variable FDIR, or it must be defined in the script"
else
if [ -s $dn_ocean ] ; then
echo " Mouth mask on source grid: " $dn_src_mouth
......@@ -305,7 +306,8 @@ fi
cd $DRUN
case $ISRC in
1 ) DNHDPARA=${DIN}/euro5min/hdpara_vs4d_euro5min.nc ; cgr='5-Min.' ;; # cgr is currently a dummy
1 ) DNHDPARA=${DIN}/5min/hdpara_${HDVS}.nc ; cgr='5-Min.' # cgr is currently a dummy
ulimit -s 200000 ;;
2 ) DNHDPARA=${DIN}/euro5min/hdpara_${HDVS}_euro5min.nc ; cgr='5-Min.' ;; # e.g. HDVS=vs5_0
# 3 ) DNHDPARA=${DIN}/05deg/hdpara_vs1_10_ext.nc ; cgr='0.5' ;;
3 ) DNHDPARA=${DIN}/05deg/hdpara_${HDVS}.nc ; cgr='0.5' ;;
......@@ -514,7 +516,8 @@ esac
# *** Allocate HD mouths
${F90} ${DSRC}/mo_grid.f90 ${DSRC}/mo_time.f90 ${DSRC}/mo_flow_inout.f90 ${DSRC}/mo_interpol.f90 ${DSRC}/mo_convert.f90 ${DSRC}/convert_discharge.f90 -o convert.exe $NC_INCLUDE $NC_LIB
#
case $ISRC in
if [ "$dn_src_mouth" = "" ]; then
case $ISRC in
[123] ) cdo setctomiss,0. -eqc,0. -selvar,FDIR $DNHDPARA hdmouth_mask.nc
cdo setvar,FMOUTH hdmouth_mask.nc rivmouth_source.nc
rm hdmouth_mask.nc ;;
......@@ -533,7 +536,18 @@ case $ISRC in
rm t[12345].nc ;;
[67] ) cdo setvar,FMOUTH $DNHDPARA rivmouth_source.nc ;;
* ) echo 'Treatment of mouth mask needs to be specified -> STOP' ; exit ;;
esac
esac
else
case $ISRC in
[1234] ) cdo -selvar,FDIR $DNHDPARA ts.nc
cdo setvar,FMOUTH -setgrid,ts.nc $dn_src_mouth rivmouth_source.nc
rm ts.nc ;;
5 ) cdo -selvar,lon $DNHDPARA ts.nc
cdo setvar,FMOUTH -setgrid,ts.nc $dn_src_mouth rivmouth_source.nc
rm ts.nc ;;
* ) cdo setvar,FMOUTH $dn_src_mouth rivmouth_source.nc ;;
esac
fi
#
# *** Run the Program to create data that will be used for the remapping of mouth points
# *** --> Creates files hd_to_ocean_mouth.nc, hdmouth_on_oceangrid.nc
......@@ -549,7 +563,21 @@ fi
#
# Add script settings to coupling file
ncatted -O -h -a Settings,global,o,c,"IMODE = $IMODE, ISRC=$ISRC, IOCEAN=$IOCEAN, IBGC=$IBGC" $DNOUT
if [ "$dn_src_mouth" != "" ]; then
ncatted -O -h -a Source_mask,global,o,c,"River mouth mask on source grid: $dn_src_mouth" $DNOUT
fi
YEAR=$YBEG
while [ $YEAR -le $YEND ] ; do
DNOUTFLOW=${DATA_OUT}/${CFLOW}_${CDIS}_on_${OM}${OVS}_${YEAR}.nc
ncatted -O -h -a Settings,global,o,c,"IMODE = $IMODE, ISRC=$ISRC, IOCEAN=$IOCEAN, IBGC=$IBGC" $DNOUTFLOW
if [ "$dn_src_mouth" != "" ]; then
ncatted -O -h -a Source_mask,global,o,c,"River mouth mask on source grid: $dn_src_mouth" $DNOUTFLOW
fi
if [ $IMODE -eq 4 ]; then
ncatted -O -h -a Primary_mask,global,o,c,"Preset primary mouth mask on ocean grid: $DN_OMOUTH_PRESET" $DNOUTFLOW
fi
YEAR=`expr $YEAR + 1`
done
#
if [ $ISRC -eq 6 ] ; then
mv $DNOUT ${DIN}/${OM}/${EXP}_$DNOUT
......