Index: palm/trunk/SCRIPTS/.palm.iofiles
===================================================================
--- palm/trunk/SCRIPTS/.palm.iofiles	(revision 2639)
+++ palm/trunk/SCRIPTS/.palm.iofiles	(revision 2669)
@@ -1,125 +1,61 @@
 #
-#----------------------------------------------------------------------------
+#------------------------------------------------------------------------------------------
 # List of input-files
-#----------------------------------------------------------------------------
-PARIN                    in:job        d3#      $base_data/$fname/INPUT         _p3d
-PARIN                    in:job        pcr      $base_data/$fname/INPUT         _pcr
-PARIN                    in:job        d3r      $base_data/$fname/INPUT         _p3dr
-TOPOGRAPHY_DATA          in:locopt     d3#:d3r  $base_data/$fname/INPUT         _topo
-#WTM_DATA                 in:job        d3#:d3r  $base_data/$fname/INPUT         _wtm
-BININ                    in:loc:lnpe   d3r:rec  $fast_io_catalog/$fname/RESTART _d3d
-PARTICLE_RESTART_DATA_IN in:loc:lnpe   prtr     $fast_io_catalog/$fname/RESTART _rprt
-DATA_1D_PR_NETCDF        in:locopt     prr      $base_data/$fname/OUTPUT        _pr     nc
-DATA_1D_SP_NETCDF        in:locopt     spr      $base_data/$fname/OUTPUT        _sp     nc
-DATA_1D_TS_NETCDF        in:locopt     tsr      $base_data/$fname/OUTPUT        _ts     nc
-DATA_1D_PTS_NETCDF       in:locopt     ptsr     $base_data/$fname/OUTPUT        _pts    nc
-DATA_2D_XY_NETCDF        in:locopt     xyr      $base_data/$fname/OUTPUT        _xy     nc
-DATA_2D_XY_AV_NETCDF     in:locopt     xyr      $base_data/$fname/OUTPUT        _xy_av  nc
-DATA_2D_XZ_NETCDF        in:locopt     xzr      $base_data/$fname/OUTPUT        _xz     nc
-DATA_2D_XZ_AV_NETCDF     in:locopt     xzr      $base_data/$fname/OUTPUT        _xz_av  nc
-DATA_2D_YZ_NETCDF        in:locopt     yzr      $base_data/$fname/OUTPUT        _yz     nc
-DATA_2D_YZ_AV_NETCDF     in:locopt     yzr      $base_data/$fname/OUTPUT        _yz_av  nc
-DATA_3D_NETCDF           in:locopt     3dr      $base_data/$fname/OUTPUT        _3d     nc
-DATA_3D_AV_NETCDF        in:locopt     3dr      $base_data/$fname/OUTPUT        _3d_av  nc
-DATA_MASK_01_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m01    nc
-DATA_MASK_01_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m01_av nc
-DATA_MASK_02_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m02    nc
-DATA_MASK_02_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m02_av nc
-DATA_MASK_03_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m03    nc
-DATA_MASK_03_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m03_av nc
-DATA_MASK_04_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m04    nc
-DATA_MASK_04_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m04_av nc
-DATA_MASK_05_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m05    nc
-DATA_MASK_05_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m05_av nc
-DATA_PRT_NETCDF          in:locopt:pe  prtr     $base_data/$fname/OUTPUT        _prt
+#------------------------------------------------------------------------------------------
+PARIN                    in:tr      d3#      $base_data/$fname/INPUT          _p3d*
+PARIN                    in:tr      d3r      $base_data/$fname/INPUT          _p3dr*
+PARIN                    in:tr      pcr      $base_data/$fname/INPUT          _pcr
+TOPOGRAPHY_DATA          inopt:tr   d3#:d3r  $base_data/$fname/INPUT          _topo*
+WTM_DATA                 inopt:tr   d3#:d3r  $base_data/$fname/INPUT          _wtm
+BININ                    in:lnpe    d3r:rec  $fast_io_catalog/$fname/RESTART  _d3d
+PARTICLE_RESTART_DATA_IN in:lnpe    prtr     $fast_io_catalog/$fname/RESTART  _rprt
+DATA_1D_PR_NETCDF        inopt      prr      $base_data/$fname/OUTPUT         _pr*       nc
+DATA_1D_SP_NETCDF        inopt      spr      $base_data/$fname/OUTPUT         _sp*       nc
+DATA_1D_TS_NETCDF        inopt      tsr      $base_data/$fname/OUTPUT         _ts*       nc
+DATA_1D_PTS_NETCDF       inopt      ptsr     $base_data/$fname/OUTPUT         _pts*      nc
+DATA_2D_XY_NETCDF        inopt      xyr      $base_data/$fname/OUTPUT         _xy*       nc
+DATA_2D_XY_AV_NETCDF     inopt      xyr      $base_data/$fname/OUTPUT         _xy_av*    nc
+DATA_2D_XZ_NETCDF        inopt      xzr      $base_data/$fname/OUTPUT         _xz*       nc
+DATA_2D_YZ_NETCDF        inopt      yzr      $base_data/$fname/OUTPUT         _yz*       nc
+DATA_3D_NETCDF           inopt      3dr      $base_data/$fname/OUTPUT         _3d*       nc
+DATA_3D_AV_NETCDF        inopt      3dr      $base_data/$fname/OUTPUT         _3d*       nc
+DATA_MASK_NETCDF         inopt      mar      $base_data/$fname/OUTPUT         _masked    nc
+DATA_MASK_AV_NETCDF      inopt      mar      $base_data/$fname/OUTPUT         _masked_av nc
+DATA_PRT_NETCDF          inopt:pe   prtr     $base_data/$fname/OUTPUT         _prt*      nc
 #
-#----------------------------------------------------------------------------
+#------------------------------------------------------------------------------------------
 # List of output-files
-#----------------------------------------------------------------------------
-BINOUT                    out:loc:lnpe restart   $fast_io_catalog/$fname/RESTART  _d3d
-PARTICLE_RESTART_DATA_OUT out:loc:lnpe prt#:prtr $fast_io_catalog/$fname/RESTART  _rprt
+#------------------------------------------------------------------------------------------
+BINOUT*                    out:lnpe restart   $fast_io_catalog/$fname/RESTART  _d3d
+PARTICLE_RESTART_DATA_OUT* out:lnpe prt#:prtr $fast_io_catalog/$fname/RESTART  _rprt
 #
-RUN_CONTROL       out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _rc
-RUN_CONTROL       out:loc:tra  d3r     $base_data/$fname/MONITORING  _rc
-HEADER            out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _header
-HEADER            out:loc:tra  d3r     $base_data/$fname/MONITORING  _header
-CPU_MEASURES      out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _cpu
-CPU_MEASURES      out:loc:tra  d3r     $base_data/$fname/MONITORING  _cpu
-PARTICLE_INFO     out:loc:tr   pt#     $base_data/$fname/MONITORING  _prt_info
-PARTICLE_INFO     out:loc:tra  ptr     $base_data/$fname/MONITORING  _prt_info
-LIST_PROFIL       out:loc:tr   d3#     $base_data/$fname/MONITORING  _list_pr
+RUN_CONTROL*               out:tr   d3#:pcr   $base_data/$fname/MONITORING     _rc
+RUN_CONTROL*               out:tra  d3r       $base_data/$fname/MONITORING     _rc
+HEADER*                    out:tr   d3#:pcr   $base_data/$fname/MONITORING     _header
+HEADER*                    out:tra  d3r       $base_data/$fname/MONITORING     _header
+CPU_MEASURES*              out:tr   d3#:pcr   $base_data/$fname/MONITORING     _cpu
+CPU_MEASURES*              out:tra  d3r       $base_data/$fname/MONITORING     _cpu
+PARTICLE_INFO*             out:tr   pt#       $base_data/$fname/MONITORING     _prt_info
+PARTICLE_INFO*             out:tra  ptr       $base_data/$fname/MONITORING     _prt_info
+LIST_PROFIL*               out:tr   d3#       $base_data/$fname/MONITORING     _list_pr
 #
-TURBINE_PARAMETERS01   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters01
-TURBINE_PARAMETERS02   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters02
-TURBINE_PARAMETERS03   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters03
-TURBINE_PARAMETERS04   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters04
+DATA_1D_PR_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _pr        nc
+DATA_1D_SP_NETCDF          out:tr   *         $base_data/$fname/OUTPUT         _sp        nc
+DATA_1D_TS_NETCDF          out:tr   *         $base_data/$fname/OUTPUT         _ts        nc
+DATA_1D_PTS_NETCDF         out:tr   *         $base_data/$fname/OUTPUT         _pts       nc
+DATA_2D_XY_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _xy        nc
+DATA_2D_XY_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _xy_av     nc
+DATA_2D_XZ_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _xz        nc
+DATA_2D_XZ_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _xz_av     nc
+DATA_2D_YZ_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _yz        nc
+DATA_2D_YZ_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _yz_av     nc
+DATA_3D_NETCDF*            out:tr   *         $base_data/$fname/OUTPUT         _3d        nc
+DATA_3D_AV_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _3d_av     nc
+DATA_MASK_NETCDF*          out:tr   *         $base_data/$fname/OUTPUT         _masked    nc
+DATA_MASK_AV_NETCDF*       out:tr   *         $base_data/$fname/OUTPUT         _masked_av nc
 #
-DATA_1D_PR_NETCDF      out:loc:tr   pr#:prr   $base_data/$fname/OUTPUT  _pr     nc
-DATA_1D_SP_NETCDF      out:loc:tr   sp#:spr   $base_data/$fname/OUTPUT  _sp     nc
-DATA_1D_TS_NETCDF      out:loc:tr   ts#:tsr   $base_data/$fname/OUTPUT  _ts     nc
-DATA_1D_PTS_NETCDF     out:loc:tr   pts#:ptsr $base_data/$fname/OUTPUT  _pts    nc
-DATA_2D_XY_NETCDF      out:loc:tr   xy#:xyr   $base_data/$fname/OUTPUT  _xy     nc
-DATA_2D_XY_AV_NETCDF   out:loc:tr   xy#:xyr   $base_data/$fname/OUTPUT  _xy_av  nc
-DATA_2D_XZ_NETCDF      out:loc:tr   xz#:xzr   $base_data/$fname/OUTPUT  _xz     nc
-DATA_2D_XZ_AV_NETCDF   out:loc:tr   xz#:xzr   $base_data/$fname/OUTPUT  _xz_av  nc
-DATA_2D_YZ_NETCDF      out:loc:tr   yz#:yzr   $base_data/$fname/OUTPUT  _yz     nc
-DATA_2D_YZ_AV_NETCDF   out:loc:tr   yz#:yzr   $base_data/$fname/OUTPUT  _yz_av  nc
-DATA_3D_NETCDF         out:loc:tr   3d#:3dr   $base_data/$fname/OUTPUT  _3d     nc
-DATA_3D_AV_NETCDF      out:loc:tr   3d#:3dr   $base_data/$fname/OUTPUT  _3d_av  nc
-DATA_MASK_01_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m01    nc
-DATA_MASK_01_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m01_av nc
-DATA_MASK_02_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m02    nc
-DATA_MASK_02_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m02_av nc
-DATA_MASK_03_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m03    nc
-DATA_MASK_03_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m03_av nc
-DATA_MASK_04_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m04    nc
-DATA_MASK_04_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m04_av nc
-DATA_MASK_05_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m05    nc
-DATA_MASK_05_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m05_av nc
-DATA_PRT_NETCDF        out:loc:pe   prt#:prtr $base_data/$fname/OUTPUT  _prt
-DATA_PRT_NETCDF        out:loc:trpe prt#:prtr $base_data/$fname/OUTPUT  _prt
-PLOTTS_PAR             out:loc:tr   ts#:tsr   $base_data/$fname/OUTPUT  _ts_par
-PLOTTS_DATA            out:loc:tr   ts#       $base_data/$fname/OUTPUT  _ts_in
-PLOTTS_DATA            out:loc:tra  tsr       $base_data/$fname/OUTPUT  _ts_in
-PLOT1D_PAR             out:loc:tr   pr#:prr   $base_data/$fname/OUTPUT  _pr_par
-PLOT1D_DATA            out:loc:tr   pr#       $base_data/$fname/OUTPUT  _pr_in
-PLOT1D_DATA            out:loc:tr   prr       $base_data/$fname/OUTPUT  _pr_in
-PARTICLE_DATA          out:loc:lnpe prt#:prtr $base_data/$fname/OUTPUT  _prt_dat
+DATA_PRT_NETCDF*           out:pe   *         $base_data/$fname/OUTPUT         _prt
+DATA_PRT_NETCDF*           out:trpe *         $base_data/$fname/OUTPUT         _prt
+PARTICLE_DATA*             out:lnpe *         $base_data/$fname/OUTPUT         _prt_dat
 #
-#----------------------------------------------------------------------------
-# List of input-files for nested model runs
-#----------------------------------------------------------------------------
-PARIN_02           in:job        nest#      $base_data/$fname/INPUT   _02_p3d
-TOPOGRAPHY_DATA_02 in:locopt     nest#      $base_data/$fname/INPUT   _02_topo
-PARIN_03           in:job        nest#      $base_data/$fname/INPUT   _02_p3d
-TOPOGRAPHY_DATA_03 in:locopt     nest#      $base_data/$fname/INPUT   _02_topo
-#
-#----------------------------------------------------------------------------
-# List of input-files for coupled ocean model
-#----------------------------------------------------------------------------
-#PARIN_O                  in:job        d3o#      $base_data/$fname/INPUT         _o_p3d
-#PARIN_O                  in:job        d3or      $base_data/$fname/INPUT         _o_p3df
-#BININ_O                  in:loc:lnpe   d3or:reco $fast_io_catalog/$fname/RESTART _o_d3d
-#
-#----------------------------------------------------------------------------
-# List of output-files for coupled ocean model
-#----------------------------------------------------------------------------
-RUN_CONTROL_02     out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_rc
-RUN_CONTROL_02     out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_rc
-HEADER_02          out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_header
-HEADER_02          out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_header
-CPU_MEASURES_02    out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_cpu
-CPU_MEASURES_02    out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_cpu
-LIST_PROFIL_02     out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_list_pr
-BINOUT_02          out:loc:lnpe restart   $fast_io_catalog/$fname/RESTART  _2_d3d
-#
-DATA_1D_PR_NETCDF_2    out:loc:tr pro#:pror   $base_data/$fname/OUTPUT _2_pr     nc
-DATA_1D_SP_NETCDF_2    out:loc:tr spo#:spor   $base_data/$fname/OUTPUT _2_sp     nc
-DATA_1D_TS_NETCDF_2    out:loc:tr tso#:tsor   $base_data/$fname/OUTPUT _2_ts     nc
-DATA_1D_PTS_NETCDF_2   out:loc:tr ptso#:ptsor $base_data/$fname/OUTPUT _2_pts    nc
-DATA_2D_XY_NETCDF_2    out:loc:tr xyo#:xyor   $base_data/$fname/OUTPUT _2_xy     nc
-DATA_2D_XY_AV_NETCDF_2 out:loc:tr xyo#:xyor   $base_data/$fname/OUTPUT _2_xy_av  nc
-DATA_2D_XZ_NETCDF_2    out:loc:tr xzo#:xzor   $base_data/$fname/OUTPUT _2_xz     nc
-DATA_2D_XZ_AV_NETCDF_2 out:loc:tr xzo#:xzor   $base_data/$fname/OUTPUT _2_xz_av  nc
-DATA_2D_YZ_NETCDF_2    out:loc:tr yzo#:yzor   $base_data/$fname/OUTPUT _2_yz     nc
-DATA_2D_YZ_AV_NETCDF_2 out:loc:tr yzo#:yzor   $base_data/$fname/OUTPUT _2_yz_av  nc
+WTM_OUTPUT_DATA*           out:tr   *         $base_data/$fname/MONITORING     _wtm
Index: palm/trunk/SCRIPTS/palmrun
===================================================================
--- palm/trunk/SCRIPTS/palmrun	(revision 2639)
+++ palm/trunk/SCRIPTS/palmrun	(revision 2669)
@@ -27,4 +27,12 @@
 # -----------------
 # $Id$
+# file attributes in .palm.iofiles restructured, "loc" attribute completely
+# removed,
+# wildcard (*) allowed in .palm.iofiles as file activation string for output
+# files,
+# informative messages in case of missing optional input files shortened
+# bugfix: variable cycle explicitly interpreted with 10 as the number base
+# 
+# 2638 2017-11-23 12:44:23Z raasch
 # use of wildcards in file connection statements enabled
 # 
@@ -515,7 +523,6 @@
  do
 
-       # FIRST REPLACE ENVIRONMENT-VARIABLES BY THEIR RESPECTIVE VALUES
-    eval  line=\"$line\"
-
+       # REPLACE REPEATING SPACES BETWEEN THE COLUMNS BY A SINGLE SPACE
+    line=`echo "$line" | sed -e "s/\s\{1,\}/ /g"`
 
        # INTERPRET THE LINE
@@ -535,21 +542,22 @@
           # LINE DEFINES FILE CONNECTION. READ THE FILE ATTRIBUTES.
           # s2a: in/out - field
-          # s2b: loc    - field (optional)
-          # s2c: tr/ar  - field (optional)
-       s1=`echo $line | cut -d" " -f1`
-       s2=`echo $line | cut -d" " -s -f2`
-       s2a=$(echo $s2 | cut -d":" -f1)
+          # s2b: action - field (optional)
+       s1=`echo "$line" | cut -d" " -f1`
+       s2=`echo "$line" | cut -d" " -s -f2`
+#       s2a=$(echo $s2 | cut -d":" -f1)
        if [[ $(echo $s2 | grep -c ":") = 0 ]]
        then
+          s2a=$s2
           s2b=""
-          s2c=""
        else
-          s2b=`echo $s2 | cut -d":" -f2 | sed 's/:/ /g'`
-          s2c=`echo $s2 | cut -d":" -s -f3 | sed 's/:/ /g'`
-       fi
-       s3=`echo $line | cut -d" " -f3`
-       s4=`echo $line | cut -d" " -s -f4`
-       s5=`echo $line | cut -d" " -s -f5`
-       s6=`echo $line | cut -d" " -s -f6`
+          s2a=`echo $s2 | cut -d":" -f1`
+          s2b=`echo $s2 | cut -d":" -f2`
+       fi
+       s3=`echo "$line" | cut -d" " -f3 | sed 's/*/wildcard /g'`
+       s4=`echo "$line" | cut -d" " -s -f4`
+       eval s4=\"$s4\"    # REPLACE ENVIRONMENT-VARIABLES IN PATH BY THEIR RESPECTIVE VALUES
+       echo "### s4=\"$s4\" "
+       s5=`echo "$line" | cut -d" " -s -f5`
+       s6=`echo "$line" | cut -d" " -s -f6`
 
        
@@ -558,8 +566,8 @@
           # VARIABLE S3 MAY CONTAIN A LIST OF ACTIVATION STRINGS (FIELD-SEPERATOR ":").
           # IF EXECUTION IS SCHEDULED FOR A REMOTE-MACHINE AND THE FILE IS ONLY
-          # LOCALLY REQUIRED ON THAT MACHINE (I.E. s2b = loc), THE FILE CONNECTION
+          # LOCALLY REQUIRED ON THAT MACHINE (I.E. s2b != tr), THE FILE CONNECTION
           # IS NOT CHECKED AND STORED.
        IFSALT="$IFS"; IFS="$IFS:"      # ADD ":" AS FIELD SEPARATOR
-       if [[ "$s2a" = in  &&  ! ( $create_remote_batch_job = true  &&  ( "$s2b" = loc  ||  "$s2b" = locopt ) ) ]]
+       if [[ ( "$s2a" = in  || "$s2a" = inopt )  &&  ! ( $create_remote_batch_job = true  &&  "$s2b" != tr ) ]]
        then
           found=false
@@ -574,10 +582,16 @@
           then
              (( iin = iin + 1 ))
-             localin_pre[$iin]=$s1; transin_pre[$iin]=$s2b; actionin_pre[$iin]=$s2c;
+             localin_pre[$iin]=$s1; actionin_pre[$iin]=$s2b;
              pathin_pre[$iin]=$s4; endin_pre[$iin]=$s5; extin_pre[$iin]=$s6
+             if [[ "$s2a" = inopt ]]
+             then
+                optin_pre[$iin]=yes
+             else
+                optin_pre[$iin]=no
+             fi 
 
                 # FILES WITH JOB-ATTRIBUTE ARE STORED IN THE SOURCES_FOR_RUN
                 # FOLDER IF THE JOB IS RUNNING ON A REMOTE HOST
-             if [[ $running_on_remote = true  && ( "$s2b" = job  ||  "$s2b" = jobopt ) ]]
+             if [[ $running_on_remote = true  &&  "$s2b" = tr ]]
              then
                 pathin_pre[$iin]=${fast_io_catalog}/${sources_for_run_catalog}
@@ -588,5 +602,5 @@
              if [[ "${s5: -1}" = "*" ]]
              then
-                if [[ "$s2c" = "di" ]]
+                if [[ "$s2b" = "di" ]]
                 then
                    printf "\n    +++ wildcards (*) not allowed with \"di\" file attribute."
@@ -602,12 +616,20 @@
              fi
           fi
-       elif [[ "$s2a" = out  &&  ! ( $create_remote_batch_job = true  &&  "$s2b" = loc ) ]]
+       elif [[ "$s2a" = out  &&  ! ( $create_remote_batch_job = true ) ]]
        then
           found=false
+          echo "### line=\"$line\" "
           for  actual  in  $activation_string_list
           do
              for  formal  in  $s3  
              do
-                [[ $actual = $formal  ||  "$formal" = "-"  ]]  &&  found=true
+                echo "--- actual=\"$actual\"   formal=\"$formal\"   s3=\"$s3\" "
+                if [[ $actual = $formal  ||  $formal = wildcard  ]]
+                then
+                   found=true
+                   echo "--- found"
+                else
+                   echo "--- not found"
+                fi
              done
           done
@@ -615,6 +637,16 @@
           then
              (( iout = iout + 1 ))
-             localout_pre[$iout]=$s1; actionout_pre[$iout]=$s2c; typeout_pre[$iout]=$s3;
+             localout_pre[$iout]=$s1; actionout_pre[$iout]=$s2b
              pathout_pre[$iout]=$s4; endout_pre[$iout]=$s5; extout_pre[$iout]=$s6
+             echo "### pathout_pre[$iout]=\"${pathout_pre[$iout]}\" "
+
+                # CHECK IF WILDCARD IS USED AS ACTIVATION STRING
+                # IN SUCH CASES, NO WARNING WILL LATER BE OUTPUT IF LOCAL FILES DO NOT EXIST
+             if [[ $formal = wildcard  ]]
+             then
+                warnout_pre[$iout]=false
+             else
+                warnout_pre[$iout]=true
+             fi
 
                 # CHECK FOR MULTIPLE FILES, SET A RESPECTIVE FLAG AND REMOVE
@@ -622,5 +654,5 @@
              if [[ "${s1: -1}" = "*" ]]
              then
-                if [[ "$s2c" = "di" ]]
+                if [[ "$s2b" = "di" ]]
                 then
                    printf "\n    +++ wildcards (*) not allowed with \"di\" file attribute."
@@ -636,8 +668,8 @@
              fi
           fi
-       elif [[ "$s2a" != in  &&  "$s2a" != out ]]
-       then
-          printf "\n  +++ I/O-attribute in configuration file $config_file has the invalid"
-          printf "\n      value \"$s2\". Only \"in\" and \"out\" are allowed!"
+       elif [[ "$s2a" != in  &&  "$s2a" != inopt  &&  "$s2a" != out ]]
+       then
+          printf "\n  +++ I/O-attribute in file $fileconnection_file has invalid"
+          printf "\n      value \"$s2\". Only \"in\", \"inopt\", and \"out\" are allowed!"
           locat=connect; exit
        fi
@@ -1024,6 +1056,6 @@
     then
 
-          # FILES WITH ATTRIBUTE locopt ARE OPTIONAL. NO ABORT, IF THEY DO NOT EXIST.
-       if [[ "${transin_pre[$i]}" != "locopt"  &&  "${transin_pre[$i]}" != "jobopt" ]]
+          # FILES WITH ATTRIBUTE opt ARE OPTIONAL. NO ABORT, IF THEY DO NOT EXIST.
+       if [[ "${optin_pre[$i]}" != "yes" ]]
        then
           printf "\n\n  +++ INPUT-file: "
@@ -1039,6 +1071,6 @@
           (( nr_of_input_files = nr_of_input_files + 1 ))
           localin[$nr_of_input_files]="${localin_pre[$i]}"
-          transin[$nr_of_input_files]="unavailable"
-          actionin[$nr_of_input_files]="${actionin_pre[$i]}"
+          optin[$nr_of_input_files]="${optin_pre[$i]}"
+          actionin[$nr_of_input_files]="unavailable"
           pathin[$nr_of_input_files]="${pathin_pre[$i]}"
           endin[$nr_of_input_files]="${endin_pre[$i]}"
@@ -1128,5 +1160,5 @@
           (( nr_of_input_files = nr_of_input_files + 1 ))
           localin[$nr_of_input_files]="${localin_pre[$i]}"$ending
-          transin[$nr_of_input_files]="${transin_pre[$i]}"
+          optin[$nr_of_input_files]="${optin_pre[$i]}"
           actionin[$nr_of_input_files]="${actionin_pre[$i]}"
           pathin[$nr_of_input_files]="${pathin_pre[$i]}"
@@ -1164,5 +1196,7 @@
               if [[ $cycle =~ ^-?[0-9]+$ ]]
               then
-                 (( icycle = $cycle ))
+                    # NUMBERS WITH LEADING ZEROS ARE INTERPRETED AS OCTAL NUMBERS
+                    # 10# EXPLICITLY SPECIFIES THE NUMBER BASE AS 10
+                 (( icycle = $((10#$cycle)) ))
               else
                  (( icycle = 0 ))
@@ -1755,6 +1789,6 @@
 
 
-    # WHEN CREATING A REMOTE BATCH JOB, THOSE INPUT FILES WITH JOB-ATTRIBUT WILL
-    # BE COPIED TO THE REMOTE HOST
+    # WHEN CREATING A REMOTE BATCH JOB, THOSE INPUT FILES WITH TRANSFER-ATTRIBUT
+    # WILL BE COPIED TO THE REMOTE HOST
  if [[ $create_remote_batch_job = true ]]
  then
@@ -1763,5 +1797,5 @@
     do
        (( i = i + 1 ))
-       if [[ "${transin[$i]}" = job  ||  "${transin[$i]}" = jobopt ]]
+       if [[ "${actionin[$i]}" = tr ]]
        then
           eval inputfile=${pathin[$i]}/${frelin[$i]}
@@ -1802,4 +1836,5 @@
        # PROVIDE THE INPUT FILES
        # LOOP OVER ALL ACTIVATED FILES (LISTED IN THE CONFIGURATION FILE)
+    optional_files_missing=false
     (( i = 0 ))
     while (( i < nr_of_input_files ))
@@ -1813,14 +1848,7 @@
 
           # SKIP OPTIONAL FILES, IF THEY DO NOT EXIST
-       if [[ "${transin[$i]}" = unavailable ]]
-       then
-          if [[ "${extin[$i]}" = ""  ||  "${extin[$i]}" = " " ]]
-          then
-             printf "\n  *** INFORMATIVE: input file \"${pathin[$i]}/${fname}${endin[$i]}\" "
-             printf "\n                   is not available!"
-          else
-             printf "\n  *** INFORMATIVE: input file \"${pathin[$i]}/${fname}${endin[$i]}.${extin[$i]}\" "
-             printf "\n                   is not available!"
-          fi
+       if [[ "${actionin[$i]}" = unavailable ]]
+       then
+          optional_files_missing=true
           continue
        fi
@@ -1887,5 +1915,5 @@
 
           # FILE IS STORED IN THE RESPECTIVE DIRECTORY GIVEN IN THE CONFIGURATION FILE
-       if [[ "${actionin[$i]}" = ""  ||  "${actionin[$i]}" = "di"  ||  "${actionin[$i]}" = "npe" ]]
+       if [[ "${actionin[$i]}" = ""  ||  "${actionin[$i]}" = "di"  ||  "${actionin[$i]}" = "tr"  ||  "${actionin[$i]}" = "npe" ]]
        then
 
@@ -1962,5 +1990,5 @@
                       printf "\n  --- WARNING: ln failed, using cp instead (might be time consuming...)"
 		                 fi
-                   if [[ $running_on_remote = true  &&  ( "${transin[$i]}" = job  ||  "${transin[$i]}" = jobopt ) ]]
+                   if [[ $running_on_remote = true  &&  "${actionin[$i]}" = tr ]]
                    then
                       mv  ${absnamein[$i]}  ${localin[$i]}
@@ -1976,4 +2004,8 @@
     if (( i != 0 ))
     then
+       if [[ $optional_files_missing = true ]]
+       then
+          printf "\n  *** INFORMATIVE: some optional INPUT-files are not present"
+       fi
        printf "\n$dashes\n  *** all INPUT-files provided \n"
     fi
@@ -2208,4 +2240,5 @@
           endout[$nr_of_output_files]="${endout_pre[$i]}"$ending
           extout[$nr_of_output_files]="${extout_pre[$i]}"
+          warnout[$nr_of_output_files]="${warnout_pre[$i]}"
 
        done
@@ -2268,5 +2301,7 @@
              if [[ $cycle =~ ^-?[0-9]+$ ]]
              then
-                (( icycle = $cycle + 1 ))
+                   # NUMBERS WITH LEADING ZEROS ARE INTERPRETED AS OCTAL NUMBERS
+                   # 10# EXPLICITLY SPECIFIES THE NUMBER BASE AS 10
+                (( icycle = $((10#$cycle)) + 1 ))
              else
                 (( icycle = 1 ))
@@ -2346,8 +2381,14 @@
        if [[ ! -f ${localout[$i]}  &&  $files_for_cores = false ]]
        then
-          printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}  does not exist\n"
+          if [[ ${warnout[$i]} = true ]]
+          then
+             printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}  does not exist\n"
+          fi
        elif [[ ! -d ${localout[$i]}  &&  $files_for_cores = true ]]
        then
-          printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}/....  does not exist\n"
+          if [[ ${warnout[$i]} = true ]]
+          then
+             printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}/....  does not exist\n"
+          fi
        else
 
