UPP User Release Version 2.2

Release Date:

The UPP User Release Version 2.2 was released on April 18, 2014.

Release Notes

The Unified Post Processor Version 2.2 was released on April 18, 2014.

Also see 'Known Problems' in this release, which is updated as needed.

UPP Version 2.2 new features, updates and bug fixes

The bulk of the changes to UPP for v2.2 described below are miscellaneous bug fixes and minor modifications.

  • Change to how grid scale cloud bot/top are computed in the presence of snow for Ferrier physics.
  • Use timef instead of rtc for timing.
  • New icing fields added.
  • SLP_new.f and SLP_NMM.f: Modified to "remove" extra smoothing of SLP itself after it is derived using membrane reduction. This will result in small changes in SLP for both GFS and NAM at most grid points except for near the fronts and eyes of Hurricanes. NAM 1000 mb height will also be changed because NAM 1000 mb height is adjusted to membrane SLP.
  • Params.f: Modified to change earth radius from 6.370E6 to 6.371E6 to be consistent with w3lib definition.
  • All routines modified to explicitly state variables used from modules to reduce memory usage.
  • POLEAVG.f: Modified to fix vulnerability in computing variables at pole points that resulted in division by zeros sometimes.
  • grib2_module.f: Modified to correct, for Grib2 output only, 1) time stamp for accumulated fields 2) Grid specs for lat-lon grid.
  • grib2_module.f: Modified to use simple Grib2 packing instead of user-specified packing when the fields are constants since complex packing cannot reproduce Grib2 massages for constant fields. Only Grib2 output with constant fields will be affected by this change.
  • Bug fixes were made to SET_OUTFLDS.f and WRFPOST.f to properly output multiple output grids in single post execution for Grib2.
  • CALWXT.f and CALWXT_REVISED.f: Modified to remove RSM option.
  • FIXED.f: Modified to change table number to 133 for EMISSIVITY output. All the instantaneous grid scale and total cloud base/top T/P/H as well as ceiling fields will be changed.
  • WRFPOST.f, INITPOST_GFS_NEMS.f , INITPOST_NEMS.f, CALRAD_WCLOUD_newcrtm.f , CANRES.f updated to read ivegsrc (vegetation classification) that was added to nemsio file header.
  • Bug fix for computation of the following variables for small NMMB domain that uses IGBP and whose max vegetation type is less than 20: CANOPY CONDUCTANCE, MIN STOMATAL RESIST, NO OF ROOT LAYERS, SOLAR CANOPY CONDUCTANCE, CANOPY CONDUCTANCE from Humidity, CANOPY CONDUCTANCE from Soil, Simulated Satellite products.
  • FDLVL.f, CLDRAD.f, MISCLN.f, and MDL2P.f: Modified to reduce static memory of several 3D arrays.
  • Bug fix was made to GFIP3.f to correct how new in flight icing is computed.
  • The following subroutines were modified to read or initialize CU_PHYSICS for models that have not defined CU_PHYSICS: INITPOST_NMM.f, INITPOST_NMM_BIN_MPIIO.f, INITPOST_NEMS.f, INITPOST_GFS_SIGIO.f, INITPOST_GFS_NEMS.f
  • CALRAD_WCLOUD_newcrtm.f: Modified to only add convective bogusing to simulated satellite products when model is run with BMJ scheme.
  • MPI_FIRST.f: Modified to separate dynamical allocation of arrays to a newly added subroutine ALLOCATE_ALL.f so that this subroutine is only used to set up MPI information. The new subroutine ALLOCATE_ALL.f will be used by NEMS in-line post, which already has its own MPI servers, to allocate post arrays.
  • kinds_mod.f: Change default integer to be a word rather than short
  • New variables (pass-through, no calculation) added for output from NMM:
    • RSWTOA: Outgoing SW at TOA (wrf_cntrl.parm: INSTN OUT TOA SW RAD)
    • SWUPT: Instantaneous Upwelling SW Flux at TOA (RRTMG & CAM) (wrf_cntrl.parm: INST SW UP TOA RAD)
    • ASWUPT: Accumulated SWUPT (wrf_cntrl.parm: AVE SW UP TOA RAD)
    • SWDNT: Instantaneous Downwelling SW at TOA (RRTMG & CAM) (wrf_cntrl.parm: INST SW DOWN TOA RAD)
    • ASWDNT: Accumulated SWDNT (wrf_cntrl.parm: AVE SW DOWN TOA RAD)
    • REFL_10CM: Reflectivity derived in wrfout for non-ferrier schemes (wrf_cntrl.parm: WRFOUT REFL 10CM MDL)
    • REFD_MAX: Maximum Reflectivity derived in wrfout for non-ferrier schemes (wrf_cntrl.parm: WRFOUT COMP MAX REF)
    • QNICE: Number concentration of ice (wrf_cntrl.parm: NCICE ON MDL SFCS)
    • QNRAIN: Number concentration of rain (wrf_cntrl.parm: NCRAIN ON MDL SFCS)

Known Issues and Fixes

Fixes for new CPP

Posted: 2015-01-14
Problem: Compiling error resembles:

/* Copyright (C) 1991-2014 Free Software Foundation, Inc.
Error: Non-numeric character in statement label at (1)
Solution: Clean, configure, Remove the "-C" from the CPP_FLAGS in your configure.upp and add " -traditional-cpp " instead, recompile (./compile) under UPPV2.2/.

Fixes for new CPP

Posted: 2015-01-14
Problem: Compiling error resembles:

INITPOST_BIN_MPIIO.f(250): error #5082: Syntax error, found END-OF-STATEMENT when expecting one of: ( % [ . = =>
Solution: Download INITPOST_BIN_MPIIO.F.fix to UPPV2.2/src/unipost, rename it to INITPOST_BIN_MPIIO.F and recompile (./compile) under UPPV2.2/.

Add " -traditional-cpp " to the CPP_FLAGS in your configure.upp file, recompile.

Compiling with Gfortran on Linux x86_64 - occasional compiling issues

Posted: 2014-04-16
Problem: Occasional infinite job compile job submissions without the serial fortran compiler identification
Solution: Try adding -f90=$(SFC) & -cc=$(SCC) to DM compile flags:

SFC = gfortran
SF90 = gfortran $(FORMAT_FREE)
SCC = gcc

DM_FC = mpif90 -f90=$(SFC)
DM_F90 = mpif90 $(FREE_FORMAT) -f90=$(SFC)
DM_CC = mpicc -cc=$(SCC)