Changeset 2669 for palm/trunk/SCRIPTS


Ignore:
Timestamp:
Dec 6, 2017 4:03:27 PM (7 years ago)
Author:
raasch
Message:

file attributes and activation strings in .palm.iofiles revised, file extensions for nesting, masked output, wind turbine data, etc. changed

Location:
palm/trunk/SCRIPTS
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SCRIPTS/.palm.iofiles

    r2559 r2669  
    11#
    2 #----------------------------------------------------------------------------
     2#------------------------------------------------------------------------------------------
    33# List of input-files
    4 #----------------------------------------------------------------------------
    5 PARIN                    in:job        d3#      $base_data/$fname/INPUT         _p3d
    6 PARIN                    in:job        pcr      $base_data/$fname/INPUT         _pcr
    7 PARIN                    in:job        d3r      $base_data/$fname/INPUT         _p3dr
    8 TOPOGRAPHY_DATA          in:locopt     d3#:d3r  $base_data/$fname/INPUT         _topo
    9 #WTM_DATA                 in:job        d3#:d3r  $base_data/$fname/INPUT         _wtm
    10 BININ                    in:loc:lnpe   d3r:rec  $fast_io_catalog/$fname/RESTART _d3d
    11 PARTICLE_RESTART_DATA_IN in:loc:lnpe   prtr     $fast_io_catalog/$fname/RESTART _rprt
    12 DATA_1D_PR_NETCDF        in:locopt     prr      $base_data/$fname/OUTPUT        _pr     nc
    13 DATA_1D_SP_NETCDF        in:locopt     spr      $base_data/$fname/OUTPUT        _sp     nc
    14 DATA_1D_TS_NETCDF        in:locopt     tsr      $base_data/$fname/OUTPUT        _ts     nc
    15 DATA_1D_PTS_NETCDF       in:locopt     ptsr     $base_data/$fname/OUTPUT        _pts    nc
    16 DATA_2D_XY_NETCDF        in:locopt     xyr      $base_data/$fname/OUTPUT        _xy     nc
    17 DATA_2D_XY_AV_NETCDF     in:locopt     xyr      $base_data/$fname/OUTPUT        _xy_av  nc
    18 DATA_2D_XZ_NETCDF        in:locopt     xzr      $base_data/$fname/OUTPUT        _xz     nc
    19 DATA_2D_XZ_AV_NETCDF     in:locopt     xzr      $base_data/$fname/OUTPUT        _xz_av  nc
    20 DATA_2D_YZ_NETCDF        in:locopt     yzr      $base_data/$fname/OUTPUT        _yz     nc
    21 DATA_2D_YZ_AV_NETCDF     in:locopt     yzr      $base_data/$fname/OUTPUT        _yz_av  nc
    22 DATA_3D_NETCDF           in:locopt     3dr      $base_data/$fname/OUTPUT        _3d     nc
    23 DATA_3D_AV_NETCDF        in:locopt     3dr      $base_data/$fname/OUTPUT        _3d_av  nc
    24 DATA_MASK_01_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m01    nc
    25 DATA_MASK_01_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m01_av nc
    26 DATA_MASK_02_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m02    nc
    27 DATA_MASK_02_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m02_av nc
    28 DATA_MASK_03_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m03    nc
    29 DATA_MASK_03_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m03_av nc
    30 DATA_MASK_04_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m04    nc
    31 DATA_MASK_04_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m04_av nc
    32 DATA_MASK_05_NETCDF      in:locopt     mar      $base_data/$fname/OUTPUT        _m05    nc
    33 DATA_MASK_05_AV_NETCDF   in:locopt     mar      $base_data/$fname/OUTPUT        _m05_av nc
    34 DATA_PRT_NETCDF          in:locopt:pe  prtr     $base_data/$fname/OUTPUT        _prt
     4#------------------------------------------------------------------------------------------
     5PARIN                    in:tr      d3#      $base_data/$fname/INPUT          _p3d*
     6PARIN                    in:tr      d3r      $base_data/$fname/INPUT          _p3dr*
     7PARIN                    in:tr      pcr      $base_data/$fname/INPUT          _pcr
     8TOPOGRAPHY_DATA          inopt:tr   d3#:d3r  $base_data/$fname/INPUT          _topo*
     9WTM_DATA                 inopt:tr   d3#:d3r  $base_data/$fname/INPUT          _wtm
     10BININ                    in:lnpe    d3r:rec  $fast_io_catalog/$fname/RESTART  _d3d
     11PARTICLE_RESTART_DATA_IN in:lnpe    prtr     $fast_io_catalog/$fname/RESTART  _rprt
     12DATA_1D_PR_NETCDF        inopt      prr      $base_data/$fname/OUTPUT         _pr*       nc
     13DATA_1D_SP_NETCDF        inopt      spr      $base_data/$fname/OUTPUT         _sp*       nc
     14DATA_1D_TS_NETCDF        inopt      tsr      $base_data/$fname/OUTPUT         _ts*       nc
     15DATA_1D_PTS_NETCDF       inopt      ptsr     $base_data/$fname/OUTPUT         _pts*      nc
     16DATA_2D_XY_NETCDF        inopt      xyr      $base_data/$fname/OUTPUT         _xy*       nc
     17DATA_2D_XY_AV_NETCDF     inopt      xyr      $base_data/$fname/OUTPUT         _xy_av*    nc
     18DATA_2D_XZ_NETCDF        inopt      xzr      $base_data/$fname/OUTPUT         _xz*       nc
     19DATA_2D_YZ_NETCDF        inopt      yzr      $base_data/$fname/OUTPUT         _yz*       nc
     20DATA_3D_NETCDF           inopt      3dr      $base_data/$fname/OUTPUT         _3d*       nc
     21DATA_3D_AV_NETCDF        inopt      3dr      $base_data/$fname/OUTPUT         _3d*       nc
     22DATA_MASK_NETCDF         inopt      mar      $base_data/$fname/OUTPUT         _masked    nc
     23DATA_MASK_AV_NETCDF      inopt      mar      $base_data/$fname/OUTPUT         _masked_av nc
     24DATA_PRT_NETCDF          inopt:pe   prtr     $base_data/$fname/OUTPUT         _prt*      nc
    3525#
    36 #----------------------------------------------------------------------------
     26#------------------------------------------------------------------------------------------
    3727# List of output-files
    38 #----------------------------------------------------------------------------
    39 BINOUT                    out:loc:lnpe restart   $fast_io_catalog/$fname/RESTART  _d3d
    40 PARTICLE_RESTART_DATA_OUT out:loc:lnpe prt#:prtr $fast_io_catalog/$fname/RESTART  _rprt
     28#------------------------------------------------------------------------------------------
     29BINOUT*                    out:lnpe restart   $fast_io_catalog/$fname/RESTART  _d3d
     30PARTICLE_RESTART_DATA_OUT* out:lnpe prt#:prtr $fast_io_catalog/$fname/RESTART  _rprt
    4131#
    42 RUN_CONTROL       out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _rc
    43 RUN_CONTROL       out:loc:tra  d3r     $base_data/$fname/MONITORING  _rc
    44 HEADER            out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _header
    45 HEADER            out:loc:tra  d3r     $base_data/$fname/MONITORING  _header
    46 CPU_MEASURES      out:loc:tr   d3#:pcr $base_data/$fname/MONITORING  _cpu
    47 CPU_MEASURES      out:loc:tra  d3r     $base_data/$fname/MONITORING  _cpu
    48 PARTICLE_INFO     out:loc:tr   pt#     $base_data/$fname/MONITORING  _prt_info
    49 PARTICLE_INFO     out:loc:tra  ptr     $base_data/$fname/MONITORING  _prt_info
    50 LIST_PROFIL       out:loc:tr   d3#     $base_data/$fname/MONITORING  _list_pr
     32RUN_CONTROL*               out:tr   d3#:pcr   $base_data/$fname/MONITORING     _rc
     33RUN_CONTROL*               out:tra  d3r       $base_data/$fname/MONITORING     _rc
     34HEADER*                    out:tr   d3#:pcr   $base_data/$fname/MONITORING     _header
     35HEADER*                    out:tra  d3r       $base_data/$fname/MONITORING     _header
     36CPU_MEASURES*              out:tr   d3#:pcr   $base_data/$fname/MONITORING     _cpu
     37CPU_MEASURES*              out:tra  d3r       $base_data/$fname/MONITORING     _cpu
     38PARTICLE_INFO*             out:tr   pt#       $base_data/$fname/MONITORING     _prt_info
     39PARTICLE_INFO*             out:tra  ptr       $base_data/$fname/MONITORING     _prt_info
     40LIST_PROFIL*               out:tr   d3#       $base_data/$fname/MONITORING     _list_pr
    5141#
    52 TURBINE_PARAMETERS01   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters01
    53 TURBINE_PARAMETERS02   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters02
    54 TURBINE_PARAMETERS03   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters03
    55 TURBINE_PARAMETERS04   out:loc:tr   d3#:d3r   $base_data/$fname/MONITORING  _turbine_parameters04
     42DATA_1D_PR_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _pr        nc
     43DATA_1D_SP_NETCDF          out:tr   *         $base_data/$fname/OUTPUT         _sp        nc
     44DATA_1D_TS_NETCDF          out:tr   *         $base_data/$fname/OUTPUT         _ts        nc
     45DATA_1D_PTS_NETCDF         out:tr   *         $base_data/$fname/OUTPUT         _pts       nc
     46DATA_2D_XY_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _xy        nc
     47DATA_2D_XY_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _xy_av     nc
     48DATA_2D_XZ_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _xz        nc
     49DATA_2D_XZ_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _xz_av     nc
     50DATA_2D_YZ_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _yz        nc
     51DATA_2D_YZ_AV_NETCDF*      out:tr   *         $base_data/$fname/OUTPUT         _yz_av     nc
     52DATA_3D_NETCDF*            out:tr   *         $base_data/$fname/OUTPUT         _3d        nc
     53DATA_3D_AV_NETCDF*         out:tr   *         $base_data/$fname/OUTPUT         _3d_av     nc
     54DATA_MASK_NETCDF*          out:tr   *         $base_data/$fname/OUTPUT         _masked    nc
     55DATA_MASK_AV_NETCDF*       out:tr   *         $base_data/$fname/OUTPUT         _masked_av nc
    5656#
    57 DATA_1D_PR_NETCDF      out:loc:tr   pr#:prr   $base_data/$fname/OUTPUT  _pr     nc
    58 DATA_1D_SP_NETCDF      out:loc:tr   sp#:spr   $base_data/$fname/OUTPUT  _sp     nc
    59 DATA_1D_TS_NETCDF      out:loc:tr   ts#:tsr   $base_data/$fname/OUTPUT  _ts     nc
    60 DATA_1D_PTS_NETCDF     out:loc:tr   pts#:ptsr $base_data/$fname/OUTPUT  _pts    nc
    61 DATA_2D_XY_NETCDF      out:loc:tr   xy#:xyr   $base_data/$fname/OUTPUT  _xy     nc
    62 DATA_2D_XY_AV_NETCDF   out:loc:tr   xy#:xyr   $base_data/$fname/OUTPUT  _xy_av  nc
    63 DATA_2D_XZ_NETCDF      out:loc:tr   xz#:xzr   $base_data/$fname/OUTPUT  _xz     nc
    64 DATA_2D_XZ_AV_NETCDF   out:loc:tr   xz#:xzr   $base_data/$fname/OUTPUT  _xz_av  nc
    65 DATA_2D_YZ_NETCDF      out:loc:tr   yz#:yzr   $base_data/$fname/OUTPUT  _yz     nc
    66 DATA_2D_YZ_AV_NETCDF   out:loc:tr   yz#:yzr   $base_data/$fname/OUTPUT  _yz_av  nc
    67 DATA_3D_NETCDF         out:loc:tr   3d#:3dr   $base_data/$fname/OUTPUT  _3d     nc
    68 DATA_3D_AV_NETCDF      out:loc:tr   3d#:3dr   $base_data/$fname/OUTPUT  _3d_av  nc
    69 DATA_MASK_01_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m01    nc
    70 DATA_MASK_01_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m01_av nc
    71 DATA_MASK_02_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m02    nc
    72 DATA_MASK_02_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m02_av nc
    73 DATA_MASK_03_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m03    nc
    74 DATA_MASK_03_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m03_av nc
    75 DATA_MASK_04_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m04    nc
    76 DATA_MASK_04_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m04_av nc
    77 DATA_MASK_05_NETCDF    out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m05    nc
    78 DATA_MASK_05_AV_NETCDF out:loc:tr   ma#:mar   $base_data/$fname/OUTPUT  _m05_av nc
    79 DATA_PRT_NETCDF        out:loc:pe   prt#:prtr $base_data/$fname/OUTPUT  _prt
    80 DATA_PRT_NETCDF        out:loc:trpe prt#:prtr $base_data/$fname/OUTPUT  _prt
    81 PLOTTS_PAR             out:loc:tr   ts#:tsr   $base_data/$fname/OUTPUT  _ts_par
    82 PLOTTS_DATA            out:loc:tr   ts#       $base_data/$fname/OUTPUT  _ts_in
    83 PLOTTS_DATA            out:loc:tra  tsr       $base_data/$fname/OUTPUT  _ts_in
    84 PLOT1D_PAR             out:loc:tr   pr#:prr   $base_data/$fname/OUTPUT  _pr_par
    85 PLOT1D_DATA            out:loc:tr   pr#       $base_data/$fname/OUTPUT  _pr_in
    86 PLOT1D_DATA            out:loc:tr   prr       $base_data/$fname/OUTPUT  _pr_in
    87 PARTICLE_DATA          out:loc:lnpe prt#:prtr $base_data/$fname/OUTPUT  _prt_dat
     57DATA_PRT_NETCDF*           out:pe   *         $base_data/$fname/OUTPUT         _prt
     58DATA_PRT_NETCDF*           out:trpe *         $base_data/$fname/OUTPUT         _prt
     59PARTICLE_DATA*             out:lnpe *         $base_data/$fname/OUTPUT         _prt_dat
    8860#
    89 #----------------------------------------------------------------------------
    90 # List of input-files for nested model runs
    91 #----------------------------------------------------------------------------
    92 PARIN_02           in:job        nest#      $base_data/$fname/INPUT   _02_p3d
    93 TOPOGRAPHY_DATA_02 in:locopt     nest#      $base_data/$fname/INPUT   _02_topo
    94 PARIN_03           in:job        nest#      $base_data/$fname/INPUT   _02_p3d
    95 TOPOGRAPHY_DATA_03 in:locopt     nest#      $base_data/$fname/INPUT   _02_topo
    96 #
    97 #----------------------------------------------------------------------------
    98 # List of input-files for coupled ocean model
    99 #----------------------------------------------------------------------------
    100 #PARIN_O                  in:job        d3o#      $base_data/$fname/INPUT         _o_p3d
    101 #PARIN_O                  in:job        d3or      $base_data/$fname/INPUT         _o_p3df
    102 #BININ_O                  in:loc:lnpe   d3or:reco $fast_io_catalog/$fname/RESTART _o_d3d
    103 #
    104 #----------------------------------------------------------------------------
    105 # List of output-files for coupled ocean model
    106 #----------------------------------------------------------------------------
    107 RUN_CONTROL_02     out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_rc
    108 RUN_CONTROL_02     out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_rc
    109 HEADER_02          out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_header
    110 HEADER_02          out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_header
    111 CPU_MEASURES_02    out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_cpu
    112 CPU_MEASURES_02    out:loc:tra  nestr     $base_data/$fname/MONITORING     _2_cpu
    113 LIST_PROFIL_02     out:loc:tr   nest#     $base_data/$fname/MONITORING     _2_list_pr
    114 BINOUT_02          out:loc:lnpe restart   $fast_io_catalog/$fname/RESTART  _2_d3d
    115 #
    116 DATA_1D_PR_NETCDF_2    out:loc:tr pro#:pror   $base_data/$fname/OUTPUT _2_pr     nc
    117 DATA_1D_SP_NETCDF_2    out:loc:tr spo#:spor   $base_data/$fname/OUTPUT _2_sp     nc
    118 DATA_1D_TS_NETCDF_2    out:loc:tr tso#:tsor   $base_data/$fname/OUTPUT _2_ts     nc
    119 DATA_1D_PTS_NETCDF_2   out:loc:tr ptso#:ptsor $base_data/$fname/OUTPUT _2_pts    nc
    120 DATA_2D_XY_NETCDF_2    out:loc:tr xyo#:xyor   $base_data/$fname/OUTPUT _2_xy     nc
    121 DATA_2D_XY_AV_NETCDF_2 out:loc:tr xyo#:xyor   $base_data/$fname/OUTPUT _2_xy_av  nc
    122 DATA_2D_XZ_NETCDF_2    out:loc:tr xzo#:xzor   $base_data/$fname/OUTPUT _2_xz     nc
    123 DATA_2D_XZ_AV_NETCDF_2 out:loc:tr xzo#:xzor   $base_data/$fname/OUTPUT _2_xz_av  nc
    124 DATA_2D_YZ_NETCDF_2    out:loc:tr yzo#:yzor   $base_data/$fname/OUTPUT _2_yz     nc
    125 DATA_2D_YZ_AV_NETCDF_2 out:loc:tr yzo#:yzor   $base_data/$fname/OUTPUT _2_yz_av  nc
     61WTM_OUTPUT_DATA*           out:tr   *         $base_data/$fname/MONITORING     _wtm
  • palm/trunk/SCRIPTS/palmrun

    r2639 r2669  
    2727# -----------------
    2828# $Id$
     29# file attributes in .palm.iofiles restructured, "loc" attribute completely
     30# removed,
     31# wildcard (*) allowed in .palm.iofiles as file activation string for output
     32# files,
     33# informative messages in case of missing optional input files shortened
     34# bugfix: variable cycle explicitly interpreted with 10 as the number base
     35#
     36# 2638 2017-11-23 12:44:23Z raasch
    2937# use of wildcards in file connection statements enabled
    3038#
     
    515523 do
    516524
    517        # FIRST REPLACE ENVIRONMENT-VARIABLES BY THEIR RESPECTIVE VALUES
    518     eval  line=\"$line\"
    519 
     525       # REPLACE REPEATING SPACES BETWEEN THE COLUMNS BY A SINGLE SPACE
     526    line=`echo "$line" | sed -e "s/\s\{1,\}/ /g"`
    520527
    521528       # INTERPRET THE LINE
     
    535542          # LINE DEFINES FILE CONNECTION. READ THE FILE ATTRIBUTES.
    536543          # s2a: in/out - field
    537           # s2b: loc    - field (optional)
    538           # s2c: tr/ar  - field (optional)
    539        s1=`echo $line | cut -d" " -f1`
    540        s2=`echo $line | cut -d" " -s -f2`
    541        s2a=$(echo $s2 | cut -d":" -f1)
     544          # s2b: action - field (optional)
     545       s1=`echo "$line" | cut -d" " -f1`
     546       s2=`echo "$line" | cut -d" " -s -f2`
     547#       s2a=$(echo $s2 | cut -d":" -f1)
    542548       if [[ $(echo $s2 | grep -c ":") = 0 ]]
    543549       then
     550          s2a=$s2
    544551          s2b=""
    545           s2c=""
    546552       else
    547           s2b=`echo $s2 | cut -d":" -f2 | sed 's/:/ /g'`
    548           s2c=`echo $s2 | cut -d":" -s -f3 | sed 's/:/ /g'`
    549        fi
    550        s3=`echo $line | cut -d" " -f3`
    551        s4=`echo $line | cut -d" " -s -f4`
    552        s5=`echo $line | cut -d" " -s -f5`
    553        s6=`echo $line | cut -d" " -s -f6`
     553          s2a=`echo $s2 | cut -d":" -f1`
     554          s2b=`echo $s2 | cut -d":" -f2`
     555       fi
     556       s3=`echo "$line" | cut -d" " -f3 | sed 's/*/wildcard /g'`
     557       s4=`echo "$line" | cut -d" " -s -f4`
     558       eval s4=\"$s4\"    # REPLACE ENVIRONMENT-VARIABLES IN PATH BY THEIR RESPECTIVE VALUES
     559       echo "### s4=\"$s4\" "
     560       s5=`echo "$line" | cut -d" " -s -f5`
     561       s6=`echo "$line" | cut -d" " -s -f6`
    554562
    555563       
     
    558566          # VARIABLE S3 MAY CONTAIN A LIST OF ACTIVATION STRINGS (FIELD-SEPERATOR ":").
    559567          # IF EXECUTION IS SCHEDULED FOR A REMOTE-MACHINE AND THE FILE IS ONLY
    560           # LOCALLY REQUIRED ON THAT MACHINE (I.E. s2b = loc), THE FILE CONNECTION
     568          # LOCALLY REQUIRED ON THAT MACHINE (I.E. s2b != tr), THE FILE CONNECTION
    561569          # IS NOT CHECKED AND STORED.
    562570       IFSALT="$IFS"; IFS="$IFS:"      # ADD ":" AS FIELD SEPARATOR
    563        if [[ "$s2a" = in  &&  ! ( $create_remote_batch_job = true  &&  ( "$s2b" = loc  ||  "$s2b" = locopt ) ) ]]
     571       if [[ ( "$s2a" = in  || "$s2a" = inopt )  &&  ! ( $create_remote_batch_job = true  &&  "$s2b" != tr ) ]]
    564572       then
    565573          found=false
     
    574582          then
    575583             (( iin = iin + 1 ))
    576              localin_pre[$iin]=$s1; transin_pre[$iin]=$s2b; actionin_pre[$iin]=$s2c;
     584             localin_pre[$iin]=$s1; actionin_pre[$iin]=$s2b;
    577585             pathin_pre[$iin]=$s4; endin_pre[$iin]=$s5; extin_pre[$iin]=$s6
     586             if [[ "$s2a" = inopt ]]
     587             then
     588                optin_pre[$iin]=yes
     589             else
     590                optin_pre[$iin]=no
     591             fi
    578592
    579593                # FILES WITH JOB-ATTRIBUTE ARE STORED IN THE SOURCES_FOR_RUN
    580594                # FOLDER IF THE JOB IS RUNNING ON A REMOTE HOST
    581              if [[ $running_on_remote = true  && ( "$s2b" = job  ||  "$s2b" = jobopt ) ]]
     595             if [[ $running_on_remote = true  &&  "$s2b" = tr ]]
    582596             then
    583597                pathin_pre[$iin]=${fast_io_catalog}/${sources_for_run_catalog}
     
    588602             if [[ "${s5: -1}" = "*" ]]
    589603             then
    590                 if [[ "$s2c" = "di" ]]
     604                if [[ "$s2b" = "di" ]]
    591605                then
    592606                   printf "\n    +++ wildcards (*) not allowed with \"di\" file attribute."
     
    602616             fi
    603617          fi
    604        elif [[ "$s2a" = out  &&  ! ( $create_remote_batch_job = true  &&  "$s2b" = loc ) ]]
     618       elif [[ "$s2a" = out  &&  ! ( $create_remote_batch_job = true ) ]]
    605619       then
    606620          found=false
     621          echo "### line=\"$line\" "
    607622          for  actual  in  $activation_string_list
    608623          do
    609624             for  formal  in  $s3 
    610625             do
    611                 [[ $actual = $formal  ||  "$formal" = "-"  ]]  &&  found=true
     626                echo "--- actual=\"$actual\"   formal=\"$formal\"   s3=\"$s3\" "
     627                if [[ $actual = $formal  ||  $formal = wildcard  ]]
     628                then
     629                   found=true
     630                   echo "--- found"
     631                else
     632                   echo "--- not found"
     633                fi
    612634             done
    613635          done
     
    615637          then
    616638             (( iout = iout + 1 ))
    617              localout_pre[$iout]=$s1; actionout_pre[$iout]=$s2c; typeout_pre[$iout]=$s3;
     639             localout_pre[$iout]=$s1; actionout_pre[$iout]=$s2b
    618640             pathout_pre[$iout]=$s4; endout_pre[$iout]=$s5; extout_pre[$iout]=$s6
     641             echo "### pathout_pre[$iout]=\"${pathout_pre[$iout]}\" "
     642
     643                # CHECK IF WILDCARD IS USED AS ACTIVATION STRING
     644                # IN SUCH CASES, NO WARNING WILL LATER BE OUTPUT IF LOCAL FILES DO NOT EXIST
     645             if [[ $formal = wildcard  ]]
     646             then
     647                warnout_pre[$iout]=false
     648             else
     649                warnout_pre[$iout]=true
     650             fi
    619651
    620652                # CHECK FOR MULTIPLE FILES, SET A RESPECTIVE FLAG AND REMOVE
     
    622654             if [[ "${s1: -1}" = "*" ]]
    623655             then
    624                 if [[ "$s2c" = "di" ]]
     656                if [[ "$s2b" = "di" ]]
    625657                then
    626658                   printf "\n    +++ wildcards (*) not allowed with \"di\" file attribute."
     
    636668             fi
    637669          fi
    638        elif [[ "$s2a" != in  &&  "$s2a" != out ]]
    639        then
    640           printf "\n  +++ I/O-attribute in configuration file $config_file has the invalid"
    641           printf "\n      value \"$s2\". Only \"in\" and \"out\" are allowed!"
     670       elif [[ "$s2a" != in  &&  "$s2a" != inopt  &&  "$s2a" != out ]]
     671       then
     672          printf "\n  +++ I/O-attribute in file $fileconnection_file has invalid"
     673          printf "\n      value \"$s2\". Only \"in\", \"inopt\", and \"out\" are allowed!"
    642674          locat=connect; exit
    643675       fi
     
    10241056    then
    10251057
    1026           # FILES WITH ATTRIBUTE locopt ARE OPTIONAL. NO ABORT, IF THEY DO NOT EXIST.
    1027        if [[ "${transin_pre[$i]}" != "locopt"  &&  "${transin_pre[$i]}" != "jobopt" ]]
     1058          # FILES WITH ATTRIBUTE opt ARE OPTIONAL. NO ABORT, IF THEY DO NOT EXIST.
     1059       if [[ "${optin_pre[$i]}" != "yes" ]]
    10281060       then
    10291061          printf "\n\n  +++ INPUT-file: "
     
    10391071          (( nr_of_input_files = nr_of_input_files + 1 ))
    10401072          localin[$nr_of_input_files]="${localin_pre[$i]}"
    1041           transin[$nr_of_input_files]="unavailable"
    1042           actionin[$nr_of_input_files]="${actionin_pre[$i]}"
     1073          optin[$nr_of_input_files]="${optin_pre[$i]}"
     1074          actionin[$nr_of_input_files]="unavailable"
    10431075          pathin[$nr_of_input_files]="${pathin_pre[$i]}"
    10441076          endin[$nr_of_input_files]="${endin_pre[$i]}"
     
    11281160          (( nr_of_input_files = nr_of_input_files + 1 ))
    11291161          localin[$nr_of_input_files]="${localin_pre[$i]}"$ending
    1130           transin[$nr_of_input_files]="${transin_pre[$i]}"
     1162          optin[$nr_of_input_files]="${optin_pre[$i]}"
    11311163          actionin[$nr_of_input_files]="${actionin_pre[$i]}"
    11321164          pathin[$nr_of_input_files]="${pathin_pre[$i]}"
     
    11641196              if [[ $cycle =~ ^-?[0-9]+$ ]]
    11651197              then
    1166                  (( icycle = $cycle ))
     1198                    # NUMBERS WITH LEADING ZEROS ARE INTERPRETED AS OCTAL NUMBERS
     1199                    # 10# EXPLICITLY SPECIFIES THE NUMBER BASE AS 10
     1200                 (( icycle = $((10#$cycle)) ))
    11671201              else
    11681202                 (( icycle = 0 ))
     
    17551789
    17561790
    1757     # WHEN CREATING A REMOTE BATCH JOB, THOSE INPUT FILES WITH JOB-ATTRIBUT WILL
    1758     # BE COPIED TO THE REMOTE HOST
     1791    # WHEN CREATING A REMOTE BATCH JOB, THOSE INPUT FILES WITH TRANSFER-ATTRIBUT
     1792    # WILL BE COPIED TO THE REMOTE HOST
    17591793 if [[ $create_remote_batch_job = true ]]
    17601794 then
     
    17631797    do
    17641798       (( i = i + 1 ))
    1765        if [[ "${transin[$i]}" = job  ||  "${transin[$i]}" = jobopt ]]
     1799       if [[ "${actionin[$i]}" = tr ]]
    17661800       then
    17671801          eval inputfile=${pathin[$i]}/${frelin[$i]}
     
    18021836       # PROVIDE THE INPUT FILES
    18031837       # LOOP OVER ALL ACTIVATED FILES (LISTED IN THE CONFIGURATION FILE)
     1838    optional_files_missing=false
    18041839    (( i = 0 ))
    18051840    while (( i < nr_of_input_files ))
     
    18131848
    18141849          # SKIP OPTIONAL FILES, IF THEY DO NOT EXIST
    1815        if [[ "${transin[$i]}" = unavailable ]]
    1816        then
    1817           if [[ "${extin[$i]}" = ""  ||  "${extin[$i]}" = " " ]]
    1818           then
    1819              printf "\n  *** INFORMATIVE: input file \"${pathin[$i]}/${fname}${endin[$i]}\" "
    1820              printf "\n                   is not available!"
    1821           else
    1822              printf "\n  *** INFORMATIVE: input file \"${pathin[$i]}/${fname}${endin[$i]}.${extin[$i]}\" "
    1823              printf "\n                   is not available!"
    1824           fi
     1850       if [[ "${actionin[$i]}" = unavailable ]]
     1851       then
     1852          optional_files_missing=true
    18251853          continue
    18261854       fi
     
    18871915
    18881916          # FILE IS STORED IN THE RESPECTIVE DIRECTORY GIVEN IN THE CONFIGURATION FILE
    1889        if [[ "${actionin[$i]}" = ""  ||  "${actionin[$i]}" = "di"  ||  "${actionin[$i]}" = "npe" ]]
     1917       if [[ "${actionin[$i]}" = ""  ||  "${actionin[$i]}" = "di"  ||  "${actionin[$i]}" = "tr"  ||  "${actionin[$i]}" = "npe" ]]
    18901918       then
    18911919
     
    19621990                      printf "\n  --- WARNING: ln failed, using cp instead (might be time consuming...)"
    19631991                                 fi
    1964                    if [[ $running_on_remote = true  &&  ( "${transin[$i]}" = job  ||  "${transin[$i]}" = jobopt ) ]]
     1992                   if [[ $running_on_remote = true  &&  "${actionin[$i]}" = tr ]]
    19651993                   then
    19661994                      mv  ${absnamein[$i]}  ${localin[$i]}
     
    19762004    if (( i != 0 ))
    19772005    then
     2006       if [[ $optional_files_missing = true ]]
     2007       then
     2008          printf "\n  *** INFORMATIVE: some optional INPUT-files are not present"
     2009       fi
    19782010       printf "\n$dashes\n  *** all INPUT-files provided \n"
    19792011    fi
     
    22082240          endout[$nr_of_output_files]="${endout_pre[$i]}"$ending
    22092241          extout[$nr_of_output_files]="${extout_pre[$i]}"
     2242          warnout[$nr_of_output_files]="${warnout_pre[$i]}"
    22102243
    22112244       done
     
    22682301             if [[ $cycle =~ ^-?[0-9]+$ ]]
    22692302             then
    2270                 (( icycle = $cycle + 1 ))
     2303                   # NUMBERS WITH LEADING ZEROS ARE INTERPRETED AS OCTAL NUMBERS
     2304                   # 10# EXPLICITLY SPECIFIES THE NUMBER BASE AS 10
     2305                (( icycle = $((10#$cycle)) + 1 ))
    22712306             else
    22722307                (( icycle = 1 ))
     
    23462381       if [[ ! -f ${localout[$i]}  &&  $files_for_cores = false ]]
    23472382       then
    2348           printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}  does not exist\n"
     2383          if [[ ${warnout[$i]} = true ]]
     2384          then
     2385             printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}  does not exist\n"
     2386          fi
    23492387       elif [[ ! -d ${localout[$i]}  &&  $files_for_cores = true ]]
    23502388       then
    2351           printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}/....  does not exist\n"
     2389          if [[ ${warnout[$i]} = true ]]
     2390          then
     2391             printf "\n  +++ temporary OUTPUT-file  ${localout[$i]}/....  does not exist\n"
     2392          fi
    23522393       else
    23532394
Note: See TracChangeset for help on using the changeset viewer.