/[MITgcm]/MITgcm_contrib/jmc_script/extract_StD
ViewVC logotype

Diff of /MITgcm_contrib/jmc_script/extract_StD

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph | View Patch Patch

revision 1.2 by jmc, Mon Apr 10 20:10:46 2006 UTC revision 1.4 by jmc, Tue Feb 11 22:17:43 2020 UTC
# Line 1  Line 1 
1  #!/bin/sh  #! /usr/bin/env bash
2    
3  # $Header$  # $Header$
4  # $Name$  # $Name$
5    
6  add=0 ; mut=0 ;  add=0 ; mut=0 ;
7  if [ $# -ge 3 ]  if [ $# -ge 3 ]
8  then  then
9   if test $1 = '-a' ; then add=1; shift; fi   if test $1 = '-a' ; then add=1; shift; fi
10   if test $1 = '-s' ; then mut=1; shift; fi   if test $1 = '-s' ; then mut=1; shift; fi
# Line 36  then listV=`sed -n '/^# Fields /s/# Fiel Line 36  then listV=`sed -n '/^# Fields /s/# Fiel
36  else  else
37   shift; shift; shift; listV=$*   shift; shift; shift; listV=$*
38  fi  fi
39  if test $mut = 0 ; then  if test $mut = 0 ; then
40   grep '^# Fields ' $inpFil   grep '^# Fields ' $inpFil
41   echo 'selected var:' $listV   echo 'selected var:' $listV
42  #echo 'sufx, tmpFil:' $sufx $tmpFil  #echo 'sufx, tmpFil:' $sufx $tmpFil
# Line 47  for vv in $listV Line 47  for vv in $listV
47  do  do
48   case $vv in   case $vv in
49     'Eta') var='ETAN'     ; vfl=$vv ;;     'Eta') var='ETAN'     ; vfl=$vv ;;
50                'ETAN'     ) var=$vv ; vfl='Eta' ;;                'ETAN'     ) var=$vv ; vfl='Eta';;
    'Et2') var='ETANSQ'   ; vfl=$vv ;;  
               'ETANSQ'   ) var=$vv ; vfl='Et2' ;;  
51       'T') var='THETA'    ; vfl=$vv ;;       'T') var='THETA'    ; vfl=$vv ;;
52                'THETA'    ) var=$vv ; vfl='T' ;;                'THETA'    ) var=$vv ; vfl='T' ;;
53       'S') var='SALT'     ; vfl=$vv  ;;       'S') var='SALT'     ; vfl=$vv  ;;
# Line 61  do Line 59  do
59       'W') var='WVEL'     ; vfl=$vv  ;;       'W') var='WVEL'     ; vfl=$vv  ;;
60                'WVEL'     ) var=$vv ; vfl='W' ;;                'WVEL'     ) var=$vv ; vfl='W' ;;
61     'Phi') var='PHIHYD'   ; vfl=$vv  ;;     'Phi') var='PHIHYD'   ; vfl=$vv  ;;
62                'PHIHYD'   ) var=$vv ; vfl='Phi' ;;                'PHIHYD'   ) var=$vv ; vfl='Phi';;
63       'Et2') var='ETANSQ'   ; vfl=$vv ;;
64                  'ETANSQ'   ) var=$vv ; vfl='Et2';;
65        'T2') var='THETASQ'  ; vfl=$vv ;;
66                  'THETASQ'  ) var=$vv ; vfl='T2' ;;
67        'S2') var='SALTSQ'   ; vfl=$vv  ;;
68                  'SALTSQ'   ) var=$vv ; vfl='S2' ;;
69      'U2') var='UVELSQ'   ; vfl=$vv  ;;      'U2') var='UVELSQ'   ; vfl=$vv  ;;
70                'UVELSQ'   ) var=$vv ; vfl='U2' ;;                'UVELSQ'   ) var=$vv ; vfl='U2' ;;
71      'V2') var='VVELSQ'   ; vfl=$vv  ;;      'V2') var='VVELSQ'   ; vfl=$vv  ;;
72                'VVELSQ'   ) var=$vv ; vfl='V2' ;;                'VVELSQ'   ) var=$vv ; vfl='V2' ;;
73        'W2') var='WVELSQ'   ; vfl=$vv  ;;
74                  'WVELSQ'   ) var=$vv ; vfl='W2' ;;
75         *)  var=$vv ; vfl=$vv ;;         *)  var=$vv ; vfl=$vv ;;
76   esac   esac
77  #echo 'grep -m 1' "^ field : ${var} " $inpFil  #echo 'grep -m 1' "^ field : ${var} " $inpFil
# Line 81  do Line 87  do
87    then flag=0    then flag=0
88      outFil=${prfx}'_head'.$sufx      outFil=${prfx}'_head'.$sufx
89      nLin=`sed -n "/^# end of header/=" $inpFil`      nLin=`sed -n "/^# end of header/=" $inpFil`
90      head -$nLin $inpFil > $tmpFil      head -$nLin $inpFil > $tmpFil
91      if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi      if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi
92      if test -f $outFil      if test -f $outFil
93      then      then
# Line 115  do Line 121  do
121    echo "/^ field : $var /{" > $sedFil    echo "/^ field : $var /{" > $sedFil
122    if test $nLev = 1 ; then k=0 ; else k=-1 ; fi    if test $nLev = 1 ; then k=0 ; else k=-1 ; fi
123    while [ $k -le $nLev ]    while [ $k -le $nLev ]
124    do    do
125     echo "N" >> $sedFil     echo "N" >> $sedFil
126     k=`expr $k + 1`     k=`expr $k + 1`
127    done    done
# Line 126  do Line 132  do
132    if test $mut = 0 ; then head -1 $tmpFil ; fi    if test $mut = 0 ; then head -1 $tmpFil ; fi
133    if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi    if test -f $outFil -a $add = 0 ; then rm -f $outFil ; fi
134    touch $outFil    touch $outFil
135    sed '/^ k /d' $tmpFil | sed '/^ field /d' >> $outFil    sed '/^ k /d' $tmpFil | sed '/^ field /d' >> $outFil
136    rm -f $sedFil $tmpFil    rm -f $sedFil $tmpFil
137   fi   fi
138  done  done

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.4

  ViewVC Help
Powered by ViewVC 1.1.22