function ps1 (args)

expid  = subwrd(args,1)
expdsc = subwrd(args,2)
output = subwrd(args,3)
qlname = subwrd(args,4)
qiname = subwrd(args,5)

'run getenv "GEOSUTIL"'
         geosutil = result

'getinfo grav'
         grav  = result
'getinfo tdim'
         tdim  = result
'getinfo tunit'
         tunit = result

'set t 1 'tdim


* Compute Total, Dry, and Moist Instantaneous Values
* --------------------------------------------------
'define qtot = VAR1g/100'
'define qdry = VAR1g/100-(VAR2g+VAR3g+VAR4g)*'grav'/100.0'
'define qwet =           (VAR2g+VAR3g+VAR4g)*'grav'/100.0'


* Compute Total, Dry, and Moist Time-Averaged Values
* --------------------------------------------------
'define qtotave = ave(qtot,t=1,t='tdim')'
'define qdryave = ave(qdry,t=1,t='tdim')'
'define qwetave = ave(qwet,t=1,t='tdim')'

* -------------------------------------------------

'run minmax qtot'
       tmax = subwrd(result,1)
       tmin = subwrd(result,2)
'run minmax qtotave'
       tave = subwrd(result,1)
*      tave = 985.505
*      tmax = 985.562
*      tmin = 985.442

       tdif1  = tmax-tave
       tdif2  = tave-tmin
   if( tdif1 >= tdif2 )
       tdif   = 2*tdif1
   else
       tdif   = 2*tdif2
   endif

'run minmax qdry'
       dmax = subwrd(result,1)
       dmin = subwrd(result,2)
'run minmax qdryave'
       dave = subwrd(result,1)
*      dave = 983.099

       ddif1  = dmax-dave
       ddif2  = dave-dmin
   if( ddif1 >= ddif2 )
       ddif   = 2*ddif1
   else
       ddif   = 2*ddif2
   endif

'run minmax qwetave'
     wetave = subwrd(result,1)
*    wetave = 2.408

if( tdif > ddif ) ; ddif = tdif ; endif

* Plot Total Mass
* ---------------
'set vpage 0 11 3.9 8.4'

'set grads off'
'set ylab %.2f'

totave =   tave
totmax = totave + 0.6*ddif
totmin = totave - 0.6*ddif

'set t 1 'tdim
'set axlim 'totmin' 'totmax

'set grid on'
'set ylpos 0 l'
'set ylopts 1 3 0.11'

'set cmark  0'
'set cstyle 1'
'set ccolor 1'
'set cthick 6'
'd qtot'
'set cmark  0'
'set cstyle 1'
'set ccolor 1'
'set cthick 1'
'd qtotave'

* Plot Time-Average Values
* ------------------------
'set t 'tdim
'getinfo date'
         date = result
'd qtotave'
   qtotave = subwrd(result,4)
'q w2xy 'date' 'qtotave
    ytot = subwrd(result,6)
'd qdryave'
   qdryave = subwrd(result,4)
'd qwetave'
   qwetave = subwrd(result,4)

'set t 1'
'd qdry'
   qdrybeg = subwrd(result,4)
'set t 'tdim
'd qdry'
   qdryend = subwrd(result,4)
'set t 1 'tdim
   delqdry = (qdryend-qdrybeg)/tdim

* Convert delqdry to mb/decade
* ----------------------------
'getinfo tunit'
         tunit = result
if( tunit = 'month' ) ; delqdry = delqdry *    12     * 10 ; endif
if( tunit = 'day'   ) ; delqdry = delqdry *    365.25 * 10 ; endif
if( tunit = 'hour'  ) ; delqdry = delqdry * 24*365.25 * 10 ; endif

say '       QDYRBEG: 'qdrybeg
say '       QDYREND: 'qdryend
say 'ORIG   DELQDRY: 'delqdry

* Convert delqdry to SCI.NOTATION
* -------------------------------
if( 1>2 )
if( delqdry != 0 )
   'd log10(abs('delqdry'))'
    n = subwrd(result,4)
else
    n = 0
endif
say '    Log Factor: 'n
if( n<0 ) ; n = n-2 ; endif
'getint 'n
         n = result
if( n>0 )
    if( n<=2 )
        n = 0
    else
        n = n-2
    endif
endif
say 'Scaling Factor: 'n
if( n<0 ) ; n = -n ; endif
scaling = 1e''n
say ' delqdry = 'delqdry' * 'scaling
      delqdry =  delqdry  *  scaling

   'd 'delqdry
    delqdry = subwrd(result,4)
say 'Scaled DELQDRY: 'delqdry
endif

* Note:  Only take NDOT values after decimal point
* ------------------------------------------------
         val = delqdry
         ndot    = 3
         dotloc  = 0
         counter = 1
         while ( counter<20 )
                 dot = substr(val,counter,1)
             if( dot = '.' ) ; dotloc = counter ; endif
                              counter = counter + 1
         endwhile
             val = substr(val,1,dotloc+ndot)
         delqdry = val

'set strsiz .078'
'set string 1 l 6'
'draw string 0.78 'ytot ' 'qtotave


* Plot Dry Mass and QV
* --------------------
'set vpage 0 11 0 4.5'
'set grads off'
'set ylab %.2f'

dryave =   dave
drymax = dryave + 0.6* ddif
drymin = dryave - 0.6* ddif

wetmax = wetave + 0.6* ddif
wetmin = wetave - 0.6* ddif

'set t 1 'tdim
'set axlim 'drymin' 'drymax
*'set axlim 982.9999 983.2001'

'set ylpos 0 l'
'set ylopts 4 3 0.11'

'set cmark  0'
'set cstyle 1'
'set ccolor 4'
'set cthick 10'
'd qdry'
'set cmark  0'
'set cstyle 1'
'set ccolor 4'
'set cthick 1'
'd qdryave'

'set t 1'
'getinfo date'
         date = result
'q w2xy 'date' 'qdryave
   ydry = subwrd(result,6)
'set  strsiz .08'
'set  string 4 l 6'
'draw string 0.78 'ydry ' 'qdryave


'set t 1 'tdim
'set axlim 'wetmin' 'wetmax
*'set axlim 2.23999 2.40001'
'set ylopts 2 3 0.11'
'set ylpos 0 r'
'set grid off'
'set cmark  0'
'set cstyle 1'
'set ccolor 2'
'set cthick 6'
'd qwet'
'set cmark  0'
'set cstyle 1'
'set ccolor 2'
'set cthick 1'
'd qwetave'

'q w2xy 'date' 'qwetave
   ywet = subwrd(result,6)
   ydif = math_abs( ydry - ywet )
if(ydif<0.2 )
   if( ydry >= ywet ) ; ywet = ydry - 0.2 ; endif
   if( ydry <  ywet ) ; ywet = ydry + 0.2 ; endif
endif
'set  string 2 l 6'
'draw string 0.78 'ywet ' 'qwetave



* Plot Titles and Labels
* ----------------------
 'set  string 1 c 6'
 'set  strsiz .12'
 if( delqdry < 0 )
*'draw string 0.40 'ytot' loss (/'tunit')'
*'draw string 6.15 0.23 Dry Mass Loss: 'delqdry' x10`a-`n'n' (mb/decade)'
 'draw string 6.15 0.23 Dry Mass Trend: 'delqdry' (mb/decade)'
 else
*'draw string 0.40 'ytot' gain (/'tunit')'
*'draw string 6.15 0.23 Dry Mass Gain: 'delqdry' x10`a-`n'n' (mb/decade)'
 'draw string 6.15 0.23 Dry Mass Trend: 'delqdry' (mb/decade)'
 endif
                    ytot =  ytot-0.2
 'set  string 4 r 6'
*'draw string 1.30 'ytot' 'delqdry' x10`a-`n'n

'set vpage off'
'set string 1 c 6'
'set strsiz .12'
'draw string 6.15 8.25 'expid': 'expdsc
'set strsiz .14'
'draw string 6.15 7.95 Globally Integrated Total (Dry + QV+QL+QI) Surface Pressure (mb)'

    wetname = "QV"
if( qlname != NULL ) 
    wetname = wetname"+QL"
endif
if( qiname != NULL ) 
    wetname = wetname"+QI"
endif

'draw string 6.15 4.00 Dry (Blue) and Wet ['wetname'] (Red) Surface Pressure (mb)'

'myprint -name 'output'/PS_TIME_SERIES'
return
