From 35d6b296ae64b2cd4ba71135cfed8798bd858ebe Mon Sep 17 00:00:00 2001
From: Martin Schupfner <k204212@levante6.lvt.dkrz.de>
Date: Fri, 10 Jan 2025 09:37:41 +0100
Subject: [PATCH] Fix issue for simulation years with less than 4 digits for
 vilma and mpism.

---
 .../palmod2_cmor-rewrite_MPI-ESM1-2_mpism_auto.h       |  4 ++--
 .../palmod2_cmor-rewrite_MPI-ESM1-2_vilma_auto.h       |  2 +-
 .../scripts/palmod2_diagnostic_MPI-ESM1-2_mpism_auto.h |  8 ++++----
 ...ransient-deglaciation-interactive_r1i1p1f1-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p1f2-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p2f1-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p3f1-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p4f2-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p5f1-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p6f1-CR.runpp | 10 +++++-----
 ...ransient-deglaciation-interactive_r1i1p7f1-CR.runpp | 10 +++++-----
 11 files changed, 47 insertions(+), 47 deletions(-)

diff --git a/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_mpism_auto.h b/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_mpism_auto.h
index 8222d20..f6dec03 100644
--- a/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_mpism_auto.h
+++ b/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_mpism_auto.h
@@ -46,7 +46,7 @@ done
 cn='acabfIs dtb orogIs tlIs tsIs'
 for var in $cn; do
   { (if_requested $member $icemod IdecAnt $var $chunk '${icemod_dec_chunk}' || continue
-  find_file "$sdir" "pism_ant_${period}*.nc" ifile >> $err.find_file.IdecAnt 2>&1
+  find_file "$sdir" "pism_ant_${period}.nc" ifile >> $err.find_file.IdecAnt 2>&1
   mkdir -p $dr/$submodel/IdecAnt_${var}
   echo $cdo cmor,IdecAnt,i=$it,mt=$mt,dr=$dr/$submodel/IdecAnt_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile
   $cdo cmor,IdecAnt,i=$it,mt=$mt,dr=$dr/$submodel/IdecAnt_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile || echo ERROR
@@ -57,7 +57,7 @@ done
 cn='acabfIs dtb orogIs tlIs tsIs'
 for var in $cn; do
   { (if_requested $member $icemod IdecGre $var $chunk '${icemod_dec_chunk}' || continue
-  find_file "$sdir" "pism_nh_${period}*.nc" ifile >> $err.find_file.IdecGre 2>&1
+  find_file "$sdir" "pism_nh_${period}.nc" ifile >> $err.find_file.IdecGre 2>&1
   mkdir -p $dr/$submodel/IdecGre_${var}
   echo $cdo cmor,IdecGre,i=$it,mt=$mt,dr=$dr/$submodel/IdecGre_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile
   $cdo cmor,IdecGre,i=$it,mt=$mt,dr=$dr/$submodel/IdecGre_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile || echo ERROR
diff --git a/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_vilma_auto.h b/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_vilma_auto.h
index 118c288..d0e025c 100644
--- a/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_vilma_auto.h
+++ b/cmor/mpiesm/scripts/palmod2_cmor-rewrite_MPI-ESM1-2_vilma_auto.h
@@ -3,7 +3,7 @@ cn='orog sftgif'
 for var in $cn; do
   { (if_requested $member $slmod SLdec $var $chunk '${slmod_input_dec_chunk}' || continue
   mkdir -p $dr/$submodel/SLdec_${var}
-  find_file "$sdir" "SLdec_${var}_${period_bk}*.nc" ifile >> $err.find_file.SLdec 2>&1
+  find_file "$sdir" "SLdec_${var}_${period_bk}.nc" ifile >> $err.find_file.SLdec 2>&1
   echo $cdo cmor,SLdec,i=$it,mt=$mt,dr=$dr/$submodel/SLdec_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile
   $cdo cmor,SLdec,i=$it,mt=$mt,dr=$dr/$submodel/SLdec_${var},vd=$vd,cn=$var,ta=cmip,di=$di ${cdochain-} $ifile || echo ERROR
   )&; }>>$err.$var.SLdec 2>&1
diff --git a/cmor/mpiesm/scripts/palmod2_diagnostic_MPI-ESM1-2_mpism_auto.h b/cmor/mpiesm/scripts/palmod2_diagnostic_MPI-ESM1-2_mpism_auto.h
index d9829d1..93e24e8 100644
--- a/cmor/mpiesm/scripts/palmod2_diagnostic_MPI-ESM1-2_mpism_auto.h
+++ b/cmor/mpiesm/scripts/palmod2_diagnostic_MPI-ESM1-2_mpism_auto.h
@@ -1,7 +1,7 @@
 #-- Diagnostic for mpism (ESM: MPI-ESM1-2) variable libmassbffl / table IdecAnt
 # Editor Note: This variable needs to be converted to the correct units. So it should bmelt*ice_density (917)/secondsperyear. Requires aggregation to account for leap years. Added recipe just for testing.
 { (if_requested $member $icemod IdecAnt libmassbffl $chunk '${icemod_dec_chunk}' && {
-  find_file -e            "$sdir" "pism_ant_${period}*.nc" ifile
+  find_file -e            "$sdir" "pism_ant_${period}.nc" ifile
   echo "$cdo -f nc -O \
     -expr,'libmassbffl=bmelt*917/86400/365;' \
        $ifile ${sdir}/out_diag/IdecAnt_libmassbffl_${period}.nc"
@@ -13,7 +13,7 @@
 #-- Diagnostic for mpism (ESM: MPI-ESM1-2) variable libmassbffl / table IdecGre
 # Editor Note: This variable needs to be converted to the correct units. So it should bmelt*ice_density (917)/secondsperyear. Requires aggregation to account for leap years. Added recipe just for testing.
 { (if_requested $member $icemod IdecGre libmassbffl $chunk '${icemod_dec_chunk}' && {
-  find_file -e            "$sdir" "pism_nh_${period}*.nc" ifile
+  find_file -e            "$sdir" "pism_nh_${period}.nc" ifile
   echo "$cdo -f nc -O \
     -expr,'libmassbffl=bmelt*917/86400/365;' \
        $ifile ${sdir}/out_diag/IdecGre_libmassbffl_${period}.nc"
@@ -24,7 +24,7 @@
 
 #-- Diagnostic for mpism (ESM: MPI-ESM1-2) variable sftgifIt / table IdecAnt
 { (if_requested $member $icemod IdecAnt sftgifIt $chunk '${icemod_dec_chunk}' && {
-  find_file -e            "$sdir" "pism_ant_${period}*.nc" ifile
+  find_file -e            "$sdir" "pism_ant_${period}.nc" ifile
   echo "$cdo -f nc -O \
     ${cdochain-} -expr,'ifl=mask==0;gi=mask==2;fi=mask==3;o=mask==4;' \
     $ifile ${sdir}/out_diag/IdecAnt_sftgifIt_$period.nc"
@@ -35,7 +35,7 @@
 
 #-- Diagnostic for mpism (ESM: MPI-ESM1-2) variable sftgifIt / table IdecGre
 { (if_requested $member $icemod IdecGre sftgifIt $chunk '${icemod_dec_chunk}' && {
-  find_file -e            "$sdir" "pism_nh_${period}*.nc" ifile
+  find_file -e            "$sdir" "pism_nh_${period}.nc" ifile
   echo "$cdo -f nc -O \
     ${cdochain-} -expr,'ifl=mask==0;gi=mask==2;fi=mask==3;o=mask==4;' \
     $ifile ${sdir}/out_diag/IdecGre_sftgifIt_$period.nc"
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp
index d379e12..344e4cc 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f2-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f2-CR.runpp
index afc3389..7ec584c 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f2-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p1f2-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p2f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p2f1-CR.runpp
index be2d026..b905dc7 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p2f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p2f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp
index f45bf4a..a2a0352 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p3f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp
index 3af0bfd..3a86230 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p4f2-CR.runpp
@@ -427,15 +427,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp
index f4e9ea9..184c572 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p5f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp
index 0c33aa7..f5b31a2 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p6f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
diff --git a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp
index 092cdd0..d9548f8 100755
--- a/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp
+++ b/cmor/mpiesm/scripts/transient-deglaciation-interactive_r1i1p7f1-CR.runpp
@@ -426,15 +426,15 @@ function run_agg
 
             # Create softlinks to raw model output - PISM requires special treatment
             if [[ $submodel == "$icemod" ]]; then
-              #ln -sf $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
-              #ln -sf $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
-              cp -v $rawsdir_pism_ant/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
+              #ln -sf $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_ant/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_ant_${period}.nc
               ncatted -O -h -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_ant_${period}.nc || { echo "ERROR ncatted $sdir/pism_ant_${period}.nc" ; exit 1 ; }
-              cp -v $rawsdir_pism_nh/pism_-$(printf "%06d" $((inv_chunk_year - 10)))/pism_-$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
+              cp -v $rawsdir_pism_nh/pism_?$(printf "%06d" $((inv_chunk_year - 10)))/pism_?$(printf "%06d" $((inv_chunk_year - 10))).nc $sdir/pism_nh_${period}.nc
               ncatted -O -h -a ellipsoid,mapping,o,c,WGS84 -a grid_mapping_name,mapping,o,c,polar_stereographic -a false_easting,mapping,o,d,0. -a false_northing,mapping,o,d,0. -a latitude_of_projection_origin,mapping,o,d,90. -a standard_parallel,mapping,o,d,70. -a straight_vertical_longitude_from_pole,mapping,o,d,-45. -a scale_factor_at_projection_origin,mapping,o,d,1.0 $sdir/pism_nh_${period}.nc || { echo "ERROR ncatted $sdir/pism_nh_${period}.nc" ; exit 1 ; }
             elif [[ $submodel == "vilma" ]]; then
               if [[ "${chunks[${submodel}dec]}" == *" ${period: -1} "* ]]; then
-                ln -vsf $rawsdir/vilma_-$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_-$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
+                ln -vsf $rawsdir/vilma_?$(printf "%06d" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc || echo "ERROR ln -vsf $rawsdir/vilma_?$(printf \"%06d\" $((inv_chunk_year - 10)))/rsl.nc $sdir/rsl_${period_bk}.nc"
               fi
             else
               ln -sf $rawsdir/*_${period}* $sdir/ 2>/dev/null 1>&2 || { echo "ERROR creating links for $period ${RAW_EXP_IDS[$y]} $submodel" && exit 1 ; }
-- 
GitLab